:root{--bg: #ffffff;--surface: #f7f7f8;--border: #e3e3e6;--text: #16161a;--muted: #6b6b76;--accent: #2f7de1;--error: #c0392b;--ok: #1f7a45;--warn: #a35c00;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}@media(prefers-color-scheme:dark){:root{--bg: #121215;--surface: #1b1b20;--border: #2c2c33;--text: #ececf1;--muted: #9a9aa6;--accent: #5c9cf5;--error: #ff6b5e;--ok: #4ec98a;--warn: #e0a33e}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}h1{font-size:1.5rem;margin:0 0 .75rem}h2{font-size:1.05rem;margin:0 0 .75rem}a{color:var(--accent)}code{background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:.05em .35em;font-size:.9em}.centered{min-height:100dvh;display:grid;place-items:center;padding:1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;max-width:34rem;width:100%;margin-bottom:1.25rem}.muted{color:var(--muted)}.hint{color:var(--muted);font-size:.875rem}.error{color:var(--error)}.ok{color:var(--ok)}.warn{color:var(--warn)}button{font:inherit;padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border);background:var(--accent);color:#fff;cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}.link-button{background:none;border:none;color:var(--accent);padding:0;text-decoration:underline}input{font:inherit;padding:.5rem .65rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);flex:1;min-width:0}.row{display:flex;gap:.5rem;align-items:center}hr{border:none;border-top:1px solid var(--border);margin:1.25rem 0}.shell-header{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid var(--border);background:var(--surface)}.shell-nav{display:flex;gap:1rem}.shell-nav a{text-decoration:none;color:var(--muted)}.shell-nav a.active{color:var(--text);font-weight:600}.shell-user{display:flex;align-items:center;gap:.6rem;font-size:.9rem}.avatar{width:26px;height:26px;border-radius:50%}.badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;padding:.1rem .4rem;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.shell-main{max-width:52rem;margin:0 auto;padding:1.5rem 1.25rem 3rem}.shell-main .card{max-width:none}.kv{display:grid;grid-template-columns:minmax(8rem,max-content) 1fr;gap:.35rem 1rem;margin:0 0 .75rem}.kv dt{color:var(--muted)}.kv dd{margin:0}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.875rem}th,td{text-align:left;padding:.4rem .6rem;border-bottom:1px solid var(--border);white-space:nowrap}th{color:var(--muted);font-weight:500}.tg-login{margin:1.25rem 0 0}.field{margin-bottom:1rem}.field label{display:block;margin-bottom:.25rem;font-size:.9rem}.field .hint{margin:.15rem 0 .35rem}select,textarea{font:inherit;padding:.5rem .65rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);width:100%}textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.875rem}.field input[type=checkbox]{width:auto;flex:none}.checkbox-list{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.checkbox-row{display:flex;align-items:center;gap:.35rem;font-size:.9rem}.checkbox-row input{width:auto;flex:none}.row .field{flex:1;margin-bottom:0}.admin-links{list-style:none;padding:0;margin:0;display:grid;gap:.75rem}.admin-links li{display:flex;flex-direction:column}.knowledge-body{white-space:pre-wrap;word-break:break-word;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.75rem;font-size:.875rem;max-height:18rem;overflow:auto}.bars{display:grid;gap:.3rem}.bar-row{display:grid;grid-template-columns:6rem 1fr 3rem;align-items:center;gap:.5rem;font-size:.8rem}.bar-label{color:var(--muted)}.bar-track{background:var(--border);border-radius:4px;height:.6rem;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--accent)}.bar-value{text-align:right;color:var(--muted)}.button-link{display:inline-block;padding:.6rem 1.1rem;border-radius:8px;background:var(--accent);color:#fff;text-decoration:none;font-weight:500}.button-link:hover{filter:brightness(1.08)}
