/* RT minicart (13pixels, 04-11-2026) - nieuw ontwerp van het winkelwagenpaneel in de kop.
   Selectors met :is(.rt-mc, .cart-content ul): op pagina's uit de LSCache staat nog de oude <ul> zonder klasse, waar Journal3 de nieuwe <li>'s in laadt.
   Huisstijl: geen afgeronde hoeken, Oswald in kapitalen, #333745 / #5F6874, groen #006610 alleen voor afrekenen. */
.rt-mc, :where(.cart-content ul:has(> .rt-mc-kop, > .rt-mc-leeg)) { --mc-ink:#333745; --mc-slate:#5F6874; --mc-muted:#6b7280; --mc-line:#e3e5e8; --mc-panel:#f4f5f6; --mc-green:#006610; --mc-green-d:#004f0c;
  list-style:none !important; margin:0 !important; padding:14px !important; width:auto; min-width:min(440px, calc(100vw - 24px)); max-width:calc(100vw - 24px); background:#fff; color:var(--mc-ink);
  font:14px/1.4 Helvetica, Arial, sans-serif; box-shadow:0 10px 30px rgba(31,41,51,.16); text-align:left; }
.rt-mc > li, .cart-content ul > li[class*="rt-mc-"] { list-style:none; margin:0; padding:0; background:none; border:0; }
:is(.rt-mc, .cart-content ul) svg { display:block; flex:none; }

/* kop */
:is(.rt-mc, .cart-content ul) .rt-mc-kop { display:flex; align-items:center; gap:10px; background:var(--mc-panel); padding:12px 14px; margin-bottom:6px; }
:is(.rt-mc, .cart-content ul) .rt-mc-kop svg { width:22px; height:22px; color:var(--mc-ink); }
:is(.rt-mc, .cart-content ul) .rt-mc-titel { font-family:Oswald, 'Arial Narrow', sans-serif; font-weight:500; font-size:18px; letter-spacing:.6px; text-transform:uppercase; line-height:1; }
:is(.rt-mc, .cart-content ul) .rt-mc-aantal { margin-left:4px; padding:3px 8px; background:#e2e5e9; color:var(--mc-slate); font-size:12px; font-weight:600; line-height:1.2; }

/* regels */
:is(.rt-mc, .cart-content ul) .rt-mc-lijst { max-height:min(52vh, 420px); overflow-y:auto; overscroll-behavior:contain; }
:is(.rt-mc, .cart-content ul) .rt-mc-regel { display:grid; grid-template-columns:72px minmax(0,1fr) auto auto 32px; align-items:center; gap:12px; padding:12px 4px; border-bottom:1px solid var(--mc-line); }
:is(.rt-mc, .cart-content ul) .rt-mc-regel:last-child { border-bottom:0; }
:is(.rt-mc, .cart-content ul) .rt-mc-foto { display:block; width:72px; height:72px; background:var(--mc-panel); overflow:hidden; }
:is(.rt-mc, .cart-content ul) .rt-mc-foto img { width:100%; height:100%; object-fit:cover; display:block; max-width:none; border:0; }
:is(.rt-mc, .cart-content ul) .rt-mc-info { min-width:0; display:flex; flex-direction:column; gap:2px; }
:is(.rt-mc, .cart-content ul) .rt-mc-naam { color:var(--mc-ink) !important; font-weight:700; font-size:15px; line-height:1.3; text-decoration:none; overflow-wrap:anywhere; }
:is(.rt-mc, .cart-content ul) .rt-mc-naam:hover { text-decoration:underline; }
:is(.rt-mc, .cart-content ul) .rt-mc-optie { color:var(--mc-muted); font-size:13px; }
:is(.rt-mc, .cart-content ul) .rt-mc-optie em { font-style:italic; color:var(--mc-slate); }
:is(.rt-mc, .cart-content ul) .rt-mc-qty { color:var(--mc-slate); font-size:14px; white-space:nowrap; }
:is(.rt-mc, .cart-content ul) .rt-mc-prijs { font-weight:600; font-size:15px; white-space:nowrap; text-align:right; min-width:68px; }
:is(.rt-mc, .cart-content ul) .rt-mc-weg { width:32px; height:32px; display:flex; align-items:center; justify-content:center; padding:0; margin:0; border:0; background:none; color:#b42318; cursor:pointer; box-shadow:none; }
:is(.rt-mc, .cart-content ul) .rt-mc-weg svg { width:19px; height:19px; }
:is(.rt-mc, .cart-content ul) .rt-mc-weg:hover, :is(.rt-mc, .cart-content ul) .rt-mc-weg:focus-visible { background:#fdecea; color:#912018; }

/* totalen */
:is(.rt-mc, .cart-content ul) .rt-mc-onder { margin-top:4px !important; }
:is(.rt-mc, .cart-content ul) .rt-mc-totalen { margin:0; padding:8px 14px; background:var(--mc-panel); }
:is(.rt-mc, .cart-content ul) .rt-mc-totalen > div { display:flex; justify-content:flex-end; gap:24px; padding:4px 0; }
:is(.rt-mc, .cart-content ul) .rt-mc-totalen dt { font-weight:400; color:var(--mc-slate); text-align:right; flex:1 1 auto; }
:is(.rt-mc, .cart-content ul) .rt-mc-totalen dd { margin:0; min-width:90px; text-align:right; font-weight:600; }
:is(.rt-mc, .cart-content ul) .rt-mc-totalen .rt-mc-totaal { margin:6px -14px -8px; padding:10px 14px; background:#e7e9ec; }
:is(.rt-mc, .cart-content ul) .rt-mc-totalen .rt-mc-totaal dt { color:var(--mc-ink); font-weight:700; font-size:16px; }
:is(.rt-mc, .cart-content ul) .rt-mc-totalen .rt-mc-totaal dd { font-weight:700; font-size:18px; }

/* knoppen */
:is(.rt-mc, .cart-content ul) .rt-mc-knoppen { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px; }
:is(.rt-mc, .cart-content ul) .rt-mc-knoppen a { display:flex; align-items:center; justify-content:center; gap:9px; min-height:48px; padding:0 14px;
  font-family:Oswald, 'Arial Narrow', sans-serif; font-size:16px; font-weight:500; letter-spacing:.6px; text-transform:uppercase; text-decoration:none !important; line-height:1; }
:is(.rt-mc, .cart-content ul) .rt-mc-knoppen svg { width:19px; height:19px; }
:is(.rt-mc, .cart-content ul) .rt-mc-bekijk { border:1.5px solid var(--mc-ink) !important; color:var(--mc-ink) !important; background:#fff !important; }
:is(.rt-mc, .cart-content ul) .rt-mc-bekijk:hover { background:var(--mc-panel) !important; }
:is(.rt-mc, .cart-content ul) .rt-mc-afrekenen { background:var(--mc-green); color:#fff !important; border:1.5px solid var(--mc-green); }
:is(.rt-mc, .cart-content ul) .rt-mc-afrekenen:hover { background:var(--mc-green-d); border-color:var(--mc-green-d); }
:is(.rt-mc, .cart-content ul) .rt-mc-knoppen a:focus-visible, :is(.rt-mc, .cart-content ul) .rt-mc-weg:focus-visible { outline:3px solid #5b9dd9; outline-offset:2px; }

/* leeg */
:is(.rt-mc, .cart-content ul) .rt-mc-leeg { display:flex; flex-direction:column; align-items:center; gap:10px; padding:26px 10px; color:var(--mc-slate); }
:is(.rt-mc, .cart-content ul) .rt-mc-leeg svg { width:34px; height:34px; color:#9aa3ad; }
:is(.rt-mc, .cart-content ul) .rt-mc-leeg p { margin:0; text-align:center; }

/* mobiel: het paneel neemt de breedte van Journal3's mobiele winkelwagen */
.mobile-cart-content-wrapper .rt-mc, .mobile-header-active .rt-mc, .mobile-cart-content-wrapper .cart-content ul:has(> .rt-mc-kop) { width:auto; min-width:0; max-width:none; box-shadow:none; }
@media (max-width:520px) {
  .rt-mc, :where(.cart-content ul:has(> .rt-mc-kop)) { padding:10px !important; }
  :is(.rt-mc, .cart-content ul) .rt-mc-regel { grid-template-columns:60px minmax(0,1fr) auto 30px; grid-template-areas:"foto info info weg" "foto qty prijs weg"; row-gap:4px; }
  :is(.rt-mc, .cart-content ul) .rt-mc-foto { grid-area:foto; width:60px; height:60px; align-self:start; }
  :is(.rt-mc, .cart-content ul) .rt-mc-info { grid-area:info; }
  :is(.rt-mc, .cart-content ul) .rt-mc-qty { grid-area:qty; }
  :is(.rt-mc, .cart-content ul) .rt-mc-prijs { grid-area:prijs; }
  :is(.rt-mc, .cart-content ul) .rt-mc-weg { grid-area:weg; align-self:start; }
  :is(.rt-mc, .cart-content ul) .rt-mc-lijst { max-height:none; }
  :is(.rt-mc, .cart-content ul) .rt-mc-knoppen { grid-template-columns:1fr; }
  :is(.rt-mc, .cart-content ul) .rt-mc-afrekenen { order:-1; }
}
:is(.rt-mc, .cart-content ul) .rt-mc-lijst { scrollbar-width:thin; scrollbar-color:#b9bec5 transparent; }
:is(.rt-mc, .cart-content ul) .rt-mc-lijst::-webkit-scrollbar { width:6px; }
:is(.rt-mc, .cart-content ul) .rt-mc-lijst::-webkit-scrollbar-thumb { background:#b9bec5; }
:is(.rt-mc, .cart-content ul) .rt-mc-lijst::-webkit-scrollbar-track { background:transparent; }
/* mobiel paneel: Journal3 zet zelf al "Je winkelwagen" erboven → alleen het aantal tonen */
.mobile-cart-content-wrapper :is(.rt-mc, .cart-content ul) .rt-mc-kop svg, .mobile-cart-content-wrapper :is(.rt-mc, .cart-content ul) .rt-mc-titel { display:none; }
.mobile-cart-content-wrapper :is(.rt-mc, .cart-content ul) .rt-mc-kop { padding:8px 12px; }
.mobile-cart-content-wrapper :is(.rt-mc, .cart-content ul) .rt-mc-aantal { margin-left:0; }
/* Journal3 zet .cart-totals in het mobiele paneel vast onderaan (fixed, left 14px, width 100%) → schoof 14px buiten beeld */
.mobile-cart-content-wrapper :is(.rt-mc, .cart-content ul) .rt-mc-onder { left:0 !important; right:0 !important; width:auto !important; box-sizing:border-box; padding:10px 14px 14px !important; background:#fff; box-shadow:0 -6px 14px rgba(31,41,51,.06); }
