
.sidebar-title { padding: 10px 12px; margin-bottom: 8px; color: var(--text-main); }
.margin-bottom-15 { margin-bottom: 15px; }
.margin-top-20 { margin-top: 20px; }
.gap-20 { gap: 20px; }
.gap-15 { gap: 15px; }


.text-muted { color: var(--text-muted); }
.text-center { text-align: center; }
.text-main { color: var(--text-main); }
.section-header { color: var(--text-main); margin-bottom: 15px; text-align: center; }
.section-header-left { color: var(--text-main); margin-bottom: 15px; }
.section-sub { color: var(--text-muted); margin-bottom: 5px; }


.result-box-container { display: none; opacity: 0; transition: opacity 0.3s; }
.result-card-standard { background: var(--background-secondary); padding: 20px; border-radius: 12px; text-align: center; border: 1px solid var(--border); }
.result-value-hero { font-size: 3em; font-weight: 800; color: var(--primary); }
.result-value-large { font-size: 2em; font-weight: 800; }
.result-value-accent { color: var(--accent); }
.result-value-primary { color: var(--primary); }
.result-value-text { color: var(--text-main); }
.result-value-secondary { color: var(--secondary); }


.macro-card { padding: 15px; border-radius: 8px; text-align: center; border: 1px solid; }
.macro-card-fat { background: #eefdf5; border-color: #a7f3d0; }
.macro-title-fat { color: #059669; font-weight: bold; margin-bottom: 5px; }
.macro-val-fat { font-size: 1.5em; font-weight: 800; color: #047857; }
.macro-sub-fat { color: #059669; }

.macro-card-pro { background: #eff6ff; border-color: #bfdbfe; }
.macro-title-pro { color: #2563eb; font-weight: bold; margin-bottom: 5px; }
.macro-val-pro { font-size: 1.5em; font-weight: 800; color: #1d4ed8; }
.macro-sub-pro { color: #2563eb; }

.macro-card-carb { background: #fef2f2; border-color: #fecaca; }
.macro-title-carb { color: #dc2626; font-weight: bold; margin-bottom: 5px; }
.macro-val-carb { font-size: 1.5em; font-weight: 800; color: #b91c1c; }
.macro-sub-carb { color: #dc2626; }


.verdict-box-primary { margin-top: 20px; padding: 15px; background: #1b8553; border-left: 4px solid var(--primary); border-radius: 4px; }
.verdict-box-success { margin-top: 20px; padding: 15px; background: #1b8553; border-left: 4px solid #10b981; border-radius: 4px; font-size: 0.95em; line-height: 1.5; }


.gki-list { list-style: none; padding: 0; line-height: 2; color: var(--text-muted); }


.prose-container { margin-top: 40px; max-width: 800px; }
.instructions-text { margin-top: 20px; font-size: 0.9em; line-height: 1.6; color: var(--text-muted); }


.icon-avocado { background: #e0f2fe; color: #0369a1; }
.icon-thread { background: #f0fdf4; color: #166534; }
.icon-timer { background: #fff7ed; color: #9a3412; }
.icon-blood { background: #faf5ff; color: #6b21a8; }
.icon-wine { background: #eff6ff; color: #1e40af; }
.icon-chart { background: #ecfdf5; color: #047857; }
