.picnic-launch{background:#eef7f6!important;border-color:#b9d8d5!important;color:#285f64!important}
#picnicDialog{width:min(1080px,calc(100vw - 32px));max-width:none;max-height:90dvh;padding:0;border:1px solid #d7e4e9;border-radius:22px;background:#f7fafb;color:#274454;box-shadow:0 28px 100px #17384b35;font:15px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;overflow:auto;overscroll-behavior:contain}
#picnicDialog::backdrop{background:#17354b80;backdrop-filter:blur(4px)}
#picnicDialog *{box-sizing:border-box}
#picnicDialog h2,#picnicDialog h3,#picnicDialog h4,#picnicDialog p{margin:0}
#picnicDialog h2{font-size:25px;letter-spacing:-.035em;line-height:1.2;margin-top:7px;color:#214559}
#picnicDialog h3{font-size:28px;font-weight:650;line-height:1.2;letter-spacing:-.035em;margin:5px 0 16px;color:#214559}
#picnicDialog h4{font-size:16px;line-height:1.35;margin:0 0 12px;color:#254b5b}
#picnicDialog p{line-height:1.65;margin:10px 0 18px}
#picnicDialog button,.picnic-link-button{font:inherit;line-height:1.4;border:1px solid #cddfe6;border-radius:11px;background:#fff;color:#28566b;padding:10px 14px;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s}
#picnicDialog button:hover,.picnic-link-button:hover{background:#edf5f7;border-color:#90bac8}
#picnicDialog button:focus-visible,.picnic-marker:focus-visible,.picnic-markers button:focus-visible,.picnic-hud button:focus-visible{outline:3px solid #61a1c6;outline-offset:3px}
#picnicDialog button:disabled{opacity:.5;cursor:default}
#picnicDialog .picnic-primary{background:#386e83;color:#fff;border-color:#386e83}
#picnicDialog .picnic-primary:hover{background:#295b70}
.picnic-top{display:flex;justify-content:space-between;align-items:center;padding:25px 30px 22px;background:#fff;gap:16px;border-bottom:1px solid #e0e9ed}
.picnic-eyebrow{font-size:10px;letter-spacing:.14em;font-weight:750;color:#668b97}
#picnicDialog .picnic-close{padding:6px;width:36px;height:36px;flex-shrink:0;background:#f3f7f9;border:0}
.picnic-tabs{display:flex;gap:7px;background:#fff;padding:0 30px 15px;overflow-x:auto;position:sticky;top:0;z-index:2;box-shadow:0 5px 12px #29445305}
#picnicDialog .picnic-tabs button{white-space:nowrap;border-color:transparent;font-size:13px;padding:10px 16px}
#picnicDialog .picnic-tabs button[aria-pressed=true]{background:#e8f1f5;border-color:#d4e5eb;color:#245c75;font-weight:650}
.picnic-body{padding:28px 30px 10px}
.picnic-section-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.picnic-counter{white-space:nowrap;background:#e9f2f2;color:#477c7d;border:1px solid #d4e5e3;padding:8px 12px;border-radius:24px;font-size:12px;font-weight:650}
.picnic-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:23px 0 17px}
.picnic-feedback{padding:0 30px 20px;min-height:24px;color:#946441;font-size:14px;margin:0!important;position:sticky;bottom:0;background:#f7fafbf5;z-index:3}
.picnic-feedback:empty{padding-bottom:0;min-height:0}
.picnic-feedback:not(:empty){padding-top:14px;border-top:1px solid #e1e9ec}
.picnic-feedback.success,.picnic-done{color:#3b7868}
#picnicDialog .picnic-muted{font-size:12px;color:#70858d;line-height:1.65}
.picnic-welcome{max-width:770px;margin:0 auto;text-align:center;padding:5px 5px 15px}
.picnic-welcome .picnic-actions{justify-content:center}
.picnic-hero-art{display:flex;justify-content:center;margin:-4px auto 13px;width:220px}
.picnic-hero-art svg{width:85px;transform:rotate(-8deg)}
.picnic-hero-art svg:nth-child(2){width:98px;transform:translateY(-5px)}
.picnic-hero-art svg:nth-child(3){transform:rotate(8deg)}
.picnic-info,.picnic-story{padding:18px 23px;background:#edf4f3;border:1px solid #d4e5e1;border-radius:15px;color:#416d6d}
.picnic-stop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
#picnicDialog .picnic-stop{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:19px;min-height:150px;background:#fff}
.picnic-stop-icon{font-size:28px;margin-bottom:8px}
.picnic-stop small{font-size:9px;letter-spacing:.12em;color:#8096a1}
.picnic-stop strong{font-size:17px;margin:5px 0 10px;font-weight:650}
.picnic-stop>span:last-child{font-size:12px;color:#7b929a}
#picnicDialog .picnic-stop.visited{border-color:#a6cbc1;background:#f5faf8}
.picnic-options{border-top:1px solid #dce7eb;padding:15px 0;font-size:13px;color:#647f8a}
.picnic-options summary{cursor:pointer}
.picnic-options button{margin:5px 8px 5px 0}
.picnic-options a{color:#356f8a}
#picnicDialog .picnic-back{padding:0;border:0;background:none;font-size:12px;color:#668896;margin-bottom:20px}
.picnic-food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.picnic-food{display:flex;flex-direction:column;background:#fff;border:1px solid #dde8eb;border-radius:16px;padding:18px}
.picnic-food>svg{width:94px;height:94px;align-self:center;margin:0 0 15px}
#picnicDialog .picnic-food h4{font-size:16px;margin-bottom:6px}
.picnic-food-group{font-size:11px;color:#6c8c99}
#picnicDialog .picnic-food p{font-size:12px;color:#6b818a;margin:12px 0;flex:1}
.picnic-allergen,.picnic-cold{font-size:10px;padding:5px 0;color:#997250;display:block}
.picnic-cold{color:#628798}
#picnicDialog .picnic-food button{font-size:12px;margin-top:13px}
#picnicDialog [data-food][aria-pressed=true]{background:#e8f3ed;border-color:#a4c8b5;color:#3f705f}
.picnic-basket{display:flex;flex-wrap:wrap;gap:10px;padding:18px;background:#eef3f4;border:1px dashed #b9ccd3;border-radius:15px;margin-bottom:22px;min-height:100px}
#picnicDialog .picnic-basket button{width:125px;padding:10px 8px;display:flex;flex-direction:column;align-items:center;background:#fff;font-size:11px;text-align:center}
.picnic-basket svg{width:65px;height:65px}
.picnic-basket small{font-size:9px;color:#8b9ba1;margin-top:8px}
.picnic-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}
.picnic-panel{padding:21px;border:1px solid #dce7eb;border-radius:16px;background:#fff}
#picnicDialog .picnic-panel p{font-size:13px}
.picnic-panel li{font-size:13px;margin:12px 0}
.picnic-panel ol{padding-left:20px;margin:0}
.picnic-check{display:flex;align-items:flex-start;gap:9px;font-size:13px;margin:14px 0;cursor:pointer}
.picnic-check input{width:17px!important;height:17px;margin:3px 0 0;flex-shrink:0;accent-color:#538b80}
.picnic-check small{font-size:10px;color:#7f9299}
.picnic-answers{display:flex;flex-direction:column;gap:9px}
#picnicDialog .picnic-answers button{font-size:12px;text-align:left;line-height:1.6;background:#f7fafb}
.picnic-waste{margin-top:15px}
.picnic-next{font-size:13px;margin-top:20px;padding:18px 22px;border-left:3px solid #a6c4cf;background:#edf3f6;border-radius:0 12px 12px 0}
.picnic-next ul{margin:0;padding-left:19px}
.picnic-next li{margin:5px 0}
.picnic-complete{display:flex;gap:18px;align-items:center;padding:23px;border-radius:16px;background:#e7f3ec;border:1px solid #bad6c7;margin-top:20px}
.picnic-complete>span{font-size:38px;color:#548b74}
.picnic-pyramid-layout{display:grid;grid-template-columns:235px 1fr;gap:20px;align-items:start;margin:22px 0}
.picnic-current{padding:15px;background:#fff;border:1px solid #d9e5e8;border-radius:15px;text-align:center;min-height:230px}
.picnic-current svg{width:110px;height:110px}
#picnicDialog .picnic-current h4{margin:4px 0 7px}
#picnicDialog .picnic-current p{font-size:12px;color:#779099;margin-bottom:0}
.picnic-small-foods{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}
#picnicDialog .picnic-small-foods button{padding:4px;background:#fff}
.picnic-small-foods svg{width:100%;display:block}
#picnicDialog .picnic-small-foods button[aria-pressed=true]{outline:2px solid #7cabae;background:#edf7f5}
.picnic-pyramid{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0}
.picnic-tier{border-radius:10px;padding:8px 9px 9px;border:1px solid #d5e3e4;text-align:center}
.picnic-tier>small{font-size:8px;letter-spacing:.05em;color:#6c8085;display:block;margin-bottom:4px;font-weight:750}
.tier-top{width:58%;background:#f4ece3}
.tier-week{width:73%;background:#f4f0e4}
.tier-dairy{width:86%;background:#eaf1f2}
.tier-base{width:100%;background:#e8f0e7}
.tier-base>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
#picnicDialog .picnic-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:49px;width:100%;font-size:10px;line-height:1.4;padding:7px 3px;border-color:#ffffffa8;background:#ffffff78;color:#3e6269;gap:3px}
#picnicDialog .picnic-zone:hover{background:#fff;border-color:#80acae}
.picnic-zone>span{display:flex;justify-content:center;flex-wrap:wrap;min-height:5px}
.picnic-zone svg{width:30px;height:30px}
.picnic-pyramid-foot{display:grid;grid-template-columns:110px 1fr;gap:15px;align-items:center;width:100%;padding:11px;border:1px solid #c9dee5;border-radius:12px;background:#e7f1f5}
#picnicDialog .picnic-pyramid-foot p{font-size:11px;margin:0;color:#5a7b8a}
.picnic-big-check{font-size:65px;line-height:1.7;color:#6d9b80}
.picnic-hud{position:absolute;left:18px;top:18px;z-index:20;width:245px;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.picnic-hud button{pointer-events:auto;box-shadow:0 5px 20px #274c5810;border-color:#bbd4d7;background:#f5faf8ed;color:#416d70;padding:11px 14px;font-size:12px;text-align:left}
.picnic-hud-main span{font-weight:650;display:block}
.picnic-hud-main small{font-size:10px;color:#7e969b;display:block;margin-top:5px}
.picnic-hud-near{background:#dfeee5!important;font-weight:650}
.eye-mode .picnic-hud{left:auto;right:18px;top:auto;bottom:185px}
.picnic-markers{position:absolute;inset:0;z-index:7;pointer-events:none;overflow:hidden}
.picnic-markers button{position:absolute;pointer-events:auto;transform:translate(-50%,-100%);white-space:nowrap;padding:6px 10px 6px 6px;border-radius:22px;font:11px system-ui;background:#fffef8f5;border:1px solid #c9d7cd;color:#466564;box-shadow:0 5px 15px #23453818}
.picnic-markers button b{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e7eff1;margin-right:4px;color:#527789}
.picnic-markers button.visited b{background:#d4e9db;color:#3f7460}
.picnic-hud[hidden],.picnic-hud button[hidden],.picnic-markers[hidden],.picnic-markers button[hidden]{display:none!important}
@media(max-width:760px){#picnicDialog{width:calc(100vw - 16px);max-height:94dvh;border-radius:16px;font-size:14px}.picnic-top{padding:18px 18px 15px}#picnicDialog h2{font-size:20px}#picnicDialog h3{font-size:23px}.picnic-eyebrow{font-size:8px}.picnic-tabs{padding:0 12px 12px;gap:2px}#picnicDialog .picnic-tabs button{padding:9px 11px;font-size:12px}.picnic-body{padding:20px 17px 8px}.picnic-feedback{padding-right:17px;padding-left:17px}.picnic-stop-grid,.picnic-food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.picnic-two{grid-template-columns:1fr}.picnic-pyramid-layout{grid-template-columns:1fr}.picnic-card-bank{display:grid;grid-template-columns:140px 1fr;gap:12px}.picnic-current{min-height:160px;padding:10px}.picnic-current svg{width:65px;height:65px}#picnicDialog .picnic-current h4{font-size:12px}#picnicDialog .picnic-current p{font-size:10px}.picnic-small-foods{grid-template-columns:repeat(6,minmax(0,1fr));align-content:start;margin:0;gap:4px}.picnic-hud{left:10px;top:12px;width:210px}.eye-mode .picnic-hud{left:auto;right:10px;top:auto}.picnic-hud-main small{font-size:9px}.picnic-counter{font-size:10px;padding:7px 9px}.picnic-basket{padding:12px;gap:8px}#picnicDialog .picnic-basket button{width:calc(33.333% - 6px)}.picnic-food{padding:13px}.picnic-food>svg{width:75px;height:75px}.picnic-markers button{font-size:9px;padding:4px 7px 4px 4px}.picnic-markers button b{width:18px;height:18px}}
@media(max-width:420px){.picnic-small-foods{grid-template-columns:repeat(4,minmax(0,1fr))}.picnic-card-bank{grid-template-columns:120px 1fr}.picnic-tier>small{font-size:7px}#picnicDialog .picnic-zone{font-size:9px}.picnic-stop strong{font-size:14px}.picnic-food-grid{gap:9px}.picnic-section-heading{gap:7px}}
@media(prefers-reduced-motion:reduce){#picnicDialog button{transition:none}}

#picnicDialog,#picnicDialog *{font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important}

@media(max-width:760px){.picnic-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}#picnicDialog .picnic-tabs button{white-space:normal}}
