/* Malna — Stylesheet
   Aus den ursprünglich 7 <style>-Blöcken zusammengeführt, Reihenfolge unverändert. */

*{box-sizing:border-box}
body{margin:0;background:var(--page);color:var(--text);font-family:var(--font-system)}
button{font:inherit}
.app{display:flex;min-height:100vh}
.main{flex:1;max-width:1050px;padding:var(--space-4);margin:auto;width:100%}
.header{display:flex;justify-content:space-between;align-items:end;margin-bottom:var(--space-5)}
.eyebrow{color:var(--text-3);font-size:var(--font-size-label);text-transform:none;letter-spacing:0}
h1{margin:var(--space-1) 0 0;font-size:var(--font-size-tab-root);font-weight:var(--font-weight-medium)}
/* Nur zwei Gewichte (400/500): Browser-Standard «bold» für Überschriften, strong, b und th zurücksetzen. */
h2,h3,h4,h5,h6,strong,b,th{font-weight:var(--font-weight-medium)}
/* <small> schrumpft sonst unter 11px (z. B. in Legenden); nie kleiner als das Label. */
small{font-size:max(var(--font-size-label),.83em)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
.card{padding:var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card)}
.card.wide{grid-column:1/-1}
.cardhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}
.cardtitle{font-size:var(--font-size-value);font-weight:var(--font-weight-medium)}
.subtle{color:var(--text-2);font-size:var(--font-size-list)}
.exercise{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-top:1px solid var(--border)}
.exercise:first-of-type{border-top:0}
.exercise strong{display:block}
.exercise small{color:var(--text-3)}
.primary{padding:var(--space-3) var(--space-4);color:var(--card);background:var(--accent);border:0;border-radius:var(--radius-button);font-weight:var(--font-weight-medium);cursor:pointer}
.secondary{padding:var(--space-2) var(--space-3);color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);cursor:pointer}
.macro{margin:var(--space-3) 0}
.macro-row{display:flex;justify-content:space-between;margin-bottom:var(--space-2);font-size:var(--font-size-list)}
.bar{height:var(--progress-height);overflow:hidden;background:var(--border);border-radius:var(--radius-progress)}
.fill{height:100%;background:var(--accent);border-radius:var(--radius-progress)}
.sleepbig{margin:var(--space-1) 0;font-size:var(--font-size-hero);font-weight:var(--font-weight-medium)}
.checklist{display:grid;gap:var(--space-2)}
.item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}
.item:last-child{border-bottom:0}
.item input{width:18px;height:18px;accent-color:var(--accent)}
.status{margin-left:auto;color:var(--text-3);font-size:var(--font-size-label)}
.hidden{display:none}
.page{display:none}
.page.active{display:block}
.empty{padding:var(--space-5) var(--space-2);color:var(--text-2);text-align:center}
.notice{margin-top:var(--space-3);padding:var(--space-3);color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius-button);font-size:var(--font-size-list)}
@media(max-width:750px){
  .app{display:block}.main{padding:var(--space-4)}.grid{grid-template-columns:1fr}.card.wide{grid-column:auto}.header{align-items:start}
}

.input{width:100%;margin-top:var(--space-2);padding:var(--space-3);color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button)}
form{display:grid;gap:var(--space-3)}
.formgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}
.plan{display:flex;align-items:center;justify-content:space-between;margin:var(--space-2) 0;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-button);cursor:pointer}
.plan.active{background:var(--page);border-color:var(--text-3)}
.remove{color:var(--text-2);background:transparent;border:0;cursor:pointer}

/* ===== Cardio (Gesundheit → Cardio): Werte als Verlaufsliste, Verlauf nur mit Daten ===== */
.cardio-values{display:grid;margin-bottom:var(--space-2)}
.cardio-value-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:var(--control-height);padding:var(--space-2) 0;border-top:1px solid var(--border)}
.cardio-value-row:first-child{border-top:0}
.cardio-value-row span{display:grid;gap:var(--space-1);min-width:0}
.cardio-value-row strong{font-size:var(--font-size-list);font-weight:var(--font-weight-regular)}
.cardio-value-row span small{color:var(--text-3);font-size:var(--font-size-label)}
.cardio-value-row b{flex:none;font-size:var(--font-size-value);font-weight:var(--font-weight-medium);white-space:nowrap}
.cardio-value-row b small{color:var(--text-3);font-size:var(--font-size-label);font-weight:var(--font-weight-regular)}
.cardio-charts{display:grid;gap:var(--space-2)}
.cardio-charts:not(:has(.cardio-chart-card:not([hidden]))){display:none}
.cardio-chart-card[hidden]{display:none}
.card-title-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}
.card-title-row h3{margin:0;font-size:var(--font-size-value)}
.cardio-add{flex:none;min-height:var(--control-height);font-size:var(--font-size-list);white-space:nowrap}
.simple-chart{margin-top:var(--space-3)}
.cardio-status{margin:var(--space-3) 0 0;color:var(--text-2);font-size:var(--font-size-label)}
.os-cardio-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}
.os-cardio-actions .secondary{min-height:var(--control-height);font-size:var(--font-size-list)}
.inline-note h2{margin:0;color:var(--text);font-size:var(--font-size-value)}
.inline-note p{margin:var(--space-1) 0 0}

/* Collapsible calorie calculator */
.kcal-collapsible-summary {
  list-style: none;
  cursor: pointer;
}
.kcal-collapsible-summary::-webkit-details-marker {
  display: none;
}
.kcal-collapsible-summary .section-head {
  margin-bottom: 0;
}
/* Chevron als Linie statt Textzeichen «⌄». */
.kcal-collapsible-summary::after {
  content: "";
  float: right;
  width: var(--space-2);
  height: var(--space-2);
  margin: var(--space-1) var(--space-1) 0 0;
  border-right: 1.5px solid var(--text-2);
  border-bottom: 1.5px solid var(--text-2);
  transform: rotate(45deg);
  transition: transform .18s ease;
}
.kcal-collapsible[open] .kcal-collapsible-summary::after {
  transform: rotate(225deg);
}
.body-chevron,
.auth-account-check {
  display: inline-flex;
  color: var(--text-2);
}
.kcal-collapsible-content {
  padding-top: var(--space-4);
}

/* v0.23 */
.nutrition-food-search-row{display:grid;grid-template-columns:minmax(0,1fr) calc(var(--control-height) * 4) auto;gap:var(--space-2);margin:var(--space-3) 0}.nutrition-food-search-row input,.nutrition-food-search-row select{min-width:0}.nutrition-favorite-filter{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-2);color:var(--text-3);font-size:var(--font-size-label);white-space:nowrap}.nutrition-favorite-filter input{accent-color:var(--accent)}.nutrition-week-detail{margin-top:var(--space-3);overflow-x:auto;border-top:1px solid var(--border)}.nutrition-week-detail.collapsed{display:none}.nutrition-week-table{width:100%;min-width:calc(var(--control-height) * 15);border-collapse:collapse}.nutrition-week-table th,.nutrition-week-table td{padding:var(--space-2);border-bottom:1px solid var(--border);font-size:var(--font-size-label);text-align:right}.nutrition-week-table th:first-child,.nutrition-week-table td:first-child{text-align:left}.nutrition-week-table th{color:var(--text-3);font-weight:var(--font-weight-regular)}.nutrition-week-diff.good{font-weight:var(--font-weight-medium)}.nutrition-planned-actual{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}.nutrition-pa{color:var(--text-3);font-size:var(--font-size-label)}.nutrition-pa strong{color:var(--text)}
@media(max-width:700px){.nutrition-food-search-row{grid-template-columns:1fr}.nutrition-favorite-filter{padding:var(--space-1) 0}}
/* v0.21: compact collapsible day plan + cleaner food picker */
.nutrition-dayplan-wrap{overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card)}
.nutrition-dayplan-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);color:var(--text);background:var(--page);border:0;text-align:left;cursor:pointer}
.nutrition-dayplan-toggle:hover{background:var(--page)}
.nutrition-dayplan-toggle .dayplan-label{display:block;font-size:var(--font-size-value);font-weight:var(--font-weight-medium)}
.nutrition-dayplan-toggle .dayplan-sub{display:block;margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}
.nutrition-dayplan-chevron{font-size:var(--font-size-subscreen);transition:transform .18s ease}
.nutrition-dayplan-wrap.collapsed .nutrition-dayplan-chevron{transform:rotate(-90deg)}
.nutrition-dayplan-wrap.collapsed .nutrition-dayplan-content{display:none}

.nutrition-dayplan-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--page);cursor:pointer}
.nutrition-dayplan-head .cardtitle{margin:0}
.nutrition-dayplan-chevron{font-size:var(--font-size-subscreen);transition:transform .18s ease}
.nutrition-dayplan-wrap.collapsed .nutrition-dayplan-chevron{transform:rotate(-90deg)}
.nutrition-dayplan-wrap.collapsed .nutrition-dayplan-content{display:none}
.nutrition-calendar-range{display:flex;align-items:end;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-2) 0 var(--space-3)}
.nutrition-calendar-range label{display:flex;flex-direction:column;gap:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}
.nutrition-calendar-range select,.nutrition-calendar-range input{padding:var(--space-2);color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);font:inherit}
.nutrition-meal-config-row{grid-template-columns:42px minmax(0,1fr) 110px auto}
.nutrition-meal-config-time{width:100%}
@media(max-width:700px){.nutrition-meal-config-row{grid-template-columns:28px minmax(120px,1fr) 92px auto}.nutrition-meal-config-row input:first-of-type{min-width:120px}}
.food-picker{margin-top:var(--space-3);padding:var(--space-4);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-card)}
.food-picker-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}
.food-picker-title{font-size:var(--font-size-value);font-weight:var(--font-weight-medium)}
.food-picker-search{box-sizing:border-box;width:100%;margin-bottom:var(--space-3)}
.food-picker-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);max-height:calc(var(--control-height) * 7);overflow:auto}
.food-picker-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3);color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);text-align:left;cursor:pointer}
.food-picker-item:hover{background:var(--page);border-color:var(--text-3)}
.food-picker-item .food-name{font-weight:var(--font-weight-medium)}
.food-picker-item .food-meta{color:var(--text-3);font-size:var(--font-size-label);white-space:nowrap}
.food-picker-empty{grid-column:1/-1;padding:var(--space-4);color:var(--text-2);text-align:center}
@media(max-width:700px){.food-picker-list{grid-template-columns:1fr}}
.nutrition-fluid-macro-note{margin-top:var(--space-2);font-size:var(--font-size-label)}

.nutrition-add-modes{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}
.nutrition-add-modes button{min-width:calc(var(--control-height) * 4);flex:1}
.nutrition-deviation{background:var(--warning-soft);border-top:1px dashed var(--warning-border)!important}
.nutrition-deviation-badge{margin-right:var(--space-2);color:var(--warning-text);font-size:var(--font-size-label);text-transform:none;letter-spacing:0}
.nutrition-analysis{margin-top:var(--space-4);overflow:hidden}
.nutrition-analysis .cardhead{padding-bottom:var(--space-3)}
.nutrition-analysis-title{font-size:var(--font-size-value);font-weight:var(--font-weight-medium);letter-spacing:0}
.nutrition-analysis-subtitle{margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}
.nutrition-analysis-switch{display:flex;gap:var(--space-1);width:max-content;max-width:100%;margin-top:var(--space-3);padding:var(--space-1);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-button)}
.nutrition-analysis-switch button{padding:var(--space-2) var(--space-3);color:var(--text-2);background:transparent;border:0;border-radius:var(--radius-button);font:inherit;font-size:var(--font-size-label);font-weight:var(--font-weight-regular);cursor:pointer}
.nutrition-analysis-switch button.active{color:var(--card);background:var(--accent);box-shadow:none}
.nutrition-analysis-period{margin-top:var(--space-2);color:var(--text-3);font-size:var(--font-size-label)}
.nutrition-analysis-section{padding:0 var(--space-4) var(--space-4)}
.nutrition-analysis-section-title{margin:var(--space-1) 0 var(--space-2);color:var(--text-3);font-size:var(--font-size-section);font-weight:var(--font-weight-regular);text-transform:none;letter-spacing:0}
.nutrition-analysis-kcal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}
.nutrition-analysis-box{position:relative;min-width:0;padding:var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card)}
.nutrition-analysis-box span{display:block;color:var(--text-3);font-size:var(--font-size-label);font-weight:var(--font-weight-regular)}
.nutrition-analysis-box strong{display:block;margin-top:var(--space-2);overflow:hidden;font-size:var(--font-size-value);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
.nutrition-analysis-box small{display:block;margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}
.nutrition-analysis-box.total{background:var(--card);border-color:var(--border)}
.nutrition-analysis-box.diff strong{color:var(--accent)}
.nutrition-analysis-micros{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-card)}
.nutrition-analysis-micros summary{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);color:var(--text);background:var(--page);font-size:var(--font-size-list);font-weight:var(--font-weight-medium);list-style:none;cursor:pointer}
.nutrition-analysis-micros summary::-webkit-details-marker{display:none}
.nutrition-analysis-micros summary:after{content:'⌄';color:var(--text-2);font-size:var(--font-size-list);transition:transform .15s}
.nutrition-analysis-micros[open] summary:after{transform:rotate(180deg)}
.nutrition-analysis-micro-body{padding:0 var(--space-3) var(--space-3)}
.nutrition-micro-picks{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0 0 var(--space-2)}
.nutrition-micro-pick{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);color:var(--text-2);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-button);font-size:var(--font-size-label);cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.nutrition-micro-pick:hover{border-color:var(--border);color:var(--text)}
.nutrition-micro-pick input{margin:0;accent-color:var(--accent)}
.nutrition-analysis-empty{padding:var(--space-4) var(--space-3);color:var(--text-2);font-size:var(--font-size-label);text-align:center}
.nutrition-fav-meals{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.nutrition-fav-meal{display:flex;align-items:center;gap:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}
.nutrition-db-meals{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--space-1);max-width:calc(var(--control-height) * 8)}.nutrition-db-meals label{display:flex;align-items:center;gap:var(--space-1);color:var(--text-3);font-size:var(--font-size-label);white-space:nowrap}.nutrition-db-meals input{accent-color:var(--accent)}
.nutrition-fluid-food{min-width:calc(var(--control-height) * 4);flex:1}.nutrition-fluid-food select{width:100%;padding:var(--space-2);color:var(--text);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-button);font:inherit}
@media(max-width:850px){.nutrition-analysis-kcal{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.nutrition-analysis-kcal{grid-template-columns:1fr 1fr}.nutrition-analysis-section{padding-right:var(--space-3);padding-left:var(--space-3)}.nutrition-analysis-box{padding:var(--space-3)}.nutrition-analysis-box strong{font-size:var(--font-size-value)}.nutrition-add-modes button{min-width:100%}.nutrition-analysis-switch{width:100%}.nutrition-analysis-switch button{flex:1}}

/* ===== Finanzen ===== */
#money{width:min(100%,720px);margin:0 auto;padding-bottom:calc(var(--space-5) * 4)}
.finance-header{margin-bottom:var(--space-4)}
.fn-price-label{color:var(--text-3);font-size:var(--font-size-label);white-space:nowrap}
.fn-mini{width:auto;min-width:calc(var(--control-height) * 2);margin-top:0;padding:var(--space-2);flex:1;font-size:var(--font-size-list)}
.fn-form{display:grid;gap:var(--space-3)}
.fn-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.fn-form-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}
.fn-field{display:flex;flex-direction:column;gap:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}
.fn-field .input{margin-top:0}
.fn-sub{margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}

/* ===== Labor ===== */
/* Gruppe = Zwischenüberschrift und ein Rahmen, Werte als Zeilen mit Trennlinie (keine Karte je Marker, 27.09.2026). */
.lab-group{margin-bottom:var(--space-4)}
.lab-group-title{margin:0 0 var(--space-2);color:var(--text-3);font-size:var(--font-size-section);font-weight:var(--font-weight-regular)}
.lab-group-list{overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card)}
.lab-card{padding:var(--space-3)}
.lab-card + .lab-card{border-top:1px solid var(--border)}
.lab-card.empty-marker{opacity:.55}
.lab-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}
.lab-name{min-width:0;font-weight:var(--font-weight-medium);overflow-wrap:break-word}
.lab-name small{display:block;margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label);font-weight:var(--font-weight-regular)}
.lab-value{white-space:nowrap;text-align:right}
.lab-value strong{font-size:var(--font-size-value);font-weight:var(--font-weight-medium)}
.lab-value span{color:var(--text-3);font-size:var(--font-size-label)}
.lab-bar{position:relative;height:var(--progress-height);margin:var(--space-3) 0 var(--space-2);overflow:hidden;background:var(--border);border-radius:var(--radius-progress)}
.lab-zone{position:absolute;top:0;bottom:0;background:var(--accent-light)}
.lab-marker{position:absolute;top:0;width:var(--progress-height-small);height:var(--progress-height);background:var(--accent);border-radius:var(--radius-progress);transform:translateX(-50%)}
.lab-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-4);color:var(--text-3);font-size:var(--font-size-label)}
.lab-status{font-weight:var(--font-weight-regular)}
.lab-status.ok{color:var(--text-2)}
.lab-status.high,.lab-status.low{color:var(--warning-text)}
.lab-status.qualitative{color:var(--text-2)}
.lab-trend,.lab-ref{color:var(--text-3)}
.lab-change-arrow{color:var(--accent)}
.lab-range-note{margin:var(--space-2) 0 0;color:var(--text-2);font-size:var(--font-size-list);font-weight:var(--font-weight-regular);line-height:1.4}
.lab-expand{margin-top:var(--space-3);padding:0;color:var(--text);background:transparent;border:0;font-size:var(--font-size-label);cursor:pointer}
.lab-detail{display:none;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}
.lab-card.open .lab-detail{display:block}
.lab-hist-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;font-size:var(--font-size-list)}
.lab-hist-date{width:calc(var(--control-height) * 3);flex:none;color:var(--text-3)}
.lab-hist-val{flex:1;font-weight:var(--font-weight-medium)}
.lab-hist-val.ok{color:var(--text-2)}
.lab-hist-val.high,.lab-hist-val.low{color:var(--warning-text)}
.lab-hist-val.qualitative{color:var(--text-2)}
.lab-context{margin:0 0 var(--space-3);color:var(--text-2);font-size:var(--font-size-label);line-height:1.55}
.lab-context strong{color:var(--text)}
.lab-context ul{margin:var(--space-2) 0 0;padding-left:var(--space-5)}
.lab-context li{margin-bottom:var(--space-1)}
.lab-context em{display:block;margin-top:var(--space-2);color:var(--warning-text);font-style:normal}
.lab-actions{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-3)}
.lab-info{display:none;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}
.lab-card.info-open .lab-info{display:block}

/* ===== Logbuch ===== */
#log{box-sizing:border-box;padding:var(--space-4) var(--space-4) calc(var(--space-5) * 4)}
#log .card + .card{margin-top:var(--space-2)}
/* Filter der Zeitleiste so breit wie sein längster Eintrag («Alle Bereiche» war mit breiter Schrift abgeschnitten); hat er
   neben dem Titel keinen Platz, rückt er in eine eigene Zeile. */
#log .cardhead{flex-wrap:wrap;gap:var(--space-2) var(--space-3)}
#log .cardhead select{width:auto;max-width:100%}
.log-entry .remove{display:inline-flex;align-items:center;justify-content:center;min-width:var(--control-height);min-height:var(--control-height);flex:none}
.log-entry .remove .bo-icon{width:var(--icon-size);height:var(--icon-size)}
.log-month{margin:var(--space-4) 0 var(--space-2);color:var(--text-3);font-size:var(--font-size-section)}
.log-month:first-child{margin-top:0}
.log-entry{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}
.log-icon{display:flex;align-items:center;justify-content:center;width:var(--icon-size);height:var(--icon-size);flex:none;color:var(--text-2)}
.log-icon .bo-icon{width:var(--icon-size);height:var(--icon-size)}
.log-body{flex:1;min-width:0}
.log-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-1) var(--space-2)}
.log-top strong{flex:1 1 auto;min-width:0;overflow-wrap:break-word}
.log-date{flex:none;color:var(--text-3);font-size:var(--font-size-label);white-space:nowrap}
.log-type{margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}
.log-note{margin-top:var(--space-2);color:var(--text-2);font-size:var(--font-size-list);line-height:1.5}
@media(max-width:750px){
  .lab-value strong{font-size:var(--font-size-value)}
  .lab-hist-date{width:calc(var(--control-height) * 2)}
}

@media(max-width:750px){
  .fn-form-grid,.fn-form-grid3{grid-template-columns:1fr}
  .fn-mini{min-width:calc(var(--control-height) + var(--space-5))}
}

.nutrition-kcal-calculator{padding:0!important;overflow:hidden;border-radius:var(--radius-card);background:var(--card)}
.nutrition-kcal-calculator .kcal-collapsible-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.nutrition-kcal-calculator .kcal-collapsible-summary::after{float:none;flex:0 0 auto;font-size:var(--font-size-subscreen)}.nutrition-kcal-calculator .section-head{min-width:0}.nutrition-kcal-calculator .section-head h3{margin:0;font-size:var(--font-size-subscreen)}.nutrition-kcal-calculator .section-head p{max-width:calc(var(--control-height) * 17);margin:var(--space-1) 0 0;font-size:var(--font-size-error);line-height:1.45}.nutrition-kcal-calculator .kcal-collapsible-content{padding:0 var(--space-5) var(--space-5);border-top:1px solid var(--border)}.nutrition-kcal-calculator .nutrition-kcal-grid{margin-top:var(--space-4)}.nutrition-kcal-calculator .nutrition-kcal-form-card,.nutrition-kcal-calculator .nutrition-kcal-result-card{padding:var(--space-4);border-radius:var(--radius-card)}


@media(max-width:650px){.nutrition-kcal-calculator .kcal-collapsible-summary{padding:var(--space-4)}.nutrition-kcal-calculator .section-head p{display:none}.nutrition-kcal-calculator .kcal-collapsible-content{padding:0 var(--space-3) var(--space-3)}.supplement-finance-link{align-items:flex-start;flex-direction:column}.fn-linked-price-row{grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);padding:var(--space-2) 0;border-top:1px solid var(--border)}.fn-linked-price-row .fn-price-label:nth-of-type(n+2){margin-top:var(--space-1)}}
/* ===== Malna profile ===== */
.profile-form{display:grid;gap:var(--space-3)}
.profile-section{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--card);overflow:hidden}
.profile-section>summary{cursor:pointer;list-style:none;padding:var(--space-3) var(--space-4);font-weight:var(--font-weight-medium);background:var(--page)}
.profile-section>summary::-webkit-details-marker{display:none}
.profile-section>summary::after{content:"";float:right;width:var(--space-2);height:var(--space-2);margin:var(--space-1) var(--space-1) 0 0;border-right:1.5px solid var(--text-2);border-bottom:1.5px solid var(--text-2);transform:rotate(45deg);transition:transform .18s ease}
.profile-section[open]>summary::after{transform:rotate(225deg)}
.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);padding:var(--space-4)}
.profile-grid label,.profile-full{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-error);color:var(--text-2)}
.profile-full{padding:0 var(--space-4) var(--space-4)}
.profile-grid input,.profile-grid select,.profile-grid textarea,.profile-full input,.profile-full textarea,.profile-full select{width:100%;background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-button);padding:var(--space-3);font:inherit}
.profile-grid textarea{min-height:calc(var(--control-height) * 2)}
.profile-hint,.profile-consent-note{padding:0 var(--space-4) var(--space-4);color:var(--text-2);font-size:var(--font-size-error);line-height:1.45}
.profile-consent-note{padding-top:var(--space-4);background:var(--warning-bg)}
.profile-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);padding:var(--space-4)}
.profile-check-grid label{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-button);background:var(--page);font-size:var(--font-size-error);color:var(--text)}
.profile-check-grid input{width:var(--icon-size);height:var(--icon-size);accent-color:var(--accent);flex:0 0 var(--icon-size)}
.profile-healthkit-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}
.profile-healthkit-card div{display:flex;flex-direction:column;gap:var(--space-1)}.profile-healthkit-card span{font-size:var(--font-size-label);color:var(--text-2)}
.profile-sync-badge{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-pill);white-space:nowrap;color:var(--text-2)!important}
.profile-actions{display:flex;gap:var(--space-2);justify-content:flex-end}
.profile-save-status{padding-bottom:var(--space-1);color:var(--text-2);font-size:var(--font-size-label)}.profile-save-status.good{color:var(--text-2)}
@media(max-width:700px){.profile-grid,.profile-check-grid{grid-template-columns:1fr}.profile-actions{flex-direction:column}.profile-actions button{width:100%}.profile-healthkit-card{align-items:flex-start;flex-direction:column}}

/* Malna 0.65 — Lab / medication compendium */
.lab-med-results{display:grid;gap:var(--space-2);margin-top:var(--space-2)}
.lab-med-result{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3);width:100%;min-height:var(--control-height);padding:var(--space-3);color:var(--text);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-button);font:inherit;text-align:left;cursor:pointer}
.lab-med-result:hover{border-color:var(--border)}
.lab-med-result span:first-child{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
.lab-med-result small{color:var(--text-3)}
.lab-selected-med{margin-top:var(--space-2);padding:var(--space-3);background:var(--card);border:1px solid var(--border);border-radius:var(--radius-card)}
.lab-selected-med-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}
.lab-selected-med-head h3{margin:var(--space-1) 0 0;font-size:var(--font-size-value)}
.lab-med-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-2) 0;color:var(--text-3);font-size:var(--font-size-label)}
.lab-med-meta span{padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-pill)}
.lab-selected-med-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}
.lab-user-med-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border)}
.lab-user-med-row:last-child{border-bottom:0}
.lab-user-med-content{min-width:0}.lab-user-med-name{display:block;font-size:var(--font-size-value);font-weight:var(--font-weight-medium);line-height:1.4;overflow-wrap:anywhere}.lab-user-med-details{display:grid;gap:var(--space-2);margin:var(--space-3) 0 0}.lab-user-med-details div{display:grid;grid-template-columns:minmax(calc(var(--control-height) * 2),.6fr) minmax(0,1fr);gap:var(--space-2)}.lab-user-med-details dt{color:var(--text-3);font-size:var(--font-size-label)}.lab-user-med-details dd{margin:0;color:var(--text-2);font-size:var(--font-size-list);overflow-wrap:anywhere}
.lab-user-med-row .small{min-height:var(--control-height);justify-self:start;padding:0 var(--space-3);font-size:var(--font-size-list)}
.lab-med-result-action{display:grid;min-height:var(--control-height);place-items:center;padding:0 var(--space-3);color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius-button);font-size:var(--font-size-list)}
.lab-selected-med-head .secondary,.lab-selected-med .actions .primary{min-height:var(--control-height);padding:0 var(--space-3)}
.lab-compendium-msg{min-height:var(--icon-size);margin-top:var(--space-2);color:var(--text-2);font-size:var(--font-size-label)}
.lab-compendium-msg.good{color:var(--text-2)}
/* Quellenangabe der offenen Swissmedic-Daten unter den Treffern und beim gewählten Präparat (28.09.2026). */
.lab-med-source{margin:0;color:var(--text-3);font-size:var(--font-size-label);line-height:1.4}
.lab-compendium-link{margin-left:var(--space-2);padding:var(--space-1) var(--space-2);color:var(--text);background:transparent;border:1px solid var(--border);border-radius:var(--radius-pill);font:inherit;font-size:var(--font-size-label);cursor:pointer}
.lab-compendium-insight{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-card)}
.lab-insight-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);background:var(--page);border-bottom:1px solid var(--border)}
.lab-insight-head span{color:var(--text-3);font-size:var(--font-size-label)}
.lab-insight-block{padding:var(--space-3);border-bottom:1px solid var(--border)}
.lab-insight-block:last-child{border-bottom:0}
.lab-insight-row{display:grid;grid-template-columns:minmax(calc(var(--control-height) * 3),.8fr) minmax(0,1.6fr);gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--border)}
.lab-insight-row:first-of-type{margin-top:var(--space-2)}
@media(max-width:800px){.lab-selected-med-form{grid-template-columns:1fr 1fr}.lab-insight-row{grid-template-columns:1fr}}
@media(max-width:560px){.lab-selected-med-form{grid-template-columns:1fr}.lab-med-result{align-items:start}.lab-med-result-action{min-width:calc(var(--control-height) * 2)}.lab-user-med-details div{grid-template-columns:minmax(calc(var(--control-height) * 2),.7fr) minmax(0,1fr)}}

/* Malna 0.65.3 — medication brand / product presentation */
.lab-med-result-main{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:var(--space-1)}
.lab-med-products{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-1)}
.lab-med-product-chip{display:inline-block;padding:var(--space-1) var(--space-2);color:var(--text-2);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--font-size-label)}
.lab-selected-products{margin:var(--space-3) 0;padding:var(--space-3) 0;border-top:1px solid var(--border)}
.lab-selected-products>strong{display:block;margin-bottom:var(--space-2)}
.lab-selected-product-row{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-top:1px solid var(--border)}
.lab-selected-product-row:first-of-type{border-top:0}
@media (max-width:700px){.lab-selected-product-row{flex-direction:column;gap:var(--space-1)}.lab-selected-product-row .subtle:last-child{font-size:var(--font-size-label)}}

/* Malna 0.65.5 — personal medication integration */
.lab-insight-row.is-user-med{margin:0;padding-right:var(--space-3);padding-left:var(--space-3);background:var(--page);border-radius:var(--radius-button)}

/* Malna 0.66.2 — Labor-Wizard: ruhige Laborliste, Details nur auf Wunsch */
.lab-value-wrap{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:var(--space-2)}
.lab-value-trigger{border:0;background:transparent;color:inherit;padding:0;cursor:pointer;text-align:right;font:inherit}
.lab-value-trigger:hover{color:var(--text-2)}
.lab-card-arrow{display:none;width:var(--control-height);height:var(--control-height);padding:0;color:var(--text);background:transparent;border:0;border-radius:var(--radius-button);line-height:1;cursor:pointer}
.lab-card-focused .lab-card-arrow{display:inline-flex;align-items:center;justify-content:center}
.lab-card:not(.empty-marker){cursor:pointer}
.lab-card-focused{background:var(--page)}
.lab-detail{display:none}
.bodyos-lab-wizard{position:fixed;inset:0;z-index:9999;display:none}
.bodyos-lab-wizard.is-open{display:block}
.bodyos-lab-wizard-backdrop{position:absolute;inset:0;background:var(--scrim);backdrop-filter:none}
.bodyos-lab-wizard-panel{position:absolute;top:0;right:0;display:flex;flex-direction:column;width:min(calc(var(--control-height) * 14),100%);height:100%;background:var(--card);border-left:1px solid var(--border);box-shadow:none}
.bodyos-wizard-open{overflow:hidden}
.bodyos-lab-wizard-header{position:sticky;top:0;z-index:1;display:grid;grid-template-columns:var(--control-height) 1fr var(--control-height);align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--card);border-bottom:1px solid var(--border)}
.bodyos-lab-wizard-header h2{margin:0;font-size:var(--font-size-subscreen);font-weight:var(--font-weight-medium)}
.lab-wizard-heading{min-width:0;text-align:center}
.lab-wizard-back,.lab-wizard-close{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);padding:0;color:var(--text);background:transparent;border:0;border-radius:var(--radius-button);font-size:var(--font-size-subscreen);cursor:pointer}
.bodyos-lab-wizard-body{padding:var(--space-4);overflow:auto}
.lab-wizard-intro{margin-bottom:var(--space-3);color:var(--text-2);font-size:var(--font-size-list)}
.lab-wizard-summary{margin-bottom:var(--space-4);padding:var(--space-3);color:var(--text-2);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-card);line-height:1.55}
.lab-wizard-nav{display:flex;flex-direction:column;gap:var(--space-2)}
.lab-wizard-section{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-3);color:var(--text);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-card);text-align:left;cursor:pointer}
.lab-wizard-section:hover{background:var(--page)}
.lab-wizard-section strong{display:block;font-size:var(--font-size-value);font-weight:var(--font-weight-medium)}
.lab-wizard-section small{display:block;margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label);line-height:1.4}
.lab-wizard-section-right{display:flex;align-items:center;gap:var(--space-2);color:var(--text-2)}
.lab-wizard-section-right em{color:var(--text-3);font-size:var(--font-size-label);font-style:normal}
.lab-wizard-section-right b{font-size:var(--font-size-value);font-weight:var(--font-weight-medium)}
.lab-wizard-page-title{margin-bottom:var(--space-3);font-size:var(--font-size-subscreen);font-weight:var(--font-weight-medium)}
.lab-wizard-kicker{margin-bottom:var(--space-2);color:var(--text-3);font-size:var(--font-size-label)}
.lab-wizard-item{padding:var(--space-3) 0;border-bottom:1px solid var(--border)}
.lab-wizard-item:last-child{border-bottom:0}
.lab-wizard-item strong{font-size:var(--font-size-value);font-weight:var(--font-weight-medium)}
.lab-wizard-item small{display:block;margin-top:var(--space-1);color:var(--text-3);line-height:1.45}
.lab-wizard-item p{margin:var(--space-2) 0 0;color:var(--text);line-height:1.55}
.lab-wizard-empty,.lab-wizard-loading{padding:var(--space-4);color:var(--text-2);border:1px solid var(--border);border-radius:var(--radius-card);line-height:1.55}
.lab-wizard-text{padding:var(--space-1) 0;color:var(--text);line-height:1.7}
.lab-wizard-history{overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-card)}
.lab-wizard-history-row{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--border)}
.lab-wizard-history-row:last-child{border-bottom:0}
.lab-wizard-evidence{padding:var(--space-4) 0;border-bottom:1px solid var(--border)}
.lab-wizard-evidence:last-child{border-bottom:0}
.lab-wizard-evidence>div{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}
.lab-wizard-evidence p{margin:var(--space-2) 0;line-height:1.55}
.lab-wizard-evidence small{display:block;margin-top:var(--space-1);color:var(--text-3);line-height:1.45}
.lab-wizard-evidence a{color:var(--text)}
.lab-wizard-tag{padding:var(--space-1) var(--space-2);color:var(--text-2);background:var(--page);border-radius:var(--radius-pill);font-size:var(--font-size-label)}
@media (max-width:700px){.bodyos-lab-wizard-panel{width:100%;border-left:0}.bodyos-lab-wizard-body{padding:var(--space-4)}}

/* v0.66.18: mobile nutrition readability */
@media(max-width:700px){
  .nutrition-fluid-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .nutrition-fluid-table{min-width:560px}
  .nutrition-fluid-table th,.nutrition-fluid-table td{white-space:nowrap;padding:var(--space-2) var(--space-3)}
  .nutrition-dayplan-toggle .dayplan-sub{display:block;line-height:1.4}
}

/* v0.66.18: clearer day-plan heading */
.nutrition-dayplan-toggle>span:first-child{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}
.nutrition-dayplan-toggle .dayplan-label{line-height:1.25}
.nutrition-dayplan-toggle .dayplan-sub{line-height:1.35}

/* ======================================================================
   Malna 0.67 — product visual system
   The UI uses deliberate dark surfaces, vector iconography and a single
   accent language. Inputs remain visibly interactive without reverting to
   white browser controls or generic card stacks.
   ====================================================================== */
body{min-width:320px}
.app{align-items:stretch}
.bo-icon{display:inline-block;width:var(--icon-size);height:var(--icon-size);flex:0 0 auto;vertical-align:middle}
.lab-hist-actions{display:inline-flex;align-items:center;gap:var(--space-1)}.lab-hist-actions .remove{min-width:auto;padding:var(--space-1);font-size:var(--font-size-label);border:1px solid transparent;border-radius:var(--radius-button)}.lab-hist-actions .remove:hover{background:var(--page);border-color:var(--border)}
.primary,.secondary,.text-button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:inherit}
.primary{color:var(--card);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-button);box-shadow:none;font-weight:var(--font-weight-medium)}
.primary:hover{transform:none;box-shadow:none}
.primary .bo-icon,.text-button .bo-icon{width:var(--icon-size);height:var(--icon-size)}
.secondary{color:var(--text);background:var(--card);border-color:var(--border);border-radius:var(--radius-button)}
.secondary:hover{background:var(--page);border-color:var(--border);transform:none}
.text-button{padding:0;color:var(--text);background:transparent;border:0;font-size:var(--font-size-list);font-weight:var(--font-weight-regular);cursor:pointer}
.text-button:hover{color:var(--text-2)}.text-button.danger{color:var(--error-color)}
.icon-button{width:var(--control-height);height:var(--control-height);padding:0;color:var(--text);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-button);cursor:pointer}.icon-button:hover{background:var(--page);border-color:var(--border)}.icon-button.danger{color:var(--error-color)}
.card{background:var(--card);border-color:var(--border);box-shadow:none}
input,select,textarea,.input{color:var(--text)!important;background:var(--card)!important;border-color:var(--border)!important;border-radius:var(--radius-button)!important;box-shadow:none}
input:focus,select:focus,textarea:focus,.input:focus{outline:1px solid var(--accent);outline-offset:var(--space-1);border-color:var(--accent)!important}
/* Datumsfeld: Tab führt auch auf das Kalender-Symbol im Feld; dann zeigt der Rahmen den Fokus (Barrierefreiheit, 28.09.2026). */
input:focus-within{border-color:var(--accent)!important}
input::placeholder,textarea::placeholder{color:var(--text-3)!important}

.product-page-head h1{font-size:var(--font-size-tab-root);line-height:1.2;margin:var(--space-1) 0 var(--space-2)}.product-page-head p{max-width:calc(var(--control-height) * 14);margin:0;color:var(--text-2);line-height:1.5}.surface{position:relative;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--card);overflow:hidden}
.surface-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.surface-head>.bo-icon{width:var(--icon-size);height:var(--icon-size);color:inherit}.surface-kicker{display:block;margin-bottom:var(--space-1);color:var(--text-3);font-size:var(--font-size-label);font-weight:var(--font-weight-regular);letter-spacing:0;text-transform:none}.surface-head h2,.surface h2{margin:0;font-size:var(--font-size-subscreen);font-weight:var(--font-weight-medium);letter-spacing:0}.surface-foot{margin-top:var(--space-4);color:var(--text-3);font-size:var(--font-size-label)}.surface-note{margin:var(--space-1) 0 0;color:var(--text-2);font-size:var(--font-size-list);line-height:1.45}.hero-metric{margin:var(--space-2) 0 var(--space-1);font-size:var(--font-size-hero);font-weight:var(--font-weight-medium);letter-spacing:0;line-height:1}.hero-metric small{color:var(--text-3);font-size:var(--font-size-label);letter-spacing:0}.metric-progress{margin:var(--space-3) 0}.metric-progress-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);color:var(--text-2);font-size:var(--font-size-label)}.metric-progress-head strong{color:var(--text);font-size:var(--font-size-list);font-weight:var(--font-weight-medium)}.metric-progress-head small{color:var(--text-3);font-weight:var(--font-weight-regular)}.metric-progress-track{height:var(--progress-height);margin-top:var(--space-2);overflow:hidden;background:var(--border);border-radius:var(--radius-progress)}.metric-progress-track i{display:block;height:100%;background:var(--accent);border-radius:inherit;box-shadow:none}
.empty-state{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) 0;color:var(--text-2)}.empty-state.compact{min-height:calc(var(--control-height) * 3)}.empty-state-mark{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);flex:0 0 auto;color:var(--text-2);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-card)}.empty-state-mark .bo-icon{width:var(--icon-size);height:var(--icon-size)}.empty-state strong{display:block;color:var(--text);font-size:var(--font-size-list);font-weight:var(--font-weight-medium)}.empty-state p{margin:var(--space-1) 0 var(--space-2);font-size:var(--font-size-label);line-height:1.45}.empty-state .secondary{padding:var(--space-2);font-size:var(--font-size-label)}

/* Functional sleep, supplement and insight views */
.product-page-head{margin:0 0 var(--space-5)}.health-layout{display:grid;grid-template-columns:1.45fr .8fr;gap:var(--space-4);margin-bottom:var(--space-4)}.product-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.product-form label{display:flex;flex-direction:column;gap:var(--space-2);color:var(--text-3);font-size:var(--font-size-label);font-weight:var(--font-weight-regular)}.product-form label span{color:var(--text-3);font-weight:var(--font-weight-regular)}.product-form input,.product-form select,.product-form textarea{margin:0!important}.product-form .form-wide{grid-column:1/-1}.product-form button{justify-self:start}.sleep-summary{display:flex;flex-direction:column;justify-content:center}.summary-divider{height:1px;margin:var(--space-4) 0;border-top:1px solid var(--border)}.history-surface{margin-top:var(--space-4)}.count-badge{display:inline-grid;place-items:center;min-width:var(--pill-height);height:var(--pill-height);padding:0 var(--space-2);color:var(--text-2);background:var(--page);border-radius:var(--radius-pill);font-size:var(--font-size-label);font-weight:var(--font-weight-regular)}.record-list{display:grid}.record-row{display:grid;grid-template-columns:minmax(calc(var(--control-height) * 3),.8fr) calc(var(--control-height) * 2) minmax(0,2fr) var(--control-height);align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--border)}.record-date strong,.record-date span{display:block}.record-date strong{font-size:var(--font-size-list);font-weight:var(--font-weight-medium)}.record-date span,.record-row p{margin:var(--space-1) 0 0;color:var(--text-3);font-size:var(--font-size-label)}.record-value{font-size:var(--font-size-value);font-weight:var(--font-weight-medium);letter-spacing:0}.record-value small{color:var(--text-3);font-size:var(--font-size-label)}
.routine-list{display:grid;gap:var(--space-2)}.routine-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--page);border:1px solid var(--border);border-radius:var(--radius-card);cursor:pointer}.routine-row:hover{background:var(--page);border-color:var(--border)}.routine-row input{position:absolute;opacity:0;pointer-events:none}.routine-check{display:grid;place-items:center;width:var(--icon-size);height:var(--icon-size);color:transparent;border:1px solid var(--border);border-radius:var(--radius-button)}.routine-check .bo-icon{width:var(--icon-size);height:var(--icon-size)}.routine-row.is-complete .routine-check{color:var(--text);background:var(--card);border-color:var(--text-3)}.routine-main{flex:1;min-width:0}.routine-main strong,.routine-main small{display:block}.routine-main strong{font-size:var(--font-size-list);font-weight:var(--font-weight-medium)}.routine-main small{margin-top:var(--space-1);overflow:hidden;color:var(--text-3);font-size:var(--font-size-label);text-overflow:ellipsis;white-space:nowrap}.routine-state{color:var(--text-3);font-size:var(--font-size-label);font-weight:var(--font-weight-regular)}.routine-row.is-complete .routine-state{color:var(--text-2)}.management-list{display:grid}.management-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--border)}.management-row strong,.management-row span{display:block}.management-row strong{font-size:var(--font-size-list);font-weight:var(--font-weight-medium)}.management-row span{margin-top:var(--space-1);color:var(--text-3);font-size:var(--font-size-label)}

/* Cardio becomes a genuine manual time-series, not a future promise. */
#cardio .section-head h2{display:flex;align-items:center;gap:var(--space-2)}#cardio .section-head h2 .bo-icon{color:var(--text)}#cardioEntryPanel{margin:0 0 var(--space-4)}.inline-note{padding:var(--space-3) var(--space-4);color:var(--text-2);font-size:var(--font-size-list)}.inline-entry-form{display:grid;grid-template-columns:1fr calc(var(--control-height) * 4) calc(var(--control-height) * 4) auto auto;align-items:end;gap:var(--space-3)}.inline-entry-form h2{margin:0;font-size:var(--font-size-subscreen)}.inline-entry-form label{display:flex;flex-direction:column;gap:var(--space-2);color:var(--text-2);font-size:var(--font-size-error)}.trend-chart{width:100%;height:calc(var(--control-height) * 5);overflow:visible}.trend-chart line{stroke:var(--border)}.trend-chart polyline{fill:none;stroke:var(--chart-accent,var(--accent));stroke-width:var(--progress-height-small);stroke-linecap:round;stroke-linejoin:round}.trend-chart circle{fill:var(--chart-accent,var(--accent));stroke:var(--card);stroke-width:2}.chart-single{height:calc(var(--control-height) * 4);display:grid;place-items:center;align-content:center;gap:var(--space-2)}.chart-single strong{font-size:var(--font-size-hero);letter-spacing:0}.chart-single span,.chart-empty{color:var(--text-2);font-size:var(--font-size-list)}.chart-empty{display:grid;place-items:center;height:calc(var(--control-height) * 4);border:1px dashed var(--border);border-radius:var(--radius-card)}.cardio-list>div{background:var(--page);border-color:var(--border)}

#logFilter{width:auto;margin:0}
#fnCategoryBreakdown{margin-top:var(--space-5)}
#backupSummary{margin-bottom:var(--space-3)}
#backupImportStatus{margin-top:var(--space-3)}
.nutrition-estimate-note{margin-top:var(--space-2)}
.fn-calculation-basis{margin-bottom:var(--space-3)}

/* The only blocking destructive decision in the product is explicit. */
.sync-conflict-dialog{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:var(--space-4)}.sync-conflict-backdrop{position:absolute;inset:0;background:var(--scrim);backdrop-filter:none}.sync-conflict-card{position:relative;width:min(100%,calc(var(--control-height) * 12));padding:var(--space-4);background:var(--card);border:1px solid var(--warning-border);border-radius:var(--radius-sheet);box-shadow:none}.dialog-icon{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);margin-bottom:var(--space-4);color:var(--warning-text);background:var(--warning-soft);border-radius:var(--radius-card)}.dialog-icon .bo-icon{width:var(--icon-size);height:var(--icon-size)}.sync-conflict-card h2{margin:var(--space-1) 0 var(--space-2);font-size:var(--font-size-subscreen);letter-spacing:0}.sync-conflict-card p{margin:0;color:var(--text-2);line-height:1.55}.dialog-actions{display:flex;gap:var(--space-2);margin:var(--space-5) 0 var(--space-3)}.dialog-actions>*{flex:1}.sync-conflict-card .surface-note{font-size:var(--font-size-label)}

@media(max-width:980px){.health-layout{grid-template-columns:1fr}.inline-entry-form{grid-template-columns:1fr 1fr}.inline-entry-form>div{grid-column:1/-1}.inline-entry-form button{width:100%}}
@media(max-width:750px){.product-form{grid-template-columns:1fr}.product-form .form-wide{grid-column:auto}.product-form button{width:100%}.record-row{grid-template-columns:1fr auto var(--pill-height);gap:var(--space-2)}.record-row p{grid-column:1/-1;grid-row:2}.record-value{grid-column:2}.record-row .icon-button{grid-column:3}.inline-entry-form{grid-template-columns:1fr}.inline-entry-form>div{grid-column:auto}.dialog-actions{display:grid}.nutrition-summary{grid-template-columns:1fr 1fr}}
@media(max-width:410px){.surface-head h2{font-size:var(--font-size-value)}.hero-metric{font-size:var(--font-size-hero)}.management-row{align-items:flex-start;flex-direction:column;gap:var(--space-2)}}
