:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,Helvetica Neue,sans-serif;color:#f5f3ed;background:#0b0b0c;font-synthesis:none;text-rendering:geometricPrecision;--background: #0b0b0c;--surface: #151516;--surface-raised: #1d1d1e;--text: #f7f5ef;--muted: #8b8a86;--dimmed: #3e3e3e;--line: rgba(255, 255, 255, .13);--accent: #ffad28;--accent-soft: rgba(255, 173, 40, .12);--danger: #ff7c72;--chrome-height: 134px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;min-height:100dvh;margin:0;overflow:hidden;background:var(--background)}button,select,textarea,input{font:inherit}button{color:inherit}button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline:2px solid rgba(255,173,40,.85);outline-offset:2px}.app-shell{position:relative;display:grid;grid-template-rows:var(--chrome-height) minmax(0,1fr) 96px 48px;width:100%;height:100%;min-height:100dvh;min-width:960px;min-height:640px;background:#0b0b0c}.app-shell.is-chrome-hidden{grid-template-rows:minmax(0,1fr)}.app-shell.is-chrome-hidden .topbar,.app-shell.is-chrome-hidden .bottom-controls,.app-shell.is-chrome-hidden .local-status{display:none}.chrome-toggle-button{position:fixed;z-index:80;top:max(16px,calc(env(safe-area-inset-top) + 12px));right:max(18px,calc(env(safe-area-inset-right) + 14px));display:grid;width:48px;height:48px;place-items:center;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:#171718b8;color:#f7f3ea;box-shadow:0 12px 28px #00000047;cursor:pointer;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.chrome-toggle-button:hover{border-color:#ffad2873;background:#201e1bdb;color:var(--accent)}.chrome-toggle-button:active{transform:scale(.96)}.topbar{position:relative;z-index:20;display:flex;align-items:flex-end;justify-content:center;padding:0 7.7vw 15px;background:#171718;border-bottom:1px solid var(--line);box-shadow:0 8px 20px #00000026}.app-title{position:absolute;top:18px;left:50%;margin:0;color:#f4f2ec;font-size:20px;font-weight:600;letter-spacing:.08em;transform:translate(-50%);-webkit-app-region:drag}.topbar__controls{display:grid;grid-template-columns:minmax(280px,330px) minmax(150px,176px) minmax(92px,108px) 116px minmax(138px,154px) minmax(124px,142px);gap:clamp(10px,1.4vw,24px);align-items:center;justify-content:center;width:100%}.segmented{display:grid;grid-template-columns:1fr 1fr;height:49px;overflow:hidden;background:#202021;border:1px solid rgba(255,255,255,.23);border-radius:13px;box-shadow:inset 0 1px #ffffff08}.segmented button{position:relative;border:0;background:transparent;color:#eeece6;font-size:18px;letter-spacing:.04em;cursor:pointer;transition:color .16s ease,background .16s ease}.segmented button+button:before{position:absolute;inset:9px auto 9px 0;width:1px;content:"";background:#ffffff1c}.segmented button.is-active{color:var(--accent);background:#ffffff09;font-weight:600}.listening-status,.speed-select,.microphone-test-button,.edit-button{display:flex;align-items:center;justify-content:center;height:49px;border:1px solid rgba(255,255,255,.23);border-radius:13px;background:#1c1c1d;color:#eeece6;font-size:17px;letter-spacing:.025em}.listening-status{gap:12px}.listening-status.is-live{color:var(--accent)}.skip-ahead-button{display:inline-flex;gap:6px;align-items:center;justify-content:center;height:48px;padding:0 12px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:#202021;color:#aaa8a2;font-size:14px;font-weight:650;letter-spacing:.03em;white-space:nowrap;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.skip-ahead-button.is-active{border-color:#ffad2861;background:#ffad281f;color:var(--accent)}.skip-ahead-button:active{transform:scale(.98)}.listening-status.is-live svg{filter:drop-shadow(0 0 6px rgba(255,173,40,.35))}.speed-select{position:relative;gap:5px;padding:0 14px;transition:opacity .16s ease}.speed-select select{min-width:54px;border:0;-webkit-appearance:none;appearance:none;background:transparent;color:inherit;cursor:pointer}.speed-select select:disabled{cursor:default;color:#eeece6;opacity:1;-webkit-text-fill-color:#eeece6}.edit-button{gap:10px;width:150px;padding:0 18px;cursor:pointer;transition:border-color .16s ease,background .16s ease}.microphone-test-button{gap:9px;padding:0 15px;border-color:#ffad2852;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}.microphone-test-button:hover{color:var(--accent)}.edit-button:hover,.microphone-test-button:hover,.listening-status:hover,.speed-select:hover{border-color:#ffffff59;background:#222223}.reading-stage{position:relative;min-height:0;overflow:hidden;background:#09090a}.focus-band{position:absolute;z-index:2;top:50%;right:0;left:0;height:27%;min-height:180px;pointer-events:none;background:#ffffff09;border-top:1px solid rgba(255,255,255,.022);border-bottom:1px solid rgba(255,255,255,.022);transform:translateY(-50%)}.focus-marker{position:absolute;top:50%;left:3.4vw;width:7px;height:57px;border-radius:999px;background:var(--accent);box-shadow:0 0 12px #ffad282e;transform:translateY(-50%)}.prompt-viewport{position:absolute;z-index:3;inset:0;overflow:auto;scrollbar-width:none;overscroll-behavior:contain}.prompt-viewport::-webkit-scrollbar{display:none}.prompt-script{position:relative;width:100%;max-width:1586px;min-height:100%;margin:0 auto;padding:50vh clamp(72px,9vw,150px) 60vh;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,Helvetica Neue,sans-serif;font-weight:500;line-height:1.42;letter-spacing:.025em;white-space:pre-wrap;word-break:normal;overflow-wrap:normal;transition:transform .22s ease}.prompt-script.is-mirrored{transform:scaleX(-1)}.prompt-token{transition:color .28s ease,opacity .28s ease,text-shadow .28s ease}.cue-overlay-layer{position:absolute;z-index:4;inset:0;pointer-events:none}.cue-floating-card{position:absolute;display:inline-flex;max-width:min(19em,44vw);padding:.08em .4em;align-items:center;border:1px solid rgba(255,173,40,.14);border-radius:.38em;background:#ffad280d;color:#544634;font-size:.24em;font-weight:650;line-height:1.16;letter-spacing:.02em;overflow-wrap:anywhere;text-align:center;white-space:normal;transform:translate(-50%,-50%);transition:border-color .18s ease,background .18s ease,color .18s ease}.cue-floating-card.is-active{border-color:#ffad2885;background:#ffad2824;color:#fff0c7}.cue-insertion-anchor{position:relative;display:inline-block;width:0;height:0;overflow:visible;vertical-align:baseline}.cue-insertion-anchor:before{position:absolute;left:0;bottom:.1em;width:.06em;height:.42em;border-radius:999px;background:currentColor;content:"";opacity:.9;box-shadow:0 0 10px #ffad282e;transform:translate(-50%)}.cue-insertion-anchor.is-focused-line:before{color:var(--accent);opacity:.9}.cue-insertion-anchor.is-dimmed-line:before{color:var(--dimmed-cue-color, rgba(255, 173, 40, .22));opacity:var(--dimmed-cue-opacity, .55);box-shadow:none}.token-latin{display:inline-block;white-space:nowrap;letter-spacing:.005em}.prompt-token.is-focused-line{color:#faf8f1;text-shadow:0 1px 18px rgba(255,255,255,.035)}.prompt-token.is-dimmed-line{color:var(--dimmed-token-color, #343435);text-shadow:none}.prompt-token.is-focused-line.is-emphasized{color:#ffd15f;text-shadow:0 1px 18px rgba(255,173,40,.16)}.prompt-token.is-dimmed-line.is-emphasized{color:var(--dimmed-emphasized-color, #5e461f)}.bottom-controls{position:relative;z-index:20;display:grid;grid-template-columns:428px minmax(0,1fr);align-items:center;padding:0 7.4vw;background:#171718;border-top:1px solid var(--line)}.transport-controls,.utility-controls{display:flex;align-items:center;justify-content:space-around}.transport-controls{display:grid;grid-template-columns:72px 88px 76px 88px 72px;gap:8px;width:428px;max-width:none;margin:0 auto;justify-self:center}.utility-controls{justify-content:flex-end;gap:clamp(10px,1.5vw,20px);transform:translate(16px)}.icon-button{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;min-width:88px;border:0;background:transparent;color:#f1efe9;cursor:pointer;transition:color .15s ease,transform .15s ease}.icon-button:hover,.icon-button.is-active{color:var(--accent)}.icon-button:active{transform:scale(.97)}.icon-button--compact{flex-direction:row;gap:8px;min-width:108px}.transport-button{min-width:0;padding:0 4px}.transport-button .icon-button__label{font-size:13px}.transport-button--edge{gap:2px;padding:0}.transport-button--edge .icon-button__label{font-size:12px}.icon-button__icon{display:flex}.icon-button__label{font-size:14px;letter-spacing:.04em;white-space:nowrap}.play-button{display:grid;width:76px;height:76px;padding:0;place-self:center;place-items:center;border:1px solid rgba(255,255,255,.6);border-radius:50%;background:#1b1b1c;color:var(--accent);cursor:pointer;transition:background .15s ease,transform .15s ease}.play-button:hover{background:#242425}.play-button:active{transform:scale(.96)}.font-control{position:relative;display:flex;flex-direction:column;gap:3px;align-items:center;min-width:90px;color:#f1efe9}.position-control{display:grid;gap:7px;width:132px;color:#f1efe9}.position-control__label{display:flex;gap:6px;align-items:center;justify-content:center;font-size:14px;letter-spacing:.04em;white-space:nowrap}.position-control__input-row{display:grid;grid-template-columns:minmax(70px,1fr) 34px;gap:6px;align-items:center}.position-control input{width:100%;margin:0;accent-color:var(--accent);cursor:ew-resize}.position-control output{color:#aaa8a2;font-size:11px;font-variant-numeric:tabular-nums}.font-control span{font-size:14px;letter-spacing:.04em}.font-control input{position:absolute;inset:-10px;width:calc(100% + 20px);opacity:0;cursor:ew-resize}.control-divider{width:1px;height:51px;background:#ffffff2b}.local-status{position:relative;z-index:20;display:flex;gap:9px;align-items:center;justify-content:center;background:#171718;border-top:1px solid rgba(255,255,255,.05);color:#f0eee7;font-size:15px;letter-spacing:.045em}.local-status>span{width:8px;height:8px;border-radius:50%;background:#777}.local-status>span.is-live{background:var(--accent);box-shadow:0 0 0 4px #ffad2814}.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;padding:40px;place-items:center;background:#000000bd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fade-in .14s ease-out}.editor-modal{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;width:min(980px,88vw);height:min(720px,82vh);overflow:hidden;background:#171718;border:1px solid rgba(255,255,255,.2);border-radius:18px;box-shadow:0 28px 80px #0000009e;animation:modal-in .18s ease-out}.editor-modal__header,.editor-modal__footer{display:flex;align-items:center;justify-content:space-between;padding:20px 24px}.editor-modal__header{border-bottom:1px solid var(--line)}.editor-modal__header h2{margin:0 0 5px;font-size:21px;font-weight:620}.editor-modal__header p{margin:0;color:var(--muted);font-size:13px}.close-button{display:grid;width:38px;height:38px;padding:0;place-items:center;border:0;border-radius:50%;background:#ffffff0f;cursor:pointer}.editor-syntax-hint{display:flex;flex-wrap:wrap;gap:8px 16px;padding:10px 24px;border-bottom:1px solid rgba(255,255,255,.08);background:#131314;color:#aaa8a2;font-size:13px;line-height:1.45}.editor-syntax-hint code{padding:2px 5px;border-radius:5px;background:#ffad281f;color:#ffd15f;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px}.editor-modal textarea{width:100%;height:100%;padding:34px 42px;resize:none;border:0;outline:0;background:#0d0d0e;color:#f6f4ee;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,PingFang SC,sans-serif;font-size:23px;line-height:1.75}.editor-modal textarea::placeholder{color:#555}.editor-modal__footer{gap:20px;border-top:1px solid var(--line)}.editor-file-actions,.editor-confirm-actions{display:flex;gap:10px;align-items:center}.editor-file-actions button,.secondary-button,.primary-button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:40px;padding:0 17px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background:#222223;color:#f2f0e9;font-size:14px;cursor:pointer}.editor-file-actions button:hover,.secondary-button:hover{background:#2a2a2b}.primary-button{border-color:#d98a13;background:var(--accent);color:#17120a;font-weight:650}.primary-button:disabled{cursor:not-allowed;opacity:.55}.primary-button:hover{background:#ffb942}.primary-button:disabled:hover{background:var(--accent)}.microphone-test-backdrop{z-index:130}.microphone-test-modal{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(760px,86vw);height:min(670px,82vh);overflow:hidden;background:#171718;border:1px solid rgba(255,255,255,.2);border-radius:18px;box-shadow:0 28px 80px #0000009e;animation:modal-in .18s ease-out}.microphone-test-modal__header,.microphone-test-modal__footer{display:flex;align-items:center;justify-content:space-between;padding:20px 24px}.microphone-test-modal__header{border-bottom:1px solid var(--line)}.microphone-test-modal__header h2{margin:0 0 5px;font-size:21px;font-weight:620}.microphone-test-modal__header p{margin:0;color:var(--muted);font-size:13px}.microphone-test-body{display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px;min-height:0;padding:24px;background:#0d0d0e}.mic-health-card{display:grid;gap:14px;padding:20px;background:#171718;border:1px solid rgba(255,255,255,.14);border-radius:12px}.mic-health-card.is-speaking{border-color:#ffad286b}.mic-health-card__topline,.mic-health-card__meta{display:flex;align-items:center;justify-content:space-between}.mic-health-card__topline{color:#f3f0e8;font-size:18px;font-weight:600}.mic-health-card__icon{display:grid;width:46px;height:46px;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.mic-meter{width:100%;height:10px;overflow:hidden;border-radius:999px;background:#2a2a2b}.mic-meter span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffad28,#ffe08d);transition:width .12s linear}.mic-health-card__meta{color:#aaa8a2;font-size:13px}.transcript-panel{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden;background:#171718;border:1px solid rgba(255,255,255,.14);border-radius:12px}.transcript-panel__title{padding:15px 18px;border-bottom:1px solid var(--line);color:#f2f0e9;font-size:15px;font-weight:650}.transcript-list{min-height:0;padding:4px 18px 18px;overflow:auto}.transcript-list p{display:grid;gap:7px;margin:14px 0 0;color:#f6f4ee;font-size:21px;line-height:1.45}.transcript-list small{color:#8f8d87;font-size:12px}.transcript-empty{color:#74726c!important;font-size:16px!important}.microphone-test-modal__footer{gap:14px;border-top:1px solid var(--line)}.microphone-stop-button{border-color:#ff7c72cc;background:#ff7c72;color:#240806}.microphone-stop-button:hover{background:#ff928a}.editor-message{max-width:210px;overflow:hidden;color:var(--muted);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.model-backdrop{z-index:120}.model-setup{display:flex;flex-direction:column;align-items:center;width:min(490px,88vw);padding:38px 42px 36px;background:#171718;border:1px solid rgba(255,255,255,.2);border-radius:18px;box-shadow:0 28px 80px #0000009e;text-align:center}.model-icon{display:grid;width:58px;height:58px;margin-bottom:18px;place-items:center;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.model-setup h2{margin:0 0 12px;font-size:23px}.model-setup>p{margin:0 0 26px;color:#aaa8a2;font-size:15px;line-height:1.7}.model-progress{width:100%;height:7px;overflow:hidden;border-radius:999px;background:#29292a}.model-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .18s linear}.model-progress-label{display:flex;justify-content:space-between;width:100%;margin-top:10px;color:#9d9b95;font-size:12px}.model-cancel,.model-download{margin-top:24px}.model-error{color:var(--danger)!important}.mobile-orientation-gate{position:fixed;z-index:200;inset:0;display:none;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));place-items:center;background:#0b0b0c}.mobile-orientation-gate__panel{display:grid;gap:14px;justify-items:center;max-width:320px;color:#f6f4ee;text-align:center}.mobile-orientation-gate__panel svg{color:var(--accent)}.mobile-orientation-gate__panel h2{margin:0;font-size:24px;font-weight:680}.mobile-orientation-gate__panel p{margin:0 0 4px;color:#aaa8a2;font-size:15px;line-height:1.6}.mobile-orientation-gate__panel button{display:inline-flex;gap:8px;align-items:center;justify-content:center;height:46px;padding:0 18px;border:1px solid rgba(255,173,40,.48);border-radius:999px;background:var(--accent);color:#17120a;font-weight:700;cursor:pointer}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:1180px){:root{--chrome-height: 126px}.topbar{padding-right:2vw;padding-left:2vw}.topbar__controls{grid-template-columns:244px 140px 92px 96px 126px 108px;gap:8px;transform:none}.edit-button,.microphone-test-button,.skip-ahead-button{width:auto;transform:none;padding-right:10px;padding-left:10px;font-size:15px}.prompt-script{padding-right:72px;padding-left:92px}.bottom-controls{padding-right:4vw;padding-left:4vw}.transport-controls{grid-template-columns:72px 88px 76px 88px 72px;gap:8px;width:428px;margin:0 auto}.utility-controls{gap:10px;transform:none}.utility-controls .icon-button{min-width:74px}.position-control{width:112px}}@media(max-width:900px){.app-shell{min-width:0;min-height:0}.editor-modal,.microphone-test-modal{width:min(94vw,760px);height:min(88dvh,670px)}}@media(max-width:900px)and (orientation:portrait){.mobile-orientation-gate{display:grid}}@media(max-width:900px)and (orientation:landscape){:root{--chrome-height: 68px}.app-shell{grid-template-rows:var(--chrome-height) minmax(0,1fr) 72px 28px;width:100vw;height:100dvh}.topbar{align-items:center;padding:max(6px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 6px max(12px,env(safe-area-inset-left))}.app-title{display:none}.topbar__controls{grid-template-columns:minmax(158px,1.45fr) 44px 44px 68px 44px 44px;gap:7px}.segmented,.listening-status,.skip-ahead-button,.speed-select,.microphone-test-button,.edit-button{height:44px;border-radius:10px;font-size:13px}.segmented button{font-size:13px;letter-spacing:0}.listening-status{gap:0}.listening-status span,.skip-ahead-button span,.microphone-test-button span,.edit-button span,.speed-select>span,.speed-select svg{display:none}.speed-select{padding:0}.speed-select select{min-width:58px;text-align:center}.microphone-test-button,.edit-button,.skip-ahead-button{width:46px;padding:0}.focus-band{min-height:112px}.focus-marker{left:max(16px,env(safe-area-inset-left));width:5px;height:42px}.chrome-toggle-button{top:max(8px,calc(env(safe-area-inset-top) + 6px));right:max(10px,calc(env(safe-area-inset-right) + 8px));width:42px;height:42px}.prompt-script{max-width:none;padding:42dvh max(42px,calc(env(safe-area-inset-right) + 32px)) 48dvh max(56px,calc(env(safe-area-inset-left) + 48px));line-height:1.36}.bottom-controls{grid-template-columns:312px minmax(0,1fr);gap:10px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left))}.transport-controls{grid-template-columns:48px 58px 60px 58px 48px;gap:4px;width:312px;margin:0;justify-self:start}.play-button{width:58px;height:58px}.transport-button{padding:0}.transport-button .icon-button__label,.utility-controls .icon-button__label,.font-control span,.position-control__label,.control-divider{display:none}.icon-button--compact{flex-direction:column;min-width:0}.utility-controls{min-width:0;gap:8px;justify-content:flex-end}.utility-controls .icon-button,.font-control{min-width:38px}.position-control{width:clamp(82px,14vw,112px);gap:0}.position-control__input-row{grid-template-columns:minmax(60px,1fr) 28px;gap:4px}.position-control output{font-size:10px}.font-control input{inset:-14px -6px;width:calc(100% + 12px)}.local-status{padding-bottom:env(safe-area-inset-bottom);font-size:12px}.modal-backdrop{padding:12px}}@media(max-width:700px)and (orientation:landscape){:root{--chrome-height: 58px}.app-shell{grid-template-rows:var(--chrome-height) minmax(0,1fr) 64px 24px}.topbar__controls{grid-template-columns:minmax(142px,1fr) 38px 38px 58px 38px 38px;gap:5px}.segmented,.listening-status,.speed-select,.microphone-test-button,.edit-button{height:38px}.segmented button{font-size:12px}.bottom-controls{grid-template-columns:270px minmax(0,1fr);gap:6px}.transport-controls{grid-template-columns:40px 50px 54px 50px 40px;gap:3px;width:270px}.play-button{width:52px;height:52px}.utility-controls{gap:4px}.utility-controls .icon-button,.font-control{min-width:32px}.position-control{width:64px}.position-control output{display:none}.position-control__input-row{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
