:root{color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--bg: #f4f6f9;--surface: #fff;--text: #1a2332;--muted: #5c6b7a;--brand: #1f3a5f;--brand-light: #2d5080;--border: #d8dee6;--danger: #b42318}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{color:var(--brand-light)}.app-shell{display:flex;min-height:100vh}.app-nav{width:240px;background:var(--brand);color:#fff;padding:1rem 0;flex-shrink:0}.app-nav h1{font-size:1rem;margin:0 1rem 1rem;font-weight:600}.app-nav a{display:block;padding:.55rem 1rem;color:#ffffffeb;text-decoration:none}.app-nav a.active,.app-nav a:hover{background:#ffffff1f}.app-main{flex:1;padding:1.5rem 2rem}.page-title{margin:0 0 1rem;font-size:1.35rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}table.data{width:100%;border-collapse:collapse;font-size:.92rem}table.data th,table.data td{border-bottom:1px solid var(--border);padding:.5rem .65rem;text-align:left}table.data th{color:var(--muted);font-weight:600}.muted{color:var(--muted)}.error{color:var(--danger)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem}.login-form{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.login-form label{display:block;margin-bottom:.35rem;font-size:.9rem}.login-form input{width:100%;padding:.5rem .65rem;margin-bottom:.85rem;border:1px solid var(--border);border-radius:6px}.login-form button{width:100%;padding:.65rem;background:var(--brand);color:#fff;border:none;border-radius:6px;font-size:1rem;cursor:pointer}.login-form button:hover{background:var(--brand-light)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.stat{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.85rem 1rem}.stat strong{display:block;font-size:1.25rem}.toolbar{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.toolbar button{padding:.45rem .85rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);cursor:pointer}.toolbar button.primary{background:var(--brand);color:#fff;border-color:var(--brand)}
