:root{color-scheme:dark;--bg:#071114;--panel:#101e22;--line:#26383b;--text:#e9f1eb;--muted:#91a4a1;--mint:#91e4ba;--deep:#162e27;--danger:#ffb6a4;font-family:Segoe UI,Inter,Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-height:100svh}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--mint);outline-offset:4px}[hidden]{display:none!important}.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 15% 80%,#163a302b,transparent 52%)}.topbar{height:108px;margin:0 4.1%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #8fada01c;position:relative;z-index:2;gap:20px}.brand{display:flex;align-items:center;gap:13px;font-family:Georgia,serif;font-size:23px;letter-spacing:3.5px}.brand small{display:block;font:9px Segoe UI,sans-serif;letter-spacing:2.7px;color:var(--muted);margin-top:7px}.brand-mark{display:grid;place-items:center;width:39px;height:45px;color:var(--mint);font:italic 35px Georgia,serif;border:1px solid #9cddb740;border-radius:12px 2px 12px 2px;letter-spacing:0}.topbar nav{display:flex;gap:30px;margin-left:auto;margin-right:30px}.nav-button,.quiet-button{background:none;border:0;color:#b7c8c1;font-size:13px;padding:10px 0;white-space:nowrap}.nav-button:hover,.quiet-button:hover{color:var(--mint)}.account-button{background:#bddcca0d;border:1px solid #66857966;border-radius:6px;padding:11px 18px;display:flex;align-items:center;gap:13px;font-size:13px;max-width:210px}.account-button #account-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-icon{color:var(--mint);font-size:18px}.workspace{display:grid;grid-template-columns:minmax(390px,1fr) minmax(380px,1fr);min-height:calc(100svh - 108px);position:relative}.chat-pane{margin-left:8.2%;padding:24px 8% 24px 0;display:flex;flex-direction:column;height:calc(100svh - 108px);min-height:620px;position:relative;z-index:1}.chat-heading{font-size:11px;letter-spacing:.3px;color:var(--muted);display:flex;align-items:center;gap:9px;min-height:32px}.live-dot{height:5px;width:5px;background:var(--mint);border-radius:50%;box-shadow:0 0 9px #96e9b15c}.quiet-button{margin-left:auto;font-size:11px;letter-spacing:0}.messages{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#385348 transparent;min-height:0;padding-right:5px}.welcome{padding-top:clamp(25px,5.8vh,65px);padding-bottom:26px}.eyebrow{font-size:9px;letter-spacing:2.4px;color:var(--mint);font-weight:600}.welcome .eyebrow{margin:0 0 23px}.welcome h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.8px;font-size:clamp(38px,4.3vw,65px);line-height:1.04;margin:0}.welcome h1 em{font-weight:400;color:var(--mint)}.welcome-description{font-size:13px;line-height:1.9;color:var(--muted);margin:25px 0 29px}.suggestions{display:flex;flex-wrap:wrap;gap:8px;max-width:520px}.suggestions button{padding:11px 13px;font-size:11px;background:#d1e9ce04;border:1px solid #47665766;border-radius:5px;display:flex;align-items:center;gap:10px}.suggestions button span{font-size:9px;color:#759687}.suggestions button b{font-size:13px;color:#8fcbb0;font-weight:400;margin-left:4px}.suggestions button:hover{background:#7fdaaa12;border-color:#8fd3ac70}.composer-area{padding-top:18px}.composer{background:#112322bd;border:1px solid #4868538a;border-radius:12px;padding:16px 17px 12px;box-shadow:0 10px 45px #00000018}.composer textarea{color:var(--text);display:block;width:100%;background:none;border:0;resize:none;min-height:48px;max-height:180px;font-size:14px;line-height:1.65;outline-offset:5px}.composer textarea::placeholder{color:#92aaa0}.composer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:10px}.composer-bottom>span{font-size:10px;letter-spacing:.4px;color:#839d91}.send-button{display:grid;place-items:center;font-size:23px;width:36px;height:36px;border-radius:8px;border:0;background:var(--mint);color:#10271d}.send-button:hover{background:#bbf4d1}.composer-hint{font-size:9px;line-height:1.6;color:#7e948c;display:flex;justify-content:space-between;gap:15px;margin:10px 2px 0}.key-hint{white-space:nowrap}.connection-note{font-size:11px;color:#c4d1aa;line-height:1.6;margin:0 4px 12px}.dragon-stage{position:relative;isolation:isolate;min-height:620px;overflow:hidden}.dragon-art{position:absolute;z-index:-2;inset:-108px 0 0 -15%;background:url('/static/dragon.png') right center/auto 100% no-repeat;opacity:.95}.dragon-stage:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,var(--bg) 0%,#07111400 25%),linear-gradient(0deg,#071114 0%,#0711149e 15%,transparent 40%,transparent 70%,#071114b0 100%);pointer-events:none}.scene-label{font-size:9px;letter-spacing:2.2px;color:#bedec5b5;position:absolute;right:8%;top:39px;display:flex;align-items:center;gap:11px}.tiny-diamond{width:5px;height:5px;transform:rotate(45deg);border:1px solid #addac0}.agent-card{position:absolute;bottom:82px;left:12%;right:8.2%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #b2dcc44a;padding-top:24px}.agent-card h2{font:400 32px Georgia,serif;letter-spacing:-.4px;margin:11px 0 8px}.agent-card p{font-size:11px;color:#b0c3b6;margin:0;max-width:280px;line-height:1.6}.round-button{border:1px solid #b6d8c35e;background:#bddcca0c;border-radius:50%;width:44px;height:44px;font-size:22px;color:var(--mint);flex-shrink:0}.round-button:hover{background:#a5e6bf26}.scene-footer{position:absolute;bottom:29px;left:12%;right:8.2%;display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:1.5px;color:#77968a}.message{padding:20px 0;border-bottom:1px solid #bddcca10}.message .message-label{color:var(--mint);font-size:9px;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:9px}.message.user .message-label{color:#8da9a0}.message .message-content{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8;color:#d7e5dd}.message.user .message-content{color:#aabeb3}.thinking{font-size:12px;color:var(--mint);padding:20px 0}.thinking:after{content:' …'}
.modal{color:var(--text);background:#0c1a1c;border:1px solid #365347;border-radius:18px;padding:40px;width:min(460px,calc(100vw - 32px));max-height:90svh;overflow:auto;box-shadow:0 35px 120px #000a}.modal::backdrop{background:#030c10c9;backdrop-filter:blur(9px)}.modal h2{font:400 33px Georgia,serif;margin:13px 0 12px;letter-spacing:-.5px}.modal h3{font-size:16px;margin-top:30px;font-weight:500}.modal .muted{color:var(--muted);font-size:12px;line-height:1.8}.close-button{position:absolute;right:17px;top:12px;background:none;border:0;font-size:26px;color:var(--muted);width:35px;height:35px}.modal-emblem{font:italic 32px Georgia,serif;color:var(--mint);margin-bottom:25px}.auth-tabs{display:flex;border-bottom:1px solid var(--line);margin:28px 0 24px;gap:25px}.auth-tabs button{padding:0 0 12px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:12px}.auth-tabs .active{border-color:var(--mint);color:var(--mint)}.modal label{font-size:11px;color:#b6c9c0;display:block;margin:16px 0;line-height:1.7}.modal input,.modal select,.modal textarea{width:100%;padding:12px 13px;margin-top:7px;background:#112125;border:1px solid #3b5148;border-radius:7px;color:var(--text);font-size:13px}.modal input::placeholder,.modal textarea::placeholder{color:#6f8b7f}.modal textarea{resize:vertical}.primary-button{width:100%;border:0;border-radius:7px;background:var(--mint);padding:13px 16px;color:#10251b;font-size:13px;display:flex;align-items:center;justify-content:space-between;margin-top:22px}.primary-button:hover{background:#bcf3d0}.modal-footnote,.field-help{font-size:10px;line-height:1.8;color:var(--muted)}.modal-footnote{margin:23px 0 0}.form-error{color:var(--danger);font-size:12px;line-height:1.6}.form-error:empty{display:none}.logout-button{background:none;border:0;padding:15px 0 0;color:var(--muted);font-size:12px}.usage-line{display:flex;justify-content:space-between;gap:10px;font-size:11px;margin:24px 0 0;color:var(--muted)}.usage-line strong{font-weight:400;color:var(--mint)}.history-list{margin-top:25px;display:flex;flex-direction:column;gap:9px}.history-item{background:#152720;border:1px solid #365347;border-radius:7px;text-align:left;padding:15px;color:var(--text);font-size:13px;overflow-wrap:anywhere}.history-item small{display:block;color:var(--muted);font-size:10px;margin-top:7px}.history-empty{font-size:13px;color:var(--muted);line-height:1.8}.admin-modal{width:min(620px,calc(100vw - 32px))}.admin-user{padding:15px 0;border-bottom:1px solid var(--line)}.admin-user-name{font-size:13px;overflow-wrap:anywhere}.admin-user-email{font-size:10px;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.limit-controls{display:flex;align-items:center;gap:12px}.limit-controls label{flex:1}.limit-controls button{background:#173529;border:1px solid #486653;border-radius:6px;padding:10px;font-size:11px}.toast{position:fixed;z-index:10;bottom:22px;left:50%;transform:translateX(-50%);background:#183429;border:1px solid #70997b;border-radius:9px;padding:14px 20px;font-size:13px;line-height:1.6;max-width:min(550px,calc(100vw - 36px));box-shadow:0 10px 35px #0009}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.chat-pane{padding-right:12%}.welcome{padding-top:9vh}.welcome-description{font-size:15px}.suggestions button{font-size:12px}.composer textarea{font-size:15px}}
@media(max-width:1000px){.topbar nav{gap:16px;margin-right:10px}.workspace{grid-template-columns:minmax(360px,1.1fr) minmax(280px,.9fr)}.chat-pane{margin-left:8%;padding-right:3%}.welcome h1{font-size:48px}.scene-label{font-size:7px;letter-spacing:1.3px}.agent-card{left:10%}.agent-card p{max-width:210px}.scene-footer{left:10%;font-size:7px}.suggestions{gap:7px}.suggestions button{padding:9px 10px}.dragon-art{right:-100px}}
@media(max-width:700px){.topbar{height:85px;margin:0 6%;gap:12px}.brand{font-size:19px;letter-spacing:2px;gap:9px}.brand-mark{width:29px;height:37px;font-size:27px}.brand small{font-size:7px;letter-spacing:1.5px}.topbar nav{position:absolute;top:93px;left:0;right:0;justify-content:flex-start;gap:25px;margin:0}.nav-button{font-size:11px;padding:8px 0}.account-button{padding:8px 11px;font-size:11px;gap:7px;max-width:120px}.workspace{display:block;min-height:calc(100svh - 85px)}.chat-pane{margin:0 6%;padding:62px 0 20px;height:calc(100svh - 85px);min-height:670px}.chat-heading{font-size:9px}.quiet-button{font-size:9px}.dragon-stage{position:absolute;inset:0;min-height:0;pointer-events:none;opacity:.29}.dragon-art{inset:-85px -60px 0 -100%;background-position:right top;background-size:auto 90%}.dragon-stage:after{background:linear-gradient(90deg,#071114e0,#07111450),linear-gradient(0deg,#071114 3%,#07111499 55%,transparent)}.scene-label,.agent-card,.scene-footer{display:none}.welcome{padding-top:40px}.welcome h1{font-size:53px;letter-spacing:-1.8px}.welcome-description{font-size:12px;max-width:330px}.suggestions{max-width:380px}.suggestions button{font-size:10px;background:#071714b8}.composer{background:#10221fed;backdrop-filter:blur(10px)}.composer-hint{font-size:8px}.key-hint{display:none}.modal{padding:32px 24px}.modal h2{font-size:29px}.modal input{font-size:16px}.message .message-content{font-size:13px}.messages{padding-right:0}}
@media(prefers-reduced-motion:no-preference){button{transition:background .18s,border-color .18s,color .18s}.message{animation:appear .24s ease-out}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}
/* Commerce shares the same restrained terminal palette. */
.mode-label {margin:0;max-width:165px}
.mode-label select {font-size:11px;padding:6px;background:transparent;border-color:#29433c}
.checkbox-label {display:flex;align-items:center;gap:10px}
.checkbox-label input {width:auto}
.admin-modal {width:min(760px,94vw)}
#admin-commerce details {border:1px solid #29433c;border-radius:12px;padding:14px;margin:12px 0}
#admin-commerce summary {cursor:pointer;color:#bde5ce;font-size:14px}
#admin-commerce form {padding:14px 0;border-bottom:1px solid #24332f}
#admin-commerce h4,.admin-user h4 {margin:18px 0 8px;color:#d5e5dd}
.plans-modal {width:min(1000px,94vw)}
.plan-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:25px 0}
.plan-card {padding:24px 20px;background:#0d1c1a;border:1px solid #29433c;border-radius:16px;display:flex;flex-direction:column}
.plan-card h3 {margin-top:0}.plan-card p {font-size:13px;line-height:1.6}.plan-card .primary-button {margin-top:auto}
.plan-price {font-size:23px;color:#b5eec8;margin:12px 0}
@media(max-width:700px){.plan-grid{grid-template-columns:1fr}.topbar nav{gap:2px}.nav-button{font-size:11px;padding:7px}.composer-bottom #composer-caption{display:none}}

/* Companion artwork: the charcoal/purple dragon from the main terminal. */
.dragon-art{inset:0;right:0;left:0;background-image:url('/static/terminal-scene.png');background-position:left bottom;background-size:auto 150%;opacity:.3;filter:saturate(.7)}
.dragon-companion{position:absolute;width:clamp(240px,28vw,370px);aspect-ratio:2/3;left:50%;top:clamp(45px,10vh,100px);transform:translateX(-50%);z-index:0;pointer-events:none;isolation:isolate}
.dragon-sprite{position:absolute;inset:0;background-image:url('/static/dragon-states.png');background-repeat:no-repeat;background-size:400% 100%;background-position:0 0;transform-origin:50% 81%;mask-image:linear-gradient(transparent,black 10%,black 92%,transparent);mix-blend-mode:lighten}
[data-state=tired] .dragon-sprite{background-position:33.333333% 0;filter:brightness(.9)}
[data-state=drowsy] .dragon-sprite{background-position:66.666667% 0;filter:brightness(.78)}
[data-state=asleep] .dragon-sprite{background-position:100% 0;filter:brightness(.72)}
.dragon-energy{position:absolute;z-index:1;left:12%;right:8.2%;bottom:225px;display:flex;gap:10px;flex-direction:column;font-size:10px;color:#a5b9b2;letter-spacing:.2px}
.dragon-energy progress{appearance:none;-webkit-appearance:none;width:100%;height:3px;border:0;background:#243630;border-radius:4px;overflow:hidden}
.dragon-energy progress::-webkit-progress-bar{background:#243630}.dragon-energy progress::-webkit-progress-value{background:#91c9b0;transition:width .6s}.dragon-energy progress::-moz-progress-bar{background:#91c9b0}
.sleep-letter{position:absolute;left:35%;top:54%;font:italic 16px Georgia,serif;color:#a695c9;opacity:0}
.dragon-spark{position:absolute;width:3px;height:3px;background:#dba46a;border-radius:50%;opacity:0;left:28%;top:53%;box-shadow:0 0 9px #b184e080}
.spark-two{left:40%;top:45%}
@media(prefers-reduced-motion:no-preference){
 .dragon-sprite{animation:dragon-breathe 5s ease-in-out infinite}
 [data-state=working] .dragon-sprite{animation:dragon-think 2.5s ease-in-out infinite}
 [data-state=tired] .dragon-sprite{animation-duration:6.5s}
 [data-state=drowsy] .dragon-sprite{animation-duration:7.5s}
 [data-state=asleep] .dragon-sprite{animation:dragon-sleep 8s ease-in-out infinite}
 [data-state=asleep] .sleep-letter{animation:sleep-float 5s ease-in-out infinite}
 [data-state=asleep] .z-two{animation-delay:1.6s}[data-state=asleep] .z-three{animation-delay:3.2s}
 [data-state=working] .dragon-spark{animation:thought-spark 2.8s ease-out infinite}
 [data-state=working] .spark-two{animation-delay:1.4s}
 @keyframes dragon-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.008,1.014)}}
 @keyframes dragon-think{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.014)}}
 @keyframes dragon-sleep{0%,100%{transform:scale(1)}50%{transform:scale(1.006,1.016)}}
 @keyframes sleep-float{0%,100%{opacity:0;transform:translate(0,0) scale(.7)}40%{opacity:.6}85%{opacity:0;transform:translate(18px,-65px) scale(1.15)}}
 @keyframes thought-spark{0%,100%{opacity:0;transform:translateY(0)}40%{opacity:.7}90%{opacity:0;transform:translate(8px,-35px)}}
}
.page-hidden .dragon-sprite,.page-hidden .sleep-letter,.page-hidden .dragon-spark{animation-play-state:paused!important}
@media(max-width:1000px){.dragon-companion{width:280px;top:95px}.dragon-energy{left:10%;font-size:9px}}
@media(max-width:700px){.dragon-stage{opacity:.65}.dragon-art{inset:0;background-position:left bottom;background-size:auto 150%;opacity:.25}.dragon-companion{width:210px;left:auto;right:-18px;top:5px;transform:none;opacity:.65}.dragon-energy{left:auto;right:6%;bottom:auto;top:273px;width:130px;font-size:8px;opacity:.9}.dragon-energy progress{height:2px}}
/* Private workbench controls and downloadable results. */
.workbench-controls,.pending-files,.message-actions {display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.workbench-controls {margin:4px 0 10px;font-size:12px;color:#b9b1c8}
.workbench-controls label {display:flex;align-items:center;gap:5px}
.workbench-controls input[type=checkbox] {width:auto;accent-color:#aa80dc}
.pending-files:empty {display:none}
.file-chip {border:1px solid #4c3d62;background:#24202e;color:#ddd0ee;border-radius:12px;padding:4px 9px;max-width:95%;overflow:hidden;text-overflow:ellipsis;margin-bottom:8px;cursor:pointer}
.message-image {display:block;max-width:100%;max-height:640px;object-fit:contain;border-radius:14px;margin:12px 0}
.file-result {display:block;color:#c4a3f4;margin:8px 0;font-size:13px;overflow-wrap:anywhere}
.message-actions {margin-top:10px;font-size:11px;opacity:.85}
.message-actions select {width:auto;max-width:90px;padding:5px;background:#24202e;color:#d8cce9;border:1px solid #4c3d62;border-radius:7px}
.message-actions a {text-decoration:none}
.library-file {display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 0;border-bottom:1px solid #3a3048}
.library-file a {flex:1 1 160px;color:#d2b7f2;overflow-wrap:anywhere}
@media(max-width:600px){.topbar nav{gap:4px}.nav-button{font-size:11px}.composer-bottom #composer-caption{display:none}.message-actions{gap:5px}}

/* Compact workspace: useful agent context beneath the companion. */
.workspace{grid-template-columns:minmax(0,1fr) 280px;margin:0 4.1%;min-height:0}
.chat-pane{margin:0;padding:24px 32px 22px 0;height:calc(100svh - 108px);min-height:0;min-width:0}
.welcome{padding-top:clamp(24px,5vh,55px)}
.welcome h1{font-size:clamp(38px,4vw,60px)}
.dragon-stage{position:relative;inset:auto;min-height:0;height:calc(100svh - 108px);overflow-y:auto;opacity:1;pointer-events:auto;border-left:1px solid var(--line);padding:24px 20px;display:flex;flex-direction:column;align-items:stretch;gap:12px;scrollbar-width:thin}
.dragon-stage:after{display:none}
.rail-title{font:400 22px Georgia,serif;margin:0;text-align:center}
.dragon-stage .dragon-companion{position:relative;left:auto;right:auto;top:auto;transform:none;width:170px;max-width:100%;aspect-ratio:2/3;flex-shrink:0;margin:-20px auto -22px;opacity:1}
.dragon-stage .dragon-energy{position:relative;left:auto;right:auto;bottom:auto;top:auto;width:100%;font-size:10px;opacity:1;flex-shrink:0}
.agent-context{padding-top:18px;margin-top:7px;border-top:1px solid var(--line)}
.context-heading{display:flex;align-items:center;gap:10px}
.context-heading h3{font-size:12px;font-weight:500;margin:0}
.context-heading .quiet-button{font-size:10px;padding:4px 0}
.agent-context dl{margin:18px 0 24px}
.agent-context dt{font-size:10px;color:var(--mint);margin:17px 0 6px}
.agent-context dd,.rail-memory{margin:0;color:var(--muted);font-size:12px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
.agent-context dd{max-height:180px;overflow-y:auto;scrollbar-width:thin}
.rail-memory{margin-top:12px}.rail-memory p{margin:0 0 10px}.rail-memory small{font-size:10px}
.message-content a{color:var(--mint);text-decoration:underline;text-underline-offset:3px}
.message-actions .quiet-button{margin-left:0;font-size:10px}
.image-progress,.thinking{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--mint)}
.image-progress{margin:12px 0 4px}.thinking:after{display:none}
.wait-spinner,.thinking:before{content:'';display:inline-block;width:17px;height:17px;flex:0 0 17px;border:2px solid #8cbda333;border-top-color:var(--mint);border-radius:50%;animation:wait-turn 1s linear infinite}
@keyframes wait-turn{to{transform:rotate(360deg)}}
.page-hidden .wait-spinner,.page-hidden .thinking:before{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.wait-spinner,.thinking:before{animation:none;border-radius:3px;transform:rotate(45deg)}}
@media(min-width:1500px){.workspace{grid-template-columns:minmax(0,1fr) 310px}.chat-pane{padding-right:50px}}
@media(max-width:1000px){.workspace{grid-template-columns:minmax(0,1fr) 240px}.chat-pane{padding-right:22px}.dragon-stage{padding:22px 16px}.topbar nav{gap:12px}}
@media(max-width:700px){.workspace{display:flex;flex-direction:column;margin:0 6%}.chat-pane{margin:0;padding:62px 0 20px;height:calc(100svh - 85px);min-height:480px}.dragon-stage{height:auto;max-height:none;border-left:0;border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:18px}.dragon-stage .dragon-companion{grid-column:1;grid-row:1/3;width:100px;margin:-15px 0;align-self:center}.rail-title{text-align:left;grid-column:2;align-self:end}.dragon-stage .dragon-energy{grid-column:2;align-self:start}.agent-context{grid-column:1/-1}.topbar nav{gap:8px}.nav-button{font-size:11px}.welcome h1{font-size:45px}}
/* A chat-first layout shared by the browser and installed app. */
body{height:var(--app-height,100dvh);min-height:0;overflow:hidden}.ambient{display:none}
.topbar{height:64px;margin:0;padding:0 max(18px,env(safe-area-inset-right)) 0 max(18px,env(safe-area-inset-left));gap:14px;border:0;background:var(--bg);z-index:20}
.brand{font-family:inherit;font-size:16px;letter-spacing:.2px;gap:9px}.brand small,.brand-mark,.account-icon{display:none}.account-button{padding:8px 12px;border:0;background:transparent;max-width:150px}
.app-menu{order:-1;position:relative}.app-menu summary{cursor:pointer;list-style:none;font-size:22px;padding:6px 10px;color:var(--muted)}.app-menu summary::-webkit-details-marker{display:none}.app-menu:not([open]) nav{display:none}.topbar .app-menu nav{position:absolute;top:44px;left:0;display:flex;flex-direction:column;align-items:stretch;gap:2px;margin:0;padding:10px;min-width:235px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 14px 40px #0007}.app-menu .nav-button{text-align:left;padding:11px 14px;font-size:14px;border-radius:8px}.app-menu .nav-button:hover{background:var(--deep)}.brand{margin-right:auto}
.workspace{display:block;margin:0;min-height:0;height:calc(var(--app-height,100dvh) - 64px)}
.chat-pane{width:min(100%,850px);height:100%;min-height:0;margin:0 auto;padding:0 24px max(10px,env(safe-area-inset-bottom));display:flex;flex-direction:column}
.chat-heading{min-height:30px;flex-shrink:0;justify-content:flex-end}.chat-heading .live-dot,#chat-heading-text{display:none}.chat-heading .quiet-button{padding:5px;font-size:12px}
.messages{padding:0 5px;overscroll-behavior:contain}.welcome{height:100%;min-height:140px;display:flex;align-items:center;justify-content:center;padding:0 0 20px}.welcome h1{font:500 clamp(25px,4vw,34px)/1.3 Segoe UI,Arial,sans-serif;letter-spacing:-.5px}.suggestions{display:none}
.message{border:0;padding:15px 0}.message .message-label{display:none}.message .message-content{font-size:16px;line-height:1.7}.message.user{margin-left:15%;display:flex;justify-content:flex-end}.message.user .message-content{background:#1d2d30;border-radius:20px;padding:11px 18px;color:var(--text)}
.composer-area{padding-top:12px;flex-shrink:0}.composer{position:relative;border-radius:25px;padding:12px 16px 9px;background:#18282b;border-color:#304346;box-shadow:none;display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px}.composer textarea{flex:1 1 100%;min-height:30px;max-height:140px;font-size:16px;line-height:1.5;margin-bottom:4px}.pending-files{flex:1 1 100%}.workbench-controls{margin:0;gap:10px}.workbench-controls .quiet-button{margin:0;font-size:12px;padding:7px 0}.composer-bottom{flex:1;padding:0;gap:10px}.composer-bottom #composer-caption{display:none}.mode-label{margin-left:auto}.mode-label select{font-size:12px;max-width:165px}.send-button{border-radius:50%;width:34px;height:34px;flex-shrink:0}.composer-hint{font-size:9px;margin:6px 6px 0}.key-hint{display:none}
.dragon-stage{position:fixed;z-index:15;top:64px;right:0;bottom:0;inset-inline-start:auto;width:min(340px,100%);height:calc(var(--app-height,100dvh) - 64px);max-height:none;min-height:0;padding:15px 22px max(18px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px;background:var(--panel);border:0;border-left:1px solid var(--line);box-shadow:-18px 12px 50px #0005;overflow-y:auto;opacity:1;pointer-events:auto}.dragon-stage .dragon-companion{width:145px;margin:-16px auto -20px;position:relative;inset:auto;transform:none;opacity:1;flex-shrink:0}.rail-title{text-align:center}.dragon-stage .dragon-energy{position:relative;inset:auto;width:100%;font-size:11px}.agent-context{display:block}
@media(max-width:600px){.topbar{height:54px;padding-inline:8px;gap:5px}.brand{font-size:15px}.account-button{font-size:12px;max-width:115px}.workspace{height:calc(var(--app-height,100dvh) - 54px)}.chat-pane{padding:0 12px max(8px,env(safe-area-inset-bottom))}.dragon-stage{top:54px;height:calc(var(--app-height,100dvh) - 54px)}.composer{gap:4px 8px;padding:10px 12px 8px}.mode-label select{max-width:145px;font-size:11px}.message.user{margin-left:9%}.message .message-content{font-size:15px}.workbench-controls{gap:8px}.workbench-controls .quiet-button{font-size:11px}.composer-hint{max-height:27px;overflow:hidden}.welcome h1{font-size:27px}}
