:root{--bg:#0b0d0c;--surface:#101412;--surface-2:#151a17;--surface-3:#1c231f;--line:#28312b;--line-bright:#38433b;--text:#eef2ed;--text-muted:#919d93;--text-dim:#627067;--green:#76b900;--green-bright:#9be329;--green-soft:rgba(118,185,0,.12);--amber:#e7ad53;--danger:#e36e6e;--radius:14px;--shadow:0 20px 80px rgba(0,0,0,.28)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif}body{font-size:14px;line-height:1.5}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer}.app-shell{min-height:100vh;display:flex;background:radial-gradient(circle at 72% 13%,rgba(118,185,0,.07),transparent 30%),var(--bg)}.sidebar{width:270px;min-height:100vh;border-right:1px solid var(--line);background:rgba(13,16,14,.92);display:flex;flex-direction:column;padding:24px 16px 16px;flex-shrink:0}.brand-row{display:flex;align-items:center;justify-content:space-between;padding:0 8px 26px}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--text)}.brand-mark{width:34px;height:34px}.brand-name{font-family:"Space Grotesk",sans-serif;font-size:22px;letter-spacing:-.06em;font-weight:700}.brand-dot{color:var(--green);font-size:28px;line-height:0}.mono,.shortcut,.crumb-label,.eyebrow,.sidebar-footer,.history-header,.rail-status,.composer-meta,.composer-hint,.privacy-line,.connection-pill,.field-optional{font-family:"IBM Plex Mono",monospace}.rail-status{display:flex;gap:8px;align-items:center;color:var(--text-dim);font-size:10px;letter-spacing:.05em;margin:0 8px 22px}.status-dot,.model-chip-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(118,185,0,.1)}.muted{color:var(--text-dim)}.new-chat-button{height:43px;background:var(--green);color:#071000;border:0;border-radius:9px;padding:0 12px;display:flex;align-items:center;gap:9px;font-weight:700;transition:background .2s,transform .2s}.new-chat-button:hover{background:var(--green-bright);transform:translateY(-1px)}.plus{font-size:21px;line-height:1;font-weight:400}.shortcut{font-size:10px;margin-left:auto;opacity:.65}.history-header{display:flex;align-items:center;justify-content:space-between;color:var(--text-dim);font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin:28px 8px 10px}.text-button,.inline-link{border:0;background:none;color:var(--green);padding:0;font-size:11px}.text-button:hover,.inline-link:hover{text-decoration:underline}.conversation-list{display:flex;flex-direction:column;gap:3px;overflow:auto;min-height:60px}.conversation-item{position:relative;display:flex;align-items:center;gap:8px;color:var(--text-muted);border-radius:8px;padding:10px 8px 10px 11px;border:1px solid transparent;transition:background .2s,color .2s}.conversation-item:hover{background:var(--surface-2);color:var(--text)}.conversation-item.active{background:var(--green-soft);color:var(--text);border-color:rgba(118,185,0,.2)}.conversation-item.active:before{content:"";position:absolute;left:-1px;top:11px;bottom:11px;width:2px;border-radius:2px;background:var(--green)}.conversation-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;flex:1}.conversation-date{font:10px "IBM Plex Mono",monospace;color:var(--text-dim)}.conversation-menu{opacity:0;border:0;background:none;color:var(--text-muted);padding:0 2px;font-size:18px;line-height:.8}.conversation-item:hover .conversation-menu,.conversation-item:focus-within .conversation-menu{opacity:1}.sidebar-bottom{margin-top:auto}.settings-link{width:100%;display:flex;align-items:center;gap:10px;padding:11px 9px;border:1px solid transparent;border-radius:8px;background:none;color:var(--text-muted);text-align:left}.settings-link:hover{background:var(--surface-2);color:var(--text)}.settings-icon{font-size:21px;line-height:1;color:var(--green)}.connection-pill{font-size:9px;border:1px solid var(--line-bright);border-radius:999px;color:var(--text-dim);padding:3px 6px;margin-left:auto}.connection-pill.connected{color:var(--green-bright);border-color:rgba(118,185,0,.35);background:var(--green-soft)}.storage-note{border-top:1px solid var(--line);margin-top:13px;padding:14px 8px;color:var(--text-dim);font:10px "IBM Plex Mono",monospace;display:flex;gap:8px}.lock-icon{color:var(--green);font-size:14px}.sidebar-footer{border-top:1px solid var(--line);padding:15px 8px 0;display:flex;justify-content:space-between;color:#536057;font-size:9px;letter-spacing:.08em}.main-panel{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:75px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 36px}.topbar-left,.download-app-button{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(118,185,0,.45);border-radius:7px;background:rgba(118,185,0,.08);color:var(--green-bright);padding:8px 10px;text-decoration:none;font:600 11px "IBM Plex Mono",monospace;white-space:nowrap}.download-app-button:hover{background:rgba(118,185,0,.16);border-color:var(--green);color:#f2ffe9}.topbar-actions{display:flex;align-items:center;gap:16px}.crumb{display:flex;align-items:center;gap:12px;color:var(--text-muted);font-size:13px}.crumb-label{color:var(--text-dim);font-size:10px;letter-spacing:.1em}.crumb-separator{color:var(--line-bright)}.model-chip{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--surface);padding:8px 11px;border-radius:7px;font:11px "IBM Plex Mono",monospace;color:var(--text-muted)}.model-chip-dot{width:5px;height:5px;box-shadow:none}.model-chip-version{font-size:9px;color:var(--green)}.icon-button{width:32px;height:32px;border:1px solid transparent;border-radius:7px;background:none;color:var(--text-muted);font-size:19px;display:inline-flex;justify-content:center;align-items:center}.icon-button:hover{background:var(--surface-2);border-color:var(--line);color:var(--text)}.menu-button,.mobile-only{display:none}.workspace{position:relative;display:flex;flex-direction:column;flex:1;min-height:calc(100vh - 75px);overflow:hidden}.workspace-grid{position:absolute;inset:0;opacity:.45;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.55),transparent 70%)}.hero-copy{max-width:920px;width:calc(100% - 96px);margin:0 auto;padding-top:clamp(80px,13vh,150px);position:relative}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--green);font-size:10px;letter-spacing:.14em;font-weight:600}.eyebrow-line{display:block;width:28px;height:1px;background:var(--green)}h1,h2{font-family:"Space Grotesk",sans-serif;margin:20px 0 13px;letter-spacing:-.065em;line-height:.96}h1{font-size:clamp(48px,6vw,82px);font-weight:600}h1 em{color:var(--green);font-style:normal}.hero-description{max-width:450px;color:var(--text-muted);font-size:15px;line-height:1.7;margin:0}.prompt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:57px;max-width:880px}.prompt-card{min-height:121px;text-align:left;position:relative;background:rgba(17,21,18,.72);border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-direction:column;justify-content:space-between;transition:border-color .2s,background .2s,transform .2s}.prompt-card:hover{border-color:rgba(118,185,0,.55);background:rgba(118,185,0,.08);transform:translateY(-3px)}.prompt-index{font:10px "IBM Plex Mono",monospace;color:var(--green)}.prompt-text{font-size:13px;max-width:150px;line-height:1.35;color:var(--text-muted)}.prompt-arrow{position:absolute;right:16px;bottom:14px;color:var(--green);font-size:20px}.messages{position:relative;width:100%;max-width:920px;margin:0 auto;padding:70px 0 200px;display:none}.messages.visible{display:block}.message{display:flex;gap:16px;margin:0 0 26px;animation:rise .25s ease-out}.message-avatar{width:30px;height:30px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:3px;border:1px solid var(--line-bright);border-radius:8px;color:var(--green);font:11px "IBM Plex Mono",monospace}.message.user .message-avatar{color:var(--text-muted);background:var(--surface-2)}.message-body{min-width:0;flex:1}.message-head{display:flex;align-items:center;gap:9px;font:10px "IBM Plex Mono",monospace;color:var(--text-dim);margin-bottom:7px}.message.user .message-head{color:var(--text-muted)}.message-content{font-size:14px;line-height:1.75;color:var(--text);white-space:pre-wrap;word-break:break-word;max-width:740px}.message.assistant .message-content{color:#d6ded7}.message-content p{margin:0 0 11px}.message-content p:last-child{margin-bottom:0}.message-actions{opacity:0;display:flex;gap:5px;margin-top:10px;transition:opacity .2s}.message:hover .message-actions,.message:focus-within .message-actions{opacity:1}.message-action{font:10px "IBM Plex Mono",monospace;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--text-dim);padding:5px 8px}.message-action:hover{color:var(--green);border-color:rgba(118,185,0,.4)}.stream-caret{display:inline-block;width:7px;height:16px;background:var(--green);vertical-align:-2px;margin-left:3px;animation:blink 1s infinite}.composer-wrap{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);width:min(920px,calc(100% - 96px));z-index:2}.composer-meta{display:flex;justify-content:space-between;color:var(--text-dim);font-size:9px;letter-spacing:.04em;margin:0 8px 8px}.meta-light{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:7px}.composer{border:1px solid var(--line-bright);background:rgba(16,20,18,.95);border-radius:12px;box-shadow:var(--shadow);padding:13px 13px 9px;transition:border-color .2s}.composer:focus-within{border-color:rgba(118,185,0,.7)}textarea{border:0;resize:none;outline:0;background:none;color:var(--text);width:100%;min-height:28px;max-height:140px;line-height:1.5;padding:0 3px}textarea::placeholder{color:#5d695f}.composer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.composer-hint{font-size:9px;color:var(--text-dim)}.send-button,.primary-button{border:0;background:var(--green);color:#071000;font-weight:700;border-radius:7px;padding:8px 10px 8px 13px;display:flex;align-items:center;gap:9px;font-size:12px}.send-button:hover,.primary-button:hover{background:var(--green-bright)}.send-button.is-stop{background:#e4f3d8;color:#10150f;box-shadow:inset 0 0 0 1px rgba(118,185,0,.35)}.send-button.is-stop:hover{background:#f2ffe9}.send-button:disabled{cursor:wait;opacity:.55}.send-arrow{font-size:17px;line-height:.7}.privacy-line{text-align:center;font-size:9px;color:var(--text-dim);margin:12px 0 0}.modal{border:1px solid var(--line-bright);border-radius:16px;background:var(--surface);color:var(--text);width:min(540px,calc(100% - 28px));padding:0;box-shadow:0 30px 120px rgba(0,0,0,.6)}.modal::backdrop{background:rgba(3,5,4,.78);backdrop-filter:blur(4px)}.modal-inner{padding:28px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start}.modal-header h2{font-size:27px;margin:13px 0 0}.modal-intro{color:var(--text-muted);font-size:13px;line-height:1.65;margin:18px 0 24px}.field-label{display:block;color:var(--text-muted);font:10px "IBM Plex Mono",monospace;letter-spacing:.07em;text-transform:uppercase;margin:16px 0 7px}.field-optional{font-size:9px;color:var(--text-dim);text-transform:none;letter-spacing:0}.input-with-action{display:flex}.input-with-action input{border-radius:7px 0 0 7px!important}.reveal-button{border:1px solid var(--line-bright);border-left:0;border-radius:0 7px 7px 0;background:var(--surface-3);color:var(--text-muted);font-size:11px;padding:0 11px}input,select{width:100%;border:1px solid var(--line-bright);border-radius:7px;background:var(--surface-2);color:var(--text);padding:11px 12px;outline:0;font-size:13px}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.field-row{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.fetch-models,.secondary-button{height:39px;border:1px solid var(--line-bright);border-radius:7px;background:var(--surface-3);color:var(--text-muted);padding:0 12px;font-size:11px;white-space:nowrap}.fetch-models:hover,.secondary-button:hover{border-color:var(--green);color:var(--text)}.security-callout{display:flex;gap:10px;margin-top:22px;padding:13px;border:1px solid rgba(231,173,83,.24);background:rgba(231,173,83,.06);border-radius:8px;color:var(--text-muted);font-size:11px;line-height:1.55}.security-callout strong{color:var(--amber);font-size:11px}.security-callout p{margin:4px 0 0}.callout-mark{color:var(--amber);border:1px solid var(--amber);border-radius:50%;width:17px;height:17px;text-align:center;font-size:10px;flex:none}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.danger-button{margin-right:auto;border:0;background:none;color:var(--danger);font-size:11px;padding:0}.danger-button:hover{text-decoration:underline}.modal-status{font:11px "IBM Plex Mono",monospace;color:var(--green);min-height:17px;margin:14px 0 0}.compact-modal{width:min(410px,calc(100% - 28px))}.compact-modal h2{margin:0;font-size:24px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,15px);background:var(--text);color:var(--bg);border-radius:7px;padding:10px 14px;font:11px "IBM Plex Mono",monospace;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes rise{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes blink{50%{opacity:0}}@media(max-width:900px){.sidebar{width:235px}.topbar{padding:0 24px}.hero-copy,.composer-wrap{width:calc(100% - 48px)}.messages{width:calc(100% - 48px)}.prompt-grid{gap:8px}}@media(max-width:700px){.sidebar{position:fixed;z-index:5;left:0;top:0;bottom:0;transform:translateX(-100%);transition:transform .25s;box-shadow:20px 0 80px rgba(0,0,0,.45)}.sidebar.open{transform:translateX(0)}.mobile-only,.menu-button{display:inline-flex}.topbar{height:66px;padding:0 16px}.topbar-actions{gap:5px}.model-chip{max-width:150px;padding:7px 8px;font-size:10px}.model-chip-version{display:none}.crumb{gap:7px;font-size:11px}.crumb-label{display:none}.workspace{min-height:calc(100vh - 66px)}.hero-copy{width:calc(100% - 32px);padding-top:60px}.hero-description{font-size:14px}.prompt-grid{grid-template-columns:1fr;margin-top:35px}.prompt-card{min-height:86px}.messages{width:calc(100% - 32px);padding-top:38px;padding-bottom:200px}.composer-wrap{width:calc(100% - 32px);bottom:15px}.composer-hint{display:none}.privacy-line{font-size:8px}.modal-inner{padding:21px}.field-row{grid-template-columns:1fr}.fetch-models{width:100%}h1{font-size:52px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
