/* v4.3: ordering clarity, less clicking, fixed modal and product card spacing. */
/* Pairings: show all selected items together; no hidden carousel */
.woocommerce div.product .summary .sd-pairings,.sd-pairings{overflow:visible!important;padding:18px!important}
.sd-pairings-top{margin-bottom:13px!important}
.sd-pairings-top .sd-pairings-subtitle,.sd-pairings-actions{display:none!important}
.sd-pairings-track{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px!important;overflow:visible!important;padding:0!important;scroll-snap-type:none!important}
.sd-pairing-item{min-width:0!important;width:100%!important;flex:none!important;display:flex;align-items:center;gap:7px;padding:10px;border:1px solid #ead9c9;border-radius:14px;background:#fff}
.sd-pairing-card{min-width:0;flex:1;align-items:center;text-align:left;display:flex;gap:9px}
.sd-pairing-photo{width:60px!important;height:60px!important;flex:0 0 60px!important;border-radius:12px}
.sd-pairing-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}
.sd-pairing-name{font-size:13px!important;line-height:1.2!important;font-weight:850}
.sd-pairing-info>span:last-child:not(.sd-pairing-peek){font-size:12px}
.sd-pairing-info .sd-pairing-peek{font-size:10px;font-weight:700;color:#9a3853}
.sd-pairing-add{width:37px!important;height:37px!important;flex:0 0 37px!important;background:#ae002e;color:#fff;border-radius:50%;font-size:23px}
.sd-pairing-add:hover{background:#ffd448;color:#71142d}
@media(max-width:650px){.sd-pairings-track{grid-template-columns:1fr}.sd-pairing-item{min-height:72px}.sd-pairings-top h3{font-size:20px!important}}

/* Centre the popup in both axes. Respect WP admin bar and the keyboard on mobile. */
.sd-quickview[hidden],.sd-quickview-overlay[hidden]{display:none!important}
.sd-quickview{position:fixed;inset:var(--wp-admin--admin-bar--height,0px) 0 0 0!important;height:auto;max-height:none;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;overscroll-behavior:contain}
.sd-quickview-content{width:min(920px,100%);max-height:calc(100dvh - var(--wp-admin--admin-bar--height,0px) - 48px);overflow-y:auto;border-radius:28px;box-shadow:0 26px 80px rgba(26,4,10,.35)}
.sd-qv-shell{box-shadow:none;min-height:0}
.sd-qv-add,.sd-qv-shell .button.button-red.sd-qv-add,.sd-qv-shell button.sd-qv-add{display:inline-flex;align-items:center;justify-content:center;min-height:53px;border:0!important;border-radius:14px!important;background:#ffd23f!important;color:#461521!important;font-size:15px!important;font-weight:900!important;box-shadow:0 5px 0 #e7b529!important;cursor:pointer;opacity:1!important}
.sd-qv-add:hover{background:#ffe06a!important;transform:translateY(-2px)}
.sd-qv-add:disabled{opacity:.7!important;cursor:wait}
@media(max-width:760px){.sd-quickview{align-items:center;padding:12px}.sd-quickview-content{max-height:calc(100dvh - var(--wp-admin--admin-bar--height,0px) - 24px);border-radius:20px}.sd-qv-shell{grid-template-columns:1fr;gap:12px;padding:13px}.sd-qv-media{height:clamp(165px,28dvh,260px);min-height:0}.sd-qv-copy{gap:9px}.sd-qv-copy h3{font-size:27px}.sd-qv-price{font-size:26px}.sd-qv-desc{font-size:13px;line-height:1.45}}

/* Same-category rail: remove the large empty area forced by description flex growth */
.sd-discover .sd-dish-rail>.food-card{height:auto!important;min-height:0!important}
.sd-discover .food-card-meta{min-height:0!important;flex:1;display:flex;flex-direction:column;padding-top:15px}
.sd-discover .food-card-meta>div:first-child{display:flex;flex-direction:column;gap:0}
.sd-discover .food-card p{flex:none!important;height:auto!important;min-height:0!important;margin-bottom:0!important;-webkit-line-clamp:3;line-clamp:3}
.sd-discover .food-card-bottom{margin-top:auto!important;padding-top:20px;gap:8px;align-items:center}
.sd-discover .food-card .price{font-size:clamp(17px,1.5vw,21px)}
.sd-discover .food-card-buy{gap:6px}
.sd-discover .food-add{flex:0 0 42px;width:42px;height:42px}
.sd-discover-head h2{font-size:clamp(36px,4.1vw,61px)!important;line-height:1.02!important;letter-spacing:-.045em!important}
.sd-discover-head h2 em{font-style:italic!important;font-weight:650!important}
.sd-discover-head p{font-size:clamp(16px,1.55vw,21px)!important;font-weight:750!important;color:#76554c!important;margin-top:11px!important}
@media(max-width:650px){.sd-discover-head h2{font-size:clamp(32px,7vw,42px)!important}.sd-discover .food-card-bottom{gap:8px}.sd-discover .food-card .price{font-size:18px}}

/* Meal completion categories: home-style rich tiles with food image completely visible */
.sd-missing-intro h2{font:850 clamp(36px,4.4vw,62px)/1.06 var(--font-display),sans-serif!important;letter-spacing:-.05em!important}
.sd-missing-intro h2 em{font-style:normal;color:#241715!important}
.sd-missing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.sd-missing-home-card{min-height:270px!important;display:flex;flex-direction:column;position:relative;justify-content:flex-end;border:0!important;overflow:hidden!important;border-radius:21px!important;background:linear-gradient(135deg,#aa002b,#43051a)!important;color:#fff!important;box-shadow:0 8px 22px rgba(54,0,16,.12)}
.sd-missing-home-card .sd-missing-visual{position:absolute;inset:0;width:100%;height:100%!important;background:radial-gradient(circle at 62% 20%,#b90c36,#4a061e)!important}
.sd-missing-home-card .sd-missing-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(52,0,18,0) 20%,rgba(52,0,18,.26) 45%,rgba(39,0,12,.88) 100%);pointer-events:none}
.sd-missing-home-card .sd-course-photo{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;padding:0!important;background:transparent!important;-webkit-mask-image:radial-gradient(ellipse 76% 76% at 50% 44%,#000 40%,transparent 98%);mask-image:radial-gradient(ellipse 76% 76% at 50% 44%,#000 40%,transparent 98%);transform:none!important;transition:transform .35s}
.sd-missing-home-card:hover .sd-course-photo{transform:scale(1.04)!important}
.sd-missing-home-card .sd-course-monogram{display:grid;place-items:center;color:#e4bd97!important;background:transparent!important;width:100%!important;height:100%!important}
.sd-missing-home-card .sd-course-monogram svg{width:75px;height:75px}
.sd-missing-home-card .sd-missing-card-copy{position:relative;z-index:1;padding:18px 20px 20px!important;display:flex;min-height:0;gap:4px;color:#fff!important}
.sd-missing-home-card .sd-missing-card-copy strong{color:#fff!important;font-size:clamp(22px,2.2vw,32px)!important;line-height:1.03}
.sd-missing-home-card .sd-missing-card-copy small{color:#ffe4d5!important;font-size:12px!important}
.sd-missing-home-card .sd-missing-cta{margin-top:6px;padding-top:0;font-size:12px!important;font-weight:850;color:#ffdb54!important}
@media(max-width:850px){.sd-missing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.sd-missing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.sd-missing-home-card{min-height:205px!important;border-radius:17px!important}.sd-missing-home-card .sd-missing-card-copy{padding:12px!important}.sd-missing-home-card .sd-missing-card-copy strong{font-size:21px!important}.sd-missing-home-card .sd-missing-card-copy small{font-size:10px!important}}
