:root{
--brand-blue:#0090E0;
--brand-blue-btn:#0077C2;
--brand-blue-dark:#05497C;
--brand-red:#E30613;
--brand-gold:#F6B21A;
--brand-ink:#111827;
--brand-muted:#6B7280;
--brand-line:#E5E7EB;
--brand-fill:#F5F5F7;
--brand-gradient:linear-gradient(160deg,var(--brand-blue) 0%,var(--brand-blue-dark) 100%);
--brand-ring:0 0 0 4px rgba(0,144,224,.2);
}
.nw-btn{background:var(--brand-blue-btn);border:0;color:#fff;font-weight:700;border-radius:14px;padding:.95rem 1rem}
.nw-btn:hover,.nw-btn:focus-visible{background:var(--brand-blue-dark);color:#fff}
.nw-field .form-control{min-height:58px;border-radius:14px;background:var(--brand-fill);border:1.5px solid transparent}
.nw-field .form-control:focus{background:#fff;border-color:var(--brand-blue);box-shadow:var(--brand-ring)}
.brand-link{color:var(--brand-blue-btn)}
.brand-link:hover{color:var(--brand-blue-dark);text-decoration:underline!important}
.brand-panel{background:var(--brand-gradient)}
.auth-page{min-height:100vh}
.auth-card{max-width:480px;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 20px 50px rgba(5,73,124,.12)}
.auth-band{height:8px;background:linear-gradient(90deg,var(--brand-blue) 0 55%,var(--brand-gold) 55% 75%,var(--brand-red) 75% 100%)}
.auth-logo{height:68px;width:auto}
.auth-ico{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--brand-blue);color:#fff;font-size:1.5rem}
.auth-title{font-weight:800;font-size:1.65rem;letter-spacing:-.02em;color:var(--brand-ink)}
.auth-text{color:var(--brand-muted)}
.auth-note{background:#EAF6FD;color:var(--brand-blue-dark);border-radius:14px;padding:.85rem 1rem}
.auth-ico.bad{background:var(--brand-red)}
.auth-ico.ok{background:var(--brand-blue)}
.brand-btn-outline{display:flex;align-items:center;justify-content:center;height:52px;background:#fff;border:1.5px solid var(--brand-blue-btn);border-radius:14px;color:var(--brand-blue-btn);font-weight:700;transition:background .2s,color .2s}
.brand-btn-outline:hover{background:var(--brand-blue-btn);color:#fff}
.brand-btn-outline:focus-visible{outline:none;box-shadow:var(--brand-ring)}
.brand-app-banner{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-dark));border:2px solid var(--brand-gold);color:#fff;text-decoration:none;box-shadow:0 14px 28px -14px rgba(5,73,124,.7);transition:transform .15s}
.brand-app-banner:hover{color:#fff;transform:translateY(-2px)}
.brand-app-icon{flex:0 0 48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--brand-gold);color:#111827;font-size:1.5rem}
.brand-app-text{flex:1;line-height:1.25}
.brand-app-text b{display:block;font-size:1.05rem;font-weight:800}
.brand-app-text small{display:block;font-size:.8rem;color:rgba(255,255,255,.8)}
.brand-app-go{font-size:1.5rem;color:var(--brand-gold)}