.dashboard-empty { display:flex; min-height:10rem; flex-direction:column; align-items:center; justify-content:center; gap:.65rem; color:color-mix(in srgb,var(--color-base-content) 50%,transparent); }
.dashboard-empty>i { font-size:1.5rem; color:var(--color-primary); }
.dashboard-page-header { align-items:flex-start; flex-direction:column; gap:.25rem; }
.dashboard-analytics { margin-top:1.25rem; }
.dashboard-section-heading { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.dashboard-section-heading span { color:var(--color-primary); font-size:.68rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.dashboard-section-heading h2 { margin-top:.2rem; font-size:1.3rem; font-weight:900; }
.dashboard-section-heading p { margin-top:.2rem; color:color-mix(in srgb,var(--color-base-content) 50%,transparent); font-size:.78rem; }
.dashboard-analysis-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:1rem; }
.dashboard-insight { grid-column:span 4; overflow:hidden; border:1px solid var(--color-base-300); border-radius:var(--radius-box); background:var(--color-base-100); box-shadow:0 8px 28px rgba(23,40,64,.05); }
.dashboard-insight header { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; padding:1.15rem 1.2rem; border-bottom:1px solid var(--color-base-300); }
.dashboard-insight header h3 { font-size:1.05rem; font-weight:850; }
.dashboard-insight header p { margin-top:.3rem; color:color-mix(in srgb,var(--color-base-content) 52%,transparent); font-size:.8rem; line-height:1.45; }
.dashboard-insight header>i { color:var(--color-primary); font-size:1.1rem; }
.status-chart { display:flex; align-items:center; justify-content:center; gap:1.75rem; min-height:15rem; padding:1.35rem; }
.status-donut { display:grid; width:9rem; height:9rem; flex:0 0 9rem; place-items:center; border-radius:50%; background:conic-gradient(var(--color-success) calc(var(--progress) * 1%),var(--color-base-300) 0); }
.status-donut::before { grid-area:1/1; width:6.5rem; height:6.5rem; border-radius:50%; background:var(--color-base-100); content:""; }
.status-donut>div { z-index:1; grid-area:1/1; text-align:center; }
.status-donut strong,.status-donut span { display:block; }
.status-donut strong { font-size:1.45rem; font-weight:900; }
.status-donut span { color:color-mix(in srgb,var(--color-base-content) 48%,transparent); font-size:.75rem; }
.status-legend { display:grid; gap:.8rem; }
.status-legend>div { display:flex; align-items:center; gap:.5rem; }
.status-legend p { color:color-mix(in srgb,var(--color-base-content) 62%,transparent); font-size:.85rem; }
.status-legend p strong { color:var(--color-base-content); font-size:.9rem; }
.legend-dot { width:.6rem; height:.6rem; border-radius:50%; }
.legend-dot.complete { background:var(--color-success); }
.legend-dot.draft { background:var(--color-base-300); }
.recipe-bars { display:grid; gap:1rem; min-height:12.5rem; padding:1.2rem 1.2rem .65rem; }
.recipe-bar-title { display:flex; align-items:center; justify-content:space-between; gap:.75rem; margin-bottom:.45rem; }
.recipe-bar-title strong { max-width:52%; overflow:hidden; font-size:.9rem; text-overflow:ellipsis; white-space:nowrap; }
.recipe-bar-title span { color:color-mix(in srgb,var(--color-base-content) 55%,transparent); font-size:.82rem; }
.bar-track { height:.38rem; overflow:hidden; border-radius:999px; background:var(--color-base-200); }
.bar-track.secondary { height:.25rem; margin-top:.25rem; }
.bar-track span { display:block; height:100%; border-radius:inherit; }
.bar-track .cost { background:var(--color-primary); }
.bar-track .yield { background:var(--color-success); }
.chart-caption { display:flex; gap:1.15rem; padding:.8rem 1.2rem 1rem; color:color-mix(in srgb,var(--color-base-content) 58%,transparent); font-size:.84rem; }
.chart-caption span { display:flex; align-items:center; gap:.35rem; }
.chart-caption i { width:.55rem; height:.2rem; border-radius:999px; }
.chart-caption i.cost { background:var(--color-primary); }
.chart-caption i.yield { background:var(--color-success); }
.chart-empty { display:grid; place-items:center; color:color-mix(in srgb,var(--color-base-content) 45%,transparent); font-size:.75rem; text-align:center; }
.summary-metrics { display:grid; gap:.2rem; padding:1rem 1.2rem; }
.summary-metrics>div { display:flex; align-items:center; gap:.75rem; padding:.65rem 0; }
.summary-icon { display:grid; width:2.35rem; height:2.35rem; flex:0 0 2.35rem; place-items:center; border-radius:.7rem; }
.summary-icon.primary { background:color-mix(in srgb,var(--color-primary) 10%,transparent); color:var(--color-primary); }
.summary-icon.warning { background:color-mix(in srgb,var(--color-warning) 13%,transparent); color:var(--color-warning); }
.summary-icon.success { background:color-mix(in srgb,var(--color-success) 10%,transparent); color:var(--color-success); }
.summary-metrics p,.summary-metrics strong { display:block; }
.summary-metrics p { color:color-mix(in srgb,var(--color-base-content) 54%,transparent); font-size:.78rem; }
.summary-metrics strong { margin-top:.15rem; color:var(--color-base-content); font-size:.92rem; }
.dashboard-summary-link { display:flex; align-items:center; justify-content:space-between; margin:0 1.2rem 1.2rem; padding:.8rem .9rem; border-radius:.7rem; background:var(--color-base-200); color:var(--color-primary); font-size:.8rem; font-weight:800; }
.dashboard-recipes { margin-top:1.25rem; }
.dashboard-recipes-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.2rem; }
.dashboard-recipes-heading { display:flex; align-items:center; gap:.85rem; }
.dashboard-recipes-heading h2 { font-size:1.05rem; font-weight:850; }
.dashboard-recipes-heading p { margin-top:.25rem; color:color-mix(in srgb,var(--color-base-content) 55%,transparent); font-size:.82rem; }
.dashboard-recipes-table th { font-size:.75rem; }
.dashboard-recipes-table td { font-size:.85rem; }
@media(max-width:1100px) { .dashboard-insight { grid-column:span 6; } .dashboard-summary-card { grid-column:span 12; } }
@media(max-width:700px) { .dashboard-section-heading,.dashboard-recipes-header { align-items:flex-start; flex-direction:column; } .dashboard-insight { grid-column:span 12; } .status-chart { min-height:auto; } }
