*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #ffffff;--bg2: #f5f5f4;--bg3: #eeece8;--text: #1a1a18;--text2: #6b6b67;--text3: #9b9b96;--border: rgba(0,0,0,.12);--border2: rgba(0,0,0,.22);--radius: 8px;--radius-lg: 12px;--green-bg: #eaf3de;--green: #3b6d11;--amber-bg: #faeeda;--amber: #854f0b;--red-bg: #fcebeb;--red: #a32d2d;--blue-bg: #e6f1fb;--blue: #185fa5;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}@media (prefers-color-scheme: dark){:root{--bg: #1c1c1a;--bg2: #242422;--bg3: #2c2c2a;--text: #f0ede8;--text2: #a0a09a;--text3: #6a6a65;--border: rgba(255,255,255,.1);--border2: rgba(255,255,255,.2);--green-bg: #173404;--green: #c0dd97;--amber-bg: #412402;--amber: #fac775;--red-bg: #501313;--red: #f7c1c1;--blue-bg: #042c53;--blue: #b5d4f4}}body{font-family:var(--font);background:var(--bg3);color:var(--text);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100dvh}#root{min-height:100dvh}.card{background:var(--bg);border:.5px solid var(--border);border-radius:var(--radius-lg);padding:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:.5px solid var(--border2);border-radius:var(--radius);background:var(--bg);color:var(--text);font-size:13px;font-family:var(--font);cursor:pointer;transition:background .1s,opacity .1s;white-space:nowrap}.btn:hover{background:var(--bg2)}.btn-primary{background:var(--text);color:var(--bg);border-color:transparent}.btn-primary:hover{opacity:.88;background:var(--text)}.btn-sm{padding:5px 10px;font-size:12px}.btn-danger{background:var(--red-bg);color:var(--red);border-color:transparent}.btn-info{background:var(--blue-bg);color:var(--blue);border-color:transparent}.btn-warn{background:var(--amber-bg);color:var(--amber);border-color:transparent}input,select,textarea{font-family:var(--font);font-size:14px;padding:8px 10px;border:.5px solid var(--border2);border-radius:var(--radius);background:var(--bg);color:var(--text);width:100%;outline:none}input:focus,select:focus{border-color:var(--text2)}.badge{display:inline-block;font-size:11px;font-weight:500;padding:2px 7px;border-radius:4px;white-space:nowrap}.badge-ok{background:var(--green-bg);color:var(--green)}.badge-low{background:var(--amber-bg);color:var(--amber)}.badge-out,.badge-exp{background:var(--red-bg);color:var(--red)}.badge-warn{background:var(--amber-bg);color:var(--amber)}.badge-admin{background:var(--blue-bg);color:var(--blue)}.badge-staff{background:var(--bg2);color:var(--text2)}.metric{background:var(--bg2);border-radius:var(--radius);padding:12px 14px}.metric-label{font-size:12px;color:var(--text2);margin-bottom:4px}.metric-value{font-size:24px;font-weight:500}.panel{background:var(--bg2);border:.5px solid var(--border2);border-radius:var(--radius-lg);padding:1rem;margin-bottom:12px}.label{font-size:12px;color:var(--text2);display:block;margin-bottom:4px}.divider{border:none;border-top:.5px solid var(--border);margin:10px 0}.row{display:flex;justify-content:space-between;align-items:center}.strip{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.strip::-webkit-scrollbar{display:none}.chip{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border:.5px solid var(--border2);border-radius:20px;font-size:12px;cursor:pointer;background:var(--bg);white-space:nowrap;transition:background .1s}.chip.active{background:var(--text);color:var(--bg);border-color:transparent}.avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.hist-dot{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.lang-btn{padding:4px 8px;border:.5px solid var(--border2);border-radius:var(--radius);background:transparent;cursor:pointer;font-size:11px;font-weight:600;color:var(--text2);font-family:var(--font)}.lang-btn.active{background:var(--text);color:var(--bg);border-color:transparent}.spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--text);border-radius:50%;animation:spin .6s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.err-box{background:var(--red-bg);color:var(--red);border:.5px solid var(--red);border-radius:var(--radius);padding:10px 12px;font-size:13px;margin-bottom:12px}.empty{text-align:center;padding:3rem 0;color:var(--text2);font-size:14px}
