.account-security{max-width:1060px;margin:0 auto 36px;color:var(--ink)}
.account-heading{margin:0 0 20px}.account-kicker{font-size:11px;letter-spacing:.1em;font-weight:750;color:var(--blue)}
.account-heading h1{margin:6px 0;font:750 30px/1.15 var(--font-ui,var(--ui));letter-spacing:-.025em}.account-heading p{margin:0;color:var(--ink2);font-size:14px;line-height:1.5}
.account-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:20px;align-items:start}
.account-card{background:var(--card);border:1px solid var(--line);border-radius:9px;overflow:hidden}.account-card>header{padding:16px 20px;border-top:3px solid var(--blue);border-bottom:1px solid var(--line);background:var(--bluetint)}
.account-card h2{margin:0;font-size:17px}.account-card header p{margin:5px 0 0;font-size:13px;color:var(--ink2)}.account-body{padding:20px}
.account-body label{display:block;margin-bottom:15px;font-size:13px;font-weight:650}.account-body input:not([hidden]){display:block;box-sizing:border-box;width:100%;min-width:0;margin-top:7px;padding:10px 12px;border:1px solid var(--rule2,var(--line));border-radius:6px;background:var(--card);color:var(--ink);font:16px/1.35 var(--font-ui,var(--ui));min-height:44px}
.account-body input:focus-visible,.account-security :is(button,a):focus-visible{outline:2px solid var(--blue);outline-offset:3px}.account-hint{font-size:12px;color:var(--mute);line-height:1.5;margin:0 0 15px}.account-body button+.account-hint{margin:12px 0 0}
.account-body .btn{min-height:42px}.account-facts{margin:0}.account-facts>div{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.account-facts dt{font-size:12px;color:var(--mute)}.account-facts dd{margin:0;font-size:13px;font-weight:650;overflow-wrap:anywhere}
.account-session{padding:18px 0 0}.account-session h3{margin:0 0 5px;font-size:14px}.account-session p{margin:0 0 10px;color:var(--ink2);font-size:13px;line-height:1.5}.account-signout{display:block;margin:22px 0 0;padding:8px 0;border:0;background:transparent;color:var(--blue);font:650 13px var(--font-ui,var(--ui));cursor:pointer}
.account-error,.account-success,.account-notice{padding:11px 13px;margin:10px 0 15px;border-left:3px solid var(--red);background:color-mix(in srgb,var(--red) 7%,var(--card));color:var(--ink);font-size:13px;line-height:1.5}.account-success{border-color:var(--green);background:color-mix(in srgb,var(--green) 7%,var(--card))}.account-notice{border-color:var(--blue);background:var(--bluetint)}
.account-required{padding:28px;max-width:960px}.account-brand{margin-bottom:24px}.account-temp-box{padding:15px;border:1px solid var(--line);border-left:3px solid var(--amber);border-radius:6px;background:var(--surface-2)}.account-temp-box h3{margin:0 0 8px;font-size:14px}.account-temp-box p{font-size:12px;line-height:1.5;color:var(--ink2)}.account-temp-box label{font-size:12px;font-weight:650}.account-temp-box input{display:block;width:100%;box-sizing:border-box;min-width:0;padding:10px;margin:7px 0 10px;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:5px;font:16px monospace}.account-temp-actions{display:flex;flex-wrap:wrap;gap:8px}
@media(max-width:650px){.account-grid{grid-template-columns:1fr;gap:15px}.account-required{padding:20px 15px}.account-heading h1{font-size:26px}.account-body{padding:16px}.account-body .btn{min-height:44px}}
/* Roster actions may wrap to another row, but each label keeps its own height. */
.pplrow [data-act]{height:auto;min-height:42px;white-space:normal;line-height:1.35;padding:9px 12px;max-width:100%;overflow-wrap:normal}
.pplrow [data-act="temporary"]{flex:0 1 auto}
@media(max-width:650px){.pplrow [data-act]{min-height:44px}.pplrow [data-act="temporary"]{flex-basis:100%;width:100%}}
