body.auth-mode{background:#f7f3ea;overflow:auto}.auth-mode>.app-header,.auth-mode>.app-layout,.auth-mode>.mobile-nav,.auth-mode>.editor,.auth-mode>.toast{display:none!important}
.account-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(440px,.95fr);font-family:"Avenir Next","Segoe UI",sans-serif;color:#18304a;background:#fff}
.account-story{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,5vw,72px);background:#173852;color:#fdfaf2;isolation:isolate}
.account-story:before{content:"";position:absolute;width:680px;height:680px;border:1px solid #ffffff1c;border-radius:50%;right:-330px;top:-250px;box-shadow:0 0 0 110px #ffffff09,0 0 0 220px #ffffff07;z-index:-1}
.account-story:after{content:"";position:absolute;inset:0;opacity:.12;z-index:-1;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}
.account-brand{display:flex;align-items:center;gap:14px}.account-brand strong{font-family:Georgia,serif;font-size:23px;font-weight:500}.account-brand small{display:block;color:#d6e2df;font-size:11px;letter-spacing:.08em;margin-top:3px}.account-mark{width:46px;height:46px;border:1px solid #ffffff55;border-radius:50%;position:relative;display:block}.account-mark i{position:absolute;width:16px;height:16px;border-radius:50%;background:#f3bc63;top:9px;left:8px}.account-mark i:nth-child(2){background:#ee8f83;left:22px;top:16px}.account-mark i:nth-child(3){background:#72c1a2;left:12px;top:25px}
.account-story-copy{max-width:680px;margin:10vh 0 7vh}.account-kicker,.account-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:11px;color:#f3bc63}.account-story h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(52px,6.4vw,96px);line-height:.92;letter-spacing:-.055em;margin:22px 0 30px}.account-story h1 em{font-weight:400;color:#f3bc63}.account-story-copy>p:last-child{max-width:570px;color:#dbe4e3;line-height:1.7;font-size:clamp(15px,1.35vw,19px)}
.account-route{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;list-style:none;padding:28px 0 0;margin:0;border-top:1px solid #ffffff2b}.account-route li{display:flex;gap:12px;align-items:flex-start}.account-route li>span{width:28px;height:28px;display:grid;place-items:center;border:1px solid #ffffff42;border-radius:50%;font:700 11px Georgia}.account-route .done>span{background:#f3bc63;border-color:#f3bc63;color:#173852}.account-route strong{display:block;font-size:12px}.account-route small{display:block;color:#aebfbe;font-size:10px;line-height:1.45;margin-top:4px}
.account-panel{display:grid;place-items:center;padding:42px clamp(28px,6vw,90px);background:#fff}.account-card{width:min(100%,470px)}.account-mobile-brand{display:none;font-family:Georgia,serif}.account-eyebrow{color:#bf783f}.account-card h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,53px);font-weight:400;letter-spacing:-.045em;line-height:1.03;margin:15px 0 14px}.account-subtitle{font-size:14px;line-height:1.65;color:#698094;margin-bottom:32px}.account-card form{display:grid;gap:17px}.account-card label{display:grid;gap:7px;font-size:12px;font-weight:700;color:#405a70}.account-card input{width:100%;min-height:51px;border:1px solid #cfdae2;border-radius:4px;padding:12px 14px;background:#fcfdfc;color:#18304a;font-size:16px;outline:0;transition:border-color .18s,box-shadow .18s}.account-card input:focus{border-color:#2e7799;box-shadow:0 0 0 3px #2e779916}.password-field{position:relative}.password-field input{padding-right:86px}.password-field button{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:11px;color:#2e7799;min-height:36px}.account-submit{min-height:54px;background:#e07f68;color:white;border-radius:4px;padding:0 19px;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700;margin-top:5px;transition:transform .18s,background .18s}.account-submit:hover{background:#ca6f5c;transform:translateY(-1px)}.account-submit:disabled{opacity:.55;transform:none}.account-submit span{font-size:23px;font-weight:400}.account-switch{width:100%;min-height:44px;margin-top:17px;color:#2b718e;font-size:13px}.account-error{display:none;color:#a84141;background:#fff2ef;border-left:3px solid #dd7c67;padding:10px 12px;font-size:12px;line-height:1.45}.account-error.visible,.account-error:not(:empty){display:block}.account-safety{margin-top:26px;border-top:1px solid #e7ecef;padding-top:18px;color:#8b99a5;font-size:10px;line-height:1.55}.account-unavailable{display:block;background:#f7f3ea;padding:10vh 20px}.account-unavailable .account-panel{max-width:600px;margin:auto;min-height:70vh}
.sync-state{display:inline-flex;align-items:center;gap:6px;font-size:10px;color:var(--muted);white-space:nowrap}.sync-state:before{content:"";width:7px;height:7px;border-radius:50%;background:#38a474}.sync-state[data-sync="saving"]:before{background:#dfa73e;animation:sync-pulse 1s infinite}.sync-state[data-sync="checking"]:before{background:#4388d8;animation:sync-pulse 1s infinite}.sync-state[data-sync="offline"]:before,.sync-state[data-sync="conflict"]:before{background:#d06b72}.account-chip{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 4px;border:1px solid var(--line);border-radius:24px}.account-chip>span:last-child{font-size:12px;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.family-role{display:inline-flex;align-items:center;padding:4px 9px;border-radius:20px;background:var(--control-bg);color:var(--muted);font-size:11px}.family-invite-card{border-style:dashed;background:#fbfdff;cursor:pointer!important}.invite-result{padding:18px;background:#f3f8fb;border:1px solid #d8e6ee;border-radius:12px;margin-top:18px}.invite-code{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:14px 0}.invite-code strong{font-size:24px;letter-spacing:.16em;font-variant-numeric:tabular-nums}.invite-link{font-size:11px;overflow-wrap:anywhere;color:var(--muted);line-height:1.45}.account-details{display:grid;gap:4px;padding:15px;border:1px solid var(--line);border-radius:12px}.account-details strong{font-size:15px}.account-details small{color:var(--muted)}
@keyframes sync-pulse{50%{opacity:.35}}
@media(max-width:900px){.account-shell{grid-template-columns:1fr}.account-story{display:none}.account-panel{min-height:100dvh;padding:32px 22px}.account-mobile-brand{display:block;margin-bottom:42px;color:#bf783f;font-size:22px}.sync-state{display:none}.account-chip>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.sync-state:before{animation:none!important}}

/* Auth 50: the sign-in page is an editorial extension of the calendar UI. */
body.auth-mode{background:var(--canvas,#fff);overflow:auto}
.account-shell{position:relative;isolation:isolate;min-height:100dvh;width:min(100%,1586px);margin:0 auto;padding:0 clamp(24px,4.2vw,68px);display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;background:var(--canvas,#fff);color:var(--ink);font-family:'Onest','Avenir Next',sans-serif}
.account-shell:before{content:"";position:absolute;z-index:-1;inset:94px 0 54px;pointer-events:none;opacity:.6;background-image:linear-gradient(to right,transparent calc(100% - 1px),var(--line) 1px);background-size:calc((100% - clamp(48px,8.4vw,136px))/12) 100%;mask-image:linear-gradient(to bottom,transparent,#000 17%,#000 84%,transparent)}
.account-topbar{min-height:94px;display:grid;grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr);align-items:center;gap:28px;border-bottom:1px solid var(--line)}
.account-brand{display:flex;align-items:center;gap:14px;min-width:0}.account-brand .brand-mark{width:39px;height:39px}.account-brand strong{display:block;color:var(--ink);font-family:'Onest','Avenir Next',sans-serif;font-size:25px;font-weight:700;line-height:1.05;letter-spacing:-.03em}.account-brand small{display:block;margin-top:4px;color:var(--muted);font-size:11px;letter-spacing:.08em}
.account-topbar>p{justify-self:end;color:var(--muted);font-size:12px;letter-spacing:.04em}.account-palette{display:flex;align-items:center;gap:8px}.account-palette i{display:block;width:9px;height:9px;border-radius:50%;background:var(--blue)}.account-palette i:nth-child(2){background:var(--green)}.account-palette i:nth-child(3){background:var(--yellow)}.account-palette i:nth-child(4){background:var(--coral)}.account-palette i:nth-child(5){background:var(--violet)}
.account-layout{min-height:0;display:grid;grid-template-columns:minmax(0,1.82fr) minmax(320px,.72fr);border-bottom:1px solid var(--line)}
.account-welcome{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:clamp(44px,6vh,78px) clamp(36px,5vw,82px) clamp(42px,5vh,66px) 0;animation:account-rise .55s var(--ease) both}
.account-kicker{margin:0 0 18px;color:var(--blue);font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
.account-welcome>h1,.account-unavailable-card h1{max-width:970px;margin:0;color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-size:clamp(52px,6.2vw,96px);font-weight:400;line-height:.94;letter-spacing:-.055em;text-wrap:balance}
.account-intro{display:grid;grid-template-columns:minmax(150px,.42fr) minmax(270px,1fr);align-items:start;gap:28px;max-width:900px;margin-top:clamp(30px,4vh,52px);padding-top:22px;border-top:1px solid var(--line)}.account-intro h2{font-size:20px;line-height:1.2;letter-spacing:-.02em}.account-intro p{max-width:580px;color:var(--muted);font-size:15px;line-height:1.55}
#accountForm{max-width:980px;margin-top:28px}.account-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) minmax(152px,.52fr);align-items:end;gap:12px}.account-form-fields>label{display:grid;gap:8px;min-width:0;color:var(--muted);font-size:12px;font-weight:700}.account-form-fields input{width:100%;height:56px;padding:12px 15px;border:1px solid #cfd9e7;border-radius:10px;outline:0;background:var(--surface,#fff);color:var(--ink);font-size:16px;transition:border-color .18s,box-shadow .18s,background .18s}.account-form-fields input::placeholder{color:#95a4b9}.account-form-fields input:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 13%,transparent)}
.password-field{position:relative;display:block}.password-field input{padding-right:82px}.password-field button{position:absolute;top:50%;right:8px;min-height:38px;padding:0 8px;transform:translateY(-50%);border-radius:8px;color:var(--blue);font-size:11px}.password-field button:hover{background:var(--blue-bg)}
.account-submit{width:100%;height:56px;min-height:56px;margin:0;padding:0 17px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--action-fill,var(--blue));border-radius:10px;background:var(--action-fill,var(--blue));color:#fff;font-size:15px;font-weight:700;box-shadow:0 10px 24px color-mix(in srgb,var(--blue) 18%,transparent);transition:transform .18s,box-shadow .18s,background .18s}.account-submit:hover:not(:disabled){transform:translateY(-2px);background:var(--action-hover,#206bce);box-shadow:0 14px 30px color-mix(in srgb,var(--blue) 24%,transparent)}.account-submit [data-submit-label],.account-submit>span{font-size:15px;font-weight:700}.account-submit .icon{width:19px;height:19px}
#accountForm[data-mode="register"] .account-form-fields,#accountForm[data-mode="join"] .account-form-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.account-form-fields>.account-submit{grid-column:-2/-1}#accountForm[data-mode="register"] .account-submit{grid-column:1/-1;max-width:250px}#accountForm[data-mode="join"] .account-submit{grid-column:2}
.account-error{display:none;margin-top:12px;padding:10px 13px;border:1px solid var(--coral-edge);border-left:4px solid var(--coral);border-radius:8px;background:var(--coral-bg);color:#9f3040;font-size:12px;line-height:1.45}.account-error.visible,.account-error:not(:empty){display:block}
.account-after-form{display:flex;align-items:center;gap:24px;flex-wrap:wrap;max-width:980px;margin-top:14px}.account-switch{width:auto;min-height:40px;margin:0;padding:0;color:var(--blue);font-size:13px;font-weight:700;text-align:left}.account-switch span{display:inline-block;margin-left:4px;transition:transform .18s}.account-switch:hover span{transform:translateX(3px)}.account-safety{margin:0;padding:0;border:0;color:var(--muted);font-size:10px;line-height:1.4}
.account-day{position:relative;display:flex;min-width:0;flex-direction:column;margin:clamp(44px,6vh,78px) 0 clamp(42px,5vh,66px);padding:6px 0 0 clamp(30px,3.4vw,58px);border-left:1px solid var(--line);animation:account-rise .55s .09s var(--ease) both}.account-day:before{content:"";position:absolute;top:0;left:-3px;width:5px;height:46px;border-radius:5px;background:var(--yellow)}.account-day-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--line)}.account-day-head span{font-family:Georgia,'Times New Roman',serif;font-size:29px}.account-day-head time{color:var(--muted);font-size:13px;text-transform:capitalize}
.account-agenda{display:grid;gap:0;margin:0;padding:0;list-style:none}.account-agenda li{position:relative;display:grid;grid-template-columns:60px minmax(0,1fr);gap:14px;padding:22px 0 22px 18px;border-bottom:1px solid var(--line)}.account-agenda li:before{content:"";position:absolute;top:22px;bottom:22px;left:0;width:5px;border-radius:5px;background:var(--tone)}.account-agenda time{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.account-agenda strong,.account-agenda small{display:block}.account-agenda strong{font-size:16px;line-height:1.2}.account-agenda small{margin-top:5px;color:var(--muted);font-size:12px;line-height:1.35}
.account-family-preview{display:flex;align-items:center;gap:18px;margin-top:auto;padding-top:28px}.account-family-preview>div{display:flex;padding-left:9px}.account-family-preview img{width:48px;height:48px;margin-left:-9px;border:3px solid var(--surface,#fff);border-radius:50%;object-fit:cover;transform:scale(1);box-shadow:0 3px 10px #172e501c}.account-family-preview p strong,.account-family-preview p span{display:block}.account-family-preview p strong{font-size:14px}.account-family-preview p span{margin-top:4px;color:var(--muted);font-size:12px}
.account-footer{min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.account-footer span:last-child{text-align:right}
.account-unavailable{padding:0 clamp(24px,4.2vw,68px);display:grid;grid-template-rows:auto 1fr;background:var(--canvas,#fff)}.account-unavailable .account-topbar{grid-template-columns:1fr}.account-unavailable-card{align-self:center;width:min(100%,720px);margin:40px auto;padding:42px;border:1px solid var(--line);border-radius:16px;background:var(--surface,#fff);box-shadow:0 18px 70px #1b37610d}.account-unavailable-card h1{margin-top:14px;font-size:clamp(44px,5vw,72px)}.account-unavailable-card>p:not(.account-kicker):not(.account-error){max-width:520px;margin-top:22px;color:var(--muted);font-size:15px;line-height:1.6}.account-unavailable-card .account-submit{width:min(100%,230px);margin-top:26px}
.avatar .portrait-image,.portrait-picker .portrait-image{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;transform:scale(1.17)}.portrait-picker>div{flex-wrap:wrap}.portrait-picker button{overflow:hidden;background:var(--control-bg)}
@keyframes account-rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
:root[data-theme="dark"] .account-shell{--canvas:#101b32;--surface:#16243e;background:var(--canvas)}:root[data-theme="dark"] .account-form-fields input{border-color:var(--line)}:root[data-theme="dark"] .account-form-fields input::placeholder{color:#8294b0}:root[data-theme="dark"] .account-family-preview img{border-color:var(--surface)}:root[data-theme="dark"] .account-error{color:#ffb5c3;background:#432539;border-color:#92516a}:root[data-theme="dark"] .account-shell:before{opacity:.28}
@media(max-width:980px){.account-shell{padding:0 28px}.account-topbar{grid-template-columns:1fr auto}.account-topbar>p{display:none}.account-layout{grid-template-columns:1fr}.account-welcome{padding-right:0}.account-day{margin-top:0;padding:28px 0 44px;border-top:1px solid var(--line);border-left:0}.account-day:before{top:-3px;left:0;width:46px;height:5px}.account-agenda{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.account-agenda li{display:block;padding:16px;border:1px solid var(--edge);border-radius:12px;background:var(--wash)}.account-agenda li:before{top:16px;right:16px;bottom:auto;left:auto;width:9px;height:9px;border-radius:50%}.account-agenda strong{margin-top:10px}.account-family-preview{margin-top:24px}.account-footer{min-height:62px}.account-welcome>h1{font-size:clamp(52px,9vw,80px)}}
@media(max-width:640px){.account-shell{padding:0 19px;overflow:visible}.account-shell:before{display:none}.account-topbar{min-height:76px;grid-template-columns:1fr}.account-brand .brand-house{width:34px;height:34px}.account-brand strong{font-size:21px}.account-brand small{display:none}.account-palette{display:none}.account-welcome{padding:34px 0 38px}.account-kicker{margin-bottom:13px}.account-welcome>h1{font-size:clamp(42px,13vw,59px);line-height:.98}.account-intro{display:block;margin-top:30px;padding-top:18px}.account-intro h2{font-size:18px}.account-intro p{margin-top:8px;font-size:14px}.account-form-fields,#accountForm[data-mode="register"] .account-form-fields,#accountForm[data-mode="join"] .account-form-fields{grid-template-columns:1fr}.account-form-fields>.account-submit,#accountForm[data-mode="register"] .account-submit,#accountForm[data-mode="join"] .account-submit{grid-column:1;max-width:none}.account-form-fields input,.account-submit{height:54px}.account-after-form{display:block;margin-top:12px}.account-safety{margin-top:12px}.account-day{padding-bottom:36px}.account-agenda{grid-template-columns:1fr}.account-agenda li{display:grid;grid-template-columns:57px minmax(0,1fr)}.account-agenda strong{margin-top:0}.account-family-preview{align-items:flex-start}.account-family-preview img{width:43px;height:43px}.account-footer{display:none}.account-unavailable{padding:0 19px}.account-unavailable-card{padding:26px 22px}.account-unavailable-card h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){.account-welcome,.account-day{animation:none!important}.account-submit,.account-switch span{transition:none!important}}

/* Auth 54: centered family portrait — the form is the visual and functional center. */
body.auth-mode{background:#f8f5ee!important;color-scheme:light;overflow:auto}
.account-shell.account-shell-centered{
  --auth-ink:#17204f;--auth-muted:#7083a4;--auth-line:#dfe6f0;--auth-coral:#ef6172;
  position:relative;isolation:isolate;width:100%;max-width:none;min-height:100dvh;margin:0;padding:48px 32px 74px;
  display:grid;place-items:center;overflow:hidden;background:
    radial-gradient(circle at 50% 46%,#fff 0 18%,#fcfaf5 43%,transparent 67%),
    linear-gradient(108deg,#f7f4ec 0%,#fffdf8 48%,#f7f3e9 100%);
  color:var(--auth-ink);font-family:'Onest','Avenir Next',sans-serif;color-scheme:light
}
.account-shell.account-shell-centered:before{content:"";position:absolute;z-index:-2;inset:0;opacity:.32;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.09'/%3E%3C/svg%3E");background-size:180px 180px;mask-image:none}
.account-shell.account-shell-centered:after{content:"";position:absolute;z-index:-1;width:min(78vw,1040px);aspect-ratio:1;border:1px solid #ddceb2;border-radius:50%;opacity:.86;pointer-events:none}
.account-scene{position:absolute;inset:0;z-index:0;pointer-events:none}
.account-orbit{position:absolute;top:50%;left:50%;border:1px solid #e6dac5;border-radius:50%;transform:translate(-50%,-50%)}
.orbit-one{width:min(70vw,940px);aspect-ratio:1}.orbit-two{width:min(94vw,1320px);aspect-ratio:1;opacity:.48}
.account-center-card{position:relative;z-index:3;width:min(100%,500px);padding:38px 43px 32px;border:1px solid #fff;border-radius:27px;background:rgba(255,255,255,.94);box-shadow:0 26px 78px #59472d1a,0 5px 18px #6f5c3d12;backdrop-filter:blur(9px);animation:account-card-arrive .58s cubic-bezier(.2,.76,.26,1) both}
.account-center-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:5px;color:var(--auth-ink)}
.account-center-brand .brand-mark{width:33px;height:33px}.account-center-brand strong{font-family:'Onest','Avenir Next',sans-serif;font-size:29px;font-weight:750;letter-spacing:-.055em;line-height:1}
.account-brand-smile{display:block;width:54px;height:13px;margin:0 auto 22px;border-bottom:5px solid #ef8c7d;border-radius:0 0 50% 50%;transform:rotate(-1deg)}
.account-card-kicker{margin:0 0 7px;color:#c77948;font-size:10px;font-weight:800;letter-spacing:.17em;text-align:center;text-transform:uppercase}
.account-center-card h1{margin:0;color:var(--auth-ink);font-family:'Onest','Avenir Next',sans-serif;font-size:26px;font-weight:750;line-height:1.18;letter-spacing:-.025em;text-align:center;text-wrap:balance}
.account-card-subtitle{max-width:390px;margin:8px auto 25px;color:var(--auth-muted);font-size:13px;line-height:1.5;text-align:center;text-wrap:balance}
.account-center-card #accountForm{width:100%;max-width:none;margin:0}
.account-center-card .account-form-fields,.account-center-card #accountForm[data-mode="register"] .account-form-fields,.account-center-card #accountForm[data-mode="join"] .account-form-fields{display:grid;grid-template-columns:1fr;gap:13px}
.account-center-card .account-form-fields>label{display:grid;gap:7px;color:#435476;font-size:11px;font-weight:750}
.account-center-card .account-form-fields input{width:100%;height:53px;padding:12px 15px;border:1px solid var(--auth-line);border-radius:11px;outline:0;background:#fbfcfe;color:var(--auth-ink);font:600 15px/1.2 'Onest','Avenir Next',sans-serif;box-shadow:inset 0 1px 0 #fff;transition:border-color .18s,box-shadow .18s,background .18s}
.account-center-card .account-form-fields input::placeholder{color:#96a3b8;font-weight:500}.account-center-card .account-form-fields input:focus{border-color:#6d95dc;background:#fff;box-shadow:0 0 0 4px #4a80df14}
.account-center-card input:-webkit-autofill,.account-center-card input:-webkit-autofill:hover,.account-center-card input:-webkit-autofill:focus{-webkit-text-fill-color:var(--auth-ink);-webkit-box-shadow:0 0 0 1000px #fbfcfe inset;transition:background-color 9999s ease-out}
.account-center-card .password-field{position:relative;display:block}.account-center-card .password-field input{padding-right:80px}.account-center-card .password-field button{position:absolute;top:50%;right:8px;min-height:37px;padding:0 8px;transform:translateY(-50%);border-radius:8px;color:#5179bd;font-size:10px;font-weight:750}.account-center-card .password-field button:hover{background:#eef4ff}
.account-center-card .account-submit,.account-center-card #accountForm[data-mode="register"] .account-submit,.account-center-card #accountForm[data-mode="join"] .account-submit{grid-column:1;width:100%;max-width:none;height:55px;min-height:55px;margin-top:5px;padding:0 17px;border:0;border-radius:11px;background:linear-gradient(100deg,#f25469,#ee6f7d);color:#fff;box-shadow:0 12px 25px #e75d7430;font-size:15px;font-weight:800}
.account-center-card .account-submit:hover:not(:disabled){background:linear-gradient(100deg,#e74860,#e85d70);box-shadow:0 16px 30px #e75d743a;transform:translateY(-2px)}
.account-center-card .account-submit .icon{width:18px;height:18px}.account-center-card .account-error{margin:11px 0 0;border-color:#f0a2a9;border-left-color:#e85b69;background:#fff2f3;color:#9e3340}
.account-center-card .account-after-form{display:grid;justify-items:center;gap:13px;width:100%;max-width:none;margin-top:13px}.account-center-card .account-switch{width:auto;min-height:38px;margin:0;color:#3677da;font-size:12px;font-weight:700;text-align:center}.account-center-card .account-safety{width:100%;margin:0;padding:14px 0 0;border-top:1px solid #e9edf3;color:#9aa5b5;font-size:9px;line-height:1.45;text-align:center}
.account-scene-avatar{position:absolute;z-index:2;display:block;width:clamp(132px,12vw,188px);aspect-ratio:1;overflow:hidden;border:7px solid rgba(255,255,255,.68);border-radius:50%;box-shadow:0 16px 38px #5f513423;background:#e6eefc;animation:account-avatar-arrive .55s cubic-bezier(.2,.76,.26,1) both}
.account-scene-avatar img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.08)}
.avatar-father{top:15%;left:max(8%,calc(50% - 500px));background:#dbe9fd;animation-delay:.08s}.avatar-mother{top:20%;right:max(8%,calc(50% - 520px));background:#ffe1dc;animation-delay:.14s}.avatar-daughter{bottom:16%;left:max(7%,calc(50% - 530px));background:#ffe8dd;animation-delay:.2s}.avatar-son{right:max(8%,calc(50% - 520px));bottom:12%;background:#dff3e7;animation-delay:.26s}
.account-scene-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:11px;min-width:180px;padding:11px 16px;border:1px solid #ffffffc7;border-radius:17px;box-shadow:0 12px 28px #6b593215;color:var(--auth-ink);animation:account-chip-arrive .55s .22s cubic-bezier(.2,.76,.26,1) both}
.account-scene-chip>b{display:grid;width:31px;height:31px;place-items:center}.account-scene-chip>b .event-symbol{display:block;width:31px;height:31px;object-fit:contain}.account-scene-chip span,.account-scene-chip strong,.account-scene-chip small{display:block}.account-scene-chip strong{font-size:13px;line-height:1.15}.account-scene-chip small{margin-top:3px;color:#71819d;font-size:11px}.chip-football{top:7%;left:max(5%,calc(50% - 605px));background:#e5edff}.chip-shopping{top:8%;right:max(5%,calc(50% - 625px));background:#ffe3e0}.chip-english{bottom:9%;left:max(4%,calc(50% - 630px));background:#fff1c9}.chip-training{right:max(4%,calc(50% - 640px));bottom:7%;background:#dff5e8}
.account-sparks{position:absolute;z-index:1;width:96px;height:96px;opacity:.9}.account-sparks:before{content:"";position:absolute;inset:12px;border:1px solid #dccfb9;border-right-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(18deg)}.account-sparks:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#5f91e4;box-shadow:49px 55px 0 #ef8a7f}.account-sparks i{position:absolute;display:block;width:5px;height:28px;border-radius:99px;background:#efb74f;transform-origin:center}.account-sparks i:nth-child(1){top:10px;right:11px;transform:rotate(42deg)}.account-sparks i:nth-child(2){top:31px;right:-2px;height:19px;background:#ed7c71;transform:rotate(68deg)}.account-sparks i:nth-child(3){right:8px;bottom:14px;height:13px;background:#65b895;transform:rotate(112deg)}.sparks-left{left:max(4%,calc(50% - 620px));top:40%;transform:rotate(-13deg)}.sparks-right{right:max(4%,calc(50% - 620px));top:42%;transform:scaleX(-1) rotate(-4deg)}
.account-script-note{position:absolute;z-index:2;bottom:18px;left:50%;margin:0;transform:translateX(-50%) rotate(-4deg);color:#cfb993;font-family:'Comic Sans MS','Bradley Hand',cursive;font-size:18px;white-space:nowrap;opacity:.78}
@keyframes account-card-arrive{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
@keyframes account-avatar-arrive{from{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}
@keyframes account-chip-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
:root[data-theme="dark"] body.auth-mode{background:#f8f5ee!important;color-scheme:light}:root[data-theme="dark"] .account-shell.account-shell-centered{--auth-ink:#17204f;--auth-muted:#7083a4;--auth-line:#dfe6f0;background:radial-gradient(circle at 50% 46%,#fff 0 18%,#fcfaf5 43%,transparent 67%),linear-gradient(108deg,#f7f4ec 0%,#fffdf8 48%,#f7f3e9 100%);color:var(--auth-ink);color-scheme:light}:root[data-theme="dark"] .account-center-card{background:rgba(255,255,255,.94)}:root[data-theme="dark"] .account-center-card .account-form-fields input{border-color:var(--auth-line);background:#fbfcfe;color:var(--auth-ink)}:root[data-theme="dark"] .account-center-card .account-form-fields input::placeholder{color:#96a3b8}
@media(max-width:1120px){.account-scene-avatar{width:128px}.avatar-father{left:5%}.avatar-mother{right:5%}.avatar-daughter{left:4%}.avatar-son{right:4%}.account-scene-chip{min-width:154px;padding:9px 12px}.chip-football,.chip-english{left:2%}.chip-shopping,.chip-training{right:2%}.account-sparks{display:none}}
@media(max-width:820px){.account-shell.account-shell-centered{min-height:100dvh;padding:88px 20px 50px;overflow:visible}.account-shell.account-shell-centered:after{top:40px;width:680px;transform:translateY(-36%)}.account-center-card{width:min(100%,480px);padding:35px 28px 27px}.account-scene-avatar{width:94px;border-width:5px}.avatar-father{top:17px;left:calc(50% - 126px)}.avatar-mother{top:17px;right:calc(50% - 126px)}.avatar-daughter,.avatar-son,.account-scene-chip,.account-orbit,.account-script-note{display:none}.account-center-brand strong{font-size:27px}.account-brand-smile{margin-bottom:18px}}
@media(max-width:480px){.account-shell.account-shell-centered{padding:76px 13px 28px}.account-center-card{padding:31px 20px 22px;border-radius:22px}.account-center-card h1{font-size:23px}.account-card-subtitle{margin-bottom:21px;font-size:12px}.account-center-card .account-form-fields input{height:51px}.account-center-card .account-submit{height:53px}.account-scene-avatar{width:78px}.avatar-father{top:10px;left:calc(50% - 102px)}.avatar-mother{top:10px;right:calc(50% - 102px)}}
@media(prefers-reduced-motion:reduce){.account-center-card,.account-scene-avatar,.account-scene-chip{animation:none!important}}
@media(max-width:640px){.account-brand .brand-mark{width:34px;height:34px}}
