/* ==========================================================================
   Sumisu Knives — "toegevoegd aan winkelwagen"-popup (vervangt YITH WACP, sep 2026)
   Desktop: gecentreerde modal  |  Mobiel ≤640px: bottom sheet
   ========================================================================== */
.sk-atc{
  --ska-ink:#0d0d0d; --ska-gold:#c8a96e; --ska-gold2:#e2c898; --ska-cta:#b87935; --ska-cta2:#e6b76f;
  --ska-warm:#f7f3ee; --ska-cream:#ede5d8; --ska-muted:#8a7d70; --ska-line:rgba(13,13,13,.08);
  --ska-serif:'Cormorant Garamond',Georgia,serif; --ska-sans:'Inter',system-ui,sans-serif; --ska-ease:cubic-bezier(.2,.7,.2,1);
  position:fixed; inset:0; z-index:100060; display:flex; align-items:center; justify-content:center; padding:24px;
  visibility:hidden; pointer-events:none;
}
.sk-atc.is-open{ visibility:visible; pointer-events:auto; }
.sk-atc__backdrop{ position:absolute; inset:0; background:rgba(8,8,8,.62); opacity:0; transition:opacity .28s ease; backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); }
.sk-atc.is-open .sk-atc__backdrop{ opacity:1; }
.sk-atc__box{
  position:relative; width:min(520px,100%); max-height:calc(100vh - 48px); overflow:auto; outline:none;
  background:#fff; border-radius:14px; box-shadow:0 40px 90px -20px rgba(0,0,0,.55);
  opacity:0; transform:translateY(14px) scale(.985); transition:opacity .25s ease, transform .35s var(--ska-ease);
}
.sk-atc.is-open .sk-atc__box{ opacity:1; transform:none; }
.sk-atc__close{
  position:absolute; top:14px; right:14px; z-index:2; width:40px; height:40px; display:inline-flex; align-items:center; justify-content:center;
  padding:0; border-radius:50%; background:rgba(255,255,255,.08) !important; border:1px solid rgba(200,169,110,.35) !important; color:#f0ebe3; cursor:pointer;
  transition:border-color .2s ease, color .2s ease;
}
.sk-atc__close:hover{ border-color:var(--ska-gold2) !important; color:var(--ska-gold2); }

/* kop: donker met gouden accent */
.sk-atc__head{
  display:flex; align-items:center; gap:16px; padding:26px 70px 24px 28px;
  background:radial-gradient(500px 200px at 100% 0%, rgba(200,169,110,.16), transparent 60%), var(--ska-ink);
  border-bottom:2px solid var(--ska-gold); border-radius:14px 14px 0 0;
}
.sk-atc__badge{
  flex:0 0 auto; width:46px; height:46px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%;
  color:#111; background:linear-gradient(135deg,var(--ska-cta),var(--ska-cta2)); box-shadow:0 8px 20px -8px rgba(230,183,111,.7);
  animation:sk-atc-pop .45s var(--ska-ease) both .08s;
}
.sk-atc__head.is-error .sk-atc__badge{ background:#A90000; color:#fff; box-shadow:none; }
.sk-atc__eyebrow{ display:flex; align-items:center; gap:9px; font:700 10px/1 var(--ska-sans); letter-spacing:.22em; text-transform:uppercase; color:var(--ska-gold); }
.sk-atc__eyebrow::before{ content:""; width:18px; height:1px; background:#A90000; }
.sk-atc__title{ margin:8px 0 0 !important; font-family:var(--ska-serif) !important; font-size:27px; line-height:1.1; font-weight:400; color:#fff; }
@keyframes sk-atc-pop{ from{ transform:scale(.4); opacity:0; } to{ transform:none; opacity:1; } }

/* product */
.sk-atc__product{ display:grid; grid-template-columns:92px 1fr; gap:18px; align-items:center; padding:24px 28px 20px; }
.sk-atc__img{ display:block; width:92px; height:92px; border-radius:10px; overflow:hidden; background:var(--ska-warm); border:1px solid rgba(200,169,110,.25); }
.sk-atc__img img{ width:100%; height:100%; object-fit:contain; padding:6px; }
.sk-atc__name{ margin:0 0 4px !important; font-family:var(--ska-serif) !important; font-size:21px; line-height:1.15; font-weight:500; color:#111; }
.sk-atc__qty{ margin:0 0 6px !important; font:500 11px/1.3 var(--ska-sans); letter-spacing:.12em; text-transform:uppercase; color:var(--ska-muted); }
.sk-atc__price{ font:600 16px/1.3 var(--ska-sans); color:#111; }
.sk-atc__price del{ margin-right:6px; font-weight:400; font-size:13px; color:var(--ska-muted); opacity:1; }
.sk-atc__price ins{ text-decoration:none; background:none; color:var(--ska-cta); }
.sk-atc__price .screen-reader-text{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }

/* meebestelde accessoires */
.sk-atc__extras{ list-style:none; margin:-6px 28px 16px; padding:0; border-top:1px dashed rgba(200,169,110,.35); }
.sk-atc__extras li{ display:flex; align-items:center; gap:10px; margin:0; padding:10px 0 0; font:400 13.5px/1.35 var(--ska-sans); color:#333; }
.sk-atc__plus{ flex:0 0 auto; width:20px; height:20px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:var(--ska-warm); border:1px solid rgba(200,169,110,.4); color:var(--ska-cta); font-weight:700; font-size:13px; line-height:1; }
.sk-atc__xname{ flex:1 1 auto; }
.sk-atc__xprice{ flex:0 0 auto; font-weight:600; color:#111; }
.sk-atc__xprice del{ display:none; }
.sk-atc__xprice ins{ text-decoration:none; background:none; }
@media (max-width:640px){ .sk-atc__extras{ margin:-4px 20px 14px; } }

/* voortgang gratis verzending */
.sk-atc__fs{ margin:0 28px 14px; }
.sk-atc__fs-msg{ display:flex; align-items:center; gap:8px; margin:0 0 9px !important; font:400 13px/1.4 var(--ska-sans); color:#333; }
.sk-atc__fs-msg svg{ flex:0 0 auto; color:var(--ska-cta); }
.sk-atc__fs-msg strong{ font-weight:700; color:#111; }
.sk-atc__fs-msg strong .woocommerce-Price-amount{ font-weight:700; }
.sk-atc__fs-track{ position:relative; height:6px; border-radius:6px; background:var(--ska-cream); overflow:hidden; }
.sk-atc__fs-fill{ position:absolute; left:0; top:0; bottom:0; width:0; border-radius:6px; background:linear-gradient(90deg,var(--ska-cta),var(--ska-cta2)); transition:width .9s var(--ska-ease); }
.sk-atc__fs-fill::after{ content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent); transform:translateX(-100%); animation:sk-atc-shine 1.6s ease 1s 1; }
.sk-atc__fs.is-reached .sk-atc__fs-msg{ color:#1a9d5a; font-weight:600; }
.sk-atc__fs.is-reached .sk-atc__fs-msg svg{ color:#1a9d5a; }
.sk-atc__fs.is-reached .sk-atc__fs-fill{ background:linear-gradient(90deg,#1a9d5a,#3cc47f); }
@keyframes sk-atc-shine{ to{ transform:translateX(100%); } }

/* totalen */
.sk-atc__totals{ margin:0 28px; padding:14px 18px; background:var(--ska-warm); border:1px solid rgba(200,169,110,.22); border-radius:10px; }
.sk-atc__totals > div{ display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:6px 0; }
.sk-atc__totals dt, .sk-atc__totals dd{ margin:0; font:400 14px/1.35 var(--ska-sans); color:#333; }
.sk-atc__totals dd.is-free{ color:#1a9d5a; font-weight:700; letter-spacing:.04em; }
.sk-atc__total{ margin-top:4px; padding-top:10px !important; border-top:1px solid rgba(200,169,110,.28); }
.sk-atc__total dt{ font-weight:600 !important; color:#111 !important; }
.sk-atc__total dt small{ margin-left:4px; font-size:11px; font-weight:400; color:var(--ska-muted); }
.sk-atc__total dd{ font-family:var(--ska-serif) !important; font-size:26px !important; font-weight:600 !important; color:var(--ska-cta) !important; }
.sk-atc__total dd small{ display:none; }

/* knoppen */
.sk-atc__actions{ display:grid; grid-template-columns:1fr 1.25fr; gap:12px; padding:22px 28px 0; }
.sk-atc__btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:14px 16px; border-radius:3px; cursor:pointer;
  font:700 11px/1.2 var(--ska-sans) !important; letter-spacing:.13em; text-transform:uppercase; text-decoration:none !important; text-align:center;
  transition:filter .2s ease, transform .2s ease, border-color .2s ease, background .2s ease;
}
.sk-atc__btn--ghost{ background:transparent !important; color:#111 !important; border:1px solid rgba(13,13,13,.18) !important; }
.sk-atc__btn--ghost:hover{ border-color:var(--ska-cta) !important; color:var(--ska-cta) !important; }
.sk-atc__btn--gold{ color:#111 !important; border:0 !important; background:linear-gradient(135deg,var(--ska-cta),var(--ska-cta2)) !important; box-shadow:0 12px 26px -12px rgba(184,121,53,.6); }
.sk-atc__btn--gold:hover{ filter:brightness(1.07); transform:translateY(-1px); }
.sk-atc__btn--gold svg{ transition:transform .2s ease; }
.sk-atc__btn--gold:hover svg{ transform:translateX(3px); }
.sk-atc__usps{ list-style:none; margin:0; padding:18px 28px 24px; display:flex; flex-wrap:wrap; justify-content:center; gap:6px 20px; }
.sk-atc__usps li{ display:flex; align-items:center; gap:7px; margin:0; font:400 12px/1.4 var(--ska-sans); color:var(--ska-muted); }
.sk-atc__usps svg{ color:#1a9d5a; flex:0 0 auto; }
.sk-atc__errors{ padding:22px 28px 0; }
.sk-atc__errors p{ margin:0 0 8px !important; font:400 14px/1.5 var(--ska-sans); color:#333; }
.sk-atc__errors + .sk-atc__actions{ padding-bottom:26px; }

html.sk-atc-open, html.sk-atc-open body{ overflow:hidden !important; }

/* WooCommerce "Bekijk winkelwagen"-linkje naast kaartknoppen: popup vervangt dit */
a.added_to_cart.wc-forward{ display:none !important; }
/* laadstatus productknop */
.single_add_to_cart_button.loading{ opacity:.75; cursor:progress; }

/* mobiel: bottom sheet */
@media (max-width:640px){
  .sk-atc{ align-items:flex-end; padding:0; }
  .sk-atc__box{ width:100%; max-height:92vh; border-radius:18px 18px 0 0; transform:translateY(100%); transition:transform .4s var(--ska-ease), opacity .2s ease; padding-bottom:env(safe-area-inset-bottom); }
  .sk-atc__head{ border-radius:18px 18px 0 0; padding:26px 64px 20px 20px; }
  .sk-atc__head::before{ content:""; position:absolute; top:8px; left:50%; width:40px; height:4px; margin-left:-20px; border-radius:4px; background:rgba(255,255,255,.22); }
  .sk-atc__close{ top:16px; right:12px; }
  .sk-atc__title{ font-size:24px; }
  .sk-atc__badge{ width:40px; height:40px; }
  .sk-atc__product{ grid-template-columns:76px 1fr; gap:14px; padding:18px 20px 16px; }
  .sk-atc__img{ width:76px; height:76px; }
  .sk-atc__name{ font-size:19px; }
  .sk-atc__totals{ margin:0 20px; }
  .sk-atc__fs{ margin:0 20px 12px; }
  .sk-atc__actions{ grid-template-columns:1fr; padding:18px 20px 0; }
  .sk-atc__btn--gold{ order:-1; }
  .sk-atc__usps{ padding:16px 20px 20px; justify-content:flex-start; flex-direction:column; }
  .sk-atc__errors{ padding:18px 20px 0; }
}
@media (prefers-reduced-motion:reduce){ .sk-atc__box, .sk-atc__backdrop, .sk-atc__badge{ transition:none !important; animation:none !important; } }

/* PDP-CSS verbergt het valutateken; in de popup altijd tonen */
.sk-atc .woocommerce-Price-currencySymbol{ display:inline !important; visibility:visible !important; font-size:inherit !important; }
