/* Account pages share the dashboard's cream, purple, and small gold accents. */
.account-page{min-height:100vh;background:radial-gradient(ellipse at 9% 31%,#eee2f777,transparent 47%),radial-gradient(ellipse at 93% 88%,#ffedc580,transparent 43%),#fff8ed;color:#594968}
@media(max-width:650px){.account-header-actions{flex-wrap:wrap;justify-content:flex-end}.account-header .parent-mode-toggle{min-height:39px;padding:7px 10px;font-size:11px}}
.account-page [hidden]{display:none!important}
.account-shell{display:flex;flex-direction:column;width:min(100%,1120px);min-height:100vh;margin:0 auto;padding:0 38px}
.account-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:104px;padding:22px 0;border-bottom:1px solid #eae1e5}
.account-header .brand{flex-basis:auto;font-size:20px;gap:11px}
.account-header-actions{display:flex;align-items:center;gap:22px;min-width:0}
.account-header-actions .user-picker,.account-header-actions .user-switcher{width:145px}
.account-header-actions .user-switcher{min-height:43px}
.account-page .account-footer{display:block;margin-top:auto;padding:32px 0;color:#ae9eaf;font-size:11px;text-align:center;line-height:1.7}
.account-card{border:1px solid #e9dfeb;border-radius:28px;background:#fffdfa;box-shadow:0 16px 48px #77578809}
.account-page .section-kicker{font-size:10px;line-height:1.6;color:#a184b5;letter-spacing:.17em}
.login-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:74px;flex:1;padding:68px 0 64px}
.login-intro h1{margin:20px 0 22px;font-size:clamp(32px,3.65vw,46px);font-weight:750;line-height:1.4;letter-spacing:-.045em;white-space:pre-line;color:#705387}
.login-intro>p:not(.section-kicker){max-width:360px;margin:0;color:#a08d9f;font-size:14px;line-height:1.95}
.login-promise{display:flex;align-items:center;gap:12px;margin-top:34px;color:#a28a9d;font-size:12px;line-height:1.7}
.login-promise>span:first-child{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:11px;background:#fff0d4;color:#d6a452;font-size:19px}
.login-card{padding:35px 33px}
.account-emblem{display:grid;place-items:center;width:65px;height:65px;margin-bottom:24px;border-radius:22px;background:#f0e6fa;color:#a484bb}
.account-emblem svg{width:43px;height:43px}
.account-page h2{margin:0;color:#745584;font-size:26px;font-weight:700;line-height:1.4;letter-spacing:-.035em}
.account-description{margin:13px 0 24px;color:#a08caa;font-size:13px;line-height:1.8}
.account-page label{display:block;margin-bottom:9px;color:#92739f;font-size:12px;font-weight:700;line-height:1.6}
.account-page input,.account-page select{width:100%;min-width:0;min-height:48px;border:1px solid #e3d6e9;border-radius:12px;background:#fffefd;padding:11px 13px;color:#735a82;font-family:inherit;font-size:14px;line-height:1.6}
.account-page input::placeholder{color:#c0adca}
.account-page input:disabled,.account-page select:disabled{background:#f4eff6;color:#ad9fb5}
.account-primary,.account-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:47px;border:1px solid #d7c2e7;border-radius:13px;padding:12px 19px;font-size:13px;font-weight:700;line-height:1.6;text-decoration:none;transition:background .16s,border-color .16s,transform .16s}
.account-primary{background:#e9d9f6;color:#805799;box-shadow:0 3px 0 #d9c1e9}
.account-primary:hover:not(:disabled){background:#e1cbf2;border-color:#c3a3d9;transform:translateY(-1px)}
.account-secondary{background:#fffdfa;border-color:#e6dbea;color:#9b7caa}
.account-secondary:hover:not(:disabled){background:#f7effb;border-color:#ceb8dc}
.account-primary:disabled,.account-secondary:disabled,.account-text-button:disabled{cursor:wait;opacity:.55;box-shadow:none;transform:none}
.login-card .account-primary,.login-card .account-secondary{width:100%}
#login-form .account-primary{margin-top:17px}
.account-text-button{border:0;background:none;padding:9px 0;color:#9e7ab4;font-size:12px;line-height:1.6;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#d2bde0}
.account-text-button:hover:not(:disabled){color:#754594}
#verify-panel .account-text-button{display:block;margin:11px auto 0}
.account-note{margin:14px 0;color:#b09eB5;font-size:11px;line-height:1.85}
.login-footnote{margin:23px 0 0;padding-top:20px;border-top:1px solid #efe7ef;text-align:center}
.account-error{margin:16px 0 0;border:1px solid #efdae0;border-radius:12px;background:#fff3f2;padding:11px 14px;color:#b67788;font-size:12px;line-height:1.85;overflow-wrap:anywhere}
.sent-email{margin:15px 0 17px;border:1px solid #e9dfef;border-radius:13px;background:#f7f0fb;padding:14px;color:#856399;font-size:14px;font-weight:700;line-height:1.7;overflow-wrap:anywhere}
#sent-panel .account-secondary{margin-top:11px}
.family-main{flex:1;padding:47px 0 15px}
.family-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:34px}
.family-heading h1{margin:10px 0 12px;color:#725780;font-size:35px;line-height:1.3;letter-spacing:-.045em}
.family-heading>div{min-width:0}
.family-heading>.account-primary{flex:none}
.account-email{margin:0;color:#ac96b4;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.account-loading{padding:65px 20px;color:#a089ad;font-size:13px;text-align:center;line-height:1.8}
#retry-family{margin-top:16px}
.family-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin-bottom:18px}
.family-section-heading h2{font-size:18px}
.family-section-heading>span{color:#b29cbb;font-size:11px}
.children-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.child-card{display:flex;flex-direction:column;min-width:0;min-height:246px;border:1px solid #e7daed;border-radius:23px;background:linear-gradient(135deg,#fffdfa 25%,#faf5ff);padding:23px;color:#755687;text-decoration:none;box-shadow:0 9px 25px #6e4d8606;transition:border-color .2s,transform .2s,box-shadow .2s}
.child-card:hover{border-color:#c6abd9;transform:translateY(-3px);box-shadow:0 13px 30px #6e4d8610}
.child-card-heading{display:flex;align-items:center;gap:13px;min-width:0;margin-bottom:22px}
.child-avatar{display:grid;place-items:center;width:47px;height:47px;flex:none;border:1px solid #e1cfee;border-radius:15px;background:#ebddf6;color:#9270ad;font-size:22px;font-weight:750}
.child-card:nth-child(3n+2) .child-avatar{border-color:#e7d4cd;background:#f7e8df;color:#b99281}
.child-card:nth-child(3n+3) .child-avatar{border-color:#cde2e9;background:#e8f3f7;color:#85a8b8}
.child-card h3{min-width:0;margin:0;font-size:21px;line-height:1.4;letter-spacing:-.02em;overflow-wrap:anywhere}
.child-goal-name{margin:0 0 7px;color:#9c7ea8;font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.child-goal-meta{margin:0 0 22px;color:#b1a0b9;font-size:11px;line-height:1.8;overflow-wrap:anywhere}
.child-open{display:block;margin-top:auto;padding-top:15px;border-top:1px solid #ece2f0;color:#9871b0;font-size:11px;font-weight:700;line-height:1.5}
.empty-family{padding:40px 28px 38px;text-align:center;background:radial-gradient(ellipse at 50% 0,#f1e6fa,transparent 66%),#fffdfa}
.family-welcome-art{position:relative;display:flex;justify-content:center;align-items:center;gap:21px;height:73px;margin-bottom:18px;color:#d3b0e2}
.family-welcome-art span:first-child{font-size:32px;transform:rotate(-12deg)}
.family-welcome-art span:nth-child(2){font-size:74px;color:#d9b578}
.family-welcome-art span:last-child{align-self:flex-start;margin-top:8px;font-size:21px;color:#beabd7}
.empty-family .section-kicker{margin-bottom:11px}
.empty-family h2{font-size:26px}
.empty-family>p:not(.section-kicker){max-width:380px;margin:16px auto 24px;color:#a58caf;font-size:13px;line-height:1.9}
.add-child-panel{max-width:740px;margin:30px auto 0;padding:31px;scroll-margin-top:22px}
.account-panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.account-panel-heading>div{min-width:0}
.account-panel-heading h2{margin-top:7px;font-size:24px}
.account-close{display:grid;place-items:center;width:37px;height:37px;flex:none;border:1px solid #e5d6ed;border-radius:12px;background:#f4edf9;color:#ab8dba;padding:0;font-size:23px;line-height:1}
.account-close:hover{background:#ebdef5}
.account-fieldset{min-width:0;margin:0;border:0;padding:0}
.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 20px}
.account-field{min-width:0}
.account-field-wide{grid-column:1/-1}
.account-input-unit{position:relative}
.account-input-unit input{padding-right:64px}
.account-input-unit>span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#baa3c3;font-size:11px;pointer-events:none}
.account-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:29px;padding-top:23px;border-top:1px solid #ece2ef}
.local-import-card{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:30px;padding:25px 29px;background:#fbf7fe}
.local-import-card h2{font-size:17px}
.local-import-card p{margin:9px 0 0;color:#a58bb1;font-size:12px;line-height:1.8}
.local-import-card button{flex:none}
/* Can also be used by authenticated dashboard headers. */
.family-back-link,.account-family-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:1px solid #e1d2eb;border-radius:12px;background:#fbf6ff;padding:8px 12px;color:#9a77af;font-size:11px;font-weight:700;line-height:1.5;text-decoration:none;white-space:nowrap}
.family-back-link:hover,.account-family-link:hover{border-color:#c5a8d9;background:#f1e6fa}
@media(max-width:900px){.login-main{gap:36px}.login-card{padding:30px 27px}.children-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.account-shell{padding:0 21px}.account-header{min-height:89px;gap:12px;padding:19px 0}.account-header .brand{font-size:17px;gap:8px}.account-header .brand img{width:35px;height:35px}.account-header-actions{gap:14px}.account-header .language-switch{padding:3px}.account-header .language-switch button{min-width:27px;height:30px;font-size:11px}.account-header-actions>.account-text-button{font-size:11px}.login-main{grid-template-columns:1fr;gap:29px;padding:36px 0 24px}.login-intro{max-width:470px;margin:0 auto;width:100%}.login-intro h1{margin:13px 0 15px;font-size:31px;line-height:1.35}.login-intro>p:not(.section-kicker){max-width:100%;font-size:12px;line-height:1.85}.login-promise{margin-top:20px;font-size:11px}.login-promise>span:first-child{width:28px;height:28px}.login-card{width:100%;max-width:470px;margin:0 auto;padding:27px 25px;border-radius:24px}.account-emblem{width:55px;height:55px;margin-bottom:19px;border-radius:18px}.account-emblem svg{width:37px;height:37px}.account-page h2{font-size:24px}.account-description{font-size:12px;line-height:1.85;margin-bottom:21px}.family-main{padding-top:32px}.family-heading{align-items:flex-start;flex-wrap:wrap;gap:19px;margin-bottom:27px}.family-heading h1{font-size:29px}.family-heading .account-primary{min-height:42px;padding:9px 15px;font-size:12px}.children-grid{gap:15px}.child-card{padding:20px;min-height:224px}.child-card-heading{gap:11px}.child-card h3{font-size:19px}.child-avatar{width:41px;height:41px;border-radius:13px;font-size:20px}.empty-family{padding:31px 23px}.empty-family h2{font-size:23px}.empty-family>p:not(.section-kicker){font-size:12px}.add-child-panel{padding:25px 21px;border-radius:23px}.account-panel-heading h2{font-size:22px}.account-form-grid{gap:19px 15px}.account-page input,.account-page select{font-size:16px}.account-form-actions{gap:10px}.account-form-actions button{min-width:0;padding:11px 14px;font-size:12px}.local-import-card{align-items:stretch;flex-direction:column;padding:24px;gap:18px}.account-page .account-footer{padding:27px 0;font-size:10px}}
@media(max-width:480px){.children-grid{grid-template-columns:1fr}.child-card{min-height:225px}.account-form-grid{grid-template-columns:1fr}.account-field-wide{grid-column:auto}.account-form-actions .account-primary{flex:1}.family-page .account-header{flex-wrap:wrap}.family-page .account-header-actions{margin-left:auto}.account-page .language-switch{flex:none}.account-panel-heading h2{font-size:21px}}
@media(max-width:350px){.account-shell{padding:0 16px}.account-header .brand{font-size:16px;gap:6px}.account-header .brand img{width:32px;height:32px}.account-header .language-switch button{min-width:25px;padding:0 3px}.login-card{padding:24px 20px}.login-intro h1{font-size:28px}.account-header-actions{gap:12px}.account-primary,.account-secondary{font-size:12px;padding:11px 14px}.add-child-panel{padding:23px 18px}}

/* Nothing animates behind the loading cover: iPad Safari left a progress bar stuck part-way when the cover came off mid-animation. */
body[data-account-loading=true]>.page-shell *,body[data-account-loading=true]>.account-shell main *{transition:none!important}
body[data-account-loading=true]>.page-shell{visibility:hidden}body[data-account-loading=true]>.account-shell main{visibility:hidden}.account-load-state{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;z-index:20;background:#fff8ed;color:#80628f;font-size:14px}.account-load-state a{color:#80628f}.account-family-link{white-space:nowrap}body[data-account-saving=true] #task-list,body[data-account-saving=true] #user-switcher{pointer-events:none;opacity:.7}

/* Shared account menu: beside the language switch on every family page. */
.account-header{position:relative;z-index:30}
.account-picker{position:relative;flex:none}
.account-picker[hidden],.account-dropdown[hidden],.account-menu-item[hidden],.account-menu-error[hidden]{display:none!important}
.account-menu-trigger{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:11px 13px;border:1px solid #e3d8ee;border-radius:15px;background:linear-gradient(120deg,#fffdfb,#f9f5ff);color:#765a90;font-family:inherit;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap;box-shadow:0 4px 16px #65497508;transition:border-color .16s,background .16s}
.account-menu-trigger:hover,.account-menu-trigger[aria-expanded=true]{border-color:#bda5d5;background:#f4ecfc}
.account-menu-trigger:disabled{cursor:not-allowed;border-color:#e5e1e8;background:#f1eff2;color:#b9b2bf;box-shadow:none}
.account-menu-trigger:disabled svg{color:#b9b2bf}
.user-picker[data-user=parents]>.user-switcher .user-avatar,.user-option-parent .user-avatar{background:#e4d9f5;color:#7154a2}
.user-option-parent{margin-top:4px;border-top:1px solid #eee5f0;border-radius:0 0 12px 12px}
.parent-password-dialog{width:min(92vw,420px);max-height:90vh;border:1px solid #e7d9ee;border-radius:25px;background:linear-gradient(150deg,#fffdfa,#fbf5ff);padding:0;color:#4c4058;box-shadow:0 28px 75px #31234750}
.parent-password-dialog::backdrop{background:#251d3b85;backdrop-filter:blur(5px)}
.parent-password-form{display:grid;gap:11px;padding:30px}
.parent-password-dialog[data-mode=change] .parent-password-form{gap:7px;padding:20px 26px}
.parent-password-dialog[data-mode=change] .parent-password-art{width:44px;height:44px;font-size:21px}
.parent-password-dialog[data-mode=change] .parent-password-form p:not(.section-kicker){margin-bottom:0}
.parent-password-dialog[data-mode=change] .parent-password-form label{margin:2px 0 4px}
.parent-password-dialog[data-mode=change] .pin-entry-field{height:48px}
.parent-password-art{display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:#eee5fa;font-size:25px}
.parent-password-form .section-kicker{margin:5px 0 0}
.parent-password-form h2{margin:0;color:#604b80;font-size:23px}
.parent-password-form p:not(.section-kicker){margin:0 0 5px;color:#897f91;font-size:13px;line-height:1.7}
.parent-password-form label{display:block;margin:4px 0 7px;color:#725c85;font-size:12px;font-weight:700}
.parent-password-form input{width:100%;min-height:45px;border:1px solid #e3d7eb;border-radius:12px;background:#fff;padding:10px 12px;color:#4c4058}
.pin-entry{display:flex;align-items:center;gap:10px;width:max-content;max-width:100%}
.pin-entry[hidden],.parent-dialog-link[hidden],#parent-change-wrap[hidden],#parent-recovery-login[hidden],#parent-recovery-local[hidden],.parent-password-form label[hidden],.parent-password-form .dialog-actions button[hidden]{display:none!important}
.pin-entry-field{position:relative;width:min(220px,calc(100vw - 138px));height:52px}
.pin-entry-boxes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;height:100%}
.pin-entry-cell{display:grid;place-items:center;min-width:0;border:1px solid #dcccE9;border-radius:12px;background:#fff;color:#694c88;font-size:22px;font-weight:700;box-shadow:0 3px 10px #6549750a;transition:border-color .15s,box-shadow .15s,background .15s}
.pin-entry-cell.is-active{border-color:#aa83cf;background:#fbf7ff;box-shadow:0 0 0 3px #d8c2ed77}
.account-page .pin-entry-input,.parent-password-form .pin-entry-input{position:absolute;z-index:2;inset:0;width:100%;height:100%;min-height:0;margin:0;padding:0;border:0;opacity:0;cursor:text}
.parent-password-visibility{display:grid;place-items:center;flex:none;width:39px;height:39px;border:0;border-radius:10px;background:transparent;color:#81679b;cursor:pointer}
.parent-password-visibility:hover{background:#f3ecf9;color:#674d87}
.parent-password-visibility:focus-visible{outline:2px solid #a788c7;outline-offset:1px}
.parent-password-visibility svg{width:20px;height:20px}
.parent-password-visibility .eye-slash{display:none;stroke:#81679b;stroke-width:2.5}
.parent-password-visibility[aria-pressed=true] .eye-slash{display:block}
.parent-dialog-link{justify-self:start;border:0;background:transparent;padding:3px 0;color:#9274ad;font-family:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.parent-dialog-link:hover{color:#6e4a91}
#parent-recovery-login{display:grid;gap:6px}
#parent-recovery-login label:not(:first-child){margin-top:6px}
#parent-recovery-local{display:grid;gap:10px;min-width:0}
#parent-recovery-command{display:block;max-height:140px;overflow:auto;border:1px solid #e3d7eb;border-radius:12px;background:#f8f2fc;padding:12px;color:#6f5685;font-size:11px;line-height:1.6;overflow-wrap:anywhere;user-select:all}
#parent-recovery-copy{justify-self:start;border:1px solid #ddc8ed;border-radius:9px;background:#f8f1fc;padding:8px 11px;text-decoration:none;font-weight:700}
.parent-password-form .form-error{min-height:18px;color:#b94657}
.parent-password-form .dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}
.parent-password-form .dialog-actions button{min-height:43px}
.calendar-header-actions,.rewards-header-actions{flex-wrap:wrap;justify-content:flex-end}
.calendar-header-actions .user-picker,.rewards-header-actions .user-picker{width:145px}
.calendar-header-actions .user-switcher,.rewards-header-actions .user-switcher{width:145px}
.account-menu-trigger svg{width:20px;height:20px;flex:none}
.account-menu-trigger svg:last-child{width:14px;height:14px;color:#9c85b5;transition:transform .16s}
.account-menu-trigger[aria-expanded=true] svg:last-child{transform:rotate(180deg)}
.account-menu-trigger:focus-visible,.account-menu-item:focus-visible{outline:3px solid #ae90d2;outline-offset:3px}
.account-dropdown{position:absolute;z-index:100;top:calc(100% + 12px);right:0;width:284px;max-width:calc(100vw - 32px);padding:8px;border:1px solid #e4d6ed;border-radius:21px;background:#fffdf9;box-shadow:0 20px 55px #53306b24,0 4px 14px #53306b08;text-align:left}
.account-dropdown-heading{display:flex;flex-direction:column;gap:6px;margin:1px 6px 7px;padding:11px 8px 17px;border-bottom:1px solid #eee4ef}
.account-dropdown-heading strong{color:#796086;font-size:12px;line-height:1.6;overflow-wrap:anywhere;font-weight:650}
.account-dropdown-heading>span{color:#a08aae;font-size:10px;line-height:1.5}
.account-menu-item{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;padding:11px 13px;border:0;border-radius:12px;background:transparent;color:#735984;text-decoration:none;text-align:left;font-size:13px;font-family:inherit;font-weight:600;line-height:1.5;cursor:pointer}
.account-menu-item>svg{width:19px;height:19px;flex:none;color:#a185b5}
.account-menu-item:hover{background:#f4edf9;color:#654987}
.account-menu-soon{margin-left:auto;padding:3px 6px;border-radius:7px;background:#f0e8f5;color:#a18ab0;font-size:9px;font-weight:500;white-space:nowrap}
.account-menu-signout{margin-top:7px;border-top:1px solid #eee4ef;border-radius:0 0 12px 12px}
.account-menu-error{margin:5px 9px 8px;font-size:11px;line-height:1.7;color:#b47685}
.account-settings-main{flex:1;padding:44px 0 25px}
.account-settings-main .family-heading{align-items:flex-start;margin-bottom:25px}
.account-settings-main .family-heading>.family-back-link{margin-top:30px}
.account-settings-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
.account-setting-card{padding:29px;min-width:0;scroll-margin-top:25px}
.account-setting-card:focus{outline:none}
.account-setting-card:target{border-color:#bda5d5;box-shadow:0 12px 36px #77578810}
.account-setting-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}
.account-setting-heading .section-kicker{margin-bottom:7px}
.account-setting-card h2{font-size:23px}
.account-setting-card h3{margin:0 0 7px;font-size:14px;line-height:1.6;color:#79558c;font-weight:650}
.account-setting-card p:not(.section-kicker){margin:0;color:#9b84a7;font-size:12px;line-height:1.85}
.account-status-pill{flex:none;display:inline-block;padding:6px 10px;background:#efe4f8;border-radius:9px;color:#9671ab;font-size:10px;font-weight:650;line-height:1.5;white-space:nowrap}
.account-status-muted{background:#f2edf2;color:#ae99b6}
.account-setting-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:21px 0;border-top:1px solid #eee4ef}
.account-setting-row:first-of-type{padding-top:0;border-top:0}
.account-setting-row:last-child{padding-bottom:0}
.account-setting-row>span:first-child{font-size:12px;color:#9d83aa;white-space:nowrap}
.account-setting-row strong{font-size:12px;line-height:1.8;color:#80618e;overflow-wrap:anywhere;text-align:right}
.account-credits-art{display:grid;place-items:center;width:64px;height:64px;margin:6px 0 20px;border:1px solid #decdeb;border-radius:22px;background:linear-gradient(140deg,#f7edfe,#ece0f6);color:#aa84c4;font-size:34px}
.account-setting-card .account-setting-hint{margin-top:19px!important;padding-top:16px;border-top:1px solid #eee4ef;font-size:11px!important}
.account-contact-card{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:35px;background:linear-gradient(115deg,#fffdfa,#f9f1fe)}
.account-contact-card h2{margin:7px 0 11px}
.account-contact-email{display:flex;align-items:center;gap:16px;border:1px solid #decbe9;border-radius:14px;padding:15px 18px;background:#fffafc;color:#8f6aa4;font-size:14px;font-weight:650;text-decoration:none;overflow-wrap:anywhere}
.account-contact-email:hover{background:#f1e6fa;border-color:#bea0d0}
.calendar-topbar,.rewards-topbar{z-index:30}
@media(max-width:760px){.top-actions{flex-wrap:wrap;gap:10px}.account-settings-grid{grid-template-columns:1fr}.account-contact-card{grid-column:auto;align-items:flex-start;flex-direction:column;gap:22px}.account-contact-email{font-size:13px}.account-setting-card{padding:25px}.account-header-actions{gap:10px}.account-menu-trigger{gap:7px;padding:9px 11px;font-size:12px}.account-header .account-menu-trigger{min-height:42px}.account-header .brand{font-size:17px}}
@media(max-width:650px){.top-actions .language-switch{order:0}.top-actions .user-picker{order:1}.top-actions>.icon-button{order:2}.top-actions .account-picker{order:3}.calendar-header-actions,.rewards-header-actions{flex-wrap:wrap;gap:10px}.account-picker .account-dropdown{right:0}.top-actions .account-dropdown{left:auto;right:0}.account-settings-main .family-heading{display:block}.account-settings-main .family-heading>.family-back-link{margin-top:0;margin-bottom:10px}.account-settings-main{padding-top:28px}.account-setting-row{gap:12px}.account-header{flex-wrap:wrap}.account-header-actions{margin-left:auto}.account-setting-heading{gap:10px}.account-setting-card h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){.account-menu-trigger,.account-menu-trigger svg:last-child{transition:none}}

/* Child profiles and their daily progress are separate family views. */
.family-heading-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;flex:none}
.family-heading .account-description{margin:12px 0 16px;font-size:14px}
.profile-grid,.tracking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.child-profile-card{min-height:300px;padding:28px}
.child-profile-card:hover{transform:none}
.child-profile-card .child-card-heading{margin-bottom:25px}
.child-profile-card .child-avatar{width:64px;height:64px;border-radius:21px;font-size:26px}
.child-avatar{overflow:hidden}
.child-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.child-identity{min-width:0}
.child-age{margin:5px 0 0;font-size:14px;color:#907d9e}
.child-time-summary{margin:6px 0 0;font-size:12px;line-height:1.5;color:#80618e}
.profile-gift-label{display:block;margin-bottom:8px;color:#9478a3;font-size:12px}
.child-profile-card .child-goal-name{font-size:20px;line-height:1.5;color:#745584;font-weight:650}
.child-profile-card .child-goal-meta{font-size:13px;line-height:1.8;margin-bottom:26px}
.profile-edit{align-self:flex-start;margin-top:auto;min-width:120px;font-size:14px}
.profile-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:auto}.profile-actions .profile-edit{margin-top:0}.profile-actions .profile-delete{min-width:100px;font-size:14px;border-color:#e8cdd4;color:#ae6475}.profile-actions .profile-delete:hover:not(:disabled){border-color:#d5a8b3;background:#fff5f7;color:#974d61}.account-danger{min-height:43px;border:1px solid #d797a2;border-radius:11px;background:#bb6577;padding:10px 17px;color:#fff;font-size:13px;font-weight:700;cursor:pointer}.account-danger:hover{background:#a95164}.account-danger:disabled{opacity:.5;cursor:default}.delete-child-panel{width:min(92vw,490px);padding:26px}.delete-child-panel .account-form-actions{margin-top:24px}.delete-child-panel .account-description{line-height:1.8}
.family-success{border:1px solid #d9c5e9;border-radius:14px;padding:14px 18px;background:#f5edfb;color:#77528f;font-size:14px;line-height:1.7;margin:0 0 24px}
.profile-photo-field{display:flex;align-items:center;gap:22px;margin:0 0 27px;padding-bottom:25px;border-bottom:1px solid #ece2ef}
.profile-photo-preview{width:90px;height:90px;border-radius:25px;font-size:30px}
.profile-photo-field>div{min-width:0;flex:1}
.profile-photo-field input{font-size:13px;padding:8px;min-height:42px}
.profile-photo-field input::file-selector-button{border:0;border-radius:8px;padding:8px 10px;margin-right:10px;color:#76578d;background:#efe3f8;font-family:inherit;cursor:pointer}
.profile-photo-field .account-note{margin:7px 0 0;font-size:12px}
.profile-photo-field .account-text-button{font-size:13px}
.family-page label{font-size:14px}
.family-page #child-error{margin-bottom:15px}
.tracking-card{padding:28px;min-width:0}
.tracking-card-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:26px}
.tracking-card-heading .child-card-heading{margin:0;gap:12px}
.tracking-card h2{font-size:23px;overflow-wrap:anywhere}
.tracking-card:nth-child(even) .child-avatar{background:#f7e8df;border-color:#e7d4cd;color:#b99281}
.tracking-status{font-size:12px;line-height:1.5;color:#9c889f;background:#f1edf3;border:1px solid #e7dfee;border-radius:10px;padding:6px 10px;flex:none}
.tracking-status.is-complete{background:#fff4d9;border-color:#f0dca4;color:#a17a22}
.tracking-stats{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-bottom:1px solid #eee4ef;padding-bottom:25px;margin-bottom:24px}
.tracking-stats>div{display:flex;flex-direction:column;gap:10px}
.tracking-stats>div+div{border-left:1px solid #eee4ef;padding-left:24px}
.tracking-stats span{font-size:14px;color:#947ba2}
.tracking-stats strong{font-size:25px;line-height:1.5;color:#7e5998}
.tracking-stats .tracking-stars{color:#ad8331}
.tracking-stats .tracking-stars{display:flex;align-items:center;gap:3px}
.tracking-coin{flex:none;object-fit:contain}
.tracking-recent-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}
.tracking-recent-heading h3{margin:0;color:#80618e;font-size:14px;font-weight:650}
.tracking-recent-heading a{color:#8c65a6;font-size:13px;text-underline-offset:4px}
.tracking-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.tracking-day{display:flex;align-items:center;flex-direction:column;gap:9px;text-align:center;color:#a190aa;font-size:12px}
.tracking-dot{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#ede8f0;color:#c6bccb;font-size:21px}
.tracking-dot.is-complete{background:#ffe8a8;color:#b78a30}
.tracking-dot img{display:block;width:23px;height:23px;object-fit:contain}
.tracking-day.is-today .tracking-dot{outline:2px solid #c4a9d7;outline-offset:3px}
.tracking-day.is-today .tracking-weekday{color:#7e5998;font-weight:700}
.tracking-open{display:flex;margin-top:28px;font-size:14px}
@media(max-width:760px){.family-heading-actions{flex-wrap:wrap}.profile-grid,.tracking-grid{gap:18px}.child-profile-card,.tracking-card{padding:22px}.tracking-card-heading{align-items:flex-start;flex-wrap:wrap}.tracking-week{gap:3px}.tracking-dot{width:31px;height:31px}.tracking-stats{gap:12px}.tracking-stats>div+div{padding-left:14px}.tracking-stats strong{font-size:23px}}
@media(max-width:600px){.profile-grid,.tracking-grid{grid-template-columns:1fr}.family-heading-actions{width:100%}.child-profile-card{min-height:285px}.tracking-card-heading{align-items:center}.tracking-dot{width:36px;height:36px}.profile-photo-field{gap:16px}.profile-photo-preview{width:70px;height:70px;border-radius:20px}}

/* Child details open above the family list. */
.profile-dialog{position:fixed;inset:0;width:min(700px,calc(100vw - 40px));max-width:none;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);margin:auto;padding:30px;overflow:auto;overscroll-behavior:contain;color:#594968;box-shadow:0 28px 90px #49315e38}
.profile-dialog::backdrop{background:#30243d70;backdrop-filter:blur(4px)}
.profile-dialog .account-form-actions{position:sticky;bottom:-30px;margin:25px -30px -30px;padding:18px 30px 25px;background:#fffdfa;z-index:2}
.profile-dialog .account-panel-heading h2{font-size:24px;line-height:1.5}
.profile-dialog .profile-photo-field{margin-bottom:23px;padding-bottom:22px}
.profile-dialog .account-description{margin:10px 0 21px}
body:has(.profile-dialog[open]){overflow:hidden}
@media(max-width:650px){.profile-dialog{width:calc(100vw - 28px);max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);padding:23px 21px;border-radius:23px}.profile-dialog .account-panel-heading h2{font-size:22px}.profile-dialog .account-form-actions{bottom:-23px;margin:24px -21px -23px;padding:16px 21px 21px}.profile-dialog .profile-photo-field{gap:14px}}

/* Account forms and the private, pending contact inbox. */
.account-setting-form-row{display:grid;grid-template-columns:minmax(190px,1fr) minmax(280px,1.25fr);align-items:start;gap:28px}
.account-setting-form-row>div:first-child{min-width:0}
.account-inline-form{display:grid;gap:9px;min-width:0}
.account-inline-form label{margin:5px 0 0}
.account-inline-form button{justify-self:start;margin-top:7px}
.account-inline-form .account-error{margin:3px 0 0}
.account-contact-card{display:block}
.account-contact-card>div:first-child{margin-bottom:24px}
.contact-form{display:grid;gap:9px;width:100%;min-width:0}
.contact-form label{margin:7px 0 0}
.account-page textarea{width:100%;min-height:135px;border:1px solid #e3d6e9;border-radius:12px;background:#fffefd;padding:12px 13px;color:#735a82;font:inherit;font-size:14px;resize:vertical}
.contact-form .account-primary{justify-self:start;margin-top:7px}
.contact-inbox{margin-top:30px;padding-top:24px;border-top:1px solid #eee4ef}
.contact-inbox-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.contact-inbox-heading .account-secondary{min-height:38px}
.contact-inbox #contact-inbox-state{margin:12px 0 16px}
.contact-message{display:grid;gap:7px;margin:12px 0;padding:16px;border:1px solid #e9ddec;border-radius:14px;background:#fffafc;overflow-wrap:anywhere}
.contact-message strong{color:#735584;font-size:12px}
.contact-message span,.contact-message small{color:#9d83aa;font-size:11px}
.contact-message p{white-space:pre-wrap;color:#685671!important;font-size:13px!important}
.login-method-toggle{display:block;margin:16px auto 0}
#password-login-form{display:grid;gap:9px}
#password-login-form .account-primary{margin-top:13px}
@media(max-width:760px){.account-setting-form-row{grid-template-columns:1fr;gap:13px}.account-inline-form button{justify-self:stretch}}

/* Account menu: who is signed in, grouped links with icon tiles, then lock and sign out. */
.account-dropdown{width:300px;padding:14px;border-color:#eee7db;border-radius:22px;background:#fffdf8;box-shadow:0 26px 60px #6d526b2e,0 4px 14px #6d526b0d}
.account-dropdown-heading{flex-direction:row;align-items:center;gap:12px;margin:0;padding:4px 6px 0;border:0}
.account-menu-crown{flex:none;width:46px;height:46px;overflow:hidden;border-radius:14px}
.account-menu-crown img{display:block;width:50px;height:50px;margin:-2px}
.account-menu-identity{display:grid;gap:2px;min-width:0}
.account-dropdown-heading strong{color:#2e3040;font-size:14px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
.account-menu-identity>span{color:#8a8192;font-size:12px;line-height:1.5}
.account-menu-chips{display:flex;flex-wrap:wrap;gap:6px;padding:10px 6px 2px}
.account-menu-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:750}
.account-menu-chip.is-ok{background:#e9f6ef;color:#3f8a62}
.account-menu-chip.is-ok::before{content:"";width:6px;height:6px;border-radius:50%;background:#5cc58a}
.account-menu-chip.is-parent{background:#eee5fa;color:#7657b8}
.account-menu-group{margin-top:8px;padding-top:8px;border-top:1px solid #f1ebe2}
.account-menu-group-label{display:block;padding:2px 8px 4px;color:#a8a2ae;font-size:10px;font-weight:800;letter-spacing:.14em}
.account-menu-item{gap:10px;min-height:38px;padding:0 8px;border-radius:10px;color:#4d4658;font-size:13px;font-weight:650}
.account-menu-icon{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:8px;background:#f5f0fb;color:#8a6fc4}
.account-menu-icon svg{width:16px;height:16px}
.account-menu-item:hover{background:#faf6ff;color:#2e3040}
.account-menu-soon{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;background:#fff0d2;color:#94661f;font-size:11px;font-weight:800}
.account-menu-soon::before{content:"";width:5px;height:5px;border-radius:50%;background:#e9a83c}
.account-menu-footer{display:grid;gap:2px;margin-top:6px;padding-top:8px;border-top:1px solid #f1ebe2}
.account-menu-footer .account-menu-signout{margin:0;border:0;border-radius:10px;background:#fdf1ee;color:#b0564a}
.account-menu-footer .account-menu-signout .account-menu-icon{background:#fbe1db;color:#b0564a}
.account-menu-footer .account-menu-signout:hover{background:#fbe6e1;color:#954f46}
.account-menu-item:disabled{cursor:wait;opacity:.6}

/* Sign-out confirmation: worried Elsa leans out of a round frame above the card. */
.signout-dialog{translate:0 72px}
.signout-dialog form{position:relative;padding:92px 26px 24px;text-align:center}
.signout-medal{position:absolute;top:-144px;left:50%;width:190px;height:214px;margin-left:-95px;pointer-events:none}
.signout-disc{position:absolute;left:25px;bottom:0;width:140px;height:140px;border:5px solid #fffdf8;border-radius:50%;background:radial-gradient(circle at 50% 30%,#fdfaff 0,#efe6ff 55%,#e2d3fa 100%);box-shadow:0 12px 26px #6d526b26}
.signout-figure{position:absolute;inset:0;-webkit-mask:linear-gradient(#000,#000) 0 0/100% 144px no-repeat,radial-gradient(circle 65px at 95px 144px,#000 98.5%,#0000 100%) 0 0/100% 100% no-repeat;mask:linear-gradient(#000,#000) 0 0/100% 144px no-repeat,radial-gradient(circle 65px at 95px 144px,#000 98.5%,#0000 100%) 0 0/100% 100% no-repeat}
.signout-figure img{position:absolute;top:-10px;left:-6px;width:196px;max-width:none;height:auto}
.signout-dialog .task-confirm-description{margin:10px 0 0}
.signout-everywhere{display:inline-flex!important;align-items:center;gap:8px;margin:14px 0 0!important;color:#8a8192!important;font-size:13px!important;font-weight:600!important;cursor:pointer}
.signout-everywhere input{width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;margin:0;padding:0;accent-color:#7657b8;appearance:auto}
.signout-everywhere[hidden]{display:none!important}
.signout-error{margin:12px 0 0;color:#b0564a;font-size:12px;line-height:1.7}
.signout-dialog .dialog-actions{margin-top:20px}
.signout-error[hidden]{display:none}
/* Per-child feature switches (family form, wishes and passes pages). */
.child-time-settings{margin-top:26px;padding-top:22px;border-top:1px solid #ece2ef}
.family-page .child-time-unlimited{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px;padding:14px 16px;border:1px solid #eee3f3;border-radius:14px;background:#fffdfa;cursor:pointer}
.child-time-unlimited input{position:absolute;width:1px;min-width:0;height:1px;min-height:0;margin:0;padding:0;border:0;opacity:0;pointer-events:none}
.child-time-unlimited .feature-switch{flex:none}
.child-time-unlimited input:checked+.feature-switch{background:#7657b8}
.child-time-unlimited input:checked+.feature-switch::after{transform:translateX(18px)}
.child-time-unlimited input:focus-visible+.feature-switch{outline:2px solid #a677d2;outline-offset:3px}
.child-time-unlimited input:disabled+.feature-switch{opacity:.5}
.child-time-minutes{max-width:260px}
.child-time-minutes input:disabled{background:#f4f0f7;color:#9c8ba7;opacity:.65}
.child-time-settings #child-time-help{margin:12px 0 0}
.feature-settings{margin-top:26px;padding-top:22px;border-top:1px solid #ece2ef}
.feature-settings-title{margin:0;color:#594968;font-size:15px;font-weight:800}
.feature-settings-note{margin:4px 0 14px;color:#9a8aa6;font-size:12px;line-height:1.6}
.feature-list{display:grid;border:1px solid #eee3f3;border-radius:18px;background:#fffdfa;overflow:hidden}
.feature-list .feature-row{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;margin:0;padding:14px 16px;color:inherit;font-weight:inherit;line-height:inherit;cursor:pointer}
.feature-list .feature-row+.feature-row{border-top:1px solid #f1e9f4}
.feature-list .feature-row img{width:40px;height:40px}
.feature-list .feature-row strong{display:block;color:#2e3040;font-size:14px;line-height:1.4}
.feature-list .feature-row small{display:block;color:#8a8192;font-size:12px;font-weight:500;line-height:1.5}
.feature-list .feature-row input{position:absolute;width:1px;height:1px;min-width:0;min-height:0;margin:0;padding:0;border:0;opacity:0;pointer-events:none}
.feature-switch{position:relative;width:46px;height:28px;border-radius:999px;background:#e4dcea;transition:background-color .2s}
.feature-switch::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #30243d33;transition:transform .2s}
.feature-list .feature-row input:checked+.feature-switch{background:#7657b8}
.feature-list .feature-row input:checked+.feature-switch::after{transform:translateX(18px)}
.feature-list .feature-row input:focus-visible+.feature-switch{outline:2px solid #a677d2;outline-offset:3px}
.feature-list .feature-row input:disabled+.feature-switch{opacity:.5}
.feature-list .feature-row:has(input:disabled){cursor:default}
.feature-toggle{margin:0 0 18px}
.feature-guarded{min-width:0;margin:0;padding:0;border:0}
.feature-guarded:disabled{opacity:.45;filter:grayscale(.5)}
/* Buddy × World picker in the child profile form. */
.theme-settings{margin-top:26px;padding-top:22px;border-top:1px solid #ece2ef}
.theme-step-label{margin:14px 0 8px;color:#8a8192;font-size:12px;font-weight:800}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.theme-options .theme-option{position:relative;display:block;margin:0;color:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;cursor:pointer}
.theme-options .theme-option input{position:absolute;width:1px;height:1px;min-width:0;min-height:0;margin:0;padding:0;border:0;opacity:0;pointer-events:none}
.theme-card{position:relative;display:grid;justify-items:center;align-content:start;gap:7px;height:100%;padding:12px 8px 11px;border:1.5px solid #eee3f3;border-radius:18px;background:#fffdfa;text-align:center;transition:border-color .15s,background-color .15s,box-shadow .15s}
.theme-option:not(.is-empty):hover .theme-card{border-color:#d9c8ef}
.theme-option input:checked+.theme-card{border-color:#9d84d8;background:#f6f0fd;box-shadow:0 0 0 3px #9d84d826}
.theme-option input:checked+.theme-card::after{content:"✓";position:absolute;top:7px;right:7px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#7657b8;color:#fff;font-size:11px;font-weight:800}
.theme-option input:focus-visible+.theme-card{outline:2px solid #a677d2;outline-offset:2px}
.theme-card strong{color:#2e3040;font-size:13px;line-height:1.3}
.theme-card small{color:#8a8192;font-size:11px;font-weight:500;line-height:1.4}
.buddy-avatar{display:block;width:68px;height:68px;overflow:hidden;border:3px solid #fff;border-radius:50%;background:#efe6fc;box-shadow:0 6px 16px #7657b826}
.buddy-avatar img{display:block;width:100%;height:100%;object-fit:cover}
/* The world picture is the upper part of the world's home art, tall enough to show the faces whole. */
.world-thumb{display:block;width:100%;height:96px;overflow:hidden;border-radius:12px}
.world-thumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 13%}
.theme-option.is-empty{cursor:default}
.theme-option.is-empty .theme-card{border-style:dashed;background:#fbf9fc}
.theme-slot{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#f3eff6;color:#c5b8d2;font-size:22px}
.world-option.is-empty .theme-slot{width:100%;height:96px;border-radius:12px}
.theme-pager{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:8px}
.theme-pager span{min-width:40px;color:#8a8192;font-size:12px;font-weight:700;text-align:center}
.theme-pager button{display:grid;place-items:center;width:30px;height:30px;margin:0;padding:0;border:1px solid #e6dcef;border-radius:50%;background:#fff;color:#6a4fa7;font:inherit;font-size:17px;line-height:1;cursor:pointer}
.theme-pager button:hover:not(:disabled){border-color:#b9a3e3;background:#f6f0fd}
.theme-pager button:disabled{opacity:.4;cursor:default}
.theme-pager button:focus-visible{outline:2px solid #a677d2;outline-offset:2px}
/* Site-owner theme switches on the account page. */
.theme-admin-list{display:grid;gap:12px;margin-top:16px}
.theme-admin-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;align-items:start;padding:16px;border:1px solid #eee3f3;border-radius:20px;background:#fffdfa}
.theme-admin-avatar{display:block;width:64px;height:64px;overflow:hidden;border:3px solid #fff;border-radius:50%;background:#efe6fc;box-shadow:0 6px 14px #7657b81f}
.theme-admin-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.theme-admin-title{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.theme-admin-title strong{color:#2e3040;font-size:16px}
.theme-admin-chip{border-radius:999px;padding:2px 10px;font-size:11px;font-weight:800}
.theme-admin-chip.is-public{background:#e7f5ec;color:#3f7d57}.theme-admin-chip.is-invite{background:#f3ecfd;color:#6a4fa7}.theme-admin-chip.is-off{background:#f2eff3;color:#8a8192}
.theme-admin-modes{display:inline-flex;gap:4px;padding:4px;border:1px solid #e9def3;border-radius:999px;background:#faf6ff}
.theme-admin-modes .theme-admin-mode{position:relative;display:block;margin:0;cursor:pointer}
.theme-admin-modes .theme-admin-mode input{position:absolute;width:1px;height:1px;min-height:0;margin:0;padding:0;border:0;opacity:0}
.theme-admin-mode span{display:block;border-radius:999px;padding:6px 14px;color:#6a5a78;font-size:13px;font-weight:700}
.theme-admin-mode input:checked+span{background:#7657b8;color:#fff}
.theme-admin-mode input:focus-visible+span{outline:2px solid #a677d2;outline-offset:2px}
.theme-admin-mode input:disabled+span{opacity:.6}
.theme-admin-note{margin:10px 0 0;color:#a0742c;font-size:12px}
.theme-admin-invites{display:grid;gap:8px;margin-top:14px}
.theme-admin-invites textarea{width:100%;min-height:76px;border:1px solid #e6dcef;border-radius:14px;padding:10px 12px;font:inherit;font-size:13px;resize:vertical}
.theme-admin-invites button{justify-self:start}
.theme-admin-message{min-height:18px;margin:12px 0 0;color:#6a5a78;font-size:13px}
.theme-admin-message.is-error{color:#b0716a}
@media(max-width:600px){.theme-admin-row{grid-template-columns:48px minmax(0,1fr);gap:12px}.theme-admin-avatar{width:48px;height:48px}.theme-admin-mode span{padding:6px 10px}}
/* Site owner's back office. */
.admin-content{display:grid;gap:22px}
.frozen-page .admin-card{padding:26px 28px}
.admin-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.admin-card-heading h2{margin:6px 0 0}
.admin-list{display:grid;gap:10px;margin-top:14px}
.admin-row{display:grid;gap:6px;padding:14px 16px;border:1px solid #eee3f3;border-radius:18px;background:#fffdfa}
.admin-row.is-disabled{background:#f7f5f8}
.admin-row-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.admin-email{color:#2e3040;font-size:15px;overflow-wrap:anywhere}
.admin-row-meta{margin:0;color:#8a8192;font-size:12px}
.admin-row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px}
.admin-row-actions .account-secondary{min-height:34px;padding:6px 14px;font-size:13px}
.admin-tag{border-radius:999px;background:#f3ecfd;padding:4px 10px;color:#6a4fa7;font-size:12px;font-weight:700}
.admin-row-actions .admin-danger-text{margin-left:auto;color:#b0716a}
.frozen-page .account-primary.admin-danger,.frozen-page .account-primary.admin-danger:hover:not(:disabled){border-color:#c9645a;background:#c9645a;box-shadow:0 4px 0 #a14f46;color:#fff}
.admin-message-text{margin:4px 0 0;color:#3d3548;font-size:14px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.admin-empty{margin:6px 0 0;color:#8a8192;font-size:13px}
.theme-admin-count{color:#8a8192;font-size:12px;font-weight:700}
.theme-admin-usage{margin:8px 0 0;color:#8a8192;font-size:12px}
#admin-delete-dialog input{width:100%}
