#hcp-planner{--ink:#203d30;--muted:#66736a;--paper:#f7f5ef;--line:#dce1d7;--green:#294d38;--gold:#b27845}
#hcp-planner *{box-sizing:border-box}
#hcp-planner{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,sans-serif}
#hcp-planner header{height:98px;display:flex;align-items:center;justify-content:space-between;max-width:1330px;margin:auto;padding:0 42px;border-bottom:1px solid var(--line)}
#hcp-planner a{color:inherit;text-underline-offset:4px}
#hcp-planner header a:last-child{font-size:14px}
#hcp-planner .wordmark{text-decoration:none;font:32px/.9 Georgia,serif;letter-spacing:-1.5px}
#hcp-planner .wordmark span{display:block;text-align:center;font:10px/2.5 system-ui;letter-spacing:6px}
#hcp-planner .preview,#hcp-planner .eyebrow,#hcp-planner .step{font-size:10px;letter-spacing:2px;font-weight:750}
#hcp-planner .preview{background:#e8ecdf;border-radius:20px;padding:8px 14px}
#hcp-planner .planner-main{max-width:1240px;margin:auto;padding:32px 32px 0}
#hcp-planner .intro{padding:14px 0 32px}
#hcp-planner .eyebrow{color:#916440}
#hcp-planner h1{font:clamp(40px,5vw,66px)/1.05 Georgia,serif;letter-spacing:-2px;margin:16px 0}
#hcp-planner h2{font:29px/1.1 Georgia,serif;letter-spacing:-.7px;margin:12px 0 18px}
#hcp-planner .intro>p:last-child{color:var(--muted);font-size:18px;line-height:1.6}
#hcp-planner .workspace{display:grid;grid-template-columns:310px 1fr;gap:32px;align-items:start}
#hcp-planner aside form{background:#fff;padding:26px;border:1px solid var(--line);border-radius:16px}
#hcp-planner .muted{color:var(--muted);font-size:14px}
#hcp-planner .small,#hcp-planner .fineprint,#hcp-planner .method{font-size:12px;color:var(--muted)}
#hcp-planner label{display:block;font-size:12px;font-weight:700;margin:17px 0 7px}
#hcp-planner label span{font-weight:400;color:var(--muted);float:right}
#hcp-planner input,#hcp-planner select{width:100%;min-width:0;border:1px solid #cbd4c7;border-radius:7px;background:#fafbf8;padding:12px 10px;font:inherit;color:var(--ink);height:46px}
#hcp-planner .inputs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
#hcp-planner button{font:600 13px system-ui;cursor:pointer;border:0;border-radius:7px;padding:12px 14px;color:var(--ink);background:#edf1e7;min-height:42px}
#hcp-planner button:hover{filter:brightness(.95)}
#hcp-planner button:focus-visible,#hcp-planner a:focus-visible,#hcp-planner input:focus-visible,#hcp-planner select:focus-visible,#hcp-planner summary:focus-visible{outline:3px solid #b27845;outline-offset:3px}
#hcp-planner .primary{background:var(--green);color:white;width:100%;margin-top:24px;text-align:left}
#hcp-planner .primary span{float:right}
#hcp-planner .outline{background:transparent;border:1px solid #b7c3b4}
#hcp-planner .method{padding:22px 4px}
#hcp-planner .method summary{font-weight:700;color:var(--ink);cursor:pointer}
#hcp-planner .step{color:#7c8578}
#hcp-planner .plan-heading{display:flex;justify-content:space-between;align-items:center}
#hcp-planner .plan-heading h2{margin-bottom:22px}
#hcp-planner .summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;background:#e9eedf;border:1px solid #d7dfce;border-radius:12px;padding:18px}
#hcp-planner .stat .label{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:1px}
#hcp-planner .stat strong{font:26px Georgia,serif;display:block;margin-top:6px}
#hcp-planner .stat small{font-size:11px;color:var(--muted);display:block}
#hcp-planner .stat .delta{font-size:11px;margin-top:5px;color:#79582e}
#hcp-planner .cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#hcp-planner .card{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden}
#hcp-planner .photo{width:100%;height:170px;object-fit:cover;background:#e8e5db}
#hcp-planner .card-body{padding:20px}
#hcp-planner .slot{font-size:10px;text-transform:uppercase;letter-spacing:2px;color:#926641;font-weight:700}
#hcp-planner .card h3{font:24px/1.15 Georgia,serif;margin:9px 0 12px}
#hcp-planner .nutrition{display:flex;gap:10px;flex-wrap:wrap;font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}
#hcp-planner .nutrition b{color:var(--ink)}
#hcp-planner .controls{display:flex;gap:10px;align-items:end;margin-top:12px}
#hcp-planner .controls>div{flex:1}
#hcp-planner .controls label{margin:0 0 4px}
#hcp-planner .controls select{height:42px;font-size:13px}
#hcp-planner .details{margin-top:16px;font-size:12px;color:var(--muted)}
#hcp-planner .details summary{cursor:pointer;color:var(--ink);font-weight:650}
#hcp-planner .details p{overflow-wrap:anywhere}
#hcp-planner .details ul{padding-left:18px}
#hcp-planner .details li{margin-bottom:10px}
#hcp-planner .recipe-link{display:inline-block;font-size:12px;margin-top:14px}
#hcp-planner .fineprint{margin:24px 0}
#hcp-planner footer{padding:36px 0;border-top:1px solid var(--line);font-size:11px;letter-spacing:1px}
#hcp-planner footer span{letter-spacing:0;color:var(--muted)}
#hcp-planner dialog{width:min(570px,94vw);max-height:85vh;border:1px solid var(--line);border-radius:15px;padding:28px;color:var(--ink)}
#hcp-planner dialog::backdrop{background:#14271e99}
#hcp-planner .close{float:right;background:transparent;font-size:24px}
#hcp-planner .choice{display:block;text-align:left;width:100%;margin:8px 0;padding:15px}
#hcp-planner .choice small{display:block;font-weight:400;margin-top:5px}
#hcp-planner #form-message{font-size:12px;color:#8a472d}
#hcp-planner .empty{padding:40px;background:#fff;border-radius:12px}
@media (max-width:950px){#hcp-planner .workspace{grid-template-columns:270px 1fr;gap:20px}
#hcp-planner .cards{grid-template-columns:1fr}
#hcp-planner .summary{grid-template-columns:1fr 1fr}
#hcp-planner .photo{height:220px}}
@media (max-width:650px){#hcp-planner header{padding:0 20px;height:80px}
#hcp-planner .wordmark{font-size:25px}
#hcp-planner .preview{font-size:8px;padding:7px}
#hcp-planner .preview+ a{display:none}
#hcp-planner .planner-main{padding:22px 18px 0}
#hcp-planner .workspace{grid-template-columns:1fr}
#hcp-planner .intro{padding-bottom:18px}
#hcp-planner .intro br{display:none}
#hcp-planner aside form{padding:22px}
#hcp-planner .method{padding:15px 0}
#hcp-planner .summary{grid-template-columns:repeat(2,1fr)}
#hcp-planner .photo{height:210px}
#hcp-planner .plan-heading h2{font-size:26px}
#hcp-planner .cards{gap:18px}}
@media  print{#hcp-planner header,#hcp-planner .intro,#hcp-planner aside,#hcp-planner .controls,#hcp-planner #print,#hcp-planner dialog{display:none!important}
#hcp-planner .planner-main{padding:0}
#hcp-planner .workspace{display:block}
#hcp-planner .cards{grid-template-columns:1fr 1fr}
#hcp-planner .card{break-inside:avoid}
#hcp-planner .photo{height:100px}
#hcp-planner .details:not([open]){display:none}
#hcp-planner{background:#fff}
#hcp-planner .summary{background:#eee}
#hcp-planner footer{display:none}}
#hcp-planner [hidden]{display:none!important}
#hcp-planner .planning{grid-template-columns:1fr 1fr}
#hcp-planner .planning select{font-size:13px}
#hcp-planner .save-panel{background:#efeee6;padding:22px;border-radius:13px;margin-top:18px}
#hcp-planner .save-panel button{margin-top:12px;width:100%}
#hcp-planner .text-button{background:transparent;text-decoration:underline;font-size:11px}
#hcp-planner .view-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:10px;flex-wrap:wrap}
#hcp-planner .view-tabs button{background:transparent;color:var(--muted);border-radius:6px}
#hcp-planner .view-tabs button[aria-pressed=true]{background:var(--green);color:white}
#hcp-planner .day-tabs{display:flex;gap:7px;margin-bottom:18px;overflow-x:auto;padding:4px 2px}
#hcp-planner .day-tabs button{flex:1;min-width:65px;background:white;border:1px solid var(--line);font-size:12px}
#hcp-planner .day-tabs button[aria-pressed=true]{border-color:var(--green);background:#e7eddf}
#hcp-planner .day-tabs small{display:block;font-size:9px;font-weight:400}
#hcp-planner .day-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}
#hcp-planner .day-actions h3{font:25px Georgia,serif;margin:0}
#hcp-planner .card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
#hcp-planner .lock{font-size:10px;min-height:32px;padding:7px 9px;background:transparent;border:1px solid var(--line)}
#hcp-planner .lock.active{background:#e8edde;border-color:#67816b}
#hcp-planner .variant-note{font-size:10px;color:#876042;margin:0 0 12px}
#hcp-planner button:disabled,#hcp-planner select:disabled{cursor:default;opacity:.55}
#hcp-planner .week-lead h3,#hcp-planner .shopping-intro h3{font:29px/1.15 Georgia,serif;margin:10px 0}
#hcp-planner .week-day{background:white;border:1px solid var(--line);border-radius:12px;padding:20px;margin:16px 0;break-inside:avoid}
#hcp-planner .week-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#hcp-planner .week-head h3{font:25px Georgia,serif;margin:0}
#hcp-planner .week-head>span{flex:1;min-width:160px}
#hcp-planner .week-head button{font-size:11px}
#hcp-planner .week-meals{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-top:20px}
#hcp-planner .week-meals h4{font:18px/1.2 Georgia,serif;margin:8px 0}
#hcp-planner .week-meals p{font-size:10px}
#hcp-planner .shopping-intro{background:#edf0e6;padding:22px;border-radius:12px}
#hcp-planner .shopping-actions{display:flex;gap:15px;align-items:center;justify-content:space-between}
#hcp-planner .check-label{display:flex;align-items:center;gap:8px;margin:0;font-size:12px}
#hcp-planner .check-label input,#hcp-planner .shop-label input{width:18px;height:18px;flex:none;accent-color:var(--green)}
#hcp-planner #shopping-progress{font-size:12px;margin-bottom:0}
#hcp-planner .shopping-group{margin:25px 0}
#hcp-planner .shopping-group>h4{font:24px Georgia,serif;margin-bottom:10px}
#hcp-planner .shopping-row{border-bottom:1px solid var(--line);padding:12px 0}
#hcp-planner .shop-label{display:flex;align-items:start;gap:12px;margin:0;line-height:1.5;font-size:13px;font-weight:400;cursor:pointer}
#hcp-planner .shop-label>span{flex:1}
#hcp-planner .shop-label>strong{white-space:nowrap}
#hcp-planner .shop-label.checked>span{text-decoration:line-through;color:#899184}
#hcp-planner .used-in{margin-left:30px;font-size:10px;color:var(--muted);margin-top:7px}
#hcp-planner .used-in summary{cursor:pointer}
#hcp-planner .used-in p{overflow-wrap:anywhere}
#hcp-planner .plan-heading{gap:12px}
#hcp-planner .intro{padding-bottom:20px}
#hcp-planner .summary .delta{font-variant-numeric:tabular-nums}
@media (max-width:1050px){#hcp-planner .week-meals{grid-template-columns:1fr 1fr}}
@media (max-width:650px){#hcp-planner .day-tabs button{min-width:67px}
#hcp-planner .week-head{gap:8px}
#hcp-planner .week-head>span{width:100%;order:3}
#hcp-planner .shopping-actions{align-items:start;flex-direction:column}
#hcp-planner .shopping-intro{padding:18px}
#hcp-planner .view-tabs button{font-size:12px;padding:10px}
#hcp-planner .save-panel{margin-top:14px}
#hcp-planner .week-meals{gap:12px}
#hcp-planner .week-day{padding:17px}
#hcp-planner .save-panel button{min-height:42px}}
@media  print{#hcp-planner .view-tabs,#hcp-planner .day-tabs,#hcp-planner .day-actions button,#hcp-planner .card-top .lock,#hcp-planner .shopping-actions,#hcp-planner .week-head button{display:none!important}
#hcp-planner .plan-heading{display:block}
#hcp-planner .week-meals{grid-template-columns:repeat(4,1fr)}
#hcp-planner .shopping-row{break-inside:avoid}
#hcp-planner .used-in{display:none}
#hcp-planner .week-day{break-inside:avoid}
#hcp-planner #shopping-progress{display:none}
#hcp-planner .card{border:1px solid #bbb}
#hcp-planner .card h3{font-size:19px}}
#hcp-planner .workspace>aside,#hcp-planner .workspace>.plan{min-width:0}
#hcp-planner .day-tabs{max-width:100%}
#hcp-planner .purchase-detail{font-size:11px;color:var(--muted);margin:5px 0 0 30px}
#hcp-planner .shop-label>strong{max-width:45%;white-space:normal;text-align:right}
#hcp-planner .preferences{margin-top:18px;font-size:13px}
#hcp-planner .preferences summary{cursor:pointer;font-weight:650}
#hcp-planner .preference-checks{display:grid;gap:10px;margin-top:15px}
#hcp-planner .food-picker{max-height:180px;overflow:auto;border:1px solid var(--line);border-radius:8px;padding:12px;margin:10px 0;background:#fff}
#hcp-planner .food-picker label{font-size:12px;margin:0;padding:7px 0}
#hcp-planner .food-chips{display:flex;gap:6px;flex-wrap:wrap}
#hcp-planner .food-chip{font-size:11px;min-height:36px;padding:7px 9px}
#hcp-planner .preference-notice:empty,#hcp-planner #kitchen-message:empty{display:none}
#hcp-planner .preference-notice{background:#fff1db;color:#6d4d2d;padding:14px;border-radius:8px;font-size:13px}
#hcp-planner .feature-title{font:30px Georgia,serif}
#hcp-planner .extra-row{display:grid;grid-template-columns:1fr 100px;gap:9px;background:#fff;padding:18px;border:1px solid var(--line);border-radius:10px;margin:12px 0}
#hcp-planner .extra-row>strong,#hcp-planner .extra-row>span,#hcp-planner .extra-row>p,#hcp-planner .extra-row>button{grid-column:1/-1}
#hcp-planner .extra-row label{margin:0;align-self:center}
#hcp-planner .shopping-scope-toggle{margin-top:20px}
#hcp-planner .match-badge{padding:10px;background:#e9eedf;border-radius:8px;font-size:13px;font-weight:600}
#hcp-planner #recipe-library,#hcp-planner #pantry-results{margin-top:20px}
#hcp-planner #recipe-library .card-body>button,#hcp-planner #pantry-results .card-body>button{width:100%;margin-top:10px}
#hcp-planner #kitchen-message{position:sticky;bottom:12px;background:var(--green);color:white;padding:16px;border-radius:10px;box-shadow:0 2px 14px #0002;font-size:13px;z-index:3}
#hcp-planner .food-picker:focus-within{border-color:var(--green)}
@media  print{#hcp-planner .preferences,#hcp-planner .food-picker,#hcp-planner .food-chips,#hcp-planner #recipe-search,#hcp-planner #pantry-search,#hcp-planner #clear-pantry,#hcp-planner #kitchen-message,#hcp-planner #extra-recipes input,#hcp-planner #extra-recipes label,#hcp-planner #extra-recipes button,#hcp-planner .shopping-scope-toggle,#hcp-planner #recipe-library .card-body>button,#hcp-planner #pantry-results .card-body>button{display:none!important}
#hcp-planner #recipe-library .card,#hcp-planner #pantry-results .card{break-inside:avoid}
#hcp-planner .extra-row{display:block}
#hcp-planner #recipe-library input,#hcp-planner #recipe-library label,#hcp-planner #pantry-results input,#hcp-planner #pantry-results label{display:none!important}}
#hcp-planner #kitchen-message button{margin:10px 0 0 10px;background:white;color:var(--green)}
@media (max-width:650px){#hcp-planner #kitchen-message button{display:block;margin:10px 0 0}
#hcp-planner .extra-row{grid-template-columns:minmax(0,1fr) 90px}}
#hcp-planner .food-picker label{min-height:44px}
#hcp-planner #recipe-import{max-width:600px;width:calc(100% - 32px);border:1px solid #d7dfd1;border-radius:18px;padding:28px;color:#263e31;background:#f7f5ef;max-height:85vh;overflow:auto}
#hcp-planner #recipe-import::backdrop{background:#18352799}
#hcp-planner #recipe-import label{display:block;margin:12px 0 5px}
#hcp-planner #recipe-import select{width:100%}
#hcp-planner #recipe-import button{margin:14px 8px 0 0}
#hcp-planner #recipe-import p{font-size:14px;line-height:1.6}
#hcp-planner{box-sizing:border-box;width:100%;background:#f7f5ef;padding-bottom:1px}#hcp-planner .planner-main{padding-top:20px}#hcp-planner .beta-note{font-size:14px;background:#e8eedf;padding:18px;border-radius:10px}#hcp-planner .beta-note a{font-weight:700}#hcp-planner .feature-title{line-height:1.2}#hcp-planner button{letter-spacing:normal;text-transform:none}#hcp-planner label{line-height:1.5}#hcp-planner input[type=checkbox]{appearance:auto}#hcp-planner dialog::backdrop{background:#14271e99}
