/* v16 Meal Plan: the parts her file wrote as inline styles, now classes (same look, text at least 12px) */
.mpx [hidden]{display:none!important}
.mpx button.cl-field{background:none;border:0;font:inherit;text-align:left;color:inherit;cursor:pointer}
.mpx label.cl-field{cursor:text}
.mpx .cl-save-guest{cursor:default}
.mpx .sb-inv-img img{width:100%;height:100%;object-fit:contain}
.mpx .sb-inv-name{font-size:12px;font-weight:600;text-align:left;line-height:1.2}
.mpx .ri img.kit{object-fit:contain;background:#fff;padding:10px}
.mpx a.ri{display:block;color:inherit;text-decoration:none}
.mpx .pck-n{color:var(--mu);font-size:12px}
.mpx .pf-note{display:block;width:100%;color:var(--mu);font-size:12px}
.mpx .mp-rg-heading{font-family:var(--fh);font-style:italic;font-size:18px;font-weight:600;color:var(--ink);margin:0 0 10px}
.mpx .mp-link{background:none;border:0;color:var(--pk);font:700 12px var(--fb);text-decoration:underline;cursor:pointer;font-style:normal}
.mpx .mp-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:100px;border:1.5px solid var(--line);background:var(--wh);color:var(--tx);font:700 12px var(--fb);cursor:pointer}
.mpx .mp-pill.pk{background:var(--pk);border-color:var(--pk);color:#fff}
.mpx .mp-pill small{font-weight:500;opacity:.75}
.mpx .mp-more{display:flex;justify-content:center;padding:16px 0 8px}
.mpx .mp-ph{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px;flex-wrap:wrap;gap:10px}
.mpx .mp-h2{font-family:var(--fh);font-style:italic;font-size:25px;font-weight:700;color:var(--ink);margin:0 0 12px}
.mpx .mp-h2 em{color:var(--pk)}
.mpx .mp-ph .mp-h2{margin:0}
.mpx .mp-sub,.mpx .mp-tip{font-size:12px;color:var(--mu);margin-top:3px}
.mpx .mp-tip{text-align:center}
.mpx .mp-acts{display:flex;gap:6px;flex-wrap:wrap}
.mpx .mp-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:14px}
.mpx .mp-stat{background:var(--wh);border:1.5px solid var(--line);border-radius:10px;padding:9px 10px;text-align:center}
.mpx .mp-stat-l{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--lt);display:block;margin-bottom:2px}
.mpx .mp-stat-v{font-family:var(--fh);font-style:italic;font-size:18px;font-weight:700;color:var(--ink)}
.mpx .mp-stat-u{font-size:12px;color:var(--mu)}
.mpx .mp-stat.pk{border-color:var(--pkb)}.mpx .mp-stat.pk .mp-stat-l,.mpx .mp-stat.pk .mp-stat-v{color:var(--pk)}
.mpx .mp-stat.hi{background:var(--hib);border-color:rgba(57,255,20,.4)}.mpx .mp-stat.hi .mp-stat-l,.mpx .mp-stat.hi .mp-stat-v{color:#1A7010}
.mpx .mp-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;margin-bottom:14px}
.mpx .mp-day{background:var(--wh);border:1.5px solid var(--line);border-radius:10px;overflow:hidden}
.mpx .mp-day-h{padding:6px 7px;text-align:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--mu);background:var(--bg);border-bottom:1px solid var(--line)}
.mpx .mp-day.today .mp-day-h{background:var(--pk);color:#fff}
.mpx .mp-slot{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:7px;border:0;border-bottom:1px solid var(--line);min-height:56px;background:transparent;cursor:pointer;text-align:left;font-family:var(--fb)}
.mpx .mp-slot:hover{background:var(--pks)}
.mpx .mp-slot-t{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--lt)}
.mpx .mp-slot-n{font-size:12px;font-weight:600;color:var(--ink);line-height:1.25}
.mpx .mp-slot-k,.mpx .mp-slot-add{font-size:12px;color:var(--mu)}
.mpx .mp-slot-add{font-weight:600;color:var(--lt)}
.mpx .mp-slot.full{background:var(--pks)}
.mpx .mp-pick{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px}
.mpx .mp-pick-box{background:var(--wh);border-radius:16px;max-width:560px;width:100%;max-height:min(80vh,640px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3)}
.mpx .mp-pick-hd{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}
.mpx .mp-pick-hd h3{font-family:var(--fh);font-style:italic;font-size:18px;margin:0;color:var(--ink)}
.mpx .mp-pick-list{overflow-y:auto;padding:10px 16px 16px;display:flex;flex-direction:column;gap:6px}
.mpx .mp-pick-s{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--pk);margin:8px 0 2px}
.mpx .mp-pick-r{display:flex;gap:10px;align-items:center;padding:6px;border:1.5px solid var(--line);border-radius:10px;background:var(--wh);cursor:pointer;text-align:left;font-family:var(--fb)}
.mpx .mp-pick-r:hover{border-color:var(--pk);background:var(--pks)}
.mpx .mp-pick-r img{width:48px;height:48px;border-radius:8px;object-fit:cover;flex:none}
.mpx .mp-pick-r b{display:block;font-size:14px;color:var(--ink)}
.mpx .mp-pick-r small{font-size:12px;color:var(--mu)}
.mpx .mp-saved{display:flex;flex-direction:column;gap:8px}
.mpx .mp-sv{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--wh)}
.mpx .mp-sv b{font-family:var(--fh);font-style:italic;font-size:18px;color:var(--ink);display:block}
.mpx .mp-sv small{font-size:12px;color:var(--mu)}
@media (max-width:899px){.mpx .mp-week{grid-template-columns:repeat(2,minmax(0,1fr))}.mpx .mp-stats{grid-template-columns:repeat(3,1fr)}}
@media print{body>*:not(main),.mpx .calc-wrap,.mpx .mp-sidebar,.mpx .mp-acts{display:none!important}.mpx .mp-layout{height:auto!important}}
.mpx .mp-right{min-width:0}
.mpx .pf-drops{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px}
.mpx .pf-drop-item{min-width:0}
.mpx .pf-drop-label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mpx .pf-sel{width:100%;max-width:none}
@media (max-width:899px){
 .mpx .mp-right{width:100%}
 .mpx .pf-toggle,.mpx .qf-hd,.mpx .hq-bar{flex-wrap:wrap}
 .mpx .qf-left{flex-wrap:wrap}
 .mpx .rg{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
}
/* quiz on small screens: her 3 columns spill past the edge; 2 columns on tablets, 1 on phones */
@media(max-width:900px){.mpx .quiz-qs{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.mpx .quiz-qs{grid-template-columns:1fr}.mpx .quiz-insight{flex-direction:column;align-items:flex-start}.mpx .qi-text{flex:none}}
.mpx .hq-inner,.mpx .hq-panel{min-width:0;max-width:100%}
