/* Shared customer-facing account layout. Keep the form roomy without long fields. */
.mascot-account .auth-header,.mascot-account .auth-footer{max-width:1440px;width:calc(100% - 80px);margin-left:auto;margin-right:auto}
.mascot-account .auth-layout{max-width:1440px;width:calc(100% - 80px);margin:8px auto 24px;min-height:620px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.mascot-account .auth-card{padding:36px clamp(30px,4vw,64px);display:flex;flex-direction:column;justify-content:center}
.mascot-account .auth-story{padding:42px clamp(32px,4vw,64px) 30px}
.mascot-account .auth-story h2{font-size:clamp(34px,3vw,45px)}
.mascot-account .auth-card h1{font-size:clamp(30px,2.6vw,38px)}
.mascot-account .auth-card .intro{margin-bottom:24px}
.mascot-account .account-scene{margin-top:36px}
.mascot-account .auth-footer{padding:0 0 22px}
.auth-card input:not([type=checkbox]){color:#203c57;min-height:48px;font-size:16px}
.auth-card input:focus-visible{outline:3px solid #2182df40;outline-offset:2px;border-color:#247bc6;background:#fff}
.password-field{position:relative;margin-bottom:17px}
.password-field input:not([type=checkbox]){margin-bottom:0;padding-right:53px}
.password-toggle{position:absolute;right:3px;top:2px;display:grid;place-items:center;width:44px;min-height:44px;padding:10px;border:0;border-radius:7px;color:#52738e;background:transparent;cursor:pointer}
.password-toggle:hover{background:#eaf2fb;color:#096dc8}
.password-toggle:focus-visible{outline:3px solid #2182df70;outline-offset:1px}
.password-toggle svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.password-toggle .eye-slash{display:none}.password-toggle[aria-pressed=true] .eye-slash{display:block}
form[data-auth-preview=connected] .primary-action{background:#0873d9;color:white;cursor:pointer;justify-content:center;gap:14px;min-height:49px}
form[data-auth-preview=connected] .primary-action:hover{background:#0866bd}
form[data-auth-preview=connected] .primary-action:disabled{opacity:.65;cursor:wait}
.auth-status[hidden],.auth-success[hidden],.auth-card form[hidden]{display:none}
.auth-status{padding:13px 15px;margin:0 0 20px;border:1px solid #c8deef;border-radius:10px;background:#eff7ff;color:#254d71;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.auth-status[data-state=error]{background:#fff5f2;border-color:#edc7bc;color:#82442e}
.auth-status:focus{outline:2px solid #4088c2;outline-offset:3px}
.auth-success{border:1px solid #cae1ef;background:#f2f9ff;border-radius:14px;padding:25px;margin:0 0 8px;line-height:1.6}
.auth-success h2{font-size:25px;letter-spacing:-.6px;margin:0 0 10px}
.auth-success p{font-size:14px;color:#526d84;margin:9px 0}
.auth-success a{display:inline-flex;align-items:center;min-height:44px;margin-top:9px;font-weight:600;font-size:14px}
.field-error{font-size:12px;color:#9b3d2b;margin:-8px 0 15px}
.auth-card [aria-invalid=true]{border-color:#b95f47}
@media(max-width:900px) and (min-width:761px){.mascot-account .auth-header,.mascot-account .auth-footer,.mascot-account .auth-layout{width:calc(100% - 48px)}.mascot-account .auth-card,.mascot-account .auth-story{padding:32px 25px}.mascot-account .account-scene{grid-template-columns:115px minmax(0,1fr);gap:8px}.mascot-account .account-scene .zenshi-mascot{width:115px}}
@media(max-width:760px){.mascot-account .auth-header,.mascot-account .auth-footer{width:calc(100% - 40px);padding-left:0;padding-right:0}.mascot-account .auth-layout{width:calc(100% - 40px);max-width:560px;grid-template-columns:1fr;min-height:0;margin:4px auto 24px}.mascot-account .auth-card{display:block;padding:28px}.mascot-account .auth-card h1{font-size:31px}.mascot-account .auth-story{display:none}}
@media(max-width:360px){.mascot-account .auth-header,.mascot-account .auth-footer,.mascot-account .auth-layout{width:calc(100% - 32px)}.mascot-account .auth-card{padding:24px 20px}.mascot-account .auth-card h1{font-size:27px}}
