.sth-stage{position:fixed;inset:0;z-index:80;overflow:hidden;color:rgba(244,240,232,.96);font-family:var(--font-sans,ui-sans-serif);-moz-user-select:none;user-select:none;-webkit-user-select:none}.sth-bg{background:radial-gradient(120% 90% at 78% -10%,hsl(calc(var(--sth-hue) + 40) 42% 22%/.55),transparent 55%),radial-gradient(90% 70% at 12% 108%,hsl(calc(var(--sth-hue) - 30) 48% 17%/.6),transparent 60%),linear-gradient(168deg,hsl(var(--sth-hue) 36% 11%) 0,hsl(calc(var(--sth-hue) + 14) 30% 6%) 58%,#05060a 100%);transition:background 1.8s ease}.sth-bg,.sth-grain{position:absolute;inset:0}.sth-grain{pointer-events:none;opacity:.5;background-image:radial-gradient(rgba(255,255,255,.028) 1px,transparent 0);background-size:3px 3px;mix-blend-mode:overlay}.sth-stage:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(115% 100% at 50% 42%,transparent 58%,rgba(0,0,0,.42) 100%)}.sth-top{position:absolute;top:0;left:0;right:0;z-index:6;display:flex;align-items:center;gap:8px;padding:calc(10px + env(safe-area-inset-top, 0px)) 14px 10px;background:linear-gradient(rgba(4,5,9,.72),transparent);transition:opacity .4s ease}.sth-top.is-faded{opacity:0;pointer-events:none}.sth-booktitle{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:1px;font:600 13px/1.3 var(--font-sans,ui-sans-serif);white-space:nowrap}.sth-booktitle,.sth-booktitle em{overflow:hidden;text-overflow:ellipsis}.sth-booktitle em{font:400 11px/1.3 var(--font-mono,ui-monospace);font-style:normal;color:rgba(244,240,232,.55)}.sth-pill{flex:none;height:30px;padding:0 12px;border:1px solid rgba(244,240,232,.22);border-radius:999px;background:rgba(10,12,20,.55);color:rgba(244,240,232,.9);font:500 12px/1 var(--font-mono,ui-monospace);cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:border-color .14s ease,background .14s ease}.sth-pill:hover{border-color:rgba(244,240,232,.5)}.sth-pill.is-on{background:rgba(214,178,92,.22);border-color:rgba(214,178,92,.75);color:#ecd9a8}.sth-pill.is-x{width:30px;padding:0}.sth-progress{position:absolute;top:0;left:0;right:0;height:2px;z-index:7;background:rgba(255,255,255,.07)}.sth-progress>span{display:block;height:100%;background:linear-gradient(90deg,hsl(calc(var(--sth-hue) + 40) 65% 62%),#d9b96a);transition:width .3s ease}.sth-tapface{position:absolute;inset:0;z-index:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.sth-tapface:focus-visible{outline:2px solid rgba(214,178,92,.8);outline-offset:-4px}.sth-scenehint{position:absolute;top:calc(64px + env(safe-area-inset-top, 0px));left:50%;transform:translateX(-50%);z-index:2;max-width:min(560px,82vw);margin:0;padding:6px 16px;border-radius:999px;background:rgba(8,10,16,.42);border:1px solid rgba(244,240,232,.1);font:400 12px/1.6 var(--font-serif,serif);color:rgba(244,240,232,.6);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;animation:sth-hint-in 3.2s ease forwards}@keyframes sth-hint-in{0%{opacity:0;transform:translateX(-50%) translateY(-6px)}12%{opacity:1;transform:translateX(-50%) translateY(0)}70%{opacity:1}to{opacity:0}}.sth-bottom{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;flex-direction:column;align-items:center;padding:0 16px calc(26px + env(safe-area-inset-bottom, 0px))}.sth-unit{width:min(720px,100%);animation:sth-unit-in .26s ease}@keyframes sth-unit-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sth-sayrow{gap:8px;margin:0 0 -12px 18px;position:relative;z-index:1}.sth-badge,.sth-sayrow{display:flex;align-items:center}.sth-badge{width:40px;height:40px;border-radius:50%;justify-content:center;font:700 17px/1 var(--font-serif,serif);color:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.28);box-shadow:0 4px 14px rgba(0,0,0,.45)}.sth-name{padding:4px 14px;border-radius:8px 8px 8px 2px;font:600 13.5px/1.2 var(--font-sans,ui-sans-serif);color:rgba(255,255,255,.96);letter-spacing:.04em;box-shadow:0 3px 10px rgba(0,0,0,.4)}.sth-box{min-height:108px;padding:22px 24px 18px;border-radius:14px;background:linear-gradient(rgba(12,14,22,.82),rgba(8,9,15,.88));border:1px solid rgba(244,240,232,.13);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 18px 48px rgba(0,0,0,.5);position:relative}.sth-box.is-say{border-color:rgba(244,240,232,.2);padding-top:26px}.sth-text{margin:0;font:400 17px/1.85 var(--font-serif,serif);color:rgba(246,242,234,.95);letter-spacing:.01em;min-height:3.7em;word-break:break-word}.sth-text.is-narration{color:rgba(233,228,216,.78);font-size:16px}.sth-caret{position:absolute;right:16px;bottom:10px;font-size:13px;color:rgba(214,178,92,.85);animation:sth-caret 1.4s ease-in-out infinite}@keyframes sth-caret{0%,to{transform:translateY(0);opacity:.9}50%{transform:translateY(3px);opacity:.45}}.sth-titlecard{width:min(720px,100%);min-height:40vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;animation:sth-title-in .7s ease}.sth-titlecard span{font:600 clamp(22px,4.2vw,34px) /1.5 var(--font-serif,serif);text-align:center;letter-spacing:.12em;color:rgba(246,242,234,.96);text-shadow:0 4px 30px rgba(0,0,0,.6)}.sth-titlecard i{width:148px;height:1px;background:linear-gradient(90deg,transparent,rgba(214,178,92,.8),transparent)}@keyframes sth-title-in{0%{opacity:0;transform:translateY(14px);letter-spacing:.3em}to{opacity:1;transform:translateY(0)}}.sth-loadingcard{display:flex;align-items:center;gap:10px;padding:18px 26px;border-radius:12px;background:rgba(10,12,20,.72);border:1px solid rgba(244,240,232,.14);font:500 13.5px/1 var(--font-sans,ui-sans-serif);color:rgba(244,240,232,.85)}.sth-loadingcard i{width:14px;height:14px;border-radius:50%;border:2px solid rgba(214,178,92,.3);border-top-color:#d9b96a;animation:sth-spin .8s linear infinite}@keyframes sth-spin{to{transform:rotate(1turn)}}.sth-endcard{width:min(560px,100%);padding:30px 28px 22px;border-radius:16px;background:linear-gradient(rgba(14,16,25,.88),rgba(9,10,16,.92));border:1px solid rgba(214,178,92,.28);box-shadow:0 24px 60px rgba(0,0,0,.55);text-align:center;animation:sth-unit-in .4s ease}.sth-endcard h3{margin:0 0 10px;font:600 21px/1.4 var(--font-serif,serif);letter-spacing:.08em;color:rgba(246,242,234,.96)}.sth-endstats{margin:0 0 6px;font:400 12px/1.7 var(--font-mono,ui-monospace);color:rgba(214,178,92,.85)}.sth-endbody{margin:10px 0 4px;font:400 13.5px/1.9 var(--font-sans,ui-sans-serif);color:rgba(240,236,228,.78);text-align:left}.sth-cta{display:inline-block;margin-top:14px;padding:12px 26px;border:none;border-radius:999px;background:linear-gradient(135deg,#d9b96a,#b98e3e);color:#1a1408;font:650 14.5px/1 var(--font-sans,ui-sans-serif);text-decoration:none;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease}.sth-cta:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(214,178,92,.3)}.sth-endcta-line{margin:14px 0 0;font:400 13px/1.7 var(--font-sans,ui-sans-serif);color:rgba(240,236,228,.66)}.sth-endcta-line a{color:#e6cd8c;text-decoration:none;border-bottom:1px solid rgba(214,178,92,.5)}.sth-endrow{display:flex;justify-content:center;gap:10px;margin-top:18px;flex-wrap:wrap}.sth-endrow button{height:34px;padding:0 16px;border:1px solid rgba(244,240,232,.24);border-radius:999px;background:transparent;color:rgba(244,240,232,.82);font:500 12.5px/1 var(--font-sans,ui-sans-serif);cursor:pointer;transition:border-color .14s ease}.sth-endrow button:hover{border-color:rgba(244,240,232,.55)}.sth-dim{position:absolute;inset:0;z-index:10;background:rgba(3,4,8,.55);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:sth-dim-in .2s ease}@keyframes sth-dim-in{0%{opacity:0}to{opacity:1}}.sth-drawer{position:absolute;top:0;right:0;bottom:0;width:min(380px,88vw);background:linear-gradient(rgba(14,16,25,.98),rgba(9,10,16,.98));border-left:1px solid rgba(244,240,232,.14);display:flex;flex-direction:column;padding:calc(16px + env(safe-area-inset-top, 0px)) 0 env(safe-area-inset-bottom,0);animation:sth-drawer-in .26s cubic-bezier(.22,1,.36,1)}@keyframes sth-drawer-in{0%{transform:translateX(40px);opacity:0}to{transform:translateX(0);opacity:1}}.sth-drawer-title{margin:0 20px 12px;font:600 13px/1 var(--font-mono,ui-monospace);letter-spacing:.14em;color:rgba(214,178,92,.9);text-transform:uppercase}.sth-drawer-list{flex:1 1;overflow-y:auto;overscroll-behavior:contain;padding:0 12px 16px}.sth-drawer-row{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 10px;border:none;border-radius:8px;background:transparent;color:rgba(244,240,232,.88);font:400 13.5px/1.5 var(--font-sans,ui-sans-serif);text-align:left;cursor:pointer}.sth-drawer-row b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sth-drawer-row small{flex:none;font:400 11px/1 var(--font-mono,ui-monospace);color:rgba(244,240,232,.42)}.sth-drawer-row:hover{background:rgba(244,240,232,.06)}.sth-drawer-row.is-cur{background:rgba(214,178,92,.12);color:#ecd9a8}.sth-backlog{position:absolute;left:0;right:0;bottom:0;max-height:62vh;background:linear-gradient(rgba(14,16,25,.98),rgba(9,10,16,.99));border-top:1px solid rgba(244,240,232,.16);border-radius:18px 18px 0 0;display:flex;flex-direction:column;padding:16px 0 env(safe-area-inset-bottom,0);animation:sth-backlog-in .28s cubic-bezier(.22,1,.36,1)}@keyframes sth-backlog-in{0%{transform:translateY(48px);opacity:0}to{transform:translateY(0);opacity:1}}.sth-backlog-list{flex:1 1;overflow-y:auto;overscroll-behavior:contain;padding:0 22px 18px;display:flex;flex-direction:column;gap:12px}.sth-backlog-say span{display:block;font:600 12px/1.4 var(--font-sans,ui-sans-serif);margin-bottom:2px}.sth-backlog-nar,.sth-backlog-say p{margin:0;font:400 13.5px/1.75 var(--font-serif,serif);color:rgba(240,236,228,.82)}.sth-backlog-nar{color:rgba(240,236,228,.55)}.sth-backlog-empty{color:rgba(240,236,228,.4);text-align:center}.sth-lab{display:flex;flex-direction:column;gap:14px}.sth-demos{margin-top:18px}.sth-demos-kicker{margin:0 0 10px;font:500 12px/1 var(--font-mono,ui-monospace);letter-spacing:.1em;color:var(--night-mute)}.sth-demos-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));grid-gap:12px;gap:12px}.sth-demo-card{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:16px 18px;border:1px solid var(--night-line-2);border-radius:12px;background:var(--night-bg);text-align:left;cursor:pointer;transition:border-color .14s ease,transform .14s ease}.sth-demo-card:hover{border-color:var(--night-gold-dim);transform:translateY(-1px)}.sth-demo-card b{font:600 14.5px/1.4 var(--font-serif,serif);color:var(--night-ink)}.sth-demo-card small{font:400 11px/1 var(--font-mono,ui-monospace);color:var(--night-mute)}.sth-demo-card p{margin:4px 0 0;font:400 12.5px/1.7 var(--font-sans,ui-sans-serif);color:var(--night-ink-2)}.sth-demo-card em{margin-top:6px;font:600 12px/1 var(--font-sans,ui-sans-serif);font-style:normal;color:var(--night-gold)}.sth-analyzing{display:flex;flex-direction:column;gap:8px;padding:26px 22px;border:1px solid var(--night-line-2);border-radius:12px;background:var(--night-bg)}.sth-analyzing b{font:600 14.5px/1.4 var(--font-serif,serif);color:var(--night-ink)}.sth-analyzing small{font:400 11.5px/1 var(--font-mono,ui-monospace);color:var(--night-mute);word-break:break-all}.sth-analyzing p{margin:4px 0 0;font:400 12px/1.6 var(--font-mono,ui-monospace);color:var(--night-mute)}.sth-report{display:flex;flex-direction:column;gap:16px}.sth-stats{padding:2px 4px}.sth-warn{margin:-6px 4px 0;font:400 12px/1.6 var(--font-mono,ui-monospace);color:var(--night-gold-2)}.sth-note{margin:-4px 4px 0;font:400 11.5px/1.6 var(--font-mono,ui-monospace);color:var(--night-mute)}.sth-cast,.sth-chapterpick,.sth-preview{border:1px solid var(--night-line-2);border-radius:12px;background:var(--night-bg);padding:16px 18px}.sth-cast h3,.sth-chapterpick h3,.sth-preview h3{margin:0 0 6px;font:600 14px/1.4 var(--font-serif,serif);color:var(--night-ink)}.sth-cast-sub{margin:0 0 12px;color:var(--night-ink-2)}.sth-cast-empty,.sth-cast-sub{font:400 12.5px/1.7 var(--font-sans,ui-sans-serif)}.sth-cast-empty{margin:0;color:var(--night-mute)}.sth-cast-chips{display:flex;flex-wrap:wrap;gap:8px}.sth-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 8px 6px 10px;border:1px solid;border-radius:999px;font:500 13px/1 var(--font-sans,ui-sans-serif);color:var(--night-ink);background:color-mix(in srgb,var(--night-bg) 88%,transparent)}.sth-chip i{width:10px;height:10px;border-radius:50%;flex:none}.sth-chip small{font:400 11px/1 var(--font-sans,ui-sans-serif);color:var(--night-mute)}.sth-chip em{font:400 10.5px/1 var(--font-mono,ui-monospace);font-style:normal;color:var(--night-mute)}.sth-chip button{width:20px;height:20px;border:none;border-radius:50%;background:transparent;color:var(--night-mute);font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center}.sth-chip button:hover{background:rgba(181,71,46,.14);color:var(--night-gold-2)}.sth-cast-add{display:flex;gap:8px;margin-top:12px}.sth-cast-add input{flex:1 1;max-width:260px;height:34px;padding:0 12px;border:1px solid var(--night-line-2);border-radius:8px;background:var(--night-bg);color:var(--night-ink);font:400 13px/1 var(--font-sans,ui-sans-serif)}.sth-cast-add input:focus-visible{outline:2px solid var(--night-gold);outline-offset:1px}.sth-preview-line{margin:0 0 6px;font:500 13px/1.7 var(--font-mono,ui-monospace);color:var(--night-ink)}.sth-preview-honest{margin:0;font:400 12px/1.7 var(--font-sans,ui-sans-serif);color:var(--night-mute)}.sth-chapterlist{display:flex;flex-direction:column;gap:2px;max-height:300px;overflow-y:auto}.sth-chapterrow{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 10px;border:none;border-radius:8px;background:transparent;color:var(--night-ink-2);font:400 13px/1.5 var(--font-sans,ui-sans-serif);text-align:left;cursor:pointer}.sth-chapterrow b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sth-chapterrow small{flex:none;font:400 11px/1 var(--font-mono,ui-monospace);color:var(--night-mute)}.sth-chapterrow:hover{background:rgba(48,38,22,.07)}.sth-chapterrow.is-cur{background:rgba(181,71,46,.1);color:var(--night-ink)}.sth-chaptermore{margin-top:8px;border:none;background:transparent;color:var(--night-gold);font:500 12.5px/1 var(--font-sans,ui-sans-serif);cursor:pointer;padding:6px 10px}.sth-play{align-self:flex-start;font-size:15px;padding:12px 30px}.sth-playnote{margin:-6px 4px 0;font:400 11.5px/1.6 var(--font-mono,ui-monospace);color:var(--night-mute)}@media (max-width:640px){.sth-top{flex-wrap:wrap;gap:6px;padding-left:10px;padding-right:10px}.sth-booktitle{order:-1;flex-basis:100%}.sth-booktitle em{display:none}.sth-pill{height:32px;padding:0 11px}.sth-bottom{padding-left:10px;padding-right:10px;padding-bottom:calc(16px + env(safe-area-inset-bottom, 0px))}.sth-box{padding:18px 16px 16px;min-height:96px}.sth-text{font-size:15.5px;line-height:1.78}.sth-sayrow{margin-left:10px}.sth-badge{width:34px;height:34px;font-size:15px}.sth-scenehint{top:calc(96px + env(safe-area-inset-top, 0px));max-width:88vw}.sth-endcard{padding:22px 18px 16px}}@media (prefers-reduced-motion:reduce){.sth-bg{transition:none}.sth-backlog,.sth-caret,.sth-dim,.sth-drawer,.sth-endcard,.sth-scenehint,.sth-titlecard,.sth-unit{animation:none}.sth-progress>span{transition:none}}