/* MailEditor Flow V76 — unified registration, login, and Firebase account forms.
   Style-only enhancement; authentication and Stripe remain server-validated. */
:root { --form-navy:#05031b; --form-lavender:#f3f1fe; --form-indigo:#403ae6; --form-lime:#e2e63a; }
.account-layout{background:#f3f1fe!important}
.account-layout .auth-main{background:radial-gradient(ellipse at 95% 0%, #e3e0ff 0%,#f3f1fe 38%,#f8f7ff 100%)!important;gap:16px;align-items:stretch;min-width:0}
.auth-head{max-width:620px;margin:0 auto 6px;width:100%}
.auth-main .auth-head .brand img{width:min(300px,68vw);height:auto}
.auth-content{width:100%;max-width:530px;margin:26px auto 34px}
.auth-content .account-eyebrow{color:#403ae6!important;letter-spacing:.17em;font-size:12px;font-weight:850;margin-bottom:10px}
.auth-content h1{font:500 clamp(35px,5vw,56px)/1.06 Georgia,'Times New Roman',serif!important;color:#05031b!important;letter-spacing:-.047em;margin:0 0 12px}
.auth-content .auth-lead{font-size:clamp(14px,1.5vw,16px);line-height:1.6;color:#53516c;max-width:485px;margin:0 0 23px}
.auth-content .session-link{display:block;margin:0 0 12px;border:1px solid #cdc8f4;border-radius:12px;padding:12px;background:#fff}
.auth-content .session-link[hidden]{display:none}
.auth-form-panel{background:#fff;border-radius:24px;padding:clamp(20px,4vw,36px);border:1px solid #dedbf4;box-shadow:0 16px 50px rgba(5,3,27,.09)}
.auth-form-panel .auth-google{min-height:52px;display:flex;align-items:center;justify-content:center;gap:13px;border:1px solid #cbc8e7;color:#05031b;border-radius:13px;background:#fff;margin:0 0 18px;font-weight:750;font-size:14px;transition:.18s ease}
.auth-form-panel .auth-google:hover{background:#f3f1fe;border-color:#403ae6}
.auth-form-panel .auth-google:focus-visible,.auth-form-panel button:focus-visible,.auth-form-panel a:focus-visible{outline:3px solid #403ae6;outline-offset:3px}
.auth-form-panel .auth-divider{display:flex;align-items:center;gap:12px;justify-content:center;margin:0 0 22px;color:#66627e;font-size:13px;font-weight:600;white-space:nowrap}
.auth-form-panel .auth-divider:before,.auth-form-panel .auth-divider:after{content:"";height:1px;flex:1;background:#e3e0f3;min-width:10px}
.auth-form-panel .form-field{margin:0 0 18px}
.auth-form-panel .form-field label{font-size:14px;color:#05031b;font-weight:750;letter-spacing:0;margin:0 0 8px;display:block}
.auth-form-panel .field-required{color:#403ae6;font-weight:850}
.auth-form-panel .form-field input{width:100%;box-sizing:border-box;min-height:52px;background:#fdfdff!important;border:1.5px solid #d7d2ee!important;border-radius:12px;padding:13px 14px!important;font-size:16px!important;line-height:1.2;color:#05031b!important;transition:border-color .16s, box-shadow .16s}
.auth-form-panel .form-field input::placeholder{color:#77738c;opacity:1}
.auth-form-panel .form-field input:focus{outline:none!important;border-color:#403ae6!important;box-shadow:0 0 0 4px #403ae61c!important}
.auth-form-panel .input-with-toggle{position:relative}
.auth-form-panel .input-with-toggle input{padding-right:90px!important}
.auth-form-panel .input-with-toggle button{position:absolute;right:7px;top:50%;transform:translateY(-50%);padding:9px 11px;border-radius:8px;min-height:34px;background:#efedff;color:#403ae6;font-weight:750;font-size:12px}
.auth-form-panel .password-strength{margin-top:10px;font-size:12px;color:#5d5877;display:flex;flex-direction:column;gap:7px}
.auth-form-panel .strength-track{height:5px;border-radius:100px;background:#e9e6f4;display:block;overflow:hidden}
.auth-form-panel .strength-track i{display:block;width:0;height:100%;border-radius:100px;background:#403ae6;transition:width .2s}
.auth-form-panel .password-strength[data-level="1"] .strength-track i{width:30%;background:#aa4560}
.auth-form-panel .password-strength[data-level="2"] .strength-track i{width:67%;background:#7664c9}
.auth-form-panel .password-strength[data-level="3"] .strength-track i{width:100%;background:#403ae6}
.auth-form-panel .password-match{display:block;min-height:15px;margin-top:7px;color:#403ae6;font-size:12px;font-weight:600}
.auth-form-panel .password-match.invalid{color:#aa3654}
.auth-form-panel .chosen-plan-summary{background:#f3f1fe;color:#484467;border:1px solid #e4e0f7;border-radius:11px;padding:12px 13px;font-size:12px;line-height:1.5;margin:0 0 19px}
.auth-form-panel .chosen-plan-summary a{color:#403ae6;font-weight:800}
.auth-form-panel .terms-choice{display:flex;align-items:flex-start;gap:12px;color:#54516d;font-size:12px;line-height:1.6;margin:8px 0 16px}
.auth-form-panel .terms-choice input{margin:3px 0 0;flex:0 0 19px;width:19px;height:19px;accent-color:#403ae6;cursor:pointer}
.auth-form-panel .terms-choice a{color:#403ae6;font-weight:800}
.auth-form-panel .auth-submit{border:0;display:flex;align-items:center;justify-content:center;gap:12px;background:#e2e63a!important;color:#05031b!important;min-height:56px;border-radius:13px;font-size:17px;font-weight:850;margin-top:8px;box-shadow:0 5px 0 #c5cb29;transition:transform .14s,background .14s;cursor:pointer}
.auth-form-panel .auth-submit:hover{background:#edf46a!important;transform:translateY(-2px)}
.auth-form-panel .auth-submit:disabled{opacity:.55;transform:none;cursor:wait}
.auth-form-panel .auth-help{font-size:13px;text-align:center;margin:20px 0 0;color:#5a5870}
.auth-form-panel .auth-help a{color:#403ae6;font-size:13px;font-weight:850;text-decoration:underline;text-underline-offset:3px}
.auth-form-panel .firebase-forgot{font-size:13px;color:#403ae6;font-weight:750;margin:0 0 17px}
.auth-form-panel .form-message{font-size:13px;padding:14px;border-radius:10px;margin:10px 0;color:#7f2345;background:#ffeff3}
.auth-foot{max-width:530px;margin:0 auto 22px;line-height:1.6;text-align:center;width:100%;font-size:13px!important;color:#67617f!important}
.auth-foot a{color:#403ae6!important;font-size:13px}
/* Shared account popup opened by registration / sign-in buttons across the site. */
.firebase-shade{background:rgba(5,3,27,.74)!important;backdrop-filter:blur(7px)}
.firebase-dialog{width:min(100%,520px)!important;background:#fff!important;border-radius:22px!important;border:1px solid #dedbf4!important;padding:clamp(21px,4vw,35px)!important;color:#05031b!important;box-shadow:0 20px 90px rgba(5,3,27,.3)!important}
.firebase-dialog .firebase-logo{width:clamp(180px,42vw,240px);max-width:calc(100% - 44px);height:auto;margin-bottom:14px}
.firebase-dialog .firebase-eyebrow{color:#403ae6!important;letter-spacing:.13em;font-weight:800;font-size:11px}
.firebase-dialog h2{font:500 clamp(28px,5vw,39px)/1.07 Georgia,'Times New Roman',serif!important;letter-spacing:-.045em;color:#05031b!important;margin:11px 0 10px}
.firebase-dialog>p{color:#53516c!important;line-height:1.55;font-size:13px}
.firebase-dialog .firebase-plan{background:#f3f1fe!important;color:#403ae6!important;border:1px solid #dedbf4;border-radius:11px;padding:12px}
.firebase-dialog .firebase-google{min-height:48px;border:1px solid #d7d2ee;border-radius:12px;color:#05031b!important;background:#fff!important}
.firebase-dialog .firebase-google:hover{background:#f3f1fe!important}
.firebase-dialog .firebase-or{font-size:13px;color:#686482;margin:14px auto 16px}
.firebase-dialog .firebase-field{margin:0 0 15px}
.firebase-dialog .firebase-field label{font-size:13px!important;color:#05031b!important;margin-bottom:7px}
.firebase-dialog .firebase-field input{box-sizing:border-box;min-height:48px;background:#fdfdff!important;color:#05031b!important;border:1.5px solid #d7d2ee!important;border-radius:11px!important;font-size:16px!important;padding:12px 13px}
.firebase-dialog .firebase-field input:focus{outline:none!important;border-color:#403ae6!important;box-shadow:0 0 0 4px #403ae61a!important}
.firebase-dialog .firebase-field-toggle{position:relative}
.firebase-dialog .firebase-field-toggle input{padding-right:84px!important}
.firebase-dialog .firebase-field-toggle button{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:#efedff;border:0;border-radius:8px;padding:8px 9px;color:#403ae6;font-weight:700;cursor:pointer}
.firebase-dialog .firebase-password-hint{display:block;margin:6px 0 0;color:#686482;font-size:11px}
.firebase-dialog .firebase-password-hint[hidden]{display:none}
.firebase-dialog .firebase-terms{font-size:12px;line-height:1.4;align-items:flex-start;gap:10px;margin:12px 0}
.firebase-dialog .firebase-terms input{width:18px;height:18px;accent-color:#403ae6;flex:0 0 18px;margin:1px 0}
.firebase-dialog .firebase-terms a{color:#403ae6!important}
.firebase-dialog .firebase-submit{min-height:53px;border-radius:12px;font-size:16px;background:#e2e63a!important;color:#05031b!important;box-shadow:0 4px 0 #c5cb29}
.firebase-dialog .firebase-switch{font-size:13px!important;color:#403ae6!important;margin-top:21px;font-weight:750}
.firebase-dialog .firebase-error{background:#fff0f2;color:#852644;font-size:13px}
.firebase-dialog .firebase-error.good{background:#f3f1fe;color:#403ae6}
.firebase-dialog :is(a,button,input):focus-visible{outline:3px solid #403ae6;outline-offset:2px}
/* Pricing view stays as one compact selector, never the obsolete 10 cards or onboarding box. */
.plans-page .plan-selector-section{margin-top:12px}
.plans-page .plan-selector-card{border-color:#d4cff1!important;box-shadow:0 16px 40px #05031b13!important}
.plans-page .plan-selector-card .mc-price-buy{box-shadow:0 4px 0 #c5cb29}
.plans-page .plan-selector-card .mc-price-buy:focus-visible{outline:3px solid #403ae6;outline-offset:3px}
@media(max-width:760px){
 .account-layout .auth-main{padding:18px 18px 35px!important;min-height:100dvh}
 .auth-content{margin:16px auto 24px}
 .auth-content h1{font-size:clamp(34px,8.8vw,44px)!important}
 .auth-form-panel{padding:20px 17px;border-radius:19px}
 .auth-main .auth-head .brand img{width:min(295px,69vw)}
 .firebase-modal{padding:9px!important}
 .firebase-dialog{max-height:96dvh!important;padding:23px 18px!important;border-radius:19px!important}
}
@media(max-width:370px){.auth-form-panel{padding:17px 13px}.auth-content h1{font-size:33px!important}}
