/* A fejléc kosár-előnézete: önálló, a többi menütől független stílusok. */
.header-cart { position:relative; flex:0 0 50px; width:50px; }
.header-cart > .cart-link { z-index:0; width:50px; border-radius:4px; }
.header-cart > .cart-link::before { content:""; position:absolute; z-index:-1; top:50%; left:50%; width:60px; height:48px; border-radius:4px; transform:translate(-50%,-50%); }
.header-cart.is-open > .cart-link { color:var(--olive); }
.header-cart.is-open > .cart-link::before { background:#f3f1eb; }
.header-cart .cart-count { background:var(--green); }
.mini-cart-panel { position:absolute; z-index:60; top:100%; right:0; width:400px; max-width:calc(100vw - 32px); max-height:min(600px,calc(100dvh - 140px)); overflow:auto; padding:24px; border:1px solid var(--line); border-radius:4px; background:var(--background); color:var(--olive); box-shadow:3px 5px 5px #2f33212b; font:400 14px/1.5 Satoshi,Arial,sans-serif; text-align:left; letter-spacing:0; text-transform:none; overscroll-behavior:contain; }
.mini-cart-panel[hidden] { display:none !important; }
.mini-cart-panel h2.mini-cart-title { margin:0 0 24px; color:var(--green); font:700 17px/22px Satoshi,Arial,sans-serif; }
.mini-cart-items,
.mini-cart-saved-items { margin:0; padding:0; list-style:none; }
.mini-cart-items { border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.mini-cart-item { display:grid; grid-template-columns:96px minmax(0,1fr); gap:24px; padding:22px 0; }
.mini-cart-item + .mini-cart-item { border-top:1px solid var(--line); }
.mini-cart-image { display:block; width:96px; height:96px; }
.mini-cart-image img { display:block; width:100%; height:100%; object-fit:contain; border:0; border-radius:0; }
.mini-cart-info { min-width:0; }
.mini-cart-price { margin:0 0 3px; color:var(--green); font:700 17px/23px Satoshi,Arial,sans-serif; }
.mini-cart-price del { display:block; color:var(--muted); font-size:12px; font-weight:400; line-height:16px; }
.mini-cart-product-name { display:block; color:var(--olive); font:400 14px/24px Satoshi,Arial,sans-serif; overflow-wrap:anywhere; }
.mini-cart-item-actions { display:flex; flex-wrap:wrap; column-gap:18px; row-gap:4px; margin-top:3px; }
.mini-cart-action { display:contents; margin:0; }
.mini-cart-action button { display:inline; margin:0; padding:0; border:0; border-radius:0; background:none; color:var(--green); font:400 14px/20px Satoshi,Arial,sans-serif; text-align:left; text-decoration:underline; text-underline-offset:2px; cursor:pointer; }
.mini-cart-action button:disabled { opacity:.5; cursor:wait; }
.mini-cart-all { display:block; width:fit-content; margin:16px auto 24px; color:var(--green); font:400 16px/24px Satoshi,Arial,sans-serif; text-align:center; text-decoration:underline; text-underline-offset:3px; }
.mini-cart-buttons { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.mini-cart-button { display:flex; align-items:center; justify-content:center; min-height:48px; padding:10px 12px; border:1px solid var(--gold); border-radius:4px; background:var(--background); color:var(--olive); font:700 16px/22px Satoshi,Arial,sans-serif; text-align:center; text-decoration:none; }
.mini-cart-button--primary { border-color:var(--olive); background:var(--olive); color:#fff; }
.mini-cart-button:hover { background:#f3f1eb; }
.mini-cart-button--primary:hover { border-color:#625b3e; background:#625b3e; color:#fff; }
.mini-cart-product-name:hover { color:var(--green); }
.mini-cart-action button:hover,
.mini-cart-all:hover { color:var(--olive); }
.mini-cart-empty { margin:0 0 24px; padding-top:22px; border-top:1px solid var(--line); color:var(--muted); font-size:14px; }
.mini-cart-feedback { margin:0 0 16px; padding:8px 10px; border-radius:3px; background:#f3f1eb; color:var(--green); font-size:13px; }
.mini-cart-feedback:empty { display:none; }
.mini-cart-saved { margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }
.mini-cart-saved > summary { color:var(--green); font:400 14px/22px Satoshi,Arial,sans-serif; text-decoration:underline; text-underline-offset:2px; cursor:pointer; }
.mini-cart-saved-items .mini-cart-item { padding-bottom:0; }
@media (max-width:767px) {
  .header-cart { flex-basis:45px; width:45px; }
  .header-cart > .cart-link { width:45px; }
  .mini-cart-panel { position:fixed; top:var(--mini-cart-top,88px); right:16px; left:16px; width:auto; max-width:none; max-height:calc(100dvh - var(--mini-cart-top,88px) - 16px); padding:20px; }
  .mini-cart-panel h2.mini-cart-title { margin-bottom:20px; font-size:17px; }
  .mini-cart-item { grid-template-columns:72px minmax(0,1fr); gap:16px; padding:20px 0; }
  .mini-cart-image { width:72px; height:72px; }
  .mini-cart-price { font-size:16px; line-height:22px; }
  .mini-cart-product-name { font-size:14px; line-height:21px; }
  .mini-cart-item-actions { column-gap:12px; row-gap:4px; margin-top:5px; }
  .mini-cart-action button { font-size:13px; }
  .mini-cart-all { margin-bottom:20px; font-size:15px; }
  .mini-cart-buttons { gap:12px; }
  .mini-cart-button { padding:10px 8px; font-size:14px; line-height:20px; }
}
