/* Atomic Ember / Crimson Precision: finish, not a second layout or motion system.
   No header geometry, new measurements, full-screen effects or independent loops. */
:root{--reactor-hot:#ffc7d1;--reactor-ember:#ff826c;--reactor-cool:#87cedd}
.daily-header{
 background:
  radial-gradient(ellipse at 14% 58%,#9f284429,transparent 52%),
  radial-gradient(ellipse at 100% 0%,#46667c10,transparent 40%),
  linear-gradient(125deg,#201620,#11141b 58%,#121219);
 box-shadow:inset 0 1px 0 #ff9aaf24,0 12px 32px #0003;
}
/* Today material tokens are scoped here; Overview retains its accepted finish. */
.today-page{
 --precision-surface:linear-gradient(150deg,#1b1c23,#13161c 68%);
 --precision-line:#343740;--precision-text:#f5f3f6;--precision-muted:#bcc0ca;
 --precision-light:inset 0 1px 0 #ffffff08;--precision-depth:0 6px 18px #0002;
 --precision-accent:#f2637e;--precision-action:linear-gradient(135deg,#a92b46,#782036 70%,#601a2b);
}
.today-panel{border-color:var(--precision-line);background:var(--precision-surface);box-shadow:var(--precision-light),var(--precision-depth)}
.today-nutrition{
 background:radial-gradient(ellipse at 20% 48%,#a12a3d12,transparent 58%),var(--precision-surface);
 border-top-color:var(--precision-line);isolation:isolate;
}
.today-nutrition::before{background:linear-gradient(90deg,#c74662,#f1acba 48%,#f2637e00);box-shadow:0 0 7px #ff536b28}
.today-panel::after{border-color:#8b737f;opacity:.25}
.reactor-traces{position:absolute;inset:0;width:100%;height:100%;color:#e88da2;opacity:.20;pointer-events:none}
.reactor-traces path,.reactor-traces circle{stroke:currentColor;stroke-width:.65;vector-effect:non-scaling-stroke}
.reactor-traces .reactor-branch{opacity:.7}
.today-dial{isolation:isolate}
.today-page .reactor-traces{opacity:.09}
.reactor-housing{pointer-events:none}
.reactor-bezel-shadow{stroke:#080b10;stroke-width:12}
.reactor-bezel-metal{stroke-width:7}
.reactor-bezel-edge{stroke:#76727e;stroke-width:.55;opacity:.55}
.reactor-inner-lip{stroke-width:1.2}
.today-page .reactor-field{opacity:.27}
.today-page .reactor-calibration{opacity:.36}
.today-dial::before{
 content:"";position:absolute;inset:0;border-radius:50%;z-index:-1;pointer-events:none;
 background:conic-gradient(from 20deg,transparent 0deg 35deg,#fc335830 75deg,transparent 112deg 182deg,#89cde321 235deg,transparent 278deg 330deg,#fc335826 360deg);
 -webkit-mask-image:radial-gradient(circle,transparent 56%,#000 63%,#000 70%,transparent 72%);
 mask-image:radial-gradient(circle,transparent 56%,#000 63%,#000 70%,transparent 72%);
}
.today-dial.is-unknown::before{opacity:.2}
.reactor-field{stroke-width:.75;opacity:.55}
.reactor-calibration{stroke:#ce7d96;stroke-width:.6;opacity:.55}
.reactor-calibration circle{fill:#ffb8c8;stroke:none}
.today-frame{stroke:#a5657f;stroke-dasharray:10 20;opacity:.65}
.today-ticks{stroke:#a5a0ab;opacity:.75;stroke-width:2.6}
.today-outer{stroke:#66414f}.today-inner{stroke:#704453;opacity:.65}
.today-track{stroke:#282d35}
.today-arc{stroke:var(--precision-accent)}
.reactor-energy-aura{stroke:#ef375b;stroke-width:13;opacity:.09;pointer-events:none}
.reactor-orbit-tail{stroke:currentColor;stroke-width:.95;stroke-linecap:round}
.reactor-orbit-warm{color:var(--reactor-hot)}.reactor-orbit-cool{color:var(--reactor-cool);opacity:.65}
.reactor-electron-halo{fill:currentColor;opacity:.13;stroke:none}
.reactor-electron{fill:currentColor;stroke:none}
.today-hud-orbit-a{stroke-width:1.1;opacity:.55}.today-hud-orbit-b{stroke-width:.75;opacity:.32}
.today-dial-text>strong{color:var(--precision-text);text-shadow:0 1px 2px #0008;font-variant-numeric:tabular-nums}
.today-unit{letter-spacing:.12em}.today-target b{color:#f4dce5}
.today-nutrition .today-kicker{color:#c4a0ab}
.today-protein .today-progress::-webkit-progress-value{background:linear-gradient(90deg,#ca3957,#ff7892)}
.today-protein .today-progress::-moz-progress-bar{background:linear-gradient(90deg,#ca3957,#ff7892)}
.today-other-macros{border-top-color:#35353f}
.today-coverage{border-top-color:#41404b}
.today-coverage strong{color:var(--precision-text)}
.today-page :is(.today-goal-context,.today-overline,.today-unit,.today-target,.today-protein>span,.today-protein>small,.today-protein>div>span,.today-other-macros span,.today-coverage p,.today-status,.today-session-copy>p,.today-device-target,.today-device-source){color:var(--precision-muted)}
.today-session{background:var(--precision-surface);border-top-color:var(--precision-line);box-shadow:var(--precision-light)}
.today-button.today-primary{color:#fff4f7;background:var(--precision-action);box-shadow:inset 0 1px 0 #ffc6d145,0 3px 10px #0003;border-color:#cf637b}
.today-button.today-quiet{color:#f2a1b2}
.today-button:enabled:active{border-color:#e4a1b0;box-shadow:inset 0 2px 5px #0005}
.today-device:enabled:active{border-color:#b2c0cc;box-shadow:inset 0 2px 6px #0005}
.today-page :is(.today-button,.today-device):focus-visible{outline:2px solid #f2b2c2;outline-offset:3px}
.today-device{background:linear-gradient(145deg,#1a2028,#10141a 68%);border-color:#3d4652;box-shadow:var(--precision-light)}
.today-device::after{border-color:#859ba8;opacity:.18}
.today-device::before{background:linear-gradient(90deg,#90bbc8,#90bbc800)}
.today-device>strong{color:#ebf5f8}
.today-next-action{background:#12161c;border-color:#393a44;box-shadow:none}
/* 0.9.11 — Today Core: the launch ring's circular language, not a loading state.
   Data arc remains static; only the two existing decorative rotors move. */
.today-page .today-panel{border-top-width:1px}
.today-page .today-panel::before,.today-page .today-panel::after,
.today-page .reactor-traces,.today-page .today-frame,
.today-page .reactor-field,.today-page .reactor-calibration,
.today-page .reactor-bezel-shadow,.today-page .reactor-bezel-metal,
.today-page .reactor-bezel-edge,.today-page .reactor-orbit-art,
.today-page .today-dial::before{display:none}
.today-page .reactor-face{fill:#151219}
.today-page .reactor-center-well{fill:#131218}
.today-page .reactor-inner-lip{stroke:#b93351;stroke-width:.65;opacity:.6}
.today-page .today-inner{stroke:#4e2735;stroke-width:.55;opacity:.8}
.today-page .today-outer{stroke:#703044;stroke-width:.7;opacity:.45}
.today-page .today-ticks{stroke:#bc526c;stroke-width:2.1;opacity:.5}
.today-page .today-track{stroke:#31202b;stroke-width:5}
.today-page .today-arc{stroke:#ff6d89;stroke-width:5;stroke-linecap:butt}
.today-page .reactor-energy-aura{stroke:#ef3c63;stroke-width:10;opacity:.12}
.today-page .today-hud-orbit-a{stroke:#ff6685;stroke-width:1.25;opacity:.6}
.today-page .today-hud-orbit-b{stroke:#c24c67;stroke-width:2.4;opacity:.42}
.today-page .today-hud-marker{fill:#ffb1c2;stroke:none}
.today-page .today-axis{stroke:#95354e;stroke-width:.7;opacity:.6}
.today-page .today-dial-text>strong{color:#fff6f9;text-shadow:none}
.today-page .today-target b{color:var(--precision-text)}
.today-page .today-macros{color:var(--precision-text)}
.today-page .today-protein>span,.today-page .today-other-macros span{color:var(--precision-muted)}
.today-page .today-other-macros{border-top-color:#36313b}
.today-page .today-coverage{border-top-color:#34313b}
.today-page .today-kicker{color:#c4a0ab}
.today-page .today-next-action{border-left-width:1px}
.today-page .today-device{background:var(--precision-surface);border-color:var(--precision-line)}
/* Etched panel treatment repeats quietly across the existing views. */
#page .surface:not(.daily-header){background:linear-gradient(128deg,#201b25,#15171e 64%);box-shadow:inset 0 1px 0 #ffe1ed06}
#page .surface::before,#page .surface::after{color:#bb637d}
.crimson-core .reactor-face{opacity:.9}
.crimson-core .reactor-field{opacity:.70;stroke-width:1}
.crimson-core .reactor-orbit-tail{stroke-width:1.1}
.crimson-core .core-inner{fill:#15131b}
.crimson-core>span{color:#ffe5ee;text-shadow:0 0 15px #ff536b32}
/* Flame-like filaments are tied to verified kcal changes / sparse idle sparks. */
.reactor-embers{pointer-events:none}
.reactor-ember-wisp{fill:#ff637929;stroke:#ffafba;stroke-width:.55;stroke-linecap:round;stroke-linejoin:round}
.reactor-ember-thread{stroke:var(--reactor-ember);stroke-width:.65;stroke-linecap:round}
.reactor-ember-tip{fill:var(--reactor-hot)}
.kcal-charge-core{stroke:#ffe0e8;stroke-width:2.4}
.kcal-charge-halo{stroke:#ff5776;stroke-width:10;opacity:.23}
.kcal-leak-halo{stroke:#ff6d81;opacity:.19}
/* Navigation icons use one stroke language; fixed boxes retain existing geometry. */
.nav-glyph{display:block;width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.bottom-nav a[aria-current=page]{background:linear-gradient(180deg,#6022388c,#2b182400);box-shadow:inset 0 2px 0 #ff8da6}
@media(hover:hover){.today-button.today-primary:enabled:hover{background:linear-gradient(135deg,#bc3552,#88253d 70%)}.today-device:enabled:hover{border-color:#8294a5}}
.today-button.today-primary:enabled:active{background:linear-gradient(135deg,#822037,#5c192b);box-shadow:inset 0 2px 6px #0006}
html[data-motion=off] .today-dial::before{opacity:.45}
@media(prefers-reduced-motion:reduce){html:not([data-motion-explicit="true"]) .today-dial::before{opacity:.45}}
@media(forced-colors:active){
 .reactor-housing,.reactor-traces,.reactor-field,.reactor-calibration,.reactor-orbit-art,.reactor-embers,.reactor-energy-aura,.today-dial::before{display:none!important}
 .today-panel,.daily-header,#page .surface:not(.daily-header),.today-device,.today-next-action{background:Canvas;color:CanvasText;box-shadow:none;border-color:CanvasText}
 .today-button.today-primary{background:Highlight;color:HighlightText;box-shadow:none;border-color:HighlightText}
 .today-button.today-quiet,.today-coverage strong,.today-device>strong,.today-dial-text>strong,.today-target b,.today-nutrition .today-kicker{color:CanvasText;text-shadow:none}
 .bottom-nav a[aria-current=page]{background:Highlight;color:HighlightText;box-shadow:none}
 .today-page :is(.today-goal-context,.today-overline,.today-unit,.today-target,.today-protein>span,.today-protein>small,.today-protein>div>span,.today-other-macros span,.today-coverage p,.today-status,.today-session-copy>p,.today-device-target,.today-device-source){color:CanvasText}
 .today-page :is(.today-button,.today-device):focus-visible{outline-color:Highlight}
 .today-page .today-button:enabled:active,.today-page .today-device:enabled:active{background:Highlight;color:HighlightText;box-shadow:none;border-color:HighlightText}
 .today-page .today-device,.today-page .today-panel{background:Canvas;color:CanvasText;box-shadow:none;border-color:CanvasText}
 .today-page .today-dial-text>strong,.today-page .today-target b,.today-page .today-macros,.today-page .today-kicker{color:CanvasText;text-shadow:none}
 .nav-glyph{stroke:currentColor}
}
