.account-shell { max-width:880px; margin:0 auto; padding:48px 24px 80px; }
.account-shell h1 { font-size:clamp(40px,7vw,72px); line-height:1.05; margin:24px 0; }
.account-shell h2 { font-size:25px; margin:0 0 20px; }
#guest:not([hidden]) { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.account-shell form { border:1px solid var(--line); padding:24px; margin:24px 0; background:#fff8; }
.account-shell label { display:block; margin:16px 0; font-size:15px; font-weight:bold; }
.account-shell input:not([type=checkbox]) { display:block; width:100%; min-width:0; padding:12px; margin-top:6px; border:1px solid var(--muted); background:var(--paper); color:var(--ink); font:inherit; }
.account-shell button { padding:10px 18px; border:1px solid var(--ink); background:var(--ink); color:var(--paper); cursor:pointer; }
.account-shell button:disabled { opacity:.55; cursor:wait; }
.account-shell small { display:block; font-size:13px; }
#status { min-height:2em; padding:12px; border-left:3px solid var(--orange); overflow-wrap:anywhere; }
#identity { font:14px var(--mono); overflow-wrap:anywhere; }
.session-actions { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0; }
.account-shell details { margin-top:36px; }
@media(max-width:600px) { #guest:not([hidden]) { grid-template-columns:1fr; gap:0; } .account-shell { padding-top:24px; } }

.form-status { min-height:1.5em; margin:16px 0 0; overflow-wrap:anywhere; }
[data-state=error] { color:#9b211a; }
[data-state=success] { color:#24612a; }
.downloads ul { list-style: none; padding: 0; display: grid; gap: .75rem; }
.downloads li a { font-weight: bold; }
.downloads pre { white-space: pre-wrap; font-size: .85rem; }
