:root{--bg:#0b0d10;--panel:#12151a;--panel2:#181c22;--line:#262b34;--text:#f3f4f6;--muted:#9299a6;--accent:#8b7cf6;--ok:#43d17b;--bad:#ef6b73}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.app{height:100vh;display:grid;grid-template-columns:280px 1fr}.sidebar{background:#0e1115;border-right:1px solid var(--line);padding:18px 14px;display:flex;flex-direction:column;min-height:0}.brand{display:flex;gap:11px;align-items:center;padding:5px 8px 17px}.logo,.heroLogo{display:grid;place-items:center;background:linear-gradient(135deg,#7b6df0,#b487ff);font-weight:900;box-shadow:0 8px 30px #715bf040}.logo{width:38px;height:38px;border-radius:12px}.brand strong{font-size:17px;letter-spacing:.06em}.brand small{display:block;color:var(--muted);font-size:11px}.new{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;padding:12px;text-align:left;cursor:pointer}.new:hover{background:var(--panel2)}.conversations{margin-top:14px;overflow:auto;flex:1}.conv{padding:10px;border-radius:9px;color:#c8cdd6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;margin:2px 0}.conv:hover,.conv.active{background:var(--panel2);color:#fff}.sideActions{display:flex;gap:8px;padding:10px 6px}.sideActions a,.back,.mobileSettings{color:#bcb8ef;text-decoration:none;font-size:12px}.sidefoot{border-top:1px solid var(--line);padding:14px 7px 0;color:var(--muted);font-size:12px;display:flex;gap:8px;align-items:center}.dot{width:8px;height:8px;border-radius:50%;background:#6c7280}.dot.ok{background:var(--ok)}main{min-width:0;display:flex;flex-direction:column;height:100vh}header{height:78px;padding:15px 25px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#0b0d10e8;backdrop-filter:blur(10px)}h1{font-size:17px;margin:0;letter-spacing:.08em}header p{margin:2px 0 0;color:var(--muted);font-size:12px}.controls{display:flex;gap:16px;align-items:center}select,input,textarea{font:inherit}select{background:var(--panel);color:#eee;border:1px solid var(--line);padding:9px 11px;border-radius:10px}.toggle{display:flex;align-items:center;gap:8px;color:#bbb;font-size:12px}.toggle input{accent-color:var(--accent)}.providers{padding:8px 24px;border-bottom:1px solid var(--line);display:flex;gap:7px;overflow:auto;min-height:47px}.provider{font-size:11px;color:#aab0ba;background:var(--panel);border:1px solid var(--line);border-radius:99px;padding:5px 9px;white-space:nowrap}.provider.online{color:#dff8e8;border-color:#285c3c}.provider.configured:not(.online){color:#ffdcaa;border-color:#5c4628}.chat{flex:1;overflow:auto;padding:28px max(28px,calc((100% - 900px)/2));scroll-behavior:smooth}.welcome{text-align:center;max-width:720px;margin:9vh auto}.heroLogo{width:64px;height:64px;border-radius:20px;margin:0 auto 18px;font-size:28px}.welcome h2{font-size:28px;margin:0 0 8px}.welcome p{color:var(--muted);max-width:560px;margin:0 auto}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px}.cards button{background:var(--panel);border:1px solid var(--line);color:#dfe3e9;border-radius:13px;padding:17px 12px;cursor:pointer}.cards button:hover{border-color:#524a89}.msg{margin:0 auto 24px;max-width:900px}.msg .meta{font-size:11px;color:var(--muted);margin-bottom:6px}.bubble{white-space:pre-wrap;overflow-wrap:anywhere}.msg.user .bubble{background:var(--panel2);padding:13px 16px;border-radius:16px;margin-left:auto;max-width:78%;width:max-content}.msg.assistant .bubble{padding:4px 0;max-width:100%}.sources{margin-top:13px;display:flex;gap:7px;flex-wrap:wrap}.sources a{font-size:11px;color:#c8c4ff;text-decoration:none;border:1px solid var(--line);background:var(--panel);padding:5px 8px;border-radius:8px}.thinking{color:var(--muted);animation:pulse 1.1s infinite}@keyframes pulse{50%{opacity:.45}}.composer{padding:12px max(25px,calc((100% - 900px)/2)) 17px;background:linear-gradient(transparent,#0b0d10 22%);position:relative}.composer textarea{width:100%;max-height:170px;resize:none;overflow-y:hidden;scrollbar-width:none;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:18px;padding:16px 56px 16px 17px;outline:none;box-shadow:0 12px 40px #0005}.composer textarea::-webkit-scrollbar{width:0;height:0}.composer textarea:focus{border-color:#4c466f}.composer>button{position:absolute;right:max(38px,calc((100% - 875px)/2));top:22px;width:37px;height:37px;border:0;border-radius:11px;background:var(--accent);color:#fff;font-size:20px;cursor:pointer}.composer>button:disabled{opacity:.4}.hint{text-align:center;color:#646b77;font-size:10px;margin-top:6px}.centered{min-height:100vh;display:grid;place-items:center;padding:20px}.panel{width:min(520px,100%);background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:28px}.panel h1{text-align:center;font-size:24px}.panel p{text-align:center;color:var(--muted)}.login label,.settingsForm label{display:block;color:#c9ced7;font-size:12px;margin:13px 0}.login input,.settingsForm input{width:100%;margin-top:6px;background:#0d1014;border:1px solid var(--line);color:#fff;border-radius:10px;padding:11px 12px}.primary{border:0;border-radius:11px;background:var(--accent);color:#fff;padding:12px 16px;font-weight:700;cursor:pointer}.login .primary{width:100%;margin-top:10px}.error,.success{border-radius:10px;padding:10px 12px;margin:12px 0}.error{background:#3b171b;color:#ffc7cc}.success{background:#163421;color:#c8ffda}.settingsPage{min-height:100vh;background:var(--bg)}.settingsWrap{width:min(980px,calc(100% - 30px));margin:30px auto 60px}.settingsTop{display:flex;justify-content:space-between;gap:20px;align-items:center}.settingsTop h1{font-size:24px}.settingsTop p{color:var(--muted)}.settingsForm{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.providerCard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}.providerHead{display:flex;justify-content:space-between;gap:10px}.providerHead small{display:block;color:var(--muted)}.status{font-size:11px;color:var(--muted)}.status.ok{color:var(--ok)}.save{grid-column:1/-1}.mobileSettings{display:none;font-size:20px}@media(max-width:780px){.app{grid-template-columns:1fr}.sidebar{display:none}header{padding:12px 14px}.controls{gap:7px}.toggle{display:none}.mobileSettings{display:block}.providers{padding-left:14px}.chat{padding:20px 14px}.composer{padding-left:12px;padding-right:12px}.composer>button{right:22px}.cards{grid-template-columns:1fr}.msg.user .bubble{max-width:90%}.settingsForm{grid-template-columns:1fr}.settingsTop{align-items:flex-start;flex-direction:column}}
.noticeBox{margin:16px 0}.testProvider{margin-top:10px;border:1px solid var(--line);background:#0d1014;color:#cfd4dc;border-radius:9px;padding:9px 11px;cursor:pointer}.testProvider:hover:not(:disabled){border-color:#5b548d;color:#fff}.testProvider:disabled{opacity:.42;cursor:not-allowed}.providerCard input:focus{outline:none;border-color:#4c466f}.settingsForm .providerCard{min-width:0}
/* NEXA 0.3.3 · USER / WORK / ADMIN / SELF BUILDER */
.mainNav{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin:0 0 12px}.mainNav a{color:#aeb5c0;text-decoration:none;text-align:center;padding:9px 7px;border:1px solid var(--line);border-radius:10px;background:#101319;font-size:12px}.mainNav a.active,.mainNav a:hover{color:#fff;border-color:#544b88;background:#191724}.mainNav a:nth-child(3){grid-column:1/-1}.userBadge{font-size:11px;color:#8f96a3;margin-right:auto}.cardLink{background:var(--panel);border:1px solid var(--line);color:#dfe3e9;border-radius:13px;padding:17px 12px;text-decoration:none;display:grid;place-items:center}.conv small{display:block;font-size:10px;color:#737b88;margin-top:2px}.conv strong{font-weight:500}.workBody{flex:1;overflow:auto;padding:28px max(28px,calc((100% - 1050px)/2))}.workComposer,.workResult{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:18px}.workComposer h2,.workResult h2{margin:0 0 13px;font-size:19px}.workComposer textarea,.bigText{width:100%;min-height:150px;resize:vertical;background:#0d1014;color:var(--text);border:1px solid var(--line);border-radius:13px;padding:14px;outline:none}.workComposer textarea:focus,.bigText:focus{border-color:#514978}.workActions,.buttonRow{display:flex;gap:10px;align-items:center;margin-top:12px;flex-wrap:wrap}.muted{color:var(--muted)}.workResult{min-height:280px}.emptyState{color:var(--muted);display:grid;place-items:center;min-height:170px;text-align:center}.workStatus{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.workStatus span,.roleBadge{font-size:10px;padding:5px 8px;border:1px solid var(--line);border-radius:99px;color:#c8c5f5;background:#171625}.workGoalView{background:#0d1014;border:1px solid var(--line);border-radius:11px;padding:12px;color:#c3c9d3;white-space:pre-wrap}.workAnswer{white-space:pre-wrap;line-height:1.65;margin-top:20px}.adminPage{min-height:100vh}.adminShell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.adminSide{background:#0e1115;border-right:1px solid var(--line);padding:18px 14px}.adminNav{display:flex;flex-direction:column;gap:5px}.adminNav a{padding:10px 11px;border-radius:9px;color:#aeb5c0;text-decoration:none}.adminNav a:hover,.adminNav a.active{background:var(--panel2);color:#fff}.adminMain{padding:30px;max-width:1300px;width:100%}.adminHeader,.cardHead{display:flex;align-items:center;justify-content:space-between;gap:16px}.adminHeader h1{font-size:26px}.adminHeader p{color:var(--muted);margin-top:5px}.statGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.stat,.adminCard{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px}.stat strong{display:block;font-size:26px}.stat span{color:var(--muted);font-size:12px}.adminCard{margin-bottom:15px}.adminCard h2{font-size:17px;margin:0 0 13px}.adminCard p{color:#b5bcc8}.kv{display:grid;grid-template-columns:150px 1fr;gap:9px}.kv span{color:var(--muted)}.inlineBtn{display:inline-block;text-decoration:none}.inlineForm{display:grid;grid-template-columns:1.2fr 1.2fr .7fr auto;gap:9px}.inlineForm input,.inlineForm select,.userRow input,.userRow select,.adminCard select{background:#0d1014;border:1px solid var(--line);color:#fff;border-radius:9px;padding:9px}.userTable{display:flex;flex-direction:column;gap:7px}.userRow{display:grid;grid-template-columns:1.3fr .7fr .55fr 1fr auto;gap:9px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.userRow small{display:block;color:var(--muted);font-size:10px}.userRow button,.builderButtons button,.buttonRow>button:not(.primary){border:1px solid var(--line);background:#0d1014;color:#d7dce5;border-radius:9px;padding:9px 11px;cursor:pointer}.miniToggle{font-size:11px;color:#bbb}.builderWarning{background:#2b2513;border:1px solid #584e26;color:#f4e8b8;padding:12px 14px;border-radius:12px;margin:18px 0}.builderGrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.codeBox{background:#090b0e;border:1px solid var(--line);border-radius:10px;padding:13px;overflow:auto;max-height:380px;color:#c8ced8;font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap}.planBox{max-height:470px}.runList{display:flex;flex-direction:column;gap:6px}.runList button{border:1px solid var(--line);background:#0d1014;color:#dbe0e8;border-radius:10px;text-align:left;padding:10px;cursor:pointer}.runList button:hover{border-color:#554e84}.runList small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.fileChips{display:flex;gap:6px;flex-wrap:wrap}.fileChips span{font:10px ui-monospace,monospace;border:1px solid var(--line);padding:5px 7px;border-radius:7px;background:#0d1014}.testList{display:flex;flex-direction:column;gap:5px}.test{display:grid;grid-template-columns:45px 1fr;gap:8px;padding:8px;border-radius:8px;background:#0d1014;border:1px solid var(--line)}.test b{font-size:10px}.test.pass b{color:var(--ok)}.test.fail b{color:var(--bad)}.test small{grid-column:2;color:var(--muted);white-space:pre-wrap}.dangerSoft{border-color:#63343a!important;color:#ffc7cc!important}.dangerSoft:disabled,.builderButtons button:disabled{opacity:.35;cursor:not-allowed}
@media(max-width:900px){.adminShell{grid-template-columns:1fr}.adminSide{border-right:0;border-bottom:1px solid var(--line)}.adminNav{display:grid;grid-template-columns:repeat(2,1fr)}.adminMain{padding:18px}.statGrid{grid-template-columns:repeat(2,1fr)}.builderGrid{grid-template-columns:1fr}.inlineForm,.userRow{grid-template-columns:1fr}.workBody{padding:18px 12px}}
/* NEXA 0.3.3 Builder live progress */
.builderProgress{height:8px;border-radius:999px;background:#0b0d11;border:1px solid var(--line);overflow:hidden;margin:12px 0 5px}.builderProgress i{display:block;height:100%;background:linear-gradient(90deg,#6f61e8,#9d7cff);transition:width .35s ease}.builderPhase{font-size:11px;color:var(--muted);margin-bottom:14px}.builderInlineError{margin:10px 0}.builderButtons #resumeBtn{border-color:#5b4fd7;color:#ddd8ff;background:#1b1830}.builderButtons #resumeBtn:hover{background:#262142}
