:root{--accent:var(--calc-color-health)}.main-container{max-width:1200px;margin:0 auto;padding:1.5rem 1.5rem 3rem}.page-title{font-family:var(--calc-font-headline);color:var(--calc-text-primary);margin:0 0 .5rem;font-size:clamp(1.6rem,4vw,2.4rem)}.page-subtitle{color:var(--calc-text-faded);max-width:74ch;margin:0 0 1.25rem;line-height:1.55}.tab-nav{border-bottom:1px solid var(--calc-border-default);flex-wrap:wrap;gap:6px;margin-bottom:1.25rem;padding-bottom:2px;display:flex}.tab-btn{color:var(--calc-text-faded);font-family:var(--calc-font-headline);border-radius:var(--calc-radius-md) var(--calc-radius-md) 0 0;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;padding:.6rem 1rem;font-size:.92rem;font-weight:600;transition:color .15s,background .15s}.tab-btn:hover{color:var(--calc-text-primary)}.tab-btn.active{color:var(--accent);background:var(--calc-bg-card);border-color:var(--calc-border-default);border-bottom:2px solid var(--accent)}.tab-panel{display:none}.tab-panel.active{display:block}.calc-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.25rem;display:grid}@media (width<=1024px){.calc-grid{grid-template-columns:1fr}}.input-card,.result-card{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-lg);margin-bottom:1.25rem;padding:1.25rem 1.5rem}.card-title{font-family:var(--calc-font-headline);text-transform:uppercase;letter-spacing:.05em;color:var(--calc-text-faded);margin:0 0 1rem;font-size:1rem}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1.1rem;display:flex}.form-group>label{color:var(--calc-text-faded);font-size:.9rem;font-weight:500}.input-row{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}@media (width<=520px){.input-row{grid-template-columns:1fr}}.input-row .form-group{margin-bottom:0}.form-group input,input[type=number],input[type=text],select{background:var(--calc-bg-input);border:1px solid var(--calc-border-strong);border-radius:var(--calc-radius-md);color:var(--calc-text-primary);font-family:var(--calc-font-mono);width:100%;padding:.6rem .8rem;font-size:1.02rem;transition:border-color .15s}select{font-family:var(--calc-font-headline);cursor:pointer}.form-group input:focus,input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--calc-color-health-rgb,168, 85, 247), .18);outline:none}.input-hint{color:var(--calc-text-dim);margin:.6rem 0 0;font-size:.8rem;line-height:1.45}.input-hint a{color:var(--accent)}.input-with-unit{align-items:center;display:flex;position:relative}.input-with-unit .unit-suffix{color:var(--calc-text-dim);font-family:var(--calc-font-mono);pointer-events:none;font-size:.85rem;position:absolute;right:.7rem}.input-with-unit input{padding-right:3.6rem}.result-value{font-family:var(--calc-font-mono);color:var(--accent);margin-bottom:.4rem;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:700;line-height:1.2}.result-detail{color:var(--calc-text-faded);font-size:.95rem;line-height:1.5}.result-interpretation{background:var(--calc-bg-glass);border-left:3px solid var(--accent);border-radius:var(--calc-radius-md);color:var(--calc-text-primary);margin-top:1rem;padding:.9rem 1rem;font-size:.9rem;line-height:1.6}.result-interpretation:empty{display:none}.med-disclaimer{background:rgba(var(--calc-color-health-rgb,168, 85, 247), .07);border:1px solid rgba(var(--calc-color-health-rgb,168, 85, 247), .25);border-radius:var(--calc-radius-md);align-items:flex-start;gap:10px;margin-top:1.1rem;padding:.8rem 1rem;display:flex}.med-disclaimer--top{margin:0 0 1.25rem}.med-disclaimer__icon{color:var(--accent);flex-shrink:0;font-size:1.1rem;line-height:1.4}.med-disclaimer p{color:var(--calc-text-faded);margin:0;font-size:.82rem;line-height:1.55}.med-disclaimer strong{color:var(--calc-text-primary)}.chart-section{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-lg);margin-top:1.25rem;padding:1.25rem 1.5rem}.mini-title{font-family:var(--calc-font-headline);color:var(--calc-text-primary);margin:0 0 1rem;font-size:1rem}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin:1rem 0;display:grid}.stat-cell{background:var(--calc-bg-input);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);text-align:center;padding:.7rem .9rem}.stat-lbl{text-transform:uppercase;letter-spacing:.04em;color:var(--calc-text-dim);justify-content:center;align-items:center;gap:.35rem;margin-bottom:.3rem;font-size:.74rem;display:flex}.stat-val{font-family:var(--calc-font-mono);color:var(--calc-text-primary);font-size:1.15rem;font-weight:700}.scenario-compare{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-lg);margin-bottom:1.25rem;padding:1.25rem 1.5rem}.scenario-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=640px){.scenario-grid{grid-template-columns:1fr}}.scenario-card{border-radius:var(--calc-radius-md);background:var(--calc-bg-glass);border:1px solid var(--calc-border-default);padding:1rem 1.1rem}.scenario-card.sc-alt{border-color:rgba(var(--calc-color-health-rgb,168, 85, 247), .35);background:rgba(var(--calc-color-health-rgb,168, 85, 247), .08)}.sc-label{text-transform:uppercase;letter-spacing:.04em;color:var(--calc-text-dim);margin-bottom:.5rem;font-size:.78rem;line-height:1.4}.sc-bmi{color:var(--calc-text-primary);margin:.2rem 0;font-size:.92rem}.sc-bmi span{font-family:var(--calc-font-mono);font-weight:700}.sc-delta{background:var(--calc-bg-glass);border-radius:var(--calc-radius-md);color:var(--calc-text-primary);margin:1rem 0 0;padding:.8rem 1rem;font-size:.86rem;line-height:1.55}.callout{background:var(--calc-bg-glass);border:1px solid var(--calc-border-default);border-left:3px solid var(--accent);border-radius:var(--calc-radius-md);color:var(--calc-text-faded);margin-top:1.1rem;padding:.9rem 1.1rem;font-size:.85rem;line-height:1.6}.split-bar{background:var(--calc-bg-input);border-radius:999px;height:28px;margin:1rem 0;display:flex;overflow:hidden}.split-bar__fill{height:100%;transition:width .25s}.split-bar__fill--soluble{background:var(--calc-cyan)}.split-bar__fill--insoluble{background:var(--calc-gold)}.split-swatch{border-radius:50%;width:9px;height:9px;display:inline-block}.split-swatch--soluble{background:var(--calc-cyan)}.split-swatch--insoluble{background:var(--calc-gold)}.food-table-wrap{margin:1rem 0;overflow-x:auto}.food-table{border-collapse:collapse;width:100%;font-size:.9rem}.food-table th,.food-table td{text-align:left;border-bottom:1px solid var(--calc-border-subtle,var(--calc-border-default));padding:.6rem .8rem}.food-table th{font-family:var(--calc-font-headline);text-transform:uppercase;letter-spacing:.04em;color:var(--calc-text-dim);font-size:.78rem}.food-table td{color:var(--calc-text-primary)}.food-table td:last-child{font-family:var(--calc-font-mono)}.food-tag{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:.15rem .55rem;font-size:.72rem;font-weight:700;display:inline-block}.food-tag--soluble{color:var(--calc-cyan);background:#22d3ee29}.food-tag--insoluble{color:var(--calc-gold);background:#fbbf2429}.food-tag--mixed{background:rgba(var(--calc-color-health-rgb,168, 85, 247), .16);color:var(--accent)}.faq-item__question{cursor:pointer;color:var(--calc-text-primary);user-select:none;justify-content:space-between;align-items:center;padding:14px 4px;font-size:.9rem;font-weight:600;list-style:none;transition:color .2s;display:flex}.faq-item__question::-webkit-details-marker{display:none}.faq-item__question:after{content:"+";font-family:var(--calc-font-mono);color:var(--calc-text-dim);flex-shrink:0;margin-left:16px;font-size:1.1rem;transition:color .2s}.faq-item[open] .faq-item__question:after{content:"−";color:var(--accent)}.faq-item__question:hover{color:var(--accent)}.faq-item__answer{color:var(--calc-text-dim);padding:0 4px 14px;font-size:.85rem;line-height:1.75}.page-sections-outer{max-width:1200px;margin:0 auto;padding:0 1.5rem 3rem}[data-theme=light] .input-card,[data-theme=light] .result-card,[data-theme=light] .scenario-compare,[data-theme=light] .chart-section{background:#fff;border-color:#0000001f;box-shadow:0 1px 4px #0000000f}[data-theme=light] .form-group input,[data-theme=light] input[type=number],[data-theme=light] input[type=text],[data-theme=light] select{background:#f0f4f9;border-color:#00000026}[data-theme=light] .tab-btn.active{color:#7c3aed;background:#fff;border-bottom-color:#7c3aed}[data-theme=light] .result-value{color:#7c3aed}[data-theme=light] .result-interpretation,[data-theme=light] .sc-delta,[data-theme=light] .callout{background:#f5f0ff;border-left-color:#7c3aed}[data-theme=light] .stat-cell,[data-theme=light] .split-bar{background:#f0f4f9;border-color:#0000001a}[data-theme=light] .scenario-card{background:#f0f4f9}[data-theme=light] .scenario-card.sc-alt,[data-theme=light] .med-disclaimer{background:#f5f0ff;border-color:#7c3aed4d}[data-theme=light] .med-disclaimer__icon{color:#7c3aed}[data-theme=light] .split-bar__fill--soluble{background:#0891b2}[data-theme=light] .split-bar__fill--insoluble{background:#b45309}[data-theme=light] .split-swatch--soluble{background:#0891b2}[data-theme=light] .split-swatch--insoluble{background:#b45309}[data-theme=light] .food-tag--soluble{color:#0891b2;background:#0891b224}[data-theme=light] .food-tag--insoluble{color:#b45309;background:#b4530924}[data-theme=light] .food-tag--mixed{color:#7c3aed;background:#7c3aed24}[data-theme=light] .food-table th,[data-theme=light] .food-table td{border-bottom-color:#00000014}[data-theme=light] .faq-item{background:#fff;border:1px solid #0000001a;border-radius:10px;margin-bottom:8px;transition:box-shadow .2s,border-color .2s;overflow:hidden;box-shadow:0 1px 4px #0000000f}[data-theme=light] .faq-item:hover{border-color:#7c3aed59;box-shadow:0 2px 10px #7c3aed14}[data-theme=light] .faq-item[open]{border-color:#7c3aed66 #7c3aed66 #7c3aed66 #7c3aed;border-left-style:solid;border-left-width:3px;box-shadow:0 2px 12px #7c3aed1a}[data-theme=light] .faq-item__question{color:#0f172a;padding:14px 16px}[data-theme=light] .faq-item__question:after{color:#64748b}[data-theme=light] .faq-item[open] .faq-item__question:after,[data-theme=light] .faq-item__question:hover{color:#7c3aed}[data-theme=light] .faq-item__answer{color:#475569;border-top:1px solid #0000000f;padding:12px 16px 16px}