.account-controls{display:flex!important;align-items:center;justify-content:flex-end;gap:10px;margin-left:auto;flex-shrink:0;font:500 14px/1.35 system-ui,sans-serif}
.account-controls a,.account-controls button,.account-primary{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 15px;border:1px solid transparent;border-radius:7px;font:600 14px/1.35 system-ui,sans-serif;white-space:nowrap;text-decoration:none;cursor:pointer}
.account-controls a{color:inherit}.account-controls button{color:inherit;background:transparent;border-color:currentColor}
.account-controls a:hover,.account-controls button:hover{opacity:.8}
.account-controls .account-primary,.account-page .account-primary{background:#175b53;color:#fff;border-color:#175b53}
.site-header .account-controls .account-primary{background:#d6efe6;color:#123d37;border-color:#d6efe6}
.account-controls [hidden],.account-page [hidden]{display:none!important}
.account-controls a:focus-visible,.account-controls button:focus-visible,.account-page :focus-visible{outline:3px solid #42bba4;outline-offset:4px}
.header-inner:has(.account-controls){flex-wrap:wrap;gap:8px 18px;padding-block:12px}
.header-inner>.account-controls{order:2}.header-inner>.site-nav{order:3;flex-basis:100%;justify-content:flex-end;margin-left:0}.header-inner>.menu-button{order:1}
.header-inner:has(.account-controls) .access-badge{display:none}
.top:has(.account-controls){flex-wrap:wrap;gap:12px;padding-block:16px;height:auto;min-height:76px}
.account-page{margin:0;background:#f6f7f4;color:#1d2d28;font:16px/1.6 system-ui,-apple-system,sans-serif;min-height:100vh}
.account-page *{box-sizing:border-box}.account-page a{color:#175b53;text-underline-offset:3px}
.account-header{min-height:86px;padding:18px clamp(20px,5vw,76px);display:flex;gap:20px;align-items:center;border-bottom:1px solid #dfe4de;background:#fff}
.account-header .account-brand{font-size:19px;letter-spacing:.16em;font-weight:750;text-decoration:none;color:#233f36}
.account-main{width:min(100% - 40px,960px);margin:48px auto 80px}
.account-kicker{font-size:11px;letter-spacing:.18em;font-weight:700;color:#61756b;margin:0 0 14px}
.account-main h1{font-size:clamp(30px,5vw,40px);font-weight:550;line-height:1.15;letter-spacing:-.04em;margin:0 0 12px}
.account-lead{margin:0 0 32px;color:#617068}
.account-card{background:#fff;border:1px solid #dfe4de;border-radius:12px;padding:30px;box-shadow:0 6px 24px #1c3b2a04}
.account-card h2{font-size:18px;font-weight:600;margin:0 0 26px;letter-spacing:-.02em}
.account-card label{display:block;font-size:14px;font-weight:600;margin:24px 0 8px}
.account-card input,.account-card select{width:100%;min-height:46px;border:1px solid #c6d0c9;border-radius:6px;background:#fff;color:#1d2d28;padding:10px 12px;font:16px system-ui}
.account-card input[readonly]{background:#f5f6f3;color:#627169}.account-hint{font-size:12px;color:#68786e;margin:7px 0 0}
.account-save-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:30px;border-top:1px solid #e7eae5;padding-top:24px}
#account-save-status{font-size:13px;color:#175b53}.account-page button:disabled{opacity:.6;cursor:wait}
.account-confirm{margin-top:18px;padding:18px;border:1px solid #d6ded8;border-radius:8px;background:#f6f7f4}.account-confirm p{margin-top:0}.account-confirm button{margin:6px 10px 0 0}
#account-connection-status{color:#175b53}
.account-next{font-size:14px;margin-top:24px;color:#617068}.account-next a{font-weight:600}
.account-welcome p{color:#617068}.account-welcome h2{margin-bottom:8px}.account-welcome>.account-primary{margin:12px 0}.account-secondary{font-size:14px}
#account-error{border-left:3px solid #a24434;padding:12px 16px;background:#faece8;color:#7d3125;margin-top:24px}
.account-retry{background:transparent;border:1px solid #bfcac2;border-radius:6px;padding:10px 16px;color:#175b53;cursor:pointer}
.account-skip{position:absolute;left:20px;top:-70px;background:#fff;padding:10px;z-index:100}.account-skip:focus{top:8px}
.persona-picker{border:0;border-top:1px solid #dfe4de;margin:32px 0 0;padding:24px 0 0;min-width:0}
.persona-picker legend{font-size:1.25rem;font-weight:650;padding:0 12px 0 0}
.persona-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.account-card .persona-option{display:flex;gap:12px;align-items:flex-start;margin:0;padding:18px;border:1px solid #c6d0c9;border-radius:9px;font-weight:400;cursor:pointer;min-width:0}
.account-card .persona-option:has(input:checked){border:2px solid #175b53;padding:17px;background:#f0f8f5}
.account-card .persona-option input{width:20px;min-width:20px;height:20px;min-height:20px;margin:5px 0 0;padding:0;accent-color:#175b53}
.persona-content{display:block;min-width:0;overflow-wrap:anywhere}.persona-content>strong{display:block;font-size:1.125rem}.persona-focus{display:block;color:#175b53;font-size:1rem;margin:2px 0 12px}
.persona-detail{display:block;font-size:.9375rem;line-height:1.5;margin:8px 0}.persona-detail b{font-weight:600}
.persona-picker .account-hint,.persona-research{font-size:.9375rem;line-height:1.6}.persona-research{margin-top:26px}.persona-research summary{cursor:pointer;font-weight:600}
@media(max-width:720px){.persona-options{grid-template-columns:1fr}.account-main{width:calc(100% - 28px)}}
@media(max-width:600px){.account-controls{gap:5px;font-size:13px}.account-controls a,.account-controls button{padding:9px 10px;font-size:13px}.account-header{padding:16px;gap:10px}.account-header .account-brand{font-size:16px}.account-main{margin-top:36px}.account-card{padding:22px}.header-inner:has(.account-controls) .brand-context{display:none}.header-inner>.account-controls{margin-left:auto}.top>.account-controls{width:100%}}

[data-persona-settings] button{margin:.4rem .5rem .4rem 0;padding:.65rem .9rem;cursor:pointer;}
[data-persona-settings] select,[data-persona-settings] textarea{display:block;width:100%;max-width:100%;margin:.4rem 0 1rem;padding:.6rem;font:inherit;}
[data-persona-settings] textarea{min-height:6rem;}
[data-persona-settings] pre{white-space:pre-wrap;overflow-wrap:anywhere;}
[data-persona-settings] label{display:block;}

.task-links{display:flex;flex-wrap:wrap;gap:.6rem 1rem;margin-block:.75rem}.task-links a{padding:.4rem 0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #375ce2;outline-offset:4px}
@media(max-width:700px){.account-header,.top{flex-wrap:wrap;gap:.6rem}.account-controls{flex-wrap:wrap}.account-controls a,.task-links a{min-height:44px;display:inline-flex;align-items:center}}

.story-boundary{font-size:.9rem;line-height:1.5;padding:.75rem;border-left:3px solid currentColor;margin-block:1rem}

/* Keep identity controls in the same visual row as desktop navigation. */
@media(min-width:1101px){.header-inner:has(.account-controls){flex-wrap:nowrap;gap:.75rem;padding-block:.75rem}.header-inner>.site-nav{order:2;flex-basis:auto;flex-wrap:nowrap;margin-left:auto;justify-content:flex-end}.header-inner>.account-controls{order:3;margin-left:.5rem}.header-inner>.menu-button{order:1}}
.account-kicker{font-size:.8125rem}
.account-hint,#account-save-status{font-size:.875rem;line-height:1.55}
@media(max-width:600px){.account-controls,.account-controls a,.account-controls button{font-size:.875rem}}
