
:root{--lcd:#c4d878;--ink:#24321b;--edge:#080a0d;--gold:#f9b923}*{box-sizing:border-box}body{margin:0;min-height:100dvh;display:grid;place-items:center;background:radial-gradient(circle at 50% 20%,#333a43,#11151b 75%);font-family:Arial,sans-serif;padding:20px}.pager{width:min(100%,480px);background:linear-gradient(130deg,#30343c,#0b0d12 60%,#252830);border:2px solid #51545b;border-radius:23px;box-shadow:0 18px 65px #000b,inset 0 2px 3px #ffffff25;padding:12px 12px 14px}.head{display:flex;align-items:center;gap:10px;color:white;padding:0 2px 10px}.led{width:9px;height:9px;border-radius:50%;background:#b6a13a;box-shadow:0 0 5px #ffdb48}.brand{font-size:17px;letter-spacing:2px;font-weight:900}.sub{font-size:10px;color:#aeb1b8;letter-spacing:.3px}.speaker{flex:1;height:18px;background:radial-gradient(circle,#030406 1.5px,transparent 2px) 0 0/7px 6px;opacity:.85}.close{border:1px solid #565c68;border-radius:50%;background:#292e38;color:#c7c9ce;width:26px;height:26px;cursor:pointer}.screen-frame{background:#050709;border:1px solid #5c6064;border-radius:14px;padding:7px;box-shadow:inset 0 0 0 2px #000}.screen{height:min(65dvh,570px);min-height:330px;overflow-y:auto;background:linear-gradient(130deg,#c9db7b,#b9ce6d);border:3px solid #2b3922;border-radius:7px;box-shadow:inset 0 0 25px #74883e88;color:var(--ink);font:21px/1.05 'VT323',monospace;padding:10px 9px;scrollbar-color:#839b50 transparent}.msg{display:flex;flex-direction:column;margin-bottom:12px;max-width:90%;width:max-content;overflow-wrap:anywhere}.msg.mine{margin-left:auto;align-items:flex-end}.msg.theirs{margin-right:auto;align-items:flex-start}.meta{font-size:15px;margin:0 2px 2px}.bubble{padding:4px 8px;line-height:1.05;max-width:100%;white-space:pre-wrap}.mine .bubble{background:#26391c;color:#e4f2a0;box-shadow:2px 2px 0 #839952}.theirs .bubble{background:transparent;color:#25351c;padding-left:0}.typing{font-size:17px;opacity:.7}.compose{display:flex;gap:6px;margin-top:10px}.compose input{flex:1;min-width:0;background:#12151a;border:1px solid #d6a02c;border-radius:9px;color:#f5f5f5;font:20px 'VT323',monospace;padding:9px 11px;outline:none}.compose input:focus{box-shadow:0 0 0 2px #d6a02c55}.compose button{border:1px solid #ffce64;border-radius:9px;background:linear-gradient(#ffd35d,#f5a713);font-weight:bold;color:#302109;padding:0 18px;cursor:pointer}.compose button:hover{filter:brightness(1.1)}.foot{display:flex;justify-content:space-between;align-items:center;margin:12px 3px 0;color:#b7bac1;font-size:12px}.foot button{background:none;border:none;color:#b7bac1;cursor:pointer;font-size:12px}.status{display:flex;align-items:center;gap:5px}.dot{width:7px;height:7px;border-radius:50%;background:#d9aa35}@media(max-width:480px){body{padding:7px}.pager{border-radius:17px}.screen{height:calc(100dvh - 190px);min-height:300px}}

.auth{max-width:440px;margin:auto;background:#161a20;color:#f1f1f1;padding:28px;border-radius:18px;border:1px solid #41454d}
.auth h1{margin:0 0 8px;letter-spacing:2px}.auth p{color:#bec3c8}
.auth label{display:block;margin:15px 0 6px}.auth input,.auth select{width:100%;padding:12px;border-radius:8px;border:1px solid #555;background:#292d34;color:white;font-size:16px}
.auth button,.toolbar button{background:#f8b92d;border:0;border-radius:8px;padding:10px 15px;font-weight:bold;cursor:pointer}
.auth a{color:#f8c65c}.error{color:#ff9b9b}.toolbar{display:flex;gap:7px;align-items:center;justify-content:space-between;margin:0 0 9px;color:#e9e9e9;font-size:12px;flex-wrap:wrap}
.toolbar select{background:#20242a;color:#fff;border:1px solid #626872;padding:7px;border-radius:7px}
.toolbar button{font-size:11px;padding:8px}.layout{width:min(100%,480px)}

.app-layout{display:flex;gap:18px;align-items:flex-start;width:min(100%,850px);margin:auto}.app-layout .layout{flex:1;min-width:0}.sidebar{width:190px;flex-shrink:0;background:#1b1e24;color:#e9ecf0;border-radius:12px;padding:15px;max-height:85vh;overflow:auto}.sidebar h2{margin:0 0 20px;letter-spacing:3px}.sideheading{font-size:11px;letter-spacing:1px;color:#a9b5c2;margin:15px 0 7px}.sidebar button{display:block;width:100%;text-align:left;background:transparent;border:0;color:#e6ebee;padding:8px 5px;cursor:pointer;border-radius:5px;overflow-wrap:anywhere}.sidebar button:hover{background:#343b45}.sidebar button:disabled{opacity:.7;cursor:default}.toolbar a{color:#ffd367}.delete-msg{border:0;background:transparent;color:#4c6252;cursor:pointer;margin-left:6px}.msg{position:relative}@media(max-width:640px){.app-layout{display:block}.sidebar{width:100%;max-height:150px;overflow:auto;margin-bottom:12px}.sidebar #users,.sidebar #rooms{display:flex;gap:5px;flex-wrap:wrap}.sidebar button{width:auto;font-size:12px}.sidebar h2{display:none}}

.admin-page{max-width:900px;margin:auto;background:#1b1e24;color:#fff;padding:25px;border-radius:12px}.admin-page a{color:#ffd367}.admin-page input,.admin-page button{padding:9px;margin:3px;border-radius:6px}.admin-page button{cursor:pointer}.tablewrap{overflow:auto}.admin-page table{border-collapse:collapse;width:100%}.admin-page th,.admin-page td{border-bottom:1px solid #555;padding:8px;text-align:left}
