:root{--auth-brand:#1b5668;--auth-brand-deep:#15495d;--auth-lime:#7bd100;--auth-ink:#172033;--auth-muted:#6b7280;--auth-line:#e4e8ee}
*{box-sizing:border-box}
body{min-height:100vh;margin:0;overflow-x:hidden;background:radial-gradient(circle at 12% 8%,rgba(123,209,0,.13),transparent 25rem),radial-gradient(circle at 90% 90%,rgba(27,86,104,.13),transparent 30rem),linear-gradient(180deg,#f7f9fb 0%,#edf2f6 100%);color:var(--auth-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.45;letter-spacing:-.006em}
body:before{content:"I";position:fixed;top:1.5rem;left:1.5rem;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(145deg,var(--auth-lime),#95df25);color:#0f3f4d;font-weight:850;box-shadow:0 6px 18px rgba(123,209,0,.22)}
.card{border:1px solid rgba(228,232,238,.95)!important;border-radius:14px!important;background:rgba(255,255,255,.96);box-shadow:0 18px 55px rgba(17,24,39,.09)!important;backdrop-filter:blur(12px)}
.card h3,.card h4{font-weight:760;letter-spacing:-.025em}.form-label,label{margin-bottom:.38rem;font-size:.76rem;font-weight:650;color:#3f4a5c}.form-control{min-height:42px;border:1px solid var(--auth-line);border-radius:8px;font-size:.84rem;color:var(--auth-ink)}.form-control:focus{border-color:rgba(123,209,0,.72);box-shadow:0 0 0 .2rem rgba(123,209,0,.13)}
.btn{min-height:40px;border-radius:8px;font-size:.83rem;font-weight:650}.btn-primary{--bs-btn-bg:var(--auth-brand);--bs-btn-border-color:var(--auth-brand);--bs-btn-hover-bg:var(--auth-brand-deep);--bs-btn-hover-border-color:var(--auth-brand-deep)}.btn-outline-primary{--bs-btn-color:var(--auth-brand);--bs-btn-border-color:var(--auth-brand);--bs-btn-hover-bg:var(--auth-brand);--bs-btn-hover-border-color:var(--auth-brand)}
.alert{border-radius:9px;font-size:.82rem}a{color:var(--auth-brand);font-weight:600}.text-muted{color:var(--auth-muted)!important}:focus-visible{outline:3px solid rgba(123,209,0,.48);outline-offset:2px}
@media(max-width:575.98px){body:before{top:.85rem;left:.85rem}.card{border-radius:12px!important}.card.p-4{padding:1.25rem!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
