/* =========================================================
   נקודת מפגש — חנות המוצרים (order.html)
   ========================================================= */
.shop-page{ padding-bottom:60px; }
.shop-hero{ text-align:center; }
.shop-crumbs{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:18px 0 6px; font-size:var(--fs-small); color:var(--muted); }
.shop-crumbs:empty{ display:none; }
.shop-crumbs a{ color:var(--navy); font-weight:700; text-decoration:none; }
.shop-crumbs a:hover{ text-decoration:underline; }
.shop-crumbs b{ color:var(--ink); }
.shop-view{ margin-top:22px; }

/* ---- קטגוריות ---- */
.shop-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:18px; }
.shop-tile{
  position:relative; display:flex; flex-direction:column; gap:12px; text-decoration:none; color:var(--ink);
  background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:14px 14px 18px; overflow:hidden;
  box-shadow:0 6px 18px rgba(14,37,65,.06); transition:transform .2s, box-shadow .2s, border-color .2s;
  animation:shopIn .45s ease-out backwards; animation-delay:calc(var(--i, 0) * 45ms);
}
.shop-tile:hover, .shop-tile:focus-visible{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(14,37,65,.12); border-color:var(--gold); }
.st-vis{ display:grid; place-items:center; aspect-ratio:4 / 3; border-radius:14px; background:linear-gradient(160deg, var(--paper-deep), var(--gold-pale)); color:var(--navy); overflow:hidden; }
.st-vis svg{ width:42%; height:auto; }
.st-vis.has-img, .sp-vis.has-img, .sh-vis.has-img{ background:var(--paper-deep); }
.st-vis img, .sp-vis img, .sh-vis img, .ci-vis img{ width:100%; height:100%; object-fit:cover; display:block; }
.st-txt{ display:flex; flex-direction:column; gap:4px; text-align:center; }
.st-txt b{ font-family:var(--font-display); font-size:1.12rem; color:var(--navy); }
.st-txt small{ color:var(--muted); line-height:1.5; }
.sg-badge{ display:inline-block; padding:3px 10px; border-radius:999px; background:var(--paper-deep); color:var(--muted); font-size:.78rem; font-weight:700; }
.shop-tile .sg-badge{ position:absolute; top:22px; inset-inline-start:22px; }
.sg-badge.is-ready{ background:var(--navy); color:var(--gold-bright); }
.shop-tile.is-wide{ grid-column:1 / -1; flex-direction:row; align-items:center; background:var(--navy); color:var(--white); border-color:var(--navy); padding:16px 22px; }
.shop-tile.is-wide .st-vis{ width:84px; aspect-ratio:1; flex:none; background:rgba(255,255,255,.1); color:var(--gold-bright); }
.shop-tile.is-wide .st-txt{ text-align:start; }
.shop-tile.is-wide .st-txt b{ color:var(--gold-bright); }
.shop-tile.is-wide .st-txt small{ color:rgba(255,255,255,.8); }
.shop-help{ text-align:center; color:var(--muted); margin:28px 0 0; }
.shop-help a{ color:var(--navy); font-weight:700; }
@keyframes shopIn{ from{ opacity:0; transform:translateY(10px); } }

/* ---- כותרת קטגוריה ---- */
.shop-head{ display:flex; gap:16px; align-items:center; margin-bottom:20px; }
.sh-vis{ width:72px; height:72px; flex:none; display:grid; place-items:center; border-radius:16px; background:var(--gold-pale); color:var(--navy); overflow:hidden; }
.sh-vis svg{ width:60%; }
.shop-head h1, .pd h1, .cart h1{ font-family:var(--font-display); color:var(--navy); margin:0 0 4px; font-size:clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem); }
.shop-contact{ background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:22px; }
.shop-contact p{ margin:0 0 14px; line-height:1.7; }
.sc-links{ display:flex; flex-wrap:wrap; gap:10px; }

/* ---- מוצרים בקטגוריה ---- */
.shop-prods{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:18px; }
.shop-prod{ display:flex; flex-direction:column; text-decoration:none; color:var(--ink); background:var(--white); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;
  transition:transform .2s, box-shadow .2s, border-color .2s; animation:shopIn .45s ease-out backwards; animation-delay:calc(var(--i, 0) * 45ms); }
.shop-prod:hover, .shop-prod:focus-visible{ transform:translateY(-3px); box-shadow:0 14px 30px rgba(14,37,65,.12); border-color:var(--gold); }
.sp-vis{ display:grid; place-items:center; aspect-ratio:1; background:linear-gradient(160deg, var(--paper-deep), var(--gold-pale)); color:var(--navy); }
.sp-vis svg{ width:38%; }
.sp-txt{ display:flex; flex-direction:column; gap:4px; padding:14px 16px 6px; flex:1; }
.sp-txt b{ font-family:var(--font-display); color:var(--navy); font-size:1.08rem; }
.sp-txt small{ color:var(--muted); line-height:1.5; }
.sp-foot{ display:flex; justify-content:space-between; align-items:center; gap:8px; padding:10px 16px 16px; }
.sp-price{ font-weight:800; color:var(--navy); }
.sp-go{ color:var(--gold-text); font-weight:700; font-size:var(--fs-small); }

/* ---- דף מוצר ---- */
.pd{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1.1fr); gap:clamp(18px, 3vw, 40px); align-items:start; }
.pd-gal{ position:sticky; top:90px; display:flex; flex-direction:column; gap:10px; }
.pd-main{ aspect-ratio:1; border-radius:var(--radius); overflow:hidden; background:var(--paper-deep); border:1px solid var(--line); }
.pd-main img{ width:100%; height:100%; object-fit:contain; display:block; background:var(--white); }
.pd-main.is-icon{ display:grid; place-items:center; color:var(--navy); background:linear-gradient(160deg, var(--paper-deep), var(--gold-pale)); }
.pd-main.is-icon svg{ width:40%; }
.pd-thumbs{ display:flex; gap:8px; flex-wrap:wrap; }
.pd-thumbs button{ width:64px; height:64px; padding:0; border:2px solid var(--line); border-radius:10px; overflow:hidden; background:var(--white); cursor:pointer; }
.pd-thumbs button[aria-current="true"]{ border-color:var(--gold); }
.pd-thumbs img{ width:100%; height:100%; object-fit:cover; }
.pd-info{ background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:clamp(18px, 3vw, 28px); }
.pd-desc{ line-height:1.75; margin:6px 0 12px; white-space:pre-line; }
.pd-cat{ display:inline-flex; align-items:center; gap:6px; color:var(--navy); font-weight:700; text-decoration:none; padding:8px 14px; border-radius:12px; background:var(--gold-pale); margin:0 0 12px; }
.pd-cat .ic{ width:18px; height:18px; }
.pd-cat:hover{ background:var(--gold-bright); }
.pd-form{ margin-top:8px; }
.pd-form fieldset{ border:1px solid var(--line); border-radius:14px; padding:12px 14px 14px; margin:0; display:flex; flex-direction:column; gap:12px; }
.pd-form legend{ font-weight:700; padding:0 6px; color:var(--navy); }
.pd-yn{ display:flex; gap:18px; }
.pd-yn label, .pd-check, .co-pick label{ display:flex !important; align-items:center; gap:8px; font-weight:600; cursor:pointer; }
.pd-yn input, .pd-check input, .co-pick input{ width:auto !important; margin:0 !important; accent-color:var(--navy); }
.pd-embbox{ display:flex; flex-direction:column; gap:12px; }
.hint.is-ok{ color:#1E5B2B !important; font-weight:700 !important; }
.hint.is-bad{ color:#8A2424 !important; font-weight:700 !important; }
.pd-msearch{ max-width:260px; }
.pd-mgrid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(104px, 1fr)); gap:10px; max-height:460px; overflow:auto; padding:2px; }
.pd-m{ position:relative; display:flex !important; flex-direction:column; align-items:center; gap:2px; padding:8px; border:2px solid var(--line); border-radius:12px; cursor:pointer; text-align:center; font-weight:400 !important; background:var(--white); }
.pd-m[hidden]{ display:none !important; }
.pd-m input{ position:absolute; opacity:0; pointer-events:none; }
.pd-m:has(input:checked){ border-color:var(--navy); box-shadow:0 0 0 3px rgba(227,185,93,.45); }
.pd-m:has(input:focus-visible){ outline:2px solid var(--navy); outline-offset:2px; }
.pd-m.is-out{ opacity:.5; cursor:not-allowed; }
.pd-mimg{ width:100%; aspect-ratio:1; border-radius:8px; overflow:hidden; display:grid; place-items:center; background:var(--paper-deep); color:var(--navy); }
.pd-mimg img{ width:100%; height:100%; object-fit:cover; }
.pd-mimg svg{ width:50%; }
.pd-m b{ color:var(--navy); }
.pd-m small{ color:var(--muted); font-size:.75rem; }
.pd-m span:last-child{ font-size:.85rem; font-weight:700; }
.pd-qty input{ max-width:120px; }
.pd-sum, .co-total{ display:flex; justify-content:space-between; align-items:baseline; padding:12px 16px; border-radius:14px; background:var(--navy); color:var(--white); }
.pd-sum b, .co-total b{ font-family:var(--font-display); font-size:1.5rem; color:var(--gold-bright); }
.pd-sum b.muted{ font-size:1rem; color:rgba(255,255,255,.75); }
.pd-inq{ margin-top:18px; border-top:1px dashed var(--line); padding-top:12px; }
.pd-inq summary{ cursor:pointer; color:var(--gold-text); font-weight:700; }
.pd-inq .form{ margin-top:12px; }
.pd-inq textarea{ min-height:80px; }

/* ---- סל והזמנה ---- */
.cart{ display:grid; grid-template-columns:minmax(0, 1.2fr) minmax(0, 1fr); gap:clamp(18px, 3vw, 36px); align-items:start; }
.cart-items, .cart-checkout{ background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:clamp(18px, 3vw, 26px); }
.cart-checkout h2{ font-family:var(--font-display); color:var(--navy); margin:0 0 12px; }
.cart-items ul{ list-style:none; margin:14px 0; padding:0; display:flex; flex-direction:column; gap:10px; }
.cart-items li{ display:flex; gap:12px; align-items:center; padding:10px; border:1px solid var(--line); border-radius:14px; }
.ci-vis{ width:58px; height:58px; flex:none; border-radius:10px; overflow:hidden; display:grid; place-items:center; background:var(--gold-pale); color:var(--navy); }
.ci-vis svg{ width:60%; }
.ci-txt{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.ci-txt b{ color:var(--navy); }
.ci-txt small{ color:var(--muted); line-height:1.5; }
.ci-price{ white-space:nowrap; color:var(--navy); }
.link-more{ display:inline-flex; gap:6px; align-items:center; color:var(--navy); font-weight:700; text-decoration:none; }
.link-more .ic{ width:16px; height:16px; }
.co-pick{ border:1px solid var(--line); border-radius:14px; padding:10px 14px; margin:0; display:flex; flex-wrap:wrap; gap:8px 20px; }
.co-pick legend{ font-weight:700; padding:0 6px; }
.co-fb summary{ cursor:pointer; font-weight:700; color:var(--navy); }
.co-fb[open]{ display:flex; flex-direction:column; gap:10px; }
.co-stars{ display:flex; flex-direction:row-reverse; justify-content:flex-end; gap:4px; }
.co-stars label{ cursor:pointer; font-size:1.7rem; color:var(--line); line-height:1; }
.co-stars input{ position:absolute; opacity:0; }
.co-stars label:has(input:checked), .co-stars label:has(input:checked) ~ label, .co-stars label:hover, .co-stars label:hover ~ label{ color:var(--gold); }
.co-stars label:has(input:focus-visible){ outline:2px solid var(--navy); border-radius:4px; }
.co-note{ font-size:.82rem; }
.cart-checkout textarea{ min-height:70px; }
#payBox{ display:flex; flex-direction:column; gap:12px; }
#payBox .link-btn{ align-self:center; }
.payment-status{ text-align:center; color:var(--muted); margin:0; }
.shop-empty{ max-width:560px; margin:10px auto; text-align:center; background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:34px 24px; }
.shop-empty > .ic{ width:46px; height:46px; color:var(--gold); }
.shop-empty.is-ok > .ic{ color:#2F6B3A; }
.shop-empty p{ line-height:1.7; }

/* ---- כפתור הסל הצף ---- */
.shop-cartfab{ position:fixed; bottom:18px; inset-inline-end:18px; z-index:40; display:flex; align-items:center; gap:8px; padding:12px 18px; border-radius:999px;
  background:var(--navy); color:var(--white); text-decoration:none; font-weight:700; box-shadow:0 10px 26px rgba(14,37,65,.3); }
.shop-cartfab[hidden]{ display:none; }
.shop-cartfab .ic{ width:20px; height:20px; color:var(--gold-bright); }
.shop-cartfab b{ display:inline-grid; place-items:center; min-width:24px; height:24px; padding:0 6px; border-radius:12px; background:var(--gold-bright); color:var(--navy); font-size:.85rem; }

@media (max-width:820px){
  .pd, .cart{ grid-template-columns:1fr; }
  .pd-gal{ position:static; }
  .pd-main{ aspect-ratio:4 / 3; }
}
@media (max-width:560px){
  .shop-grid{ grid-template-columns:repeat(2, 1fr); gap:12px; }
  .shop-tile{ padding:10px 10px 14px; }
  .shop-tile .sg-badge{ top:16px; inset-inline-start:16px; font-size:.7rem; }
  .st-txt b{ font-size:1rem; }
  .shop-prods{ grid-template-columns:repeat(2, 1fr); gap:12px; }
  .sp-foot{ flex-direction:column; align-items:flex-start; }
  .shop-tile.is-wide .st-vis{ width:60px; }
}
@media (prefers-reduced-motion: reduce){ .shop-tile, .shop-prod{ animation:none; } }

/* ===== עדכון: כפתורים קטנים ונוחים יותר, כרטיסים קומפקטיים ===== */
.shop-hero{ padding-block:clamp(22px, 4vw, 38px) !important; }
.shop-hero h1{ font-size:clamp(1.6rem, 1.2rem + 1.6vw, 2.3rem); }
.shop-grid{ grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:14px; }
.shop-tile{ padding:10px 10px 14px; gap:10px; border-radius:16px; }
.st-vis{ aspect-ratio:16 / 11; border-radius:12px; }
.st-vis svg{ width:34%; }
.st-txt b{ font-size:1rem; }
.st-txt small{ font-size:.82rem; }
.shop-tile .sg-badge{ top:16px; inset-inline-start:16px; font-size:.72rem; padding:2px 8px; }
.shop-tile.is-wide{ padding:12px 18px; }
.shop-tile.is-wide .st-vis{ width:64px; }
.shop-prods{ grid-template-columns:repeat(auto-fill, minmax(200px, 1fr)); gap:14px; }
.sp-vis{ aspect-ratio:4 / 3; }
.sp-txt{ padding:12px 14px 4px; }
.sp-foot{ padding:8px 14px 12px; }
.shop-page .btn{ padding:10px 18px; font-size:.95rem; border-radius:12px; min-height:44px; }
.shop-page .btn .ic{ width:18px; height:18px; }
.pd-cat{ padding:6px 12px; font-size:.9rem; }
.pd-form{ gap:12px; }
.pd-buy{ display:flex; flex-direction:column; gap:10px; }
.pd-sum, .co-total{ padding:9px 14px; border-radius:12px; }
.pd-sum b, .co-total b{ font-size:1.25rem; }
.pd-actions{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.pd-actions .btn{ width:100%; justify-content:center; }
.cart-checkout .btn-gold{ width:100%; justify-content:center; }
#payBox .btn-gold{ width:100%; justify-content:center; }
.cart-items .icon-btn{ width:34px; height:34px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--line); background:var(--white); color:var(--muted); cursor:pointer; }
.cart-items .icon-btn:hover{ color:#8A2424; border-color:#8A2424; }
.cart-items .icon-btn .ic{ width:16px; height:16px; }
.shop-cartfab{ padding:9px 14px; font-size:.92rem; bottom:16px; }
@media (max-width:820px){
  /* בטלפון: הסכום והכפתורים נשארים צמודים לתחתית המסך */
  .pd-buy{ position:sticky; bottom:0; z-index:5; margin-inline:-6px; padding:10px 6px calc(10px + env(safe-area-inset-bottom)); background:linear-gradient(transparent, var(--white) 18%); }
  .pd-info{ padding-bottom:6px; }
}
@media (max-width:560px){
  .shop-grid, .shop-prods{ grid-template-columns:repeat(2, 1fr); gap:10px; }
  .st-txt small{ display:none; }
  .shop-page .btn{ padding:9px 12px; font-size:.9rem; }
  .shop-head{ gap:12px; }
  .sh-vis{ width:54px; height:54px; }
}
@media (max-width:820px){
  /* הכפתורים הצפים (נגישות, גלילה, סל) עולים מעל פס ההזמנה בדף מוצר */
  body:has(.pd-buy) .a11y{ bottom:calc(128px + env(safe-area-inset-bottom, 0px)); }
  body:has(.pd-buy) .sj{ bottom:calc(192px + env(safe-area-inset-bottom, 0px)); }
  body:has(.pd-buy) .shop-cartfab{ bottom:calc(128px + env(safe-area-inset-bottom, 0px)); }
}

/* ---- מלאי, קוד הנחה, תשלומים, מעקב ---- */
.pd-few{ color:#8A4B0E; font-weight:700; font-size:.8rem; margin:0; }
.pd-out{ margin:0; padding:10px 14px; border-radius:12px; background:#FBEAEA; color:#8A2424; font-weight:700; text-align:center; }
.co-coupon summary{ cursor:pointer; color:var(--navy); font-weight:700; font-size:.92rem; }
.co-crow{ display:flex; gap:8px; margin-top:8px; }
.co-crow input{ flex:1; text-transform:uppercase; }
.co-cmsg{ margin:6px 0 0; font-size:.85rem; color:#1E5B2B; font-weight:700; }
.co-cmsg:empty{ display:none; }
.co-cmsg.is-bad{ color:#8A2424; }
.co-break{ display:flex; flex-direction:column; gap:4px; font-size:.92rem; }
.co-break:empty{ display:none; }
.co-break div{ display:flex; justify-content:space-between; }
.co-break .is-disc{ color:#1E5B2B; font-weight:700; }
.co-pays{ display:flex; flex-direction:column; gap:6px; font-weight:600; }
.co-pays select{ font:inherit; padding:9px 10px; border:1px solid var(--line); border-radius:10px; background:var(--white); }
.trk{ max-width:640px; margin:0 auto; background:var(--white); border:1px solid var(--line); border-radius:var(--radius); padding:clamp(18px, 3vw, 28px); }
.trk h1{ font-family:var(--font-display); color:var(--navy); font-size:1.5rem; margin:0 0 16px; }
.trk-now{ color:var(--gold-text); }
.trk-steps{ list-style:none; margin:0 0 18px; padding:0; display:flex; flex-direction:column; gap:0; }
.trk-steps li{ display:flex; gap:12px; align-items:flex-start; position:relative; padding-bottom:14px; color:var(--muted); }
.trk-steps li:not(:last-child)::after{ content:''; position:absolute; inset-inline-start:13px; top:28px; bottom:0; width:2px; background:var(--line); }
.trk-steps li.is-done:not(:last-child)::after{ background:var(--gold); }
.trk-steps b{ width:28px; height:28px; flex:none; border-radius:50%; border:2px solid var(--line); background:var(--white); display:grid; place-items:center; color:var(--white); }
.trk-steps li.is-done b{ background:var(--navy); border-color:var(--navy); }
.trk-steps b .ic{ width:15px; height:15px; color:var(--gold-bright); }
.trk-steps li.is-done{ color:var(--ink); font-weight:700; }
.trk-steps li.is-now span{ color:var(--navy); }
.trk-steps small{ display:block; font-weight:400; color:var(--muted); font-size:.82rem; }
.trk-items{ list-style:none; margin:0 0 10px; padding:0; display:flex; flex-direction:column; gap:8px; }
.trk-items li{ display:flex; flex-direction:column; padding:10px 12px; border:1px solid var(--line); border-radius:12px; }
.trk-items b{ color:var(--navy); }
.trk-items small{ color:var(--muted); }
.trk-sum{ margin:0 0 8px; }
/* כותרת החנות: שורת המשנה ממורכזת מתחת לכותרת */
.shop-hero p{ margin-inline:auto; }
