:root{color-scheme:dark;--ink:#edece5;--muted:#94968f;--line:#2a2c28;--panel:#181a17;--panel2:#20221e;--black:#10110f;--acid:#c8f55b;--acid-dim:#8eae3f;--danger:#ff746c;--sidebar:280px}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--black);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;overflow:hidden}button,textarea,input,select{font:inherit}.app-shell{display:grid;grid-template-columns:var(--sidebar) 1fr;height:100%}.sidebar{background:#141512;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:22px 16px 14px;min-width:0}.brand{display:flex;align-items:center;gap:11px;padding:0 7px 25px}.brand-mark{width:33px;height:33px;background:var(--acid);color:#11150a;display:grid;place-items:center;font:bold 19px Georgia;transform:rotate(-4deg)}.brand strong{font:700 14px/1 monospace;letter-spacing:.12em}.brand small{display:block;color:#65685f;font:9px monospace;letter-spacing:.17em;margin-top:5px}.new-chat{height:46px;border:1px solid #3a3d35;background:#21231e;color:var(--ink);text-align:left;padding:0 13px;cursor:pointer;display:flex;align-items:center;gap:9px}.new-chat:hover{border-color:var(--acid-dim)}.new-chat span{font-size:22px;color:var(--acid)}kbd{margin-left:auto;background:#151612;border:1px solid #34372f;color:#74776f;padding:2px 5px;font:9px monospace}.sidebar-label{color:#666960;font:10px monospace;letter-spacing:.15em;margin:28px 9px 10px}.conversation-list{overflow:auto;flex:1;margin:0 -4px}.conversation-item{display:grid;grid-template-columns:1fr auto;align-items:center;padding:11px 12px;margin:2px 0;border-left:2px solid transparent;color:#9d9f98;cursor:pointer}.conversation-item:hover{background:#1b1d19;color:var(--ink)}.conversation-item.active{background:#20221e;border-left-color:var(--acid);color:var(--ink)}.conversation-item .copy{min-width:0}.conversation-item strong,.conversation-item small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-item strong{font-size:13px;font-weight:550}.conversation-item small{font-size:10px;color:#65685f;margin-top:4px}.conversation-item button{opacity:0;background:none;border:0;color:#82857b;cursor:pointer;padding:6px}.conversation-item:hover button{opacity:1}.sidebar-foot{border-top:1px solid var(--line);display:flex;align-items:center;gap:8px;color:#777a71;font:11px monospace;padding:15px 6px 0}.sidebar-foot button{margin-left:auto;background:none;border:0;color:#92958c;cursor:pointer;font-size:16px}.status-dot{width:7px;height:7px;background:var(--acid);border-radius:50%;box-shadow:0 0 10px var(--acid)}.workspace{display:grid;grid-template-rows:68px 1fr auto;min-width:0;background:radial-gradient(circle at 53% 43%,#1b1d18 0,transparent 36%),var(--black)}.topbar{border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 25px;background:rgba(16,17,15,.86);backdrop-filter:blur(12px)}.model-wrap{display:flex;align-items:center;gap:12px}.eyebrow{font:9px monospace;letter-spacing:.13em;color:#62655d}.model-wrap select{max-width:320px;background:#191b17;border:1px solid #30332c;color:var(--ink);padding:8px 34px 8px 10px;outline:none}.top-actions{display:flex;align-items:center;gap:13px}.connection{font:10px monospace;color:var(--muted)}.connection.online{color:var(--acid)}.icon-button{border:1px solid var(--line);background:#181a16;color:#aaa;padding:8px 11px;cursor:pointer}.chat{overflow-y:auto;position:relative}.welcome{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px 20px 170px}.welcome.hidden{display:none}.welcome-orbit{width:76px;height:76px;border:1px solid #43483a;border-radius:50%;display:grid;place-items:center;position:relative;margin-bottom:24px}.welcome-orbit:before,.welcome-orbit:after{content:"";position:absolute;border:1px solid #292c25;border-radius:50%;inset:-9px;transform:rotate(55deg)}.welcome-orbit:after{inset:13px;border-color:var(--acid-dim)}.welcome-orbit span{font:bold 16px monospace;color:var(--acid)}.kicker{font:10px monospace;letter-spacing:.3em;color:var(--acid-dim);margin:0 0 14px}.welcome h1{font:400 clamp(38px,5vw,66px)/.98 Georgia,serif;margin:0;letter-spacing:-.04em}.welcome h1 em{color:var(--acid);font-weight:400}.welcome-copy{max-width:540px;color:#969990;font-size:14px;line-height:1.7}.prompts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:22px;max-width:730px;width:100%}.prompts button{text-align:left;border:1px solid var(--line);background:#171915;color:var(--ink);padding:15px;display:flex;gap:11px;cursor:pointer}.prompts button:hover{border-color:#626a4c;transform:translateY(-2px)}.prompts b{color:var(--acid);font:18px monospace}.prompts span{font-size:12px}.prompts small{display:block;color:#6f726a;font-size:10px;margin-top:5px}.messages{max-width:900px;margin:0 auto;padding:40px 28px 170px}.message{display:grid;grid-template-columns:38px minmax(0,1fr);gap:15px;margin:0 0 34px}.avatar{width:34px;height:34px;border:1px solid #373a32;display:grid;place-items:center;font:11px monospace;color:#8d9087}.message.assistant .avatar{background:var(--acid);color:#12150c;border-color:var(--acid)}.message-head{display:flex;align-items:center;gap:9px;margin:2px 0 9px}.message-head strong{font:11px monospace;letter-spacing:.08em}.message-head time{font:9px monospace;color:#62655d}.message-content{color:#d4d4cf;line-height:1.7;font-size:14px;overflow-wrap:anywhere}.message.user .message-content{white-space:pre-wrap}.message-content p{margin:.2em 0 .9em}.message-content h1,.message-content h2,.message-content h3{color:#f1f0e9;line-height:1.3}.message-content a{color:var(--acid)}.message-content code{font:12px ui-monospace,monospace;background:#252721;padding:2px 5px;color:#d9f993}.message-content pre{background:#0b0c0a;border:1px solid #292b26;padding:16px;overflow:auto;position:relative}.message-content pre code{background:none;padding:0;color:#d9dbd3}.file-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.file-chip{display:flex;align-items:center;gap:7px;border:1px solid #34372f;background:#1b1d19;padding:7px 9px;color:#aaada4;font-size:11px;text-decoration:none}.typing:after{content:"";display:inline-block;width:7px;height:15px;background:var(--acid);margin-left:4px;animation:blink .8s infinite}@keyframes blink{50%{opacity:0}}.composer-zone{position:fixed;bottom:0;left:var(--sidebar);right:0;padding:16px max(22px,calc((100vw - var(--sidebar) - 850px)/2));background:linear-gradient(transparent,rgba(16,17,15,.96) 24%)}.composer{min-height:62px;background:#20221e;border:1px solid #3a3d35;display:flex;align-items:flex-end;padding:10px;box-shadow:0 18px 50px #000}.composer:focus-within{border-color:#626a4a}.composer textarea{flex:1;resize:none;max-height:180px;background:transparent;border:0;outline:0;color:var(--ink);padding:11px;line-height:1.45}.attach-button,.send-button{width:39px;height:39px;border:0;cursor:pointer;flex:none}.attach-button{background:transparent;color:#a9aba4;font-size:25px}.send-button{background:var(--acid);color:#12150c;font-size:21px}.send-button:disabled{background:#3c4035;color:#73776a}.composer-meta{display:flex;justify-content:space-between;color:#555850;font:9px monospace;padding:7px 2px}.attachments{display:flex;gap:7px;overflow-x:auto;max-width:850px;margin:0 auto}.pending-file{background:#252720;border:1px solid #3a3d33;padding:7px 9px;font-size:11px;white-space:nowrap}.pending-file button{border:0;background:none;color:#8e9188;cursor:pointer}.drop-hint{display:none;border:1px dashed var(--acid);background:#1c2115;color:var(--acid);padding:13px;text-align:center;font:11px monospace;margin-bottom:7px}.dragging .drop-hint{display:block}.overlay{display:none}.toast{position:fixed;right:22px;bottom:110px;background:#292c25;border-left:3px solid var(--acid);padding:12px 16px;font-size:12px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{border-color:var(--danger)}dialog{border:1px solid #3a3d35;background:#181a16;color:var(--ink);padding:0;width:min(520px,calc(100% - 28px));box-shadow:0 30px 100px #000}dialog::backdrop{background:#050605c9}.settings-panel{padding:22px}.settings-panel header{display:flex;justify-content:space-between}.settings-panel header small{font:9px monospace;color:var(--acid);letter-spacing:.15em}.settings-panel h2{font:normal 28px Georgia;margin:5px 0 18px}.settings-panel header button{background:none;border:0;color:#888;font-size:25px}.settings-panel label{display:block;color:#8f9289;font-size:11px;margin-top:14px}.settings-panel input,.settings-panel textarea{display:block;width:100%;margin-top:7px;background:#10110f;border:1px solid #30332c;color:var(--ink);padding:11px;outline:none}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.dialog-actions button{border:1px solid #35382f;background:#20221e;color:var(--ink);padding:9px 16px}.dialog-actions .primary{background:var(--acid);border-color:var(--acid);color:#12150c}.mobile-only{display:none}
.image-progress{width:min(100%,560px);min-height:150px;border:1px solid #34382e;background:#171914;display:grid;grid-template-columns:145px 1fr;align-items:center;gap:20px;padding:14px;overflow:hidden}.image-progress strong,.image-progress small{display:block}.image-progress strong{font:11px monospace;letter-spacing:.13em;color:var(--acid)}.image-progress small{margin-top:9px;color:#878a80;font-size:11px;line-height:1.5}.image-shimmer{height:120px;background:linear-gradient(110deg,#21241d 25%,#38402b 42%,#21241d 59%);background-size:220% 100%;animation:imageShimmer 1.7s linear infinite;position:relative}.image-shimmer:after{content:"IMAGE2";position:absolute;inset:0;display:grid;place-items:center;color:#687050;font:10px monospace;letter-spacing:.18em}@keyframes imageShimmer{to{background-position-x:-220%}}.generated-image{display:block;position:relative;width:min(100%,680px);border:1px solid #35382f;background:#141512;padding:7px;text-decoration:none}.generated-image img{display:block;width:100%;max-height:680px;object-fit:contain;background:#0b0c0a}.generated-image span{position:absolute;right:15px;bottom:15px;background:#10110fd9;color:var(--acid);padding:7px 9px;font:10px monospace}.retry-image{margin-top:12px;background:transparent;border:1px solid var(--danger);color:var(--danger);padding:8px 12px;cursor:pointer}.retry-image:hover{background:#3a1d1a}.message.image.failed .message-content{color:#e5a19c}
@media(max-width:760px){:root{--sidebar:0px}.app-shell{display:block}.sidebar{position:fixed;z-index:20;inset:0 auto 0 0;width:280px;transform:translateX(-100%);transition:.2s}.sidebar.open{transform:none}.overlay.show{display:block;position:fixed;z-index:19;inset:0;background:#0009}.workspace{height:100%}.mobile-only{display:block}.topbar{padding:0 12px}.eyebrow{display:none}.model-wrap select{max-width:190px}.connection{display:none}.composer-zone{left:0;padding:14px 12px}.composer-meta span:last-child{display:none}.messages{padding:28px 16px 160px}.welcome{padding-bottom:150px}.prompts{grid-template-columns:1fr}.prompts button:nth-child(n+3){display:none}.welcome h1{font-size:42px}.image-progress{grid-template-columns:80px 1fr;min-height:110px}.image-shimmer{height:80px}}
.app-shell,.workspace{min-height:0}.workspace{height:100dvh;overflow:hidden}.chat{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-gutter:stable;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.chat::-webkit-scrollbar,.conversation-list::-webkit-scrollbar{width:8px}.chat::-webkit-scrollbar-track,.conversation-list::-webkit-scrollbar-track{background:transparent}.chat::-webkit-scrollbar-thumb,.conversation-list::-webkit-scrollbar-thumb{background:#35382f;border:2px solid var(--black);border-radius:999px}.chat::-webkit-scrollbar-thumb:hover{background:var(--acid-dim)}.model-badge{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font:600 12px monospace;letter-spacing:.06em}.model-badge i{width:7px;height:7px;border-radius:50%;background:var(--acid);box-shadow:0 0 0 4px #c8f55b14,0 0 14px #c8f55b66;animation:modelPulse 2.4s ease-in-out infinite}.scroll-bottom{position:sticky;z-index:6;bottom:116px;margin:-50px auto 14px;display:flex;align-items:center;gap:7px;width:max-content;min-height:36px;padding:0 13px;border:1px solid #41453a;border-radius:999px;background:#20231ddf;backdrop-filter:blur(12px);color:var(--ink);box-shadow:0 8px 30px #0008;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .18s ease,transform .18s ease,border-color .18s ease}.scroll-bottom.show{opacity:1;pointer-events:auto;transform:none}.scroll-bottom:hover{border-color:var(--acid-dim)}.scroll-bottom span{font-size:11px}.message{animation:messageIn .24s ease-out both}.composer{transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.composer:focus-within{border-color:#6d774e;box-shadow:0 0 0 3px #c8f55b0c,0 16px 45px #0005}.composer.is-generating{border-color:var(--acid-dim);box-shadow:0 0 0 1px #c8f55b18,0 14px 40px #0006}.composer.is-generating .send-button{animation:stopPulse 1.4s ease-in-out infinite}.send-button,.attach-button,.icon-button,.new-chat,.conversation-item,.prompts button{transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,opacity .16s ease}.send-button:active,.attach-button:active,.icon-button:active,.new-chat:active,.prompts button:active{transform:scale(.96)}.typing:empty:before{content:"";display:inline-block;width:32px;height:8px;background:radial-gradient(circle closest-side,var(--acid) 90%,transparent) 0 50%/8px 8px repeat-x;animation:typingDots 1s steps(4) infinite}.connection{transition:color .2s ease}.connection.online:before{animation:modelPulse 2.4s ease-in-out infinite}@keyframes messageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes modelPulse{50%{opacity:.55;box-shadow:0 0 0 7px #c8f55b0a,0 0 8px #c8f55b44}}@keyframes stopPulse{50%{filter:brightness(.78)}}@keyframes typingDots{to{background-position:32px 50%}}@media(max-width:760px){.workspace{height:100dvh}.chat{scrollbar-gutter:auto}.model-badge{font-size:11px}.scroll-bottom{bottom:108px}.composer-zone{padding-bottom:max(14px,env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
