:root{color-scheme:dark;--bg:#080d18;--panel:#101827;--line:#26354b;--cyan:#40e4e0;--muted:#899bb1;--purple:#a58bff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#edf4ff;font:15px system-ui,-apple-system,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer;background:#162235;border:1px solid var(--line);border-radius:10px;color:#e5efff;padding:10px 14px}button:hover{border-color:var(--cyan)}button:disabled{opacity:.5;cursor:wait}input,textarea,select{background:#0a1220;border:1px solid var(--line);color:#edf4ff;border-radius:10px;padding:12px;width:100%;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--cyan);box-shadow:0 0 0 2px #40e4e018}label{display:block;color:var(--muted);font-size:13px;margin:16px 0}label input,label select{margin-top:7px}.primary{background:linear-gradient(120deg,#42e3df,#88bcff);color:#07131f;border:0;font-weight:750}.subtle{background:transparent;border:0;color:var(--muted)}[hidden]{display:none!important}#auth{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(ellipse at 25% 20%,#17374b77,transparent 45%),radial-gradient(ellipse at 85% 80%,#35224c66,transparent 45%)}.auth-card{width:min(440px,92vw);padding:35px;border:1px solid var(--line);background:#101827d9;border-radius:24px;box-shadow:0 24px 100px #0006}.mark{font-weight:900;font-size:40px;color:var(--cyan);letter-spacing:-5px}.mark span{color:var(--purple)}.small{font-size:28px}h1{font-size:46px;line-height:1.1;letter-spacing:-2px;margin:20px 0}h1 span{color:var(--cyan)}.eyebrow,.section-label,small,.chat-bottom,.footnote{font-size:10px;letter-spacing:1.4px;color:var(--muted)}.eyebrow{color:var(--cyan)}.muted{color:var(--muted)}#authSubmit{width:100%;margin-top:10px}#switchAuth{display:block;margin:14px auto}.footnote{text-align:center}#shell{height:100dvh;display:grid;grid-template-columns:300px 1fr}aside{background:#0e1624;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:24px 16px;overflow:auto}aside header{display:flex;align-items:center;gap:14px;padding:0 8px 22px}aside small{display:block;margin-top:6px;font-size:8px}.profile{display:flex;align-items:center;justify-content:space-between;background:#152034;border-radius:12px;padding:8px 12px;font-size:13px}.nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0}.nav-actions button{font-size:12px;padding:10px 5px}.nav-actions button:last-child{grid-column:1/-1}.section-label{padding:8px}#rooms{flex:1}#rooms button{display:flex;flex-direction:column;text-align:left;width:100%;border:1px solid transparent;background:transparent;margin:5px 0;padding:14px;gap:5px}#rooms button.active{border-color:#3bdedb55;background:#17313f;color:var(--cyan)}#rooms button span{font-size:10px;color:var(--muted)}footer{padding-top:20px;font-size:11px;color:var(--muted)}.dot{display:inline-block;width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 10px var(--cyan)}main{min-width:0;display:flex;flex-direction:column;background:radial-gradient(ellipse at 70% 0,#1c2c4033,transparent 60%)}.chat-header{display:flex;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding:20px 30px;min-height:85px}.chat-header h2{margin:0 0 4px;font-size:19px}.header-actions{margin-left:auto;display:flex;gap:8px}.header-actions button{font-size:12px}#messages{flex:1;overflow:auto;padding:25px 32px;scroll-behavior:smooth}.welcome{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.welcome h2{color:#e2efff}.orb{width:100px;height:100px;display:grid;place-items:center;font-size:50px;border:1px solid #40e4e055;border-radius:28px;transform:rotate(-8deg);color:var(--cyan);background:linear-gradient(135deg,#40e4e018,#a58bff18);box-shadow:0 0 70px #40e4e010}.message{display:flex;gap:12px;margin-bottom:24px}.avatar{flex-shrink:0;background:#1e354b;border:1px solid #3d5369;color:var(--cyan);width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-weight:700}.message-content{max-width:min(750px,90%)}.message-head{display:flex;align-items:center;gap:12px;margin-bottom:7px;font-size:13px}.message-head time{font-size:10px;color:var(--muted)}.message-head button{font-size:10px;padding:2px 6px;opacity:.6}.message-body{white-space:pre-wrap;overflow-wrap:anywhere;background:#142033;border:1px solid #23344b;padding:12px 16px;border-radius:0 14px 14px 14px;line-height:1.6}.message.own .message-body{background:#123038;border-color:#245258}#composer{display:flex;align-items:center;gap:12px;padding:16px 30px}#composer textarea{resize:none}#composer button{height:48px;width:55px}.chat-bottom{display:flex;justify-content:space-between;padding:0 30px 15px;font-size:8px}#join{margin:20px}dialog{width:min(720px,94vw);max-height:85dvh;overflow:auto;background:var(--panel);color:#edf4ff;border:1px solid #375069;border-radius:18px;padding:24px}dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}dialog header{display:flex;justify-content:space-between;align-items:center}dialog h2{font-size:20px;margin:0}dialog form{margin-top:15px}.row{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.row .grow{flex:1;min-width:0;overflow-wrap:anywhere}.row small{display:block;letter-spacing:0;margin-top:5px}.row button{font-size:11px}.stats{display:flex;gap:12px;padding:16px 0;color:var(--cyan)}#toast{position:fixed;top:15px;left:50%;transform:translateX(-50%);z-index:100;background:#1f344a;border:1px solid var(--cyan);padding:14px 22px;border-radius:12px;max-width:92vw;display:none}#mobileMenu{display:none}#modalBody p{overflow-wrap:anywhere}.empty{color:var(--muted);text-align:center;padding:30px}@media(max-width:760px){#shell{grid-template-columns:1fr}aside{display:none;position:fixed;inset:0 18% 0 0;z-index:20;box-shadow:30px 0 100px #000b}body.menu aside{display:flex}#mobileMenu{display:block}.chat-header{padding:14px 12px;gap:10px}.chat-header h2{font-size:16px}.header-actions{flex-direction:column;gap:4px}.header-actions button{padding:6px;font-size:10px}#messages{padding:18px 12px}#composer{padding:12px}.chat-bottom{padding:0 12px 12px}.chat-bottom span{display:none}.message-content{max-width:calc(100% - 50px)}.auth-card{padding:26px}.row{flex-wrap:wrap}.stats{font-size:12px}}
