/* Account hub and site-wide reading/appearance preferences. */
:root{--account-text-scale:1;--account-line-height:1.6;--account-bg:#fffdf8;--account-card:#fff;--account-text:#293d36;--account-muted:#56665d;--account-line:#cbd5ca;--account-accent:#315746;--account-soft:#eef2e9}
html[data-theme=light]{color-scheme:light}
html[data-theme=dark]{color-scheme:dark;--paper:#15221e;--white:#203029;--ink:#ecf1e8;--muted:#bdcbbf;--line:#4c6255;--green:#b7d4be;--account-bg:#182820;--account-card:#22372d;--account-text:#ecf1e8;--account-muted:#c0cdbf;--account-line:#526b5a;--account-accent:#bedbc2;--account-soft:#2d4336}
body.app-body{font-size:16px;zoom:var(--account-text-scale);line-height:var(--account-line-height)}
html[data-reading=readable] body,html[data-reading=readable] input,html[data-reading=readable] button,html[data-reading=readable] textarea{font-family:Verdana,Tahoma,sans-serif!important;letter-spacing:.025em;word-spacing:.05em}
body.app-body main p,body.app-body main li{line-height:var(--account-line-height)}
html[data-theme=dark] body.app-body,html[data-theme=dark] body.app-body :is(.app-main-column,.app-sidebar,.app-topbar,.app-bottom-nav,.app-footer,.app-more-menu){background:var(--account-bg);color:var(--account-text);border-color:var(--account-line)}
html[data-theme=dark] body.app-body :is(h1,h2,h3,h4,p,label,small,summary,legend,.lead,.fine,.eyebrow,.app-page-context,.app-nav a,.app-bottom-nav a,.app-footer a){color:var(--account-text)}
html[data-theme=dark] body.app-body a:not(.button){color:#c4dfce}
html[data-theme=dark] body.app-body :is(input,textarea,select){background:var(--account-bg);color:var(--account-text);border-color:var(--account-line)}
html[data-theme=dark] body.app-body .button{background:#bedbc2;color:#13231b;border-color:#bedbc2}
html[data-theme=dark] body.app-body :is(.button.secondary,.chip){background:#293f32;color:#ecf1e8;border-color:#91ac97}
html[data-contrast=high]{--account-text:#000;--account-muted:#111;--account-line:#000;--account-accent:#153b28;--ink:#000;--muted:#111;--line:#000}
html[data-theme=dark][data-contrast=high]{--account-text:#fff;--account-muted:#fff;--account-line:#fff;--account-accent:#fff;--ink:#fff;--muted:#fff;--line:#fff}
html[data-contrast=high] body.app-body :is(p,small,label,h1,h2,h3,a:not(.button)){color:var(--account-text)!important}
html[data-contrast=high] body.app-body :is(section,article,input,textarea,select,button){border-color:var(--account-line)!important}
html[data-motion=reduce] *,html[data-motion=reduce] *::before,html[data-motion=reduce] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-low-stim=true] :is(.cover-image,.feature-mark,.journey-stamp,.personality-promo-icon){visibility:hidden}
html[data-simple=true] :is(.channel-hero,.journey-banner,.new-offerings,.app-sidebar-note,.app-sidebar .app-nav a small){display:none!important}
html[data-visual=text] main :is(.feature-mark,.post-placeholder,.cover-image){display:none!important}
html[data-tap=true] .matrix-task select{outline:2px solid var(--account-accent);min-height:44px}
.ns-account-trigger{display:inline-flex!important;align-items:center;justify-content:center;gap:9px;min-height:44px;white-space:nowrap}
.ns-account-trigger img{width:32px;height:32px;object-fit:contain;background:#fffdf8;border-radius:50%}
.account-hub{max-width:1200px;margin:auto;padding:clamp(16px,3vw,42px);color:var(--account-text)}
.account-hero{padding:clamp(22px,3vw,34px);background:var(--account-soft)!important;border:1px solid var(--account-line);border-radius:22px;margin-bottom:24px}
.account-identity{display:flex;align-items:center;gap:22px;min-width:0}.account-identity h1{font-size:clamp(1.9rem,4vw,3rem);line-height:1.15;margin:.15em 0;overflow-wrap:anywhere}.account-identity p{margin:.4em 0}
.account-avatar{width:94px;height:94px;object-fit:contain;border-radius:24px;background:#fffdf8;border:1px solid #cad2c5;flex-shrink:0}
.account-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}
.account-sync-pill{font-size:.8em;padding:7px 12px;background:var(--account-card);border:1px solid var(--account-line);border-radius:99px}
.account-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:24px;align-items:start}
.account-nav{display:grid;gap:5px;position:sticky;top:90px}.account-nav a{color:var(--account-text);text-decoration:none;padding:11px 14px;border-radius:10px;font-size:.9em;line-height:1.4}.account-nav a[aria-current]{background:var(--account-soft);font-weight:750;border-left:3px solid var(--account-accent)}
.account-pane{padding:clamp(18px,3vw,28px);border:1px solid var(--account-line);border-radius:18px;background:var(--account-card);min-width:0}.account-pane>h2{margin-top:0;font-size:1.55em}.account-pane h3{margin-top:28px}
.account-hub label,.account-dialog label{display:grid;gap:7px;margin:16px 0;font-weight:600;font-size:.92em}.account-hub input:not([type=checkbox],[type=radio],[type=range],[type=file]),.account-hub select,.account-hub textarea,.account-dialog input:not([type=checkbox]),.account-dialog select{width:100%;min-height:44px;padding:11px 12px;border:1px solid var(--account-line);border-radius:9px;background:var(--account-bg);color:var(--account-text);font:inherit}
.account-hub textarea{resize:vertical}.account-hub input[type=checkbox],.account-dialog input[type=checkbox],.account-hub input[type=radio]{width:20px;height:20px;accent-color:var(--account-accent)}
.account-hub label.account-check,.account-dialog label.account-check{display:flex;align-items:flex-start;gap:12px;font-weight:500;line-height:1.5}.account-check small{display:block;color:var(--account-muted);font-size:.82em;margin-top:4px}
.account-hub fieldset{border:1px solid var(--account-line);border-radius:12px;padding:16px;margin:20px 0;min-width:0}.account-hub legend{padding:0 7px}.account-hub details{margin:12px 0}.account-hub summary{cursor:pointer;font-weight:650;min-height:32px}
.account-avatar-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.account-avatar-grid label{position:relative;margin:0;cursor:pointer;border-radius:12px;background:#fffdf8;border:2px solid transparent;padding:5px;aspect-ratio:1}.account-avatar-grid label:has(input:checked){border-color:#315746;box-shadow:0 0 0 2px #b5cfb4}.account-avatar-grid img{width:100%;height:100%;object-fit:contain}.account-avatar-grid input{position:absolute;top:4px;left:4px}.account-avatar-grid label:focus-within{outline:3px solid #c99649}
.account-upload canvas{display:block;width:160px;height:160px;border:1px solid var(--account-line);border-radius:12px;background:#fffdf8}.account-upload input[type=range]{width:100%}
.account-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.account-stat{display:grid;gap:7px;padding:17px 12px;border:1px solid var(--account-line);border-radius:14px;background:var(--account-soft);color:var(--account-text);text-decoration:none}.account-stat strong{font-size:1.7em}.account-stat span{font-size:.8em}
.account-record{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:16px 0;border-bottom:1px solid var(--account-line);color:var(--account-text);text-decoration:none;overflow-wrap:anywhere}.account-record b{flex:1 1 190px}.account-record small{color:var(--account-muted)}.account-record p{flex-basis:100%;margin:.4em 0}.account-record a{color:inherit}
.account-note{padding:15px 17px;margin:16px 0;border:1px solid var(--account-line);border-left:4px solid var(--account-accent);border-radius:10px;background:var(--account-soft);font-size:.9em;overflow-wrap:anywhere}.account-note.warning{border-left-color:#a36532}.account-empty{padding:14px 0;color:var(--account-muted)}
.account-action-list{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.account-hub .fine,.account-dialog .fine{font-size:.82em;line-height:1.7;color:var(--account-muted)}.account-status{min-height:1.6em;color:var(--account-accent);font-weight:650;overflow-wrap:anywhere}.account-details{display:grid;grid-template-columns:100px 1fr;gap:12px}.account-details dd{margin:0;overflow-wrap:anywhere}.account-secret{display:block;padding:16px;background:var(--account-soft);overflow-wrap:anywhere;user-select:all}
.account-dialog{width:min(570px,calc(100% - 24px));max-height:calc(100dvh - 28px);padding:0;border:1px solid var(--account-line);border-radius:20px;background:var(--account-card);color:var(--account-text);box-shadow:0 25px 100px #0005}.account-dialog::backdrop{background:#142019a8;backdrop-filter:blur(3px)}.account-dialog-content{position:relative;padding:30px;overflow:auto}.account-dialog h1,.account-dialog h2{margin:5px 40px 15px 0}.account-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border:1px solid var(--account-line);border-radius:50%;background:var(--account-soft);color:var(--account-text);font-size:24px;cursor:pointer}.account-text-button{display:block;border:0;background:none;color:var(--account-text);text-decoration:underline;padding:12px 0;cursor:pointer;font:inherit}.account-divider{text-align:center;margin:18px 0;color:var(--account-muted)}
.account-learning-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:18px;margin-top:24px;border:1px solid var(--account-line);border-radius:12px}.account-comments{padding-top:35px!important;padding-bottom:40px!important}.account-comment{display:flex;gap:15px;margin:20px 0;padding:20px;border:1px solid var(--account-line);border-radius:14px}.account-comment>img{width:45px;height:45px;object-fit:contain;background:#fffdf8;border-radius:12px}.account-comment>div{min-width:0;flex:1}.account-comment small{display:block;color:var(--account-muted)}.account-comment p{white-space:pre-wrap;overflow-wrap:anywhere}.account-comment-form textarea{width:100%;padding:12px;border:1px solid var(--account-line);border-radius:10px;background:var(--account-bg);color:var(--account-text);font:inherit}.account-public-profile{padding:40px;max-width:800px}.account-hub .danger{background:#8b312c!important;color:#fff!important;border-color:#8b312c!important}
.account-hub :focus-visible,.account-dialog :focus-visible{outline:3px solid #b37731;outline-offset:3px}
@media(max-width:850px){.account-layout{grid-template-columns:1fr}.account-nav{position:static;display:flex;overflow-x:auto;gap:6px;padding-bottom:10px}.account-nav a{flex:0 0 auto;border:1px solid var(--account-line)}.account-quick-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.account-hub{padding:14px}.account-pane{padding:17px}.account-avatar-grid{grid-template-columns:repeat(3,1fr)}.account-identity{gap:14px}.account-avatar{width:70px;height:70px}.account-dialog-content{padding:25px 20px}.account-details{grid-template-columns:1fr;gap:5px}.ns-account-trigger{padding:6px 10px!important}.ns-account-trigger img{width:26px;height:26px}.account-identity h1{font-size:1.7rem}.account-record{gap:8px}}

html[data-theme=dark] body:not(.app-body){background:var(--account-bg);color:var(--account-text)}
html[data-theme=dark] body:not(.app-body) :is(section,article,header,footer,.ndp-card,.ndp-panel){background-color:var(--account-card);color:var(--account-text)}

/* Dark mode keeps the app's existing coloured surfaces and adapts the text to them. */
html[data-theme=dark] body.app-body{color-scheme:dark;background:var(--account-bg)!important;color:var(--account-text)!important}
html[data-theme=dark]{--app-ink:#203e34;--app-muted:#455d50;--atlas-ink:#203e34;--atlas-muted:#455d50;--brain-ink:#203e34;--map-ink:#203e34;--reality-ink:#203e34;--closer-ink:#203e34;--closer-muted:#455d50;--lb-ink:#203e34;--lb-muted:#455d50;--mm-ink:#203e34;--mm-muted:#455d50;--present-ink:#203e34;--present-muted:#455d50;--recipe-ink:#203e34;--recipe-muted:#455d50;--sb-ink:#203e34;--sb-muted:#455d50;--sensory-ink:#203e34;--sensory-muted:#455d50}
html[data-theme=dark] body.app-body main :is(h1,h2,h3,h4,p,li,dt,dd,label,small,strong,b,em,blockquote,figcaption,legend,summary,output,.lead,.fine,.eyebrow,.muted,.hint,.help-text){color:#203e34!important}
html[data-theme=dark] body.app-body main a:not(.button){color:#24543d!important}
html[data-theme=dark] body.app-body main :is(.dark,.article.theme-dark,.strategy-card,.strategy-doors button,.wisbody-bubble,.strategy-sheet,.strategy-steps button,.console-speech,.console-stage :is(.choice-tile,.choice-pill,.field,.interactive-opt-in,.situation-subparts),.strategy-project-links .chip,.account-hero,.account-pane,.account-nav){color:#ecf1e8!important}
html[data-theme=dark] body.app-body main :is(.dark,.article.theme-dark,.strategy-card,.strategy-doors button,.wisbody-bubble,.strategy-sheet,.strategy-steps button,.console-speech,.console-stage :is(.choice-tile,.choice-pill,.field,.interactive-opt-in,.situation-subparts),.strategy-project-links .chip,.account-hero,.account-pane,.account-nav) :is(h1,h2,h3,h4,p,li,dt,dd,label,small,strong,b,em,blockquote,figcaption,legend,summary,output,.lead,.fine,.eyebrow,.muted,.hint,.help-text,a:not(.button)){color:#ecf1e8!important}
html[data-theme=dark] body.app-body main .console-speech h2{color:#ecf1e8!important}
html[data-theme=dark] body.app-body main :focus-visible{outline:3px solid #f0c56d;outline-offset:3px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
