:root{color-scheme:dark;--accent:#c5edaa;--surface:#182123;--ink:#f6f7f4;--muted:#a4b0b0;--border:#ffffff20;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#101719;color:var(--ink)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea,a{font:inherit}button,a{touch-action:manipulation}button{color:inherit;background:#ffffff0c;border:1px solid var(--border);border-radius:12px;min-height:44px;padding:10px 14px;cursor:pointer}button:hover{background:#ffffff19}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button.primary,a.primary{background:var(--accent);color:#1b2916;border:0;font-weight:650;text-decoration:none;padding:14px 20px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:28px;min-height:48px}.glass{background:#192224c9;backdrop-filter:blur(18px);border:1px solid var(--border)}#studio{height:100dvh;min-height:480px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 68% 30%,#33483f 0%,#1b2c2b 32%,#101719 70%)}#camera,.shade{position:absolute;width:100%;height:100%;inset:0;object-fit:cover}.shade{pointer-events:none;background:linear-gradient(#0810118a,transparent 35%,transparent 65%,#081011cc)}header{position:absolute;top:0;left:0;right:0;padding:calc(22px + env(safe-area-inset-top)) 28px 12px;display:flex;justify-content:space-between;align-items:center;gap:10px;z-index:2}.brand{display:flex;gap:12px;align-items:center}.brand-mark{font-size:30px;font-weight:800;background:var(--accent);color:#182519;width:42px;height:42px;border-radius:13px;text-align:center}.brand-mark span,.welcome-mark span{color:#75975b}.brand strong{display:block;font-size:14px;letter-spacing:-.3px}.brand small{font-size:8px;letter-spacing:2px;color:#a9b7b2;display:block;margin-top:5px}.topline{position:absolute;top:calc(91px + env(safe-area-inset-top));left:28px;right:28px;display:flex;align-items:center;gap:8px;z-index:2}.topline .badge:first-child{margin-right:auto}.badge{font-size:10px;letter-spacing:1.4px;border:1px solid var(--border);border-radius:30px;padding:10px 12px;background:#10171980}.topline button{font-size:12px}.recording #timer{color:#ff9b9e;border-color:#ed5768}.recording #camera-status{color:#ff9b9e}#camera-empty{position:absolute;inset:155px 20px 190px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1}.lens-icon{font-size:52px;color:#b3c7b9;margin-bottom:20px}.eyebrow{font-size:9px;letter-spacing:2px;color:var(--accent);font-weight:650}h1{font-size:clamp(34px,5vw,58px);line-height:1.07;letter-spacing:-2px;font-weight:550;margin:16px 0}p{line-height:1.65;color:var(--muted)}#camera-empty p{font-size:14px;margin:10px 0 24px}.fine{font-size:11px!important;line-height:1.6;color:var(--muted)}#camera-empty .fine{margin:14px 0}.camera-active #camera-empty{display:none}#reader-wrap{position:absolute;left:50%;transform:translateX(-50%);top:25%;width:90%;height:45%;max-width:1000px;display:none;border-radius:12px;overflow:hidden}.camera-active #reader-wrap,.rehearsing #reader-wrap{display:block}.rehearsing #camera-empty{display:none}#reader{height:100%;overflow:auto;scrollbar-width:none;overscroll-behavior:contain;touch-action:pan-y;cursor:pointer;padding:20px}#reader::-webkit-scrollbar{display:none}#script-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:36px;font-weight:600;line-height:1.6;color:#fff;text-shadow:0 2px 5px #0009;padding-bottom:45vh}#guide{pointer-events:none;position:absolute;top:25%;left:0;width:100%;height:2px;background:#c5edaa90;display:none}#reader-wrap[data-guide="line"] #guide{display:block}#reader-wrap[data-guide="area"] #guide{display:block;height:25%;border-top:1px solid #c5edaa90;border-bottom:1px solid #c5edaa90;background:#c5edaa0b}#reader-wrap[data-guide="fade"] #reader{mask-image:linear-gradient(transparent,#000 20%,#000 55%,transparent)}#floating{position:absolute;bottom:190px;left:28px;right:28px;display:flex;align-items:center;gap:8px;z-index:3}#tools-toggle{font-size:16px}#tools-toggle span{font-size:11px;margin-left:10px}#text-tools{border-radius:12px;display:flex;flex-wrap:wrap}#text-tools[hidden]{display:none}#text-tools button{padding:8px 12px;border:0;background:transparent}footer{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,780px);padding:14px 28px calc(18px + env(safe-area-inset-bottom));z-index:3}.script-caption{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin:0 4px 14px;gap:10px}.script-caption>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#scroll-state{font-size:8px;letter-spacing:1.5px;color:var(--accent);flex-shrink:0}.control-bar{display:flex;align-items:center;justify-content:space-around;gap:4px;border-radius:24px;padding:12px 9px}.control{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:5px;padding:5px;min-width:42px}.control>span{font-size:22px;line-height:24px}.control small{font-size:9px;color:#b0b9b6}#record{width:68px;height:68px;min-width:68px;border-radius:50%;background:transparent;border:2px solid #f79198;padding:5px;margin:0 8px}#record>span{display:block;width:100%;height:100%;border-radius:50%;background:#f35f6d;transition:all .2s}.recording #record>span{width:26px;height:26px;border-radius:6px;margin:auto}.counting #record>span{background:#dbac64}.footer-note{display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:1px;color:#8e9c97;margin:14px 3px 0}#speed-label{color:#ced8d1;letter-spacing:.3px}#countdown{position:absolute;inset:0;display:grid;place-content:center;background:#0006;font-size:120px;pointer-events:none;z-index:2}#countdown[hidden]{display:none}dialog{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:24px;padding:28px;width:min(600px,calc(100% - 24px));max-height:90dvh;overflow:auto;box-shadow:0 24px 100px #0008}dialog::backdrop{background:#061011b8;backdrop-filter:blur(8px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}h2{font-size:25px;letter-spacing:-.7px;margin:8px 0}h3{font-size:13px;letter-spacing:1px;text-transform:uppercase;color:var(--accent)}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}input:not([type=checkbox]):not([type=range]),textarea,select{background:#0002;color:var(--ink);border:1px solid var(--border);border-radius:10px;padding:12px;width:100%;min-width:0}input[type=range]{accent-color:#b8dd9e;width:100%}input[type=checkbox]{accent-color:#b8dd9e;width:22px;height:22px}label{display:block;font-size:13px;color:var(--muted);margin-bottom:16px}label input, label select{margin-top:7px}.row input{flex:1}textarea{resize:vertical;min-height:38dvh;margin:15px 0;line-height:1.7}#save-status{font-size:11px;color:var(--accent)}.script-card{border:1px solid var(--border);padding:16px;border-radius:14px;margin:12px 0}.script-card h3{font-size:16px;text-transform:none;letter-spacing:0;color:var(--ink);margin:0}.script-card p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.script-card button{font-size:12px;padding:7px 12px}.settings-section{border-top:1px solid var(--border);margin-top:20px;padding-top:10px}.setting{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:center}.setting label{margin:12px 0}.setting output{color:var(--accent);font-size:11px;margin-left:5px}.danger{color:#ffa0a0}#preview{width:100%;max-height:52dvh;background:#000;border-radius:14px}#format-info{font-size:12px}#onboarding{text-align:center;padding:38px;max-width:470px}#onboarding h1{font-size:36px}#onboarding h2{font-size:21px;line-height:1.4}.welcome-mark{width:76px;height:76px;background:var(--accent);color:#182519;border-radius:24px;font-size:58px;font-weight:750;margin:22px auto}#onboarding .primary{width:100%;margin:15px 0}#toast{position:fixed;bottom:190px;left:50%;transform:translateX(-50%);z-index:20;background:#d6edcb;color:#182519;padding:14px 20px;border-radius:12px;font-size:13px;max-width:90%;box-shadow:0 4px 30px #0006}.light{--surface:#eff3ec;--ink:#15241b;--muted:#516057;--border:#1c34282b}.light dialog{color-scheme:light}.light dialog .eyebrow,.light dialog h3,.light dialog output,.light #save-status{color:#3d6830}@media(min-width:900px){#floating{left:40px;bottom:40px;right:auto;max-width:330px;flex-wrap:wrap}.topline{left:40px;right:40px}header{padding-left:40px;padding-right:40px}#reader-wrap{max-width:800px}}@media(max-width:420px){header{padding-left:16px;padding-right:16px}.brand strong{font-size:12px}.brand small{font-size:7px}#close-camera{font-size:10px;padding:8px}.topline{left:16px;right:16px}footer{padding-left:12px;padding-right:12px}#floating{left:16px;right:16px;bottom:185px}#tools-toggle span{display:none}#text-tools button{padding:6px 9px}dialog{padding:20px}.footer-note{font-size:7px}#record{margin:0 2px;width:62px;height:62px;min-width:62px}}@media(max-height:530px) and (orientation:landscape){header{padding-top:8px}.brand small{display:none}.topline{top:60px;right:15px;left:15px}footer{width:470px;left:auto;right:0;transform:none;padding:8px 15px}.script-caption,.footer-note{display:none}.control-bar{padding:5px}#record{width:50px;height:50px;min-width:50px}#floating{bottom:15px;left:15px;right:auto;max-width:220px;flex-wrap:wrap}#camera-empty{inset:90px 15px 90px}#camera-empty h1{font-size:28px;margin:8px}#camera-empty p,#camera-empty .lens-icon,#camera-empty .eyebrow{display:none}#reader-wrap{height:45%}}
@media(max-height:530px) and (orientation:landscape){#studio{min-height:0}}

#beauty-canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}#beauty-canvas[hidden]{display:none}.beauty-active #camera{opacity:0}.reel-active #beauty-canvas{object-fit:contain;background:#080d0e}#beauty-panel{position:absolute;z-index:5;bottom:240px;left:24px;width:min(340px,calc(100% - 48px));max-height:calc(100dvh - 260px);overflow:auto;border-radius:18px;padding:18px;color:#f6f7f4}#beauty-panel[hidden]{display:none}#beauty-panel .row{justify-content:space-between}#beauty-panel label{margin:10px 0;color:#d7e1da}#beauty-panel output{float:right;color:#c5edaa}#beauty-panel input[type=range]{display:block;min-height:28px}#beauty-panel .beauty-toggle{display:flex;justify-content:space-between;align-items:center;gap:12px}#beauty-panel .fine{margin:8px 0;color:#b7c6bc}#beauty-open[aria-expanded=true]{border-color:#c5edaa}#beauty-open{white-space:nowrap}#floating{flex-wrap:wrap}#text-tools{max-width:100%}@media(min-width:900px){#beauty-panel{bottom:100px;max-height:calc(100dvh - 210px)}}@media(max-height:530px) and (orientation:landscape){#beauty-panel{top:8px;bottom:8px;left:8px;max-height:none;width:300px}}

/* v1.1.1: native top-layer dialog prevents camera/footer stacking from hiding controls. */
#beauty-panel{position:fixed;inset:auto 12px calc(12px + env(safe-area-inset-bottom));margin:0 auto;width:min(420px,calc(100% - 24px));max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;padding:18px;border-radius:20px;box-shadow:0 16px 64px #0009;background:#182123f5;color:#f6f7f4}
#beauty-panel:not([open]){display:none}#beauty-panel::backdrop{background:#07100b40;backdrop-filter:none}#beauty-panel>.row:first-child{position:sticky;top:-18px;z-index:1;margin:-18px -18px 12px;padding:12px 18px;background:#182123;border-bottom:1px solid #ffffff20}#beauty-panel input[type=range]{min-height:44px}#beauty-panel .beauty-toggle{min-height:44px}#beauty-panel input[type=checkbox]{width:28px;height:28px;margin:0}
