*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy: #070D49;--navy-dark: #04082e;--navy-mid: #0d1660;--off-white: #f4f6fb;--text-muted: #5a6a9a;--border: rgba(7,13,73,.1);--font: "Lora", Georgia, serif;--font-sans: "Nunito", sans-serif}html,body{font-family:var(--font);background:var(--off-white);color:var(--navy);min-height:100vh}a{text-decoration:none;color:inherit}input,textarea,select{font-family:var(--font-sans);font-size:.9rem;border:1px solid var(--border);border-radius:4px;padding:.65rem .85rem;width:100%;background:#fff;color:var(--navy);transition:border-color .2s,box-shadow .2s;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--navy);box-shadow:0 0 0 3px #070d4914}button{font-family:var(--font-sans);cursor:pointer}.btn{display:inline-block;font-family:var(--font-sans);font-size:.85rem;font-weight:700;padding:.75rem 1.8rem;border-radius:4px;border:none;cursor:pointer;transition:opacity .2s,transform .15s}.btn:hover{opacity:.88;transform:translateY(-1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--navy);color:#fff}.btn-outline{background:transparent;color:var(--navy);border:1px solid var(--border)}.btn-danger{background:#dc2626;color:#fff}.error-msg{font-family:var(--font-sans);font-size:.8rem;color:#dc2626;margin-top:.4rem}.success-msg{font-family:var(--font-sans);font-size:.8rem;color:#065f46;margin-top:.4rem}
