
:root{--bg:#07111c;--panel:#101f2e;--line:#20374c;--text:#f5f1e8;--muted:#8ea4b6;--cyan:#59e1d0;--gold:#f4bd67;--danger:#ff857e}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 18% 8%,#12314a 0,transparent 34%),var(--bg);color:var(--text);font:15px/1.5 ui-sans-serif,-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;min-height:100vh}
button,input,textarea{font:inherit}.shell{width:min(1180px,calc(100% - 32px));margin:auto}header{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{color:var(--text);text-decoration:none;font-weight:900;letter-spacing:.12em}.brand span{color:var(--cyan)}
.auth-grid{min-height:calc(100vh - 120px);display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:70px}.hero h1{font-size:clamp(42px,7vw,82px);line-height:1.02;margin:12px 0 26px;letter-spacing:-.055em}.hero>p:last-child{color:var(--muted);font-size:18px;max-width:590px}.eyebrow{color:var(--cyan);font-size:12px;font-weight:800;letter-spacing:.18em}
.panel{background:color-mix(in srgb,var(--panel) 90%,transparent);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 30px 90px #0008}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:24px}.tabs button{background:none;border:0;color:var(--muted);padding:10px 18px;border-bottom:2px solid transparent}.tabs button.active{color:var(--text);border-color:var(--cyan)}
form{display:grid;gap:15px}label{display:grid;gap:7px;color:var(--muted);font-size:13px}input,textarea{width:100%;border:1px solid var(--line);background:#081522;color:var(--text);border-radius:12px;padding:13px;outline:none}input:focus,textarea:focus{border-color:var(--cyan)}small{color:var(--muted)}button{cursor:pointer}.primary,.ghost{border-radius:12px;padding:12px 18px;font-weight:800}.primary{border:0;color:#04100f;background:linear-gradient(135deg,var(--cyan),#a6f4c5)}.ghost{border:1px solid var(--line);color:var(--text);background:#0b1926}.error{min-height:22px;color:var(--danger)}
.welcome{display:flex;align-items:end;justify-content:space-between;padding:34px 0}.welcome h1{margin:4px 0 0;font-size:36px}.workspace{display:grid;grid-template-columns:290px 1fr;gap:18px;min-height:680px}aside,.chat{border:1px solid var(--line);background:#0a1724cc;border-radius:20px}aside{padding:20px}.oc-list{display:grid;gap:10px}.oc-card{width:100%;text-align:left;background:#0f2030;border:1px solid var(--line);color:var(--text);padding:14px;border-radius:14px}.oc-card.active{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan)}.oc-card strong,.oc-card span{display:block}.oc-card span{color:var(--muted);font-size:12px;margin-top:4px}
.devices{border-top:1px solid var(--line);margin-top:24px;padding-top:18px;color:var(--muted);font-size:12px}.device{padding:9px 0}.chat{display:grid;grid-template-rows:auto 1fr auto;overflow:hidden}.chat-title{padding:18px 22px;border-bottom:1px solid var(--line);font-weight:800}.messages{padding:24px;overflow:auto;display:flex;flex-direction:column;gap:14px}.bubble{max-width:78%;padding:13px 16px;border-radius:18px;white-space:pre-wrap}.bubble.user{align-self:flex-end;background:#174d4d}.bubble.assistant{align-self:flex-start;background:#142638;border:1px solid var(--line)}.empty{margin:auto;color:var(--muted)}#chat-form{grid-template-columns:1fr auto;padding:16px;border-top:1px solid var(--line)}textarea{resize:none;min-height:48px;max-height:120px}
dialog{border:1px solid var(--line);border-radius:22px;background:var(--panel);color:var(--text);padding:28px;width:min(460px,calc(100% - 28px))}dialog::backdrop{background:#02070dcc;backdrop-filter:blur(5px)}dialog .close{float:right;background:none;border:0;color:var(--muted);font-size:24px}#link-code{display:block;font-size:30px;letter-spacing:.08em;color:var(--gold);margin:22px 0}.hidden{display:none!important}#toast{position:fixed;right:20px;bottom:20px;background:#142638;border:1px solid var(--line);padding:12px 18px;border-radius:12px;opacity:0;transform:translateY(10px);transition:.2s}#toast.show{opacity:1;transform:none}
@media(max-width:800px){.auth-grid{grid-template-columns:1fr;gap:30px;padding:45px 0}.hero h1{font-size:44px}.workspace{grid-template-columns:1fr}.oc-list{grid-template-columns:repeat(2,1fr)}aside{min-height:auto}.chat{min-height:620px}.welcome{align-items:center}.welcome h1{font-size:28px}}
