:root{color-scheme:light;--bg: #f4f6f8;--bg-elevated: #ffffff;--bg-soft: #e8eef4;--border: #d5dde6;--text: #1a2330;--text-muted: #5c6b7a;--accent: #1f6feb;--accent-dim: #1558c0;--success: #1a7f4b;--danger: #c62828;--warning: #b86e00;--radius: 10px;--font: "Segoe UI", "IBM Plex Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", "Cascadia Code", ui-monospace, monospace}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:radial-gradient(1200px 600px at 10% -10%,#dbe7f5 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#e6eef6 0%,transparent 50%),var(--bg);color:var(--text);font-family:var(--font)}a{color:var(--accent);text-decoration:none}button,input,select,textarea{font:inherit;color-scheme:light}.app-shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--border);background:#ffffffeb;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1.5rem}.brand{font-size:1.15rem;font-weight:700;letter-spacing:-.02em}.brand span{display:block;color:var(--text-muted);font-size:.75rem;font-weight:500;margin-top:.2rem}.nav{display:flex;flex-direction:column;gap:.35rem}.nav a{color:var(--text-muted);padding:.55rem .75rem;border-radius:8px}.nav a.active,.nav a:hover{background:var(--bg-soft);color:var(--text)}.main{padding:1.5rem 2rem 3rem}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem}h1{margin:0;font-size:1.5rem;letter-spacing:-.02em}.muted{color:var(--text-muted)}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.15rem;box-shadow:0 1px 2px #1a23300a}.grid{display:grid;gap:1rem}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border)}.grid-2{grid-template-columns:1fr}}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.65rem .5rem;border-bottom:1px solid var(--border);font-size:.92rem}th{color:var(--text-muted);font-weight:600}.btn{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);border-radius:8px;padding:.5rem .85rem;cursor:pointer}.btn:hover{border-color:var(--accent-dim);background:var(--bg-soft)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary:hover{background:var(--accent-dim);border-color:var(--accent-dim)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}.btn-success{background:transparent;border-color:var(--success);color:var(--success)}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.85rem}.field label{font-size:.8rem;color:var(--text-muted)}.field input,.field select,.field textarea{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--text);padding:.55rem .7rem}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid rgba(31,111,235,.25);border-color:var(--accent)}.field textarea{min-height:90px;resize:vertical}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;border:1px solid var(--border);color:var(--text-muted);background:var(--bg-soft)}.badge-open{border-color:#9ec0f5;color:var(--accent);background:#eaf2ff}.badge-ok{border-color:#9ed4b5;color:var(--success);background:#eaf7f0}.badge-warn{border-color:#efc98a;color:var(--warning);background:#fff6e5}.login-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(400px,100%)}.error{color:var(--danger);font-size:.9rem;margin:.5rem 0}.row-actions{display:flex;gap:.4rem;flex-wrap:wrap}.secret-box{font-family:var(--mono);background:#fffaf0;border:1px dashed var(--warning);padding:.75rem;border-radius:8px;word-break:break-all;color:var(--text)}.stack{display:flex;flex-direction:column;gap:1rem}code{font-family:var(--mono);font-size:.85em;background:var(--bg-soft);padding:.1em .35em;border-radius:4px}
