.sd-outline{background:linear-gradient(160deg,#24192de0,#17111be0);border:1px solid #5c3f66;border-radius:18px;margin:28px 0;padding:20px}.sd-outline h2{margin:0 0 6px}.sd-body{gap:18px;margin-top:14px;display:grid}.sd-group h3{align-items:baseline;gap:8px;margin:0 0 8px;font-size:15px;display:flex}.sd-group h3 small{color:var(--haaring-muted,#c7bbc6);letter-spacing:.04em;font-size:12px;font-weight:400}.sd-endings{gap:8px;margin:0;padding:0;list-style:none;display:grid}.sd-endings li{background:#1a1320;border:1px dashed #6b4d76;border-radius:12px;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 10px;padding:10px 14px;display:grid}.sd-endings li.is-reached{background:#2a1d31;border-style:solid;border-color:#c88fd9}.sd-endings em{color:#bfaec8;overflow-wrap:anywhere;grid-column:2;font-size:13px;font-style:italic;line-height:1.6}.sd-gem{color:#e4a0b6}.sd-hidden{color:#8f7d98;letter-spacing:.2em}.sd-acts{counter-reset:act;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sd-acts li{text-align:center;overflow-wrap:anywhere;border:1px dashed #6b4d76;border-radius:10px;min-width:64px;max-width:100%;padding:8px 12px;font-size:13px;display:grid}.sd-acts li.is-reached{background:#2a1d31;border-style:solid;border-color:#9e6aae}.sd-acts small{color:#bfaec8;font-size:11px}.sd-events{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sd-events li{color:#8f7d98;text-align:center;overflow-wrap:anywhere;border:1px dashed #6b4d76;border-radius:999px;min-width:34px;padding:6px 10px;font-size:13px}.sd-unseen{border-radius:inherit;width:100%;height:100%;color:inherit;font:inherit;letter-spacing:.2em;cursor:pointer;background:0 0;border:0;padding:8px 12px}.sd-events .sd-unseen{padding:6px 10px}:is(.sd-acts li:has(.sd-unseen),.sd-events li:has(.sd-unseen)){padding:0}.sd-unseen:focus-visible{outline-offset:4px;border-radius:4px;outline:2px solid #e9b8e8}:is(.sd-acts li:has(.sd-unseen):hover,.sd-events li:has(.sd-unseen):hover,.sd-acts li.is-open,.sd-events li.is-open){color:#f1e3f7;border-color:#c48fd2}.sd-teaser{color:#e8d8ef;border-left:2px solid #c48fd2;margin:8px 0 0;padding:8px 12px;font-size:13px;font-style:italic;line-height:1.6}.sd-events li.is-reached{color:#f1e3f7;background:#2a1d31;border-style:solid;border-color:#9e6aae}.sd-thread{color:#c4b8ce;overflow-wrap:anywhere;background:#24192dcc;border-radius:999px;align-items:center;gap:8px;margin:0 0 8px;padding:6px 12px;font-size:13px;line-height:1.5;animation:.8s ease-out both sd-reveal;display:flex}.sd-thread .sd-tension__dot{flex:none}.sd-tension__dot{background:#7d6f86;border-radius:50%;width:7px;height:7px}.sd-tension--stirring{color:#f0c9e0}.sd-tension--stirring .sd-tension__dot{background:#e4a0b6;animation:2.4s ease-in-out infinite sd-pulse}.sd-tension--imminent{color:#ffd4e6;font-weight:600}.sd-tension--imminent .sd-tension__dot{background:#ff7eb6;animation:1s ease-in-out infinite sd-pulse;box-shadow:0 0 8px #ff7eb6}@keyframes sd-pulse{50%{opacity:.35;transform:scale(.75)}}.sd-card{text-align:center;overflow-wrap:anywhere;background:radial-gradient(#6d3b7966,#0000 70%);border-block:1px solid #c88fd966;justify-items:center;gap:4px;margin:28px 0 18px;padding:22px 16px;animation:.9s ease-out both sd-reveal;display:grid}.sd-card small{color:#d9b6e6;letter-spacing:.3em;font-size:11px}.sd-card strong{color:#fff3fa;font-size:20px;line-height:1.4}.sd-card span{color:#cdb9d6;font-size:13px}.sd-card--milestone{background:radial-gradient(#8a2f5a66,#0000 70%);border-color:#ff7eb688}.sd-micro{color:#f5dcea;overflow-wrap:anywhere;background:#2a1d31cc;border-left:3px solid #e4a0b6;border-radius:0 10px 10px 0;margin:18px 0 12px;padding:10px 14px;font-size:14px;animation:.6s ease-out both sd-reveal}@keyframes sd-reveal{0%{opacity:0;letter-spacing:.08em;transform:translateY(6px)}}.sd-toast{z-index:60;text-align:center;background:#24192df2;border:1px solid #c88fd9;border-radius:14px;justify-items:center;gap:6px;width:min(360px,100vw - 32px);padding:14px 16px;animation:.5s ease-out both sd-reveal;display:grid;position:fixed;top:72px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #0008}.sd-toast p{color:#fff0f7;margin:0;font-weight:600}.sd-toast .btn{min-height:32px;font-size:13px}.sd-hint{background:#1c1520cc;border:1px dashed #7b5a86;border-radius:14px;gap:8px;margin:18px 0;padding:14px 16px;display:grid}.sd-hint p{color:#e8d8ef;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.7}.sd-hint .sd-hint__specific{color:#ffd4e6}.sd-hint .btn{white-space:normal;text-align:left;justify-self:start}.sd-hint__choices{gap:8px;display:grid}.sd-hint__choice{color:#ffe6f1;text-align:left;font:inherit;cursor:pointer;background:#2a1d31;border:1px solid #9b6aa8;border-radius:12px;gap:2px;padding:10px 14px;display:grid}.sd-hint__choice strong{font-size:14px;font-weight:600;line-height:1.5}.sd-hint__choice span{color:#c9b2d3;font-size:12px}.sd-hint__choice:hover:not(:disabled){background:#36243f;border-color:#e9b8e8}.sd-hint__choice:disabled{opacity:.5;cursor:default}.sd-hint__note{color:#c9b2d3;font-size:12px}.sd-continues{color:#e8d8ef;border:1px dashed #7b5a86;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:10px 0 18px;padding:10px 14px;font-size:13px;display:flex}.sd-continues small{color:#bfaec8;letter-spacing:.06em}.sd-continues .btn{min-height:30px;margin-left:auto;font-size:12px}@media (prefers-reduced-motion:reduce){.sd-card,.sd-micro,.sd-toast,.sd-thread,.sd-tension__dot{animation:none!important}}@media (max-width:600px){.sd-outline{padding:16px}.sd-card strong{font-size:18px}}.sd-line{color:#e8d8ef;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:8px 0;font-size:13px;display:flex}.sd-line span{border:1px solid #6b4d76;border-radius:999px;padding:2px 10px}.sd-line em{color:#bfaec8;font-size:12px}
