@charset "UTF-8";
/* Scoped account styles: the legacy sanctuary page does not load this file. */
[hidden]{display:none!important}
body.account-pending>.topbar,body.account-pending>main,body.account-pending>#modal,body.account-pending>#toast{display:none!important}
.account-gate{min-height:100svh;display:grid;place-items:center;padding:44px 24px;background:radial-gradient(ellipse at 12% 15%,#dae8e4a6,transparent 45%),radial-gradient(ellipse at 91% 87%,#dce2fa7a,transparent 42%),var(--bg)}
.account-shell{display:grid;grid-template-columns:minmax(280px,.88fr) minmax(360px,1fr);width:min(100%,1010px);border:1px solid var(--line);border-radius:26px;overflow:hidden;background:var(--surface);box-shadow:0 22px 85px #152f2720}
.account-intro{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:48px 40px;color:#f5faf7;background:linear-gradient(145deg,#173f35,#1e5446 58%,#284941);overflow:hidden}
.account-intro:after{content:'✧';position:absolute;bottom:30px;right:-35px;font-family:Georgia,serif;font-size:310px;line-height:1;color:#d8f0e009;pointer-events:none;transform:rotate(18deg)}
.account-brand{display:flex;gap:13px;align-items:center;font-weight:800;font-size:21px;letter-spacing:-.6px;margin-bottom:56px}.account-brand small{display:block;font-size:9px;letter-spacing:2px;color:#bed7c9;font-weight:600;margin-top:2px}
.account-kicker{font-size:10px;font-weight:750;letter-spacing:1.8px;color:var(--accent);margin:0 0 12px}.account-intro .account-kicker{color:#acd1bf;font-size:11px;letter-spacing:.8px}
.account-intro h1{font-size:33px;line-height:1.45;letter-spacing:-1.4px}.account-intro-copy{font-size:13px;line-height:1.95;color:#c9ddd3;margin:18px 0 34px}.account-benefits{display:grid;gap:16px;font-size:12px;color:#deebe3}.account-benefits b{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:8px;border:1px solid #ffffff24;border-radius:8px;font-size:10px;color:#bde0cc}.account-credit{font-size:11px;color:#bcd2c6;margin-top:auto;padding-top:52px;letter-spacing:.1px}
.account-card{padding:44px 44px 38px;min-width:0;display:flex;align-items:center}#accountGateContent{width:100%}.account-card h2{font-size:26px;letter-spacing:-1px;font-weight:800;line-height:1.4}.account-description{color:var(--muted);font-size:13px;line-height:1.85;margin:10px 0 24px}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:var(--surface2);border:1px solid var(--line);border-radius:10px;gap:4px;margin:0 0 24px}.auth-tabs button{border:0;background:transparent;color:var(--muted);border-radius:7px;padding:10px;font-size:13px;font-weight:700}.auth-tabs button[aria-pressed="true"]{background:var(--surface);color:var(--accent);box-shadow:0 2px 7px #182b2212}
.auth-form{display:grid;gap:17px}.auth-field{display:grid;gap:7px;min-width:0}.auth-field>label{font-size:12px;font-weight:700;color:var(--ink);line-height:1.6}.auth-field>label small{display:block;font-size:10px;font-weight:400;color:var(--muted)}.auth-field input{width:100%;min-width:0;min-height:44px;border:1px solid var(--line);background:var(--surface2);padding:11px 12px;border-radius:9px;font-size:13px}.auth-field input:focus{border-color:var(--accent);background:var(--surface)}.auth-password{position:relative}.auth-password input{padding-right:58px}.auth-password-toggle{position:absolute;right:7px;top:7px;min-width:43px;height:30px;padding:4px;border:0;border-radius:6px;color:var(--muted);font-size:11px;font-weight:600;background:transparent}.auth-password-toggle:hover{background:var(--line);color:var(--ink)}.auth-submit{width:100%;min-height:45px!important;font-size:13px!important;border-radius:9px!important}.auth-form .auth-submit{margin-top:3px}.auth-find{display:flex;justify-content:center;align-items:center;gap:12px;margin:18px 0 24px;color:var(--muted)}.auth-find button{border:0;background:transparent;color:var(--muted);font-size:12px;padding:2px 0}.auth-find button:hover,.auth-back:hover{color:var(--accent);text-decoration:underline}.auth-guest{border-top:1px solid var(--line);padding-top:22px;text-align:center}.auth-guest>span{display:block;font-size:11px;color:var(--muted);margin-bottom:12px}.auth-guest .btn{width:100%;background:var(--surface2);font-size:13px;min-height:43px}.auth-guest .btn span{float:right}.auth-guest p{font-size:11px;color:var(--muted);margin:12px 0 0;word-break:keep-all;line-height:1.7}
.auth-registration-types{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0}.auth-registration-types legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.auth-registration-types>label{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);padding:11px 9px;cursor:pointer}.auth-registration-types>label:has(input:checked){border-color:var(--accent);background:var(--accent-light)}.auth-registration-types input,.auth-consent input{accent-color:var(--accent);width:15px;height:15px;flex:0 0 15px;margin:0}.auth-registration-types strong{font-size:11px;display:block}.auth-registration-types small{font-size:10px;color:var(--muted);display:block;margin-top:2px}.auth-registration-types .unavailable{opacity:.6;cursor:default}.auth-recovery-note,.auth-email-unavailable{font-size:11px;line-height:1.8;padding:12px 13px;border-radius:8px;border:1px solid var(--line);background:var(--surface2);color:var(--muted);margin:0;word-break:keep-all}.auth-recovery-note strong{display:block;color:var(--ink);margin-bottom:4px;font-weight:650}.auth-email-unavailable{border-color:#d2b168;color:#785723;background:#fff8e7;margin-bottom:14px}.auth-form .auth-email-unavailable{margin-bottom:0}.auth-privacy{font-size:11px;color:var(--muted);line-height:1.8}.auth-privacy summary{cursor:pointer;font-weight:650;color:var(--ink)}.auth-privacy p{margin:8px 0 0}.auth-consent{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.8;cursor:pointer}.auth-consent input{margin-top:3px}.auth-consent small{color:var(--muted)}#registerEmailFields{display:grid;gap:17px}.auth-code-row{display:flex;gap:7px;min-width:0}.auth-code-row input{flex:1;min-width:0}.auth-code-row .btn{flex:0 0 auto;padding:8px 10px;font-size:11px}.auth-hint{font-size:10px;color:var(--muted);line-height:1.7;margin:0}.auth-feedback{font-size:12px;line-height:1.8;padding:11px 13px;border-radius:8px;margin:0;overflow-wrap:anywhere}.auth-error{background:color-mix(in srgb,var(--danger) 9%,var(--surface));color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 35%,var(--line))}.auth-success{color:var(--accent);background:var(--accent-light);border:1px solid var(--line)}.auth-back{border:0;background:transparent;padding:0;color:var(--muted);font-size:12px;margin-bottom:28px}.auth-recovery-fields{border:0;margin:0;padding:0;min-width:0;display:grid;gap:17px}.auth-found-id{text-align:center;font-size:22px;font-weight:800;letter-spacing:.3px;border-radius:12px;padding:24px 15px;margin:8px 0 24px;background:var(--accent-light);color:var(--accent);overflow-wrap:anywhere}
/* Keep account controls at the far right, independently of wrapping preferences. */
.topbar{position:relative;z-index:100;display:grid;grid-template-columns:auto minmax(0,1fr) auto;overflow:visible}
.topbar>.brand-group{grid-column:1;grid-row:1;min-width:0}
.topbar>.top-actions{grid-column:2;grid-row:1;min-width:0;margin-left:0}
.topbar>.account-tools{grid-column:3;grid-row:1;justify-self:end}
.account-tools{position:relative;z-index:25;display:flex;gap:8px;align-items:center;justify-content:flex-end;padding-left:12px;border-left:1px solid var(--line);min-width:0}.account-identity{font-size:11px;font-weight:700;color:var(--ink);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu{position:relative}.account-menu>summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer}.account-menu>summary::-webkit-details-marker{display:none}.account-menu-panel{position:absolute;z-index:90;top:calc(100% + 9px);right:0;width:226px;max-width:calc(100vw - 32px);padding:9px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 12px 36px #0002}.account-menu-panel p{font-size:10px;color:var(--muted);margin:4px 7px 9px;padding-bottom:10px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.account-menu-panel button{display:block;text-align:left;width:100%;border:0;background:transparent;color:var(--ink);border-radius:7px;padding:10px 9px;font-size:12px}.account-menu-panel button:hover{background:var(--surface2)}.account-menu-panel button.danger{color:var(--danger)}.account-storage-badge{font-size:10px;border:1px solid var(--line);border-radius:6px;padding:4px 7px;color:var(--accent);background:var(--accent-light);white-space:nowrap}.guest-storage-notice{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);margin:17px 0 12px;color:var(--ink)}.guest-storage-notice .storage-mark{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:8px;background:var(--accent-light);color:var(--accent);font-size:18px}.guest-storage-notice>div{flex:1}.guest-storage-notice strong{font-size:12px}.guest-storage-notice p{font-size:11px;color:var(--muted);line-height:1.8;margin:3px 0 0;word-break:keep-all}.guest-footer-notice{font-size:11px;line-height:1.8;color:var(--muted);border-top:1px dashed var(--line);padding-top:16px;margin:4px 0 17px}.account-dialog{width:min(460px,calc(100vw - 32px))}.account-settings-form{padding:20px 24px 24px}.account-settings-form>.account-description{margin:0 0 3px}.auth-modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:3px}.account-dialog .modal-head h2{font-size:19px}.account-dialog .btn.danger{border-color:var(--danger)}
[data-theme="dark"] .account-gate{background:radial-gradient(ellipse at 10% 5%,#1d2c36,transparent 45%),radial-gradient(ellipse at 95% 90%,#242a3c,transparent 42%),var(--bg)}[data-theme="dark"] .account-shell{box-shadow:0 22px 85px #0004}[data-theme="dark"] .account-intro{background:linear-gradient(145deg,#1e2936,#202c3b 60%,#222c35)}[data-theme="dark"] .account-email-unavailable,[data-theme="dark"] .auth-email-unavailable{background:#312a1d;color:#e1c791;border-color:#695636}
@media(max-width:1280px){
    .topbar{grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:82px;padding-top:15px;padding-bottom:15px}
    .topbar>.account-tools{grid-column:2;grid-row:1}
    .topbar>.top-actions{grid-column:1/-1;grid-row:2;width:100%;flex-wrap:wrap;justify-content:flex-end}
}
@media(max-width:800px){.account-shell{grid-template-columns:1fr;max-width:480px}.account-gate{padding:24px 16px}.account-intro{padding:26px 28px}.account-brand{font-size:19px;margin-bottom:22px}.account-brand img{width:39px;height:39px}.account-intro .account-kicker{margin-bottom:8px;font-size:10px}.account-intro h1{font-size:25px;line-height:1.5;letter-spacing:-.8px}.account-intro h1 br{display:none}.account-intro-copy,.account-benefits{display:none}.account-credit{position:absolute;right:25px;top:28px;font-size:9px;margin:0;padding:0}.account-card{padding:29px 28px}.account-card h2{font-size:24px}.account-intro:after{font-size:175px;bottom:-68px;right:16px}.guest-storage-notice{flex-wrap:wrap}.guest-storage-notice>div{min-width:190px}.guest-storage-notice>.btn{margin-left:45px}.account-storage-badge{justify-self:start;align-self:center}.board-actions #importGuestBtn{grid-column:span 2}.account-tools{padding-left:10px}.account-identity{max-width:115px}.account-menu-panel{width:210px}}
@media(max-width:560px){
    .topbar>.brand-group{flex-direction:column;align-items:flex-start;gap:4px}
    .topbar .brand{gap:8px;font-size:15px}
    .topbar .brand small{font-size:8px;letter-spacing:1.4px}
    .topbar .creator-credit{margin-left:40px;padding-left:0;border-left:0;font-size:8px}
    .topbar>.account-tools{flex-direction:column;align-items:flex-end;gap:4px;border-left:0;padding-left:0}
    .account-identity{max-width:104px;font-size:10px}
}
@media(max-width:380px){.account-card{padding:26px 20px}.account-intro{padding:24px 20px}.account-credit{display:none}.auth-registration-types>label{gap:5px;padding:10px 7px}.auth-registration-types strong{font-size:10px}.auth-code-row{flex-wrap:wrap}.auth-code-row .btn{width:100%}}
@media print{.topbar,.account-tools,.guest-storage-notice,.guest-footer-notice,.account-gate,.account-dialog{display:none!important}}
