:root{color-scheme:light;--bg:#fafbf8;--panel:#fff;--ink:#303a35;--muted:#69766e;--accent:#58769d;--line:#dde5dd;--soft:#edf2f8;--error:#984f47}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,-apple-system,sans-serif}main{max-width:800px;margin:auto;padding:0 22px 52px}body.reading main{padding-bottom:245px}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;color:inherit;border:0}button,a{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.45;cursor:default}a{color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:enabled:active,.actionLink:active{filter:brightness(.93)}button,.actionLink{min-height:44px}.ghost,.tab,.actionLink{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:12px;background:transparent;padding:10px 15px;text-decoration:none;font-size:13px;color:var(--muted)}.ghost:hover,.actionLink:hover{border-color:#b7c8dc;background:var(--soft)}.primary{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border-radius:12px;padding:12px 20px;min-height:48px;font-size:14px}.primary:enabled:hover{background:#47678f}
.appHeader{display:flex;justify-content:space-between;align-items:center;gap:14px;position:sticky;top:0;z-index:20;background:#fafbf8f5;backdrop-filter:blur(12px);margin:0 -22px;padding:calc(12px + env(safe-area-inset-top)) 22px 12px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;padding:4px 0;background:none;font-weight:650;letter-spacing:-1px;font-size:26px;text-align:left}.brand span{color:var(--accent);font-size:13px;margin-left:5px}.accountTools{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.accountTools .muted{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nav{display:flex;gap:8px;padding:18px 0 0}.tab[aria-pressed=true]{color:var(--accent);background:var(--soft);border-color:#cad7e7}.message{font-size:13px;min-height:0;margin:14px 0;color:var(--muted);overflow-wrap:anywhere}.message:empty{display:none}.message.error{color:var(--error)}.intro{padding:28px 0 20px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted)}h1{font-size:clamp(36px,8vw,56px);line-height:1.08;letter-spacing:-2px;margin:18px 0 22px}h1 em{font-style:normal;color:var(--accent)}p{color:var(--muted)}h2{font-size:21px;line-height:1.3;letter-spacing:-.4px;margin:0 0 16px}h3{font-size:18px;line-height:1.4;margin:0 0 8px;overflow-wrap:anywhere}.pageTitle{font-size:36px;margin:9px 0 0;letter-spacing:-1.3px}.sectionHead{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0 12px}.sectionHead h2{margin:0}.description{font-size:14px;margin:0 0 24px}.muted,small{color:var(--muted);font-size:12px}small{display:block;margin:6px 0 0}.panel{background:var(--panel);padding:24px;border:1px solid var(--line);border-radius:18px;margin:22px 0}.loginForm{max-width:420px}.loginForm .primary{width:100%;margin-top:8px}.loginForm p{margin-bottom:0}.loginForm input{margin-bottom:18px}
label{display:block;font-size:12px;margin-bottom:7px}input:not([type=radio]):not([type=checkbox]):not([type=range]),select{display:block;min-height:46px;width:100%;min-width:0;border:1px solid #d4ded5;border-radius:10px;padding:10px 12px;color:var(--ink);background:#fff;font-size:16px}input[type=file]{font-size:13px!important;padding:9px!important}input[type=file]::file-selector-button{min-height:28px;border:0;border-radius:6px;padding:4px 9px;margin-right:10px;background:var(--soft);color:var(--accent);cursor:pointer}input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:18px;height:18px;flex:none}.searchbox{display:flex;gap:8px}.searchbox input{flex:1}.searchbox button{flex:none;min-width:75px;border-radius:10px;padding:10px 15px;background:var(--accent);color:#fff;font-size:13px}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;margin:20px 0}.formGrid .wide{grid-column:1/-1}.sourceChoices{border:0;padding:0;margin:24px 0 8px}.sourceChoices legend{font-size:12px;color:var(--muted);margin-bottom:6px}.sourceChoices label,.checkLabel{display:flex;align-items:center;gap:9px;min-height:44px;margin:0;cursor:pointer;padding:7px 0}.selectedNote{font-size:13px;padding:12px 14px;background:var(--soft);border-radius:10px;overflow-wrap:anywhere}.recordList{display:grid;gap:10px}.recordButton{display:block;width:100%;text-align:left;padding:18px 20px;background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow-wrap:anywhere}.recordButton:hover{border-color:#bdcde1;background:#f2f5fa}.recordButton[aria-pressed=true]{border-color:var(--accent);background:var(--soft)}.recordButton strong{display:block;font-weight:550;font-size:16px}.recordButton small{margin-top:9px}.recordButton .badge{margin-top:10px}.badge{display:inline-block;color:var(--accent);font-size:11px;background:#e6edf6;border-radius:12px;padding:4px 10px}.badge.rejected{color:var(--error);background:#f7eae7}.badge.published{color:#456e54;background:#eaf2e9}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}.pagination .muted{text-align:center}.empty{font-size:14px;padding:22px 0}.workspace{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.workspace form{margin-top:24px}.workspace form .primary{margin-top:14px}.actions{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0}.actions button,.actions a{font-size:12px}.filterLabel{font-size:11px;margin:0;min-width:150px}.filterLabel select{font-size:12px;min-height:44px;padding:8px 10px;margin-top:4px}.reportSummary{font-size:13px}.reportIssues{font-size:12px;padding-left:20px;color:var(--muted);overflow-wrap:anywhere}.reportIssues li{margin:8px 0}.reportIssues code{font-size:11px;color:var(--ink)}footer{font-size:11px;color:var(--muted);margin-top:40px}
.readerTitle{font-size:30px;line-height:1.2;letter-spacing:-.8px;overflow-wrap:anywhere;margin:22px 0 10px}.readerOptions{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 12px}.readerOptions .checkLabel{font-size:12px}.readerOptions .muted{text-align:right}.downloads{margin:0 0 24px}.cue{position:relative;display:grid;grid-template-columns:minmax(0,1fr);width:100%;margin:8px 0 14px;border-radius:14px;background:transparent;scroll-margin-top:95px;overflow:hidden}.cue.hasHighlights{grid-template-columns:minmax(0,1fr) 48px}.cueBody{display:block;width:100%;text-align:left;padding:18px 16px;background:transparent;border:1px solid transparent;border-radius:14px;min-width:0}.cue.hasHighlights .cueBody{border-radius:14px 0 0 14px;border-right:0}.cueInfo{align-self:stretch;display:flex;align-items:flex-start;justify-content:center;padding:17px 0;background:transparent;border:1px solid transparent;border-left:0;border-radius:0 14px 14px 0;font-size:23px;color:#71678c}.cueInfo:hover{background:#eceaf5}.cue time{display:block;font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums;margin-bottom:8px}.cue .original{display:block;font-size:21px;line-height:1.45;white-space:pre-line;overflow-wrap:anywhere}.cue .translation{display:block;color:var(--muted);font-size:15px;white-space:pre-line;overflow-wrap:anywhere;margin-top:10px}.cue.active{background:var(--soft)}.cue.active .cueBody,.cue.active .cueInfo{border-color:#cbd8e9}.cue.active time{color:var(--accent)}.noTranslation .translation{display:none}.original mark,.translation mark{background:linear-gradient(110deg,#e8e4f7,#dfedf0,#dce8f7);color:inherit;border-radius:5px;padding:1px 3px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
#player{position:fixed;bottom:0;left:0;right:0;z-index:25;background:#fafbf8f5;backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:16px 22px calc(14px + env(safe-area-inset-bottom))}.playerInner{max-width:756px;margin:auto}.timebar{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.livebadge{font-size:10px;letter-spacing:2px}.livebadge.running{color:var(--accent)}.timelineWrap{position:relative;height:30px;margin:10px 0}.timelineWrap::before{content:"";position:absolute;left:8px;right:8px;top:50%;height:7px;transform:translateY(-50%);background:#dce4ef;border-radius:4px;pointer-events:none}#timeline{display:block;position:relative;z-index:5;width:100%;height:30px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer}#timeline::-webkit-slider-runnable-track{height:7px;background:transparent}#timeline::-moz-range-track{height:7px;background:transparent}#timeline::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin-top:-6.5px;border:3px solid #6c8bb3;border-radius:50%;background:#ffffff66;box-shadow:0 0 0 2px #ffffffc9}#timeline::-moz-range-thumb{width:14px;height:14px;border:3px solid #6c8bb3;border-radius:50%;background:#ffffff66;box-shadow:0 0 0 2px #ffffffc9}#timelineHighlights{position:absolute;left:8px;right:8px;top:50%;height:7px;transform:translateY(-50%);pointer-events:none;z-index:4;overflow:hidden;border-radius:4px}.timelineHighlight{position:absolute;top:0;height:7px;min-width:3px;border-radius:3px;background:linear-gradient(110deg,#c9b8ec,#a9d4df,#b1c9ed)}.controls{display:flex;align-items:center;justify-content:center;gap:18px}.controls button{background:none;min-width:44px;min-height:44px;font-size:13px}.controls #play{width:54px;height:54px;border-radius:50%;background:var(--accent);color:#fff;font-size:22px}.playerHint{text-align:center;font-size:10px;margin:10px 0 0}#returnLive{position:absolute;top:-48px;left:50%;transform:translateX(-50%);padding:10px 17px;border-radius:22px;background:var(--accent);color:#fff;font-size:12px;white-space:nowrap}
dialog{color:var(--ink);background:var(--bg)}#highlightSheet{position:fixed;inset:auto 0 0;width:min(100%,760px);max-width:100%;max-height:85dvh;margin:0 auto;padding:0;border:1px solid var(--line);border-bottom:0;border-radius:24px 24px 0 0;overflow:hidden;box-shadow:0 -8px 40px #23332615}#highlightSheet::backdrop{background:#17241c55}.sheetHeader{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 22px;border-bottom:1px solid var(--line)}.sheetHeader h2{margin:0;font-size:17px}.circle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:50%;background:var(--soft)}#highlightContent{max-height:calc(85dvh - 78px);overflow:auto;padding:22px 24px calc(26px + env(safe-area-inset-bottom));overscroll-behavior:contain}.highlightItem+.highlightItem{border-top:1px solid var(--line);margin-top:26px;padding-top:26px}.highlightItem h3{font-size:24px;margin:16px 0}.highlightItem blockquote{margin:0;padding:12px 15px;border-left:3px solid #b7cbe4;background:var(--soft);white-space:pre-line;font-size:17px}.highlightItem h4{font-size:12px;margin:22px 0 6px;color:#4c5f78}.highlightItem p{font-size:14px;margin:8px 0 16px;white-space:pre-line;overflow-wrap:anywhere}.highlightItem .highlightTranslation{color:#4c6484}.highlightItem .exampleOriginal{color:var(--ink);margin-bottom:3px}.highlightItem .exampleTranslation{margin-top:0}.highlightItem .highlightNote{font-size:12px;font-style:italic}
@media(max-width:540px){main{padding-left:16px;padding-right:16px}.appHeader{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.accountTools .muted{display:none}.panel{padding:18px 14px}.formGrid{gap:16px 12px}.sectionHead{gap:10px}.sectionHead h2{font-size:18px}.filterLabel{min-width:125px}.recordButton{padding:16px}.readerOptions{align-items:flex-start}.readerOptions .muted{max-width:42%;padding-top:12px}.cue .original{font-size:19px}.cue .translation{font-size:14px}.cueBody{padding:16px 12px}.controls{gap:12px}.controls button{padding:8px 6px}#player{padding-left:16px;padding-right:16px}.readerTitle{font-size:26px}}
@media(max-width:370px){.formGrid{grid-template-columns:1fr}.formGrid .wide{grid-column:auto}.sectionHead{flex-wrap:wrap}.controls{gap:6px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Retain the reader's timestamp rail and dialogue-card layout. */
#cues{position:relative;padding-left:64px}#cues::before{content:"";position:absolute;left:52px;top:0;bottom:0;border-left:2px dashed #d3deed;pointer-events:none}#cues .cue{overflow:visible}#cues .cue time{position:absolute;left:-64px;top:20px;width:44px;text-align:right;margin:0;font-size:10px;color:#748298}#cues .cue::before{content:"";position:absolute;left:-15px;top:24px;width:7px;height:7px;border-radius:50%;background:var(--bg);border:1px solid #b8c9df;pointer-events:none}#cues .cue.active::before{background:#6c8bb3;border-color:#6c8bb3}#cues .cue.active time{color:var(--accent);font-weight:600}.timelineWrap,#timeline{height:44px}@media(max-width:480px){#cues{padding-left:54px}#cues::before{left:43px}#cues .cue time{left:-54px;width:35px}}
.workspace{scroll-margin-top:90px}
