*{box-sizing:border-box}
:root{--primary:#1E72B8;--accent:#5E6B76;--radius:16px}
html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:#fff;color:#0c1116}
.container{max-width:920px;margin:0 auto;padding:24px}
.site-header{border-bottom:1px solid #e9eef3;background:#fff}
.header-inner{display:flex;align-items:center;gap:12px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px}
.logo{height:36px;width:auto}
.brand-name{font-weight:700;color:var(--primary)}
.hero{display:grid;place-items:center;min-height:calc(100dvh - 160px)}
.card{width:100%;max-width:1080px;border:1px solid #e7ebf0;border-radius:var(--radius);padding:28px;background:#fff;box-shadow:0 8px 30px rgba(12,17,22,.06)}
.card h1{margin:0 0 8px 0;font-size:28px}
.sub{margin:4px 0 20px 0;color:#4b5563}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-row{display:flex;flex-direction:column}
.form-row.checkbox{grid-column:1 / -1}
label{font-size:14px;color:#3b4752;margin-bottom:6px}
input,select{border:1px solid #d7dde4;border-radius:12px;padding:12px 14px;font-size:16px;outline:0;transition:border .15s ease}
input:focus,select:focus{border-color:var(--primary)}
.btn{display:inline-block;border-radius:999px;padding:12px 18px;font-weight:600;border:1px solid var(--accent);text-decoration:none;background:#fff}
.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}
.btn:hover{opacity:.92}
.muted{color:#6b7280;margin-top:14px}
.site-footer{border-top:1px solid #e9eef3;margin-top:40px;background:#fafbfc}
.flash{margin-bottom:18px}
.flash-item{padding:10px 12px;border-radius:12px;margin-bottom:8px}
.flash-item.error{background:#fee2e2;color:#7f1d1d}
.flash-item.warn{background:#fff7ed;color:#7c2d12}
@media (max-width:720px){.grid{grid-template-columns:1fr}}