:root{--brand-900: #031f51;--brand-800: #07336f;--brand-700: #0b4b96;--brand-100: #e8f1ff;--gold-500: #e6a314;--gold-100: #fff3d7;--ink-900: #0a2857;--ink-600: #536987;--ink-400: #8190a5;--surface: #ffffff;--canvas: #f7f9fc;--border: #dfe5ee;--danger: #b42318;--danger-bg: #fef3f2;--radius-sm: 10px;--radius-md: 16px;--radius-lg: 24px;--shadow: 0 14px 40px rgb(20 49 41 / 8%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink-900);background:var(--canvas);font-synthesis:none}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--canvas)}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-title{margin:0;font-size:clamp(1.6rem,7vw,2.2rem);line-height:1.08}.page-subtitle{margin:8px 0 0;color:var(--ink-600);line-height:1.55}.card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.field{display:grid;gap:8px}.field label{font-size:.88rem;font-weight:700}.field input,.field select{width:100%;min-height:50px;border:1px solid #cbd7d2;border-radius:var(--radius-sm);padding:0 14px;color:var(--ink-900);background:var(--surface);outline:none;transition:border-color .2s,box-shadow .2s}.field input:focus,.field select:focus{border-color:var(--brand-700);box-shadow:0 0 0 4px #1a4a3d1f}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger);font-size:.8rem}.button{min-height:50px;border:0;border-radius:var(--radius-sm);padding:0 18px;font-weight:800;cursor:pointer;transition:transform .15s,opacity .15s,background .15s}.button:active{transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.55}.button-primary{color:#fff;background:var(--brand-800)}.button-primary:hover:not(:disabled){background:var(--brand-900)}.button-secondary{color:var(--brand-800);background:var(--brand-100)}.alert{border-radius:var(--radius-sm);padding:12px 14px;font-size:.9rem}.alert-error{color:var(--danger);background:var(--danger-bg);border:1px solid #fecdca}
