/* =========================================================
   Piactér — Design System
   ========================================================= */

:root{
  --ink:#17160F;
  --ink-soft:#3A3830;
  --muted:#7A756C;
  --line:#E7E1D6;
  --line-soft:#F0ECE3;
  --cream:#FBF8F2;
  --paper:#FFFFFF;
  --accent:#C1440E;
  --accent-dark:#9A360A;
  --accent-tint:#FBEAE1;
  --success:#3E7D5A;
  --success-tint:#E7F1EA;
  --star:#E3A008;
  --radius-sm:8px;
  --radius:14px;
  --radius-lg:22px;
  --shadow-sm:0 1px 2px rgba(23,22,15,0.06);
  --shadow:0 8px 24px -8px rgba(23,22,15,0.16);
  --shadow-lg:0 24px 48px -12px rgba(23,22,15,0.22);
  --ease:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  line-height:1.5;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button{font:inherit;cursor:pointer;}
input,select,textarea{font:inherit;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4,p{margin:0;}

.container{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:0 32px;
}

/* ---------- Reveal-on-scroll ---------- */
[data-reveal]{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .7s var(--ease), transform .7s var(--ease);
}
[data-reveal].in-view{opacity:1;transform:translateY(0);}
[data-reveal="stagger"] > *{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .6s var(--ease), transform .6s var(--ease);
}
[data-reveal="stagger"].in-view > *{opacity:1;transform:translateY(0);}
[data-reveal="stagger"].in-view > *:nth-child(1){transition-delay:.02s;}
[data-reveal="stagger"].in-view > *:nth-child(2){transition-delay:.08s;}
[data-reveal="stagger"].in-view > *:nth-child(3){transition-delay:.14s;}
[data-reveal="stagger"].in-view > *:nth-child(4){transition-delay:.2s;}
[data-reveal="stagger"].in-view > *:nth-child(5){transition-delay:.26s;}
[data-reveal="stagger"].in-view > *:nth-child(6){transition-delay:.32s;}
[data-reveal="stagger"].in-view > *:nth-child(7){transition-delay:.38s;}
[data-reveal="stagger"].in-view > *:nth-child(8){transition-delay:.44s;}

/* Finom, egységes görgetés az oldalon belüli ugrásokhoz. */
html{scroll-behavior:smooth;}

/* ---------- Kevesebb mozgás igénye (akadálymentesség) ---------- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
  html{scroll-behavior:auto;}
  /* A reveal-tartalom mindig látszódjon, mozgás nélkül is. */
  [data-reveal],[data-reveal].in-view,
  [data-reveal="stagger"] > *,[data-reveal="stagger"].in-view > *{
    opacity:1 !important;
    transform:none !important;
  }
}

/* ---------- Top announcement bar ---------- */
.announce{
  background:var(--ink);
  color:var(--cream);
  text-align:center;
  font-size:13px;
  letter-spacing:.02em;
  padding:9px 12px;
}

/* ---------- Header ---------- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(251,248,242,0.86);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
  transition:box-shadow .3s var(--ease), padding .3s var(--ease);
}
.site-header.scrolled{box-shadow:var(--shadow-sm);}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:20px 0;transition:padding .3s var(--ease);
}
.site-header.scrolled .header-inner{padding:13px 0;}
.logo{
  font-size:21px;font-weight:700;letter-spacing:-.01em;
  display:flex;align-items:center;gap:9px;
}
.logo .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);display:inline-block;}
.logo-mark{flex:none;display:block;}
.logo-word{font-weight:800;letter-spacing:-.02em;line-height:1;}
.logo-word b{font-weight:800;color:var(--ink);}
.logo-word i{font-style:normal;font-weight:800;color:var(--accent);}
.main-nav{display:flex;gap:24px;}
.main-nav a{
  font-size:14.5px;font-weight:500;color:var(--ink-soft);
  position:relative;padding:4px 0;
  transition:color .2s var(--ease);
}
.main-nav a::after{
  content:'';position:absolute;left:0;bottom:-2px;height:1.5px;width:0;
  background:var(--accent);transition:width .3s var(--ease);
}
.main-nav a:hover{color:var(--ink);}
.main-nav a:hover::after{width:100%;}
.main-nav a.active{color:var(--ink);font-weight:600;}
.main-nav a.active::after{width:100%;}

.header-actions{display:flex;align-items:center;gap:6px;}
.icon-btn{
  width:40px;height:40px;border-radius:50%;border:none;background:transparent;
  display:flex;align-items:center;justify-content:center;color:var(--ink);
  position:relative;transition:background .2s var(--ease),transform .2s var(--ease);
}
.icon-btn:hover{background:var(--line-soft);transform:translateY(-1px);}
.icon-btn svg{width:20px;height:20px;}
.cart-badge{
  position:absolute;top:2px;right:2px;
  background:var(--accent);color:#fff;font-size:10.5px;font-weight:700;
  width:17px;height:17px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  transform:scale(1);transition:transform .25s cubic-bezier(.34,1.56,.64,1);
}
.cart-badge.bump{transform:scale(1.35);}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 26px;border-radius:999px;border:1px solid transparent;
  font-size:14.5px;font-weight:600;letter-spacing:.01em;
  transition:transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
  white-space:nowrap;
}
.btn-primary{background:var(--ink);color:#fff;}
.btn-primary:hover{background:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow);}
.btn-primary:active{transform:translateY(0);}
.btn-accent{background:var(--accent);color:#fff;}
.btn-accent:hover{background:var(--accent-dark);transform:translateY(-2px);box-shadow:var(--shadow);}
.btn-outline{background:transparent;border-color:var(--ink);color:var(--ink);}
.btn-outline:hover{background:var(--ink);color:#fff;}
.btn-ghost{background:transparent;color:var(--ink-soft);}
.btn-ghost:hover{background:var(--line-soft);color:var(--ink);}
.btn-block{width:100%;}
.btn-sm{padding:9px 18px;font-size:13.5px;}
.btn[disabled]{opacity:.5;pointer-events:none;}

/* ---------- Hero ---------- */
.hero{
  position:relative;overflow:hidden;
  padding:96px 0 88px;
}
.hero-grid{
  display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center;
}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--accent-dark);background:var(--accent-tint);
  padding:7px 14px;border-radius:999px;margin-bottom:22px;
}
.hero h1{
  font-size:56px;line-height:1.05;letter-spacing:-.02em;font-weight:700;
  margin-bottom:22px;
}
.hero h1 em{color:var(--accent);font-style:normal;}
.hero p.lead{font-size:17.5px;color:var(--muted);max-width:460px;margin-bottom:34px;}
.hero-cta{display:flex;gap:14px;margin-bottom:40px;}
.hero-stats{display:flex;gap:36px;}
.hero-stats div strong{display:block;font-size:24px;font-weight:700;}
.hero-stats div span{font-size:13px;color:var(--muted);}


.hero-lead{
  font-size:16px;line-height:1.6;color:var(--ink-soft);
  max-width:430px;margin:18px 0 4px;
}
@media(max-width:640px){.hero-lead{font-size:15px;}}

/* A hero-négyzet MAGA a logó: a négy elem kitölti a teljes felületet. */
.hero-visual{
  position:relative;aspect-ratio:1/1;height:auto;max-height:520px;width:100%;
  max-width:450px;margin-left:auto;border-radius:var(--radius-lg);
  overflow:visible;
}
.hero-mark{
  position:absolute;inset:0;width:100%;height:100%;
  filter:drop-shadow(0 18px 40px rgba(23,22,15,.16));pointer-events:none;
}
.hero-mark rect{animation:markPulse 6s ease-in-out infinite;transform-origin:center;}
.hero-mark rect:nth-child(2){animation-delay:.6s;}
.hero-mark rect:nth-child(3){animation-delay:1.2s;}
.hero-mark rect:nth-child(4){animation-delay:1.8s;}
@keyframes markPulse{0%,100%{opacity:.92}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.hero-mark rect{animation:none;}}
.floating-card{
  position:absolute;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);
  border-radius:var(--radius);padding:12px 15px;box-shadow:var(--shadow);white-space:nowrap;
  display:flex;align-items:center;gap:12px;
  /* A kártyák a logó egy-egy négyzetének a közepére vannak igazítva. */
  transform:translate(-50%,-50%);
  animation:float 5s ease-in-out infinite;
}
.floating-card.c1{top:25%;left:25%;animation-delay:0s;}
.floating-card.c2{top:75%;left:75%;animation-delay:1.2s;}
@keyframes float{
  0%,100%{transform:translate(-50%,-50%);}
  50%{transform:translate(-50%,calc(-50% - 9px));}
}
.fc-icon{width:34px;height:34px;border-radius:50%;background:var(--success-tint);color:var(--success);display:flex;align-items:center;justify-content:center;}
.fc-icon svg{width:18px;height:18px;}
.fc-title{font-size:12.5px;font-weight:700;}
.fc-sub{font-size:11px;color:var(--muted);}

/* ---------- Sections ---------- */
.section{padding:76px 0;}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:38px;gap:20px;}
.section-title{font-size:30px;font-weight:700;letter-spacing:-.01em;}
.section-sub{color:var(--muted);font-size:15px;margin-top:6px;}

/* ---------- Category pills ---------- */
.cat-row{display:flex;gap:14px;flex-wrap:wrap;}
.cat-card{
  flex:1;min-width:150px;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  padding:22px 20px;transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);
}
.cat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:transparent;}
.cat-emoji{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:14px;}
.cat-card h4{font-size:15px;font-weight:600;margin-bottom:3px;}
.cat-card span{font-size:12.5px;color:var(--muted);}

/* ---------- Product grid / card ---------- */
.grid{display:grid;gap:26px;}
.grid-4{grid-template-columns:repeat(4,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-2{grid-template-columns:repeat(2,1fr);}

.product-card{
  background:var(--paper);border-radius:var(--radius);overflow:hidden;
  border:1px solid var(--line);
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
  position:relative;
}
.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);}
.product-card.product-opening{pointer-events:none;animation:productOpen .2s var(--ease) forwards;box-shadow:0 18px 48px rgba(23,22,15,.16);}
.product-card.product-opening .product-media img{transform:scale(1.045);filter:saturate(1.05);}
@keyframes productOpen{
  0%{transform:translateY(-6px) scale(1);}
  55%{transform:translateY(-3px) scale(.975);}
  100%{transform:translateY(-2px) scale(.99);border-color:rgba(193,64,16,.35);}
}
.product-media{
  aspect-ratio:1/1;position:relative;overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.product-media svg{width:38%;height:38%;opacity:.9;transition:transform .5s var(--ease);color:rgba(255,255,255,.65);}
.product-card:hover .product-media svg{transform:scale(1.08) rotate(-2deg);}
.product-badge{
  position:absolute;top:12px;left:12px;background:var(--ink);color:#fff;
  font-size:11px;font-weight:700;padding:5px 10px;border-radius:999px;letter-spacing:.02em;
}
.product-badge.sale{background:var(--accent);}
.wishlist-btn{
  position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;
  background:rgba(255,255,255,.9);border:none;display:flex;align-items:center;justify-content:center;
  opacity:0;transform:translateY(-6px);transition:all .25s var(--ease);color:var(--ink);
}
.product-card:hover .wishlist-btn{opacity:1;transform:translateY(0);}
.wishlist-btn:hover{background:var(--accent);color:#fff;}
.wishlist-btn svg{width:16px;height:16px;}
.product-info{padding:18px 18px 20px;}
.product-cat{font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;}
.product-name{font-size:15.5px;font-weight:600;margin-bottom:8px;}
.product-name.product-link{display:block;color:inherit;text-decoration:none;}
.product-name.product-link:hover{color:var(--accent-dark);}
.product-rating{display:flex;align-items:center;gap:6px;margin-bottom:10px;}
.stars{display:inline-flex;gap:2px;color:var(--star);font-size:13px;letter-spacing:1px;line-height:1;}
.stars svg{width:13px;height:13px;}
.rating-count{font-size:12px;color:var(--muted);}
.price-row{display:flex;align-items:center;justify-content:space-between;}
.price{font-size:17px;font-weight:700;}
.price-old{font-size:13px;color:var(--muted);text-decoration:line-through;margin-right:6px;font-weight:400;}
.add-btn{
  width:38px;height:38px;border-radius:50%;background:var(--ink);color:#fff;border:none;
  display:flex;align-items:center;justify-content:center;transition:background .2s var(--ease), transform .2s var(--ease);
}
.add-btn:hover{background:var(--accent);transform:scale(1.08);}
.add-btn svg{width:16px;height:16px;}
/* + → pipa visszajelzés kosárba tételkor: a gomb FEKETE marad, a + lágyan FEHÉR pipává alakul. Letisztult, nincs pötty, nincs oldal-újratöltés, nincs forgás. */
.add-btn .a-plus,.add-btn .a-check{position:absolute;width:16px;height:16px;}
.add-btn .a-check{opacity:0;}
.add-btn .a-check path{stroke-dasharray:27;stroke-dashoffset:27;}
.add-btn.added{background:var(--ink);}
.add-btn.added:hover{background:var(--ink);transform:none;}
.add-btn.added .a-plus{animation:aPlusOut .3s var(--ease) forwards;}
.add-btn.added .a-check{opacity:1;animation:aCheckGrow .55s .14s var(--ease) both;}
.add-btn.added .a-check path{animation:aDraw .5s .18s var(--ease) forwards;}
@keyframes aPlusOut{0%{opacity:1;transform:scale(1);}100%{opacity:0;transform:scale(.45);}}
@keyframes aCheckGrow{0%{transform:scale(.6);}70%{transform:scale(1.07);}100%{transform:scale(1);}}
@keyframes aDraw{to{stroke-dashoffset:0;}}

/* placeholder gradients for product media */
.g1{background:linear-gradient(150deg,#FBEAE1,#F0AE8B);}
.g2{background:linear-gradient(150deg,#E9EFE6,#9DBD9A);}
.g3{background:linear-gradient(150deg,#EDEAF5,#B7ADDD);}
.g4{background:linear-gradient(150deg,#FCEFD0,#E6B860);}
.g5{background:linear-gradient(150deg,#E3EEF3,#8FB9CC);}
.g6{background:linear-gradient(150deg,#F5E3E8,#D68FA3);}
.g7{background:linear-gradient(150deg,#EFEBE3,#C9B79A);}
.g8{background:linear-gradient(150deg,#E1F0E9,#79B79A);}

/* ---------- Testimonial / trust strip ---------- */
.trust-strip{
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
  padding:30px 36px;
}
.trust-item{display:flex;align-items:center;gap:14px;flex:1;min-width:220px;}
.trust-icon{width:42px;height:42px;border-radius:50%;background:var(--accent-tint);color:var(--accent-dark);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.trust-icon svg{width:20px;height:20px;}
.trust-item h5{font-size:14px;font-weight:700;margin-bottom:2px;}
.trust-item p{font-size:12.5px;color:var(--muted);}

/* ---------- Footer ---------- */
.site-footer{background:var(--ink);color:#D9D5C9;padding:64px 0 28px;margin-top:60px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:50px;}
.footer-grid h5{color:#fff;font-size:13.5px;font-weight:700;margin-bottom:16px;letter-spacing:.03em;text-transform:uppercase;}
.footer-grid ul li{margin-bottom:10px;font-size:14px;}
.footer-grid ul li a{color:#B9B4A6;transition:color .2s;}
.footer-grid ul li a:hover{color:#fff;}
.footer-grid p{color:#B9B4A6;font-size:14px;line-height:1.7;max-width:280px;}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);padding-top:24px;
  display:flex;justify-content:space-between;font-size:12.5px;color:#8B8778;flex-wrap:wrap;gap:10px;
}

/* ---------- Breadcrumb ---------- */
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);padding:22px 0;}
.breadcrumb a:hover{color:var(--ink);}
.breadcrumb svg{width:12px;height:12px;}

/* ---------- Product detail ---------- */
.pd-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-bottom:70px;}
.pd-gallery-main{
  aspect-ratio:1/1;border-radius:var(--radius-lg);overflow:hidden;margin-bottom:16px;
  display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);
  transition:background 1.2s var(--ease);
}
.pd-gallery-main svg{width:34%;height:34%;}
.pd-thumbs{display:flex;gap:12px;}
.pd-thumb{
  width:76px;height:76px;border-radius:12px;border:2px solid transparent;overflow:hidden;
  display:flex;align-items:center;justify-content:center;transition:border-color .2s var(--ease), transform .2s var(--ease);
}
.pd-thumb svg{width:36%;height:36%;}
.pd-thumb:hover{transform:translateY(-2px);}
.pd-thumb.active{border-color:var(--ink);}
.pd-info .product-cat{margin-bottom:10px;}
.pd-info h1{font-size:32px;font-weight:700;letter-spacing:-.01em;margin-bottom:12px;}
.pd-rating{display:flex;align-items:center;gap:10px;margin-bottom:22px;}
.pd-rating a{font-size:13px;color:var(--accent-dark);font-weight:600;}
.pd-price{font-size:30px;font-weight:700;margin-bottom:6px;}
.pd-price-note{font-size:13px;color:var(--success);font-weight:600;margin-bottom:26px;display:flex;align-items:center;gap:6px;}
.pd-desc{color:var(--muted);font-size:15px;line-height:1.75;margin-bottom:28px;}
.pd-options{margin-bottom:26px;}
.opt-label{font-size:13px;font-weight:700;margin-bottom:10px;display:flex;justify-content:space-between;}
.opt-row{display:flex;gap:10px;flex-wrap:wrap;}
.opt-swatch{
  width:38px;height:38px;border-radius:50%;border:2px solid var(--paper);outline:1px solid var(--line);
  transition:outline-color .2s var(--ease), transform .2s var(--ease);
}
.opt-swatch:hover{transform:translateY(-2px);}
.opt-swatch.active{outline:2px solid var(--ink);}
.opt-size{
  padding:10px 16px;border-radius:10px;border:1px solid var(--line);font-size:13.5px;font-weight:600;
  transition:all .2s var(--ease);background:var(--paper);
}
.opt-size:hover{border-color:var(--ink);}
.opt-size.active{background:var(--ink);color:#fff;border-color:var(--ink);}

.qty-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;}
.qty-stepper button{width:40px;height:44px;border:none;background:transparent;font-size:16px;transition:background .2s;}
.qty-stepper button:hover{background:var(--line-soft);}
.qty-stepper span{width:36px;text-align:center;font-weight:600;font-size:14.5px;}
.pd-actions{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap;}
/* Nem nyúlik végig a hasábon — annyi széles, amennyi a felirathoz kell. */
.pd-actions .btn-accent{flex:0 0 auto;min-width:212px;justify-content:center;}
/* Ugyanaz a pipa-visszajelzés, mint a listás + gombnál: a gomb sötétre vált,
   az ikon fehér pipává rajzolódik, majd 1,5 mp múlva visszaáll. */
.pd-actions .btn-accent.added{background:var(--ink);border-color:var(--ink);color:#fff;}
.pd-actions .btn-accent.added:hover{background:var(--ink);}
.pd-actions .btn-accent .a-check{animation:aCheckGrow .5s var(--ease) both;}
.pd-actions .btn-accent .a-check path{stroke-dasharray:27;stroke-dashoffset:27;animation:aDraw .45s .06s var(--ease) forwards;}

.pd-meta{display:flex;gap:26px;margin-top:30px;padding-top:26px;border-top:1px solid var(--line);}
.pd-meta div{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);}
.pd-meta svg{width:16px;height:16px;color:var(--success);}

/* ---------- Tabs ---------- */
.tabs{display:flex;gap:32px;border-bottom:1px solid var(--line);margin-bottom:34px;}
.tab-btn{
  padding:14px 2px;font-size:14.5px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;
  transition:color .2s var(--ease), border-color .2s var(--ease);background:none;border-top:none;border-left:none;border-right:none;
}
.tab-btn.active,.tab-btn:hover{color:var(--ink);}
.tab-btn.active{border-color:var(--accent);}
.tab-panel{display:none;}
.tab-panel.active{display:block;animation:fadeIn .4s var(--ease);}
@keyframes fadeIn{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}

/* ---------- Reviews ---------- */
.review-summary{display:flex;gap:48px;padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:32px;}
.rs-score{text-align:center;}
.rs-score strong{font-size:44px;font-weight:700;display:block;line-height:1;}
.rs-score .stars{justify-content:center;margin:10px 0 6px;}
.rs-score span{font-size:12.5px;color:var(--muted);}
.rs-bars{flex:1;display:flex;flex-direction:column;gap:8px;justify-content:center;}
.rs-bar-row{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--muted);}
.rs-bar-row span:first-child{width:38px;}
.rs-bar-track{flex:1;height:6px;border-radius:99px;background:var(--line-soft);overflow:hidden;}
.rs-bar-fill{height:100%;background:var(--star);border-radius:99px;width:0;transition:width 1s var(--ease);}
.rs-bar-row span:last-child{width:28px;text-align:right;}

.review-item{padding:24px 0;border-bottom:1px solid var(--line);}
.review-head{display:flex;justify-content:space-between;margin-bottom:8px;}
.reviewer{display:flex;align-items:center;gap:12px;}
.avatar{width:38px;height:38px;border-radius:50%;background:var(--accent-tint);color:var(--accent-dark);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;}
.reviewer-name{font-size:14px;font-weight:700;}
.reviewer-verified{font-size:11.5px;color:var(--success);display:flex;align-items:center;gap:4px;}
.review-date{font-size:12.5px;color:var(--muted);}
.review-text{font-size:14.5px;color:var(--ink-soft);line-height:1.7;margin-top:10px;}

/* new review form */
.new-review-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px;margin-top:30px;}
.star-input{display:inline-flex;gap:4px;}
.star-input button{background:none;border:none;padding:2px;color:var(--line);transition:transform .15s var(--ease), color .15s;}
.star-input button svg{width:26px;height:26px;}
.star-input button.selected,.star-input button:hover,.star-input button:hover ~ button{color:var(--star);}

/* ---------- Forms ---------- */
.form-card{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:40px;box-shadow:var(--shadow-sm);
}
.form-group{margin-bottom:18px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
label{display:block;font-size:13px;font-weight:600;margin-bottom:7px;color:var(--ink-soft);}
.input{
  width:100%;padding:12.5px 15px;border-radius:10px;border:1.5px solid var(--line);
  background:var(--cream);font-size:14.5px;transition:border-color .2s var(--ease), background .2s var(--ease), box-shadow .2s var(--ease);
}
.input:focus{outline:none;border-color:var(--ink);background:#fff;box-shadow:0 0 0 4px var(--line-soft);}
.input-hint{font-size:12px;color:var(--muted);margin-top:6px;}
.checkbox-row{display:flex;align-items:center;gap:9px;font-size:13.5px;color:var(--ink-soft);}
.checkbox-row input{width:16px;height:16px;accent-color:var(--ink);}

/* ---------- Cart ---------- */
.cart-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:44px;padding-bottom:80px;align-items:flex-start;}
.cart-line{
  display:grid;grid-template-columns:88px 1fr auto auto;gap:18px;align-items:center;
  padding:20px 0;border-bottom:1px solid var(--line);
  transition:opacity .3s var(--ease), transform .3s var(--ease);
}
.cart-thumb{width:88px;height:88px;border-radius:12px;display:flex;align-items:center;justify-content:center;}
.cart-thumb svg{width:40%;height:40%;}
.cart-line-name{font-size:14.5px;font-weight:600;margin-bottom:4px;}
.cart-line-opt{font-size:12.5px;color:var(--muted);margin-bottom:10px;}
.remove-link{font-size:12.5px;color:var(--muted);display:inline-flex;align-items:center;gap:5px;transition:color .2s;}
.remove-link:hover{color:var(--accent);}
.remove-link svg{width:13px;height:13px;}
.cart-line-price{font-weight:700;font-size:15px;}

.summary-card{
  background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);
  padding:28px;position:sticky;top:100px;
}
.summary-row{display:flex;justify-content:space-between;font-size:14px;color:var(--ink-soft);margin-bottom:14px;}
.summary-row.total{font-size:17px;font-weight:700;color:var(--ink);padding-top:16px;border-top:1px solid var(--line);margin-top:6px;}
.promo-row{display:flex;gap:10px;margin:20px 0;}

/* ---------- Payment method cards ---------- */
.pay-methods{display:grid;gap:12px;}
.pay-method{
  display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:12px;border:1.5px solid var(--line);
  cursor:default;transition:border-color .2s var(--ease), background .2s var(--ease);
}
.pay-method:hover{border-color:#C9C2B3;}
.pay-method.active{border-color:var(--ink);background:var(--line-soft);}
.pay-radio{width:19px;height:19px;border-radius:50%;border:1.5px solid var(--line);flex-shrink:0;position:relative;cursor:pointer;}
.pay-method.active .pay-radio{border-color:var(--ink);}
.pay-method.active .pay-radio::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--ink);}
.pay-icon{width:34px;height:34px;border-radius:8px;background:var(--line-soft);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;}
.pay-icon svg{width:18px;height:18px;}
.pay-name{font-size:14.5px;font-weight:600;}
.pay-sub{font-size:12px;color:var(--muted);}
.cod-fee-value{color:var(--success);font-weight:800;}
.card-details{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--cream);}
.card-details h4{font-size:14px;font-weight:700;margin-bottom:14px;}
.card-details .card-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.card-details .card-full{grid-column:1/-1;}
.card-security-note{margin-top:12px;padding:11px 13px;border-radius:10px;background:var(--success-tint);color:var(--success);font-size:12px;font-weight:700;line-height:1.55;}
.card-security-note svg{width:15px;height:15px;vertical-align:-2px;margin-right:5px;}
.fox-map-shell{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--paper);}
.fox-map-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;}
.fox-map-head strong{font-size:13px;font-weight:700;}
.fox-map-head a{font-size:12px;font-weight:700;color:var(--accent-dark);text-decoration:underline;}
.fox-map-frame{height:460px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--line-soft);position:relative;}
.fox-map-frame iframe{width:100%;height:100%;border:0;background:#fff;}
#fox-map{width:100%;height:100%;}
.fox-map-tools{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-bottom:10px;}
.fox-search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;max-height:210px;overflow:auto;}
.fox-search-empty{padding:10px 12px;border-radius:10px;background:var(--cream);font-size:12px;color:var(--muted);}
.fox-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px;}
.fox-preview{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--success-tint);color:var(--success);font-size:12.5px;font-weight:700;display:none;}
.fox-selected-scroll{display:none;margin-top:6px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper);overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:thin;-webkit-overflow-scrolling:touch;}
.fox-selected-scroll span{display:inline-block;min-width:max-content;font-size:13.5px;font-weight:700;color:var(--success);}
.fox-order-point{display:none;margin:12px 0 4px;padding:12px 14px;border-radius:12px;background:var(--success-tint);color:var(--success);font-size:12.5px;line-height:1.5;font-weight:700;}
.fox-order-point span{display:block;color:var(--ink-soft);font-weight:600;margin-top:2px;}
.fox-success-box{max-width:380px;margin:16px auto 20px;padding:15px 17px;border-radius:13px;background:var(--success-tint);border:1px solid rgba(62,125,90,.2);text-align:left;}
.fox-success-box strong{display:block;color:var(--success);font-size:13px;margin-bottom:5px;}
.fox-success-box span{display:block;color:var(--ink);font-size:14px;font-weight:700;line-height:1.45;}
.fox-point-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;}
.fox-point-btn{border:1px solid var(--line);background:var(--cream);border-radius:12px;padding:10px 12px;text-align:left;display:flex;flex-direction:column;gap:2px;transition:border-color .2s var(--ease), background .2s var(--ease), transform .2s var(--ease);}
.fox-point-btn:hover{border-color:#c9c2b3;transform:translateY(-1px);}
.fox-point-btn strong{font-size:13px;color:var(--ink);}
.fox-point-btn span{font-size:12px;color:var(--muted);}
.fox-point-btn.active{border-color:var(--success);background:var(--success-tint);}
.fox-selected-note{margin-top:12px;font-size:12.5px;color:var(--ink-soft);font-weight:600;}
.fox-selected-note strong{color:var(--success);}
.leaflet-container{font:inherit;}
.leaflet-control-attribution{font-size:10px;}
.pay-detail{max-height:0;overflow:hidden;transition:max-height .35s var(--ease);}
.pay-method.active .pay-detail{max-height:160px;margin-top:14px;}

.steps-row{display:flex;align-items:center;gap:10px;margin-bottom:40px;}
.step-item{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--muted);font-weight:600;}
.step-num{width:26px;height:26px;border-radius:50%;background:var(--line-soft);display:flex;align-items:center;justify-content:center;font-size:12px;}
.step-item.done .step-num{background:var(--success);color:#fff;}
.step-item.current{color:var(--ink);}
.step-item.current .step-num{background:var(--ink);color:#fff;}
.step-line{width:40px;height:1.5px;background:var(--line);}

/* ---------- Auth split ---------- */
.auth-wrap{min-height:calc(100vh - 74px);display:grid;grid-template-columns:1fr 1fr;}
.auth-visual{
  background:linear-gradient(160deg,#1F1D14,#3A2314 55%,#C1440E);
  display:flex;align-items:center;justify-content:center;padding:60px;position:relative;overflow:hidden;
}
.auth-visual-content{color:#fff;position:relative;z-index:2;max-width:380px;}
/* A logó a vizuális panel bal felső sarkában, ugyanaz a jel, mint a fejlécben. */
.auth-brand{position:absolute;top:34px;left:40px;z-index:3;display:flex;align-items:center;gap:11px;font-size:21px;font-weight:800;letter-spacing:-.02em;color:#fff;}
.auth-brand .logo-word b{color:#fff;} .auth-brand .logo-word i{color:#F3D9C4;font-style:normal;}
@media(max-width:900px){.auth-brand{top:20px;left:22px;font-size:19px;}}
.auth-visual-content .eyebrow{background:rgba(255,255,255,.14);color:#fff;}
.auth-visual-content h2{font-size:32px;font-weight:700;margin:16px 0;line-height:1.2;}
.auth-visual-content p{color:#E7DCCB;font-size:15px;line-height:1.7;}
.auth-form-side{display:flex;align-items:center;justify-content:center;padding:60px 40px;}
.auth-form-inner{width:100%;max-width:400px;}

/* ---------- Fiók (a bejelentkezéssel azonos, kéthasábos elrendezés) ---------- */
.auth-form-inner.wide{max-width:520px;}
.account-head{display:flex;align-items:center;gap:16px;margin-bottom:10px;}
.account-avatar{width:56px;height:56px;flex:none;border-radius:50%;background:var(--paper);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;color:var(--ink);}
.account-avatar svg{width:26px;height:26px;}
.account-head h1{font-size:24px;font-weight:800;letter-spacing:-.02em;margin-bottom:2px;}
.account-head p{color:var(--muted);font-size:13.5px;}
.acc-sub{font-size:13px;color:var(--muted);margin:0 0 16px;}
.acc-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-bottom:1px solid var(--line-soft);flex-wrap:wrap;}
.acc-main{min-width:0;flex:1;}
.acc-label{font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;}
.acc-value{font-size:15px;font-weight:600;color:var(--ink);background:none;border:none;padding:0;text-align:left;font-family:inherit;cursor:pointer;}
.acc-value.masked{color:var(--muted);letter-spacing:.02em;}
.acc-value.masked:hover{color:var(--ink-soft);}
.acc-value.empty{color:var(--muted);font-weight:500;cursor:default;}
.acc-note{font-size:12.5px;color:var(--muted);line-height:1.55;margin-top:5px;}
.acc-side{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.acc-edit{border-bottom:1px solid var(--line-soft);padding:16px 0 6px;}
.acc-edit .form-group{margin-bottom:14px;}
.acc-hint{font-size:13px;color:var(--muted);line-height:1.6;margin-bottom:14px;}
.acc-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px;}
.acc-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:20px 0 4px;}
.acc-link{font-size:13.5px;font-weight:700;color:var(--ink);text-decoration:underline;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;}
.acc-link.danger{color:var(--accent-dark);}
.acc-msg{border-radius:10px;padding:11px 13px;font-size:13.5px;font-weight:600;margin-bottom:12px;}
.acc-msg.ok{background:#E4F4EA;color:#1B7F4B;}
.acc-msg.err{background:#FCE9E4;color:#A5391A;}
@media(max-width:680px){.acc-row{align-items:flex-start;}.acc-side{width:100%;justify-content:space-between;}}
/* ---------- Account ---------- */
.verify-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:6px 18px;margin-bottom:24px;}
.verify-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line-soft);flex-wrap:wrap;}
.verify-row:last-child{border-bottom:none;}
.verify-card .verify-row:last-of-type{border-bottom:none;}
.vr-label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.vr-value{font-size:15px;font-weight:600;color:var(--ink);}
.verify-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap;}
.verify-badge svg{width:15px;height:15px;flex:none;}
.verify-badge.ok{background:#E4F4EA;color:#1B7F4B;}
.verify-badge.wait{background:#FDF0D2;color:#8A6100;}
.approval-banner{background:#FDF0D2;color:#6b4b00;border-bottom:1px solid #f0dfae;padding:12px 20px;font-size:13.5px;line-height:1.6;text-align:center;}
.approval-banner strong{color:#5a3f00;}
.approval-chip.rejected{display:inline-flex;align-items:center;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:700;background:#FCE9E4;color:#A5391A;}
.verify-note{font-size:12.5px;color:var(--muted);line-height:1.6;padding:0 0 14px;margin-top:-6px;}
.account-layout{display:grid;grid-template-columns:260px 1fr;gap:40px;padding-bottom:80px;}
.account-nav{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:14px;height:fit-content;}
.account-nav a{
  display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;font-size:14px;font-weight:600;color:var(--ink-soft);
  transition:background .2s var(--ease), color .2s var(--ease);margin-bottom:2px;
}
.account-nav a svg{width:17px;height:17px;}
.account-nav a:hover{background:var(--line-soft);}
.account-nav a.active{background:var(--ink);color:#fff;}
.order-row{
  display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:16px;align-items:center;
  padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;background:var(--paper);
  transition:box-shadow .2s var(--ease);
}
.order-row:hover{box-shadow:var(--shadow-sm);}
.order-status{
  display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;width:fit-content;
}
.order-status.delivered{background:var(--success-tint);color:var(--success);}
.order-status.transit{background:#FFF3D6;color:#9A6B00;}
.order-status.processing{background:#E7E1D6;color:var(--ink-soft);}
.order-status.prepared{background:#E3EEF3;color:#2C6E8C;}
.order-tracking{grid-column:1/-1;margin-top:4px;padding-top:16px;border-top:1px solid var(--line-soft);}
.tracking-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;position:relative;}
.tracking-step{position:relative;text-align:center;color:var(--muted);font-size:11.5px;font-weight:700;padding-top:34px;}
.tracking-step::before{content:'';position:absolute;top:10px;left:-50%;right:50%;height:3px;background:var(--line);z-index:0;}
.tracking-step:first-child::before{display:none;}
.tracking-dot{position:absolute;top:0;left:50%;transform:translateX(-50%);width:24px;height:24px;border-radius:50%;background:var(--line-soft);border:2px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:11px;z-index:1;}
.tracking-step.done,.tracking-step.current{color:var(--ink);}
.tracking-step.done::before,.tracking-step.current::before{background:var(--success);}
.tracking-step.done .tracking-dot{background:var(--success);border-color:var(--success);color:#fff;}
.tracking-step.current .tracking-dot{background:var(--paper);border-color:var(--success);color:var(--success);box-shadow:0 0 0 4px var(--success-tint);}
.order-item-track{margin-top:12px;padding:14px;border:1px solid var(--line-soft);border-radius:12px;background:var(--cream);}
.order-item-track-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px;font-size:13px;}
.admin-item-statuses{display:flex;flex-direction:column;gap:10px;min-width:300px;}
.admin-item-status{padding:10px;border:1px solid var(--line-soft);border-radius:10px;background:var(--cream);}
.admin-item-status-name{font-size:12px;font-weight:700;margin-bottom:7px;line-height:1.35;}
.admin-item-status-actions{display:flex;gap:6px;align-items:center;}
.address-autocomplete{position:relative;}
.address-suggestions{display:none;position:absolute;left:0;right:0;top:calc(100% + 7px);z-index:1200;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 45px rgba(23,22,15,.16);padding:7px;max-height:300px;overflow:auto;}
.address-suggestions.open{display:block;}
.address-suggestion{width:100%;border:0;background:transparent;border-radius:10px;padding:11px 12px;text-align:left;display:flex;gap:10px;align-items:flex-start;color:var(--ink);font:inherit;cursor:pointer;}
.address-suggestion:hover,.address-suggestion:focus{background:var(--line-soft);outline:none;}
.address-suggestion-pin{flex:0 0 28px;width:28px;height:28px;border-radius:9px;background:var(--success-tint);display:flex;align-items:center;justify-content:center;}
.address-suggestion strong{display:block;font-size:13px;line-height:1.35;}
.address-suggestion span{display:block;font-size:11.5px;color:var(--muted);margin-top:2px;}
.address-search-state{font-size:12px;color:var(--muted);padding:10px 12px;}
.address-source{font-size:10.5px;color:var(--muted);padding:7px 12px 5px;border-top:1px solid var(--line-soft);margin-top:4px;}
.free-shipping-note{display:flex;align-items:flex-start;gap:9px;margin:10px 0 4px;padding:10px 12px;border-radius:12px;background:#FFF7E5;border:1px solid #F2DFAE;color:#7A5800;font-size:12px;line-height:1.45;}
.free-shipping-note strong{color:inherit;}
.free-shipping-note .free-ship-icon{flex:0 0 23px;width:23px;height:23px;border-radius:8px;background:rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center;}
.tracking-page{max-width:980px;padding-top:42px;padding-bottom:80px;}
.tracking-hero{padding:36px;border-radius:24px;background:linear-gradient(135deg,#1f1d14,#3b3328);color:#fff;margin-bottom:22px;position:relative;overflow:hidden;}
.tracking-hero:after{content:'📦';position:absolute;right:30px;top:8px;font-size:110px;opacity:.09;transform:rotate(-8deg);}
.tracking-hero h1{font-size:32px;margin-bottom:9px;position:relative;z-index:1;}
.tracking-hero p{color:#ddd5c8;max-width:650px;line-height:1.6;position:relative;z-index:1;}
.tracking-search{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;margin-top:24px;position:relative;z-index:1;}
.tracking-search .input{background:#fff;}
.tracking-order-card{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:24px;margin-bottom:16px;box-shadow:var(--shadow-sm);}
.tracking-order-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;}
.tracking-order-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:12.5px;margin-top:5px;}
.tracking-products{display:grid;gap:10px;margin-top:18px;}
.tracking-carrier-note{margin-top:15px;padding:12px 14px;border-radius:12px;background:#EAF3F7;color:#2C6078;font-size:12.5px;font-weight:600;}
.admin-orders-grid{display:grid;gap:16px;}
.admin-order-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:20px;}
.admin-order-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:16px;}
.admin-order-head h3{font-size:17px;margin-bottom:4px;}
.admin-order-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;}
.admin-order-summary>div{background:var(--cream);border-radius:11px;padding:11px 12px;font-size:12px;color:var(--muted);}
.admin-order-summary strong{display:block;color:var(--ink);font-size:13px;margin-top:3px;word-break:break-word;}
.admin-products-list{display:grid;gap:7px;margin-bottom:16px;}
.admin-product-line{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line-soft);border-radius:10px;font-size:12.5px;}
.admin-status-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:15px 0;}
.admin-status-option{border:1px solid var(--line);background:var(--cream);border-radius:11px;padding:9px 7px;font-size:11.5px;font-weight:700;color:var(--muted);cursor:pointer;}
.admin-status-option.active{background:var(--ink);border-color:var(--ink);color:#fff;}
.admin-dispatch-box{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;align-items:end;padding:15px;border-radius:14px;background:var(--line-soft);margin-top:14px;}
.admin-dispatch-box .form-group{margin:0;}
.admin-auto-note{grid-column:1/-1;font-size:11.5px;color:var(--muted);}
.checkout-error{display:none;background:#FBEAE1;color:var(--accent-dark);border-radius:10px;padding:12px 14px;font-size:13px;font-weight:700;margin-bottom:18px;}
.gls-selected-scroll{display:none;margin-top:8px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper);overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:thin;-webkit-overflow-scrolling:touch;}
.gls-selected-scroll span{display:inline-block;min-width:max-content;font-size:13.5px;font-weight:700;color:var(--success);}
.gls-map-shell{margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--paper);}
.gls-map-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;}
.gls-map-head strong{font-size:13px;font-weight:700;}
.gls-map-head a{font-size:12px;font-weight:700;color:var(--accent-dark);text-decoration:underline;}
.gls-map-frame{height:520px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--line-soft);position:relative;}
#gls-map{width:100%;height:100%;}
.gls-map-status{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;font-size:12.5px;color:var(--muted);min-height:22px;}
.gls-map-status strong{color:var(--ink-soft);}
.gls-map-status .btn{padding:6px 11px;font-size:12px;}
.gls-map-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(251,248,242,.88);z-index:500;font-size:13px;font-weight:700;color:var(--ink-soft);}
.gls-map-loading[hidden]{display:none;}
.map-scroll-hint{margin-top:9px;font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px;}
.map-scroll-hint::before{content:'🖱️';font-size:12px;}
/* Térkép pin + pontcsoportok (dizájnos megjelenés) */
.virex-pin-wrap{background:none!important;border:none!important;}
.virex-pin{display:block;width:16px;height:16px;border-radius:50% 50% 50% 0;background:var(--pin,#0A2A6B);border:2px solid #fff;box-shadow:0 2px 5px rgba(23,22,15,.35);transform:rotate(-45deg);transition:transform .15s var(--ease);}
.virex-pin.sel{width:22px;height:22px;background:var(--success);box-shadow:0 4px 10px rgba(23,22,15,.45);}
.leaflet-marker-icon:hover .virex-pin{transform:rotate(-45deg) scale(1.15);}
.virex-cluster{background:rgba(23,22,15,.18);border-radius:50%;}
.virex-cluster div{width:34px;height:34px;margin:3px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;box-shadow:0 2px 6px rgba(23,22,15,.35);border:2px solid #fff;}
.leaflet-container{background:#EDE7DB;}
.return-hero{padding:54px 0 24px;max-width:820px;}
.return-hero h1{font-size:36px;line-height:1.12;margin-bottom:12px;}
.return-hero p{font-size:15.5px;color:var(--muted);max-width:700px;}
.return-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding-bottom:34px;}
.return-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:28px;}
.return-card h2{font-size:19px;margin-bottom:16px;}
.return-card h3{font-size:14.5px;margin:18px 0 7px;}
.return-card p,.return-card li{font-size:13.5px;color:var(--ink-soft);line-height:1.7;}
.return-steps{display:grid;gap:12px;counter-reset:returnstep;}
.return-step{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line-soft);}
.return-step:last-child{border-bottom:none;}
.return-step::before{counter-increment:returnstep;content:counter(returnstep);width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;}
.return-step strong{display:block;font-size:14px;margin-bottom:3px;}
.return-callout{padding:14px 16px;border-radius:12px;background:#FFF3D6;color:#7B5700;font-size:13px;line-height:1.65;margin-top:16px;}
.return-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;background:var(--success-tint);color:var(--success);font-size:12.5px;font-weight:800;margin-bottom:16px;}
.return-success{background:var(--success-tint);border:1px solid rgba(62,125,90,.2);color:var(--success);padding:16px 18px;border-radius:13px;font-weight:700;margin-bottom:20px;}
.email-note{font-size:11.5px;color:var(--muted);margin-top:8px;}

/* ---------- Admin ---------- */
:root{--admin-storebar-h:60px;}
.admin-storebar{min-width:0;justify-self:center;align-self:center;}
.admin-storebar-inner{display:flex;align-items:center;justify-content:center;gap:28px;min-height:44px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.admin-storebar-inner::-webkit-scrollbar{display:none;}
.admin-storebar-inner a{flex:0 0 auto;font-size:14.5px;font-weight:500;color:var(--ink-soft);position:relative;padding:4px 0;transition:color .2s var(--ease);}
.admin-storebar-inner a::after{content:'';position:absolute;left:0;bottom:-2px;height:1.5px;width:0;background:var(--accent);transition:width .3s var(--ease);}
.admin-storebar-inner a:hover{color:var(--ink);}
.admin-storebar-inner a:hover::after,.admin-storebar-inner a.active::after{width:100%;}
.admin-storebar-inner a.active{color:var(--ink);font-weight:600;}
.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh;background:var(--cream);}
.admin-sidebar{background:var(--ink);color:#D9D5C9;padding:26px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;}
.admin-logo{color:#fff;font-weight:700;font-size:18px;display:flex;align-items:center;gap:9px;padding:0 10px 30px;}
.admin-nav a{
  display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;font-size:14px;font-weight:600;
  color:#B9B4A6;margin-bottom:4px;transition:all .2s var(--ease);
}
.admin-nav a svg{width:17px;height:17px;}
.admin-nav a:hover{background:rgba(255,255,255,.06);color:#fff;}
.admin-nav a.active{background:var(--accent);color:#fff;}
.admin-nav a .admin-nav-label{flex:1;}
.admin-nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:#E5484D;color:#fff;font-size:11.5px;font-weight:800;line-height:1;box-shadow:0 0 0 3px rgba(229,72,77,.22);}
.admin-mobile-nav a{position:relative;display:inline-flex;align-items:center;gap:7px;}
.admin-mobile-nav .admin-nav-badge{min-width:18px;height:18px;font-size:10.5px;box-shadow:none;}
.admin-main{padding:34px 40px;}
.admin-top-actions{display:flex;align-items:center;gap:10px;flex:none;}
.admin-account{flex:none;background:var(--paper);border:1px solid var(--line);color:var(--ink);}
.admin-account:hover{background:var(--line-soft);}
.admin-mobile-nav{display:none;gap:8px;overflow-x:auto;margin-bottom:20px;padding-bottom:4px;-webkit-overflow-scrolling:touch;}
.admin-mobile-nav a{flex:0 0 auto;padding:10px 15px;border-radius:999px;border:1px solid var(--line);background:var(--paper);font-size:13px;font-weight:700;color:var(--ink-soft);white-space:nowrap;}
.admin-mobile-nav a.active{background:var(--ink);border-color:var(--ink);color:#fff;}
.admin-top{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(280px,1fr);align-items:center;gap:24px;margin:-34px -40px 30px;padding:17px 40px 15px;position:sticky;top:0;z-index:46;background:rgba(251,248,242,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
.admin-heading{min-width:0;}
.admin-title{font-size:24px;font-weight:700;}
.admin-top-actions{justify-self:end;}
.admin-sub{color:var(--muted);font-size:13.5px;margin-top:4px;}
.date-pill{display:flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line);padding:9px 16px;border-radius:999px;font-size:13.5px;font-weight:600;}
.date-pill svg{width:15px;height:15px;color:var(--muted);}

.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px;}
.kpi-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;transition:transform .25s var(--ease), box-shadow .25s var(--ease);}
.kpi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);}
.kpi-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;}
.kpi-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;}
.kpi-icon svg{width:18px;height:18px;}
.kpi-delta{font-size:12px;font-weight:700;padding:4px 9px;border-radius:999px;display:flex;align-items:center;gap:3px;}
.kpi-delta.up{background:var(--success-tint);color:var(--success);}
.kpi-delta.down{background:#FBEAE1;color:var(--accent-dark);}
.kpi-value{font-size:27px;font-weight:700;letter-spacing:-.01em;margin-bottom:4px;}
.kpi-label{font-size:13px;color:var(--muted);}

.panel-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;margin-bottom:20px;}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px;}
.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;}
.panel-head h3{font-size:15.5px;font-weight:700;}
.legend{display:flex;gap:16px;}
.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);}
.legend-dot{width:8px;height:8px;border-radius:50%;}

.donut-wrap{display:flex;align-items:center;gap:26px;}
.donut-legend{flex:1;display:flex;flex-direction:column;gap:14px;}
.donut-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;}
.donut-row-label{display:flex;align-items:center;gap:9px;font-weight:600;color:var(--ink-soft);}
.donut-row strong{font-size:14px;}

.table-wrap table{width:100%;border-collapse:collapse;}
.table-wrap th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:0 14px 12px;font-weight:700;}
.table-wrap td{padding:14px;font-size:13.5px;border-top:1px solid var(--line-soft);}
.table-wrap tr:hover td{background:var(--line-soft);}
.pay-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;}
.pay-chip.card{background:#E3EEF3;color:#2C6E8C;}
.pay-chip.cod{background:#FCEFD0;color:#9A6B00;}
.pay-chip.apple{background:#111;color:#fff;}
.pay-chip.transfer{background:#EDEAF5;color:#5D4A9E;}





/* ---------- Beszállító-választó (C3) ---------- */
.sup-wrap{display:flex;gap:18px;align-items:flex-start;margin-bottom:22px;}
.sup-rail{display:flex;flex-direction:column;gap:5px;width:196px;flex:none;
  background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:9px;}
.sup-rail-title{font-size:10.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:var(--muted);padding:5px 9px 7px;}
.rail-item{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:11px;
  cursor:pointer;transition:.15s var(--ease);border:1px solid transparent;background:transparent;
  font:inherit;text-align:left;width:100%;}
.rail-item:hover{background:var(--line-soft);}
.rail-item.on{background:var(--ink);color:#fff;}
.rail-logo{width:24px;height:24px;border-radius:7px;display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:800;color:#fff;flex:none;letter-spacing:-.02em;}
.rail-item .nm{font-size:13px;font-weight:600;flex:1;line-height:1.2;}
.rail-item .ct{font-size:10.5px;color:var(--muted);display:block;font-weight:500;}
.rail-item.on .ct{color:#cfc8ba;}
.rail-dot{width:7px;height:7px;border-radius:50%;flex:none;}
.rail-dot.ok{background:var(--success);}
.rail-dot.warn{background:var(--star);}
.rail-dot.off{background:var(--muted);opacity:.6;}
.sup-panel{flex:1;min-width:0;}
.sup-panel > .panel{margin-bottom:0 !important;}
@media(max-width:820px){
  .sup-wrap{flex-direction:column;}
  .sup-rail{width:100%;flex-direction:row;overflow-x:auto;padding:8px;}
  .sup-rail-title{display:none;}
  .rail-item{width:auto;white-space:nowrap;}
}

/* ---------- Visszaküldés (B2) ---------- */
.ret-wrap{max-width:660px;margin:44px auto 80px;padding:0 20px;}
.ret-card{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow);}
.ret-top{display:flex;gap:14px;align-items:center;margin-bottom:22px;}
.ret-mark{width:46px;height:46px;border-radius:13px;background:var(--accent-tint);color:var(--accent);
  display:flex;align-items:center;justify-content:center;font-size:21px;flex:none;}
.ret-top h1{font-size:21px;font-weight:800;letter-spacing:-.01em;}
.ret-top p{font-size:13px;color:var(--muted);margin-top:2px;}
.ret-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px;}
.reason{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:13px;
  padding:12px 13px;background:var(--cream);cursor:pointer;transition:.18s var(--ease);text-align:left;font:inherit;}
.reason:hover{border-color:var(--ink-soft);}
.reason.on{border-color:var(--accent);background:var(--accent-tint);box-shadow:0 0 0 2px rgba(193,68,14,.1);}
.reason .em{font-size:17px;line-height:1;}
.reason strong{font-size:13px;font-weight:700;display:block;}
.reason small{font-size:11px;color:var(--muted);display:block;line-height:1.35;}
.reason.on small{color:var(--accent-dark);}
.ret-foot{margin-top:14px;font-size:12px;color:var(--muted);text-align:center;line-height:1.55;}
.ret-links{display:flex;gap:16px;justify-content:center;margin-top:16px;flex-wrap:wrap;font-size:12.5px;}
.ret-links a{color:var(--ink-soft);text-decoration:underline;}
.ret-links a:hover{color:var(--accent);}
@media(max-width:560px){.ret-card{padding:20px;}.ret-grid2,.reason-grid{grid-template-columns:1fr;}}






/* ---------- Fiók: adatkezelés ---------- */
.account-privacy{margin-top:18px;padding-top:16px;border-top:1px solid var(--line-soft);}
.ap-title{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:9px;padding:0 4px;}
.ap-link{display:block;width:100%;text-align:left;background:none;border:none;font:inherit;font-size:12.5px;
  color:var(--ink-soft);padding:7px 4px;cursor:pointer;border-radius:8px;transition:.15s var(--ease);text-decoration:none;}
.ap-link:hover{background:var(--line-soft);color:var(--ink);}
.ap-link.danger{color:var(--accent-dark);}

/* ---------- Bolti kereső és lapozó ---------- */
.shop-search{display:flex;gap:6px;}
.shop-search .input{padding:9px 12px;flex:1;min-width:0;}
.shop-search button{width:38px;flex:none;border:1px solid var(--line);background:var(--ink);color:#fff;
  border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s var(--ease);}
.shop-search button:hover{background:var(--accent);border-color:var(--accent);}
.shop-search button svg{width:15px;height:15px;}
.search-clear{display:inline-block;margin-top:9px;font-size:12px;color:var(--muted);text-decoration:underline;cursor:pointer;}
.search-clear:hover{color:var(--accent);}
.plp-pager{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:34px;}
.plp-pager-info{font-size:13px;color:var(--muted);font-weight:600;}

/* ---------- GYIK ---------- */
.faq-list{display:flex;flex-direction:column;gap:9px;}
.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:0 18px;transition:.18s var(--ease);}
.faq-item[open]{border-color:var(--ink-soft);box-shadow:var(--shadow);}
.faq-item summary{cursor:pointer;list-style:none;padding:16px 0;font-size:14.5px;font-weight:650;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';font-size:20px;font-weight:400;color:var(--muted);flex:none;transition:.2s var(--ease);}
.faq-item[open] summary::after{content:'−';color:var(--accent);}
.faq-item p{font-size:14px;line-height:1.7;color:var(--ink-soft);padding:0 0 18px;margin:0;}

/* ---------- Követőkártya adatai ---------- */
.track-facts{
  margin-top:16px;padding-top:15px;border-top:1px solid var(--line-soft);
  display:flex;flex-direction:column;gap:11px;
}
.track-facts > div{display:flex;flex-direction:column;gap:2px;min-width:0;}

.track-facts .tf-k{font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);}
.track-facts .tf-v{font-size:13px;font-weight:650;line-height:1.45;}
.track-facts .tf-note{font-weight:500;color:var(--muted);}




/* ---------- Admin: beszállítós menüpontok ---------- */
.admin-nav-sep{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:#7d7566;padding:20px 14px 8px;margin-top:6px;border-top:1px solid rgba(255,255,255,.08);}
.nav-sup-logo{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:800;color:#fff;flex:none;letter-spacing:-.02em;}
.admin-nav .nav-sup-sub{display:block;font-size:10.5px;font-weight:500;color:#8b8375;line-height:1.2;margin-top:1px;}
.admin-nav a.active .nav-sup-sub{color:#e8d9c8;}


/* ---------- Admin: számla ---------- */
.inv-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-radius:12px;padding:11px 14px;margin-bottom:10px;
  background:#F3F6FB;border:1px solid #D3DFF0;}
.inv-box.done{background:#F2FBF6;border-color:#C9E6D4;}
.inv-box.err{background:#FFF3F1;border-color:#F0CDC8;}
.inv-box.storno{background:#FAF6EE;border-color:#E7DCC5;}
.inv-title{font-size:12.5px;font-weight:750;color:#28425F;flex:1;min-width:170px;}
.inv-box.done .inv-title{color:#1b6b42;}
.inv-box.err .inv-title{color:#B42318;}
.inv-box.storno .inv-title{color:#7A5510;}
.inv-sub{display:block;font-weight:500;font-size:11.5px;color:var(--muted);margin-top:2px;line-height:1.45;}

/* ---------- Admin: 2 órás zár ---------- */
.admin-lock{
  display:flex;align-items:center;gap:11px;background:#FFF8EC;border:1px solid #F0DCB4;
  border-radius:12px;padding:11px 14px;margin-bottom:12px;
}
.admin-lock .al-ico{font-size:17px;line-height:1;}
.admin-lock strong{display:block;font-size:13px;font-weight:750;color:#7A5510;}
.admin-lock span{font-size:12px;color:#8A6520;line-height:1.5;}
.admin-status-option[disabled],.btn[disabled].is-locked{opacity:.45;cursor:not-allowed;}

/* ---------- Lemondott rendelés ---------- */
.order-status.cancelled{background:#FFF0EF;color:#B42318;}

.tracking-order-card.is-cancelled{
  border-color:#e6c9c4;background:linear-gradient(180deg,#FFF7F6 0%,var(--paper) 90px);
  position:relative;overflow:hidden;
}
.tracking-order-card.is-cancelled::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#B42318;
}
.tracking-order-card.is-cancelled .vtrack{opacity:.4;filter:grayscale(1);}
.cancel-note{font-size:11.5px;color:#B42318;font-weight:600;margin-top:9px;display:flex;align-items:center;gap:6px;}

/* ---------- Rendelésmódosítás (A1) ---------- */
.mod-window{display:flex;align-items:flex-start;gap:12px;padding:13px 15px;border-radius:13px;
  background:var(--success-tint);border:1px solid #c9e0d3;margin-top:16px;}
.mod-window.soon{background:#FFF3D6;border-color:#f0dfae;}
.mod-window.closed{background:var(--line-soft);border-color:var(--line);}
.mod-window .mw-ico{display:flex;flex:none;line-height:1;}
.mod-window .mw-ico svg{width:19px;height:19px;}
.mod-window strong{display:block;font-size:13px;}
.mod-window span{font-size:12px;color:var(--ink-soft);line-height:1.45;}
.mod-bar{height:5px;border-radius:99px;background:#d6e6dc;overflow:hidden;margin-top:7px;max-width:280px;}
.mod-bar i{display:block;height:100%;background:var(--success);border-radius:99px;transition:width 1s linear;}
.mod-window.soon .mod-bar{background:#f0e2c0;} .mod-window.soon .mod-bar i{background:var(--star);}
.mod-actions{display:flex;gap:9px;flex-wrap:wrap;padding-top:15px;margin-top:15px;border-top:1px solid var(--line-soft);}
.btn-danger-soft{background:transparent;border:1px solid #e6bfba;color:#B42318;}
.btn-danger-soft:hover{background:#FFF0EF;color:#8f1d13;}
.cancelled-chip{background:#FFF0EF;color:#B42318;}

/* modal */
.modal-back{position:fixed;inset:0;background:rgba(23,22,15,.55);backdrop-filter:blur(3px);
  z-index:200;display:flex;align-items:flex-start;justify-content:center;padding:26px 16px;overflow:auto;}
.modal-box{background:var(--paper);border-radius:22px;max-width:760px;width:100%;
  box-shadow:0 30px 70px -20px rgba(23,22,15,.5);overflow:hidden;animation:modalIn .25s var(--ease);}
@keyframes modalIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.modal-head{display:flex;align-items:flex-start;gap:14px;padding:22px 24px 16px;border-bottom:1px solid var(--line-soft);}
.modal-head h3{font-size:19px;font-weight:800;letter-spacing:-.01em;}
.modal-head p{font-size:13px;color:var(--muted);margin-top:3px;}
.modal-close{margin-left:auto;width:34px;height:34px;border-radius:50%;border:0;background:var(--line-soft);
  font-size:17px;cursor:pointer;color:var(--ink-soft);flex:none;}
.modal-close:hover{background:var(--line);}
.modal-body{padding:20px 24px;max-height:66vh;overflow:auto;}
.modal-foot{display:flex;gap:10px;justify-content:flex-end;padding:16px 24px 20px;border-top:1px solid var(--line-soft);flex-wrap:wrap;}
.modal-warn{background:#FFF0EF;border:1px solid #f0cdc8;color:#8f1d13;border-radius:12px;padding:13px 15px;font-size:13px;line-height:1.5;}
@media(max-width:560px){.modal-box{border-radius:18px;}.modal-body{padding:16px;}.modal-head{padding:18px 16px 13px;}.modal-foot{padding:14px 16px 18px;}}

/* ---------- Vonalas furgonos rendeléskövetés ---------- */
.vtrack{position:relative;width:100%;background:var(--cream);border:1px solid var(--line-soft);
  border-radius:14px;padding:8px 0 2px;overflow:hidden;}
.vtrack svg{display:block;width:100%;height:auto;}
.vtrack .ln{fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;}
.vtrack .ln.thin{stroke-width:1.6;}
.vtrack .ln.soft{stroke:var(--line);}
.vtrack .fillcream{fill:var(--cream);}
.vtrack .fillpaper{fill:var(--paper);}
.vtrack .hub{fill:var(--ink);}
.vtrack .lncream{fill:none;stroke:var(--cream);stroke-width:1.6;stroke-linecap:round;}
.vtrack .dashtyre{stroke-dasharray:2.6 2.6;}
.vtrack .vbody{stroke:var(--accent);}
.vtrack .trail{stroke:var(--accent);}
.vtrack .tick{stroke:var(--line);stroke-width:2.6;stroke-linecap:round;}
.vtrack .tick.on{stroke:var(--accent);}
.vtrack .ticklabel{font-size:11.5px;font-weight:700;fill:var(--muted);}
.vtrack .ticklabel.on{fill:var(--ink);}
.vtrack.done .vbody,.vtrack.done .trail,.vtrack.done .tick.on{stroke:var(--success);}
.vtrack .van{animation:vtBob 1.5s ease-in-out infinite alternate;}
@keyframes vtBob{to{transform:translateY(-1.2px);}}
.vtrack .wheel{transform-box:fill-box;transform-origin:center;animation:vtRoll 1.25s linear infinite;}
@keyframes vtRoll{to{transform:rotate(360deg);}}
.vtrack.done .wheel{animation-play-state:paused;}
.vtrack.done .van{animation:none;}
.vtrack .smoke{transform-box:fill-box;transform-origin:center bottom;
  animation:vtPuff 3.4s ease-out infinite;opacity:0;}
@keyframes vtPuff{0%{opacity:0;transform:translateY(6px) scale(.6);}
  30%{opacity:.55;}100%{opacity:0;transform:translateY(-11px) scale(1.2);}}
@media(max-width:560px){.vtrack .ticklabel{font-size:15px;}}

/* ---------- Jogi oldalak / tesztüzem ---------- */
.setup-banner{background:#FFF3D6;color:#765100;border-bottom:1px solid #E8D49F;padding:9px 16px;text-align:center;font-size:12.5px;font-weight:700;}
.legal-wrap{max-width:900px;margin:0 auto;padding:48px 0 80px;}
.legal-hero{margin-bottom:24px;}
.legal-hero h1{font-size:34px;line-height:1.15;margin-bottom:10px;}
.legal-hero p{color:var(--muted);font-size:14px;}
.legal-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px;margin-bottom:18px;}
.legal-card h2{font-size:19px;margin-bottom:12px;}
.legal-card h3{font-size:15px;margin:18px 0 7px;}
.legal-card p,.legal-card li{font-size:14px;line-height:1.75;color:var(--ink-soft);}
.legal-card ul{list-style:disc;padding-left:20px;}
.legal-warning{background:#FFF3D6;color:#765100;border:1px solid #E8D49F;border-radius:12px;padding:14px 16px;margin-bottom:18px;font-size:13px;font-weight:700;}
.subblock-sep{margin:22px 0 16px;padding-top:18px;border-top:1px dashed var(--line);font-weight:700;font-size:14.5px;color:var(--ink);}
.pay-method.disabled{opacity:.55;cursor:not-allowed;}
.pay-soon{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--line-soft);color:var(--muted);font-size:11px;font-weight:700;vertical-align:middle;}
.terms-box{margin-top:18px;padding:14px 15px;border:1px solid var(--line);border-radius:12px;background:var(--cream);}
/* A címke NEM flex: különben a benne lévő linkek külön flex-elemként
   külön sorba törnek, és szétesik a mondat („ÁSZF-et" / „, valamint az" / „."). */
.terms-box label{display:block;margin:0;font-weight:600;line-height:1.55;}
.terms-box input{margin-top:3px;width:17px;height:17px;accent-color:var(--ink);flex-shrink:0;}
.supplier-manual-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:center;}
@media(max-width:680px){.legal-wrap{padding:34px 0 60px}.legal-card{padding:22px}.supplier-manual-actions{justify-content:flex-start}.setup-banner{font-size:11.5px}}

/* ---------- Responsive ---------- */
.nav-toggle{display:none;width:40px;height:40px;border-radius:50%;border:none;background:transparent;align-items:center;justify-content:center;color:var(--ink);}
.nav-toggle svg{width:22px;height:22px;}

@media(max-width:1080px){
  .grid-4{grid-template-columns:repeat(2,1fr);}
  .grid-3{grid-template-columns:repeat(2,1fr);}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .pd-grid,.cart-layout,.auth-wrap,.account-layout,.panel-grid,.checkout-layout{grid-template-columns:1fr;}
  .kpi-grid{grid-template-columns:1fr 1fr;}
  .admin-shell{grid-template-columns:1fr;}
  .admin-sidebar{display:none;}
  .admin-mobile-nav{display:flex;}
  .admin-main{padding:26px 24px;}
  .hero-grid{grid-template-columns:1fr;}
  .hero-visual{order:-1;height:auto;max-width:340px;margin:0 auto;}
}

@media(max-width:680px){
  .container{padding:0 20px;}
  .header-inner{position:relative;}
  .main-nav{
    display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;
    background:var(--paper);flex-direction:column;gap:0;
    padding:6px 20px 14px;border-bottom:1px solid var(--line);box-shadow:var(--shadow);
  }
  .main-nav.open{display:flex;}
  .main-nav a{padding:13px 0;border-bottom:1px solid var(--line-soft);font-size:15px;}
  .main-nav a::after{display:none;}
  .nav-toggle{display:flex;}
  .logo{font-size:18px;}

  .hero{padding:44px 0 56px;}
  .hero h1{font-size:32px;}
  .hero p.lead{font-size:15.5px;}
  .hero-cta{flex-direction:column;}
  .hero-cta .btn{width:100%;}
  .hero-stats{flex-wrap:wrap;row-gap:16px;}
  .hero-visual{max-width:270px;}
  /* Kis kijelzőn a kártyák a jel közepére kerülnek, hogy ne lógjanak ki. */
  .floating-card{padding:8px 11px;gap:8px;}
  .floating-card .fc-icon{width:26px;height:26px;}
  .floating-card .fc-title{font-size:11.5px;}
  .floating-card .fc-sub{font-size:10px;}
  .floating-card.c1{top:22%;left:50%;}
  .floating-card.c2{top:78%;left:50%;}

  .section{padding:48px 0;}
  .section-head{flex-direction:column;align-items:flex-start;gap:12px;}
  .section-title{font-size:24px;}
  .trust-strip{flex-direction:column;padding:22px;}
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr 1fr;gap:14px;}
  .footer-grid{grid-template-columns:1fr;gap:30px;}
  .form-row{grid-template-columns:1fr;}
  .pay-method.active .pay-detail{max-height:320px;}
  .plp-layout{grid-template-columns:1fr;}
  .filter-box{order:2;}
  .order-row{grid-template-columns:1fr 1fr;row-gap:10px;}
  .kpi-grid{grid-template-columns:1fr;}
  .panel-grid{grid-template-columns:1fr;}
  .auth-form-side{padding:40px 22px;}
  .form-card{padding:24px;}
  .donut-wrap{flex-direction:column;align-items:flex-start;}

  .hero-visual[style*="padding:64px"]{
    flex-direction:column;align-items:flex-start;padding:34px 24px !important;height:auto !important;gap:22px;
  }
  .hero-visual[style*="padding:64px"] form{width:100%;flex-direction:column;}
  .hero-visual[style*="padding:64px"] input{width:100% !important;}
}

/* =========================================================
   Tervana — éles verzió kiegészítések
   ========================================================= */
.product-media img{width:100%;height:100%;object-fit:cover;display:block;}
.pd-gallery-main img{width:100%;height:100%;object-fit:cover;}
.pd-thumb img{width:100%;height:100%;object-fit:cover;}
.cart-thumb img,.mini-thumb img{width:100%;height:100%;object-fit:cover;border-radius:inherit;}
.thumb-sm{width:44px;height:44px;border-radius:8px;object-fit:cover;display:block;}

.flash{max-width:1240px;margin:16px auto 0;padding:13px 20px;border-radius:12px;font-size:14px;font-weight:600;}
.flash.ok{background:var(--success-tint);color:var(--success);}
.flash.err{background:#FBEAE1;color:var(--accent-dark);}

.empty-box{text-align:center;padding:80px 24px;color:var(--muted);}
.empty-box .big{font-size:44px;margin-bottom:14px;}
.empty-box h3{color:var(--ink);font-size:19px;margin-bottom:8px;}

.demo-banner{background:#FFF3D6;color:#9A6B00;border:1px solid #F2DFAE;border-radius:12px;padding:14px 18px;font-size:13.5px;font-weight:600;margin-bottom:24px;}

.form-error{background:#FBEAE1;color:var(--accent-dark);border-radius:10px;padding:11px 15px;font-size:13.5px;font-weight:600;margin-bottom:18px;}

select.input{appearance:auto;}
textarea.input{resize:vertical;}

.filter-link{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--ink-soft);padding:8px 10px;border-radius:8px;margin:0 -10px;}
.filter-link:hover{background:var(--line-soft);color:var(--ink);}
.filter-link.active{background:var(--ink);color:#fff;font-weight:600;}
.filter-link .count{color:var(--muted);font-size:12px;}
.filter-link.active .count{color:rgba(255,255,255,.7);}

.qty-form{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;}
.qty-form button{width:38px;height:40px;border:none;background:transparent;font-size:15px;cursor:pointer;transition:background .2s;}
.qty-form button:hover{background:var(--line-soft);}
.qty-form span{width:34px;text-align:center;font-weight:600;font-size:14px;}

.status-select{padding:8px 12px;border-radius:8px;border:1px solid var(--line);font-size:13px;font-weight:600;background:var(--paper);}
.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.admin-form-grid .full{grid-column:1/-1;}
@media(max-width:680px){.admin-form-grid{grid-template-columns:1fr;}}

.success-hero{max-width:560px;margin:60px auto;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:50px 40px;box-shadow:var(--shadow-sm);}
.success-icon{width:74px;height:74px;border-radius:50%;background:var(--success-tint);color:var(--success);display:flex;align-items:center;justify-content:center;margin:0 auto 22px;}
.success-icon svg{width:34px;height:34px;}
.order-code-chip{display:inline-block;background:var(--line-soft);border-radius:999px;padding:8px 18px;font-weight:700;font-size:15px;margin:14px 0;}

.verified-chip{font-size:11.5px;color:var(--success);display:flex;align-items:center;gap:4px;}
.paid-chip{display:inline-flex;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--success-tint);color:var(--success);}
.unpaid-chip{display:inline-flex;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px;background:#FFF3D6;color:#9A6B00;}


:root{--c-blue:#2a78d6;--c-aqua:#1baf7a;--c-yellow:#eda100;}
.admin-main{max-width:1360px;}
.sparkline{display:block;}
.donut{width:150px;height:150px;border-radius:50%;position:relative;flex-shrink:0;}
.donut::after{content:'';position:absolute;inset:20px;background:var(--paper);border-radius:50%;}
.donut-center{position:absolute;inset:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1;}
.donut-center strong{font-size:22px;font-weight:700;line-height:1;}
.donut-center span{font-size:11px;color:var(--muted);margin-top:3px;}
.kpi-card.clickable{cursor:pointer;}
.kpi-more{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--muted);margin-top:10px;font-weight:600;transition:color .2s;}
.kpi-card.clickable:hover .kpi-more{color:var(--accent-dark);}
.sm-backdrop{position:fixed;inset:0;background:rgba(23,22,15,.5);display:none;align-items:center;justify-content:center;z-index:100;padding:20px;}
.sm-backdrop.open{display:flex;animation:smFade .25s var(--ease);}
@keyframes smFade{from{opacity:0}to{opacity:1}}
.stat-modal{background:var(--paper);border-radius:20px;box-shadow:var(--shadow-lg);width:min(720px,100%);max-height:90vh;overflow:auto;padding:30px;animation:smUp .3s var(--ease);}
@keyframes smUp{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}
.sm-head{display:flex;justify-content:space-between;align-items:flex-start;}
.sm-head h3{font-size:19px;font-weight:700;}
.sm-head span{font-size:13px;color:var(--muted);}
.sm-close{width:34px;height:34px;border-radius:50%;border:none;background:var(--line-soft);font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.sm-close:hover{background:var(--line);}
.sm-tabs{display:flex;background:var(--line-soft);border-radius:999px;padding:4px;gap:4px;margin:20px 0 20px;}
.sm-tabs button{flex:1;border:none;background:transparent;padding:9px 0;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .2s var(--ease);}
.sm-tabs button.active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm);}
.sm-hero strong{font-size:34px;font-weight:700;letter-spacing:-.01em;display:block;}
.sm-hero span{font-size:13px;color:var(--muted);}
.sm-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px;}
.sm-mini > div{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:13px 15px;}
.sm-mini label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;display:block;margin-bottom:4px;}
.sm-mini strong{font-size:15.5px;font-weight:700;}
#smChart{margin-top:16px;min-height:120px;overflow-x:auto;overflow-y:hidden;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;cursor:grab;overscroll-behavior-x:contain;}
#smChart.is-dragging{cursor:grabbing;user-select:none;}
#smChart svg{display:block;max-width:none;}
.checkout-fee-note{margin:-6px 0 16px;padding:11px 14px;border-radius:10px;background:var(--line-soft);color:var(--ink-soft);font-size:13px;font-weight:700;}
.plp-layout{display:grid;grid-template-columns:260px 1fr;gap:40px;padding-bottom:80px;}
.filter-box{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;height:fit-content;}
.filter-box h4{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px;color:var(--ink-soft);}
.filter-group{margin-bottom:26px;}
.plp-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;}
.plp-count{color:var(--muted);font-size:14px;}
.sort-select{padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:var(--paper);font-size:13.5px;font-weight:600;}
.price-range{display:flex;align-items:center;gap:10px;}
.checkout-layout{display:grid;grid-template-columns:1.85fr .85fr;gap:30px;padding-bottom:90px;align-items:flex-start;}
.section-block{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:30px;margin-bottom:22px;}
.section-block h3{font-size:15.5px;font-weight:700;margin-bottom:20px;display:flex;align-items:center;gap:10px;}
.section-num{width:24px;height:24px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.mini-line{display:flex;gap:12px;align-items:center;padding:10px 0;font-size:13.5px;}
.mini-thumb{width:44px;height:44px;border-radius:8px;flex-shrink:0;}
@media(max-width:1080px){.plp-layout,.checkout-layout{grid-template-columns:1fr;}}
@media(max-width:680px){.return-grid{grid-template-columns:1fr;}.return-hero h1{font-size:29px;}.sm-mini{grid-template-columns:1fr;}.stat-modal{padding:22px;}.fox-map-frame{height:520px;}.gls-map-frame{height:440px;}#fox-map{min-height:200px;}.fox-picker-grid{grid-template-columns:1fr;}.card-details .card-grid{grid-template-columns:1fr;}.card-details .card-full{grid-column:auto;}.tracking-step{font-size:10px;padding-top:31px;}.tracking-dot{width:22px;height:22px;}.order-row{grid-template-columns:1fr 1fr;}.admin-item-status-actions{flex-direction:column;align-items:stretch;}.tracking-search{grid-template-columns:1fr;}.tracking-hero{padding:28px 20px;}.tracking-hero h1{font-size:27px;}.tracking-order-head,.admin-order-head{flex-direction:column;}.admin-order-summary{grid-template-columns:1fr 1fr;}.admin-status-picker{grid-template-columns:1fr 1fr;}.admin-dispatch-box{grid-template-columns:1fr;}.admin-auto-note{grid-column:auto;}}

.supplier-panel{border:1px solid #cfe3ff;background:linear-gradient(135deg,#f7fbff,#eef6ff);}
.supplier-panel-grid{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;}
.supplier-logo{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#2a78d6;background:#fff;border:1px solid #d9e8fb;padding:6px 10px;border-radius:999px;margin-bottom:10px;}
.supplier-note{font-size:13px;color:var(--ink-soft);line-height:1.6;max-width:760px;}
.supplier-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;font-size:11.5px;font-weight:800;background:#e3eef3;color:#2c6e8c;margin-top:5px;}
.supplier-chip.ready{background:var(--success-tint);color:var(--success);}
.price-pending{font-size:13px!important;color:var(--muted);font-weight:700;line-height:1.25;}
@media(max-width:680px){.supplier-panel-grid{grid-template-columns:1fr}.supplier-panel-grid .btn{width:100%}.table-wrap{overflow-x:auto}.kpi-grid[style*="repeat(3"]{grid-template-columns:1fr!important}}

/* ===== Fix, bal-alsó kijelentkezés gomb (bolti oldalak, bejelentkezve) — admin stílusban ===== */
#logout-fab{
  position:fixed;left:20px;bottom:20px;z-index:1000;
  display:inline-flex;align-items:center;gap:10px;
  padding:11px 16px;border:none;border-radius:12px;cursor:pointer;
  background:var(--ink);color:#D9D5C9;font:inherit;font-size:14px;font-weight:600;
  box-shadow:0 10px 30px rgba(23,22,15,.22);
  transition:color .2s var(--ease),background .2s var(--ease),transform .2s var(--ease);
}
#logout-fab svg{width:17px;height:17px;}
#logout-fab:hover{background:#000;color:#fff;transform:translateY(-1px);}
@media(max-width:680px){#logout-fab{left:14px;bottom:14px;padding:11px;border-radius:50%;}#logout-fab span{display:none;}#logout-fab svg{width:19px;height:19px;}}

/* ===== Mobil (telefon) finomítások ===== */
@media(max-width:680px){
  html,body{overflow-x:hidden;max-width:100%;}
  .container{padding-left:16px;padding-right:16px;}
  /* iOS ne nagyítson rá a beviteli mezőkre: legalább 16px betűméret */
  .input,select.input,textarea.input{font-size:16px;padding:13px 14px;}
  .hero h1{font-size:27px;line-height:1.18;}
  .hero-stats{gap:14px;}
  .hero-stats strong{font-size:19px;}
  .section-title{font-size:22px;}
  .btn{min-height:46px;}
  .add-btn{width:42px;height:42px;}
  .qty-stepper button,.qty-form button{min-width:40px;min-height:40px;}
  .plp-toolbar{flex-wrap:wrap;gap:10px;}
  .sort-select{width:100%;}
  .pd-actions{flex-direction:column;}
  .pd-actions .btn{width:100%;}
  .cat-card{flex:1 1 44%;}
  .admin-order-summary{grid-template-columns:1fr 1fr;}
  .summary-card{position:static;}
}
@media(max-width:400px){
  .grid-4,.grid-3,.grid-2{grid-template-columns:1fr 1fr;gap:11px;}
  .hero h1{font-size:24px;}
  .cat-card{flex:1 1 100%;}
}




/* Admin e-mail tesztközpont */
.mail-status{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:18px;}
.mail-status-main{display:flex;align-items:center;gap:12px;min-width:0}.mail-status-dot{width:11px;height:11px;border-radius:50%;background:#b9b4aa;box-shadow:0 0 0 5px rgba(0,0,0,.035)}.mail-status-dot.ok{background:#35a56f}.mail-status strong{display:block;font-size:14px}.mail-status span{display:block;font-size:12px;color:var(--muted);margin-top:3px;overflow-wrap:anywhere}
.mail-test-bar{display:grid;grid-template-columns:minmax(220px,430px) 1fr;gap:14px;align-items:end;padding:20px;background:#fff;border:1px solid var(--line);border-radius:16px;margin-bottom:18px}.mail-test-help{font-size:12px;color:var(--muted);line-height:1.55;padding-bottom:10px}
.mail-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.mail-template-card{min-height:250px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:.18s transform,.18s box-shadow,.18s border-color}.mail-template-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(29,26,18,.08);border-color:#d4cbbd}.mail-template-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#f5eee7;font-size:23px;margin-bottom:24px}.mail-template-card h3{font-size:18px;margin:0 0 9px}.mail-template-card p{font-size:13px;color:var(--muted);line-height:1.55;margin:0 0 18px}.mail-template-auto{font-size:11px;font-weight:700;color:#397657;background:#eaf7ef;border-radius:999px;padding:6px 9px;align-self:flex-start;margin-bottom:16px}.mail-template-card .btn{margin-top:auto;width:100%}.mail-env-note{margin-top:18px;padding:16px 18px;border:1px dashed #d7cdbf;background:#fbf8f1;border-radius:14px;font-size:12px;line-height:1.65;color:var(--muted)}.mail-env-note code{background:#eee8dc;color:#343027;padding:2px 5px;border-radius:5px}
@media(max-width:1050px){.mail-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.mail-template-grid{grid-template-columns:1fr}.mail-test-bar{grid-template-columns:1fr}.mail-status{align-items:flex-start;flex-direction:column}.mail-template-card{min-height:220px}}


/* Zárt tesztüzem hozzáférési kapu */
.access-gate{min-height:100vh;background:radial-gradient(circle at 15% 10%,rgba(193,68,14,.12),transparent 34%),linear-gradient(145deg,#17160f,#332116 58%,#8f330e);display:grid;place-items:center;padding:28px;}
.access-gate-card{width:min(610px,100%);background:rgba(255,255,255,.98);border:1px solid rgba(255,255,255,.55);border-radius:26px;padding:42px;box-shadow:0 28px 90px rgba(0,0,0,.3);text-align:center;}
.access-gate-brand{display:inline-flex;margin-bottom:30px}.access-gate-icon{width:84px;height:84px;margin:0 auto 16px;display:grid;place-items:center;border-radius:24px;background:linear-gradient(180deg,rgba(247,242,232,.84),rgba(247,242,232,.52));box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 14px 34px rgba(23,22,15,.12)}.access-gate-lock{width:58px;height:58px;display:block}.access-gate-card h1{font-size:clamp(27px,4vw,40px);line-height:1.1;margin:10px 0 16px}.access-gate-card>p{color:var(--muted);line-height:1.7;font-size:15px;max-width:520px;margin:0 auto 18px}.access-gate-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:25px}.access-gate-actions .btn{min-width:170px}.access-gate-note{margin-top:24px;padding:13px 15px;border-radius:12px;background:var(--cream);border:1px solid var(--line);color:var(--muted);font-size:12.5px;line-height:1.55}.access-gate-email{padding:12px 14px;background:var(--cream);border-radius:12px;border:1px solid var(--line);overflow-wrap:anywhere}.pending-spinner{width:48px;height:48px;border:4px solid #eadfd5;border-top-color:var(--accent);border-radius:50%;margin:0 auto 18px;animation:pending-spin 1s linear infinite}@keyframes pending-spin{to{transform:rotate(360deg)}}
@media(max-width:600px){.access-gate{padding:16px}.access-gate-card{padding:30px 20px;border-radius:20px}.access-gate-actions{flex-direction:column}.access-gate-actions .btn{width:100%}}

/* ===== Saját termékek: admin lista + lenyitható statisztika ===== */
.own-product-list{display:grid;gap:10px;margin-top:18px}.own-product-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}.own-product-card[open]{border-color:#cfc3b4;box-shadow:0 9px 26px rgba(29,26,18,.07)}.own-product-summary{list-style:none;display:grid;grid-template-columns:58px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:13px 15px;cursor:pointer;user-select:none}.own-product-summary::-webkit-details-marker{display:none}.own-product-thumb{width:58px;height:58px;border-radius:11px;object-fit:cover;background:var(--cream);border:1px solid var(--line-soft)}.own-product-main{min-width:0}.own-product-main strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.own-product-main span,.own-product-price span{display:block;color:var(--muted);font-size:11.5px;margin-top:4px}.own-product-price{text-align:right;font-size:14px;font-weight:800;white-space:nowrap}.own-product-open{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap}.own-product-card[open] .own-product-open{color:var(--ink)}.own-product-detail{border-top:1px solid var(--line-soft);padding:15px;background:#fcfaf6}.own-product-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.own-product-stats>div{background:#fff;border:1px solid var(--line-soft);border-radius:11px;padding:11px}.own-product-stats span{display:block;color:var(--muted);font-size:10.5px;margin-bottom:4px}.own-product-stats strong{font-size:13px}.own-product-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:12px}.own-product-delete{color:#b42318!important}.own-product-empty{padding:22px;text-align:center;border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:13px}
@media(max-width:760px){.own-product-summary{grid-template-columns:50px minmax(0,1fr) auto}.own-product-thumb{width:50px;height:50px}.own-product-open{display:none}.own-product-stats{grid-template-columns:1fr 1fr}.own-product-actions{justify-content:stretch}.own-product-actions .btn{flex:1 1 auto}}

/* ═══════════ Admin termékrács (saját + beszállítói termékek) ═══════════ */
.p-board{margin-bottom:22px}
.p-head-stats{display:flex;gap:28px;flex-wrap:wrap;padding:0 2px 16px;border-bottom:1.5px solid var(--ink);margin-bottom:2px}
.p-head-stats .k{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.p-head-stats .v{font-size:21px;font-weight:800;letter-spacing:-.025em;margin-top:3px;font-variant-numeric:tabular-nums}
.p-head-stats .v.good{color:var(--success)}
.p-subline{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
  padding:12px 0 18px;border-bottom:1px solid var(--line);margin-bottom:20px}
.p-tabs{display:flex;gap:20px;flex-wrap:wrap}
.p-tab{border:none;background:none;padding:4px 0;font-size:13px;font-weight:600;color:var(--muted);
  border-bottom:2px solid transparent;transition:color .16s ease,border-color .16s ease;cursor:pointer}
.p-tab:hover{color:var(--ink)}
.p-tab.on{color:var(--ink);border-bottom-color:var(--accent)}
.p-tab sup{font-size:10px;color:var(--muted);margin-left:3px}
.p-search{position:relative;min-width:190px}
.p-search input{width:100%;padding:9px 14px 9px 34px;border:1px solid var(--line);border-radius:999px;
  background:var(--paper);font-size:13px}
.p-search input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(23,22,15,.06)}
.p-search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);opacity:.45;pointer-events:none}

.p-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(288px,1fr));gap:18px;align-items:start}

/* Pinelt „Új termék hozzáadása" kártya — mindig az első cella */
.p-new{background:linear-gradient(160deg,#1F1C14,#332D20);border:none;border-radius:24px;color:#F7F2E8;
  padding:26px;min-height:320px;position:relative;overflow:hidden;display:grid;place-items:center;cursor:pointer;
  box-shadow:0 18px 44px -20px rgba(23,22,15,.28);transition:transform .24s var(--ease),box-shadow .24s var(--ease)}
.p-new::after{content:"";position:absolute;inset:14px;border:1px dashed rgba(247,242,232,.22);border-radius:18px;pointer-events:none}
.p-new::before{content:"";position:absolute;right:-70px;top:-70px;width:230px;height:230px;border-radius:50%;
  background:radial-gradient(circle,rgba(233,162,59,.3),transparent 68%)}
.p-new:hover{transform:translateY(-5px);box-shadow:0 26px 54px -22px rgba(23,22,15,.36)}
.p-new-in{position:relative;z-index:1;text-align:center;display:block}
.p-plus{width:58px;height:58px;border-radius:50%;border:1px solid rgba(247,242,232,.32);display:grid;
  place-items:center;font-size:27px;margin:0 auto 16px;transition:background .2s ease,color .2s ease,border-color .2s ease}
.p-new:hover .p-plus{background:#E9A23B;border-color:#E9A23B;color:#1F1C14}
.p-new b{font-size:17px;font-weight:800;letter-spacing:-.015em}

/* Termékkártya */
.p-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;overflow:hidden;
  display:flex;flex-direction:column;box-shadow:0 2px 6px rgba(23,22,15,.05);
  transition:transform .24s var(--ease),box-shadow .24s var(--ease),border-color .24s var(--ease)}
.p-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px -20px rgba(23,22,15,.28);border-color:#ddd3c2}
.p-img{height:150px;position:relative;background:var(--cream)}
.p-img img{width:100%;height:100%;object-fit:cover;display:block}
.p-img-top{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;gap:8px}
.p-chip{font-size:11px;font-weight:800;border-radius:999px;padding:5px 11px;background:rgba(255,255,255,.94);
  color:var(--ink);white-space:nowrap;box-shadow:0 1px 3px rgba(23,22,15,.12)}
.p-chip.ok{color:var(--success)} .p-chip.low{color:#B7791F} .p-chip.out{color:#B42318}
.p-body{padding:15px 18px 18px;display:flex;flex-direction:column;gap:12px;flex:1}
.p-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.p-title h3{font-size:16.5px;font-weight:700;letter-spacing:-.02em;margin:0;min-width:0;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.p-ring{width:50px;height:50px;position:relative;flex:0 0 auto}
.p-ring-lbl{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--success)}
.p-data{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-soft);
  border:1px solid var(--line-soft);border-radius:14px;overflow:hidden}
.p-data>div{background:var(--paper);padding:9px 11px;min-width:0}
.p-data span{display:block;font-size:9.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.p-data b{font-size:14px;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.p-data b.lg{font-size:16px}
.p-data b.good{color:var(--success)} .p-data b.bad{color:#B42318}
.p-actions{display:flex;gap:8px;margin-top:auto}
.p-actions .btn{flex:1;white-space:nowrap}
.p-del{width:38px;flex:0 0 38px;border-radius:999px;border:1px solid var(--line);background:#fff;
  display:grid;place-items:center;font-size:13px;color:var(--muted);cursor:pointer;transition:.16s ease}
.p-del:hover{color:#B42318;border-color:#F0C9C4;background:#FDF1F0}
.p-stats{display:none}
.p-card.open .p-stats{display:block;animation:pStatsIn .24s var(--ease)}
@keyframes pStatsIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.p-statbox{border:1px solid var(--line-soft);border-radius:14px;padding:14px;background:#FDFCF9}
.p-statbox-head{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:800;
  letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:11px}
.p-spark{display:flex;align-items:flex-end;gap:5px;height:52px}
.p-spark i{flex:1;background:#EDE7DC;border-radius:4px 4px 2px 2px;min-height:3px;display:block}
.p-spark i.hi{background:#E9A23B}
.p-spark-x{display:flex;gap:5px;margin-top:6px}
.p-spark-x span{flex:1;text-align:center;font-size:9.5px;color:var(--muted);font-weight:600}
.p-klist{margin-top:12px;border-top:1px solid var(--line-soft);padding-top:10px;display:grid;gap:8px}
.p-klist>div{display:flex;justify-content:space-between;gap:10px;font-size:12.5px}
.p-klist span{color:var(--muted)}
.p-klist b{font-weight:800;font-variant-numeric:tabular-nums}
.p-klist b.good{color:var(--success)}
.p-klist a{color:var(--accent-dark);font-weight:700}
.p-empty{grid-column:1/-1;padding:26px;text-align:center;border:1px dashed var(--line);border-radius:16px;
  color:var(--muted);font-size:13.5px}

/* Mai profit bontása (áttekintő) */
.profit-breakdown .pb-rows{display:grid;gap:9px}
.pb-row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13.5px;
  padding-bottom:9px;border-bottom:1px dashed var(--line-soft)}
.pb-row b{font-weight:800;font-variant-numeric:tabular-nums}
.pb-row.minus span,.pb-row.minus b{color:var(--muted)}
.pb-row.total{border-bottom:none;padding-top:4px;font-size:15px}
.pb-row.total span{font-weight:700}
.pb-row.total b{font-size:20px;color:var(--success)}

/* Lemondott rendelés sávja + levétel a listáról */
.cancelled-bar{background:#FFF0EF;border:1px solid #f0cdc8;color:#B42318;border-radius:11px;padding:10px 13px;
  font-size:13px;font-weight:700;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;
  gap:12px;flex-wrap:wrap}
.cancelled-txt span{font-weight:500;color:#8f1d13}
.cancelled-act{display:flex;gap:8px;flex-wrap:wrap}
.order-archive{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
  margin-top:12px;padding-top:12px;border-top:1px solid var(--line-soft);font-size:12.5px;color:var(--muted)}

@media(max-width:760px){
  .p-head-stats{gap:16px}
  .p-head-stats .v{font-size:18px}
  .p-grid{grid-template-columns:1fr}
  .p-new{min-height:180px}
  .p-actions{flex-wrap:wrap}
}

/* ═══════════ Termék szerkesztő — oldalról becsúszó panel ═══════════ */
body.pfm-locked{overflow:hidden}
.pfm-scrim{position:fixed;inset:0;background:rgba(23,22,15,.4);backdrop-filter:blur(3px);
  opacity:0;pointer-events:none;transition:opacity .26s var(--ease);z-index:80}
.pfm-scrim.on{opacity:1;pointer-events:auto}
.pfm-drawer{position:fixed;top:0;right:0;bottom:0;width:min(560px,100%);background:var(--paper);
  box-shadow:-30px 0 70px -24px rgba(23,22,15,.4);z-index:90;display:flex;flex-direction:column;
  transform:translateX(101%);transition:transform .34s var(--ease);will-change:transform}
.pfm-drawer.on{transform:none}
.pfm-head{padding:22px 26px 16px;border-bottom:1px solid var(--line);background:var(--cream);
  display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex:0 0 auto}
.pfm-tag{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.13em;
  text-transform:uppercase;color:var(--accent)}
.pfm-head h2{font-size:21px;font-weight:800;letter-spacing:-.025em;margin:7px 0 0}
.pfm-close{width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:#fff;
  display:grid;place-items:center;font-size:15px;color:var(--muted);cursor:pointer;flex:0 0 auto;
  transition:color .16s ease,border-color .16s ease}
.pfm-close:hover{color:var(--ink);border-color:var(--ink)}
.pfm-form{display:flex;flex-direction:column;flex:1;min-height:0}
.pfm-body{padding:20px 26px 26px;overflow:auto;flex:1}
.pfm-sec{display:flex;align-items:center;gap:11px;margin:22px 0 13px}
.pfm-sec:first-child{margin-top:0}
.pfm-sec h4{font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);margin:0}
.pfm-sec i{flex:1;height:1px;background:var(--line)}
.pfm-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 15px}
.pfm-grid .form-group{margin:0;min-width:0}
.pfm-grid .form-group.full,.pfm-grid .full{grid-column:1/-1}
.pfm-calc{display:flex;align-items:center;gap:24px;flex-wrap:wrap;background:#F4FAF6;
  border:1px solid #CFE6D9;border-radius:14px;padding:13px 16px}
.pfm-calc span{display:block;font-size:10.5px;font-weight:800;letter-spacing:.08em;
  text-transform:uppercase;color:#5C7F6C}
.pfm-calc b{font-size:19px;font-weight:800;color:#2F6B4C;font-variant-numeric:tabular-nums;
  display:block;margin-top:2px}
.pfm-calc p{font-size:12px;color:#5C7F6C;margin:0 0 0 auto;max-width:190px}
.pfm-foot{padding:14px 26px;border-top:1px solid var(--line);background:#FDFBF6;
  display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;flex:0 0 auto}
@media(max-width:620px){
  .pfm-drawer{width:100%}
  .pfm-head,.pfm-body,.pfm-foot{padding-left:18px;padding-right:18px}
  .pfm-grid{grid-template-columns:1fr}
}


/* ═══════════════════════════════════════════════════════════════════════
   MOBIL OPTIMALIZÁLÁS  ·  2026-08
   Minden szabály ebben a blokkban él, hogy visszafordítható legyen.
   Asztali nézetet (>1080px) egyetlen szabály sem érinti.
   ═══════════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────
   1. GYÖKÉROK: rács-sávok szétfeszülése
   A CSS Grid sávjai alapból `min-content` méretűek. Egy hosszú
   placeholder, egy input alap 20-karakteres szélessége vagy egy
   hosszú szó ezért kifeszíti az egész oldalt a képernyőn túlra —
   ettől lógott ki a pénztár (436px) és az admin (997px) 390px-en.
   A minmax(0,1fr) + min-width:0 ezt gyökerénél szünteti meg.
   ───────────────────────────────────────────────────────────── */
@media(max-width:1080px){
  .plp-layout,.checkout-layout,.pd-grid,.cart-layout,.auth-wrap,
  .account-layout,.panel-grid,.admin-shell,.admin-form-grid,
  .pfm-grid,.ret-grid2,.reason-grid,.return-grid{
    grid-template-columns:minmax(0,1fr);
  }
  .plp-layout>*,.checkout-layout>*,.pd-grid>*,.cart-layout>*,
  .auth-wrap>*,.account-layout>*,.panel-grid>*,.admin-shell>*,
  .admin-main,.sup-panel,.summary-card,.section-block,.panel,
  .form-group,.form-row>*,.kpi-card,.admin-order-card,.tracking-order-card{
    min-width:0;
  }
  .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .grid-4,.grid-3,.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));}
  /* Hosszú, szóköz nélküli szövegek (e-mail, rendelésszám, URL) tördelése */
  .acc-value,.vr-value,.admin-order-summary strong,.tracking-order-meta,
  .cart-line-name,.product-name,.mini-line,.pay-sub,.kpi-label{
    overflow-wrap:anywhere;
  }
}

/* ─────────────────────────────────────────────────────────────
   2. TELEFON (≤680px) — alapok
   ───────────────────────────────────────────────────────────── */
@media(max-width:680px){

  /* iPhone-bevágás és a képernyő alsó gesztussávja */
  body{
    padding-bottom:env(safe-area-inset-bottom,0);
  }
  .container{
    padding-left:max(16px,env(safe-area-inset-left,0));
    padding-right:max(16px,env(safe-area-inset-right,0));
  }

  /* Olvashatósági alsó korlát: telefonon semmi ne legyen 12px alatt */
  .fc-sub,.rating-count,.product-cat,.pd-meta div,.review-date,
  .input-hint,.acc-label,.vr-label,.email-note,.address-source,
  .kpi-more,.legend-item,.donut-center span,.sm-mini label,
  .admin-nav-sep,.admin-nav .nav-sup-sub,.rail-item .ct,
  .free-shipping-note,.pay-sub,.fox-point-btn span,
  .admin-order-summary>div,.admin-product-line,.admin-status-option,
  .table-wrap th,.tracking-order-meta,.footer-bottom{
    font-size:12.5px;
  }
  .stars svg{width:14px;height:14px;}

  /* ---------- Fejléc ---------- */
  .site-header{
    padding-top:env(safe-area-inset-top,0);
  }
  .header-inner{padding:12px 0;}
  .site-header.scrolled .header-inner{padding:9px 0;}
  .header-actions{gap:2px;}
  .icon-btn,.nav-toggle{width:44px;height:44px;}
  .icon-btn svg,.nav-toggle svg{width:22px;height:22px;}
  .cart-badge{
    top:4px;right:4px;width:19px;height:19px;font-size:11px;
    border:2px solid var(--cream);
  }
  .main-nav{
    max-height:calc(100vh - 130px);overflow-y:auto;
    padding-bottom:calc(14px + env(safe-area-inset-bottom,0));
  }
  .main-nav a{min-height:48px;display:flex;align-items:center;}

  /* Kijelentkezés a menüből (mobile.js szúrja be) — a lebegő gomb helyett */
  .main-nav .nav-logout{
    color:var(--accent-dark);font-weight:700;border-bottom:none;
    gap:9px;margin-top:2px;
  }
  .main-nav .nav-logout svg{width:17px;height:17px;flex:none;}
  /* A lebegő kijelentkezés gomb telefonon takarja a tartalmat.
     Csak akkor tüntetjük el, ha a menübe már bekerült a kijelentkezés. */
  body.has-nav-logout #logout-fab{display:none !important;}
  /* Ha mégis marad, legalább ne ütközzön a ragadós vásárlósávval */
  body.has-mbuybar #logout-fab{bottom:calc(84px + env(safe-area-inset-bottom,0));}

  /* ---------- Gombok, mezők: ujjbarát méretek ---------- */
  .btn{min-height:48px;padding:13px 22px;}
  .btn-sm{min-height:42px;padding:10px 16px;font-size:13.5px;}
  /* Teljes szélességű gomb hosszú felirattal (pl. „Fizetési kötelezettséggel
     járó megrendelés") keskeny kijelzőn kilógott — itt tördelhet. */
  .btn-block{white-space:normal;line-height:1.3;padding-left:16px;padding-right:16px;text-align:center;}
  .input,select.input,textarea.input{
    font-size:16px;            /* iOS így nem zoomol rá fókuszkor */
    min-height:48px;padding:13px 14px;
  }
  textarea.input{min-height:96px;}
  label{font-size:13.5px;}
  .checkbox-row input,input[type=checkbox],input[type=radio]{
    width:22px;height:22px;flex:none;
  }
  .checkbox-row{gap:11px;font-size:14px;align-items:flex-start;}

  /* Kis linkek érintőfelületének növelése (a látvány marad) */
  .footer-links a,.footer-bottom a,.breadcrumb a,.ret-links a,
  .search-clear,.acc-link,.remove-link,.pd-rating a{
    display:inline-block;padding:9px 0;
  }
  .footer-bottom{gap:2px 14px;line-height:1.4;}
  .breadcrumb{padding:12px 0;flex-wrap:wrap;gap:6px;}

  /* ---------- Termékkártya ---------- */
  .grid{gap:13px;}
  .product-info{padding:13px 13px 15px;}
  .product-name,.product-name.product-link{
    font-size:14px;line-height:1.35;margin-bottom:6px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;
    overflow:hidden;min-height:2.7em;
  }
  .product-cat{margin-bottom:4px;}
  .product-rating{margin-bottom:7px;}
  .price{font-size:16px;}
  .add-btn{width:44px;height:44px;flex:none;}
  .add-btn svg{width:18px;height:18px;}
  /* Érintőképernyőn nincs hover — a kívánságlista gomb legyen mindig látható */
  .wishlist-btn{opacity:1;transform:none;width:38px;height:38px;}
  .product-card:hover{transform:none;box-shadow:none;}
  .cat-card:hover{transform:none;box-shadow:none;}

  /* ---------- Kategóriakártyák ---------- */
  .cat-card{padding:16px 15px;}
  .cat-emoji{width:38px;height:38px;margin-bottom:10px;font-size:18px;}

  /* ---------- Lábléc ---------- */
  .site-footer{
    padding-bottom:calc(24px + env(safe-area-inset-bottom,0));
    margin-top:44px;
  }
}

/* ─────────────────────────────────────────────────────────────
   3. TERMÉKLISTA — szűrő felülre, leúsztatható panelbe
   Eddig a keresés és a szűrők a 12 termék UTÁN, az oldal alján
   voltak: telefonon gyakorlatilag megtalálhatatlanul.
   ───────────────────────────────────────────────────────────── */
@media(max-width:680px){
  .plp-layout{gap:0;padding-bottom:60px;}

  /* Ragadós eszköztár a fejléc alatt: találatszám + Szűrés gomb.
     A --header-h értéket a mobile.js méri be, hogy pontosan
     a fejléc alá tapadjon minden készüléken. */
  .plp-toolbar{
    position:sticky;top:calc(var(--header-h,56px) - 1px);z-index:30;
    display:flex;align-items:center;justify-content:space-between;gap:10px;
    margin:0 -16px 16px;padding:10px 16px;
    background:rgba(251,248,242,.94);backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .plp-count{font-size:13.5px;font-weight:600;color:var(--ink-soft);}
  .mfilter-btn{
    display:inline-flex;align-items:center;gap:7px;flex:none;
    min-height:40px;padding:9px 15px;border-radius:999px;
    border:1px solid var(--ink);background:var(--paper);
    font-size:13.5px;font-weight:700;color:var(--ink);
  }
  .mfilter-btn svg{width:15px;height:15px;}
  .mfilter-btn .mfilter-dot{
    width:7px;height:7px;border-radius:50%;background:var(--accent);
  }

  /* A meglévő szűrődoboz alulról felcsúszó lapként */
  .filter-box{
    position:fixed;left:0;right:0;bottom:0;z-index:120;
    order:0;border-radius:22px 22px 0 0;border-width:1px 0 0;
    max-height:86vh;overflow-y:auto;overscroll-behavior:contain;
    padding:8px 20px calc(20px + env(safe-area-inset-bottom,0));
    transform:translateY(101%);visibility:hidden;
    transition:transform .3s var(--ease),visibility .3s;
    box-shadow:0 -20px 50px -20px rgba(23,22,15,.35);
  }
  .filter-box.msheet-open{transform:none;visibility:visible;}
  .filter-box::before{
    content:'';display:block;width:42px;height:4px;border-radius:99px;
    background:var(--line);margin:6px auto 14px;
  }
  .msheet-scrim{
    position:fixed;inset:0;z-index:110;background:rgba(23,22,15,.42);
    opacity:0;pointer-events:none;transition:opacity .3s var(--ease);
  }
  .msheet-scrim.on{opacity:1;pointer-events:auto;}
  body.msheet-locked{overflow:hidden;}
  .msheet-close{
    position:absolute;top:12px;right:14px;
    width:38px;height:38px;border-radius:50%;border:1px solid var(--line);
    background:var(--paper);color:var(--ink-soft);font-size:16px;
    display:grid;place-items:center;cursor:pointer;
  }
  .filter-box .filter-group{margin-bottom:22px;}
  .filter-link{padding:12px 10px;font-size:15px;}
  .shop-search .input{min-height:48px;}
  .shop-search button{width:48px;height:48px;flex:none;}
  .price-range .input{min-height:46px;}
}

/* ─────────────────────────────────────────────────────────────
   4. TERMÉKLAP — rövidebb galéria + ragadós „Kosárba" sáv
   ───────────────────────────────────────────────────────────── */
@media(max-width:680px){
  .pd-grid{gap:22px;padding-bottom:26px;}
  .pd-gallery-main{
    aspect-ratio:auto;height:min(58vw,300px);
    border-radius:var(--radius);margin-bottom:12px;
  }
  .pd-thumb{width:62px;height:62px;}
  .pd-info h1{font-size:23px;line-height:1.22;}
  .pd-price{font-size:26px;}
  .pd-desc{font-size:14.5px;line-height:1.65;}
  .pd-meta{
    gap:10px;flex-wrap:wrap;margin-top:22px;padding-top:18px;
  }
  .pd-meta div{flex:1 1 100%;}
  .qty-stepper button{width:48px;height:48px;font-size:19px;}
  .qty-stepper span{width:42px;font-size:16px;}
  .tabs{
    gap:22px;overflow-x:auto;scrollbar-width:none;
    margin:0 -16px 26px;padding:0 16px;
  }
  .tabs::-webkit-scrollbar{display:none;}
  .tab-btn{white-space:nowrap;min-height:48px;}
  .review-summary{flex-direction:column;gap:20px;padding:20px;}
  .review-head{flex-direction:column;gap:4px;}
  .new-review-box{padding:18px;}
  .star-input button svg{width:32px;height:32px;}
}

/* Biztonsági háló: a menübe szúrt kijelentkezés ikonja soha ne
   rajzolódjon ki natúr SVG-méretben, ha a mobil szabályok nem futnának le. */
.main-nav .nav-logout svg{width:17px;height:17px;flex:none;}
.main-nav .nav-logout{display:flex;align-items:center;gap:9px;}
@media(min-width:681px){.main-nav .nav-logout{display:none;}}

/* Ragadós vásárlósáv (terméklap, kosár, pénztár) — mobile.js hozza létre */
.mbuybar{
  position:fixed;left:0;right:0;bottom:0;z-index:95;display:none;
  align-items:center;gap:12px;
  padding:10px 16px calc(10px + env(safe-area-inset-bottom,0));
  background:rgba(251,248,242,.96);backdrop-filter:blur(12px);
  border-top:1px solid var(--line);
  box-shadow:0 -10px 30px -18px rgba(23,22,15,.5);
  transform:translateY(102%);transition:transform .26s var(--ease);
}
.mbuybar.on{transform:none;}
.mbuybar-info{min-width:0;flex:1;line-height:1.25;}
.mbuybar-label{
  display:block;font-size:11.5px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;color:var(--muted);
}
.mbuybar-price{
  display:block;font-size:19px;font-weight:800;color:var(--ink);
  font-variant-numeric:tabular-nums;
}
.mbuybar .btn{flex:0 1 auto;min-width:150px;white-space:nowrap;}
@media(max-width:680px){
  .mbuybar{display:flex;}
  body.has-mbuybar .site-footer{padding-bottom:96px;}
  body.has-mbuybar .filter-box{padding-bottom:calc(88px + env(safe-area-inset-bottom,0));}
}
@media(max-width:360px){
  .mbuybar{gap:8px;padding-left:12px;padding-right:12px;}
  .mbuybar .btn{min-width:0;flex:1 1 auto;padding:13px 12px;font-size:13.5px;}
  .mbuybar-price{font-size:17px;}
}

/* ─────────────────────────────────────────────────────────────
   5. KOSÁR
   ───────────────────────────────────────────────────────────── */
@media(max-width:680px){
  .cart-layout{gap:22px;padding-bottom:40px;}
  .cart-line{
    grid-template-columns:72px minmax(0,1fr);
    grid-template-areas:'thumb info' 'thumb price';
    gap:6px 14px;padding:16px 0;align-items:start;
  }
  .cart-line>a.cart-thumb{grid-area:thumb;align-self:center;}
  .cart-line>div:nth-of-type(1){grid-area:info;}
  .cart-line>div:nth-of-type(2){display:none;}
  .cart-line-price{
    grid-area:price;font-size:16px;text-align:left;padding-top:2px;
  }
  .cart-thumb{width:72px;height:72px;}
  .cart-line-name{font-size:14.5px;line-height:1.35;}
  .qty-form button{width:44px;height:44px;font-size:17px;}
  .qty-form span{width:40px;font-size:15px;}
  .remove-link{font-size:13px;}
  .summary-card{padding:20px;border-radius:var(--radius);}
  .summary-row{font-size:14.5px;}
  .summary-row.total{font-size:18px;}
}

/* ─────────────────────────────────────────────────────────────
   6. PÉNZTÁR — a legfontosabb: itt csúszott szét minden
   ───────────────────────────────────────────────────────────── */
@media(max-width:680px){
  .checkout-layout{gap:18px;padding-bottom:30px;}
  .section-block{padding:18px 16px;border-radius:var(--radius);margin-bottom:16px;}
  .section-block h3{font-size:15px;margin-bottom:16px;}
  .section-num{width:26px;height:26px;font-size:12.5px;}
  .form-group{margin-bottom:15px;}
  .form-row{grid-template-columns:minmax(0,1fr);gap:0;}

  /* Lépésjelző: vízszintesen görgethető, nem tördel */
  .steps-row{
    gap:8px;margin-bottom:24px;overflow-x:auto;scrollbar-width:none;
    padding:2px 16px 6px;margin-left:-16px;margin-right:-16px;
  }
  .steps-row::-webkit-scrollbar{display:none;}
  .step-item{flex:none;font-size:12.5px;}
  .step-line{width:22px;flex:none;}
}
/* Nagyon keskeny kijelzőn csak az aktuális lépés neve fér ki —
   a többinél a sorszám marad (a képernyőolvasó a szöveget így is felolvassa). */
@media(max-width:430px){
  .steps-row{justify-content:flex-start;}
  .step-item:not(.current){font-size:0;gap:0;}
  .step-item:not(.current) .step-num{font-size:12px;}
  .step-line{width:16px;}
}
@media(max-width:680px){

  /* Fizetési és szállítási módok: nagy, egyértelmű érintőfelület */
  .pay-method{padding:15px 14px;gap:12px;align-items:flex-start;}
  .pay-radio{width:22px;height:22px;margin-top:2px;}
  .pay-icon{width:38px;height:38px;}
  .pay-name{font-size:15px;}
  .pay-method.active .pay-detail{max-height:420px;}

  /* Csomagpont-térkép: alacsonyabb, hogy ne nyelje el az oldalt,
     és ne akadjon be az oldalgörgetés */
  .fox-map-shell,.gls-map-shell{padding:10px;}
  .fox-map-frame{height:340px;}
  .gls-map-frame{height:340px;}
  #fox-map,#gls-map{min-height:340px;}
  .fox-search-results{grid-template-columns:minmax(0,1fr);max-height:230px;}
  .fox-point-list{grid-template-columns:minmax(0,1fr);}
  .fox-point-btn{padding:13px 14px;}
  .map-scroll-hint{display:none;}
  .leaflet-control-attribution{font-size:9px;}

  /* Címjavaslatok listája */
  .address-suggestions{max-height:240px;}
  .address-suggestion{padding:13px 12px;}

  /* Összesítő */
  .summary-card{position:static;padding:20px 16px;}
  .mini-line{font-size:13.5px;gap:10px;}
  .terms-box{font-size:14px;}
  .terms-box label{font-size:13.5px;line-height:1.5;}
  .checkout-error{font-size:13.5px;}
}

/* ─────────────────────────────────────────────────────────────
   7. BELÉPÉS / REGISZTRÁCIÓ / FIÓK
   A márkás vizuál panel eddig a fél első képernyőt elvitte —
   telefonon az űrlap kerül előre, a panel keskeny fejléccé zsugorodik.
   ───────────────────────────────────────────────────────────── */
@media(max-width:900px){
  .auth-wrap{min-height:0;}
  .auth-visual{
    padding:22px 22px 20px;min-height:0;align-items:flex-start;
    padding-top:calc(22px + env(safe-area-inset-top,0));
  }
  .auth-brand{position:static;margin-bottom:14px;}
  .auth-visual-content{max-width:none;}
  .auth-visual-content .eyebrow{margin-bottom:6px;}
  .auth-visual-content h2{font-size:21px;margin:8px 0 6px;line-height:1.25;}
  .auth-visual-content p{font-size:13.5px;line-height:1.55;}
  .auth-form-side{padding:26px 20px calc(40px + env(safe-area-inset-bottom,0));}
  .auth-form-inner,.auth-form-inner.wide{max-width:none;}
}
@media(max-width:680px){
  .auth-visual-content h2{font-size:19px;}
  .auth-visual-content p{
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  .account-head{gap:13px;}
  .account-avatar{width:48px;height:48px;}
  .account-head h1{font-size:21px;}
  .acc-row{gap:8px;padding:12px 0;}
  .acc-value{font-size:14.5px;min-height:40px;display:flex;align-items:center;}
  .acc-side .btn{min-height:42px;}
  .verify-card{padding:4px 15px;}
  .verify-row{gap:10px;padding:13px 0;}
  .verify-badge{font-size:12.5px;padding:7px 11px;}
  .account-privacy .ap-link{padding:11px 4px;font-size:13.5px;}
}

/* ─────────────────────────────────────────────────────────────
   8. RENDELÉSKÖVETÉS
   ───────────────────────────────────────────────────────────── */
@media(max-width:680px){
  .tracking-page{padding-top:24px;}
  .tracking-hero:after{display:none;}
  .tracking-search{grid-template-columns:minmax(0,1fr);gap:9px;}
  .tracking-order-card{padding:18px 16px;border-radius:16px;}

  /* 4 hasábos idővonal 10px-es felirattal olvashatatlan volt —
     telefonon függőleges lista lesz belőle */
  .tracking-steps{grid-template-columns:minmax(0,1fr);gap:0;}
  .tracking-step{
    text-align:left;padding:11px 0 11px 38px;font-size:13.5px;min-height:44px;
    display:flex;align-items:center;
  }
  .tracking-step::before{
    top:0;bottom:0;left:11px;right:auto;width:3px;height:auto;
  }
  .tracking-step:first-child::before{display:block;top:50%;}
  .tracking-step:last-child::before{bottom:50%;}
  .tracking-dot{top:50%;left:11px;transform:translate(-50%,-50%);width:24px;height:24px;}
  .order-row{grid-template-columns:minmax(0,1fr);row-gap:9px;padding:16px;}
  .order-item-track-head{flex-direction:column;align-items:flex-start;gap:7px;}
  .admin-item-statuses{min-width:0;}
}

/* ─────────────────────────────────────────────────────────────
   9. ADMIN / BESZÁLLÍTÓI FELÜLET
   Eddig 997px széles volt egy 390px-es telefonon — a fele
   egyszerűen nem látszott.
   ───────────────────────────────────────────────────────────── */
@media(max-width:1080px){
  .admin-main{padding:18px 16px calc(30px + env(safe-area-inset-bottom,0));max-width:none;}
  .admin-top{grid-template-columns:1fr auto;margin:-18px -16px 22px;padding:14px 16px;}
  .admin-storebar{grid-column:1 / -1;grid-row:2;justify-self:stretch;}
  .admin-storebar-inner{justify-content:flex-start;}
  .admin-mobile-nav{
    position:sticky;top:0;z-index:40;
    margin:0 -16px 16px;padding:11px 16px;
    background:rgba(251,248,242,.95);backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
    scroll-snap-type:x proximity;scrollbar-width:none;
  }
  .admin-mobile-nav::-webkit-scrollbar{display:none;}
  .admin-mobile-nav a{scroll-snap-align:start;min-height:40px;display:inline-flex;align-items:center;}
}
@media(max-width:680px){
  .admin-top{grid-template-columns:1fr auto;margin:-18px -16px 20px;padding:14px 16px;gap:12px;}
  .admin-storebar{grid-column:1 / -1;grid-row:2;justify-self:stretch;}
  .admin-storebar-inner{justify-content:flex-start;gap:18px;min-height:42px;padding-bottom:2px;}
  .admin-top-actions{width:auto;flex-wrap:wrap;justify-self:end;}
  .admin-title{font-size:21px;}
  .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
  .kpi-card{padding:14px 13px;}
  .kpi-top{margin-bottom:11px;}
  .kpi-icon{width:32px;height:32px;}
  .kpi-value{font-size:20px;margin-bottom:2px;}
  .kpi-label{font-size:12.5px;line-height:1.3;}
  .kpi-delta{font-size:11px;padding:3px 7px;}
  .kpi-more{font-size:12px;margin-top:8px;}
  .kpi-card .sparkline{height:22px;margin-top:8px !important;}
  .panel{padding:17px 15px;}
  .panel-head{margin-bottom:16px;flex-wrap:wrap;gap:9px;}
  .donut{width:120px;height:120px;}
  .donut-wrap{gap:16px;}

  /* Táblázatok: vízszintesen görgethetők. A jobb szélen halvány árnyék
     jelzi, hogy van még tartalom oldalra — különben észrevétlen marad. */
  .table-wrap{
    overflow-x:auto;-webkit-overflow-scrolling:touch;
    margin:0 -15px;padding:0 15px;
    background:
      linear-gradient(to right,var(--paper) 40%,rgba(255,255,255,0)) left/26px 100% no-repeat local,
      linear-gradient(to left,var(--paper) 40%,rgba(255,255,255,0)) right/26px 100% no-repeat local,
      radial-gradient(farthest-side at 0 50%,rgba(23,22,15,.13),transparent) left/13px 100% no-repeat scroll,
      radial-gradient(farthest-side at 100% 50%,rgba(23,22,15,.13),transparent) right/13px 100% no-repeat scroll;
  }
  .table-wrap table{min-width:520px;}
  .table-wrap td{padding:11px;font-size:13px;}
  .table-wrap tr:hover td{background:transparent;}

  /* Admin kereső- és szűrőmezők ujjbarát magassága */
  .admin-main .input,.p-search .input,#prod-search{min-height:44px;}

  .admin-order-card{padding:16px 14px;}
  .admin-order-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .admin-status-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .admin-status-option{padding:12px 8px;font-size:12.5px;min-height:44px;}
  .admin-dispatch-box{grid-template-columns:minmax(0,1fr);padding:13px;}
  .admin-item-status-actions{flex-direction:column;align-items:stretch;gap:8px;}
  .admin-item-status-actions .btn,.admin-item-status-actions select{width:100%;}
  .sup-rail{scrollbar-width:none;}
  .sup-rail::-webkit-scrollbar{display:none;}
  .rail-item{min-height:44px;}
  .p-tab{min-height:40px;padding:8px 14px;}
  .p-del{min-width:44px;min-height:44px;}
  .pfm-close{width:40px;height:40px;}
  .mail-template-card .btn,.mail-test-bar .btn{width:100%;}
  .stat-modal{padding:18px;border-radius:18px;}
  .sm-tabs button{min-height:42px;}
}

/* ─────────────────────────────────────────────────────────────
   10. KIS TELEFON (≤400px)
   ───────────────────────────────────────────────────────────── */
@media(max-width:400px){
  .container{padding-left:14px;padding-right:14px;}
  .grid-4,.grid-3,.grid-2{gap:10px;}
  .product-info{padding:11px 11px 13px;}
  .product-name{font-size:13.5px;}
  .price{font-size:15px;}
  .add-btn{width:40px;height:40px;}
  .logo-word{font-size:17px;}
  .pd-info h1{font-size:21px;}
  .kpi-card{padding:12px 11px;}
  .kpi-value{font-size:18px;}
  .steps-row .step-item span:not(.step-num){font-size:12px;}
}

/* ─────────────────────────────────────────────────────────────
   11. Fekvő tájolás alacsony képernyőn — ne legyen minden ragadós
   ───────────────────────────────────────────────────────────── */
@media(max-width:900px) and (max-height:500px) and (orientation:landscape){
  .site-header{position:static;}
  .plp-toolbar{position:static;margin-bottom:14px;}
  .admin-mobile-nav{position:static;}
  .filter-box{max-height:92vh;}
}

/* ─────────────────────────────────────────────────────────────
   12. Érintőképernyő általában (egérmutató nélküli eszközök)
   A hover-effektek „beragadnak" tapintásra — kikapcsoljuk őket.
   ───────────────────────────────────────────────────────────── */
@media(hover:none){
  .product-card:hover,.cat-card:hover,.kpi-card:hover,
  .btn-primary:hover,.btn-accent:hover,.icon-btn:hover,
  .fox-point-btn:hover,#logout-fab:hover{
    transform:none;box-shadow:none;
  }
  .btn-primary:hover{background:var(--ink);}
  .btn-accent:hover{background:var(--accent);}
  .wishlist-btn{opacity:1;transform:none;}
  .add-btn:hover{transform:none;}
  /* Horgonyra ugráskor ne a ragadós fejléc alá kerüljön a cél */
  html{scroll-padding-top:calc(var(--header-h,56px) + 16px);}
}

/* ============================================================
   Checkout – animált "Rendelés véglegesítése" gomb
   A mozgás a jóváhagyott teherautós animáció változata. Az animációs
   színpad fix 240 px és középre igazított, ezért a checkout gomb teljes
   szélességétől függetlenül ugyanúgy mozog.
   ============================================================ */
.checkout-order-btn{
  --co-primary:#275efe;
  --co-primary-light:#7699ff;
  --co-dark:#1c212e;
  --co-grey-dark:#3f4656;
  --co-grey:#6c7486;
  --co-grey-light:#cdd9ed;
  --co-white:#fff;
  --co-green:#16bf78;
  --co-sand:#dcb773;
  --co-sand-light:#edd9a9;
  position:relative;
  height:63px;
  padding:0 !important;
  overflow:hidden;
  overflow:clip;
  border:0 !important;
  border-radius:32px !important;
  background:var(--co-dark) !important;
  color:var(--co-white) !important;
  cursor:pointer;
  isolation:isolate;
  contain:paint;
  clip-path:inset(0 round 32px);
  -webkit-tap-highlight-color:transparent;
  transition:transform .3s ease !important;
}
.checkout-order-btn:hover{
  background:var(--co-dark) !important;
  transform:none !important;
  box-shadow:none !important;
}
.checkout-order-btn:active{transform:scale(.98) !important;}
.checkout-order-btn[disabled]{
  opacity:1 !important;
  pointer-events:none;
}

.checkout-order-btn .checkout-order-label{
  --o:1;
  position:absolute;
  z-index:4;
  left:14px;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  display:block;
  line-height:20px;
  text-align:center;
  color:var(--co-white);
  font-size:14px;
  font-weight:700;
  letter-spacing:0;
  white-space:nowrap;
  opacity:var(--o);
  transition:opacity .3s ease;
}
.checkout-order-btn .checkout-order-label.default{transition-delay:.3s;}
.checkout-order-btn .checkout-order-label.success{
  --o:0;
  --offset:16px;
  font-size:15px;
  font-weight:600;
}
.checkout-order-btn .checkout-order-label.success svg{
  width:12px;
  height:10px;
  display:inline-block;
  vertical-align:top;
  fill:none;
  margin:5px 0 0 4px;
  stroke:var(--co-green);
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:16px;
  stroke-dashoffset:var(--offset);
  transition:stroke-dashoffset .3s ease;
}

.checkout-order-stage{
  position:absolute;
  z-index:2;
  top:0;
  bottom:0;
  left:50%;
  width:240px;
  transform:translateX(-50%);
  pointer-events:none;
}
.checkout-order-lines{
  z-index:0;
  opacity:0;
  position:absolute;
  height:3px;
  width:345px;
  top:30px;
  left:100%;
  border-radius:2px;
  /* A sok box-shadow néhány böngészőben csíkozva/villogva renderelődött.
     Egyetlen ismétlődő háttérrel ugyanaz a "sebességvonal" stabilan rajzolódik. */
  background:repeating-linear-gradient(90deg,var(--co-white) 0 6px,transparent 6px 15px);
  will-change:transform,opacity;
}
.checkout-order-back,
.checkout-order-box{
  --start:var(--co-white);
  --stop:var(--co-grey-light);
  border-radius:2px;
  background:linear-gradient(var(--start),var(--stop));
  position:absolute;
}
.checkout-order-truck{
  z-index:3;
  width:60px;
  height:41px;
  left:calc(100% + 40px);
  top:11px;
  z-index:1;
  position:absolute;
  transform:none;
}
.checkout-order-truck::before,
.checkout-order-truck::after{
  --r:-90deg;
  content:"";
  height:2px;
  width:20px;
  right:58px;
  position:absolute;
  display:block;
  background:var(--co-white);
  border-radius:1px;
  transform-origin:100% 50%;
  transform:rotate(var(--r));
}
.checkout-order-truck::before{top:4px;}
.checkout-order-truck::after{--r:90deg;bottom:4px;}
.checkout-order-truck .checkout-order-back{
  left:0;
  top:0;
  width:60px;
  height:41px;
  z-index:1;
}
.checkout-order-front{
  overflow:hidden;
  position:absolute;
  left:60px;
  width:26px;
  height:41px;
  border-radius:2px 9px 9px 2px;
}
.checkout-order-front::before,
.checkout-order-front::after{
  content:"";
  position:absolute;
  display:block;
}
.checkout-order-front::before{
  height:13px;
  width:2px;
  left:0;
  top:14px;
  background:linear-gradient(var(--co-grey),var(--co-grey-dark));
}
.checkout-order-front::after{
  right:0;
  width:24px;
  height:41px;
  border-radius:2px 9px 9px 2px;
  background:var(--co-primary);
}
.checkout-order-window{
  overflow:hidden;
  border-radius:2px 8px 8px 2px;
  background:var(--co-primary-light);
  transform:perspective(4px) rotateY(3deg);
  transform-origin:0 50%;
  width:22px;
  height:41px;
  position:absolute;
  left:2px;
  top:0;
  z-index:1;
}
.checkout-order-window::before,
.checkout-order-window::after{
  content:"";
  position:absolute;
  right:0;
}
.checkout-order-window::before{
  top:0;
  bottom:0;
  width:14px;
  background:var(--co-dark);
}
.checkout-order-window::after{
  width:14px;
  top:7px;
  height:4px;
  background:rgba(255,255,255,.14);
  transform:skewY(14deg);
  box-shadow:0 7px rgba(255,255,255,.14);
}
.checkout-order-light{
  width:3px;
  height:8px;
  left:83px;
  transform-origin:100% 50%;
  position:absolute;
  border-radius:2px;
  transform:scaleX(.8);
  background:#f0dc5f;
}
.checkout-order-light::before{
  content:"";
  height:4px;
  width:7px;
  opacity:0;
  transform:perspective(2px) rotateY(-15deg) scaleX(.94);
  position:absolute;
  transform-origin:0 50%;
  left:3px;
  top:50%;
  margin-top:-2px;
  background:linear-gradient(90deg,#f0dc5f,rgba(240,220,95,.7),rgba(240,220,95,0));
}
.checkout-order-light.top{top:4px;}
.checkout-order-light.bottom{bottom:4px;}
.checkout-order-box{
  z-index:1;
  --start:var(--co-sand-light);
  --stop:var(--co-sand);
  width:21px;
  height:21px;
  right:100%;
  top:21px;
  opacity:0;
  will-change:transform,opacity;
}
.checkout-order-box::before,
.checkout-order-box::after{
  content:"";
  top:10px;
  position:absolute;
  left:0;
  right:0;
}
.checkout-order-box::before{
  height:3px;
  margin-top:-1px;
  background:rgba(0,0,0,.1);
}
.checkout-order-box::after{
  height:1px;
  background:rgba(0,0,0,.15);
}

.checkout-order-btn.animate .checkout-order-label.default{
  --o:0;
  transition-delay:0s;
}
.checkout-order-btn.animate .checkout-order-label.success{
  --offset:0;
  --o:1;
  transition-delay:7s;
}
.checkout-order-btn.animate .checkout-order-label.success svg{transition-delay:7.3s;}
.checkout-order-btn.animate .checkout-order-truck{animation:checkoutTruckMove 10s ease forwards;}
.checkout-order-btn.animate .checkout-order-truck::before{animation:checkoutDoorTop 2.4s ease .3s forwards;}
.checkout-order-btn.animate .checkout-order-truck::after{animation:checkoutDoorBottom 2.4s ease .6s forwards;}
.checkout-order-btn.animate .checkout-order-light::before{animation:checkoutLightBeam 10s ease forwards;}
.checkout-order-btn.animate .checkout-order-box{animation:checkoutBoxMove 10s ease forwards;}
.checkout-order-btn.animate .checkout-order-lines{animation:checkoutRoadLines 10s ease forwards;}

@keyframes checkoutTruckMove{
  0%{left:calc(100% + 40px);}
  10%,30%{left:calc(100% - 164px);}
  40%{left:calc(100% - 104px);}
  60%{left:calc(100% - 224px);}
  75%,100%{left:calc(100% + 96px);}
}
@keyframes checkoutRoadLines{
  0%,30%{opacity:0;transform:scaleY(.7) translateX(0);}
  35%,65%{opacity:1;}
  70%{opacity:0;}
  100%{transform:scaleY(.7) translateX(-400px);}
}
@keyframes checkoutLightBeam{
  0%,30%{opacity:0;transform:perspective(2px) rotateY(-15deg) scaleX(.88);}
  40%,100%{opacity:1;transform:perspective(2px) rotateY(-15deg) scaleX(.94);}
}
@keyframes checkoutDoorTop{
  30%,50%{transform:rotate(32deg);}
}
@keyframes checkoutDoorBottom{
  30%,50%{transform:rotate(-32deg);}
}
@keyframes checkoutBoxMove{
  8%,10%{transform:translateX(40px);opacity:1;}
  25%{transform:translateX(112px);opacity:1;}
  26%{transform:translateX(112px);opacity:0;}
  27%,100%{transform:translateX(0);opacity:0;}
}

@media (max-width:420px){
  .checkout-order-btn .checkout-order-label.default{
    font-size:12.5px;
    left:8px;
    right:8px;
  }
}
@media (prefers-reduced-motion:reduce){
  .checkout-order-btn.animate .checkout-order-label.success{
    --o:1;
    transition-delay:0s;
  }
  .checkout-order-btn.animate .checkout-order-label.default{--o:0;}
  .checkout-order-btn.animate .checkout-order-label.success svg{
    --offset:0;
    transition-delay:0s;
  }
  .checkout-order-btn.animate .checkout-order-truck,
  .checkout-order-btn.animate .checkout-order-truck::before,
  .checkout-order-btn.animate .checkout-order-truck::after,
  .checkout-order-btn.animate .checkout-order-light::before,
  .checkout-order-btn.animate .checkout-order-box,
  .checkout-order-btn.animate .checkout-order-lines{
    animation:none !important;
  }
}

/* =========================================================
   Világos / sötét téma
   ========================================================= */
:root{
  --chart-grid:#E1E0D9;
  --chart-axis:#C3C2B7;
  --chart-muted:#898781;
  --chart-text:#3A3830;
  --chart-blue:#2A78D6;
  --warning:#9A6B00;
  --warning-tint:#FFF3D6;
  --info:#2C6E8C;
  --info-tint:#E3EEF3;
  --danger:#B42318;
  --danger-tint:#FFF0EF;
}

.theme-switch{
  width:44px;height:24px;flex:0 0 44px;position:relative;
  border:1px solid var(--line);border-radius:999px;padding:0;
  background:var(--line-soft);color:var(--muted);cursor:pointer;
  box-shadow:inset 0 1px 2px rgba(23,22,15,.08);
  transition:background .24s var(--ease),border-color .24s var(--ease),box-shadow .24s var(--ease);
  overflow:hidden;-webkit-tap-highlight-color:transparent;
}
.theme-switch:hover{border-color:var(--muted);}
.theme-switch:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}
.theme-switch-knob{
  position:absolute;z-index:0;left:2px;top:2px;width:18px;height:18px;border-radius:50%;
  background:var(--paper);border:1px solid rgba(23,22,15,.08);
  box-shadow:0 1px 4px rgba(23,22,15,.18);
  transition:transform .28s var(--ease),background .28s var(--ease),border-color .28s var(--ease);
}
.theme-glyph{
  position:absolute;z-index:1;top:6px;width:11px;height:11px;pointer-events:none;
  transition:color .24s var(--ease),opacity .24s var(--ease);
}
.theme-sun{left:5px;color:var(--accent);opacity:1;}
.theme-moon{right:5px;color:var(--muted);opacity:.58;}

html[data-theme="dark"]{
  --ink:#F2EDE4;
  --ink-soft:#D4CEC3;
  --muted:#9E988D;
  --line:#38352F;
  --line-soft:#282621;
  --cream:#11110F;
  --paper:#1A1916;
  --accent:#C95620;
  --accent-dark:#F07A42;
  --accent-tint:#392117;
  --success:#78BE91;
  --success-tint:#193126;
  --star:#F2B63B;
  --shadow-sm:0 1px 2px rgba(0,0,0,.34);
  --shadow:0 10px 28px -10px rgba(0,0,0,.62);
  --shadow-lg:0 26px 54px -14px rgba(0,0,0,.72);
  --chart-grid:#34312C;
  --chart-axis:#4B4740;
  --chart-muted:#9E988D;
  --chart-text:#D4CEC3;
  --chart-blue:#68A6F0;
  --warning:#F0C66B;
  --warning-tint:#342A15;
  --info:#80B9D6;
  --info-tint:#172C38;
  --danger:#FF8C82;
  --danger-tint:#391B19;
  color-scheme:dark;
}
html[data-theme="dark"] body{background:var(--cream);color:var(--ink);}
html[data-theme="dark"] .logo-mark rect:nth-child(2){fill:#17160F;}
html[data-theme="dark"] .site-header{background:rgba(17,17,15,.88);border-bottom-color:var(--line);}
html[data-theme="dark"] .site-header.scrolled{box-shadow:0 7px 24px -16px rgba(0,0,0,.9);}
html[data-theme="dark"] .theme-switch{background:#181714;border-color:#3A3731;box-shadow:inset 0 1px 4px rgba(0,0,0,.62);}
html[data-theme="dark"] .theme-switch-knob{transform:translateX(20px);background:#EEE8DE;border-color:#EEE8DE;box-shadow:0 1px 5px rgba(0,0,0,.52);}
html[data-theme="dark"] .theme-sun{color:var(--muted);opacity:.48;}
html[data-theme="dark"] .theme-moon{color:#17160F;opacity:1;}

/* A sötét témában az „ink” a világos főszöveg; az ink-háttérrel készült
   vezérlők ezért világos gombként, sötét felirattal jelennek meg. */
html[data-theme="dark"] :is(
  .btn-primary,.btn-outline:hover,.product-badge,.add-btn,.add-btn.added,
  .opt-size.active,.pd-actions .btn-accent.added,.step-item.current .step-num,
  .account-nav a.active,.admin-status-option.active,.return-step::before,
  .admin-mobile-nav a.active,.rail-item.on,.shop-search button,.filter-link.active,
  .section-num
){color:#17160F;}
html[data-theme="dark"] .filter-link.active .count{color:rgba(23,22,15,.62);}
html[data-theme="dark"] .rail-item.on .ct{color:#585249;}
html[data-theme="dark"] .announce,
html[data-theme="dark"] .site-footer,
html[data-theme="dark"] .admin-sidebar,
html[data-theme="dark"] #logout-fab{background:#0D0D0C;color:#D8D2C7;}
html[data-theme="dark"] #logout-fab:hover{background:#050505;color:#fff;}
html[data-theme="dark"] .site-footer{color:#C9C2B7;}
html[data-theme="dark"] .footer-bottom{color:#8E887E;}

html[data-theme="dark"] .floating-card{background:rgba(28,27,23,.94);border:1px solid var(--line);}
html[data-theme="dark"] .wishlist-btn{background:rgba(26,25,22,.92);color:var(--ink);}
html[data-theme="dark"] .input:focus{background:var(--paper);}
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{color:var(--ink);}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#777168;}
html[data-theme="dark"] .pay-method:hover,
html[data-theme="dark"] .fox-point-btn:hover{border-color:#5A554D;}
html[data-theme="dark"] .fox-map-frame iframe{background:#fff;}
html[data-theme="dark"] .leaflet-container{background:#25241F;}
html[data-theme="dark"] .gls-map-loading{background:rgba(17,17,15,.9);}
html[data-theme="dark"] .virex-cluster{background:rgba(255,255,255,.12);}
html[data-theme="dark"] .virex-cluster div{background:#17160F;color:#fff;border-color:#D8D2C7;}

/* Állapotok és visszajelzések */
html[data-theme="dark"] :is(.verify-badge.wait,.order-status.transit,.demo-banner,.unpaid-chip,.return-callout,.free-shipping-note,.mod-window.soon){
  background:var(--warning-tint);color:var(--warning);border-color:#5A4722;
}
html[data-theme="dark"] .approval-banner{background:#302611;color:#EAC77B;border-bottom-color:#51411F;}
html[data-theme="dark"] .approval-banner strong{color:#F4D58F;}
html[data-theme="dark"] .free-shipping-note .free-ship-icon{background:rgba(255,255,255,.06);}
html[data-theme="dark"] :is(.order-status.prepared,.tracking-carrier-note,.pay-chip.card){background:var(--info-tint);color:var(--info);}
html[data-theme="dark"] :is(.acc-msg.ok,.verify-badge.ok){background:var(--success-tint);color:var(--success);}
html[data-theme="dark"] :is(.acc-msg.err,.approval-chip.rejected,.form-error,.checkout-error,.kpi-delta.down){background:var(--danger-tint);color:var(--danger);}
html[data-theme="dark"] :is(.order-status.cancelled,.cancelled-chip,.cancelled-bar,.modal-warn){background:var(--danger-tint);color:var(--danger);border-color:#60302B;}
html[data-theme="dark"] .cancelled-txt span{color:#E98076;}
html[data-theme="dark"] .tracking-order-card.is-cancelled{background:linear-gradient(180deg,#2B1716 0%,var(--paper) 90px);border-color:#5A302C;}
html[data-theme="dark"] .mod-window{border-color:#2D5B40;}
html[data-theme="dark"] .mod-window.soon{border-color:#5A4722;}
html[data-theme="dark"] .mod-window.soon .mod-bar{background:#51431F;}
html[data-theme="dark"] .btn-danger-soft{border-color:#6A3934;color:var(--danger);}
html[data-theme="dark"] .btn-danger-soft:hover{background:var(--danger-tint);color:#FFAAA2;}

/* Admin és ritkább panelek */
html[data-theme="dark"] .admin-account{background:var(--paper);}
html[data-theme="dark"] .admin-nav-sep{color:#766F64;border-top-color:rgba(255,255,255,.08);}
html[data-theme="dark"] .admin-nav .nav-sup-sub{color:#847C70;}
html[data-theme="dark"] .inv-box{background:#18222D;border-color:#2C4157;}
html[data-theme="dark"] .inv-title{color:#92B9DF;}
html[data-theme="dark"] .inv-box.done{background:#17281F;border-color:#28533A;}
html[data-theme="dark"] .inv-box.done .inv-title{color:#7CC297;}
html[data-theme="dark"] .inv-box.err{background:#301918;border-color:#60302B;}
html[data-theme="dark"] .inv-box.err .inv-title{color:var(--danger);}
html[data-theme="dark"] .inv-box.storno{background:#2C2518;border-color:#504329;}
html[data-theme="dark"] .inv-box.storno .inv-title{color:#D8B96F;}
html[data-theme="dark"] .admin-lock{background:#2D2517;border-color:#514323;}
html[data-theme="dark"] .admin-lock strong{color:#E7C572;}
html[data-theme="dark"] .admin-lock span{color:#C8A95E;}
html[data-theme="dark"] .supplier-panel{background:#171A1C;border-color:#394148;}
html[data-theme="dark"] .supplier-logo{background:var(--paper);}
html[data-theme="dark"] .mail-status,
html[data-theme="dark"] .mail-test-bar,
html[data-theme="dark"] .mail-template-card,
html[data-theme="dark"] .own-product-card{background:var(--paper);}
html[data-theme="dark"] .mail-template-icon{background:#2A241F;}
html[data-theme="dark"] .mail-template-auto{background:var(--success-tint);color:var(--success);}
html[data-theme="dark"] .mail-env-note{background:#171613;border-color:#514B42;}
html[data-theme="dark"] .mail-env-note code{background:#2A2823;color:#D9D2C7;}
html[data-theme="dark"] .own-product-detail{background:#151411;}
html[data-theme="dark"] .own-product-stats>div{background:var(--paper);}
html[data-theme="dark"] .access-gate-card{background:rgba(26,25,22,.98);border-color:rgba(255,255,255,.09);}
html[data-theme="dark"] .pending-spinner{border-color:#39352E;border-top-color:var(--accent);}
html[data-theme="dark"] .p-chip,
html[data-theme="dark"] .p-del{background:var(--paper);}
html[data-theme="dark"] .p-del:hover{background:var(--danger-tint);border-color:#60302B;}
html[data-theme="dark"] .p-statbox{background:#151411;}
html[data-theme="dark"] .p-spark i{background:#39352E;}
html[data-theme="dark"] .p-card:hover{border-color:#4C473F;}
html[data-theme="dark"] .pfm-close{background:var(--paper);}
html[data-theme="dark"] .pfm-calc{background:#17271F;border-color:#2C543B;}
html[data-theme="dark"] .pfm-calc span,
html[data-theme="dark"] .pfm-calc p{color:#81AA90;}
html[data-theme="dark"] .pfm-calc b{color:#8BC9A0;}
html[data-theme="dark"] .pfm-foot{background:#151411;}

/* Mobil ragadós elemek ugyanazt a felületet kapják, mint a fejléc. */
html[data-theme="dark"] .plp-toolbar{background:rgba(17,17,15,.95);}
html[data-theme="dark"] .mbuybar{background:rgba(17,17,15,.97);}
html[data-theme="dark"] .admin-top{background:rgba(17,17,15,.94);border-bottom-color:var(--line);}
html[data-theme="dark"] .admin-storebar-inner a{color:#B9B4A6;}
html[data-theme="dark"] .admin-storebar-inner a:hover,
html[data-theme="dark"] .admin-storebar-inner a.active{color:#fff;}
html[data-theme="dark"] .admin-mobile-nav{background:rgba(17,17,15,.96);}

@media(max-width:680px){
  .header-actions{gap:4px;}
  .theme-switch{width:42px;flex-basis:42px;}
  html[data-theme="dark"] .theme-switch-knob{transform:translateX(18px);}
}

.theme-switch-float{position:fixed;top:18px;right:20px;z-index:1400;display:flex;align-items:center;}
html[data-theme="dark"] .tracking-search .input{background:var(--paper);}
html[data-theme="dark"] .order-status.processing{background:var(--line-soft);color:var(--ink-soft);}
html[data-theme="dark"] :is(.setup-banner,.legal-warning){background:var(--warning-tint);color:var(--warning);border-color:#5A4722;}
html[data-theme="dark"] .flash.err{background:var(--danger-tint);color:var(--danger);}
html[data-theme="dark"] .pay-chip.transfer{background:#29223B;color:#B9A8EF;}
html[data-theme="dark"] .supplier-panel{background:#171A1C !important;border-color:#394148 !important;}
html[data-theme="dark"] .supplier-logo{background:var(--paper) !important;border-color:#4A443D !important;}
html[data-theme="dark"] .supplier-chip{background:var(--info-tint);color:var(--info);}
html[data-theme="dark"] .mail-template-card:hover{border-color:#4B463E;box-shadow:0 12px 30px rgba(0,0,0,.24);}
html[data-theme="dark"] .mod-bar{background:#284032;}
html[data-theme="dark"] .table-wrap{
  background:
    linear-gradient(to right,var(--paper) 40%,rgba(26,25,22,0)) left/26px 100% no-repeat local,
    linear-gradient(to left,var(--paper) 40%,rgba(26,25,22,0)) right/26px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.22),rgba(0,0,0,0)) left/10px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.22),rgba(0,0,0,0)) right/10px 100% no-repeat scroll;
}
html[data-theme="dark"] .admin-order-card[style*="FFF9F8"]{background:#2B1716 !important;border-color:#5A302C !important;}
html[data-theme="dark"] .admin-dispatch-box[style*="f2fbf6"]{background:#17281F !important;border-color:#28533A !important;}
html[data-theme="dark"] .mod-window.closed[style*="FFF0EF"]{background:var(--danger-tint) !important;border-color:#60302B !important;}
@media(max-width:680px){.theme-switch-float{top:14px;right:14px;}}\n\n/* =========================================================
   v64 — OLED témaátmenet + hero kártyák pontos igazítása
   ========================================================= */
html.theme-oled-flash::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:2147483646;
  pointer-events:none;
  background:#000;
  opacity:0;
  animation:themeOledFade .65s ease both;
}
@keyframes themeOledFade{
  0%{opacity:0;}
  45%{opacity:.16;}
  100%{opacity:0;}
}
html.theme-oled-flash body,
html.theme-oled-flash .site-header,
html.theme-oled-flash .product-card,
html.theme-oled-flash .floating-card,
html.theme-oled-flash .cat-card,
html.theme-oled-flash .panel,
html.theme-oled-flash .legal-card,
html.theme-oled-flash .tracking-order-card,
html.theme-oled-flash .admin-order-card,
html.theme-oled-flash .input,
html.theme-oled-flash .pay-method{
  transition-property:background-color,color,border-color,box-shadow;
  transition-duration:.55s;
  transition-timing-function:var(--ease);
}

/* Mindkét lebegő infókártya teljesen a saját logó-négyzetén belül marad. */
.hero-visual .floating-card{
  width:39%;
  min-width:0;
  max-width:none;
  white-space:normal;
  padding:10px 12px;
  gap:9px;
  transform:translateX(-50%);
  animation:heroCardFloat 5s ease-in-out infinite;
}
.hero-visual .floating-card>div:last-child{min-width:0;}
.hero-visual .floating-card .fc-title,
.hero-visual .floating-card .fc-sub{
  overflow-wrap:normal;
  word-break:normal;
}
.hero-visual .floating-card.c1{
  top:8%;
  left:25%;
  bottom:auto;
  animation-delay:0s;
}
.hero-visual .floating-card.c2{
  top:auto;
  left:75%;
  bottom:8%;
  animation-delay:1.2s;
}
@keyframes heroCardFloat{
  0%,100%{transform:translateX(-50%) translateY(0);}
  50%{transform:translateX(-50%) translateY(-4px);}
}

@media(max-width:680px){
  .hero-visual .floating-card{
    width:39%;
    padding:7px 8px;
    gap:6px;
  }
  .hero-visual .floating-card .fc-icon{
    flex:0 0 22px;
    width:22px;
    height:22px;
  }
  .hero-visual .floating-card .fc-icon svg{width:13px;height:13px;}
  .hero-visual .floating-card .fc-title{font-size:10px;line-height:1.12;}
  .hero-visual .floating-card .fc-sub{font-size:8.7px;line-height:1.18;margin-top:2px;}
  .hero-visual .floating-card.c1{top:7%;left:25%;}
  .hero-visual .floating-card.c2{top:auto;left:75%;bottom:7%;}
}

@media(prefers-reduced-motion:reduce){
  html.theme-oled-flash::after{animation:none;display:none;}
  .hero-visual .floating-card{animation:none;}
}


/* =========================================================
   v66 — Látogatók ma: név szerinti admin lista
   ========================================================= */
.visitor-details{
  margin-top:18px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--paper);
  overflow:hidden;
}
.visitor-details-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:15px 16px;
  border-bottom:1px solid var(--line);
  background:var(--cream);
}
.visitor-details-head h4{
  margin:0 0 3px;
  font-size:15px;
}
.visitor-details-head p{
  margin:0;
  font-size:12px;
  color:var(--muted);
}
.visitor-total{
  flex:0 0 auto;
  padding:6px 10px;
  border-radius:999px;
  background:var(--paper);
  border:1px solid var(--line);
  font-size:12px;
  font-weight:800;
}
.visitor-list{
  display:flex;
  flex-direction:column;
}
.visitor-person{
  min-height:54px;
  padding:10px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-bottom:1px solid var(--line-soft);
}
.visitor-person:last-child{border-bottom:0}
.visitor-person-main{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.visitor-person-main strong{
  font-size:14px;
  overflow-wrap:anywhere;
}
.visitor-person-main span{
  font-size:12px;
  color:var(--muted);
  overflow-wrap:anywhere;
}
.visitor-person time,
.visitor-person > b{
  flex:0 0 auto;
  font-size:12px;
  color:var(--muted);
  font-weight:700;
}
.visitor-person.guest > b{
  color:var(--text);
  padding:5px 9px;
  border-radius:999px;
  background:var(--cream);
}
.visitor-empty{
  padding:18px 16px;
  text-align:center;
  color:var(--muted);
  font-size:13px;
}
.visitor-note{
  margin:0;
  padding:10px 16px 13px;
  border-top:1px solid var(--line-soft);
  color:var(--muted);
  font-size:11px;
  line-height:1.45;
}
@media(max-width:680px){
  .visitor-details-head{align-items:flex-start}
  .visitor-person{padding:10px 12px}
  .visitor-details-head{padding:13px 12px}
  .visitor-note{padding:9px 12px 12px}
}


/* =========================================================
   v67 — kattintható napi látogatói oszlopok
   ========================================================= */
#smChart .sm-visitor-column{
  cursor:pointer;
  outline:none;
}
#smChart .sm-visitor-hit{
  pointer-events:all;
}
#smChart .sm-visitor-bar{
  transition:opacity .16s ease,filter .16s ease,stroke-width .16s ease;
}
#smChart .sm-visitor-column:hover .sm-visitor-bar,
#smChart .sm-visitor-column:focus .sm-visitor-bar{
  filter:brightness(1.12);
}
#smChart .sm-visitor-column.selected .sm-visitor-bar{
  stroke:var(--chart-text);
  stroke-width:2.5px;
  paint-order:stroke fill;
}
#smChart .sm-visitor-column:focus-visible .sm-visitor-hit{
  stroke:var(--chart-axis);
  stroke-width:1.5px;
  stroke-dasharray:4 3;
}
.visitor-period-hint{
  margin-top:18px;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--cream);
  color:var(--muted);
  font-size:12.5px;
  line-height:1.45;
}
.visitor-period-hint strong{color:var(--text)}
