/* Production uses the Run Sheet card language without changing forecast units. */
#production-schedule { container: schedule / inline-size; min-width: 0; }
.prod-section-select { display: none; }
.prod-page-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
body.rc-theme .prod-page-heading h1 { margin: 0; }
#prod-schedule-grid { min-width: 0; }
#prod-schedule-status { margin: 10px 0; font-size: 13px; min-height: 18px; }
body.rc-theme #page-production .prod-weekbar {
  width: 100%; margin-top: 14px; padding: 0; gap: 8px;
  border: 0; border-radius: 0; background: transparent;
}
body.rc-theme #page-production .prod-weekbar .btn {
  min-height: 48px; padding: 8px 14px; color: var(--rc-text);
  border: 1px solid var(--rc-border); background: var(--rc-surface-control);
}
body.rc-theme #page-production .prod-weekbar .prod-weeklabel {
  background: transparent; box-shadow: none; min-width: 0; min-height: 48px;
  padding: 8px; font-size: 17px; font-weight: 750;
}
#prod-schedule-refresh { display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; flex-shrink: 0; min-height: 48px; }
#prod-schedule-refresh.h { display: none !important; }
#prod-schedule-refresh svg { width: 20px; height: 20px; }
.prod-day-picker { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; margin: 14px 0 18px; }
button.prod-day-choice {
  min-width: 0; padding: 12px; border: 1px solid var(--rc-border);
  border-radius: 10px; background: var(--rc-surface); color: var(--rc-text);
  font: inherit; text-align: left; cursor: pointer;
}
button.prod-day-choice.on { border-color: var(--rc-brand); box-shadow: inset 0 0 0 1px var(--rc-brand); background: var(--rc-brand-soft); }
.prod-choice-date { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; font-size: 14px; font-weight: 750; }
.prod-choice-mobile-date { display: none; }
.prod-choice-today { margin-left: auto; padding: 3px 6px; background: var(--rc-brand); color: #fff; border-radius: 20px; font-size: 10px; }
.prod-choice-figures { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; border-top: 1px solid var(--rc-border); margin-top: 8px; padding-top: 8px; }
.prod-choice-figures > span { font-size: 12px; color: var(--rc-text-muted); }
.prod-choice-figures strong { display: block; font-size: 25px; color: var(--rc-text); font-variant-numeric: tabular-nums; }
.prod-choice-status { display: block; font-size: 11px; color: var(--rc-text-muted); margin-top: 6px; }
.prod-selected-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 18px 0 12px; }
body.rc-theme .prod-selected-heading h2 { font-size: 25px; margin: 0; letter-spacing: -.03em; }
.prod-selected-heading .prod-today-pill { font-size: 12px; letter-spacing: 0; padding: 4px 10px; background: var(--rc-brand); color: #fff; }
.prod-selected-heading .prod-par { margin: 0; }
.prod-board { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
.prod-panel { min-width: 0; overflow: hidden; border: 1px solid var(--rc-border); border-left: 3px solid var(--prod-accent); border-radius: 12px; background: linear-gradient(var(--prod-wash), var(--prod-wash)), var(--rc-surface); }
.prod-panel.is-make { --prod-accent: #60A5FA; --prod-wash: rgba(96,165,250,.09); }
.prod-panel.is-cook { --prod-accent: #FBBF24; --prod-wash: rgba(251,191,36,.09); }
.prod-panel.is-display { --prod-accent: #C084FC; --prod-wash: rgba(192,132,252,.09); grid-column: 1 / -1; }
.prod-panel.is-catering { --prod-accent: #A78BFA; --prod-wash: rgba(167,139,250,.09); }
.prod-panel.is-hand { --prod-accent: #14B8A6; --prod-wash: rgba(20,184,166,.09); }
.prod-panel-head { display: flex; align-items: center; gap: 10px; min-height: 50px; padding: 12px 14px; color: #fff; background: color-mix(in srgb, var(--prod-accent) 46%, #0B1120); }
.prod-panel-head svg { flex: 0 0 22px; width: 22px; height: 22px; }
body.rc-theme .prod-panel-head h3 { flex: 1; min-width: 0; margin: 0; color: #fff; font-size: 18px; font-weight: 800; }
.prod-panel-meta { font-size: 13px; text-align: right; }
.prod-panel-body { padding: 14px 16px; }
.prod-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.prod-metric { min-width: 0; }
.prod-metrics > .prod-metric { background: var(--rc-surface-control); border-radius: 10px; padding: 12px; }
.prod-metric-value { font-size: clamp(30px, 4cqi, 42px); line-height: 1.15; letter-spacing: -.04em; font-weight: 850; font-variant-numeric: tabular-nums; }
.prod-metric-label { font-size: 15px; line-height: 1.35; margin-top: 6px; overflow-wrap: anywhere; }
.prod-detail-note { color: var(--rc-text-muted); font-size: 13px; line-height: 1.45; }
.prod-metric .prod-detail-note { margin-top: 6px; }
.prod-panel-body > p { margin: 10px 0 0; }
.prod-panel-body > p:first-child { margin-top: 0; }
.prod-mixed { margin-top: 8px; }
.prod-panel-links { display: flex; justify-content: space-between; gap: 12px; border-top: 1px solid var(--rc-border); margin-top: 10px; padding-top: 4px; }
.prod-panel-links button { min-height: 44px; padding: 4px 0; border: 0; background: none; font: inherit; font-size: 14px; color: var(--rc-link, #38BDF8); cursor: pointer; text-align: left; }
.prod-panel-links button:disabled { opacity: .5; color: var(--rc-text-muted); cursor: default; }
.prod-support { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.prod-support[hidden] { display: none !important; }
.prod-support > .prod-panel { flex: 0 0 auto; }
.prod-menu-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.prod-menu-col { min-width: 0; --prod-menu-accent: var(--rc-success, #34D399); }
.prod-menu-col.is-half { --prod-menu-accent: #38BDF8; }
.prod-menu-col h4 { margin: 0 0 6px; color: var(--prod-menu-accent); font-size: 15px; }
.prod-menu-col + .prod-menu-col { border-left: 1px solid var(--rc-border); padding-left: 18px; }
.prod-menu-col button.prod-pizza { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 48px; border-bottom: 1px solid var(--rc-border); font-size: 16px; font-weight: 650; color: var(--rc-text); line-height: 1.35; }
.prod-menu-col button.prod-pizza span { min-width: 0; overflow-wrap: anywhere; }
.prod-menu-col button.prod-pizza svg { flex: 0 0 16px; width: 16px; height: 16px; color: var(--rc-text-muted); }
.prod-menu-unassigned { min-height: 48px; display: flex; align-items: center; border-bottom: 1px solid var(--rc-border); color: var(--rc-warning); font-size: 15px; }
.prod-catering-order { font-size: 15px; overflow-wrap: anywhere; }
#prod-par { grid-column: 1 / -1; min-width: 0; }
.prod-calculation { border: 1px solid var(--rc-border); border-left: 3px solid var(--rc-text-muted); border-radius: 12px; background: var(--rc-surface); }
.prod-calculation > summary { display: flex; align-items: center; gap: 12px; cursor: pointer; padding: 14px 16px; min-height: 64px; list-style: none; }
.prod-calculation > summary::-webkit-details-marker { display: none; }
.prod-calculation > summary > span { flex: 1; min-width: 0; }
.prod-calculation > summary svg { width: 22px; height: 22px; flex: 0 0 22px; }
.prod-calculation > summary .prod-detail-note { display: block; margin-top: 3px; font-weight: 400; }
.prod-calculation[open] > summary > svg:last-child { transform: rotate(90deg); }
.prod-calculation-body { padding: 0 16px 16px; font-size: 14px; line-height: 1.5; }
.prod-calculation-body h4 { margin: 12px 0 4px; font-size: 14px; }
.prod-calculation-body p { margin: 4px 0; }
.prod-day-plan { border-top: 1px solid var(--rc-border); margin-top: 14px; padding-top: 4px; }
#prod-par .prod-flagrow { max-width: 400px; gap: 10px; margin-top: 10px; }
#prod-par .prod-flag { min-height: 48px; font-size: 14px; }
.prod-hand-details { margin-top: 10px; font-size: 13px; color: var(--rc-text-muted); line-height: 1.45; }
.prod-hand-details summary { cursor: pointer; min-height: 44px; padding: 10px 0; }
.prod-count-heading { margin: 12px 0 0; font-size: 15px; }
#prod-on-hand .prod-onhand-count { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
#prod-on-hand .prod-onhand-count .prod-field { min-width: 0; }
#prod-on-hand .prod-onhand-count input { width: 100%; min-height: 48px; font-size: 16px; }
#prod-count-save { grid-column: 1 / -1; min-height: 48px; }
#prod-schedule-grid button:focus-visible, .prod-calculation summary:focus-visible, .prod-hand-details summary:focus-visible { outline: 3px solid var(--rc-focus); outline-offset: 2px; }
html.rc-light .prod-menu-col.is-half { --prod-menu-accent: #0369A1; }
html.rc-light .prod-menu-col.is-full { --prod-menu-accent: #047857; }
html.rc-light .prod-panel-links button:not(:disabled) { color: #0369A1; }
@container schedule (max-width: 1000px) {
  .prod-choice-figures, .prod-choice-desktop-date { display: none; }
  .prod-choice-date { flex-direction: column; gap: 3px; text-align: center; }
  .prod-choice-mobile-date { display: block; font-size: 23px; }
  .prod-choice-today { margin: 0; }
  .prod-choice-status { text-align: center; font-size: 10px; }
  #prod-display { grid-column: 1 / -1; }
  .prod-support { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
  .prod-metrics > .prod-metric { padding: 8px; }
}
@container schedule (max-width: 590px) {
  .prod-board { grid-template-columns: 1fr; gap: 12px; }
  .prod-support { display: flex; align-items: stretch; gap: 12px; }
  .prod-day-picker { gap: 5px; margin: 12px 0 16px; }
  button.prod-day-choice { padding: 8px 2px; min-height: 76px; }
  .prod-choice-date { font-size: 12px; }
  .prod-choice-mobile-date { font-size: 22px; }
  .prod-choice-today { font-size: 9px; padding: 2px 4px; }
  .prod-choice-status { overflow-wrap: anywhere; font-size: 9px; }
  .prod-menu-columns { grid-template-columns: 1fr; gap: 18px; }
  .prod-menu-col + .prod-menu-col { border-left: 0; padding-left: 0; }
  .prod-metric-value { font-size: 38px; }
  .prod-metrics > .prod-metric { padding: 6px 0; background: transparent; }
  .prod-metrics > .prod-metric + .prod-metric { border-left: 1px solid var(--rc-border); padding-left: 14px; border-radius: 0; }
  .prod-panel-links button { font-size: 13px; }
  body.rc-theme .prod-selected-heading h2 { font-size: 22px; }
  body.rc-theme #page-production .prod-weekbar { gap: 5px; }
  body.rc-theme #page-production .prod-weekbar .btn { padding: 6px 10px; }
  body.rc-theme #page-production .prod-weekbar .prod-week-nav { min-width: 44px; }
  body.rc-theme #page-production .prod-weekbar .prod-weeklabel { font-size: 15px; padding: 6px 2px; }
  #prod-schedule-refresh { margin-left: 0; }
  .prod-panel-meta { font-size: 12px; }
}
@media (max-width: 600px) {
  #page-production .prod-section-tabs { display: none; }
  .prod-section-select { display: block; width: 100%; min-height: 48px; border: 1px solid var(--rc-border); border-radius: 9px; padding: 10px 12px; margin: 14px 0; font: inherit; font-size: 16px; color: var(--rc-text); background: var(--rc-surface-control); }
  body.rc-theme #prod-page-title { font-size: 26px; }
  #prod-schedule-refresh { width: 48px; padding: 10px; }
  #prod-schedule-refresh span { display: none; }
  #prod-pizza-dialog .prod-pizza-close { width: 48px; height: 48px; }
}
