@import "https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=JetBrains+Mono:wght@400;500&display=swap";*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}:root{--cream:#fbf7f1;--cream-deep:#f5efe6;--cream-tint:#f5efe8;--ink:#2c2416;--ink-soft:#5c5142;--ink-mute:#8a7e6c;--rule:#e8dfcf;--rule-soft:#efe7d6;--grammar:oklch(55% .28 20);--style:oklch(58% .26 65);--clarity:oklch(54% .21 235);--error:oklch(52% .22 25);--accept:#4e7a4a;--shadow:0 1px 2px #2c24160a, 0 8px 24px #2c241614;--shadow-soft:0 1px 1px #2c24160a, 0 2px 6px #2c24160f}*{box-sizing:border-box}html,body{background:var(--cream);height:100%;color:var(--ink);margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;overflow:hidden}.app{grid-template-rows:auto 1fr;height:100vh;display:grid}.toolbar-wrap{z-index:30;background:var(--cream);border-bottom:1px solid var(--rule);-webkit-app-region:drag;position:relative}.toolbar{align-items:center;gap:8px;height:64px;padding:0 20px 0 84px;display:flex}.toolbar button,.toolbar input,.toolbar select,.toolbar a,.toolbar .style-select{-webkit-app-region:no-drag}.brand{letter-spacing:-.015em;color:var(--ink);align-items:baseline;gap:10px;font-family:Lora,serif;font-size:22px;font-weight:600;display:flex}.brand small{color:var(--ink-mute);letter-spacing:.08em;text-transform:uppercase;font-family:JetBrains Mono;font-size:10.5px;font-weight:500}.divider-v{background:var(--rule);width:1px;height:24px}.btn{border:1px solid var(--rule);color:var(--ink);cursor:pointer;letter-spacing:.01em;background:0 0;border-radius:2px;align-items:center;gap:6px;padding:7px 12px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;display:inline-flex}@media (prefers-reduced-motion:no-preference){.btn{transition:background .12s,border-color .12s,color .12s}}.btn:hover{background:var(--cream-tint);border-color:#d8cfbe}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:var(--ink);color:var(--cream);border-color:var(--ink);padding:8px 16px;font-weight:600}.btn.primary:hover{background:#1c170c;border-color:#1c170c}.btn.primary.scanning{background:var(--ink-soft);border-color:var(--ink-soft)}.btn.primary.scanning svg{transform-origin:50%;animation:.8s linear infinite iconSpin}@media (prefers-reduced-motion:no-preference){@keyframes iconSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}}.btn.ghost{border-color:#0000}.btn.ghost:hover{background:var(--cream-tint)}.style-select{font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;position:relative}.style-select>button.trigger{border:1px solid var(--rule);cursor:pointer;font:inherit;color:var(--ink);background:0 0;border-radius:2px;flex-direction:column;align-items:center;gap:3px;min-width:48px;padding:6px 20px 6px 10px;display:inline-flex;position:relative}.style-select>button.trigger:hover{background:var(--cream-tint)}.style-select>button.trigger:after{content:"";border-right:1.5px solid var(--ink-soft);border-bottom:1.5px solid var(--ink-soft);width:5px;height:5px;position:absolute;bottom:9px;right:7px;transform:rotate(45deg)}@media (prefers-reduced-motion:no-preference){.style-select>button.trigger:after{transition:transform .16s cubic-bezier(.22,1,.36,1)}}.style-select>button.trigger.open:after{transform:rotate(-135deg)}.style-select .chip{background:var(--ink-soft);border-radius:50%;width:6px;height:6px}.style-select .menu{background:var(--cream);border:1px solid var(--rule);min-width:340px;box-shadow:var(--shadow);z-index:50;transform-origin:0 0;padding:6px;position:absolute;top:calc(100% + 6px);left:0}@media (prefers-reduced-motion:no-preference){.style-select .menu{animation:.15s cubic-bezier(.22,1,.36,1) menuReveal}@keyframes menuReveal{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}}.tone-menu-header{color:var(--ink-mute);letter-spacing:.02em;border-bottom:1px solid var(--rule-soft);margin-bottom:4px;padding:8px 10px 6px;font-size:10.5px;font-weight:400}.style-select .menu button{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:0;align-items:baseline;gap:12px;padding:8px 10px;display:flex}.style-select .menu button:hover{background:var(--cream-tint)}.style-select .menu button .label{min-width:96px;font-weight:600}.style-select .menu button .desc{color:var(--ink-mute);letter-spacing:.01em;font-size:11px;font-weight:400}.style-select .menu button.active{background:var(--cream-tint)}.toolbar .spacer{flex:1}.word-count{color:var(--ink-mute);letter-spacing:.02em;font-family:JetBrains Mono,monospace;font-size:11.5px}.word-count strong{color:var(--ink);font-weight:500}.undo-group{align-items:center;gap:2px;display:flex}.icon-btn{cursor:pointer;width:30px;height:30px;color:var(--ink-soft);background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;display:inline-flex}@media (prefers-reduced-motion:no-preference){.icon-btn{transition:background .12s,color .12s}}.icon-btn:hover{background:var(--cream-tint);color:var(--ink)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.toggled{background:var(--cream-deep);color:var(--ink)}.tbtn{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;border-radius:2px;flex-direction:column;align-items:center;gap:3px;min-width:40px;padding:5px 8px;display:inline-flex}@media (prefers-reduced-motion:no-preference){.tbtn{transition:background .12s,color .12s}}.tbtn:hover{background:var(--cream-tint);color:var(--ink)}.tbtn:disabled{opacity:.35;cursor:not-allowed}.tbtn.toggled{background:var(--cream-deep);color:var(--ink)}.tbtn-label{letter-spacing:.04em;color:inherit;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:9.5px;font-weight:500;line-height:1}.first-scan-nudge{color:var(--ink-mute);background:var(--cream-deep);border-top:1px solid var(--rule-soft);letter-spacing:.01em;align-items:center;gap:5px;padding:7px 24px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}@media (prefers-reduced-motion:no-preference){.first-scan-nudge{animation:.4s cubic-bezier(.22,1,.36,1) both nudgeFadeIn}@keyframes nudgeFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}}.nudge-scan-link{font:inherit;color:var(--ink);cursor:pointer;text-underline-offset:2px;text-decoration:underline;-webkit-text-decoration-color:var(--rule);text-decoration-color:var(--rule);background:0 0;border:none;padding:0;font-weight:600}.fmt-bar-wrap{background:var(--cream-deep);border-bottom:1px solid var(--rule);overflow:hidden}@media (prefers-reduced-motion:no-preference){.fmt-bar-wrap{transition:max-height .22s cubic-bezier(.4,0,.2,1)}}.fmt-bar-wrap.closed{border-bottom:1px solid #0000;max-height:0}.fmt-bar-wrap.open{max-height:56px}.fmt-bar{align-items:center;gap:4px;padding:10px 24px;display:flex}.fmt-bar .fmt-group{gap:1px;display:flex}.fmt-bar .icon-btn{color:var(--ink-soft)}.fmt-bar .icon-btn:hover{color:var(--ink);background:#2c24160f}.fmt-bar .sep{background:var(--rule);width:1px;height:18px;margin:0 8px}.fmt-bar .hint{color:var(--ink-mute);letter-spacing:.04em;margin-left:auto;font-size:11px}.workspace{grid-template-columns:1fr var(--panel-w,340px);height:100%;min-height:0;display:grid;position:relative}@media (prefers-reduced-motion:no-preference){.workspace{transition:grid-template-columns .24s cubic-bezier(.4,0,.2,1)}}.workspace.panel-closed{grid-template-columns:1fr 0}.editor-pane{background:var(--cream);position:relative;overflow-y:auto}.editor-pane::-webkit-scrollbar{width:10px}.editor-pane::-webkit-scrollbar-track{background:0 0}.editor-pane::-webkit-scrollbar-thumb{background:var(--rule);border:2px solid var(--cream);border-radius:5px}.editor-frame{max-width:720px;min-height:100vh;margin:0 auto;padding:64px 56px 240px}.para-scan-btn{cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:none;width:20px;height:32px;padding:0;position:absolute;transform:translateY(-50%)}.para-scan-btn:before{content:"";background:var(--ink);opacity:.22;border-radius:1px;width:2px;position:absolute;top:6px;bottom:6px;left:50%;transform:translate(-50%)}.para-scan-btn:after{content:"scan";letter-spacing:.04em;color:var(--ink);opacity:.22;white-space:nowrap;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;position:absolute;top:50%;right:calc(50% + 4px);transform:translateY(-50%)}.para-scan-btn:hover:before,.para-scan-btn:hover:after{opacity:.7}.para-scan-btn:disabled{cursor:not-allowed}.para-scan-btn:disabled:before,.para-scan-btn:disabled:after{opacity:.12}.editor-frame:hover .para-scan-btn{opacity:1;pointer-events:auto}.selection-scan-btn{background:var(--ink-soft);color:var(--cream);cursor:pointer;box-shadow:var(--shadow-soft);white-space:nowrap;letter-spacing:.01em;border:none;border-radius:2px;align-items:center;gap:6px;padding:5px 10px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;display:inline-flex}.selection-scan-btn:hover{background:var(--ink);box-shadow:var(--shadow)}@media (prefers-reduced-motion:no-preference){.para-scan-btn{transition:opacity .12s}.para-scan-btn:before,.para-scan-btn:after{transition:opacity .15s}.selection-scan-btn{animation:.14s cubic-bezier(.22,1,.36,1) both toastSlideIn}}.app[data-reduce-motion=true] .para-scan-btn,.app[data-reduce-motion=true] .para-scan-btn:before,.app[data-reduce-motion=true] .para-scan-btn:after{transition:none}.doc{color:var(--ink);font-family:Lora,Georgia,serif}.doc h1{letter-spacing:-.015em;margin:0 0 36px;font-size:38px;font-weight:600;line-height:1.15}.doc h2{letter-spacing:-.005em;margin:56px 0 20px;font-size:22px;font-weight:600;line-height:1.25}.doc h3{margin:40px 0 16px;font-size:18px;font-weight:600;line-height:1.3}.doc p{text-wrap:pretty;margin:0 0 22px;font-size:17px;line-height:1.75}@media (prefers-reduced-motion:no-preference){.doc h1,.doc h2,.doc h3,.doc p{transition:color .3s ease-in-out}}.doc:focus,.doc :focus-visible{outline:none}.doc [contenteditable]{caret-color:var(--grammar)}.mark{cursor:pointer;text-decoration-line:underline;-webkit-text-decoration-color:var(--m-color,var(--ink-mute));text-decoration-color:var(--m-color,var(--ink-mute));text-underline-offset:3px;text-decoration-thickness:1.5px;position:relative}@media (prefers-reduced-motion:no-preference){.mark{animation:.16s cubic-bezier(.22,1,.36,1) both markReveal;animation-delay:calc(var(--mark-idx,0) * 20ms);transition:background-color .12s}@keyframes markReveal{0%{opacity:0}to{opacity:1}}}.mark[data-type=grammar]{--m-color:var(--grammar);text-decoration-style:solid}.mark[data-type=style]{--m-color:var(--style);text-decoration-style:dashed}.mark[data-type=clarity]{--m-color:var(--clarity);text-decoration-style:dotted}.doc:not(.show-underlines) .mark{-webkit-text-decoration-color:color-mix(in oklab, var(--m-color) 0%, transparent);text-decoration-color:color-mix(in oklab, var(--m-color) 0%, transparent)}.doc.faded.show-underlines .mark:not(:hover):not([data-focused]){-webkit-text-decoration-color:color-mix(in oklab, var(--m-color) 25%, transparent);text-decoration-color:color-mix(in oklab, var(--m-color) 25%, transparent)}@media (prefers-reduced-motion:no-preference){.mark{transition:background-color .12s,text-decoration-color .2s}.mark:hover{background-color:color-mix(in oklab, var(--m-color) 12%, transparent)}.mark[data-focused]{background-color:color-mix(in oklab, var(--m-color) 16%, transparent)}}.scan-highlight{opacity:0;background:linear-gradient(90deg, var(--ink) 0%, var(--ink) 15%, #fdf5eb 35%, #fffbf6 50%, #fdf5eb 65%, var(--ink) 85%, var(--ink) 100%);-webkit-text-fill-color:transparent;background-size:400% 100%;-webkit-background-clip:text;background-clip:text}@media (prefers-reduced-motion:no-preference){.scan-highlight{animation:.3s linear forwards scanFadeIn,1.2s linear infinite scanGradient;animation-delay:0s, var(--scan-delay,0s)}.scan-highlight.scanning-fade-out{animation:.3s linear forwards scanFadeOut,1.2s linear infinite scanGradient;animation-delay:0s, var(--scan-delay,0s)}@keyframes scanGradient{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes scanFadeIn{0%{opacity:0}to{opacity:1}}@keyframes scanFadeOut{0%{opacity:1}to{opacity:0}}}.popover{z-index:60;border:1px solid var(--rule);width:300px;box-shadow:var(--shadow);color:var(--ink);transform-origin:0 0;background:#fffcf7;padding:14px 14px 12px;font-family:JetBrains Mono,monospace;font-size:12px;position:fixed}.popover.above{transform-origin:0 100%}@media (prefers-reduced-motion:no-preference){.popover{animation:.14s cubic-bezier(.22,1,.36,1) forwards popIn}.popover.above{animation:.14s cubic-bezier(.22,1,.36,1) forwards popInAbove}@keyframes popIn{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes popInAbove{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}}.popover .pop-head{align-items:center;gap:8px;margin-bottom:10px;display:flex}.popover .pop-body{margin-bottom:12px;font-family:Lora,serif;font-size:14px;line-height:1.55}.popover .pop-body .strike{color:var(--ink-mute);text-decoration:line-through}.popover .pop-body .fix{color:var(--ink);font-weight:500}.popover .pop-body .fix-btn{color:var(--ink);cursor:pointer;background:0 0;border:none;border-radius:2px;margin:0 -4px;padding:2px 4px;font-family:Lora,serif;font-size:14px;font-weight:500}@media (prefers-reduced-motion:no-preference){.popover .pop-body .fix-btn{transition:background-color .12s,box-shadow .12s}}.popover .pop-body .fix-btn:hover{background-color:color-mix(in oklab, var(--ink) 8%, transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--ink) 20%, transparent)}.popover .pop-body .fix-btn:active{background-color:color-mix(in oklab, var(--ink) 12%, transparent)}.popover .pop-body .note{font-family:JetBrains Mono,monospace;font-size:11px}.popover .pop-actions{gap:6px;display:flex}.popover .pop-actions .btn{flex:1;justify-content:center;padding:6px 10px;font-size:12.5px}.popover .pop-actions .btn.accept{background:var(--ink);color:var(--cream);border-color:var(--ink)}.popover .pop-actions .btn.accept:hover{background:#1c170c}.badge{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);align-items:center;gap:0;padding:0;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:inline-flex}.badge .dot{display:none}.badge[data-type=grammar]{--b-color:var(--grammar)}.badge[data-type=style]{--b-color:var(--style)}.badge[data-type=clarity]{--b-color:var(--clarity)}.panel{border-left:1px solid var(--rule);background:var(--cream);flex-direction:column;min-width:0;display:flex;position:relative;overflow:hidden}.panel-header{border-bottom:1px solid var(--rule-soft);justify-content:space-between;align-items:center;padding:20px 24px 12px;display:flex}.panel-title{letter-spacing:-.005em;color:var(--ink);font-family:Lora,serif;font-size:17px;font-weight:600}.panel-title .count{color:var(--ink-mute);margin-left:6px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:400}.panel-tabs{gap:4px;padding:12px 20px 0;display:flex}.panel-tabs button{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-mute);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:5px;padding:6px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:inline-flex}@media (prefers-reduced-motion:no-preference){.panel-tabs button{transition:color .12s}}.panel-tabs button:hover{color:var(--ink-soft)}.panel-tabs button.active{color:var(--ink);border-bottom-color:var(--ink)}.panel-tabs button .num{background:var(--cream-deep);letter-spacing:0;color:var(--ink-soft);padding:1px 4px;font-family:JetBrains Mono;font-size:9.5px;font-weight:500}.panel-list{flex:1;padding:8px 0 80px;overflow-y:auto}.panel-list::-webkit-scrollbar{width:8px}.panel-list::-webkit-scrollbar-track{background:0 0}.panel-list::-webkit-scrollbar-thumb{background:var(--rule);border-radius:4px}.suggestion{border-bottom:1px solid var(--rule-soft);cursor:pointer;padding:0 16px;position:relative}@media (prefers-reduced-motion:no-preference){.suggestion{animation:.2s cubic-bezier(.22,1,.36,1) backwards suggReveal;animation-delay:calc(var(--s-idx,0) * 30ms);transition:background .12s}@keyframes suggReveal{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}.suggestion:hover{background:var(--cream-tint)}.suggestion.focused{background:var(--cream-deep)}.suggestion[data-type=grammar]{--s-color:var(--grammar)}.suggestion[data-type=style]{--s-color:var(--style)}.suggestion[data-type=clarity]{--s-color:var(--clarity)}.s-collapsed{align-items:center;gap:9px;min-height:40px;padding:11px 0;display:flex}.s-snippet{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-family:Lora,serif;font-size:13px;overflow:hidden}.s-arrow{color:var(--ink-mute);flex-shrink:0;font-size:11px}.s-repl{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;max-width:80px;font-family:Lora,serif;font-size:13px;overflow:hidden}.s-body{grid-template-rows:0fr;display:grid}.s-body.expanded{grid-template-rows:1fr}.s-body-inner{padding-bottom:0;overflow:hidden}.s-body.expanded .s-body-inner{padding-bottom:14px}@media (prefers-reduced-motion:no-preference){.s-body{transition:grid-template-rows .22s cubic-bezier(.22,1,.36,1)}.s-body-inner{transition:padding-bottom .22s cubic-bezier(.22,1,.36,1)}}.s-context{color:var(--ink-soft);opacity:0;margin-bottom:6px;padding-top:2px;font-family:Lora,serif;font-size:13.5px;line-height:1.55;transform:translateY(-3px)}.s-body.expanded .s-context{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:no-preference){.s-context{transition:opacity .14s,transform .14s}.s-body.expanded .s-context{transition-delay:90ms}}.s-context .flagged{color:var(--ink);-webkit-text-decoration:underline wavy var(--s-color);text-decoration:underline wavy var(--s-color);text-underline-offset:3px;text-decoration-thickness:1.5px}.s-fix{color:var(--ink);opacity:0;align-items:flex-start;gap:6px;margin-bottom:8px;font-family:Lora,serif;font-size:13.5px;line-height:1.5;display:flex;transform:translateY(-3px)}.s-body.expanded .s-fix{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:no-preference){.s-fix{transition:opacity .14s,transform .14s}.s-body.expanded .s-fix{transition-delay:.11s}}.s-fix .arrow{color:var(--ink-mute);margin-top:2px;font-family:JetBrains Mono;font-size:12px}.s-note{color:var(--ink-mute);opacity:0;margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.5;transform:translateY(-3px)}.s-body.expanded .s-note{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:no-preference){.s-note{transition:opacity .14s,transform .14s}.s-body.expanded .s-note{transition-delay:.13s}}.s-actions{opacity:0;gap:6px;display:flex}.s-body.expanded .s-actions{opacity:1}@media (prefers-reduced-motion:no-preference){.s-actions{transition:opacity .12s}.s-body.expanded .s-actions{transition-delay:.15s}}.s-actions .btn{padding:5px 12px;font-size:12px}.s-actions .btn.accept{background:var(--ink);color:var(--cream);border-color:var(--ink)}.s-actions .btn.accept:hover{background:#1c170c}.s-actions .btn.ignore{color:var(--ink-mute)}@media (prefers-reduced-motion:reduce){.s-body,.s-body-inner{transition:none}.s-context,.s-fix,.s-note,.s-actions{opacity:1;transition:none;transform:none}.mark,.suggestion,.show-suggestions,.show-suggestions .pip,.style-select .menu,.btn.primary.scanning svg{animation:none}.mark{opacity:1}.suggestion{opacity:1;transform:none}}.app[data-reduce-motion=true] .btn,.app[data-reduce-motion=true] .style-select>button.trigger:after{transition:none}.app[data-reduce-motion=true] .style-select .menu{animation:none}.app[data-reduce-motion=true] .icon-btn,.app[data-reduce-motion=true] .tbtn,.app[data-reduce-motion=true] .fmt-bar-wrap,.app[data-reduce-motion=true] .workspace,.app[data-reduce-motion=true] .doc h1,.app[data-reduce-motion=true] .doc h2,.app[data-reduce-motion=true] .doc h3,.app[data-reduce-motion=true] .doc p{transition:none}.app[data-reduce-motion=true] .mark{opacity:1;transition:none;animation:none}.app[data-reduce-motion=true] .mark:before,.app[data-reduce-motion=true] .mark:hover,.app[data-reduce-motion=true] .mark[data-focused]{transition:none}.app[data-reduce-motion=true] .scan-highlight,.app[data-reduce-motion=true] .popover{animation:none}.app[data-reduce-motion=true] .popover .pop-body .fix-btn,.app[data-reduce-motion=true] .panel-tabs button{transition:none}.app[data-reduce-motion=true] .suggestion{opacity:1;transition:none;animation:none;transform:none}.app[data-reduce-motion=true] .s-body,.app[data-reduce-motion=true] .s-body-inner{transition:none}.app[data-reduce-motion=true] .s-context,.app[data-reduce-motion=true] .s-fix,.app[data-reduce-motion=true] .s-note,.app[data-reduce-motion=true] .s-actions{opacity:1;transition:none;transform:none}.app[data-reduce-motion=true] .show-suggestions{transition:none;animation:none}.app[data-reduce-motion=true] .show-suggestions .pip{animation:none}.app[data-reduce-motion=true] .toast{opacity:1;animation:none}.app[data-reduce-motion=true] .help-popover{animation:none}.app[data-reduce-motion=true] .help-close,.app[data-reduce-motion=true] .help-item{transition:none}.app[data-reduce-motion=true] .settings-menu{animation:none}.app[data-reduce-motion=true] .settings-close,.app[data-reduce-motion=true] .settings-item{transition:none}.panel-empty{justify-content:center;align-items:center;min-height:200px;padding:32px;display:flex}.panel-empty-content{align-items:flex-start;gap:10px;max-width:280px;display:flex}.panel-empty-check{width:18px;height:18px;color:var(--ink-soft);opacity:.6;flex-shrink:0;margin-top:1px}.panel-empty-primary{color:var(--ink-soft);margin:0;font-family:Lora,serif;font-size:14px;font-weight:400;line-height:1.6}.code-style{background:#2c24160a;border-radius:2px;padding:2px 4px;font-family:JetBrains Mono,monospace;font-size:12px}.show-suggestions{top:var(--show-suggestions-y,60px);border:1px solid var(--rule);color:var(--ink);cursor:pointer;letter-spacing:.01em;box-shadow:var(--shadow-soft);z-index:35;background:0 0;border-radius:2px;align-items:center;gap:8px;padding:7px 12px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;display:inline-flex;position:fixed;right:20px}@media (prefers-reduced-motion:no-preference){.show-suggestions{transition:background .12s,border-color .12s,color .12s,top .22s cubic-bezier(.4,0,.2,1);animation:.22s cubic-bezier(.22,1,.36,1) showSuggReveal}@keyframes showSuggReveal{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.show-suggestions .pip{transform-origin:50%;animation:.24s cubic-bezier(.22,1,.36,1) pipReveal}@keyframes pipReveal{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}}.show-suggestions:hover{background:var(--cream-tint);border-color:#d8cfbe}.show-suggestions .pip{background:var(--ink-soft);color:var(--cream);text-align:center;border-radius:2px;min-width:18px;padding:1px 5px;font-family:JetBrains Mono;font-size:10px;font-weight:600}.panel-collapse{cursor:pointer;color:var(--ink-mute);background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.panel-collapse:hover{background:var(--cream-tint);color:var(--ink)}.status-bar{background:linear-gradient(to top, var(--cream) 60%, transparent);color:var(--ink-mute);pointer-events:none;z-index:4;align-items:center;gap:12px;padding:8px 24px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex;position:sticky;bottom:0;left:0;right:0}.status-bar .legend{gap:16px;display:flex}.status-bar .legend span{align-items:center;gap:5px;display:inline-flex}.status-bar .legend i{width:14px;height:0;display:inline-block}.status-bar .saved{margin-left:auto}.scrolled .toolbar-wrap{box-shadow:0 1px 2px #2c24160a}.toast{background:var(--cream);border:1px solid var(--rule);box-shadow:var(--shadow);color:var(--ink);border-radius:2px;align-items:center;gap:12px;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:13px;display:inline-flex}.toast svg{color:var(--accept)}@media (prefers-reduced-motion:no-preference){.toast{animation:.2s cubic-bezier(.22,1,.36,1) forwards toastSlideIn,1.5s ease-out 1.2s forwards toastFadeOut}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes toastFadeOut{to{opacity:0}}}.help-popover{z-index:70;background:var(--cream);border:1px solid var(--rule);min-width:360px;box-shadow:var(--shadow);transform-origin:top;border-radius:2px;margin-top:4px;padding:12px 0;position:fixed}.help-arrow{background:var(--cream);border-top:1px solid var(--rule);border-left:1px solid var(--rule);width:8px;height:8px;margin-left:0;position:absolute;top:-5px;transform:translate(-50%)rotate(45deg)}@media (prefers-reduced-motion:no-preference){.help-popover{animation:.14s cubic-bezier(.22,1,.36,1) forwards popInBelow}@keyframes popInBelow{0%{opacity:0;transform:scale(.96)translateY(-8px)}to{opacity:1;transform:scale(1)translateY(0)}}}.help-header{color:var(--ink);border-bottom:1px solid var(--rule-soft);justify-content:space-between;align-items:center;padding:10px 16px 12px;font-family:Lora,serif;font-size:13px;font-weight:600;display:flex}.help-close{cursor:pointer;color:var(--ink-mute);background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}@media (prefers-reduced-motion:no-preference){.help-close{transition:background .12s,color .12s}}.help-close:hover{background:var(--cream-tint);color:var(--ink)}.help-list{max-height:360px;padding:6px 0;overflow-y:auto}.help-list::-webkit-scrollbar{width:6px}.help-list::-webkit-scrollbar-track{background:0 0}.help-list::-webkit-scrollbar-thumb{background:var(--rule);border-radius:3px}.help-item{grid-template-columns:140px 1fr;align-items:center;gap:12px;padding:8px 16px;display:grid}@media (prefers-reduced-motion:no-preference){.help-item{transition:background .12s}}.help-item:hover{background:var(--cream-tint)}.help-keys{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.help-separator{color:var(--ink-mute);opacity:.6;font-size:11px}.help-key{min-width:22px;height:22px;color:var(--ink-soft);background:var(--cream-deep);border:1px solid var(--rule);border-radius:2px;justify-content:center;align-items:center;padding:0 6px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:500;display:inline-flex;box-shadow:inset 0 -1px #2c241614}.help-key-icon{color:var(--ink-mute);padding:0 4px}.help-desc{color:var(--ink);font-family:JetBrains Mono,monospace;font-size:12px}.settings-menu{z-index:70;background:var(--cream);border:1px solid var(--rule);min-width:360px;box-shadow:var(--shadow);transform-origin:top;border-radius:2px;margin-top:4px;padding:12px 0;position:fixed}.settings-arrow{background:var(--cream);border-top:1px solid var(--rule);border-left:1px solid var(--rule);width:8px;height:8px;position:absolute;top:-5px;transform:translate(-50%)rotate(45deg)}@media (prefers-reduced-motion:no-preference){.settings-menu{animation:.14s cubic-bezier(.22,1,.36,1) forwards popInBelow}}.settings-header{color:var(--ink);border-bottom:1px solid var(--rule-soft);justify-content:space-between;align-items:center;padding:10px 16px 12px;font-family:Lora,serif;font-size:13px;font-weight:600;display:flex}.settings-close{cursor:pointer;color:var(--ink-mute);background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}@media (prefers-reduced-motion:no-preference){.settings-close{transition:background .12s,color .12s}}.settings-close:hover{background:var(--cream-tint);color:var(--ink)}.settings-content{padding:6px 0}.settings-item{align-items:flex-start;gap:10px;padding:12px 16px;display:flex}.settings-item--col{cursor:default;flex-direction:column;gap:6px}@media (prefers-reduced-motion:no-preference){.settings-item{transition:background .12s}}.settings-item:not(.settings-item--col):hover{background:var(--cream-tint)}.settings-toggle{cursor:pointer;width:16px;height:16px;accent-color:var(--ink);flex-shrink:0;margin-top:2px}.settings-label{color:var(--ink);letter-spacing:.01em;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:500;display:block}.settings-desc{color:var(--ink-mute);margin-top:3px;font-family:JetBrains Mono,monospace;font-size:11px;display:block}.settings-item:focus-within{outline:none}.settings-item:focus-within .settings-label{color:var(--ink)}.settings-input{border:1px solid var(--rule);background:var(--cream-deep);color:var(--ink);box-sizing:border-box;border-radius:2px;outline:none;width:100%;padding:6px 8px;font-family:JetBrains Mono,monospace;font-size:12px}.settings-input:focus{border-color:var(--ink-mute)}.settings-input::placeholder{color:var(--ink-mute);opacity:.6}.settings-select-wrap{width:100%;position:relative}.settings-select-trigger{background:var(--cream-deep);border:1px solid var(--rule);width:100%;color:var(--ink);cursor:pointer;border-radius:2px;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.settings-select-trigger:hover{border-color:var(--ink-mute)}.settings-select-trigger:after{content:"";border-right:1.5px solid var(--ink-soft);border-bottom:1.5px solid var(--ink-soft);flex-shrink:0;width:6px;height:6px;transform:translateY(-30%)rotate(45deg)}.settings-select-cost{color:var(--ink-mute);margin-left:auto;margin-right:8px;font-size:10px}.settings-select-menu{background:var(--cream);border:1px solid var(--rule);box-shadow:var(--shadow-soft);z-index:80;border-radius:2px;padding:4px 0;position:absolute;top:calc(100% + 4px);left:0;right:0}.settings-select-option{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:7px 10px;font-family:JetBrains Mono,monospace;font-size:12px;display:flex}.settings-select-option:hover{background:var(--cream-tint)}.settings-select-option.active{background:var(--cream-tint);font-weight:500}.setup-screen{background:var(--cream);z-index:100;flex-direction:column;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}@media (prefers-reduced-motion:no-preference){.setup-screen{animation:.32s cubic-bezier(.22,1,.36,1) both setupFadeIn}.setup-screen.exiting{animation:.28s cubic-bezier(.4,0,1,1) forwards setupFadeOut}@keyframes setupFadeIn{0%{opacity:0}to{opacity:1}}@keyframes setupFadeOut{0%{opacity:1}to{opacity:0}}}.app[data-reduce-motion=true] .setup-screen{animation:none}.setup-body{width:100%;max-width:420px;margin:auto;padding:60px 28px}.setup-brand{justify-content:center;margin-bottom:52px;display:flex}.setup-headline{letter-spacing:-.015em;color:var(--ink);margin:0 0 12px;font-family:Lora,Georgia,serif;font-size:25px;font-weight:600;line-height:1.25}.setup-sub{color:var(--ink-mute);margin:0 0 40px;font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.7}.setup-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:600;display:block}.setup-input{border:1px solid var(--rule);background:var(--cream);width:100%;color:var(--ink);border-radius:2px;outline:none;padding:9px 12px;font-family:JetBrains Mono,monospace;font-size:13px}.setup-input::placeholder{color:var(--ink-mute);opacity:.6}@media (prefers-reduced-motion:no-preference){.setup-input{transition:border-color .12s}}.setup-input:focus{border-color:var(--ink-soft)}.setup-helper{color:var(--ink-mute);margin:9px 0 28px;font-family:JetBrains Mono,monospace;font-size:11.5px;text-decoration:none;display:block}@media (prefers-reduced-motion:no-preference){.setup-helper{transition:color .12s}}.setup-helper:hover{color:var(--ink-soft)}.setup-submit{justify-content:center;width:100%}.setup-progress{background:var(--rule);height:1px;margin-bottom:36px;position:relative;overflow:hidden}.setup-progress-fill{background:var(--ink);position:absolute;top:0;bottom:0;left:0}@media (prefers-reduced-motion:no-preference){.setup-progress-fill{transition:width .5s cubic-bezier(.22,1,.36,1)}}.setup-sentence-counter{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:14px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.setup-source-sentence{color:var(--ink);background:var(--cream-tint);border-left:2px solid var(--rule);border-radius:2px;margin-bottom:16px;padding:14px 16px;font-family:Lora,Georgia,serif;font-size:15px;line-height:1.6}.setup-rephrase{width:100%;color:var(--ink);border:1px solid var(--rule);background:var(--cream);resize:none;border-radius:2px;outline:none;min-height:76px;padding:10px 12px;font-family:Lora,Georgia,serif;font-size:15px;line-height:1.6;display:block}@media (prefers-reduced-motion:no-preference){.setup-rephrase{transition:border-color .12s}}.setup-rephrase:focus{border-color:var(--ink-soft)}.setup-rephrase-hint{color:var(--ink-mute);margin:7px 0 20px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-style:italic}.setup-btn-row{align-items:center;gap:14px;display:flex}.setup-skip-btn{color:var(--ink-mute);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:4px 0;font-family:JetBrains Mono,monospace;font-size:11px;text-decoration:underline}.setup-skip-btn:hover{color:var(--ink-soft)}.setup-import-link{color:var(--ink-mute);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;margin-top:24px;padding:0;font-family:JetBrains Mono,monospace;font-size:11px;text-decoration:underline;display:block}.setup-import-link:hover{color:var(--ink-soft)}.setup-name-row{gap:0;margin-bottom:32px;display:flex}.setup-name-input{border:1px solid var(--rule);background:var(--cream);color:var(--ink);border-radius:2px;outline:none;width:200px;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:13px}@media (prefers-reduced-motion:no-preference){.setup-name-input{transition:border-color .12s}}.setup-name-input:focus{border-color:var(--ink-soft)}.setup-summary-oneliner{color:var(--ink);background:var(--cream-tint);border-radius:2px;margin-bottom:20px;padding:16px 20px;font-family:Lora,Georgia,serif;font-size:16px;font-style:italic;line-height:1.65;position:relative}.setup-summary-char{color:var(--ink-soft);border-bottom:1px solid var(--rule-soft);align-items:flex-start;gap:10px;padding:7px 0;font-family:Lora,Georgia,serif;font-size:13.5px;line-height:1.6;display:flex}.setup-summary-char:last-of-type{border-bottom:none}.setup-summary-bullet{background:var(--ink-soft);border-radius:50%;flex-shrink:0;width:4px;height:4px;margin-top:8px}.setup-chars-block{margin-bottom:28px}.setup-word-section{margin-bottom:24px}.setup-word-section-label{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;display:block}.setup-word-section-hint{color:var(--ink-mute);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:10.5px;font-style:italic}.setup-word-chips{flex-wrap:wrap;gap:7px;display:flex}.setup-word-chip{border:1px solid var(--rule);background:var(--cream);color:var(--ink-soft);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:2px;padding:5px 11px;font-family:JetBrains Mono,monospace;font-size:11.5px;line-height:1}@media (prefers-reduced-motion:no-preference){.setup-word-chip{transition:background .1s,color .1s,border-color .1s}}.setup-word-chip:hover{border-color:var(--ink-soft);color:var(--ink)}.setup-word-chip.selected{background:var(--ink);color:var(--cream);border-color:var(--ink)}.setup-word-divider{background:var(--rule);height:1px;margin:28px 0}.setup-word-continue{margin-top:8px}.setup-generating{flex-direction:column;align-items:center;gap:16px;padding:40px 0;display:flex}.setup-generating-label{color:var(--ink-mute);letter-spacing:.04em;font-family:JetBrains Mono,monospace;font-size:12px}.voice-screen{background:var(--cream);height:100%;overflow-y:auto}.voice-inner{max-width:680px;margin:0 auto;padding:52px 48px 120px}.voice-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:10px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.voice-name{color:var(--ink);letter-spacing:-.02em;margin:0 0 8px;font-family:Lora,Georgia,serif;font-size:30px;font-weight:700}.voice-source{color:var(--ink-mute);border-bottom:1px solid var(--rule);margin-bottom:32px;padding-bottom:28px;font-family:JetBrains Mono,monospace;font-size:11px;line-height:1.6}.voice-source button,.voice-source a{color:var(--ink-soft);cursor:pointer;text-underline-offset:2px;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.voice-oneliner{color:var(--ink);background:var(--cream-tint);border-radius:2px;margin-bottom:40px;padding:18px 20px 18px 36px;font-family:Lora,Georgia,serif;font-size:17px;font-style:italic;line-height:1.65;position:relative}.voice-oneliner:before{content:"\"";color:var(--rule);font-family:Lora,Georgia,serif;font-size:44px;line-height:1;position:absolute;top:4px;left:12px}.voice-section{margin-bottom:40px}.voice-section-title{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:16px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700}.voice-char-list{margin:0;padding:0;list-style:none}.voice-char-item{color:var(--ink);border-bottom:1px solid var(--rule-soft);align-items:flex-start;gap:12px;padding:9px 0;font-family:Lora,Georgia,serif;font-size:14.5px;line-height:1.65;display:flex}.voice-char-item:last-child{border-bottom:none}.voice-char-bullet{background:var(--ink);border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-top:9px}.voice-word-split{grid-template-columns:1fr 1fr;gap:32px;display:grid}.voice-word-col-title{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:12px;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:600}.voice-chips{flex-wrap:wrap;gap:8px;display:flex}.voice-chip{-webkit-user-select:none;user-select:none;border-radius:2px;padding:4px 10px;font-family:JetBrains Mono,monospace;font-size:11.5px}.voice-chip-use{color:#2e5c2a;background:#e8f0e4;border:1px solid #c8dcc4}.voice-chip-avoid{background:var(--cream-tint);color:var(--ink-soft);border:1px solid var(--rule);cursor:pointer}.voice-chip-avoid:after{content:" ×";color:var(--ink-mute);font-size:10px}@media (prefers-reduced-motion:no-preference){.voice-chip-avoid{transition:opacity .12s}}.voice-chip-avoid.unchecked{opacity:.35;text-decoration:line-through}.voice-chip-avoid.unchecked:after{content:" +"}.voice-prose-block{color:var(--ink);background:var(--cream-tint);border-radius:2px;padding:16px 20px;font-family:Lora,Georgia,serif;font-size:14.5px;line-height:1.7}.voice-footer-bar{background:var(--cream-tint);color:var(--ink-mute);border-radius:2px;align-items:center;gap:12px;margin-top:40px;padding:12px 16px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex}.voice-footer-bar button{color:var(--ink);border:1px solid var(--rule);cursor:pointer;background:0 0;border-radius:2px;margin-left:auto;padding:5px 12px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600}.voice-footer-bar button:first-of-type{margin-left:auto}.voice-footer-bar button+button{margin-left:8px}.voice-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:60vh;display:flex}.voice-empty p{color:var(--ink-soft);max-width:360px;margin:0;font-family:Lora,Georgia,serif;font-size:16px;line-height:1.65}
