/* Public display and standalone print view. Scoped to SRWM to avoid WordPress theme collisions. */
.srwm-root { --srwm-accent: #bd1721; font-family: system-ui,-apple-system,"Segoe UI",Arial,sans-serif; font-size: 16px; line-height: 1.5; color: #202020; box-sizing: border-box; }
.srwm-root *, .srwm-root *::before, .srwm-root *::after { box-sizing: border-box; }
.srwm-root .srwm-toolbar { text-align: right; padding: 0 0 12px; }
.srwm-root .srwm-print-button { background: var(--srwm-accent); color: #fff !important; display: inline-block; padding: 9px 16px; font-size: 14px; border-radius: 6px; text-decoration: none !important; border: 0; font-weight: 600; }
.srwm-root .srwm-print-button:hover { filter: brightness(.85); }
.srwm-root .srwm-sheet { width: 100%; max-width: 810px; margin: 0 auto; background: #fff; color: #202020; border: 1px solid #e3e3e3; padding: 28px 34px 24px; }
.srwm-root .srwm-header { text-align: center; padding-bottom: 14px; border-bottom: 3px solid var(--srwm-accent); }
.srwm-root .srwm-logo { display: block; max-width: 235px; width: auto; max-height: 95px; height: auto; object-fit: contain; margin: 0 auto 6px; }
.srwm-root .srwm-eyebrow { color: #5e5e5e; letter-spacing: .15em; text-transform: uppercase; font-size: 10px; font-weight: 700; }
.srwm-root h2 { font-size: 29px; line-height: 1.2; margin: 4px 0 6px; color: #141414; font-weight: 750; border: 0; text-transform: none; }
.srwm-root .srwm-range { margin: 4px 0 1px; font-weight: 700; font-size: 17px; }
.srwm-root .srwm-hours { margin: 1px 0 3px; font-size: 13px; }
.srwm-root .srwm-intro { margin: 7px 0 0; font-size: 13px; font-style: italic; }
.srwm-root .srwm-note { background: #fff8eb; border-left: 4px solid #dc8b13; margin: 14px 0; padding: 9px 12px; font-weight: 600; font-size: 14px; }
.srwm-root .srwm-vegetarian { padding: 13px 13px 6px; margin: 14px 0 16px; background: #f3f7f0; border-left: 4px solid #68954f; }
.srwm-root .srwm-vegetarian h3 { font-size: 16px; margin: 0 0 9px; color: #365d28; font-weight: 700; }
.srwm-root .srwm-days { display: grid; grid-template-columns: 1fr; }
.srwm-root .srwm-day-section { padding: 11px 0; border-bottom: 1px solid #e6e6e6; break-inside: avoid; page-break-inside: avoid; }
.srwm-root .srwm-day-title { display: flex; align-items: baseline; gap: 11px; margin: 0 0 5px; }
.srwm-root .srwm-day-title h3 { font-size: 16px; color: var(--srwm-accent); margin: 0; font-weight: 750; }
.srwm-root .srwm-day-title span { font-size: 12px; color: #656565; }
.srwm-root .srwm-item { display: flex; justify-content: space-between; gap: 15px; align-items: baseline; padding: 4px 0; break-inside: avoid; page-break-inside: avoid; }
.srwm-root .srwm-item-main { min-width: 0; flex: 1; }
.srwm-root .srwm-item-name { font-size: 14px; line-height: 1.4; }
.srwm-root .srwm-item-price { flex-shrink: 0; white-space: nowrap; font-size: 14px; font-weight: 750; }
.srwm-root .srwm-codes { color: #686868; font-size: 11px; line-height: 1.25; margin-top: 1px; }
.srwm-root .srwm-closed-label { color: #777; font-size: 14px; font-style: italic; margin: 0; }
.srwm-root .srwm-no-menu { color: #777; font-size: 13px; font-style: italic; margin: 0; }
.srwm-root .srwm-day-note { margin: 4px 0 0; font-size: 12px; font-style: italic; color: #555; }
.srwm-root .srwm-common-price { font-size: 16px; text-align: center; background: #f8f8f8; border: 1px solid #ededed; margin: 16px 0 8px; padding: 10px; }
.srwm-root .srwm-common-price strong { font-size: 17px; color: var(--srwm-accent); }
.srwm-root .srwm-legends { border-top: 1px solid #ddd; margin-top: 17px; padding-top: 12px; }
.srwm-root .srwm-legends details > summary { cursor: pointer; font-weight: 600; font-size: 13px; }
.srwm-root .srwm-legend-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; padding-top: 8px; }
.srwm-root .srwm-legend-group h4 { margin: 0 0 6px; font-size: 12px; color: #333; }
.srwm-root .srwm-legend-items { columns: 1; font-size: 10px; color: #555; line-height: 1.45; }
.srwm-root .srwm-legend-items > div { break-inside: avoid; }
.srwm-root .srwm-footer { color: #686868; font-size: 10px; padding-top: 15px; text-align: center; }
.srwm-standalone { margin: 0; padding: 30px 12px 50px; background: #ececec; color: #202020; }
.srwm-standalone .srwm-root .srwm-sheet { box-shadow: 0 5px 24px #00000013; border: 0; }
.srwm-standalone .srwm-print-controls { max-width: 810px; margin: 0 auto 13px; display: flex; align-items: center; gap: 16px; font: 13px system-ui,Arial,sans-serif; }
.srwm-standalone .srwm-print-controls button { cursor: pointer; background: #a91420; color: #fff; border: 0; border-radius: 5px; font-weight: 650; padding: 10px 16px; }
.srwm-standalone .srwm-print-controls span { color: #444; }
.srwm-root.srwm-print-view .srwm-legends h3 { font-size: 13px; margin: 0; color: #333; }
@media (max-width: 620px) { .srwm-root .srwm-sheet { padding: 17px 14px; } .srwm-root .srwm-legend-grid { grid-template-columns: 1fr; gap: 12px; } .srwm-root .srwm-item { gap: 8px; } .srwm-root .srwm-item-name { font-size: 13px; } .srwm-root .srwm-item-price { font-size: 13px; } }
@page { size: A4 portrait; margin: 11mm 12mm; }
@media print {
    html,body { background: #fff !important; margin: 0 !important; padding: 0 !important; }
    .srwm-root { font-size: 12px; color: #000; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
    .srwm-root .srwm-toolbar, .srwm-print-controls { display: none !important; }
    .srwm-root .srwm-sheet { width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; border: 0 !important; box-shadow: none !important; }
    .srwm-root .srwm-header { padding-bottom: 9px; border-bottom-width: 2px; }
    .srwm-root .srwm-logo { max-width: 180px; max-height: 65px; margin-bottom: 2px; }
    .srwm-root h2 { font-size: 23px; margin: 2px 0; }
    .srwm-root .srwm-range { font-size: 14px; margin: 1px 0; }
    .srwm-root .srwm-hours, .srwm-root .srwm-intro { font-size: 11px; margin: 1px 0; }
    .srwm-root .srwm-note { font-size: 11px; padding: 5px 8px; margin: 7px 0; }
    .srwm-root .srwm-vegetarian { margin: 9px 0 11px; padding: 7px 9px 3px; }
    .srwm-root .srwm-vegetarian h3 { font-size: 13px; margin-bottom: 3px; }
    .srwm-root .srwm-day-section { padding: 5px 0; }
    .srwm-root .srwm-day-title { margin-bottom: 0; }
    .srwm-root .srwm-day-title h3 { font-size: 13px; }
    .srwm-root .srwm-day-title span { font-size: 10px; }
    .srwm-root .srwm-item { padding: 2px 0; }
    .srwm-root .srwm-item-name,.srwm-root .srwm-item-price { font-size: 11px; }
    .srwm-root .srwm-codes { font-size: 9px; }
    .srwm-root .srwm-closed-label,.srwm-root .srwm-no-menu { font-size: 10px; }
    .srwm-root .srwm-day-note { font-size: 10px; margin-top: 2px; }
    .srwm-root .srwm-common-price { margin: 8px 0 3px; padding: 5px; font-size: 12px; }
    .srwm-root .srwm-common-price strong { font-size: 13px; }
    .srwm-root .srwm-legends { margin-top: 9px; padding-top: 5px; }
    .srwm-root .srwm-legend-grid { gap: 15px; padding-top: 3px; }
    .srwm-root .srwm-legend-group h4 { font-size: 10px; margin-bottom: 2px; }
    .srwm-root .srwm-legend-items { font-size: 8px; line-height: 1.3; }
    .srwm-root .srwm-footer { font-size: 8px; padding-top: 7px; }
    .srwm-root .srwm-legends details { display: block !important; }
    .srwm-root .srwm-legends details > summary { display: none !important; }
    .srwm-root .srwm-legends details > div { display: grid !important; }
}
