.weekly-dinners{padding-block:32px 48px}.weekly-dinners .weekly-intro{max-width:78ch}.weekly-form{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px;margin-block:24px}.weekly-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.weekly-form label{display:block;font-weight:600}.weekly-form select,.weekly-form input[type=number],.weekly-form input[type=date]{display:block;width:100%;min-height:44px;padding:10px;margin-top:6px;background:#fff;border:1px solid #8a7565;border-radius:4px;color:var(--ink);font:inherit}.weekly-form fieldset{border:1px solid var(--line);padding:16px;margin:20px 0}.weekly-checks{display:flex;flex-wrap:wrap;gap:12px 24px}.weekly-checks label{font-weight:400;display:flex;align-items:center;gap:8px;min-height:32px}.weekly-checks input{width:20px;height:20px}.weekly-form button{margin-top:16px}.dinner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-block:24px}.dinner-card{min-width:0;padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px}.dinner-card h3{margin:16px 0}.dinner-card select{display:block;max-width:100%;width:100%;min-height:44px;padding:8px;font:inherit;background:#fff;color:var(--ink);border:1px solid #8a7565}.dinner-card li{margin-bottom:10px}.dinner-card a{text-decoration:underline;text-underline-offset:3px}.weekly-shopping{overflow-x:auto;max-width:100%}.weekly-shopping table{border-collapse:collapse;width:100%;min-width:550px;background:#fff}.weekly-shopping th,.weekly-shopping td{padding:12px;text-align:left;border:1px solid var(--line);vertical-align:top}.weekly-shopping caption{text-align:left;font-weight:600;margin-bottom:12px}.weekly-dinners textarea{display:block;box-sizing:border-box;width:100%;min-height:260px;font:inherit;padding:16px;margin-top:16px}.weekly-dinners [hidden]{display:none}.weekly-note{padding:18px;background:#f0e9df;border-left:3px solid var(--accent);margin-block:24px}.weekly-dinners :focus-visible{outline:3px solid var(--accent-dark);outline-offset:3px}@media(max-width:700px){.weekly-controls,.dinner-grid{grid-template-columns:1fr}.weekly-form,.dinner-card{padding:18px}}@media print{.weekly-form,.weekly-copy{display:none}.dinner-grid{display:block}.dinner-card{break-inside:avoid;margin-bottom:16px}}
.weekly-shopping th label{display:flex;align-items:baseline;gap:8px}.weekly-shopping input[type=checkbox]{width:18px;height:18px;flex:none}.weekly-shopping label:has(input:checked){text-decoration:line-through;color:var(--muted)}
