:root{--navy: #0b2447;--teal: #19a7a0;--ink: #1a2233;--muted: #64748b;--line: #e2e8f0;--bg: #f7f9fc;--danger: #c0392b;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--bg)}.muted{color:var(--muted)}.error{color:var(--danger)}.auth-card{max-width:360px;margin:10vh auto;padding:2rem;background:#fff;border:1px solid var(--line);border-radius:12px}.auth-card h1{margin:0 0 .25rem;color:var(--navy)}.auth-card form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;color:var(--muted)}input,select{padding:.6rem;border:1px solid var(--line);border-radius:8px;font-size:1rem}button{padding:.65rem 1rem;background:var(--teal);color:#fff;border:0;border-radius:8px;font-size:1rem;cursor:pointer}button:disabled{opacity:.6;cursor:default}button.link{background:none;color:var(--muted);padding:.25rem .5rem}.app{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.sidebar{background:var(--navy);color:#cbd5e1;padding:1rem}.sidebar .brand{font-weight:700;color:#fff;padding:.5rem;margin-bottom:1rem}.sidebar nav{display:flex;flex-direction:column;gap:.15rem}.sidebar a{color:#cbd5e1;text-decoration:none;padding:.5rem;border-radius:8px}.sidebar a.active,.sidebar a:hover{background:#ffffff1a;color:#fff}.topbar{display:flex;align-items:center;gap:1rem;padding:.75rem 1.5rem;border-bottom:1px solid var(--line);background:#fff}.topbar .spacer{flex:1}.content{padding:2rem}.grid{border-collapse:collapse;width:100%;max-width:640px;margin:.5rem 0 1.5rem}.grid th,.grid td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--line);font-size:.9rem}.grid th{color:var(--muted);font-weight:600}.inline-form{display:flex;gap:.5rem;align-items:center;margin:.5rem 0 1rem;flex-wrap:wrap}.inline-form input,.inline-form select{width:auto;min-width:8rem}.inline-form button{padding:.55rem .9rem}h3{margin-top:1.5rem;color:var(--navy)}.checkbox{flex-direction:row;align-items:center;gap:.35rem}.checkbox input{min-width:auto;width:auto}.panel{border:1px solid var(--line);border-radius:10px;padding:1rem;margin-top:1rem;background:#fff}.panel h4{margin:0 0 .5rem}.wizard{max-width:420px}.wizard label{margin-bottom:.75rem}.review{padding:.75rem;background:#f1f5f9;border-radius:8px;margin:.5rem 0 1rem;font-size:.9rem}
