/* Nutrition Intelligence uses the shared Patient 360 Opal palette. Opal blue,
   sage, violet and restrained gold communicate the two evidence streams. */
body[data-p360-view="nutrition"]{
  --page-accent:var(--teal);
  --page-soft:var(--teal-soft);
  --nutrition-opal-blue:var(--teal);
  --nutrition-opal-blue-soft:var(--teal-soft);
  --nutrition-opal-sage:var(--green);
  --nutrition-opal-sage-soft:var(--green-soft);
  --nutrition-opal-violet:var(--purple);
  --nutrition-opal-violet-soft:var(--purple-soft);
  --nutrition-ironstone:var(--nutrition-opal-blue);
  --nutrition-kintsugi:var(--gold);
  --nutrition-patient:color-mix(in srgb,var(--card) 58%,var(--teal-soft));
  --nutrition-chart:color-mix(in srgb,var(--card) 60%,var(--green-soft));
  --nutrition-on-accent:#fff;
  background:
    radial-gradient(900px 440px at 86% -8%,color-mix(in srgb,var(--purple-soft) 52%,transparent),transparent 66%),
    radial-gradient(760px 420px at 14% 102%,color-mix(in srgb,var(--green-soft) 58%,transparent),transparent 68%),
    var(--paper);
}

:root[data-theme="dark"] body[data-p360-view="nutrition"]{
  --nutrition-on-accent:#071019;
}

.nutrition-content{display:grid;gap:20px;min-width:0;max-width:1500px;padding-top:32px;padding-bottom:40px}
.nutrition-content>*{min-width:0}
body[data-p360-view="nutrition"] .sidebar{background:var(--nutrition-opal-blue);color:var(--nutrition-on-accent)}
body[data-p360-view="nutrition"] .sidebar .brand{border-bottom-color:color-mix(in srgb,var(--nutrition-on-accent) 16%,transparent)}
body[data-p360-view="nutrition"] .sidebar .brand h1{color:var(--nutrition-on-accent)}
body[data-p360-view="nutrition"] .sidebar .nav:hover,body[data-p360-view="nutrition"] .sidebar .nav.active{background:color-mix(in srgb,var(--nutrition-on-accent) 15%,transparent);color:var(--nutrition-on-accent)}
body[data-p360-view="nutrition"] .sidebar .nav.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--nutrition-on-accent) 20%,transparent)}
body[data-p360-view="nutrition"] .tools{justify-content:flex-end}
body[data-p360-view="nutrition"] .bhw-system-navigation{display:flex;gap:8px;align-items:center}

.nutrition-hero{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,1fr) 230px;
  gap:24px;
  align-items:center;
  overflow:hidden;
  padding:28px;
  margin:0;
  border:1px solid color-mix(in srgb,var(--nutrition-kintsugi) 38%,var(--line));
  border-radius:14px;
  background:var(--opal-stone);
  box-shadow:0 16px 38px -28px color-mix(in srgb,var(--nutrition-ironstone) 55%,transparent),var(--edge-gold);
}
.nutrition-hero::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-35% -12% auto 36%;
  height:170%;
  transform:rotate(-7deg);
  background:linear-gradient(104deg,transparent 47%,color-mix(in srgb,var(--nutrition-kintsugi) 34%,transparent) 49.3%,color-mix(in srgb,var(--nutrition-kintsugi) 62%,transparent) 50%,transparent 51.2%);
  pointer-events:none;
}
.nutrition-hero h1{margin:4px 0 8px;font-size:clamp(30px,3.2vw,44px);font-weight:650;line-height:1.08;letter-spacing:-.035em}
.nutrition-hero p{max-width:880px;margin:0;color:color-mix(in srgb,var(--ink) 82%,var(--muted));font-size:var(--text-base);line-height:1.62}
.nutrition-hero .eyebrow{color:var(--nutrition-opal-blue)}

.nutrition-identity{
  display:grid;
  gap:4px;
  padding:17px;
  border:1px solid color-mix(in srgb,var(--nutrition-kintsugi) 55%,transparent);
  border-radius:11px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--nutrition-ironstone) 88%,var(--teal)),var(--nutrition-ironstone));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10),0 14px 30px -24px rgba(7,16,25,.9);
}
.nutrition-identity span,.nutrition-identity small{color:color-mix(in srgb,var(--nutrition-on-accent) 84%,transparent);font-size:var(--text-xs)}
.nutrition-identity b{font-size:22px;color:var(--nutrition-on-accent)}
.nutrition-identity strong{color:var(--nutrition-on-accent);font-size:var(--text-sm);letter-spacing:.04em}
.nutrition-identity small{opacity:.78}
.nutrition-identity .btn{justify-self:start;margin-top:5px;border-color:color-mix(in srgb,var(--nutrition-on-accent) 30%,transparent);background:color-mix(in srgb,var(--nutrition-on-accent) 9%,transparent);color:var(--nutrition-on-accent)}
.nutrition-identity[data-state="verified"]{border-color:color-mix(in srgb,var(--nutrition-opal-sage) 74%,white)}
.nutrition-identity[data-state="blocked"]{border-color:color-mix(in srgb,var(--gold) 78%,white)}

.evidence-model{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0}
.evidence-model article{
  display:flex;
  gap:12px;
  padding:15px;
  border:1px solid var(--line);
  border-top:3px solid var(--nutrition-opal-blue);
  border-radius:10px;
  background:linear-gradient(145deg,var(--card) 52%,color-mix(in srgb,var(--card) 58%,var(--nutrition-opal-blue-soft)));
}
.evidence-model article:nth-child(2){border-top-color:var(--nutrition-opal-sage);background:linear-gradient(145deg,var(--card) 52%,color-mix(in srgb,var(--card) 58%,var(--nutrition-opal-sage-soft)))}
.evidence-model article:nth-child(3){border-top-color:var(--nutrition-opal-violet);background:linear-gradient(145deg,var(--card) 52%,color-mix(in srgb,var(--card) 58%,var(--nutrition-opal-violet-soft)))}
.model-number{display:grid;place-items:center;flex:0 0 auto;width:29px;height:29px;border-radius:50%;background:var(--nutrition-opal-blue);color:var(--nutrition-on-accent);font-size:var(--text-xs);font-weight:800}
.evidence-model article:nth-child(2) .model-number{background:var(--nutrition-opal-sage)}
.evidence-model article:nth-child(3) .model-number{background:var(--nutrition-opal-violet)}
.evidence-model b{font-size:var(--text-sm)}
.evidence-model p{margin:5px 0 0;color:var(--muted);font-size:var(--text-xs);line-height:1.5}

.digestion-map{margin:16px 0;padding:20px;border:1px solid color-mix(in srgb,var(--nutrition-opal-blue) 34%,var(--line));border-top:3px solid var(--nutrition-opal-blue);border-radius:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 82%,var(--nutrition-opal-blue-soft)),var(--card) 48%,color-mix(in srgb,var(--card) 84%,var(--nutrition-opal-sage-soft)));box-shadow:0 14px 34px -30px color-mix(in srgb,var(--nutrition-ironstone) 70%,transparent)}
.questionnaire-section-support{margin-top:8px}
.questionnaire-section-support .digestion-map{margin-bottom:0}
.digestion-map-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}
.digestion-map-heading h3{margin:4px 0 0;font-size:clamp(20px,2vw,28px)}
.digestion-map-heading p{margin:0;color:var(--muted);font-size:var(--text-sm);line-height:1.5}
.digestion-map-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:18px;align-items:start}
.digestion-map-figure{padding:12px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--card) 88%,var(--nutrition-opal-violet-soft))}
.digestion-map-figure svg{display:block;width:100%;height:auto;min-height:380px}
.digestive-path,.digestive-small{fill:none;stroke:color-mix(in srgb,var(--nutrition-ironstone) 70%,var(--nutrition-opal-blue));stroke-width:7;stroke-linecap:round;stroke-linejoin:round}
.digestive-stomach{fill:color-mix(in srgb,var(--nutrition-opal-violet) 34%,var(--card));stroke:var(--nutrition-opal-violet);stroke-width:3}
.digestive-small{stroke:var(--nutrition-opal-blue);stroke-width:5}
.digestive-colon{fill:none;stroke:var(--nutrition-opal-sage);stroke-width:11;stroke-linecap:round;stroke-linejoin:round}
.digestion-map-marker circle{fill:var(--nutrition-ironstone);stroke:color-mix(in srgb,var(--nutrition-kintsugi) 70%,white);stroke-width:2}
.digestion-map-marker text:not(.digestion-map-label){fill:var(--nutrition-on-accent);font-size:12px;font-weight:800}
.digestion-map-marker line{stroke:color-mix(in srgb,var(--nutrition-ironstone) 54%,var(--line));stroke-width:1.5}
.digestion-map-label{fill:var(--ink);font-size:15px;font-weight:800}
.digestion-map-boundary{margin:8px 0 0;padding:10px;border-left:3px solid var(--nutrition-kintsugi);background:color-mix(in srgb,var(--card) 80%,var(--gold-soft));color:var(--muted);font-size:var(--text-xs);line-height:1.5}
.digestion-region-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.digestion-region-card{display:grid;grid-template-columns:auto 1fr;gap:10px;padding:12px;border:1px solid var(--line);border-left:3px solid var(--nutrition-opal-blue);border-radius:9px;background:var(--card)}
.digestion-region-card:nth-child(2n){border-left-color:var(--nutrition-opal-violet)}
.digestion-region-card:nth-child(3n){border-left-color:var(--nutrition-opal-sage)}
.digestion-region-number{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--nutrition-ironstone);color:var(--nutrition-on-accent);font-size:var(--text-xs);font-weight:800}
.digestion-region-card h4{margin:2px 0 6px;font-size:var(--text-sm)}
.digestion-region-card ul{margin:0;padding-left:17px;color:var(--muted)}
.digestion-region-card li,.digestion-region-card p{font-size:var(--text-xs);line-height:1.45}
.digestion-region-card p{margin:7px 0 0;color:var(--muted)}

.nutrition-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.evidence-column{position:relative;overflow:hidden;border-top:0!important}
.evidence-column::before{content:"";position:absolute;z-index:2;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--nutrition-opal-blue),var(--nutrition-opal-sage))}
.evidence-column.chart-evidence::before{background:linear-gradient(90deg,var(--nutrition-ironstone),var(--nutrition-opal-violet),var(--nutrition-kintsugi))}
.evidence-column .panel-head{align-items:flex-start;padding:20px 20px 17px}
.evidence-column .panel-body{padding:20px}
.patient-evidence .eyebrow{color:var(--nutrition-opal-blue)}
.chart-evidence .eyebrow{color:var(--nutrition-opal-violet)}

.chart-prefill{display:grid;gap:10px;padding:13px;border:1px solid color-mix(in srgb,var(--nutrition-opal-violet) 36%,var(--line));border-left:4px solid var(--nutrition-opal-violet);border-radius:10px;background:linear-gradient(145deg,var(--card),color-mix(in srgb,var(--card) 70%,var(--nutrition-opal-violet-soft)))}
.chart-prefill-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.chart-prefill-head>div{display:grid;gap:3px}
.chart-prefill-head b{font-size:var(--text-sm)}
.chart-prefill-head span,.chart-prefill-feedback,.chart-prefill-warning{margin:0;color:var(--muted);font-size:var(--text-xs);line-height:1.45}
.chart-prefill-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:0;list-style:none}
.chart-prefill-list li{display:grid;grid-template-columns:1fr auto;gap:3px 9px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--card)}
.chart-prefill-list li b,.chart-prefill-list li span{font-size:var(--text-xs)}
.chart-prefill-list li span{font-weight:800;color:var(--nutrition-ironstone)}
.chart-prefill-list li small{grid-column:1/-1;color:var(--muted);font-size:10px;line-height:1.4}
.chart-prefill-warning{padding:8px 9px;border-radius:7px;background:var(--gold-soft);color:var(--nutrition-ironstone)}

#nutrition-form{display:grid;gap:20px;min-width:0}
.nutrition-fields{display:grid;gap:18px}
.questionnaire-loading{padding:18px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);background:var(--card-soft)}
.questionnaire-unavailable{padding:0}
.questionnaire-unavailable>div{display:grid;gap:8px;padding:14px;border:1px solid color-mix(in srgb,var(--gold) 42%,var(--line));border-left:4px solid var(--gold);border-radius:10px;background:color-mix(in srgb,var(--card) 78%,var(--gold-soft))}
.questionnaire-unavailable b{color:var(--ink);font-size:var(--text-sm)}
.questionnaire-unavailable p,.questionnaire-unavailable small{margin:0;color:var(--muted);font-size:var(--text-xs);line-height:1.5}
.questionnaire-unavailable .btn{justify-self:start}
.questionnaire-runtime-note{display:grid;gap:3px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--nutrition-opal-blue) 34%,var(--line));border-left:4px solid var(--nutrition-opal-blue);border-radius:9px;background:color-mix(in srgb,var(--card) 75%,var(--nutrition-opal-blue-soft));font-size:var(--text-xs)}
.questionnaire-runtime-note span{color:var(--muted);font-weight:500}
.questionnaire-section{border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--card) 88%,var(--nutrition-opal-sage-soft));overflow:hidden}
.questionnaire-section>summary{display:grid;grid-template-columns:auto 1fr auto auto;gap:12px;align-items:center;padding:15px 16px;cursor:pointer;list-style:none}
.questionnaire-section>summary::-webkit-details-marker{display:none}
.questionnaire-section>summary small{display:block;margin-top:3px;color:var(--muted);font-weight:500;line-height:1.4}
.questionnaire-section>summary::after{content:"+";display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line);border-radius:50%;background:var(--card);color:var(--nutrition-ironstone);font-size:17px;font-weight:800;line-height:1}
.questionnaire-section[open]>summary::after{content:"−"}
.section-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--nutrition-opal-blue);color:var(--nutrition-on-accent);font-weight:800}
.section-count{display:grid;place-items:center;min-width:28px;height:24px;padding:0 7px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--muted);font-size:var(--text-xs);font-weight:800}
.questionnaire-question-list{display:grid;gap:12px;padding:0 14px 14px}
.questionnaire-branch-note{display:grid;gap:6px;padding:14px;border:1px solid color-mix(in srgb,var(--nutrition-opal-blue) 38%,var(--line));border-left:4px solid var(--nutrition-opal-blue);border-radius:9px;background:color-mix(in srgb,var(--card) 78%,var(--nutrition-opal-blue-soft));color:var(--muted);font-size:var(--text-xs);line-height:1.5}
.questionnaire-branch-note[hidden]{display:none}
.questionnaire-branch-note b{color:var(--ink);font-size:var(--text-sm)}
.nutrition-fields fieldset.question-card{grid-template-columns:1fr;margin:0;padding:14px;background:var(--card)}
.question-card[hidden]{display:none}
.question-card legend{display:flex;align-items:center;gap:8px;max-width:100%;padding:0 5px;color:var(--ink);font-size:var(--text-xs);font-weight:800;line-height:1.45}
.required-marker{display:inline-flex;padding:2px 7px;border-radius:999px;background:var(--nutrition-opal-violet-soft);color:var(--purple);font-size:10px;white-space:nowrap}
.question-help{margin:-2px 0 4px;color:var(--muted);font-size:var(--text-xs);line-height:1.45}
.question-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.question-choice-grid label{display:flex;align-items:flex-start;gap:7px;padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:var(--card-soft);font-weight:500;line-height:1.35}
.question-choice-grid input{margin-top:2px}
.paired-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.question-detail{margin-top:4px}
.question-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:8px}
.question-grid-table{width:100%;border-collapse:collapse;background:var(--card);font-size:var(--text-xs)}
.question-grid-table th,.question-grid-table td{padding:8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.question-grid-table th{font-weight:700}
.question-grid-table input,.question-grid-table select{min-width:100px}
.gi-pattern-matrix{display:grid;gap:12px}
.gi-pattern-group{padding:11px;border:1px solid var(--line);border-left:3px solid var(--nutrition-opal-blue);border-radius:9px;background:color-mix(in srgb,var(--card) 88%,var(--nutrition-opal-blue-soft))}
.gi-pattern-group:nth-child(2n){border-left-color:var(--nutrition-opal-sage);background:color-mix(in srgb,var(--card) 90%,var(--nutrition-opal-sage-soft))}
.gi-pattern-group:nth-child(3n){border-left-color:var(--nutrition-opal-violet)}
.gi-pattern-group h4{margin:0 0 9px;font-size:var(--text-sm)}
.gi-pattern-scale{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0 0 7px 44%;color:var(--muted);font-size:10px;font-weight:700;text-align:center}
.nutrition-fields fieldset.gi-pattern-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(280px,1.25fr);align-items:center;gap:10px;margin:0;padding:8px 0;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}
.gi-pattern-row legend{display:block;padding:0;color:var(--ink);font-weight:600}
.gi-pattern-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.gi-pattern-options label{display:block;cursor:pointer}
.gi-pattern-options input{position:absolute;opacity:0;pointer-events:none}
.gi-pattern-options span{display:grid;place-items:center;min-height:43px;padding:5px;border:1px solid var(--line);border-radius:7px;background:var(--card);text-align:center;transition:border-color .15s,background .15s}
.gi-pattern-options b{font-size:var(--text-sm)}
.gi-pattern-options small{display:none}
.gi-pattern-options input:checked+span{border-color:var(--nutrition-opal-blue);background:var(--nutrition-opal-blue-soft);box-shadow:inset 0 0 0 1px var(--nutrition-opal-blue)}
.gi-pattern-options input:focus-visible+span{outline:2px solid var(--nutrition-opal-violet);outline-offset:2px}
.repeatable-list{display:grid;gap:9px}
.repeatable-item{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--card-soft)}
.button.compact{width:max-content;padding:7px 10px;font-size:var(--text-xs)}
.nutrition-fields fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--card) 82%,var(--page-soft))}
.patient-evidence .nutrition-fields fieldset{background:var(--nutrition-patient)}
.patient-evidence .nutrition-fields fieldset:nth-of-type(even){background:color-mix(in srgb,var(--card) 62%,var(--nutrition-opal-sage-soft))}
.chart-evidence .nutrition-fields fieldset{background:var(--nutrition-chart)}
.chart-evidence .nutrition-fields fieldset:nth-of-type(even){background:color-mix(in srgb,var(--card) 64%,var(--nutrition-opal-violet-soft))}
.nutrition-fields fieldset.kidney-fieldset{border-top:3px solid var(--nutrition-opal-blue);background:linear-gradient(145deg,color-mix(in srgb,var(--card) 68%,var(--nutrition-opal-blue-soft)),color-mix(in srgb,var(--card) 74%,var(--nutrition-opal-sage-soft)))}
.chart-evidence .nutrition-fields fieldset.kidney-fieldset{border-top-color:var(--nutrition-kintsugi);background:linear-gradient(145deg,color-mix(in srgb,var(--card) 68%,var(--nutrition-ironstone)),color-mix(in srgb,var(--card) 74%,var(--nutrition-opal-violet-soft)))}
.nutrition-fields legend{padding:0 8px;color:var(--ink);font-size:var(--text-sm);font-weight:700}
.nutrition-fields label{display:grid;gap:6px;min-width:0;color:var(--ink);font-size:var(--text-xs);font-weight:700}
.nutrition-fields label.wide,.nutrition-fields .wide{grid-column:1/-1}
.nutrition-fields label.check{display:flex;align-items:flex-start;gap:8px;padding:9px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--card) 92%,transparent);font-weight:600}
.nutrition-fields label.check input{margin-top:2px}
.nutrition-fields label small{color:var(--muted);font-weight:500;line-height:1.4}
.nutrition-fields input[type="checkbox"]{accent-color:var(--nutrition-opal-blue)}
.chart-evidence .nutrition-fields input[type="checkbox"]{accent-color:var(--nutrition-opal-violet)}
.nutrition-fields input:not([type="checkbox"]),.nutrition-fields select,.nutrition-fields textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:500 var(--text-sm)/1.45 var(--sans);padding:9px 10px}
.nutrition-fields .derived-measurement{padding:9px;border:1px solid var(--line);border-left:3px solid var(--nutrition-kintsugi);border-radius:9px;background:linear-gradient(145deg,var(--card),color-mix(in srgb,var(--card) 80%,var(--gold-soft)))}
.nutrition-fields input[readonly]{background:color-mix(in srgb,var(--paper) 78%,var(--nutrition-opal-blue-soft));color:var(--ink);font-weight:800}
.nutrition-fields select[multiple]{min-height:126px}
.nutrition-fields input:focus,.nutrition-fields select:focus{border-color:var(--page-accent);outline:2px solid color-mix(in srgb,var(--page-accent) 20%,transparent);outline-offset:0}

.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:11px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--card) 92%,transparent)}
.checkbox-grid .field-label{grid-column:1/-1;font-size:var(--text-xs);font-weight:700}
.checkbox-grid label{display:flex;align-items:flex-start;gap:6px;font-weight:500}
.checkbox-grid input{margin-top:2px}
.alarm-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:12px;border:1px solid color-mix(in srgb,var(--coral) 45%,var(--line));border-left:3px solid var(--coral);border-radius:8px;background:color-mix(in srgb,var(--card) 86%,var(--coral-soft))}
.alarm-box>b{grid-column:1/-1;font-size:var(--text-xs)}
.alarm-box label{display:flex;align-items:flex-start;gap:6px;font-weight:600}

.review-panel{margin-top:0;border-left:3px solid var(--nutrition-kintsugi);background-image:linear-gradient(118deg,color-mix(in srgb,var(--card) 86%,var(--nutrition-opal-sage-soft)),var(--card) 48%,color-mix(in srgb,var(--card) 88%,var(--nutrition-opal-violet-soft)))}
.review-workflow{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;align-items:center}
.review-workflow>*{min-width:0}
.review-workflow .btn{white-space:normal;overflow-wrap:anywhere}
.save-state{display:grid;gap:4px}
.save-state b{font-size:var(--text-sm)}
.save-state b[data-state="not-saved"],.save-state b[data-state="error"]{color:var(--coral)}
.save-state b[data-state="saving"]{color:var(--nutrition-opal-blue)}
.save-state b[data-state="saved"]{color:var(--nutrition-opal-sage)}
.save-state span{color:var(--muted);font-size:var(--text-xs);line-height:1.45}
.review-readiness{display:grid;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--card-soft)}
.review-readiness b{font-size:var(--text-sm)}
.review-readiness span{color:var(--muted);font-size:var(--text-xs);line-height:1.45;overflow-wrap:anywhere}
.review-readiness[data-state="ready"]{border-color:color-mix(in srgb,var(--nutrition-opal-sage) 45%,var(--line));background:var(--nutrition-opal-sage-soft)}
.review-readiness[data-state="ready"] b{color:var(--nutrition-opal-sage)}
.review-readiness[data-state="incomplete"]{border-color:color-mix(in srgb,var(--gold) 55%,var(--line));background:var(--nutrition-opal-gold-soft)}
.review-readiness[data-state="incomplete"] b{color:var(--nutrition-ironstone)}
.workflow-actions{display:flex;gap:8px;flex-wrap:wrap}
.workflow-actions .btn.primary{background:var(--nutrition-opal-sage);border-color:var(--nutrition-opal-sage);color:var(--nutrition-on-accent)}
.approval-controls,.publication-controls{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:9px;background:color-mix(in srgb,var(--card) 76%,var(--nutrition-opal-blue-soft))}
.publication-controls{background:color-mix(in srgb,var(--card) 76%,var(--nutrition-opal-violet-soft))}
.approval-controls label,.publication-controls label{display:flex;align-items:flex-start;gap:7px;color:var(--muted);font-size:var(--text-xs);line-height:1.45}
.approval-controls input,.publication-controls input{margin-top:2px;accent-color:var(--nutrition-opal-sage)}
.publication-controls input{accent-color:var(--nutrition-opal-violet)}
.btn:disabled{opacity:.45;cursor:not-allowed}

.nutrition-results{display:grid;gap:20px;margin-top:0}
.result-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.result-summary>div{display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-top:3px solid var(--nutrition-opal-blue);border-radius:9px;background:color-mix(in srgb,var(--card) 78%,var(--nutrition-opal-blue-soft))}
.result-summary>div:nth-child(2){border-top-color:var(--nutrition-opal-sage);background:color-mix(in srgb,var(--card) 78%,var(--nutrition-opal-sage-soft))}
.result-summary>div:nth-child(3){border-top-color:var(--nutrition-opal-violet);background:color-mix(in srgb,var(--card) 78%,var(--nutrition-opal-violet-soft))}
.result-summary>div:nth-child(4){border-top-color:var(--nutrition-kintsugi);background:color-mix(in srgb,var(--card) 82%,var(--gold-soft))}
.result-summary span{color:var(--muted);font-size:var(--text-xs);font-weight:700}
.result-summary b{font-size:var(--text-sm);overflow-wrap:anywhere}
.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.kidney-result{grid-column:1/-1;border-top:3px solid var(--nutrition-kintsugi);background:linear-gradient(145deg,color-mix(in srgb,var(--card) 76%,var(--nutrition-opal-blue-soft)),var(--card) 48%,color-mix(in srgb,var(--card) 78%,var(--nutrition-opal-violet-soft)))}
.kidney-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.kidney-summary>div{display:grid;gap:4px;padding:11px;border:1px solid var(--line);border-left:3px solid var(--nutrition-opal-blue);border-radius:8px;background:var(--card)}
.kidney-summary>div:nth-child(2){border-left-color:var(--nutrition-opal-sage)}
.kidney-summary>div:nth-child(3){border-left-color:var(--nutrition-opal-violet)}
.kidney-summary>div:nth-child(4){border-left-color:var(--nutrition-kintsugi)}
.kidney-summary span{color:var(--muted);font-size:var(--text-xs);font-weight:700}
.kidney-summary b{font-size:var(--text-sm);overflow-wrap:anywhere}
.kidney-decisions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.kidney-decisions .result-item:nth-child(2n){border-left-color:var(--nutrition-opal-sage)}
.kidney-decisions .result-item:nth-child(3n){border-left-color:var(--nutrition-opal-violet)}
.result-list{display:grid;gap:8px}
.result-item{padding:11px;border:1px solid var(--line);border-left:3px solid var(--nutrition-opal-blue);border-radius:8px;background:var(--card)}
.result-item b{display:block;font-size:var(--text-sm)}
.result-item p,.result-item small{display:block;margin:4px 0 0;color:var(--muted);font-size:var(--text-xs);line-height:1.5}
.result-item.danger{border-left-color:var(--coral)}
.result-item.warning{border-left-color:var(--nutrition-kintsugi)}
.result-item.good{border-left-color:var(--nutrition-opal-sage)}
.food-source{padding:13px;border:1px solid var(--line);border-left:3px solid var(--nutrition-opal-sage);border-radius:9px;background:linear-gradient(145deg,var(--card),color-mix(in srgb,var(--card) 76%,var(--nutrition-opal-sage-soft)))}
.food-source h4{margin:0 0 6px;font-size:var(--text-sm)}
.food-source p{margin:5px 0;color:var(--muted);font-size:var(--text-xs);line-height:1.5}
.food-source ul{margin:7px 0 0;padding-left:18px;color:var(--muted)}
.food-source li{margin:3px 0;font-size:var(--text-xs)}
.food-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.kidney-education-card:nth-child(2n){border-left-color:var(--nutrition-opal-violet);background:linear-gradient(145deg,var(--card),color-mix(in srgb,var(--card) 76%,var(--nutrition-opal-violet-soft)))}
.kidney-education-card:nth-child(3n){border-left-color:var(--nutrition-opal-blue);background:linear-gradient(145deg,var(--card),color-mix(in srgb,var(--card) 76%,var(--nutrition-opal-blue-soft)))}
.kidney-education-card .panel-head{align-items:flex-start;margin-bottom:4px}
.kidney-education-card .field-label{display:block;margin-top:9px}
.natural-disclosure{padding:12px;border:1px solid var(--line);border-left:3px solid var(--nutrition-kintsugi);border-radius:8px;background:color-mix(in srgb,var(--card) 82%,var(--gold-soft));font-size:var(--text-xs);line-height:1.55}
.gate-block{padding:12px;border:1px solid color-mix(in srgb,var(--coral) 45%,var(--line));border-left:4px solid var(--coral);border-radius:9px;background:color-mix(in srgb,var(--card) 86%,var(--coral-soft))}
.gate-block b{font-size:var(--text-sm)}
.gate-block p{margin:5px 0 0;color:var(--muted);font-size:var(--text-xs);line-height:1.5}
.code-list{display:flex;flex-wrap:wrap;gap:6px}
.code-chip{padding:5px 8px;border:1px solid color-mix(in srgb,var(--nutrition-opal-violet) 26%,var(--line));border-radius:999px;background:color-mix(in srgb,var(--paper-2) 76%,var(--nutrition-opal-violet-soft));font-size:var(--text-xs);font-weight:700;color:var(--ink)}

@media(max-width:1260px){
  .nutrition-columns{grid-template-columns:1fr}
  .digestion-map-layout{grid-template-columns:1fr 1.4fr}
  .review-workflow{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
  .result-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
  body[data-p360-view="nutrition"] .top{position:static;display:grid;gap:10px;align-items:stretch;padding:12px 14px}
  body[data-p360-view="nutrition"] .crumb{width:100%;line-height:1.4}
  body[data-p360-view="nutrition"] .tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;align-items:stretch}
  body[data-p360-view="nutrition"] .bhw-system-navigation{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  body[data-p360-view="nutrition"] .tools>.badge{grid-column:1/-1;justify-content:center;padding:8px 10px}
  body[data-p360-view="nutrition"] .tools>.btn,body[data-p360-view="nutrition"] .bhw-system-navigation .btn{display:flex;justify-content:center;min-width:0;white-space:normal;text-align:center}
  body[data-p360-view="nutrition"] #theme{grid-column:1/-1}
  .nutrition-content{gap:16px;padding:16px 14px 30px}
  .nutrition-hero{grid-template-columns:1fr;gap:18px;padding:20px}
  .nutrition-identity{padding:15px}
  .nutrition-columns{gap:16px}
  .evidence-column .panel-head{padding:17px 15px 14px}
  .evidence-column .panel-body{padding:14px}
  #nutrition-form{gap:16px}
  .nutrition-fields{gap:14px}
  .chart-prefill-head{align-items:stretch;flex-direction:column}.chart-prefill-head .btn{width:100%}.chart-prefill-list{grid-template-columns:1fr}
  .evidence-model,.result-grid{grid-template-columns:1fr}
  .digestion-map-layout,.digestion-region-list{grid-template-columns:1fr}
  .digestion-map-figure svg{min-height:0}
  .nutrition-fields fieldset{grid-template-columns:1fr}
  .question-choice-grid,.paired-control,.repeatable-item{grid-template-columns:1fr}
  .gi-pattern-scale{display:none}
  .nutrition-fields fieldset.gi-pattern-row{grid-template-columns:1fr;align-items:start}
  .gi-pattern-options small{display:block;font-size:9px;font-weight:500;line-height:1.15}
  .questionnaire-section>summary{grid-template-columns:auto 1fr auto;gap:9px;padding:13px 12px}.section-count{display:none}
  .questionnaire-question-list{padding:0 11px 11px}
  .nutrition-fields label.wide,.nutrition-fields .wide{grid-column:auto}
  .food-source-grid{grid-template-columns:1fr}
  .checkbox-grid,.alarm-box{grid-template-columns:1fr}
  .checkbox-grid .field-label,.alarm-box>b{grid-column:auto}
  .review-workflow,.result-summary{grid-template-columns:1fr}
  .kidney-summary,.kidney-decisions{grid-template-columns:1fr}
  .workflow-actions{display:grid}
  .workflow-actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .nutrition-hero::before{display:none}
}
@media print{
  .sidebar,.top,.evidence-model,#nutrition-digestion-map,#nutrition-form{display:none!important}
  .main,.content{display:block!important;padding:0!important}
  .nutrition-hero{grid-template-columns:1fr;padding:0;border:0;box-shadow:none;background:#fff}
  .nutrition-hero::before,.nutrition-identity{display:none}
  .nutrition-results{margin:16px 0}
  .result-grid{grid-template-columns:1fr 1fr}
  .panel{break-inside:avoid}
  .nutrition-results:before{content:"Clinician-reviewed Nutrition Intelligence output";display:block;margin-bottom:12px;font-size:12px;font-weight:700}
}
