.kitchen-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:24px 0}.kitchen-heading h1{font-size:clamp(28px,4vw,42px);margin:8px 0}.kitchen-heading p{color:#53665b;margin:6px 0}.kitchen-heading a,.shopping-footer a{color:#226743}.shopping-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:16px;background:#fff;border:1px solid #dce5de;border-radius:16px}.shopping-controls label,.kitchen-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}.shopping-controls input,.shopping-controls select,.kitchen-form input,.kitchen-form select,.kitchen-form textarea{font:inherit;border:1px solid #c5d2c9;border-radius:8px;background:#fff;padding:10px;min-width:0;color:#183527}.shopping-controls button,.kitchen-form button,.kitchen-actions button,.kitchen-panel button{padding:10px 14px;background:#226743;color:white;border:0;border-radius:8px;font:inherit;cursor:pointer}.shopping-controls button:disabled,.kitchen-panel button:disabled{opacity:.55;cursor:wait}.shopping-search{flex:1;min-width:160px}.shopping-note{font-size:13px;color:#586b60;line-height:1.6}.shopping-shell progress{width:100%;height:6px;accent-color:#28794d;margin:0 0 20px}.shopping-grid{columns:2;column-gap:20px}.shopping-aisle{break-inside:avoid;margin-bottom:16px;background:white;border:1px solid #dce5de;border-radius:12px;overflow:hidden}.shopping-aisle h2{font-size:16px;margin:0;padding:12px 16px;background:#eef5ee;color:#275239;display:flex;justify-content:space-between}.shopping-row-compact{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;padding:10px 16px;border-top:1px solid #edf1ed;font-size:14px}.shopping-row-compact input{width:18px;height:18px;accent-color:#28794d}.shopping-row-compact small{display:block;font-size:11px;color:#607569;margin-top:3px}.shopping-row-compact.done .shopping-name{text-decoration:line-through;color:#7a857e}.shopping-row-compact select{font:inherit;font-size:12px;border:1px solid #d6dfd8;border-radius:6px;padding:5px;background:#fff}.shopping-quantity{font-weight:600;white-space:nowrap}.shopping-footer{display:flex;justify-content:space-between;font-size:13px;color:#607569;margin:24px 0}.kitchen-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.kitchen-tabs a{padding:10px 16px;background:#eef5ee;border-radius:20px;color:#285e3b;text-decoration:none}.kitchen-panel{padding:24px;margin:20px 0;background:white;border:1px solid #dce5de;border-radius:16px;scroll-margin-top:90px}.kitchen-panel h2{margin-top:0;font-size:23px}.kitchen-panel p{color:#526459;line-height:1.6}.kitchen-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.kitchen-form .wide{grid-column:1/-1}.kitchen-form textarea{min-height:90px}.kitchen-actions{display:flex;gap:8px;flex-wrap:wrap}.kitchen-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #e3e9e3}.kitchen-row small{display:block;color:#627668;margin-top:4px}.kitchen-row button{font-size:12px;padding:7px 10px}.kitchen-badge{display:inline-block;padding:4px 10px;border-radius:12px;background:#edf5ed;color:#245638;font-size:12px}.kitchen-status{position:sticky;top:0;background:#f2f7f2;z-index:3;padding:12px;border-radius:8px}.kitchen-status:empty{display:none}.kitchen-form fieldset{grid-column:1/-1;border:1px solid #dce5de;border-radius:12px}.ingredient-line{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;margin-bottom:8px}.kitchen-dialog{max-width:520px;width:calc(100% - 32px);border:1px solid #b8cabe;border-radius:18px;padding:24px}.kitchen-dialog::backdrop{background:#19352780}.kitchen-dialog .kitchen-form{grid-template-columns:1fr 1fr}.fitness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fitness-grid article{border:1px solid #dce5de;border-radius:16px;padding:22px;background:white}.fitness-grid h2{margin:10px 0}.fitness-grid p{line-height:1.6;color:#526459}.fitness-grid a{color:#226743}.fitness-grid button{background:#226743;color:white;border:0;border-radius:8px;padding:12px;font:inherit}.sample-week{overflow:auto}.sample-week table,.membership-table{border-collapse:collapse;width:100%;font-size:14px}.sample-week th,.sample-week td,.membership-table th,.membership-table td{padding:14px;border-bottom:1px solid #dce5de;text-align:left}.sample-week th{white-space:nowrap}.sample-week a{color:#245c39}.sample-week small{display:block;color:#65786a}.sample-week caption{text-align:left;padding:12px 0;color:#596f60}.membership-table td:first-child{font-weight:600}.public-feature-state{font-size:12px;padding:4px 8px;border-radius:12px;background:#edf5ed;display:inline-block}
.kitchen-form label{min-width:0}.kitchen-form select{max-width:100%}.kitchen-row>div{min-width:0;overflow-wrap:anywhere}.kitchen-row .kitchen-actions{flex-shrink:0}
@media(max-width:720px){.shopping-grid{columns:1}.kitchen-heading{align-items:start;flex-direction:column}.kitchen-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.fitness-grid{grid-template-columns:1fr}.ingredient-line{grid-template-columns:1fr 1fr}.ingredient-line input[type=search]{grid-column:1/-1}.shopping-controls button{flex:1}.kitchen-panel{padding:18px}.shopping-row-compact{padding:10px 12px}.shopping-controls label:not(.shopping-search){flex:1}.kitchen-row{flex-wrap:wrap}.kitchen-row .kitchen-actions{flex-shrink:1}}
@media print{@page{size:A4;margin:12mm}html,body.tools-page{background:white!important;color:#000!important;font-size:10pt!important}body>*:not(main){display:none!important}.shopping-controls,.shopping-note,#shopping-status,progress,.kitchen-heading>a,.shopping-footer>a,[class*=chat],iframe{display:none!important}.tools-shell.shopping-shell{margin:0!important;padding:0!important;max-width:none!important}.kitchen-heading{margin:0 0 8mm;display:block}.kitchen-heading h1{font-size:20pt;margin:3mm 0}.kitchen-heading .tools-eyebrow{display:none}.shopping-grid{columns:2;column-gap:7mm}.shopping-aisle{border:0;border-radius:0;margin-bottom:5mm;break-inside:avoid}.shopping-aisle h2{font-size:11pt;background:none;padding:2mm 0;border-bottom:1px solid #555}.shopping-row-compact{padding:2mm 0;grid-template-columns:4mm 1fr auto;gap:2mm;font-size:9pt;line-height:1.2}.shopping-row-compact input{appearance:none;width:3mm;height:3mm;border:1px solid #777;margin:0}.shopping-row-compact small{font-size:8pt}.shopping-row-compact select{display:none}.shopping-footer{margin:3mm 0;font-size:8pt}.shopping-footer span{display:block}}
