/* Base móvil y dirección visual v20. */
:root {
  --ink: #171916;
  --muted: #5e625d;
  --terra: #806025;
  --sage: #3f6872;
  --paper: #f8f5ec;
  --line: #d9d1bd;
  --soft: #ebe2c9;
  --green: #e4eff1;
}

body {
  padding-top: env(safe-area-inset-top);
}

.wrap {
  padding-right: max(20px, env(safe-area-inset-right));
  padding-left: max(20px, env(safe-area-inset-left));
}

.brand {
  min-height: 44px;
}

.top {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  justify-content: stretch;
  gap: 12px;
  padding: 18px 0 14px;
}

.top .brand,
.top nav {
  justify-self: center;
  justify-content: center;
}

.brand img {
  display: block;
  width: auto;
  height: 92px;
  mix-blend-mode: multiply;
}

.hours-status {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  margin: 12px 0 0;
  padding: 8px 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  color: var(--muted);
  font-size: 13px;
  font-weight: 650;
}

.hours-status span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #8b8c86;
}

.hours-status.open span {
  background: #27824b;
  box-shadow: 0 0 0 4px #dcefe3;
}

.hero-actions .primary {
  flex-basis: 100%;
}

.diet-link {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 48px;
  margin-top: 12px;
  padding: 11px 14px;
  border: 1px solid #a9c5ca;
  border-radius: 12px;
  background: var(--green);
  color: var(--sage);
  text-decoration: none;
}

.diet-link > span:first-child {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid var(--sage);
  border-radius: 50%;
  background: #fff;
  font-size: 18px;
}

.diet-link strong,
.diet-link small {
  display: block;
  line-height: 1.2;
}

.diet-link small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}

.quick-add {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}

.quick-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  min-height: 56px;
  padding: 10px 13px;
  text-align: left;
}

.quick-button span,
.quick-button small {
  display: block;
}

.quick-button small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
  text-align: right;
}

.quick-button.recommended {
  border-color: var(--sage);
  background: var(--green);
  color: #203f46;
}

.details-button {
  min-height: 44px;
  border-style: dashed;
  color: var(--sage);
}

.upsell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 20px 0 28px;
  padding: 18px;
  border: 1px solid #c7dadd;
  border-radius: 18px;
  background: var(--green);
}

.upsell[hidden] {
  display: none;
}

.upsell h3 {
  margin: 3px 0;
}

.upsell p {
  color: var(--muted);
  font-size: 13px;
}

.upsell button {
  flex-shrink: 0;
  border-color: var(--sage);
  background: var(--sage);
  color: #fff;
}

.back-home {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  min-height: 48px;
  margin-top: 18px;
  padding: 8px 14px 8px 11px;
  border: 1px solid #d8c8bb;
  border-radius: 999px;
  background: #fff;
  color: var(--terra);
  text-decoration: none;
  box-shadow: 0 4px 14px rgba(65, 43, 31, 0.07);
}

.back-home > span:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border-radius: 50%;
  background: var(--soft);
  line-height: 0;
}

.back-home-icon svg {
  display: block;
  width: 18px;
  height: 18px;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.back-home strong,
.back-home small {
  display: block;
  line-height: 1.15;
}

.back-home small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
}

.back-home + .hero {
  padding-top: 22px;
}

.searchbox {
  top: env(safe-area-inset-top);
}

.cartbar {
  padding-right: max(16px, env(safe-area-inset-right));
  padding-left: max(16px, env(safe-area-inset-left));
}

dialog {
  max-height: 90vh;
  max-height: 90dvh;
}

.sheet {
  padding-right: max(20px, env(safe-area-inset-right));
  padding-left: max(20px, env(safe-area-inset-left));
}

@media (max-width: 360px) {
  .wrap {
    padding-right: max(14px, env(safe-area-inset-right));
    padding-left: max(14px, env(safe-area-inset-left));
  }

  .quick-button,
  .upsell {
    align-items: stretch;
    flex-direction: column;
  }

  .quick-button small {
    text-align: left;
  }

  .upsell button {
    width: 100%;
  }
}

@media (min-width: 700px) {
  .quick-add {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Dirección visual gastronómica v20: Sushi Zen, tinta, oro y celeste. */
:root{--ink:#13232a;--muted:#667176;--terra:#a8792b;--sage:#3d7583;--paper:#f6f2e8;--line:#d9d1c1;--soft:#eee5d2;--green:#e6f1f3;--night:#10232c;--night-2:#18343f;--gold:#c69a45;--ice:#b9dfe6;--white:#fffdf8;--shadow-sm:0 5px 18px rgba(16,35,44,.07);--shadow-md:0 14px 38px rgba(16,35,44,.12)}
html{scroll-behavior:smooth}body{min-height:100vh;background:radial-gradient(circle at 12% -10%,rgba(185,223,230,.26),transparent 30rem),var(--paper);color:var(--ink);font-size:16px;line-height:1.55}body::before{content:"";position:fixed;inset:0 0 auto;height:3px;z-index:60;background:linear-gradient(90deg,var(--gold),var(--ice),var(--gold))}::selection{background:var(--ice);color:var(--night)}:focus-visible{outline:3px solid var(--ice);outline-offset:3px}.wrap{width:min(100%,820px)}
.top{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:10px;padding:17px 0 16px;border:0}.brand{position:relative;display:grid;place-items:center;min-width:132px;min-height:118px;padding:0 18px;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none}.brand::after{content:none}.brand img{width:auto;height:112px;object-fit:contain;filter:drop-shadow(0 7px 10px rgba(16,35,44,.14))}.top nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,360px);gap:8px;padding:5px;border:1px solid rgba(16,35,44,.1);border-radius:16px;background:rgba(255,253,248,.82);box-shadow:var(--shadow-sm)}.navlink{min-height:44px;padding:8px 14px;border:0;border-radius:11px;color:var(--night);font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.navlink:hover{background:var(--soft)}.hours-status{justify-content:center;width:fit-content;min-height:34px;margin:0 auto 8px;padding:7px 13px;border-color:rgba(16,35,44,.12);border-radius:999px;background:rgba(255,253,248,.72);font-size:12px;font-weight:750;box-shadow:0 3px 12px rgba(16,35,44,.04)}.hours-status span{width:8px;height:8px}.hours-status.open span{background:#2c9960;box-shadow:0 0 0 4px rgba(44,153,96,.14)}
.hero{position:relative;margin:14px 0 26px;padding:clamp(30px,8vw,54px) clamp(22px,6vw,48px);overflow:hidden;border-radius:28px;background:radial-gradient(circle at 93% 4%,rgba(185,223,230,.16),transparent 13rem),linear-gradient(145deg,var(--night),var(--night-2));color:var(--white);box-shadow:var(--shadow-md)}.hero::after{content:"";position:absolute;right:-44px;bottom:-70px;width:170px;height:170px;border:1px solid rgba(198,154,69,.3);border-radius:50%;box-shadow:0 0 0 18px rgba(198,154,69,.06),0 0 0 40px rgba(185,223,230,.035)}.hero>*{position:relative;z-index:1}.eyebrow{color:var(--gold);font-size:11px;font-weight:850;letter-spacing:.2em}.hero h1{max-width:620px;margin:11px 0 17px;color:var(--white);font-size:clamp(35px,9vw,55px);line-height:1.03;letter-spacing:-.035em}.hero .muted{color:rgba(255,253,248,.72)}.intro{max-width:560px;font-size:clamp(15px,3.8vw,17px)}.hero-actions{gap:10px;margin-top:24px}.biglink{min-height:56px;padding:14px 19px;border-radius:14px;font-size:15px;letter-spacing:.01em;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.biglink:hover{transform:translateY(-1px)}.hero-actions .primary,button.primary,.primary{border-color:var(--gold);background:var(--gold);color:#17252a;box-shadow:0 8px 24px rgba(198,154,69,.2)}.hero-actions .primary{flex-basis:100%}.hero-actions .secondary{border-color:rgba(185,223,230,.38);background:rgba(255,255,255,.06);color:var(--white)}.diet-link{min-height:58px;padding:11px 14px;border-color:rgba(185,223,230,.38);border-radius:14px;background:rgba(185,223,230,.1);color:var(--white);transition:background .18s ease,border-color .18s ease}.diet-link:hover{border-color:var(--ice);background:rgba(185,223,230,.17)}.diet-link>span:first-child{width:34px;height:34px;flex:0 0 34px;border-color:rgba(185,223,230,.55);background:transparent;color:var(--ice)}.diet-link small{color:rgba(255,253,248,.63);font-size:11px}
.home-section{padding:30px 0 26px;border:0}.home-section h2{margin-bottom:17px;color:var(--night);font-size:clamp(26px,6vw,34px)}.guide{grid-template-columns:repeat(3,1fr);gap:12px}.guide a{position:relative;min-height:146px;padding:21px 17px;overflow:hidden;border-color:rgba(16,35,44,.1);border-radius:20px;background:rgba(255,253,248,.86);box-shadow:var(--shadow-sm);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.guide a::after{content:"";position:absolute;right:14px;bottom:14px;width:28px;height:2px;background:var(--gold);box-shadow:0 -5px 0 rgba(61,117,131,.35)}.guide a:hover{transform:translateY(-2px);border-color:rgba(198,154,69,.55);box-shadow:var(--shadow-md)}.guide strong{color:var(--night);font-family:Georgia,serif;font-size:20px;font-weight:500}.guide span{color:var(--muted);font-size:13px}.notice{border:1px solid #c8dde0;border-radius:14px;background:#e9f3f4;color:#294e57}
.back-home{min-height:46px;margin-top:16px;padding:7px 13px 7px 9px;border-color:rgba(16,35,44,.12);background:rgba(255,253,248,.84);color:var(--night);box-shadow:var(--shadow-sm)}.back-home>span:first-child{background:var(--night);color:var(--ice)}.back-home small{font-size:10px}.back-home+.hero{margin-top:18px}.searchbox{margin:0 -8px;padding:12px 8px 9px;border:0;background:rgba(246,242,232,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.searchrow{gap:8px;padding:6px;border:1px solid rgba(16,35,44,.12);border-radius:17px;background:var(--white);box-shadow:var(--shadow-sm)}.searchrow input{min-height:44px;padding:9px 11px;border:0;border-radius:11px;background:transparent}.searchrow button{min-height:44px;border:0;border-radius:11px;background:var(--night);color:var(--white);font-size:13px}.categories{gap:7px;padding:11px 1px 4px;scrollbar-width:none}.categories::-webkit-scrollbar{display:none}.categories button{min-height:40px;padding:8px 13px;border-color:rgba(16,35,44,.12);background:rgba(255,253,248,.72);color:var(--night);font-size:12px;font-weight:700}.categories button[aria-pressed=true],.chip[aria-pressed=true]{border-color:var(--sage);background:var(--sage);color:#fff}.filter-summary{margin-top:7px;padding:7px 3px 2px;color:var(--muted)}.filter-summary button{min-height:38px;padding:6px 11px;border-radius:10px;color:#8a4f3e;font-size:12px}.results{padding:18px 3px 13px;font-size:12px;font-weight:650;letter-spacing:.02em}
.section-heading{display:flex;align-items:center;gap:12px;margin:30px 0 15px;color:var(--night);font-size:clamp(24px,6vw,31px)}.section-heading::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(198,154,69,.65),transparent)}.card{position:relative;padding:20px;border-color:rgba(16,35,44,.1);border-radius:20px;background:rgba(255,253,248,.9);box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card:hover{transform:translateY(-1px);border-color:rgba(198,154,69,.42);box-shadow:var(--shadow-md)}.card h3{color:var(--night);font-family:Georgia,serif;font-size:21px;font-weight:500;letter-spacing:-.01em}.card .description{margin:8px 0 15px;color:var(--muted);font-size:14px;line-height:1.52}.tag{margin-bottom:10px;padding:4px 9px;border:1px solid #c6dde0;border-radius:999px;background:#eaf3f4;color:#315f69;font-size:10px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}.tag.warn{border-color:#ead5a7;background:#fff5dc;color:#74551d}.quick-add{gap:8px;margin-top:17px}.quick-button{min-height:52px;padding:10px 14px;border-color:rgba(16,35,44,.12);border-radius:13px;background:var(--white);color:var(--night);box-shadow:0 3px 10px rgba(16,35,44,.04)}.quick-button:hover{border-color:var(--gold);background:#fff9ec}.quick-button span{font-size:14px}.details-button{min-height:43px;border-color:rgba(61,117,131,.36);border-style:solid;background:transparent;color:var(--sage);font-size:13px}.price{color:var(--night);font-size:20px}.card .bottom{align-items:end}.card .bottom button{flex-shrink:0}
.cartbar{padding:10px max(14px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));border-top-color:rgba(198,154,69,.24);background:rgba(16,35,44,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.cartbar a{min-height:58px;border:1px solid rgba(198,154,69,.52);border-radius:15px;background:var(--gold);color:#122229;box-shadow:0 8px 22px rgba(0,0,0,.2)}.cartbar small{color:rgba(18,34,41,.7)}.lineitem{margin-bottom:10px;padding:20px;border:1px solid rgba(16,35,44,.1);border-radius:18px;background:rgba(255,253,248,.86);box-shadow:var(--shadow-sm)}.linehead strong{color:var(--night);font-family:Georgia,serif;font-size:19px;font-weight:500}.controls button{border-color:rgba(16,35,44,.14);background:var(--white)}.controls .remove{color:#8c4c3c}.total{margin-top:20px;padding:20px 3px 8px;border-top:1px solid var(--line);color:var(--night)}.upsell{padding:19px;border-color:rgba(61,117,131,.3);border-radius:19px;background:linear-gradient(135deg,#e9f3f4,#f5f2e9);box-shadow:var(--shadow-sm)}.upsell h3{color:var(--night);font-family:Georgia,serif;font-weight:500}.upsell p{font-size:12px}.checkout{margin-top:28px;padding:24px;border:1px solid rgba(16,35,44,.1);border-radius:22px;background:rgba(255,253,248,.86);box-shadow:var(--shadow-sm)}.checkout h2{color:var(--night)}.field{color:var(--night);font-size:12px;letter-spacing:.02em}input,select,textarea{border-color:rgba(16,35,44,.2);background:var(--white)}input:focus,select:focus,textarea:focus{border-color:var(--sage);outline:3px solid rgba(185,223,230,.38)}.wa{border-color:#27734b;background:#27734b;box-shadow:0 8px 20px rgba(39,115,75,.16)}
dialog{border:1px solid rgba(198,154,69,.28);border-radius:26px 26px 0 0;background:var(--paper);box-shadow:0 -18px 60px rgba(6,19,24,.28)}dialog::backdrop{background:rgba(5,18,23,.66);backdrop-filter:blur(3px)}.sheet{padding-top:22px;padding-bottom:calc(25px + env(safe-area-inset-bottom))}.sheet-head{padding-bottom:14px;border-bottom:1px solid var(--line)}.sheet-head h2{color:var(--night);font-size:27px}.close{border-color:rgba(16,35,44,.12);border-radius:50%;background:var(--white);color:var(--night)}.variants{gap:9px}.variant{border-color:rgba(16,35,44,.14);border-radius:14px;background:var(--white)}.variant:has(input:checked){border-color:var(--gold);background:#fff7e6;box-shadow:0 0 0 1px var(--gold)}.variant input,.check input{accent-color:var(--sage)}.chips{gap:7px}.chip{min-height:42px;border-color:rgba(16,35,44,.15);background:var(--white);font-size:12px}.toast{bottom:106px;border:1px solid rgba(198,154,69,.4);border-radius:999px;background:var(--night);box-shadow:var(--shadow-md)}.empty{border-color:rgba(61,117,131,.4);border-radius:20px;background:rgba(255,253,248,.55)}.footer{margin-top:42px;padding:26px 0 8px;border-color:rgba(16,35,44,.12);text-align:center;line-height:1.7}
@media(max-width:600px){.guide{grid-template-columns:1fr}.guide a{display:block;min-height:98px;padding:18px}.guide span{margin-top:5px;padding-right:42px}.hero{margin-right:-4px;margin-left:-4px}}@media(max-width:380px){.wrap{padding-right:max(14px,env(safe-area-inset-right));padding-left:max(14px,env(safe-area-inset-left))}.hero{padding:28px 19px;border-radius:24px}.hero h1{font-size:34px}.searchrow{display:grid;grid-template-columns:minmax(0,1fr) auto}.card{padding:17px}.upsell{align-items:stretch;flex-direction:column}.upsell button{width:100%}.checkout{padding:19px 16px}}@media(min-width:700px){.top{padding-top:28px}.hero{margin-top:20px}.quick-add{grid-template-columns:repeat(2,minmax(0,1fr))}dialog{margin:auto;border-radius:26px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important}}

/* Acciones claras para filtros activos y sugerencias antes de cerrar el pedido. */
.active-filters{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:10px}
.empty-actions{display:grid;gap:10px;margin-top:20px}.empty-actions .biglink{justify-content:center;width:100%;text-align:center}.empty-actions .secondary{border-color:rgba(16,35,44,.16);background:var(--white);color:var(--night)}
.top.compact{grid-template-columns:auto minmax(0,1fr);align-items:center;justify-items:stretch;gap:12px;padding:10px 0}.top.compact .brand{min-width:54px;min-height:58px;padding:0}.top.compact .brand img{height:56px}.top.compact nav{justify-self:end;width:min(100%,300px)}.internal-wrap .hours-status{margin-top:4px}.internal-wrap .back-home{margin-top:10px}.internal-wrap .back-home+.hero{margin-top:12px}.internal-wrap .hero{padding:24px clamp(19px,5vw,34px);border-radius:22px}.internal-wrap .hero h1{margin:8px 0 12px;font-size:clamp(30px,8vw,42px)}.hero-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:18px;padding:9px 14px;border:1px solid rgba(185,223,230,.52);border-radius:12px;background:rgba(255,255,255,.08);color:var(--white);font-size:13px;font-weight:800;text-decoration:none}.hero-link:hover{background:rgba(185,223,230,.17)}
.tag{font-size:12px;letter-spacing:.01em;text-transform:none}.categories button{min-height:44px}.filter-summary button{min-height:44px}.results{font-size:13px}.filter-actions{position:sticky;bottom:0;z-index:4;display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:9px;margin:24px -20px -25px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid rgba(16,35,44,.12);background:rgba(246,242,232,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.filter-actions button{min-height:48px}.removal-options{margin:16px 0;padding:14px;border:1px solid rgba(61,117,131,.3);border-radius:14px;background:#edf5f5}.removal-options legend{padding:0 5px;color:var(--night);font-weight:800}.removal-options small{display:block;color:var(--muted);font-size:12px}.compact-notice button,.item-note button{min-height:40px;margin-left:6px;padding:6px 10px}.item-note{margin-top:8px;color:var(--sage);font-size:14px;font-weight:700}.filter-warning{margin-bottom:16px}.filter-warning p{margin-top:10px}.checkout-bar{position:fixed;right:0;bottom:0;left:0;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:12px;width:min(100%,760px);margin:auto;padding:10px max(14px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));border-top:1px solid rgba(198,154,69,.45);background:rgba(16,35,44,.96);color:var(--white);box-shadow:0 -10px 28px rgba(6,19,24,.24);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.checkout-bar span{display:grid;min-width:88px}.checkout-bar small{color:rgba(255,255,255,.68);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.checkout-bar strong{font-size:18px}.checkout-bar .wa{min-height:52px;margin:0;padding:10px 16px;border-color:var(--gold);background:var(--gold);color:#122229;white-space:nowrap}.checkout-bar .wa:disabled{background:#8bad9d;border-color:#8bad9d}.internal-wrap:has(.checkout-bar){padding-bottom:170px}
.active-filter-actions{display:flex;gap:8px;flex-wrap:wrap}
.active-filter-actions a,.active-filter-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px;border:1px solid rgba(61,117,131,.35);border-radius:11px;background:var(--white);color:var(--night);font-weight:750;text-decoration:none}
.upsell{display:block}
.upsell-head{margin-bottom:12px}
.upsell-options{display:grid;gap:9px}
.upsell-option{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:54px;padding:12px 14px;text-align:left;gap:12px}
.upsell-option span{line-height:1.25}
.upsell-option strong{white-space:nowrap}
@media(max-width:520px){.active-filters{align-items:stretch;flex-direction:column}.active-filter-actions>*{flex:1}}
@media(min-width:600px){.upsell-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* El encabezado mantiene la misma geometría en todas las pantallas. */
.top.compact{grid-template-columns:minmax(0,1fr);align-items:initial;justify-items:center;gap:10px;padding:17px 0 16px}
.top.compact .brand{min-width:132px;min-height:118px;padding:0 18px}
.top.compact .brand img{height:112px}
.top.compact nav{justify-self:auto;width:min(100%,360px)}

/* v35: fotografías compactas a la derecha, sin desplazar la compra. */
.product-summary{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:20px;align-items:start}
.product-copy{min-width:0}
.product-photo{margin:0}
.product-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:12px;background:#faf8f4}
.product-photo figcaption{margin-top:5px;font-size:10px;line-height:1.4;text-align:right;color:var(--muted)}
@media(max-width:600px){.product-summary{grid-template-columns:minmax(0,1fr) 112px;gap:12px}.product-photo img{border-radius:9px}}
@media(max-width:360px){.product-summary{grid-template-columns:minmax(0,1fr) 92px;gap:10px}}
/* Optional requested readiness window; the local confirms it. */
.time-window{min-width:0;margin:24px 0;padding:18px;border:1px solid #cbd9dc;border-radius:16px}
.time-window legend{font-weight:700;padding:0 6px}
.time-window p{font-size:14px;line-height:1.5;margin:8px 0}
.time-window-inputs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.time-window-inputs input{width:100%;min-width:0;box-sizing:border-box}
