.portal-actions{display:flex;gap:10px;flex-wrap:wrap}.account-entry{display:block;margin:0 0 20px;padding:10px 15px;border:1px solid var(--line);color:var(--gold-bright);background:var(--panel)}
.account-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:#080d13dc;backdrop-filter:blur(6px);overflow:auto}
.account-panel{position:relative;width:min(100%,480px);max-height:calc(100dvh - 40px);overflow:auto;background:linear-gradient(145deg,#c5a16a0a,transparent 55%),var(--panel);color:var(--paper);border:1px solid #c5a16a80;border-top:2px solid var(--gold);border-radius:8px;padding:34px;box-shadow:0 18px 90px #0008}
.account-panel h2{margin:12px 0 20px;font-size:28px}.account-panel p{line-height:1.6;overflow-wrap:anywhere}.account-close{position:absolute;right:12px;top:8px;padding:8px;background:transparent;border:0;color:var(--gold-bright);font-size:26px}
.account-panel label{display:grid;gap:8px;margin-bottom:16px;color:var(--muted);font-size:13px}.account-panel input{min-width:0;width:100%;padding:12px;color:var(--paper);border:1px solid var(--line);background:var(--bg);font:inherit}
.account-panel input:focus-visible,.account-panel button:focus-visible{outline:2px solid var(--gold-bright);outline-offset:3px}.account-panel input{border-radius:4px;font-size:16px}.account-panel .primary{width:100%;justify-content:center;min-height:48px;border-radius:4px;white-space:normal}.account-panel button:disabled{opacity:.55;cursor:default}.account-panel[aria-busy=true] button:disabled{cursor:wait}
.account-tabs,.account-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.account-tabs button,.account-actions button{padding:10px 12px;border:1px solid var(--line);background:transparent;color:var(--gold-bright);font-size:12px;min-height:42px}
.account-hint{font-size:12px;color:var(--muted)}.account-name{font:24px var(--serif);color:var(--gold-bright)}.account-notice{padding:12px;background:#d5ab6a12;border:1px solid var(--line);font-size:13px}.account-message{font-size:13px;color:var(--green);margin-top:18px;padding:12px 14px;border:1px solid #7eaa9538;background:#7eaa950b;border-radius:4px}.account-message.is-error{color:#ecc2b5;border-color:#b6705966;background:#b6705910}.account-message[hidden]{display:none}
.account-panel .account-intro{color:var(--muted);font-size:13px;margin:-6px 0 24px}.account-panel #account-password-hint{margin:-4px 0 20px}.account-tabs{padding-top:18px;border-top:1px solid var(--line)}.account-tabs button{flex:1;border-radius:4px;color:var(--muted)}.account-tabs button[aria-current=page]{color:var(--gold-bright);border-color:#c5a16a80;background:#c5a16a0d}.account-sent-actions{display:flex;justify-content:center;gap:8px 20px;flex-wrap:wrap;margin-top:18px}.account-sent-actions button,.account-guest{border:0;background:transparent;color:var(--gold-bright);padding:8px 0;font-size:12px;min-height:40px}.account-panel .account-footer{margin-top:20px;text-align:center}
.account-panel-sent{text-align:center;padding-top:38px}.account-mail-seal{display:grid;place-items:center;width:72px;height:72px;margin:24px auto 20px;border:1px solid #c5a16a70;border-radius:50%;color:var(--gold-bright);background:#c5a16a0c}.account-mail-seal svg{width:34px;height:34px}.account-panel-sent h2{font-size:32px;margin-bottom:20px}.account-panel .account-email{padding:12px 16px;border:1px solid var(--line);border-radius:4px;background:var(--bg);font-size:15px;color:var(--paper);margin:0 0 20px}.account-email-step .account-intro{margin:0 0 12px}.account-email-step .account-hint{margin-bottom:24px}.account-guest{display:block;margin:16px auto 0;border-top:1px solid var(--line);width:100%;padding-top:20px;color:var(--muted)}
.account-login-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.account-login-actions button{min-width:0;min-height:46px;padding:8px 10px;line-height:1.3;white-space:normal;color:var(--gold-bright);border-color:#c5a16a60;background:#c5a16a0d}.account-login-actions button:not(:disabled):hover{border-color:#c5a16a90;background:#c5a16a18}
@media(max-width:600px){.account-panel{padding:28px 20px}.portal-actions{gap:6px}.portal-actions button{padding:9px;font-size:10px}}
.account-sync-banner{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:950;display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100% - 24px);padding:9px 14px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--muted);font-size:12px;box-shadow:0 4px 20px #0006}
.account-sync-banner:is([data-state=saved],[data-state=queued],[data-state=checking],[data-state=saving]){left:auto;right:16px;top:6px;bottom:auto;transform:none;gap:6px;width:auto;max-width:calc(100% - 24px);padding:2px 4px;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:10px;line-height:1.4;pointer-events:none;color:var(--muted);opacity:.75}
.account-sync-banner:is([data-state=saved],[data-state=queued],[data-state=checking],[data-state=saving])::before{content:"";flex-shrink:0;width:4px;height:4px;border-radius:50%;background:currentColor}
.account-sync-banner[data-state=saved]::before{background:#a0bb89}
.account-sync-banner[data-state=conflict],.account-sync-banner[data-state=stale]{color:var(--gold-bright);border-color:var(--gold)}
.account-sync-banner button,.account-conflict button{padding:8px 10px;border:1px solid var(--line);background:var(--bg);color:var(--gold-bright);font:inherit;cursor:pointer}.account-conflict{border:1px solid var(--gold);padding:12px;font-size:13px}.account-conflict[hidden]{display:none}.account-conflict button{margin:4px}
.account-panel .account-code{text-align:center;font-size:26px;letter-spacing:.28em;font-variant-numeric:tabular-nums}.account-email-step form{text-align:left}.account-email-step #account-code-hint{margin-top:16px}
.account-panel-profile{width:min(100%,760px);padding:30px 34px;background:radial-gradient(ellipse at top right,#a7823920,transparent 55%),linear-gradient(145deg,#242d26,#151f20)}
.account-panel-profile>h2{font-size:18px;color:var(--muted);margin:12px 0 25px}.account-profile-hero{display:flex;align-items:center;gap:22px;padding-bottom:25px;border-bottom:1px solid var(--line)}
.account-avatar{display:grid;place-items:center;flex-shrink:0;width:88px;height:88px;border:1px solid #d5b577;border-radius:50%;outline:1px solid #ac92534d;outline-offset:6px;background:linear-gradient(145deg,#685235,#26362e);font:34px var(--serif);color:#f0d69e;box-shadow:0 7px 30px #0005}
.account-profile-hero .account-name{font-size:32px;margin:6px 0;line-height:1.2}.account-profile-hero .account-email{padding:0;border:0;background:transparent;font-size:13px;color:var(--muted);margin:4px 0 9px}.account-verified,.account-owner-badge{display:inline-block;font-size:11px;color:#a8c7aa;border:1px solid #7c9c7144;background:#67916010;border-radius:4px;padding:4px 8px;margin:0 5px 5px 0}.account-owner-badge{color:#e2c589;border-color:#c5a16a66;background:#c5a16a11}
.account-profile-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:23px 0}.account-profile-stats article{padding:16px 12px;border:1px solid var(--line);border-radius:5px;background:#c5a16a06;display:flex;flex-direction:column;gap:8px}.account-profile-stats article>span{font-size:11px;color:var(--muted);line-height:1.5}.account-profile-stats strong{font:34px var(--serif);color:var(--gold-bright)}.account-profile-stats em{font:17px var(--serif);color:var(--muted);margin-left:3px}.account-profile-stats small{font-size:10px;color:var(--muted);line-height:1.5}
.account-panel-profile h3{font:18px var(--serif);color:var(--paper);margin:0 0 12px}.account-collection{padding:20px;border:1px solid var(--line);border-radius:5px;background:#0001}.account-collection>div{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:var(--muted);margin:14px 0 8px}.account-collection b{color:var(--gold-bright)}.account-collection progress{display:block;width:100%;height:6px;accent-color:#be9d5f;border:0;border-radius:3px;overflow:hidden}.account-collection progress::-webkit-progress-bar{background:#d4c19417}.account-collection progress::-webkit-progress-value{background:linear-gradient(90deg,#867342,#cfb678)}.account-house{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:13px;font-size:12px;color:var(--muted);margin-bottom:0}.account-house strong{color:var(--paper)}
.account-save-card{display:flex;align-items:center;gap:13px;margin:18px 0;padding:17px;border:1px solid #789b6855;border-radius:5px;background:#73996208}.account-save-dot{width:8px;height:8px;border-radius:50%;background:#a0bb89;flex-shrink:0;box-shadow:0 0 0 4px #8eaa721a}.account-save-card[data-state=pending] .account-save-dot,.account-save-card[data-state=conflict] .account-save-dot{background:#d0ad73}.account-save-card>div{flex:1;min-width:0}.account-save-card h3{font-size:16px;margin-bottom:5px}.account-save-card [data-sync-status]{background:none;border:0;padding:0;margin:0;font-size:12px;color:var(--muted)}.account-save-card small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.account-save-card button{padding:9px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--gold-bright);font-size:11px}
.account-edit-profile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;padding:21px 0;border-bottom:1px solid var(--line)}.account-edit-profile h3{grid-column:1/-1}.account-edit-profile label{margin:0}.account-edit-profile .primary{width:auto;align-self:end;font-size:12px;min-height:44px}.account-management{margin:18px 0;color:var(--muted);font-size:12px}.account-management summary{cursor:pointer;padding:9px 0}.account-logout{color:#d2a89a;border:1px solid #9e655b55;background:#9e655b09;border-radius:4px;padding:10px 17px;font-size:12px}.account-panel-profile .account-footer{margin-bottom:0;font-size:10px}
@media(max-width:600px){.account-panel-profile{padding:25px 20px}.account-profile-hero{gap:18px}.account-avatar{width:66px;height:66px;font-size:28px}.account-profile-hero .account-name{font-size:25px}.account-profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.account-collection{padding:17px}.account-save-card{flex-wrap:wrap}.account-save-card>div{flex-basis:calc(100% - 25px)}.account-save-card button{margin-left:21px}.account-edit-profile{grid-template-columns:1fr}.account-edit-profile .primary{width:100%}.account-collection>div,.account-house{font-size:11px}}
.account-treasury{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 20px;color:var(--muted);font-size:12px}.account-treasury b{color:var(--gold-bright);margin:0 3px}

.account-panel-profile>#account-title:focus{outline:none}
.account-faction-victories{margin:0 0 24px;padding:20px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#c5a16a08,#0002)}
.account-victories-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.account-victories-heading h3{margin-bottom:0}.account-victories-heading>small{color:var(--muted);font-size:11px}
.account-panel .account-victories-scale{margin:8px 0 20px;color:var(--muted);font-size:11px}.account-victories-list{display:grid;gap:17px}
.account-victory-row{display:flex;align-items:center;gap:12px;min-width:0}.account-victory-sigil{display:grid;place-items:center;flex:0 0 36px;height:36px;border:1px solid var(--faction-color);border-radius:7px;background:#121c20;color:var(--faction-color);font:21px var(--serif);box-shadow:inset 0 0 12px #ffffff05}.account-victory-row>div{flex:1;min-width:0}
.account-victory-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:7px}.account-victory-label>span{color:var(--paper);font-size:13px}.account-victory-label strong{color:var(--faction-color);font:24px/1 var(--serif);font-variant-numeric:tabular-nums;white-space:nowrap}.account-victory-label strong>small{color:var(--muted);font:10px/1.4 var(--sans,Arial,sans-serif)}
.account-victory-row progress{display:block;width:100%;height:9px;border:0;border-radius:5px;overflow:hidden;background:#d4c19414;accent-color:var(--faction-color)}.account-victory-row progress::-webkit-progress-bar{background:#d4c19414;border-radius:5px}.account-victory-row progress::-webkit-progress-value{background:linear-gradient(90deg,color-mix(in srgb,var(--faction-color) 55%,#172324),var(--faction-color));border-radius:5px;box-shadow:inset 0 1px #fff3}.account-victory-row progress::-moz-progress-bar{background:var(--faction-color);border-radius:5px}
@media(max-width:600px){.account-faction-victories{padding:16px}.account-victories-heading{align-items:flex-start;flex-direction:column;gap:4px}.account-victory-row{gap:9px}.account-victory-sigil{flex-basis:30px;height:32px;font-size:18px}.account-victory-label>span{font-size:12px}.account-victory-label strong{font-size:23px}.account-victory-label strong>small{font-size:9px}}
.account-achievements{margin:24px 0}.account-achievements>p{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 14px}
.account-achievement-group{border:1px solid var(--line);border-radius:6px;margin:10px 0;background:#0001}.account-achievement-group>summary{cursor:pointer;padding:16px;font-size:15px;color:var(--paper)}.account-achievement-group>summary b{float:right;color:var(--gold-bright);font-size:13px}.account-achievement-group>summary small{font-weight:normal;color:var(--muted)}
.account-achievement-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 14px 14px}.account-achievement{display:flex;gap:10px;padding:14px;border:1px solid var(--line);border-radius:5px;background:#ffffff03}.account-achievement.is-unlocked{border-color:#789b6855;background:#73996208}.account-achievement-mark{color:var(--muted);font-size:20px}.is-unlocked .account-achievement-mark,.account-achievement-date{color:#a8c7aa}.account-achievement>div{min-width:0}.account-achievement h4{margin:0 0 7px;font-size:14px;color:var(--paper);line-height:1.4}.account-achievement p{font-size:12px;color:var(--muted);line-height:1.5;margin:0 0 10px}.account-achievement small{font-size:11px;line-height:1.5;display:block}.account-achievement progress{display:block;width:100%;height:5px;accent-color:#be9d5f;margin-top:8px}
@media(max-width:600px){.account-achievement-list{grid-template-columns:1fr}.account-achievement-group>summary{font-size:14px;padding:14px}.account-achievement-group>summary small{display:none}}
.account-avatar{position:relative;overflow:hidden}
.account-avatar img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%;transform:scale(2);transform-origin:50% 0%}

.account-dust-diagnostics{margin:20px 0;padding:18px;border:1px solid #b69d6955;border-radius:8px;background:#18262b}.account-dust-diagnostics p{font-size:12px;line-height:1.6}.account-dust-diagnostics textarea{display:block;box-sizing:border-box;width:100%;height:260px;padding:12px;color:#e9e2d2;background:#10191d;border:1px solid #839a9166;border-radius:5px;font:12px/1.5 Consolas,monospace;resize:vertical}
.account-profile-switch{display:flex;gap:8px;margin:0 0 8px}.account-profile-switch button{flex:1;min-height:44px;border:1px solid #59605c;border-radius:9px;background:#202624;color:#ced3cb;font:inherit;cursor:pointer}.account-profile-switch button[aria-pressed="true"]{border-color:#d5b772;background:#3d3525;color:#ffe4a5}.account-profile-switch button:focus-visible{outline:2px solid #f2ce80;outline-offset:3px}.account-profile-note{color:#b2bbb0;font-size:.85rem;line-height:1.5;margin:8px 0 18px}
