/* Account surfaces share the working application's paper tokens. */
@font-face{font-family:"Golos Text";src:url('/static/fonts/GolosText.ttf') format('truetype');font-weight:100 900;font-display:swap}
*{box-sizing:border-box}
html{background:var(--paper-bg);color:var(--paper-ink)}
body.account-page{margin:0;min-height:100vh;min-height:100dvh;font:14px/1.6 "Golos Text",sans-serif;background-color:var(--paper-bg);background-image:linear-gradient(var(--paper-grid) 1px,transparent 1px),linear-gradient(90deg,var(--paper-grid) 1px,transparent 1px);background-size:24px 24px;color:var(--paper-ink);display:flex;flex-direction:column}
.account-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 32px;border-bottom:1px solid var(--paper-border);background:var(--paper-surface)}
.account-brand{font-size:24px;line-height:1.2;letter-spacing:-1px;font-weight:850;text-decoration:none;color:var(--paper-ink);display:inline-flex;align-items:center;min-height:44px;position:relative}
.account-brand:after{content:"";position:absolute;bottom:3px;left:0;width:64px;height:2px;background:var(--paper-accent)}
.account-header-tools{display:flex;align-items:center;gap:12px}.account-source{display:grid;place-items:center;width:44px;min-height:44px}
.account-content{width:min(100% - 48px,760px);margin:40px auto;padding:32px;background:var(--paper-surface);border:1px solid var(--paper-border);border-radius:6px;overflow-wrap:anywhere}
.account-login .account-content{width:min(100% - 32px,440px);margin-block:64px 40px}
.account-content h1{font-size:32px;line-height:1.2;letter-spacing:-1px;margin:0 0 12px;font-weight:750}
.account-content h2{font-size:20px;line-height:1.3;letter-spacing:-.3px;margin:28px 0 12px}
.account-content p{margin:12px 0;color:var(--paper-muted)}
.account-content .account-intro{color:var(--paper-ink)}
.account-content form{display:grid;gap:16px;margin:24px 0}
.account-content label{display:grid;gap:8px;color:var(--paper-ink);min-height:44px}
.account-content label:has(input[type=checkbox]){grid-template-columns:24px minmax(0,1fr);align-items:start;cursor:pointer}
.account-content input{font:inherit;width:100%;min-height:44px;padding:10px 12px;background:var(--paper-surface);color:var(--paper-ink);border:1px solid var(--paper-input);border-radius:6px;min-width:0}
.account-content input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:var(--paper-accent);margin:3px 0}
.account-content button{font:inherit;font-weight:600;min-height:44px;padding:10px 16px;background:var(--paper-ink);color:var(--paper-surface);border:1px solid var(--paper-ink);border-radius:6px;cursor:pointer}
.account-content button:hover{filter:brightness(.94)}
.account-content button:active,.account-header button:active{filter:brightness(.88);transform:translateY(1px)}
.account-content button:disabled{opacity:.55;cursor:not-allowed}
.account-content a,.account-footer a{color:var(--paper-ink);text-decoration-thickness:1px;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px}
.account-content [role=alert]{border:1px solid var(--paper-input);border-left:3px solid var(--paper-accent);border-radius:6px;padding:12px 16px;background:var(--paper-accent-soft);color:var(--paper-ink)}
.account-content pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;color:var(--paper-ink)}
.account-content form[action="/logout"] button{background:var(--paper-surface);border-color:var(--paper-input);color:var(--paper-ink)}
.account-content form[action="/account/delete"]{padding-top:20px;border-top:1px solid var(--paper-border)}
.account-content form[action="/account/delete"] button{background:var(--paper-accent-soft);border-color:var(--paper-accent);color:var(--paper-accent)}
.account-access{padding:12px 16px;border:1px solid var(--paper-border);border-radius:6px;background:var(--paper-bg);color:var(--paper-ink)!important}
.account-footer{display:flex;gap:8px 24px;justify-content:center;flex-wrap:wrap;padding:16px 24px 24px;margin-top:auto;font-size:12px}
.account-page :is(a,button,input,summary):focus-visible{outline:2px solid var(--paper-accent);outline-offset:3px}
@media(max-width:767px){.account-header{min-height:64px;padding:8px 16px}.account-header .paper-lin{width:32px;height:32px}.account-content{width:calc(100% - 32px);margin:24px 16px;padding:20px}.account-login .account-content{margin-block:32px 24px}.account-content h1{font-size:28px}.account-header-tools{gap:4px}.account-footer{gap:0 16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
