@import url("https://fonts.googleapis.com/css2?family=Permanent+Marker&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&display=swap");:root{--bg:#1b1410;--bg-2:#201811;--panel:#2a2019;--line:#40332a;--text:#f5ecdd;--muted:#a6907a;--signal:#f2a93b;--signal-dim:#4a3a1e;--pink:#ff5c8a;--pink-dim:#4a1f30;--danger:#ff6b5e}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:Plus Jakarta Sans,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;background-image:radial-gradient(ellipse 800px 500px at 15% -10%,rgba(242,169,59,.1),transparent),radial-gradient(ellipse 600px 400px at 100% 20%,rgba(255,92,138,.06),transparent),repeating-linear-gradient(0deg,rgba(0,0,0,.12),rgba(0,0,0,.12) 1px,transparent 0,transparent 3px)}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.marker{font-family:Permanent Marker,cursive;font-weight:400;letter-spacing:.01em}.app{min-height:100dvh;display:flex;flex-direction:column;max-width:720px;margin:0 auto}.header{justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.brand,.header{display:flex;align-items:center}.brand{gap:10px;font-family:Permanent Marker,cursive;font-weight:400;font-size:20px;color:var(--signal);letter-spacing:.01em}.dot{width:9px;height:9px;border-radius:50%;background:var(--muted);flex-shrink:0}.dot.live{background:var(--signal);box-shadow:0 0 0 0 rgba(242,169,59,.55);animation:pulse 1.8s infinite}.dot.searching{background:var(--pink);animation:blink 1s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(242,169,59,.45)}70%{box-shadow:0 0 0 9px rgba(242,169,59,0)}to{box-shadow:0 0 0 0 rgba(242,169,59,0)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}.status-label{font-size:12px;color:var(--muted);text-transform:lowercase;letter-spacing:.04em}.main{min-height:0}.idle-screen,.main{flex:1 1;display:flex;flex-direction:column}.idle-screen{align-items:center;justify-content:center;gap:22px;padding:40px 24px;text-align:center}.idle-title{font-family:Permanent Marker,cursive;font-weight:400;font-size:32px;line-height:1.25;max-width:380px;color:var(--text);text-shadow:0 0 24px rgba(242,169,59,.18)}.idle-sub{color:var(--muted);font-size:14px;max-width:340px;line-height:1.6}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;cursor:pointer;border-radius:8px;padding:14px 28px;font-size:15px;font-weight:700;font-family:inherit;transition:transform .08s ease,opacity .15s ease}.btn:active{transform:scale(.97)}.btn-primary{background:var(--signal);color:#201305}.btn-primary:disabled{opacity:.5;cursor:default}.btn-ghost{background:transparent;border:1px solid var(--line);color:var(--text)}.btn-danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.tuner{width:220px;height:56px;position:relative;border:2px solid var(--line);border-radius:6px;background:repeating-linear-gradient(90deg,var(--line) 0 2px,transparent 2px 12px),var(--panel);overflow:hidden}.tuner:before{content:"";position:absolute;top:0;bottom:0;width:3px;background:var(--pink);box-shadow:0 0 12px 1px var(--pink);animation:tuner-sweep 1.9s ease-in-out infinite}@keyframes tuner-sweep{0%{left:2%}50%{left:94%}to{left:2%}}.messages{flex:1 1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:10px}.msg{max-width:78%;padding:10px 13px;border-radius:12px;font-size:14.5px;line-height:1.45;word-wrap:break-word;white-space:pre-wrap}.msg.me{align-self:flex-end;background:var(--signal-dim);border:1px solid rgba(242,169,59,.28);border-bottom-right-radius:3px}.msg.them{align-self:flex-start;background:var(--panel);border:1px solid var(--line);border-bottom-left-radius:3px}.msg.system{align-self:center;color:var(--muted);font-size:12px;background:transparent;border:none;font-family:JetBrains Mono,monospace}.typing-row{align-self:flex-start;display:flex;gap:4px;padding:10px 13px}.typing-row span{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:typing-bounce 1.2s infinite}.typing-row span:nth-child(2){animation-delay:.15s}.typing-row span:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.composer{display:flex;gap:10px;padding:14px 16px;border-top:1px solid var(--line);align-items:center}.composer input{flex:1 1;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:12px 14px;font-size:14.5px;font-family:inherit;outline:none}.composer input:focus{border-color:var(--signal)}.composer .send{width:44px;height:44px;border-radius:8px;background:var(--signal);color:#201305;border:none;cursor:pointer;flex-shrink:0;font-size:16px;display:flex;align-items:center;justify-content:center}.footer-actions{display:flex;gap:8px;padding:0 16px 14px}.footer-actions .btn{flex:1 1;padding:11px;font-size:13px}.auth-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px}.auth-card{width:100%;max-width:380px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:32px 28px}.auth-title{font-family:Permanent Marker,cursive;font-weight:400;font-size:26px;margin:0 0 6px;color:var(--signal)}.auth-sub{color:var(--muted);font-size:13.5px;margin:0 0 24px;line-height:1.5}.field{margin-bottom:16px}.field label{display:block;font-size:12.5px;color:var(--muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em}.field input{width:100%;background:var(--bg);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:11px 13px;font-size:14.5px;font-family:inherit;outline:none}.field input:focus{border-color:var(--signal)}.btn-block{width:100%;margin-top:4px}.auth-error{background:rgba(255,107,94,.12);border:1px solid rgba(255,107,94,.32);color:var(--danger);border-radius:8px}.auth-error,.auth-success{font-size:13px;padding:10px 12px;margin-bottom:16px}.auth-success{background:rgba(242,169,59,.12);border:1px solid rgba(242,169,59,.32);color:var(--signal);border-radius:8px}.auth-links{display:flex;justify-content:space-between;margin-top:18px;font-size:13px}.auth-links a{color:var(--muted);text-decoration:none}.auth-links a:hover{color:var(--signal)}.admin-shell{min-height:100dvh;max-width:1000px;margin:0 auto;padding:0 20px 60px}.admin-nav{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);margin-bottom:24px}.admin-nav-links{display:flex;gap:18px;font-size:13.5px}.admin-nav-links a{color:var(--muted);text-decoration:none}.admin-heading,.admin-nav-links a.active{color:var(--text)}.admin-heading{font-family:Plus Jakarta Sans,sans-serif;font-weight:800;font-size:20px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin-bottom:32px}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:16px}.stat-value{font-size:26px;font-weight:700;font-family:JetBrains Mono,monospace;color:var(--signal)}.stat-label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin-top:4px}.admin-toolbar{display:flex;gap:10px;margin-bottom:16px}.admin-toolbar input{flex:1 1;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:8px;padding:10px 13px;font-size:14px;font-family:inherit;outline:none}.user-table{width:100%;border-collapse:collapse;font-size:13.5px}.user-table th{text-align:left;color:var(--muted);font-weight:500;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;padding:10px 12px}.user-table td,.user-table th{border-bottom:1px solid var(--line)}.user-table td{padding:12px;vertical-align:middle}.badge{display:inline-block;padding:3px 8px;border-radius:100px;font-size:11px;font-weight:700;text-transform:lowercase;letter-spacing:.02em}.badge.admin{background:rgba(242,169,59,.16);color:var(--signal)}.badge.user{background:hsla(0,0%,100%,.08);color:var(--muted)}.badge.banned{background:rgba(255,107,94,.16);color:var(--danger)}.row-actions{display:flex;gap:6px}.icon-btn{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:6px;padding:5px 10px;font-size:12px;cursor:pointer;font-family:inherit}.icon-btn:hover{color:var(--text);border-color:var(--muted)}.icon-btn.danger:hover{color:var(--danger);border-color:var(--danger)}.pagination{display:flex;justify-content:center;gap:12px;align-items:center;margin-top:20px;font-size:13px;color:var(--muted)}