/* Public account entry points; administrator authentication keeps its own layout. */
body.dp-auth { color-scheme: light; color: #244b3d; background: radial-gradient(ellipse at 5% 5%,#eaf8ef,transparent 45%),radial-gradient(ellipse at 98% 95%,#fff5d9,transparent 40%),#fff; padding: 45px 24px; }
.dp-auth .spline-bg, .dp-auth .spline-overlay { display: none; }
.dp-auth .auth-container { max-width: 480px; }
.dp-auth .auth-logo a { width: 170px; height: 67px; overflow: hidden; }
.dp-auth .auth-logo :is(img,svg) { width: 100%; height: 100%; border-radius: 0; object-fit: contain; }
.dp-auth .auth-card { background: #fff; border: 1px solid #dfece3; border-radius: 24px; box-shadow: 0 18px 60px #26583d0c; -webkit-backdrop-filter: none; backdrop-filter: none; padding: 34px; }
.dp-auth .auth-title { color: #193e32; font-size: 27px; }
.dp-auth :is(.auth-subtitle,.form-label,.form-checkbox,.terms-checkbox,.auth-switch,.auth-footer) { color: #698372; }
.dp-auth .form-input { border: 1px solid #d6e5db; background: #fcfefc; color: #234534; border-radius: 11px; font-size: 16px; min-height: 48px; }
.dp-auth .form-input::placeholder { color: #8c9f91; }
.dp-auth .form-input:focus { border-color: #7dbb9b; background: #fff; box-shadow: 0 0 0 3px #dbefe366; }
.dp-auth .auth-divider span { color: #8b9e90; }
.dp-auth .auth-divider::before,.dp-auth .auth-divider::after { background: #e4eee6; }
.dp-auth .btn-primary { color: #fff; background: #087e66; font-size: 14px; border-radius: 12px; min-height: 46px; padding: 12px 20px; box-shadow: none; }
.dp-auth .btn-primary:hover { background: #086a57; box-shadow: 0 6px 18px #087e661c; }
.dp-auth :is(.auth-link,.auth-switch a,.terms-checkbox a,.auth-footer a) { color: #087e66; }
.dp-auth .password-toggle { color: #6c8c7a; }
.dp-auth .password-toggle:hover { color: #087e66; }
.dp-auth .social-btn { box-shadow: none; border-radius: 11px; border: 1px solid #e0e9e3; font-size: 13px; }
.dp-auth .social-btn-google { background: #fff; color: #345545; }
.dp-auth .social-btn-facebook { background: #edf4ff; color: #2862b4; }
.dp-auth .social-btn-facebook .social-icon { background: #1877f2; color: #fff; }
.dp-auth .auth-card input[type=checkbox],.dp-auth .auth-card input[type=checkbox]:focus,.dp-auth .auth-card input[type=checkbox]:hover { border-color: #b3cab9!important; background-color: #fff!important; }
.dp-auth .auth-card input[type=checkbox]:checked { background-color: #087e66!important; border-color: #087e66!important; }
.dp-auth .auth-card input[type=checkbox]:focus-visible { outline: 3px solid #c8e5d4!important; outline-offset: 3px; }
.dp-auth .alert-success { color: #176e4c; background: #edf8f0; border-color: #c9e6d4; }
.dp-auth .alert-danger,.dp-auth .errors li { color: #ae3f38; background: #fff2ef; border-color: #f2d3ca; }
.dp-auth .text-white { color: #234a39; }
.dp-auth .text-dark-400 { color: #6b8072; }
@media(max-width:600px) { body.dp-auth { padding: 28px 18px; }.dp-auth .auth-card { padding: 25px; border-radius: 20px; }.dp-auth .auth-logo { margin-bottom: 20px; }.dp-auth .auth-title { font-size: 24px; } }
@media(prefers-reduced-motion:reduce) { .dp-auth * { animation: none!important; transition: none!important; } }
