.account-restore{display:none}
html.account-restoring body>header,html.account-restoring body>main,html.account-restoring body>footer{visibility:hidden}
html.account-restoring .account-restore{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:var(--paper);text-align:center;color:var(--ink);padding:24px}
.account-restore strong{font-size:21px;font-weight:600}
.account-restore p{margin:0 0 8px;color:var(--muted)}
.account-restore button{border:1px solid var(--line);background:#fff;border-radius:24px;padding:9px 17px;color:var(--ink);cursor:pointer}
.account-settings h3{font-size:23px;font-weight:550;margin:0 0 8px}
.account-settings p{font-size:13px;line-height:1.6;color:var(--muted);margin:0 0 18px}
.account-settings p strong{color:var(--ink)}
.account-actions,.account-form-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.account-actions button,.account-form-actions button,.account-settings [data-account-import-button]{border:1px solid var(--line);border-radius:24px;background:#fff;color:var(--ink);padding:9px 17px;font-size:12px;font-weight:600;cursor:pointer}
.account-form-actions [data-account-action="create"]{background:var(--ink);border-color:var(--ink);color:#fff}
.account-settings form{display:grid;gap:15px;max-width:420px}
.account-settings form label{display:grid;gap:6px;color:var(--ink);font-size:12px;font-weight:600}
.account-settings form input{width:100%;min-height:42px;margin:0;padding:10px 12px;border:1px solid #cbd5cd;border-radius:10px;background:#fff;color:var(--ink);font-size:14px}
.account-settings form button{justify-self:start}
.account-settings .account-form-actions{margin:2px 0 0}
.account-settings .account-text-button{border:0;background:transparent;color:var(--moss);padding:10px 0;font-size:12px;font-weight:600;cursor:pointer}
.account-settings .account-message{margin:12px 0 0;color:#365f49;min-height:20px}
.account-settings .account-message.account-error{color:#9d3939}
.account-settings [data-account-import]:empty{display:none}

.account-data-settings{display:flex;align-items:center;justify-content:space-between;gap:24px}
.account-data-settings>div:first-child{max-width:70ch}
.account-data-settings .account-actions{flex-shrink:0}
.account-actions .account-danger-button{border-color:#ba5656;color:#9d3030;background:#fff}
.account-data-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--surface,#fff);color:var(--ink);box-shadow:0 20px 70px #0003}
.account-data-dialog::backdrop{background:#15251c80}
.account-settings .account-data-dialog h4{font-size:20px;margin:0}
.account-settings .account-data-dialog p{margin:0;line-height:1.65}
.account-settings .account-data-dialog form{max-width:none}
.account-data-dialog .account-actions{justify-content:flex-end;margin:0}
.account-data-dialog [data-account-data-confirm]{background:#9d3030;border-color:#9d3030;color:#fff}
.account-data-dialog button{min-height:42px}
.account-data-dialog button:disabled{cursor:wait;opacity:.6}
.account-data-dialog .account-operation-status:empty{display:none}
.account-data-dialog .account-operation-status.account-error{color:#9d3030}
@media(max-width:700px){.account-data-settings{align-items:flex-start;flex-direction:column;gap:14px}.account-data-dialog{padding:22px}.account-data-dialog .account-actions{justify-content:flex-start}}

.account-settings form .account-terms-agreement { display: flex; align-items: flex-start; gap: 9px; font-weight: 400; line-height: 1.6; }
.account-settings form .account-terms-agreement input { flex: 0 0 16px; width: 16px; height: 16px; min-height: 16px; padding: 0; margin-top: 2px; accent-color: var(--ink); }
.account-terms-agreement a { color: inherit; text-underline-offset: 3px; }
.account-terms-agreement input:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
.account-terms-help { color: var(--muted); font-size: 11px; margin-top: -10px; }
