:root{--bg: #f5f6f8;--surface: #ffffff;--text: #16181d;--muted: #5f6673;--border: #e3e6eb;--accent: #1f5eff;--accent-text: #ffffff;--danger: #c62828;--ok-bg: #e6f4ea;--ok-text: #1e6b35;--off-bg: #f1f2f4;--off-text: #5f6673;--radius: 10px;color-scheme:light}:root[data-theme=dark]{--bg: #0f1115;--surface: #171a21;--text: #e8eaee;--muted: #9aa1ad;--border: #2a2f3a;--accent: #5b8cff;--accent-text: #0b0d12;--danger: #ff6b6b;--ok-bg: #173323;--ok-text: #7fd69b;--off-bg: #232733;--off-text: #9aa1ad;color-scheme:dark}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5;background:var(--bg);color:var(--text)}h1{font-size:22px;margin:0 0 4px}h2{font-size:16px;margin:0 0 12px}.muted{color:var(--muted)}.error{color:var(--danger);margin:8px 0}button{font:inherit;border-radius:8px;padding:8px 14px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}button.danger{background:var(--danger);border-color:var(--danger);color:#fff}button.ghost{background:transparent}input,select{font:inherit;width:100%;padding:9px 12px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}label{display:grid;gap:6px;font-weight:500}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:16px}.center-screen{min-height:100vh;display:grid;place-items:center}.brand{display:flex;align-items:center;gap:8px;font-weight:700}.brand-mark{background:var(--accent);color:var(--accent-text);border-radius:6px;padding:2px 6px;font-size:13px}.login-page{min-height:100vh;display:grid;place-items:center;padding:16px}.login-card{width:100%;max-width:400px;display:grid;gap:14px}.login-brand{margin-bottom:8px}.shell{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:20px 12px}.sidebar .brand{padding:0 8px 20px}.sidebar nav{display:grid;gap:2px}.nav-link{display:block;padding:9px 12px;border-radius:8px;color:var(--text);text-decoration:none}.nav-link:hover{background:var(--bg)}.nav-link.active{background:var(--bg);color:var(--accent);font-weight:600}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:8px;padding:10px 20px;border-bottom:1px solid var(--border);background:var(--surface)}.spacer{flex:1}.user-chip{font-weight:600;padding:0 8px}.menu-btn{display:none}.content{padding:24px;max-width:1200px;width:100%}.page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:16px 0}.stat{margin:0;display:grid;gap:4px}.stat strong{font-size:28px}.tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px}.tags li{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:2px 8px;font-size:13px;font-family:ui-monospace,monospace}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.form-grid h2,.form-grid .form-note,.form-grid .error{grid-column:1 / -1}.search{max-width:320px;margin-bottom:12px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}th{font-size:13px;color:var(--muted);font-weight:600}td.actions{text-align:right}.action-group{display:inline-flex;gap:6px}.badge{border-radius:999px;padding:2px 10px;font-size:13px}.badge.ok{background:var(--ok-bg);color:var(--ok-text)}.badge.off{background:var(--off-bg);color:var(--off-text)}.empty{text-align:center;padding:24px 0}@media(max-width:800px){.sidebar{position:fixed;inset:0 auto 0 0;z-index:10;transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:none}.menu-btn{display:inline-block}.content{padding:16px}.user-chip,table.responsive thead{display:none}table.responsive,table.responsive tbody,table.responsive tr,table.responsive td{display:block;width:100%}table.responsive tr{border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;margin-bottom:10px}table.responsive td{border:none;padding:4px 0;white-space:normal;overflow-wrap:anywhere;display:flex;justify-content:space-between;gap:12px}table.responsive td[data-label]:before{content:attr(data-label);color:var(--muted);font-size:13px;flex-shrink:0}table.responsive td.actions{justify-content:flex-end}table.responsive td.actions:empty,table.responsive td.actions:has(.action-group:empty){display:none}.search{max-width:none}}.button-link{display:inline-block;text-align:center;text-decoration:none;border-radius:8px;padding:8px 14px}a.primary{background:var(--accent);color:var(--accent-text);font-weight:600}.link-box{display:grid;gap:8px;border:1px dashed var(--accent);border-radius:var(--radius);padding:14px;margin-bottom:16px;background:var(--surface)}.link-box code{overflow-wrap:anywhere;font-size:13px}.link-box .row{display:flex;gap:8px;flex-wrap:wrap}.mfa-card{max-width:440px}.qr{display:block;margin:4px auto;background:#fff;padding:8px;border-radius:8px}.small{font-size:13px}.recovery-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 24px;font-family:ui-monospace,monospace;font-size:15px;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px 12px 12px 36px;margin:0}.row-buttons{display:flex;gap:8px;flex-wrap:wrap}.ghost-link{border:1px solid var(--border);color:var(--text)}label.check{display:flex;align-items:flex-start;gap:8px;font-weight:400}label.check input{width:auto;margin-top:4px}
