:root{--navy: #12263a;--ink: #1c3147;--gold: #c9a227;--cream: #f6f1e7;--paper: #fffdf8;--muted: #5d6b7a;--line: #e3d9c6;--danger: #9b2c2c;--ok: #2f6b4f;--shadow: 0 18px 40px rgba(18, 38, 58, .08)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Outfit,sans-serif;background:radial-gradient(circle at top left,#efe6d2 0,var(--cream) 42%,#eadfcb 100%);color:var(--ink)}h1,h2,h3,.brand{font-family:"Source Serif 4",serif}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:flex;flex-direction:column}.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 28px;background:var(--navy);color:#fff}.brand{font-size:1.25rem;letter-spacing:.02em}.nav a,.nav button.link{color:#f6f1e7;opacity:.9;margin-left:16px;background:none;border:0;cursor:pointer;font:inherit}.nav a.active,.nav a:hover{color:var(--gold)}.wrap{width:min(1120px,calc(100% - 32px));margin:24px auto 48px;flex:1}.hero{background:linear-gradient(135deg,var(--navy),#23415f);color:#fff;border-radius:24px;padding:48px 40px;box-shadow:var(--shadow)}.hero p{max-width:52ch;color:#e8dfcc}.grid{display:grid;gap:16px}.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.muted{color:var(--muted)}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;flex:1;min-width:160px}input,select,textarea{border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:inherit;background:#fff}textarea{min-height:110px}button,.btn{border:0;border-radius:999px;padding:10px 16px;font:inherit;cursor:pointer;background:var(--navy);color:#fff}.btn.gold{background:var(--gold);color:var(--navy);font-weight:600}.btn.ghost{background:transparent;color:var(--navy);border:1px solid var(--line)}.btn.danger{background:var(--danger)}.error{color:var(--danger)}.ok{color:var(--ok)}.table{width:100%;border-collapse:collapse;background:var(--paper)}.table th,.table td{text-align:left;padding:10px;border-bottom:1px solid var(--line)}.badge{display:inline-block;padding:3px 8px;border-radius:999px;background:#efe4c8;font-size:.75rem}.avatar{width:72px;height:72px;border-radius:16px;object-fit:cover;background:#ddd}.footer{text-align:center;color:var(--muted);padding:24px;font-size:.9rem}@media (max-width: 700px){.nav{flex-direction:column;align-items:flex-start}.hero{padding:28px 20px}}
