:root{color-scheme:dark;--bg: #0f1115;--surface: #1b1e24;--surface-2: #232730;--text: #f5f5f7;--muted: #b6b9c0;--faint: #8b8f98;--accent: #e8843a;--accent-soft: rgba(232, 132, 58, .15);--green: #34c759;--red: #e74c3c;--blue: #5aaeff;--divider: rgba(255, 255, 255, .08);--radius: 14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}.app-shell{display:flex;min-height:100vh}.sidebar{width:230px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--divider);padding:20px 14px;display:flex;flex-direction:column;gap:4px}.sidebar .brand{font-size:18px;font-weight:700;padding:8px 12px 18px}.sidebar .brand .accent{color:var(--accent)}.nav-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--muted);font-size:14.5px;font-weight:500;cursor:pointer}.nav-link:hover{background:var(--surface-2);color:var(--text)}.nav-link.active{background:var(--accent-soft);color:var(--accent)}.sidebar .spacer{flex:1}.sidebar .signout{color:var(--faint);font-size:13px;padding:10px 12px;cursor:pointer}.sidebar .signout:hover{color:var(--red)}.main{flex:1;min-width:0;padding:28px 32px;max-width:1100px}.page-title{font-size:24px;font-weight:700;margin:0 0 4px;letter-spacing:-.4px}.page-sub{color:var(--faint);font-size:14px;margin:0 0 24px}.card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius);padding:18px 20px}.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media(max-width:720px){.grid-2,.grid-4{grid-template-columns:1fr}}.metric .label{color:var(--faint);font-size:12.5px}.metric .value{font-size:26px;font-weight:700;margin-top:4px}.row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--divider)}.row:last-child{border-bottom:none}.row .grow{flex:1;min-width:0}.row .title{font-weight:600;font-size:14.5px}.row .sub{color:var(--faint);font-size:12.5px;margin-top:2px}button{font-family:inherit;cursor:pointer;border:none;border-radius:10px;font-weight:600}.btn{padding:9px 16px;font-size:14px;background:var(--accent);color:#1a0e05}.btn:disabled{opacity:.5;cursor:default}.btn-ghost{background:var(--surface-2);color:var(--text);border:1px solid var(--divider)}.btn-sm{padding:6px 12px;font-size:13px}.btn-danger{background:var(--red);color:#fff}.pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.pill-green{background:#34c75929;color:var(--green)}.pill-orange{background:var(--accent-soft);color:var(--accent)}.pill-red{background:#e74c3c29;color:var(--red)}.pill-blue{background:#5aaeff29;color:var(--blue)}.pill-muted{background:var(--surface-2);color:var(--muted)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field label{font-size:13px;color:var(--muted)}.field input,.field textarea,.field select{background:var(--surface-2);border:1px solid var(--divider);color:var(--text);border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit}.field-row{display:flex;gap:8px;align-items:center}.banner{padding:12px 16px;border-radius:10px;font-size:14px;margin-bottom:16px;display:flex;gap:8px}.banner-error{background:#e74c3c1f;color:#ff9b8f}.banner-ok{background:#34c7591f;color:#7be29a}.settings-section{background:var(--surface-2);border:1px solid var(--divider);border-left-width:4px;border-radius:12px;padding:14px 16px;margin-bottom:14px}.settings-group{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--faint);margin:0 0 12px}.center-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{width:100%;max-width:380px}.muted{color:var(--muted)}.spinner{color:var(--accent)}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.search{flex:1;min-width:180px}.toolbar input,.toolbar select,.toolbar .btn{height:40px;box-sizing:border-box;margin:0}.toolbar input{background:var(--surface-2);border:1px solid var(--divider);color:var(--text);border-radius:10px;padding:0 12px;font-size:14px;font-family:inherit}.toolbar select{background:var(--surface-2);border:1px solid var(--divider);color:var(--text);border-radius:10px;padding:0 34px 0 12px;font-size:14px;font-family:inherit;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23b6b9c0' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto}.modal{background:var(--bg);border:1px solid var(--divider);border-radius:var(--radius);padding:22px 24px;width:100%;max-width:620px}
