:root{--bg: #0f1419;--bg-elevated: #1a2332;--bg-card: #222d3d;--border: rgba(255, 255, 255, .08);--text: #e8eef7;--text-muted: #94a3b8;--accent: #3b82f6;--accent-soft: rgba(59, 130, 246, .15);--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--radius: 12px;--font: "DM Sans", system-ui, sans-serif;--font-display: "Instrument Serif", Georgia, serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(59,130,246,.25),transparent),radial-gradient(ellipse 60% 40% at 100% 0%,rgba(139,92,246,.12),transparent)}a{color:var(--accent);text-decoration:none}button,input,textarea,select{font-family:inherit}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:var(--bg-elevated);border-right:1px solid var(--border);padding:1.5rem 1rem;display:flex;flex-direction:column;gap:.5rem}.brand{font-family:var(--font-display);font-size:1.5rem;margin-bottom:1.5rem;padding:0 .5rem;line-height:1.2}.nav-link{display:block;padding:.65rem .85rem;border-radius:8px;color:var(--text-muted);transition:background .15s,color .15s}.nav-link:hover,.nav-link.active{background:var(--accent-soft);color:var(--text)}.main{padding:2rem;overflow:auto}.page-title{font-family:var(--font-display);font-size:2rem;font-weight:400;margin:0 0 .25rem}.page-sub{color:var(--text-muted);margin:0 0 1.75rem}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.btn{border:none;border-radius:8px;padding:.6rem 1rem;font-weight:600;cursor:pointer;transition:transform .1s,opacity .15s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:#fff}.btn-ghost{background:transparent;color:var(--text-muted);border:1px solid var(--border)}.btn-danger{background:var(--danger);color:#fff}.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.field label{font-size:.85rem;color:var(--text-muted)}.field input,.field textarea,.field select{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.65rem .75rem;color:var(--text)}.field input:focus,.field textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.stat{font-size:2rem;font-weight:700;color:var(--accent)}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:.75rem;border-bottom:1px solid var(--border)}.table th{color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.badge{display:inline-block;padding:.2rem .5rem;border-radius:999px;font-size:.75rem;background:var(--accent-soft);color:var(--accent)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-card{width:100%;max-width:420px}.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.diff-panel{background:var(--bg);border-radius:8px;padding:1rem;min-height:120px;font-size:.9rem;line-height:1.5}.toast{position:fixed;bottom:1.5rem;right:1.5rem;background:var(--bg-card);border:1px solid var(--border);padding:.75rem 1rem;border-radius:8px;box-shadow:0 8px 32px #0006}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;flex-wrap:wrap;border-right:none;border-bottom:1px solid var(--border)}.diff-grid{grid-template-columns:1fr}}
