:root{color-scheme:dark;--bg:#151617;--surface:#202124;--edge:#34363c;--text:#eeedef;--muted:#9fa2ad;--accent:#f8e6a0;--green:#b2c8b3;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{margin:0;background:var(--bg);color:var(--text);font-size:15px;line-height:1.55}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}a{color:inherit;text-decoration:none}#app{max-width:760px;margin:auto;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;position:relative;padding:0 24px}header{flex-shrink:0;min-height:calc(68px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #ffffff0b}.wordmark{font-size:25px;font-weight:740;letter-spacing:-1px}.wordmark span{font-size:9px;font-weight:600;letter-spacing:1.6px;color:var(--muted);margin-left:12px;vertical-align:middle}nav{display:flex;gap:6px}.icon{background:transparent;border:0;border-radius:9px;display:inline-grid;place-items:center;width:42px;height:42px;color:var(--muted)}.icon:hover{background:#ffffff09;color:var(--text)}.icon.active{color:var(--accent)}svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1{font-size:31px;letter-spacing:-1.15px;line-height:1.16;font-weight:640;margin:0 0 18px}p{margin:0 0 20px}.eyebrow{color:var(--muted);font-size:10px;letter-spacing:1.65px;font-weight:650;margin-bottom:17px}.quiet{font-size:13px;color:var(--muted);line-height:1.6}.intro{max-width:340px;color:#acafb8;font-size:16px;line-height:1.6}#pairScreen{padding:64px 6px 32px;max-width:430px;margin:auto}#pairScreen h1{font-size:44px;letter-spacing:-1.9px;line-height:1.07}.pair-art{display:flex;align-items:center;gap:19px;margin-bottom:43px;color:var(--accent)}.pair-art svg{width:55px;height:55px;stroke-width:1}.pair-art span:last-child svg{width:34px;height:43px}.pair-art i{width:58px;border-top:1px dashed #9c9472}label{display:block;font-size:12px;color:var(--muted);margin-bottom:9px}input{background:var(--surface);border:1px solid var(--edge);border-radius:10px;width:100%;padding:13px 14px;color:var(--text);margin-bottom:16px}.primary,.secondary{border:0;border-radius:10px;min-height:46px;padding:11px 16px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:600;font-size:14px}.primary{color:#29271f;background:var(--accent)}.primary:hover{background:#ffefb9}.secondary{background:transparent;border:1px solid var(--edge);color:#c7c9d0}.secondary:hover{background:#ffffff08}.full{width:100%}.full span{margin-left:auto}#pairHint{margin-top:20px}#pairStatus{font-size:14px;margin-top:20px;color:var(--accent)}.pair-code{display:block;font-size:34px;letter-spacing:7px;line-height:1.5;color:var(--text);margin:15px 0}#connectionLine{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);padding:10px 0 4px}#connectionState{margin-left:auto;font-size:11px}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.offline .live-dot{background:#dfaa77}#demoNotice{font-size:10px;color:var(--muted);padding:8px 0 0;line-height:1.45}#chatScreen{padding:20px 0 24px}.chat-title{margin-bottom:28px}.chat-title>span{font-size:11px;letter-spacing:.6px;color:var(--muted)}.chat-title h1{font-size:25px;margin-top:5px}.message{margin:0 0 32px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.65}.message.user{margin-left:38px;background:#28292e;border-radius:16px 16px 3px 16px;padding:13px 17px}.message-label{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:11px;font-weight:600;margin-bottom:10px}.message-label svg{width:16px;height:16px}.message p{margin:0 0 16px}.plan{background:#1d1e21;border:1px solid var(--edge);border-radius:15px;padding:20px;white-space:normal;margin:17px 0 12px}.plan-head{display:flex;align-items:center;gap:9px;color:var(--accent);font-size:12px;font-weight:600}.plan h2{font-size:18px;line-height:1.4;letter-spacing:-.25px;margin:18px 0 6px}.plan-meta{font-size:12px;color:var(--muted);margin:4px 0 19px!important}.plan p{font-size:13px;line-height:1.65}.plan details{border-top:1px solid var(--edge);padding:12px 0;margin-top:16px;color:var(--muted);font-size:12px}.plan summary{cursor:pointer}.plan pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.55 inherit;max-height:250px;overflow:auto}.plan .credit{font-size:11px;color:var(--muted);margin:12px 0 16px!important}.actions{display:flex;gap:10px;flex-wrap:wrap}.actions button{flex:1}.choice-option{display:block;text-align:left;width:100%;background:#ffffff03;color:var(--text);border:1px solid var(--edge);border-radius:8px;padding:12px;margin-top:9px}.choice-option:hover{border-color:#b5aa76}.choice-option small{display:block;color:var(--muted);margin-top:5px}#composer{flex-shrink:0;margin:0;padding:12px 0 max(12px,env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid #ffffff0a}.composer-field{display:flex;align-items:flex-end;gap:8px;padding:9px;border:1px solid #6d6954;border-radius:15px;background:var(--surface)}textarea{min-height:42px;max-height:150px;resize:none;flex:1;width:0;padding:10px;background:none;color:var(--text);border:0;outline:none!important;font-size:16px}textarea::placeholder{color:#92959f}.send{background:var(--accent);color:#24231e;border:0;border-radius:11px;width:42px;height:42px;display:grid;place-items:center}.composer-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-top:10px}#busyStatus{font-size:12px;color:var(--muted)}.thinking-dots{color:var(--accent);letter-spacing:3px;animation:breathe 1.3s ease-in-out infinite;margin-right:6px}@keyframes breathe{50%{opacity:.35}}#notice{pointer-events:none;position:fixed;bottom:140px;left:50%;transform:translateX(-50%);width:min(calc(100% - 48px),660px);border:1px solid #68604b;border-radius:10px;padding:13px 16px;background:#2b2922;color:#eee0af;font-size:12px;z-index:5}#libraryScreen,#connectionScreen{padding:30px 0 70px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-bottom:20px}.section-heading h1{margin:0}.section-heading .eyebrow{margin-bottom:8px}#libraryCount{color:var(--muted);font-size:12px}#filters{display:flex;gap:23px;border-bottom:1px solid var(--edge);margin-bottom:22px}#filters button{border:0;background:none;color:var(--muted);padding:10px 0 12px;display:flex;align-items:center;gap:7px;font-size:12px;position:relative}#filters svg{width:16px;height:16px}#filters button[aria-selected=true]{color:var(--accent)}#filters button[aria-selected=true]:after{content:"";height:2px;background:var(--accent);position:absolute;bottom:-1px;left:0;right:0}#libraryGrid{display:grid;grid-template-columns:1fr 1fr;gap:20px 12px}.asset{min-width:0;text-align:left;border:0;background:transparent;padding:0;color:var(--text)}.asset-thumb{height:160px;background:#232428;border:1px solid var(--edge);border-radius:12px;display:grid;place-items:center;overflow:hidden;color:var(--muted);margin-bottom:9px}.asset-thumb svg{width:27px;height:27px}.asset-thumb img{width:100%;height:100%;object-fit:cover}.asset strong{display:block;font-size:12px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset small{font-size:11px;color:var(--muted)}.asset:hover .asset-thumb{border-color:#888169}.device-card{display:flex;align-items:center;justify-content:center;gap:12px;text-align:left;padding:0;margin:25px 0 30px}.device-card svg{width:30px;height:30px;color:var(--accent)}.device-card p{font-size:12px;color:var(--muted);margin:4px 0 0}dialog{border:1px solid var(--edge);border-radius:17px;background:var(--surface);color:var(--text);width:min(650px,calc(100% - 28px));padding:16px;max-height:90dvh;overflow:auto}dialog::backdrop{background:#000a}.preview-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:14px}#previewMedia img,#previewMedia video{width:100%;max-height:62dvh;object-fit:contain;border-radius:8px}#previewMedia audio{width:100%}#previewStatus{font-size:12px;color:var(--muted);margin-top:12px}#download{width:100%;margin-top:14px}.empty{color:var(--muted);font-size:14px;grid-column:1/-1;padding:34px 0}.progress{color:var(--accent);font-size:12px}.complete{font-size:12px;color:var(--green);display:flex;align-items:center;gap:8px;padding:8px 0}.complete svg{width:17px;height:17px}@media(min-width:600px){#app{padding:0 40px}.asset-thumb{height:240px}#libraryGrid{gap:26px 18px}.message.user{margin-left:100px}}@media(max-width:360px){#app{padding:0 16px}.wordmark span{display:none}#filters{gap:17px}.plan{padding:16px}.asset-thumb{height:130px}}
header{z-index:6;background:var(--bg)}

/* The page itself never scrolls: Safari chrome, header and composer keep their own space. */
#workspace{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#42444c transparent;scroll-padding:16px 0 24px}
#workspace[data-view="connection"]{display:flex;flex-direction:column}
#workspace[data-view="connection"] #connectionLine{display:none}
#workspace[data-view="connection"] #connectionScreen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0 max(32px,env(safe-area-inset-bottom));text-align:center;min-height:460px}
#connectionScreen h1{font-size:29px;letter-spacing:-1px;margin-bottom:16px}
#connectionScreen .quiet{margin-bottom:0;max-width:280px}
.connection-caption{font-size:11px;font-weight:600;color:var(--accent);margin:0 0 10px}
.connection-footnote{font-size:11px;line-height:1.65;color:#858995;max-width:265px;margin:22px 0 0}
.connected-mark{position:relative;width:88px;height:88px;margin:0 auto 24px;border-radius:50%;background:radial-gradient(circle,#e5cd8317,#e5cd8305 70%)}
.connected-mark svg{width:100%;height:100%;stroke:var(--accent)}
.connected-mark:after{content:"";position:absolute;inset:0;border:1px solid #e5cd8324;border-radius:50%;opacity:0}
.connected-mark .completion-ring{stroke:#e5cd834d;stroke-width:.8}
.connected-mark .completion-check{stroke-width:2.5;stroke-dasharray:43;stroke-dashoffset:0}
.arrive .connected-mark{animation:connection-settle .65s cubic-bezier(.2,.75,.3,1) both}
.arrive .completion-check{animation:connection-draw .45s ease-out .14s both}
.arrive .connected-mark:after{animation:connection-halo 1.2s ease-out .08s both}
#connectionScreen.arrive{animation:connection-enter .38s ease-out both}
.offline .connected-mark{opacity:.4;background:none}
.offline .completion-check{visibility:hidden}
.offline .connection-caption{color:var(--muted)}
button,a{transition:background .16s,color .16s,border-color .16s,opacity .16s}
button:active:not(:disabled){transform:translateY(1px)}
#pairScreen{padding-top:38px}
.pair-art{margin-bottom:30px}
#pairScreen[data-state="waiting"] .pair-art i{border:0;height:1px;background:linear-gradient(90deg,#9c947240,var(--accent),#9c947240);background-size:200% 100%;animation:pair-flow 2.2s ease-in-out infinite}
#pairScreen[data-state="waiting"] #pairStatus{border-top:1px solid var(--edge);padding-top:20px}
#pairStatus .pair-code{font-size:36px;font-weight:550;letter-spacing:6px;color:var(--accent);font-variant-numeric:tabular-nums}
#pairScreen[data-state="ended"] .pair-art{opacity:.45}
#preview[open]{animation:connection-enter .24s ease-out both}
#previewMedia.loading{min-height:190px;display:grid;place-items:center;background:#ffffff02;border-radius:10px;color:var(--accent)}
#previewMedia.loading svg{width:36px;height:36px;stroke-width:1;animation:breathe 1.8s ease-in-out infinite}
#previewProgress{height:2px;background:var(--edge);overflow:hidden;margin-top:16px}
#previewProgress span{height:100%;width:100%;display:block;transform:scaleX(0);transform-origin:left;background:var(--accent);transition:transform .2s linear}
#previewHint{font-size:11px;margin:6px 0 0}
#previewStatus{margin-bottom:0}
@keyframes connection-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes connection-settle{0%{transform:scale(.86)}55%{transform:scale(1.05)}100%{transform:scale(1)}}
@keyframes connection-draw{from{stroke-dashoffset:43}to{stroke-dashoffset:0}}
@keyframes connection-halo{0%{opacity:0;transform:scale(.9)}25%{opacity:.8}100%{opacity:0;transform:scale(1.55)}}
@keyframes pair-flow{50%{background-position:100% 0;opacity:.5}}
@media(max-width:400px){#app{padding:0 20px}.wordmark{font-size:23px}.wordmark span{font-size:8px;margin-left:9px}nav{gap:2px}.icon{width:40px;height:40px}#filters{gap:20px}}
@media(max-width:360px){#app{padding:0 16px}#pairScreen h1{font-size:38px}.plan{padding:16px}.composer-meta{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Visual viewport coordinates account for Safari's first-focus pan. */
html,body{width:100%;overscroll-behavior:none}body{position:fixed;inset:0}#app{position:absolute;top:0;left:0;right:0;width:100%;min-height:0;margin:0 auto}input{font-size:16px}#composer{padding-bottom:max(10px,env(safe-area-inset-bottom))}.keyboard-open #composer{padding-bottom:8px}.keyboard-open .composer-meta{display:none}.keyboard-open header{min-height:calc(56px + env(safe-area-inset-top))}.keyboard-open #connectionLine{display:none}
.message-copy{white-space:pre-wrap}.message-copy strong{font-weight:650}.message-copy code{font-size:.9em;padding:2px 4px;border-radius:4px;background:#ffffff08}
.task-receipt{display:flex;align-items:center;gap:13px;margin:24px 0 6px;padding:17px 16px;border:1px solid #e5d49b24;border-radius:12px;background:linear-gradient(110deg,#e5d49b0a,transparent);white-space:normal}.receipt-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid #e5d49b35;border-radius:50%;color:var(--accent)}.receipt-mark svg{width:19px;height:19px}.receipt-words strong{display:block;font-size:13px;font-weight:550;color:#eddda3}.receipt-words small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.task-receipt:not([data-state="done"]){border-color:var(--edge);background:none}.task-receipt:not([data-state="done"]) .receipt-mark{border:0;color:var(--muted)}.task-receipt:not([data-state="done"]) strong{color:#bec0c9}.task-receipt[data-state="working"] .receipt-mark{animation:breathe 1.5s ease-in-out infinite}.task-receipt.arrive{animation:connection-enter .45s ease-out both}.task-receipt.arrive .receipt-mark{animation:connection-settle .6s ease-out both}.task-receipt.arrive .receipt-mark path{stroke-dasharray:30;animation:connection-draw .5s ease-out both}
.scene-frames{margin:22px 0;white-space:normal}.scene-frames-heading{display:flex;align-items:center;gap:7px;color:#b8bbc5;margin-bottom:12px}.scene-frames-heading svg{width:15px;height:15px}.scene-frames-heading strong{font-size:11px;font-weight:550}.scene-frames-heading small{margin-left:auto;font-size:9px;color:#818591}.scene-frame-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,65%);gap:10px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px}.scene-frame-strip:has(>.scene-frame:only-child){grid-auto-columns:100%}.scene-frame{display:block;min-width:0;background:transparent;border:0;padding:0;text-align:left;scroll-snap-align:start}.scene-frame-image{display:grid;place-items:center;aspect-ratio:16/9;overflow:hidden;border:1px solid #34363c;border-radius:10px;color:#777b86;background:#202124}.scene-frame-image>svg{width:25px;height:25px;opacity:.7}.scene-frame-image img{width:100%;height:100%;object-fit:contain}.scene-frame-caption{display:block;margin-top:7px;color:#a6a9b4;font-size:10px;font-variant-numeric:tabular-nums}.scene-frame:focus-visible .scene-frame-image{border-color:var(--accent)}
@media(min-width:600px){.scene-frame-strip{grid-auto-columns:minmax(200px,45%)}}
@media(prefers-reduced-motion:reduce){.task-receipt,.task-receipt .receipt-mark,.task-receipt .receipt-mark path{animation:none!important}}

/* Project navigation stays close to the conversation without taking over it. */
#newChatButton{color:var(--text)}.chat-title{margin-bottom:16px}.chat-title h1{overflow-wrap:anywhere;margin-bottom:0}
.comp-target{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:13px 0;margin-bottom:26px;border:0;border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d;background:transparent}.comp-target>span:first-child{color:#b9aa73;display:grid;place-items:center}.comp-target svg{width:19px;height:19px}.comp-target-copy{flex:1;min-width:0}.comp-target-copy small{display:block;font-size:8px;letter-spacing:1.4px;font-weight:600;color:#858995;margin-bottom:3px}.comp-target-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:550}.comp-target>span:last-child{color:#858995;display:flex}.comp-target>span:last-child svg{width:15px;height:15px}.comp-target:hover strong{color:var(--accent)}
#chatEmpty{padding:42px 0 58px;text-align:center;animation:connection-enter .3s ease-out}#chatEmpty>span{color:var(--accent);display:block;margin-bottom:13px}#chatEmpty svg{width:30px;height:30px;stroke-width:1}#chatEmpty h2{font-size:24px;font-weight:550;letter-spacing:-.6px;margin:0 0 9px}#chatEmpty p{font-size:13px;color:var(--muted);margin:0}
#compPicker{width:min(540px,calc(100% - 24px));padding:22px;max-height:min(650px,85dvh)}#compPicker[open]{animation:connection-enter .22s ease-out}#compPicker .preview-top{margin-bottom:20px}#compPicker .eyebrow{margin:0 0 6px;font-size:9px}#compPicker h2{font-size:21px;letter-spacing:-.5px;font-weight:600;margin:0}#compPicker .preview-top .icon{flex-shrink:0}#compSearch{background:#18191c;border-radius:9px;margin:0 0 12px}#compList{max-height:45dvh;overflow:auto;overscroll-behavior:contain}.comp-option{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;border-bottom:1px solid #ffffff0a;background:transparent;padding:16px 3px}.comp-option>svg{width:20px;height:20px;color:#858995}.comp-option>span{flex:1;min-width:0}.comp-option strong{display:block;font-size:14px;font-weight:550;overflow-wrap:anywhere}.comp-option small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.comp-option[aria-pressed=true]{color:var(--accent)}.comp-option[aria-pressed=true]>svg{color:var(--accent)}.comp-option:hover{background:#ffffff04}#compPickerHint{font-size:11px;margin:18px 0 0}#compList .empty{font-size:13px;padding:25px 0;margin:0}
@media(max-width:600px){#compPicker{margin:auto auto max(12px,env(safe-area-inset-bottom));border-radius:18px;padding:20px}#compPicker h2{font-size:20px}}

/* The same compact fields and actions as the desktop conversation. */
select{width:100%;min-width:0;min-height:46px;border:1px solid var(--edge);border-radius:9px;background:#18191c;color:var(--text);padding:11px 12px;font:inherit;font-size:16px;margin:0 0 15px;color-scheme:dark}select:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.save-card h2{font-size:17px;margin:15px 0 22px}.save-card input{background:#18191c;border-radius:9px}.save-card label{font-size:11px;margin-bottom:7px}.save-card .save-note{font-size:11px;color:var(--muted);margin:0 0 18px}.save-card .actions{padding-top:15px;border-top:1px solid var(--edge)}.save-card .actions .secondary{flex:0 0 auto;border:0;padding-left:0;padding-right:20px}.save-card .primary{margin-left:auto;flex:0 1 auto;white-space:nowrap}.render-result h2{margin:13px 0 7px;font-size:17px}.render-result .quiet{font-size:11px;margin-bottom:18px}.render-result .primary{font-size:13px;min-height:42px}.render-result .primary svg{width:17px;height:17px}
#composer .composer-field{gap:2px;padding:7px}#addImages{flex:0 0 42px;width:42px;height:42px;align-self:flex-end;background:#2b2d33;border:1px solid #3a3d45;border-radius:11px;color:#c9ccd5}#addImages:hover:not(:disabled){background:#35383f;border-color:#515560;color:#f0f0f3}#addImages svg{width:20px;height:20px}#composer textarea{padding-left:5px;font-size:16px}#agentSettingsButton{border:0;background:none;color:#bfc1ca;padding:4px 0;margin:-4px 0;display:flex;gap:7px;align-items:center;min-width:0;text-align:left;font-size:11px;max-width:70%}#agentLabel{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.composer-meta{gap:10px;align-items:center}.composer-meta>span{font-size:9px;white-space:nowrap}#attachmentTray{display:flex;gap:8px;overflow-x:auto;padding:0 0 10px}.attachment{position:relative;flex:0 0 86px;height:69px;border:1px solid var(--edge);border-radius:9px;overflow:hidden;background:var(--surface)}.attachment img{width:100%;height:100%;object-fit:cover}.attachment>span{position:absolute;bottom:0;left:0;right:0;background:#151617dd;padding:3px 5px;font-size:9px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.attachment>.icon{position:absolute;right:2px;top:2px;width:24px;height:24px;background:#151617dd;border-radius:6px;color:#eee}.attachment svg{width:14px;height:14px}
#agentPicker{padding:22px;max-width:460px}#agentPicker .eyebrow{margin:0 0 7px;font-size:9px}#agentPicker h2{margin:0;font-size:23px;font-weight:600;letter-spacing:-.6px}#agentPicker .preview-top{margin-bottom:24px}.agent-clients{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--edge);margin-bottom:25px;gap:16px}.agent-clients button{border:0;border-radius:0;background:none;padding:12px 4px;margin-bottom:-1px;border-bottom:2px solid transparent;color:var(--muted);font-size:14px;text-align:left}.agent-clients button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}#agentPicker label{font-size:11px;margin-bottom:8px}.effort-heading{display:flex;justify-content:space-between;align-items:center;margin:13px 0 10px;color:var(--muted);font-size:11px}.effort-heading strong{color:var(--accent);font-weight:500;font-size:14px}#effortSlider{appearance:none;-webkit-appearance:none;padding:0;height:5px;min-height:5px;border:0;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--effort-fill,0%),#41434b var(--effort-fill,0%));margin:14px 0;cursor:pointer}#effortSlider::-webkit-slider-thumb{appearance:none;width:21px;height:21px;border-radius:6px;background:#f9eab5;border:3px solid #202124;box-shadow:0 0 0 1px #bbae75;transform:rotate(45deg);transition:box-shadow .18s}#effortSlider:active::-webkit-slider-thumb{box-shadow:0 0 0 4px #bbae7525}#effortSlider::-moz-range-thumb{width:18px;height:18px;border-radius:6px;background:#f9eab5;border:2px solid #202124}.effort-scale{display:flex;justify-content:space-between;color:#9699a3;font-size:10px;margin:0 0 22px}#agentPickerStatus{font-size:12px;margin:10px 0 20px}#agentPicker .actions{border-top:1px solid var(--edge);padding-top:18px;gap:8px}#agentPicker .actions button{font-size:12px;padding:10px;white-space:nowrap}.agent-footnote{font-size:10px;line-height:1.6;color:#8f939e;margin:16px 0 0}
@media(max-width:400px){#agentPicker{margin: auto 8px 8px;width:calc(100% - 16px);padding:20px;border-radius:19px}#composer textarea{font-size:16px}.composer-meta>span{display:none}#agentSettingsButton{max-width:100%}}@media(max-width:360px){nav{gap:0}.wordmark span{display:none}.icon{width:37px}.save-card{padding:16px}.save-card .primary{font-size:12px}.composer-field .send{width:38px;flex:0 0 38px}}

/* Visually 14px; keep the native 16px input metric to avoid Safari focus zoom. */
#composer .composer-input{flex:1;min-width:0;overflow:hidden}
#composer #prompt{display:block;width:114.285714%;font-size:16px;transform:scale(.875);transform-origin:left center}
#uploadStatus{flex-shrink:0;display:flex;align-items:center;gap:12px;padding:12px 14px;margin:5px 0 0;border:1px solid #59543e;border-radius:12px;background:#24231e;color:var(--accent)}.upload-spinner{display:inline-block;width:20px;height:20px;flex:0 0 20px;border:2px solid #f8e6a02b;border-top-color:var(--accent);border-radius:50%;animation:upload-spin .85s linear infinite}.upload-copy{min-width:0;flex:1}.upload-copy strong{display:block;font-size:12px;font-weight:550}.upload-copy>span{display:block;font-size:10px;color:#b9b4a2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-track{height:2px;background:#f8e6a01c;border-radius:2px;overflow:hidden;margin-top:7px}.upload-track i{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}#uploadPercent{font-size:11px;font-variant-numeric:tabular-nums}.attachment.is-uploading:after{content:"";position:absolute;inset:0;background:#15161770}.attachment .upload-spinner{position:absolute;left:calc(50% - 10px);top:14px;z-index:1}.message-attachments{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}.message-attachments .attachment{flex-basis:100px;height:85px}.message-delivery{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:10px;color:#b6b1a0;white-space:normal}.message-delivery .upload-spinner{width:10px;height:10px;flex-basis:10px;border-width:1.5px}.message-delivery.is-error{color:#e5b39f}.message-delivery button{font:inherit;background:transparent;border:0;text-decoration:underline;padding:0;color:inherit}@keyframes upload-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.upload-spinner{animation:none;border-right-color:var(--accent)}.upload-track i{transition:none}}

/* Quiet decision cards: compact hierarchy, open rows and one clear primary action. */
.generation-card,.choice-card{padding:16px;border-radius:12px;background:#1b1c1f;border-color:#303238;margin:16px 0 12px}
.generation-card .plan-head,.choice-card .plan-head{gap:7px;color:#a8abb4;font-size:10px;line-height:1.5;font-weight:500}
.generation-card .plan-head svg{width:15px;height:15px;color:#d4c58e}
.generation-card h2,.choice-card h2{font-size:15px;line-height:1.45;font-weight:560;letter-spacing:-.15px;margin:10px 0 6px}
.generation-card .plan-meta{font-size:11px;margin:0 0 14px!important;color:#8f939e}
.generation-card p{font-size:12px;line-height:1.6;margin-bottom:12px}
.generation-card details,.choice-card details{font-size:11px;margin-top:12px;padding:10px 0 0;border-color:#ffffff0b}
.generation-card summary,.choice-card summary{display:flex;align-items:center;gap:7px;list-style:none;min-height:30px;color:#a1a5af;transition:color .16s}
.generation-card summary::-webkit-details-marker,.choice-card summary::-webkit-details-marker{display:none}
.generation-card summary:before,.choice-card summary:before{content:"";width:5px;height:5px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(-45deg);transition:transform .16s;margin:0 3px 0 1px}
.generation-card details[open]>summary:before,.choice-card details[open]>summary:before{transform:rotate(45deg)}
.generation-card summary:hover,.choice-card summary:hover{color:var(--text)}
.generation-card summary:focus-visible,.choice-card summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}
.generation-card pre{font-family:inherit;font-size:11px;line-height:1.6;margin:8px 0 4px;color:#a6a9b3}
.generation-card .credit{font-size:10px;line-height:1.55;margin:12px 0!important;color:#8f939e}
.generation-card .actions{gap:8px;align-items:center;flex-wrap:wrap}
.generation-card .actions button{flex:0 0 auto;min-height:40px;font-size:12px;font-weight:550;padding:9px 13px;border-radius:8px;white-space:nowrap}
.generation-card .actions .secondary{border-color:transparent;color:#a5a8b2;padding-left:10px;padding-right:10px}
.generation-card>.secondary{min-height:40px;font-size:12px;margin-top:8px}
.choice-card h2{margin-bottom:12px}
.choice-options{border-top:1px solid #ffffff0b}
.choice-option{display:flex;align-items:center;gap:12px;margin:0;padding:13px 0;min-height:48px;border:0;border-bottom:1px solid #ffffff0b;border-radius:0;background:transparent;line-height:1.45}
.choice-copy{flex:1;min-width:0}
.choice-label{display:block;font-size:13px;font-weight:500}
.choice-option small{font-size:11px;line-height:1.5;margin-top:3px;color:#9095a0}
.choice-option>svg{width:14px;height:14px;color:#727782;transition:transform .16s,color .16s}
.choice-option:hover:not(:disabled){border-color:#ffffff0b;background:#ffffff03}
.choice-option:hover:not(:disabled) .choice-label{color:var(--accent)}
.choice-option:hover:not(:disabled)>svg{color:#d4c58e;transform:translateX(2px)}
.choice-card .choice-custom{border:0;margin-top:8px;padding:0}
.choice-answer{display:flex;align-items:center;gap:6px;margin:8px 0 0;padding:4px 5px 4px 10px;border:1px solid #3b3e46;border-radius:8px;background:#17181b}
.choice-answer:focus-within{border-color:#857b53}
.choice-input{flex:1;min-width:0;overflow:hidden}
.choice-answer input{display:block;width:123.076923%;font-size:16px;transform:scale(.8125);transform-origin:left center;padding:8px 0;margin:0;border:0;background:none;border-radius:0;outline:none}
.choice-send{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border:0;border-radius:6px;background:#ffffff06;color:#cfc8ae}
.choice-send:hover:not(:disabled){background:#f8e6a013;color:var(--accent)}
.choice-send svg{width:18px;height:18px}

/* Connection recovery stays visible without covering the conversation or draft. */
#sessionStatus{flex-shrink:0;display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #ffffff0a;color:#c6bc97}
#sessionStatus .upload-spinner{width:14px;height:14px;flex-basis:14px;border-width:1.5px}
#sessionStatus>div{flex:1;min-width:0}#sessionStatus strong{display:block;font-size:11px;font-weight:550}#sessionStatus small{display:block;font-size:10px;line-height:1.5;color:#969ba6;margin-top:2px}
#retryConnection{border:1px solid #ffffff12;background:none;border-radius:6px;min-height:36px;padding:6px 10px;font-size:11px;color:#c5c7ce}
#retryConnection:hover:not(:disabled){background:#ffffff06;color:var(--text)}
#sessionStatus[data-state="offline"] .upload-spinner{animation:none;border-color:#8c8570}
/* One result area per turn: live sample -> storyboard -> delivery. */
.turn-result{margin:22px 0 6px;white-space:normal}.turn-result.has-media{border:1px solid #e5d49b24;border-radius:13px;overflow:hidden;background:linear-gradient(135deg,#e5d49b07,transparent 65%)}.turn-result .task-receipt{margin:0}.turn-result.has-media .task-receipt{border:0;border-bottom:1px solid #ffffff09;border-radius:0;background:none;padding:14px}.turn-result.has-media .receipt-mark{width:28px;height:28px;flex-shrink:0}.turn-result.has-media .receipt-mark svg{width:16px;height:16px}.result-media{padding:14px}.result-media .scene-frames{margin:0}.scene-frames-heading{gap:6px;margin-bottom:10px}.scene-frames-heading small{max-width:46%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-frame-hero{width:100%;margin-bottom:12px}.scene-frame-hero .scene-frame-image{border-radius:8px;aspect-ratio:16/10;background:#111214}.scene-frame-hero .scene-frame-caption{font-size:10px;color:#999ca6;text-align:right;margin-top:6px}.scene-frame-strip{display:grid;grid-auto-flow:unset;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:0;overflow:visible}.scene-frame-strip .scene-frame-image{border-radius:5px;aspect-ratio:16/10}.scene-frame-strip .scene-frame-caption{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-frame[aria-pressed=true] .scene-frame-image{border-color:#d4c587}.scene-frame[aria-pressed=true] .scene-frame-caption{color:var(--accent)}.scene-frame img{animation:frame-appear .25s ease-out}.scene-frame .upload-spinner{width:16px;height:16px;flex-basis:16px;border-width:1.5px}.scene-frame-hero .upload-spinner{width:22px;height:22px}.scene-frames.is-live .scene-frames-heading>svg{color:var(--accent)}.frame-pending{display:flex;gap:10px;align-items:center;min-height:90px;justify-content:center;color:var(--muted);font-size:11px}.frame-pending .upload-spinner{width:17px;height:17px;flex-basis:17px}.result-output{margin-top:16px;padding-top:15px;border-top:1px solid #ffffff0d}.result-output:first-child{border:0;padding:0;margin:0}.output-copy{display:flex;align-items:center;gap:10px;min-width:0}.output-copy>svg{color:var(--accent);width:20px;height:20px;flex-shrink:0}.output-copy>span{min-width:0}.output-copy small{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}.output-copy strong{display:block;font-size:13px;font-weight:550;overflow-wrap:anywhere}.result-actions{display:flex;gap:8px;margin-top:13px}.result-actions button,.result-actions a{min-height:40px;border-radius:8px;padding:9px 12px;font-size:11px;white-space:nowrap;gap:7px}.result-actions svg{width:15px;height:15px}.result-actions .secondary{border-color:#ffffff16}.output-note{display:block;font-size:9px;line-height:1.5;color:#888c97;margin-top:9px}.preview-unavailable{font-size:11px;color:var(--muted);padding:10px 0;margin:0!important}.turn-result.arrive{animation:connection-enter .4s ease-out both}.turn-result.arrive .receipt-mark{animation:connection-settle .6s ease-out}.turn-result.arrive .receipt-mark path{stroke-dasharray:30;animation:connection-draw .5s ease-out}@keyframes frame-appear{from{opacity:.35}to{opacity:1}}@media(prefers-reduced-motion:reduce){.turn-result,.turn-result .receipt-mark,.turn-result .receipt-mark path,.scene-frame img{animation:none!important}}

/* Navigation stays inside the paired session; history shares the compact picker. */
.wordmark{background:none;border:0;padding:0;text-align:left;white-space:nowrap;color:var(--text)}
#chatHistoryButton{border:0;background:none;padding:0;display:inline-flex;align-items:center;gap:10px;text-align:left;color:inherit;font:inherit;letter-spacing:inherit;max-width:100%}#chatTitle{overflow-wrap:anywhere;min-width:0}#chatHistoryChevron{display:flex;color:var(--muted)}#chatHistoryChevron svg{width:16px;height:16px;transform:rotate(90deg)}#chatHistoryButton:hover #chatHistoryChevron{color:var(--accent)}
#chatPicker{width:min(540px,calc(100% - 24px));padding:22px;max-height:min(650px,85dvh)}#chatPicker[open]{animation:connection-enter .22s ease-out}#chatPicker .preview-top{margin-bottom:20px}#chatPicker .eyebrow{margin:0 0 6px;font-size:9px;letter-spacing:.9px;overflow-wrap:anywhere}#chatPicker h2{font-size:21px;letter-spacing:-.5px;font-weight:600;margin:0}#chatPicker .preview-top .icon{flex-shrink:0}#chatSearch{background:#18191c;border-radius:9px;margin:0 0 8px;font-size:16px}#chatList{max-height:45dvh;overflow:auto;overscroll-behavior:contain}.chat-option strong{font-size:14px;font-weight:550}.chat-option small{font-size:11px}#chatPickerHint{font-size:11px;margin:18px 0 0}#chatList .empty{font-size:13px;padding:25px 0;margin:0}
@media(max-width:600px){#chatPicker{margin:auto auto max(12px,env(safe-area-inset-bottom));border-radius:18px;padding:20px}#chatPicker h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){#chatPicker[open]{animation:none}}

.remember-phone{display:flex;gap:10px;align-items:flex-start;color:var(--text);font-size:13px;margin:4px 0 24px}.remember-phone input{width:16px;height:16px;flex:none;margin:3px 0 0;accent-color:var(--accent)}.remember-phone small{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:4px}.install-entry{display:flex;align-items:center;justify-content:space-between;gap:14px;background:none;border:0;border-top:1px solid var(--edge);border-radius:0;padding:16px 0;margin:20px 0 0;width:100%;color:var(--muted);text-align:left;font-size:12px}.install-entry:hover{color:var(--accent)}#connectionScreen .install-entry{max-width:330px;margin:12px auto 22px}.text-action{padding:10px 0;border:0;background:none;color:var(--muted);font-size:12px;text-decoration:underline;text-underline-offset:4px}#installGuide{max-width:380px;padding:24px}#installGuide h2{font-size:22px;margin:0;font-weight:600;letter-spacing:-.5px}.install-icon{border-radius:17px;display:block;margin:12px 0 22px}#installGuide p{font-size:14px}#installGuide .quiet{font-size:12px}#pairScreen[data-state="resuming"] .pair-art i{animation:breathe 1.3s ease-in-out infinite}#pairScreen[data-state="resuming"] #pairStatus{display:flex;align-items:center;gap:10px;font-size:13px}.standalone #app{padding-bottom:0}

/* Pairing starts with a scan; manual entry remains a quiet fallback. */
#pairScreen{padding:32px 0 24px;max-width:370px;width:100%;margin:auto}#pairScreen h1{font-size:36px;letter-spacing:-1.4px;line-height:1.12}.pair-art{margin-bottom:25px;gap:17px}.pair-art svg{width:44px;height:44px}.pair-art span:last-child svg{width:27px;height:35px}.pair-art i{width:48px}#pairScreen .intro{font-size:14px;margin-bottom:27px}#pairScreen .eyebrow{font-size:9px;margin-bottom:13px}#scanPairing{gap:10px;min-height:49px}#scanPairing svg{width:19px;height:19px}.pair-entry-hint{font-size:11px;color:var(--muted);text-align:center;margin:9px 0 20px}#manualPairing{border-top:1px solid var(--edge);padding:15px 0;font-size:12px;color:var(--muted)}#manualPairing summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px}#manualPairing summary::-webkit-details-marker{display:none}#manualPairing summary:after{content:'+';font-size:16px;line-height:1}#manualPairing[open] summary:after{content:'−'}#pairLinkForm{margin-top:18px}#pairLinkInput{font-size:16px;margin-bottom:10px}.inline-error{font-size:12px;color:#e7c68a;line-height:1.5;margin:0 0 14px}#pairScreen #pairHint{font-size:12px;margin:12px 0 16px}#pairStatus:empty{display:none}#pairScreen .install-entry{margin-top:12px}#notice{pointer-events:auto;bottom:max(20px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;padding:9px 10px 9px 15px;width:min(calc(100% - 32px),500px);box-shadow:0 6px 24px #0003}#noticeText{flex:1}#closeNotice{color:inherit;width:32px;height:32px;flex:none;font-size:22px}#qrScanner{max-width:390px;padding:20px}#scannerTitle{font-size:23px;letter-spacing:-.6px;font-weight:600;margin:0}#qrScanner .eyebrow{font-size:9px;margin:0 0 6px}#qrScanner .preview-top{align-items:flex-start;margin-bottom:20px}.scanner-view{position:relative;aspect-ratio:1;overflow:hidden;border-radius:12px;background:#151617;border:1px solid #ffffff0a}#scannerVideo{width:100%;height:100%;position:absolute;object-fit:cover;opacity:0}#qrScanner[data-state=scanning] #scannerVideo{opacity:1}.scanner-guide{position:absolute;inset:17%;z-index:1}.scanner-guide i{position:absolute;width:22px;height:22px;border:2px solid var(--accent);opacity:.8}.scanner-guide i:nth-child(1){left:0;top:0;border-right:0;border-bottom:0;border-top-left-radius:4px}.scanner-guide i:nth-child(2){right:0;top:0;border-left:0;border-bottom:0;border-top-right-radius:4px}.scanner-guide i:nth-child(3){right:0;bottom:0;border-left:0;border-top:0;border-bottom-right-radius:4px}.scanner-guide i:nth-child(4){left:0;bottom:0;border-right:0;border-top:0;border-bottom-left-radius:4px}.scanner-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:#f8e6a04d}.scanner-placeholder svg{width:48px;height:48px;stroke-width:1}#qrScanner[data-state=scanning] .scanner-placeholder{display:none}#qrScanner[data-state=starting] .scanner-placeholder,#qrScanner[data-state=photo] .scanner-placeholder{animation:breathe 1.3s infinite}#scannerStatus{font-size:12px;margin:16px 0;min-height:38px}#scanPhoto{width:100%;text-align:center;padding:15px 0 10px}.scanner-footnote{font-size:10px;color:var(--muted);text-align:center;margin:5px 0 0}@media(max-height:690px){#pairScreen{padding-top:22px}#pairScreen h1{font-size:32px}.pair-art{margin-bottom:18px}.scanner-view{max-height:240px}}@media(prefers-reduced-motion:reduce){#qrScanner .scanner-placeholder{animation:none!important}}

.approval-event{display:flex;align-items:center;gap:8px;margin:8px 0 24px;color:#aaa997;font-size:12px;line-height:1.5}.approval-event svg{width:16px;height:16px;color:#ddcd92;stroke-width:1.8}

.asset-thumb{position:relative}.asset-preview-hint{position:absolute;bottom:12px;font-size:11px;color:var(--muted)}
.standalone body{height:auto}.standalone #app{bottom:0;height:auto}

/* Opt-in owner-pilot comparison; resets on a document reload. */
html.standalone.display-height-trial{height:100vh;height:100lvh}
.standalone.display-height-trial body{position:relative;inset:auto;height:100%}
.display-check-entry{font-size:11px;opacity:.75;margin-top:12px}
#displayCheck{max-width:420px;padding:20px}#displayCheck .quiet{font-size:12px;margin:0 0 16px}#displayMeasurements{font:11px/1.5 ui-monospace,SFMono-Regular,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:36dvh;overflow:auto;user-select:text;-webkit-user-select:text;padding:12px;background:#151617;border-radius:8px;margin:16px 0}#displayCheck .actions button{font-size:12px}#displayCheck #displayCopyStatus{margin:12px 0 0}
