/* Semantic palette and shared controls. Dark preserves the existing appearance. */
:root[data-cf-theme="light"]{--bg:#b8cdd9;--panel:#dce8ee;--panel2:#c4d9e4;--panel3:#abc8d9;--cf-card-surface:#dce8ee;--text:#172f42;--muted:#3d5a6d;--accent:#00658c;--accent2:#0066a1;--accent3:#994000;--danger:#a92441;--border:#87a8ba;--cf-line:#98b6c6;--shadow:0 5px 18px #123c5420;--cf-surface-top:#e2edf1;--cf-surface-bottom:#cddfe8;--cf-surface-glow:#43bbdc24;--cf-chrome:#102b3e;--cf-chrome-text:#c9dfec;--cf-brand-cyan:#43d3ff;--cf-brand-orange:#ff963e}
:root[data-cf-theme="medium"]{--bg:#163344;--panel:#214657;--panel2:#29566b;--panel3:#30647a;--cf-card-surface:#214657;--text:#eaf5fc;--muted:#b5d1e0;--accent:#53d9ff;--accent2:#62d6ff;--accent3:#ffac68;--danger:#ff9aaf;--border:#42758a;--cf-line:#39697e;--shadow:0 6px 22px #061b3045;--cf-surface-top:#285467;--cf-surface-bottom:#1b3c50;--cf-surface-glow:#12b8df1a;--cf-chrome:#102b3e;--cf-chrome-text:#c9dfec;--cf-brand-cyan:#43d3ff;--cf-brand-orange:#ff963e}
:root[data-cf-theme] {background:var(--bg)}
:root[data-cf-theme] body.cf-app {background:var(--bg);color:var(--text)}
/* Keep the chrome artwork readable without recolouring images. */
:root[data-cf-theme="light"] .cf-wordmark-frame,:root[data-cf-theme="light"] .auth-logo{background:#0b0e13;border-radius:10px}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .tabbar{background:var(--bg)!important;border-color:var(--border)!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--panel);color:var(--text);border-color:var(--border)}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app ::placeholder{color:var(--muted);opacity:1}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .secondary{background:var(--panel2);color:var(--text);border-color:var(--border)}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app button:not([class]),:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .auth-primary-action{background:#006bb8;color:#fff}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.settings-panel,.auth-shell,.auth-card,.scan-panel,.history-panel,.checkin-panel,.cf-food-sheet,.food-suggestions){background:var(--panel);color:var(--text)}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.settings-help,.tiny,.empty-note,label){color:var(--muted)}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.danger,.auth-error){color:var(--danger)}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .compact-command .coach-day.active{background:var(--panel3)!important;color:var(--accent)!important;border-color:var(--accent)!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .cf-decorated-profile{--text:#f4f7fb;--muted:#c8d8e8;color:var(--text)}
.cf-theme-control{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:12px 0}
.cf-theme-control label{flex:1 1 100px;margin:0}
body.cf-app .cf-theme-control select{width:auto;min-width:125px;max-width:100%;flex:0 1 180px;min-height:44px}
.cf-theme-control small{display:block;font-size:12px;color:var(--muted);margin-top:4px}
@media(prefers-reduced-motion:reduce){[data-cf-theme] *{scroll-behavior:auto!important}}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .tabbar .tab-btn{background:transparent!important;box-shadow:none!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .tabbar .tab-btn.active{color:var(--accent2)!important;background:var(--panel2)!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(#addFoodBtn,#cfOpenAddFood){background:#006bb8!important;color:#fff!important;box-shadow:none!important}
/* SVG chart data use presentation attributes rather than stylesheet colours. */
:root[data-cf-theme="light"] :is(#coachTab,#trackTab) svg [stroke="#20c8ff"],:root[data-cf-theme="light"] :is(#coachTab,#trackTab) svg [stroke="#21c8f0"]{stroke:var(--accent)}
:root[data-cf-theme="light"] :is(#coachTab,#trackTab) svg [fill="#20c8ff"],:root[data-cf-theme="light"] :is(#coachTab,#trackTab) svg [fill="#21c8f0"]{fill:var(--accent)}
:root[data-cf-theme="light"] :is(#coachTab,#trackTab) svg [stroke="#ff6f2c"]{stroke:var(--accent3)}
:root[data-cf-theme="light"] :is(#coachTab,#trackTab) svg [fill="#ff6f2c"]{fill:var(--accent3)}
:root[data-cf-theme="light"] :is(#coachTab,#trackTab) svg text[fill="#8996aa"]{fill:var(--muted)}

/* Brushed blue alloy and deep ocean: shared Cyborg chrome, distinct surfaces. */
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app{background:radial-gradient(ellipse at 8% 0%,#20bde023,transparent 52%),linear-gradient(160deg,var(--bg),var(--panel2));background-attachment:fixed}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app header{background:linear-gradient(115deg,#102434,#14384c 55%,#102738)!important;border-bottom:1px solid #3181a0!important;box-shadow:0 3px 15px #051d3038!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) .cf-wordmark-frame{background:transparent;border-radius:0}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.card,.social-shell,.social-post,.settings-panel,.auth-card,.cf-food-sheet){background:radial-gradient(ellipse at 0 0,var(--cf-surface-glow),transparent 70%),linear-gradient(150deg,var(--cf-surface-top),var(--cf-surface-bottom))!important;border-color:var(--cf-line)!important;box-shadow:inset 0 1px 0 #ffffff16,var(--shadow)!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .tabbar{background:linear-gradient(100deg,#102b3e,#123548)!important;border-top:1px solid #3181a0!important;box-shadow:0 -3px 16px #051d3038!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .tabbar .tab-btn{color:var(--cf-chrome-text)!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .tabbar .tab-btn.active{color:var(--cf-brand-cyan)!important;background:#145069!important;box-shadow:inset 0 2px 0 var(--cf-brand-cyan)!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(#cfOpenAddFood,#addFoodBtn,#cfSaveAppearance,.auth-primary-action){background:linear-gradient(110deg,#087da8,#07568e)!important;color:#fff!important;border-color:#2ca2c7!important;box-shadow:inset 0 1px 0 #6ce3ff55,0 3px 10px #06304e24!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.v131-drawer-link,.cf-more-profile,.cf-settings-disclosure){background:linear-gradient(110deg,var(--panel),var(--panel2));border-color:var(--cf-line);box-shadow:inset 0 1px 0 #ffffff10}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.section-kicker,.cf-more-group h3){color:var(--accent3)}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.secondary,input:not([type=checkbox]):not([type=radio]),select,textarea){box-shadow:inset 0 1px 3px #0b385515}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .compact-command .coach-day.active{background:linear-gradient(145deg,#12475d,#0c344d)!important;color:#72e2ff!important;border-color:#2f9cbb!important;box-shadow:inset 0 2px 0 #36d2ff!important}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app .cf-theme-control{border-bottom:1px solid var(--cf-line);padding-bottom:12px}
:root[data-cf-theme]:not([data-cf-theme="dark"]) body.cf-app :is(.global-command,.cf-more-page,.v131-menu-links){background:transparent!important}
