/* Lélekmenta 7.0 – unified, accessible authentication surfaces. */
html:has(.auth-shell){background:#f9f8f2!important;overflow-x:hidden}
body:has(.auth-shell){background:radial-gradient(ellipse at 7% 13%,#e7f0df,transparent 42%),radial-gradient(ellipse at 94% 85%,#eee8e0,transparent 40%),#f9f8f2!important;color:#19352c!important;height:auto!important;min-height:100dvh!important;display:block!important;overflow-y:auto!important}
body:has(.auth-shell) .master-bg{display:none}
body:has(.auth-shell) .auth-shell{min-height:100dvh;overflow:visible;padding:45px 20px}
body:has(.auth-shell) .auth-shell:before{content:'LÉLEKMENTA  /  GONDOLATOKNAK TÉR';font-size:10px;letter-spacing:2px;font-weight:800;color:#5d8768;margin:0 0 22px;text-align:center}
body:has(.auth-shell) .auth-card{width:100%;max-width:455px;margin:0 auto;border-radius:26px;padding:38px;background:#fffefa!important;border:1px solid #dfe7dd!important;box-shadow:0 24px 70px rgba(40,76,48,.1)!important;backdrop-filter:none!important}
body:has(.auth-shell) .auth-logo{width:53px;height:53px;background:#e5f0e2;border:1px solid #d5e5d4;color:#326b46;box-shadow:none;border-radius:17px}
body:has(.auth-shell) .auth-title h1{color:#19352c;font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-1.2px;font-size:28px;line-height:1.2}
body:has(.auth-shell) .auth-title p{color:#7c8d81;font-size:13px}
body:has(.auth-shell) .auth-form label{color:#5d7665;font-size:11px;letter-spacing:.7px}
body:has(.auth-shell) .auth-form input:not([type=checkbox]),body:has(.auth-shell) .auth-form select,body:has(.auth-shell) #step-form select{background-color:#f8faf5!important;color:#244b35!important;border:1px solid #dce6da!important;box-shadow:none;min-height:49px;border-radius:12px!important}
body:has(.auth-shell) .auth-form input::placeholder{color:#a3b1a4}
body:has(.auth-shell) .auth-form input:focus,body:has(.auth-shell) .auth-form select:focus{outline:3px solid #b1d6b4!important;outline-offset:1px;background:#fff!important}
body:has(.auth-shell) .auth-form select option{background:#fff;color:#244b35}
body:has(.auth-shell) .auth-submit,body:has(.auth-shell) .btn-standard{background:#b8e1b5!important;color:#173a29!important;border:none!important;border-radius:13px;box-shadow:none!important;text-transform:none;font-size:14px}
body:has(.auth-shell) .auth-submit:hover,body:has(.auth-shell) .btn-standard:hover{background:#9fd49f!important}
body:has(.auth-shell) .auth-footer{color:#728477;font-size:13px}
body:has(.auth-shell) .auth-footer a,body:has(.auth-shell) .checkbox-text a{color:#377b51!important}
body:has(.auth-shell) .auth-footer a:hover{color:#214d34!important}
body:has(.auth-shell) .auth-error{background:#fff1eb;color:#984f3a;border-color:#f1cdbd}
body:has(.auth-shell) .auth-success{background:#e9f5e7;color:#326845;border-color:#c9e0c6}
body:has(.auth-shell) .google-btn,body:has(.auth-shell) .btn-google{background:#fff!important;border:1px solid #dce5da!important;color:#27513a!important;border-radius:13px}
body:has(.auth-shell) .btn-choice{border-radius:13px;min-height:52px}
body:has(.auth-shell) .back-to-choice{background:#edf3eb;color:#426b4f}
body:has(.auth-shell) .back-to-choice:hover{background:#e0eadf}
body:has(.auth-shell) .checkbox-wrapper{border-radius:11px!important;background:#f6f8f3!important;border:1px solid #e1e8dc!important}
body:has(.auth-shell) .checkbox-wrapper .checkbox-text{color:#66786c!important}
body:has(.auth-shell) .checkbox-wrapper input[type=checkbox]{display:block!important;position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
body:has(.auth-shell) .custom-checkbox{border-color:#9bb7a1!important;background:white}
body:has(.auth-shell) .checkbox-wrapper input[type=checkbox]:focus-visible + .custom-checkbox{outline:3px solid #448b5a;outline-offset:2px}
body:has(.auth-shell) .checkbox-wrapper input[type=checkbox]:checked + .custom-checkbox{background:#b8e1b5!important;border-color:#80ba83!important;box-shadow:none}
body:has(.auth-shell) .google-btn:hover,body:has(.auth-shell) .btn-google:hover{background:#f4f8f0!important}
body:has(.auth-shell) a:focus-visible,body:has(.auth-shell) button:focus-visible{outline:3px solid #65a87e;outline-offset:3px}
@media(max-width:520px){body:has(.auth-shell) .auth-shell{padding:22px 13px}body:has(.auth-shell) .auth-card{padding:29px 20px;border-radius:19px}body:has(.auth-shell) .auth-title h1{font-size:25px}body:has(.auth-shell) .auth-shell:before{font-size:8px;letter-spacing:1.3px}}
@media(prefers-reduced-motion:reduce){body:has(.auth-shell) *,body:has(.auth-shell) *:before,body:has(.auth-shell) *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
