@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{--navy:#062652;--navy-deep:#031a39;--blue:#0b5ad7;--blue-soft:#edf4ff;--yellow:#ffd522;--yellow-soft:#fff9d8;--ink:#17283f;--muted:#64748b;--faint:#8b99aa;--bg:#f4f7fb;--surface:#fff;--line:#dfe6ef;--line-soft:#edf1f6;--green:#078763;--green-soft:#e7f8f2;--red:#c9364c;--red-soft:#fff0f2;--amber:#9b6500;--amber-soft:#fff6d8;--radius:12px;--radius-lg:18px;--shadow:0 18px 50px rgba(4,31,68,.10);--font:'DM Sans',Arial,sans-serif;--display:'Manrope','DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--display);color:var(--navy);letter-spacing:-.025em}a{color:inherit}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-family:var(--display);font-weight:800;font-size:21px;letter-spacing:-.5px}.brand-mark{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#fff url('/brand-pin.svg?v=70') center/contain no-repeat;color:transparent;font-size:0;font-weight:800;box-shadow:0 4px 12px rgba(3,26,57,.16);flex:none;overflow:hidden}.brand b{color:var(--blue)}.btn,button{min-height:44px;border:0;border-radius:10px;padding:11px 17px;background:var(--yellow);color:var(--navy);font:700 14px var(--font);cursor:pointer;transition:transform .18s,background .18s,box-shadow .18s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:hover,button:hover{background:#f0c500;transform:translateY(-1px)}.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:#074ebc}.btn.secondary,button.secondary{background:#eef2f7;color:var(--ink)}.btn.ghost,button.ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}.btn.danger,button.danger{background:var(--red-soft);color:var(--red)}button:disabled{opacity:.48;cursor:not-allowed;transform:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(11,90,215,.24);outline-offset:2px}input,select,textarea{width:100%;min-height:44px;border:1px solid #ccd7e4;border-radius:10px;padding:10px 12px;background:#fff;color:var(--ink);font:500 15px var(--font)}input:focus,select:focus,textarea:focus{border-color:var(--blue)}label{display:block;color:#344861;font-size:14px;font-weight:700;margin:0 0 7px}.field{margin-bottom:17px}.eyebrow{display:inline-flex;align-items:center;gap:7px;border:1px solid #eed769;background:var(--yellow-soft);color:#6f5700;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.muted{color:var(--muted)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.status{display:inline-flex;align-items:center;gap:6px;border-radius:99px;padding:5px 9px;font-size:12px;font-weight:800}.status:before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}.status.good{color:var(--green);background:var(--green-soft)}.status.warn{color:var(--amber);background:var(--amber-soft)}.status.bad{color:var(--red);background:var(--red-soft)}.empty{text-align:center;border:1px dashed #bdcad9;border-radius:var(--radius-lg);padding:52px 24px;background:#fff}.empty-icon{width:50px;height:50px;border-radius:15px;background:var(--blue-soft);display:grid;place-items:center;margin:0 auto 16px;color:var(--blue);font-size:24px}.empty h2,.empty h3{margin:0 0 8px}.empty p{max-width:480px;margin:0 auto 20px;color:var(--muted);line-height:1.6}.toast{position:fixed;right:20px;bottom:20px;background:var(--navy-deep);color:#fff;padding:13px 16px;border-radius:10px;box-shadow:var(--shadow);z-index:100;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}@media(max-width:600px){.brand{font-size:19px}.brand-mark{width:64px;height:64px;background-size:contain}}