.box {
  --s:40px !important; /* skewed part */
  --o:5px !important;  /* offset part */
  --c:#8cbe3c !important; /* color */
  color: black !important;

  width: -webkit-fill-available !important;
  height: auto !important;
  display: inline-block !important;
  margin: 3px !important;
  position: relative !important;
  background: grey !important;
  text-align: right !important;
}

.box:before {
  content: attr(data-text) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding: 5px calc(10px + var(--s)) calc(5px + var(--o)) calc(10px + var(--o)) !important;
  position: absolute !important;
  top: 10px !important;
  left: calc(-1*var(--o)) !important;
  background:
    linear-gradient(#000 0 0) bottom/100% var(--o) no-repeat
    var(--c) !important;
  clip-path: polygon(
    0 0,100% 0,calc(100% - var(--s)) calc(100% - var(--o)),
    var(--o) calc(100% - var(--o)),var(--o) 100%,0 calc(100% - var(--o))
  ) !important;
}

/* =========================
   SHOP TILE "RIBBON" = same as header presale pill
   (override your current .box:before)
   ========================= */

:root{
  --ea-green:#8bc53f !important;
  --ea-green-dark:#6fa82e !important;
}

/* a csempe maradhat, csak biztosítsuk a pozicionálást */
.box{
  position: relative !important;
}

/* ÚJ ribbon: pill badge, mint az Elővásárlás gomb */
.box::before{
  content: attr(data-text) !important;
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;

  display: inline-flex !important;
  align-items: center !important;

  padding: .38rem .75rem !important;
  border-radius: 999px !important;

  background: var(--ea-green) !important;
  color: #0f2d00 !important;

  font-weight: 900 !important;
  font-size: 13px !important;
  line-height: 1 !important;

  box-shadow: 0 6px 14px rgba(0,0,0,.10) !important;
  border: 1px solid rgba(0,0,0,.10) !important;

  clip-path: none !important;
}

/* hover kicsi sötétítés */
.box:hover::before{
  background: var(--ea-green-dark) !important;
}

/* ha nincs szöveg (data-text=""), akkor ne jelenjen meg */
.box[data-text=""]::before,
.box:not([data-text])::before{
  display: none !important;
}

.price-main{
  font-weight: 700 !important;
  font-size: 15px !important;
}

.price-sub{
  font-size: 11px !important;
  font-weight: 500 !important;
  opacity: .65 !important;
  margin-left: 6px !important;
  white-space: nowrap !important;
}

.colProduct{
  width: 24% !important;
}

/* =========================
   PRESALE ribbon on product tiles
   ========================= */

.box{
  position: relative !important;
}

/* presale pill */
.box-presale::before{
  content: attr(data-text) !important;
  position: absolute !important;
  top: 8px !important;
  left: 10px !important;

  padding: .3rem .65rem !important;
  border-radius: 999px !important;

  background: #8bc53f !important;
  color: #0f2d00 !important;

  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;

  box-shadow: 0 4px 10px rgba(0,0,0,.12) !important;
  z-index: 3 !important;
}

/* yearly gomb kap egy kis levegőt felül */
.box-presale .btn-cart{
  margin-top: 1.1rem !important;
}

/* =========================
   PRESALE ribbon: no overlap with title
   ========================= */

/* a pill kicsit kisebb + feljebb */
.box.box-presale::before{
  top: 6px !important;
  left: 10px !important;
  font-size: 12px !important;     /* javítva: ne legyen duplán */
  padding: .24rem .55rem !important;
  line-height: 1 !important;
  z-index: 5 !important;
}

/* a gombon belül a tartalom lejjebb */
.box.box-presale > button.btn-cart{
  padding-top: .9rem !important;
}

/* stacking */
.box.box-presale > button.btn-cart *{
  position: relative !important;
  z-index: 1 !important;
}

/* mobilon kevesebb is elég */
@media (max-width: 575.98px){
  .box.box-presale > button.btn-cart{
    padding-top: 1.45rem !important;
  }
}

@media (max-width: 991.98px){
  .colProduct{
    width: 50% !important;
  }
}

@media (max-width: 575.98px){
  .colProduct{
    width: 100% !important;
  }
}

@media (max-width: 575.98px){
  .colProduct{
    margin-bottom: 12px !important;
  }

  .btn-cart{
    min-height: 52px !important;
    font-size: 15px !important;
  }

  .price-main{
    font-size: 16px !important;
  }

  .price-sub{
    font-size: 12px !important;
  }
}

.returning-user{
  margin-bottom: .4rem !important;
  font-size: .9rem !important;
  color: #6c757d !important;
}

@media (max-width: 767.98px){
  .returning-user{
    display: none !important;
  }
}

.moto-info-header{
  background: none !important;
  border: 0 !important;
  color: #fff !important;
  margin-left: 6px !important;
  cursor: pointer !important;
  font-size: 16px !important;
  opacity: .85 !important;
}

.moto-info-header:hover{
  opacity: 1 !important;
}

/* ===== Price info block (EUR mode) ===== */
.ea-priceinfo{
  border-radius: 14px !important;
  padding: 14px 16px !important;
  font-size: .92rem !important;
}

.ea-priceinfo__title{
  display: flex !important;
  align-items: center !important;
  gap: .35rem !important;
  margin-bottom: 8px !important;
  color: #1f2d3d !important;
}

.ea-priceinfo__title i{
  font-size: 1.05rem !important;
  opacity: .9 !important;
}

.ea-priceinfo__list{
  margin: 0 !important;
  padding-left: 1.1rem !important;
}

.ea-priceinfo__list li{
  margin: 0 0 .35rem 0 !important;
  line-height: 1.35 !important;
}

.ea-priceinfo__list li:last-child{
  margin-bottom: 0 !important;
}

@media (max-width:575.98px){
  .ea-priceinfo{
    padding: 12px 12px !important;
    font-size: .9rem !important;
  }
}

.ea-secondary-cta{
  border-radius:14px !important;
  padding:.9rem 1rem !important;

  background:#ffffff !important;
  border:2px dashed rgba(13,110,253,.35) !important;

  color:#0d6efd !important;
  font-weight:800 !important;
}

.ea-secondary-cta:hover{
  background:rgba(13,110,253,.06) !important;
  border-color: rgba(13,110,253,.55) !important;
}
/* ===== Cart left block: soft card ===== */
.ea-cartcard{
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
  overflow: hidden !important; /* hogy a table csíkok ne vágjanak ki */
  box-shadow: 0 10px 28px rgba(0,0,0,.06) !important;
}

/* table reset: ne legyenek “kemény” csíkok és vonalak */
.ea-cartcard .table{
  margin-bottom: 0 !important;
}

.ea-cartcard .table > :not(caption) > * > *{
  border-bottom-color: rgba(0,0,0,.06) !important;
}

/* a striped túl „irodai” – finomítsuk */
.ea-cartcard .table-striped > tbody > tr:nth-of-type(odd) > *{
  background: rgba(13,110,253,.03) !important;
}

/* tétel blokk levegő + kompakt */
.ea-cartcard .cart_table_item td{
  padding: 14px 16px !important;
}

/* a felső rész (ikon + cím) legyen rendezettebb */
.ea-cartcard .cart_table_item .row.pb-4.pt-4{
  padding-top: 12px !important;
  padding-bottom: 10px !important;
  margin-bottom: 6px !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
}

/* a termékkód (D1/D2/U) badge legyen “pill” */
.ea-cartcard .inverted.background-color-green{
  display:inline-flex !important;
  align-items:center !important;
  padding:.25rem .6rem !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  letter-spacing: .3px !important;
  margin-right: .45rem !important;
}

/* inputok egységesebb sugár */
.ea-cartcard .form-control,
.ea-cartcard .form-select{
  border-radius: 12px !important;
}

/* jobb oldali ár: kicsit hangsúlyosabb */
.ea-cartcard .text-right .form-group.nowrap{
  font-weight: 800 !important;
}

/* kuka gomb: ne “csupasz ikon” legyen */
.ea-cartcard button[name="delproduct"]{
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
  background: rgba(220,53,69,.08) !important; /* bootstrap danger halo */
  color: #dc3545 !important;
  border: 1px solid rgba(220,53,69,.18) !important;
}

.ea-cartcard button[name="delproduct"]:hover{
  background: rgba(220,53,69,.14) !important;
  border-color: rgba(220,53,69,.28) !important;
}
.ea-card-header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
}

.ea-card-header__left{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
}
/* Header ikonok hangsúlyosabbá tétele */
.ea-card-header .icons{
  font-size: 1.25rem;       /* nagyobb ikon */
  color: #1677c5;           /* márkaszín */
  opacity: 1;               /* ne legyen fakó */
  line-height: 1;           /* ne csússzon */
  transform: translateY(-1px);
  -webkit-text-stroke: .35px currentColor; /* kicsit vastagabb érzet */
}

/* opcionális: kis “badge” háttér, hogy jobban kiugorjon */
.ea-card-header__left .icons{
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(22,119,197,.10);
}

/* switch */
.ea-switch{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  cursor:pointer !important;
  font-weight:600 !important;
}

.ea-switch input{
  display:none !important;
}

.ea-switch__slider{
  width:44px !important;
  height:24px !important;
  background:#ced4da !important;
  border-radius:999px !important;
  position:relative !important;
  transition:.2s !important;
}

.ea-switch__slider::after{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:18px;
  height:18px;
  background:#fff;
  border-radius:50%;
  transition:.2s;
}

.ea-switch input:checked + .ea-switch__slider{
  background:#0d6efd !important;
}

.ea-switch input:checked + .ea-switch__slider::after{
  transform:translateX(20px);
}

.ea-switch__label{
  color:#495057 !important;
  white-space:nowrap !important;
}
/* ===== WARNING INFO TEXT (invoice / legal note) ===== */

.ea-warning-text{
  position: relative !important;
  padding: .75rem .9rem .75rem 2.2rem !important;

  background: #fff7e6 !important;
  border: 1px solid #ffe1a3 !important;
  border-radius: 10px !important;

  color: #8a5a00 !important;
  font-size: .9rem !important;
  line-height: 1.45 !important;
}

/* ikon bal oldalon */
.ea-warning-text::before{
  content: "\f071" !important;
  font: var(--fa-font-solid) !important;  /* <-- ez a kulcs FA6-hoz */
  position: absolute !important;
  left: .8rem !important;
  top: .85rem !important;
  font-size: 1rem !important;
  color: #f0a500 !important;
  opacity: .95 !important;
}


/* mobilon még kompaktabb */
@media (max-width: 575.98px){
  .ea-warning-text{
    padding: .65rem .75rem .65rem 2rem !important;
    font-size: .88rem !important;
  }

  .ea-warning-text::before{
    top: .75rem !important;
    font-size: .95rem !important;
  }
}
/* ===== Services block ===== */
.ea-services .card-body{ border-top:1px solid rgba(0,0,0,.06) !important; }

.ea-services__list{
  padding: 12px 12px !important;
}

.ea-service-item{
  background:#fff !important;
  border:1px solid rgba(0,0,0,.08) !important;
  border-radius:14px !important;
  padding:12px 12px !important;
  margin-bottom:10px !important;
  box-shadow:0 6px 16px rgba(0,0,0,.04) !important;
}

.ea-service-item:last-child{ margin-bottom:0 !important; }

.ea-service-top{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
}

.ea-service-left{
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.ea-service-right{
  flex: 0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}

.ea-service-price{
  font-weight:800 !important;
  white-space:nowrap !important;
}

.ea-service-logo img{
  max-height:34px !important;
  width:auto !important;
  display:block !important;
  opacity:.92 !important;
}

/* custom checkbox */
.ea-service-check{
  display:flex !important;
  align-items:flex-start !important;
  gap:10px !important;
  cursor:pointer !important;
  user-select:none !important;
  margin:0 !important;
}

.ea-service-check input{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
}

.ea-service-box{
  width:18px !important;
  height:18px !important;
  border-radius:6px !important;
  border:2px solid rgba(0,0,0,.18) !important;
  margin-top:2px !important;
  flex:0 0 auto !important;
  background:#fff !important;
  position:relative !important;
}

.ea-service-check input:checked + .ea-service-box{
  border-color:#0d6efd !important;
  background:#0d6efd !important;
}

.ea-service-check input:checked + .ea-service-box::after{
  content:"" !important;
  position:absolute !important;
  left:5px !important;
  top:1px !important;
  width:5px !important;
  height:10px !important;
  border:2px solid #fff !important;
  border-top:0 !important;
  border-left:0 !important;
  transform:rotate(45deg) !important;
}

.ea-service-title{
  font-weight:800 !important;
  line-height:1.25 !important;
  display:block !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

.ea-service-desc{
  margin-top:8px !important;
  color:#6c757d !important;
  line-height:1.35 !important;
  font-size:.92rem !important;
}

.ea-service-item:hover{
  border-color: rgba(13,110,253,.25) !important;
}

.ea-service-item.is-disabled{
  opacity:.55 !important;
  pointer-events:none !important;
}

/* mobile: logo lejjebb, ár jobbra marad */
@media (max-width:575.98px){
  .ea-services__list{ padding:10px 10px !important; }
  .ea-service-right{ gap:10px !important; }
  .ea-service-logo img{ max-height:30px !important; }
}
/* ===== Summary (right sticky cart) ===== */
.ea-summary{
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.06) !important;
}

.ea-summary .card-body{
  padding: 18px 18px !important;
}

.ea-summary__title{
  margin-bottom: 14px !important;
}

.ea-summary__title h4{
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .02em !important;
  font-size: 1.05rem !important;
}

.ea-summary__lines{
  display: grid !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
}

.ea-summary__line{
  /* display:flex !important; */
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap: 10px !important;

  padding: 10px 12px !important;
  border-radius: 12px !important;
  background: rgba(0,0,0,.02) !important;
  border: 1px solid rgba(0,0,0,.06) !important;
}

.ea-summary__label{
  font-weight: 700 !important;
  color: #1f2d3d !important;
  line-height: 1.2 !important;
  max-width: 62% !important;
}

.ea-summary__value{
  font-weight: 800 !important;
  color: #1f2d3d !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.ea-summary__total{
  display:flex !important;
  align-items:baseline !important;
  justify-content:space-between !important;
  gap: 10px !important;

  padding: 14px 12px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(13,110,253,.18) !important;
  background: rgba(13,110,253,.06) !important;
  margin-top: 8px !important;
}

.ea-summary__total-label{
  font-weight: 900 !important;
  color: #0b2a55 !important;
}

.ea-summary__total-value{
  font-weight: 950 !important;
  font-size: 1.35rem !important;
  color: #0b2a55 !important;
  white-space: nowrap !important;
}

.ea-summary__actions{
  margin-top: 14px !important;
  display:grid !important;
  gap: 10px !important;
}

.ea-summary__actions .btn{
  border-radius: 12px !important;
}

.ea-secondary-cta{
  background: #ffffff !important;
  border: 1px dashed rgba(13,110,253,.45) !important;
  color: #0d6efd !important;
  font-weight: 900 !important;
  padding: 12px 14px !important;
}

.ea-secondary-cta:hover{
  background: rgba(13,110,253,.06) !important;
  border-style: solid !important;
}

@media (max-width: 991.98px){
  .ea-summary{ border-radius: 16px !important; }
  .ea-summary__total-value{ font-size: 1.25rem !important; }
}

.price-huf-muted{
  display:block;
  margin-top:2px;
  font-size:.82em;
  opacity:.6;
  line-height:1.1;
  font-weight:600;
 text-align:right; }

/* ===== Compact news (full title, date below) ===== */

.ea-news-compact{
  padding: 0 !important;
}

.ea-news-compact__title{
  font-weight: 900 !important;
  font-size: .95rem !important;
  margin: 0 0 8px 0 !important;
  color:#1f2d3d !important;
}

.ea-news-compact__list{
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.ea-news-compact__list li{
  margin-bottom: 10px !important;
}

.ea-news-compact__item{
  display: block !important;
  padding: 6px 8px !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  color: #1f2d3d !important;
  transition: background .12s ease !important;
}

.ea-news-compact__item:hover{
  background: rgba(0,0,0,.04) !important;
}

.ea-news-compact__row{
  display: flex !important;
  gap: 8px !important;
  align-items: flex-start !important;
}

.ea-news-compact__icon{
  color:#0d6efd !important;
  font-size: 14px !important;
  margin-top: 2px !important;
  flex-shrink: 0 !important;
}

.ea-news-compact__text{
  font-size: .9rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

.ea-news-compact__date{
  font-size: .75rem !important;
  color: rgba(31,45,61,.55) !important;
  margin-left: 22px !important; /* ikon alá igazít */
  margin-top: 2px !important;
}
/* FIX: a hidden attribútumot ne írja felül a flex !important */
/* summary sor elrejtése – sticky kompatibilis */
.ea-summary__line.is-hidden{
  display: none !important;
}
/* Services lista – levegősebb sorok */
.ea-services-body .ea-service-row{
  padding: 18px 0;
  margin: 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.ea-services-body .ea-service-row:last-child{
  border-bottom: 0;
}

/* Név + checkbox egy kicsit feljebb/egyben */
.ea-service-checkwrap{
  display:flex;
  align-items:flex-start;
  gap: 10px;
}

/* Leírás külön “blokkban” kicsit lejjebb */
.ea-services-body .ea-service-desc{
  margin-top: 10px;
  color: #6b7280;
  line-height: 1.45;
}

/* Ár oszlop igazítás */
.ea-service-pricecol{
  display:flex;
  justify-content:flex-end;
  align-items:flex-start;
}
.ea-service-price{
  margin: 0;
  font-weight: 600;
}

/* Ikon (PNG helyett) */
.ea-service-iconcol{
  display:flex;
  justify-content:center;
  align-items:flex-start;
}

.ea-service-icon{
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: rgba(19,120,190,.08);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 18px;
  color: #1378be;
}
/* Szolgáltatások blokk: szellősebb sorok */
.ea-services .ea-service-row{
  padding: 14px 18px;
  margin: 8px 0;
  border-radius: 12px;
}

/* finom elválasztó (ha nem akarod, töröld) */
.ea-services .ea-service-row + .ea-service-row{
  border-top: 1px solid rgba(0,0,0,.06);
}

/* a checkbox + cím és a leírás közti távolság */
.ea-services .custom-checkbox-1{
  margin-bottom: 8px;
}

.ea-services .ea-service-price > div{
  line-height: 1.15;
}

/* ikon kártya belső igazítás, kicsit “középre” */
.ea-services .ea-service-iconcol{
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

/* leírás kicsit levegősebb */
.ea-services .ea-service-row .col-12 p{
  margin-top: 8px;
}

.ea-cartcard .ea-value{
  padding: .375rem 0;
  line-height: 1.3;
}

.ea-cartcard .form-group{
  margin-bottom: .75rem;
}
.ea-services .ea-service-row{
  margin: 0;
  padding: 10px 14px;
}

.ea-services .ea-service-row--compact{
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 12px;
  margin-bottom: 10px;
}

.ea-services .ea-service-row--total{
  padding-top: 6px;
  padding-bottom: 6px;
}

.ea-services .ea-service-opt{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.ea-services .ea-state{
  display: inline-flex;
  width: 26px;
  height: 26px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  flex: 0 0 26px;
}

.ea-services .ea-state--on{ background: rgba(40,167,69,.15); }
.ea-services .ea-state--off{ background: rgba(233,64,80,.12); }

.ea-services .ea-service-miniicon{
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: rgba(13,110,253,.08);
  flex: 0 0 34px;
}

.ea-services .ea-service-price{
  font-weight: 700;
}
.ea-services .ea-state {
  background: #f8f9fa;
  border: 1px solid rgba(0,0,0,.08);
}

.ea-services .ea-state--on {
  background: rgba(40,167,69,.12);
}

.ea-services .ea-state--off {
  background: rgba(233,64,80,.12);
}


.ea-card-body-clean{
  padding-top: 22px;
  padding-bottom: 22px;
}

.ea-inline{
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.ea-inline__icon{
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 36px;
  border: 1px solid rgba(0,0,0,.08);
  background: #fff;
}

.ea-state--on{ background: rgba(40,167,69,.12); }
.ea-state--off{ background: rgba(233,64,80,.12); }

.ea-state--on i{ color: #28a745; font-size: 16px; }
.ea-state--off i{ color: #e94050; font-size: 16px; }

.ea-k{ font-weight: 800; display: inline-block; min-width: 210px; }
.ea-v{ font-weight: 500; }
@media (max-width: 575.98px){
  .ea-k{ min-width: 0; display: block; margin-bottom: 2px; }
}


.ea-line{ margin: 6px 0; }
.ea-muted{ opacity: .85; }

.ea-warning{
  margin-top: 8px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255, 193, 7, .18);
  border: 1px solid rgba(255, 193, 7, .35);
  line-height: 1.35;
  max-width: 680px;
}

.ea-inline__content p{ margin: 0; } /* ha máshol maradt p */

/* számlázási összesítő - tipó + ritmus */
.ea-card-body-clean .ea-line{
  margin: 8px 0;
  line-height: 1.35;
}

/* label/value layout */
.ea-card-body-clean .ea-k{
  font-weight: 800;
  display: inline-block;
  min-width: 210px;  /* desktopon szépen igazít */
}

.ea-card-body-clean .ea-v{
  font-weight: 500;
}

/* mobilon ne legyen fix min-width */
@media (max-width: 575.98px){
  .ea-card-body-clean .ea-k{
    min-width: 0;
    display: block;
    margin-bottom: 2px;
  }
}

/* ikon picit “jelenjen meg jobban” */
.ea-card-body-clean .ea-inline__icon{
  width: 36px;
  height: 36px;
}
.ea-card-body-clean .ea-inline__icon i{
  font-size: 14px;
}
.ea-card-body-clean{
  padding-top: 16px;
  padding-bottom: 16px;
}

.ea-inline--warning {
  background: rgba(255,193,7,.12);
  border-radius: 12px;
  padding: 14px;
}

.ea-state--warning {
  background: rgba(255,193,7,.25);
}

.ea-state--warning i {
  color: #b07d00;
  font-size: 16px;
}

.ea-inline--info {
  background: rgba(13,110,253,.08);
  border-radius: 12px;
  padding: 14px;
}

.ea-state--info {
  background: rgba(13,110,253,.18);
}

.ea-state--info i {
  color: #0d6efd;
  font-size: 16px;
}

.ea-line--with-media {
  display: flex;
  align-items: center;
  gap: 16px;
}

.ea-inline__media {
  max-width: 140px;
  height: auto;
  flex-shrink: 0;
}


.ea-eaitem { padding: 14px 10px; border-radius: 14px; }
.ea-eaitem--alt { background: rgba(0,0,0,.03); }

.ea-eahead{
  display:flex; justify-content:space-between; gap:14px;
  padding: 14px; border:1px solid rgba(0,0,0,.08);
  border-radius: 14px; background:#fff;
}
.ea-plate{ font-weight:900; font-size:1.1rem; }
.ea-muted{ opacity:.65; font-size:.9rem; }
.ea-period{ font-weight:700; }
.ea-arrow{ opacity:.5; padding:0 6px; }
.ea-badge{
  display:inline-block; padding:8px 10px; border-radius: 999px;
  border:1px solid rgba(13,110,253,.25);
  background: rgba(13,110,253,.06); font-weight:800; color:#0b2a55;
}


.ea-eagrid{
  display:grid;
  grid-template-columns: 1fr 1fr 1.1fr;
  gap: 12px;
}

@media (max-width: 991.98px){
  .ea-eagrid{
    grid-template-columns: 1fr;
  }
}

.ea-eacol{
  border:1px solid rgba(0,0,0,.08);
  border-radius: 14px; background:#fff; overflow:hidden;
}
.ea-eacol__head{
  padding:12px 12px;
  border-bottom:1px solid rgba(0,0,0,.06);
  display:flex; align-items:center; justify-content:space-between; gap:10px;
}
.ea-eacol__title{ font-weight:900; }
.ea-chip{
  margin-left:8px; font-size:.78rem; font-weight:800;
  padding:4px 8px; border-radius: 999px;
  border:1px solid rgba(0,0,0,.12); background:rgba(0,0,0,.04);
}
.ea-chip--muted{ opacity:.75; }
.ea-kat{ display:flex; align-items:center; gap:8px; }
.ea-kat__code{ font-weight:900; opacity:.85; }

.ea-eacol__body{ padding:10px; display:grid; gap:8px; }

.ea-eabtnwrap{ width:100%; }
.ea-eabtn{
  width:100%;
  padding:10px 12px !important;
  border-radius: 12px !important;
  border:1px solid rgba(0,0,0,.15) !important;
  text-align:left;
}
.ea-eabtn__top{ display:flex; justify-content:space-between; gap:10px; align-items:baseline; }
.ea-eabtn__name{ font-weight:900; }
.ea-eabtn__discount{ font-weight:900; color:#1b8f3a; }
.ea-eabtn__bottom{ display:flex; gap:10px; flex-wrap:wrap; align-items:baseline; margin-top:4px; }
.ea-eabtn__price{ font-weight:900; }
.ea-eabtn__perday{ opacity:.75; font-weight:700; }
.ea-eabtn__old{ opacity:.6; }

.ea-servicesbox{
  border:1px solid rgba(0,0,0,.08);
  border-radius: 14px; background:#fff; padding: 12px;
}
/* .ea-servicesbox__head{ */
  /* display:flex; justify-content:space-between; align-items:baseline; gap:12px; */
  /* margin-bottom: 8px; */
/* } */
/* .ea-servicesbox__list{ margin:0; padding-left: 0; } */

.ea-eacol--services{
  background: linear-gradient(180deg,#ffffff,#f8fafc);
}

.ea-servicesbox__list li{
  font-weight:600;
  font-size:.95rem;
}
.ea-servicesbox__head{
  display:block; /* már nem flex */
}

.ea-servicesbox__cta{
  margin-top: 6px;
  padding-top: 8px;
  border-top: 1px solid rgba(0,0,0,.06);
}

.ea-servicesbox__link{
  display:block;              /* teljes sor */
  width:100%;
  text-align:right;           /* maradhat jobbra, ha szeretnéd */
  font-weight:700;
  white-space:nowrap;         /* ne törje hülyén */
}
.ea-kat{
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.ea-kat__icon{
  height: 26px;
  display: block;      /* ez a kulcs */
  flex-shrink: 0;
}

.ea-vehicle{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 16px;
  background:#f8f9fa;
  border-radius:12px;
  margin-bottom:16px;
}

.ea-vehicle__icon{
  height:36px;
  width:auto;
  opacity:.9;
}

.ea-vehicle__plate{
  font-size:1.05rem;
  font-weight:700;
}

.ea-vehicle__dates{
  font-size:.85rem;
  color:#6c757d;
}

.ea-eahead__left{
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: calc(100% - 140px); /* hely az "Aktív" badge-nek */
}


.ea-eahead__icon{
  height: 28px;
  width: auto;
  flex-shrink: 0;
}


.ea-eahead{
  overflow: visible;
}
.ea-eahead__meta{
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.ea-eahead img,
.ea-kat__icon {
  height: 26px;
  opacity: .9;
}


.ea-kat {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* KATEGÓRIA KÓD – FŐ HANGSÚLY */
.ea-kat__code {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-width: 44px;
  height: 28px;
  padding: 0 10px;

  font-size: 0.95rem;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;

  color: #fff;
  background: #8cbe3c; /* ugyanaz a zöld, mint a példán */
  border-radius: 999px;

  box-shadow: 0 4px 10px rgba(0,0,0,.15);
}

/* opcionális: külön színek később */
.ea-kat__code--d1 { background:#8cbe3c; }
.ea-kat__code--d2 { background:#5aa0e6; }
.ea-kat__code--u  { background:#f4b400; }
.ea-kat__code--dim{ background:#9c27b0; }

.ea-formcard{
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(0,0,0,.06);
}

.ea-formcard__body{
  padding: 18px;
}

.ea-formcard__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.ea-formcard__title{
  font-weight: 900;
  letter-spacing: .02em;
  font-size: 1.05rem;
  text-transform: uppercase;
}

.ea-formcard__sub{
  margin-top: 4px;
  font-size: .92rem;
  opacity: .75;
}

.ea-formcard__req{
  font-size: .9rem;
  opacity: .8;
  white-space: nowrap;
}

.ea-label{
  font-weight: 800;
  color: #1f2d3d;
  margin-bottom: 6px;
}

.ea-input{
  border-radius: 12px;
  padding: 10px 12px;
}

@media (max-width: 991.98px){
  .ea-formcard{ border-radius: 16px; }
}


.ea-acceptbox{
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(0,0,0,.02);
}

.ea-acceptbox__title{
  font-weight: 800;
  color: #1f2d3d;
  margin-bottom: 8px;
  line-height: 1.25;
}

.ea-acceptbox__check label{
  font-weight: 600;
  opacity: .9;
  line-height: 1.35;
}

.ea-summary__actions .btn{
  width: 100%;
}








/* Bal oldal táblázat – kártyás sorok funkció nélkül */
#biztTable { border-collapse: separate; border-spacing: 0 12px; }
#biztTable tbody tr { background: transparent !important; }
#biztTable td.tdproduct{
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  padding: 14px 14px !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.05);
}

/* felső “termék” blokk rendezés */
#biztTable td.tdproduct .row:first-child{
  align-items: center;
  margin-bottom: 10px;
}
#biztTable td.tdproduct .row:first-child .col-3{
  max-width: 90px;
}
#biztTable td.tdproduct img.img-fluid{
  border-radius: 12px;
}

/* code badge – hangsúlyosabb */
#biztTable .inverted.background-color-green{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 6px 10px;
  border-radius: 999px;
  font-weight: 900;
  letter-spacing: .03em;
  margin-right: 8px;
}

/* meta sorok szebb tipó */
#biztTable td.tdproduct .row:nth-child(2){
  row-gap: 6px;
  color: rgba(0,0,0,.72);
}
#biztTable td.tdproduct .row:nth-child(2) .form-group{
  margin-bottom: 0 !important;
}

/* “Kérem” blokk jobbra és kompakt */
#biztTable td.tdproduct .row:nth-child(2) .form-group.col-lg-3{
  text-align: right;
}

/* collapse panel */
#biztTable .collapse{
  margin-top: 12px;
}
#biztTable .collapse > .row{
  background: rgba(0,0,0,.02);
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;
  padding: 12px;
  margin: 0;
}

/* mobilon ne legyen “jobbra szorítás” */
@media (max-width: 991.98px){
  #biztTable td.tdproduct .row:nth-child(2) .form-group.col-lg-3{
    text-align: left;
  }
}
.bb-list{
  display: grid;
  gap: 14px;
}

.bb-card{
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0,0,0,.04);
}

.bb-head{
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 16px;
}

.bb-head__left{
  display: flex;
  gap: 14px;
  min-width: 0;
}

.bb-icon{
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(0,0,0,.03);
  flex: 0 0 auto;
}

.bb-meta{ min-width: 0; }

.bb-title{
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.bb-badge{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  border-radius: 999px;
  background: #8cbe3c;
  color: #fff;
  font-weight: 800;
  letter-spacing: .5px;
  line-height: 1;
}

.bb-name{
  font-weight: 700;
  color: #222;
}

.bb-sub{
  margin-top: 6px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  color: rgba(0,0,0,.65);
  font-size: 14px;
}

.bb-head__right{
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
}

.bb-request{
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(0,0,0,.02);
  border: 1px solid rgba(0,0,0,.06);
}

.bb-warning{
  padding: 10px 12px;
  border-radius: 10px;
  background: #fff3cd;
  border: 1px solid rgba(0,0,0,.08);
  color: #6b4e00;
  font-weight: 600;
}

.bb-body{
  border-top: 1px solid rgba(0,0,0,.06);
  background: #f8fafc;
}

.bb-body__inner{
  padding: 16px;
}

/* mobilon: checkbox menjen le */
@media (max-width: 991px){
  .bb-head{ flex-direction: column; }
  .bb-head__right{ justify-content: flex-start; }
  .bb-icon{ width: 64px; height: 64px; }
}
/* táblázat sor "kártyás" érzet */
#biztTable .cart_table_item td.tdproduct{
  padding: 18px 18px !important;
}

/* felső sor: ikon + kategória + név */
#biztTable .inverted.background-color-green{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  font-weight: 800;
  letter-spacing: .4px;
  margin-right: 10px;
}

/* a checkbox blokk legyen szép “chip”, és ne törje a sort */
#biztTable .custom-checkbox-1{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(0,0,0,.02);
  white-space: nowrap;
}

/* sok sablon a labelt balra eltolja/pseudo-val - itt stabilizáljuk */
#biztTable .custom-checkbox-1 .custom-control-label{
  margin: 0 !important;
  padding-left: 0 !important;
  line-height: 1.1;
}

/* checkbox méret és igazítás */
#biztTable .custom-checkbox-1 input[type="checkbox"]{
  margin: 0 !important;
  transform: scale(1.05);
}

/* a hibás státusz (sárga inverted) legyen “badge”-szerű */
#biztTable .inverted[style*="background-color: #ffc107"]{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 12px;
  font-weight: 600;
}


/* ===== Visszaigazoló: rendezetten, 2 oszlopban ===== */

/* Ahol kulcs-érték sorokat használsz (table / list), itt a cél: stabil igazítás */
.card-osszesito .shop_table tr {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 10px;
  align-items: baseline;
  padding: 6px 0;
}

.card-osszesito .shop_table td {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Label oldal */
.card-osszesito .shop_table td:first-child .d-block,
.card-osszesito .shop_table td:first-child span {
  font-weight: 600;
  color: #2b2b2b;
  line-height: 1.2;
  display: block;
}

/* Érték oldal */
.card-osszesito .shop_table td:last-child,
.card-osszesito .shop_table td:last-child .amount,
.card-osszesito .shop_table td:last-child span {
  text-align: left !important;
  line-height: 1.25;
  white-space: normal;
}

/* Hosszú azonosítók (vignetta szám / tranzakció ID) tördelése szépen */
.card-osszesito .shop_table td:last-child span,
.card-osszesito .shop_table td:last-child .amount {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* Dátumtartomány: ne maradjon a kötőjel sor végén */
.card-osszesito .shop_table td:last-child {
  hyphens: none;
}

/* Mobilon: legyen 1 oszlop, label felül, érték alul */
@media (max-width: 575.98px) {
  .card-osszesito .shop_table tr {
    grid-template-columns: 1fr;
    gap: 4px;
    padding: 10px 0;
  }
}
/* Ha a dátumok között " - " van, ne hagyja a sort a kötőjelnél rondán törni */
.card-osszesito .shop_table td:last-child {
  white-space: normal;
}
/* Long IDs: jobban olvasható, nem “szalad” */
.card-osszesito .shop_table td:last-child span.amount,
.card-osszesito .shop_table td:last-child .amount {
  font-variant-numeric: tabular-nums;
}

/* ===== FAIL / SUCCESS visszaigazolók – egységes keret + kártyák ===== */

.card.card-osszesito.card-default,
.card.card-default.card-osszesito{
  border-radius: 18px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 30px rgba(0,0,0,.08) !important;
}

.ea-confirm{
  padding: 22px !important;
}

/* Alert */
.ea-alert{
  display:flex !important;
  gap:14px !important;
  padding:16px 18px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  align-items:flex-start !important;
}
.ea-alert__icon{
  width: 36px !important;
  height: 36px !important;
  border-radius: 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex: 0 0 auto !important;
}
.ea-alert__title{
  font-weight: 900 !important;
  letter-spacing: .2px !important;
  margin-bottom: 4px !important;
}
.ea-alert__text{
  opacity: .95 !important;
  line-height: 1.35 !important;
}
.ea-alert--danger{
  background: #fbf1e6 !important;
}
.ea-alert--danger .ea-alert__icon{
  background: rgba(255,193,7,.25) !important;
}

/* Kártyák */
.ea-card{
  background: #fff !important;
  border-radius: 16px !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.06) !important;
  padding: 16px !important;
  height: 100% !important;
}
.ea-card--soft{
  background: rgba(13,110,253,.04) !important;
}
.ea-card--danger{
  background: rgba(220,53,69,.03) !important;
}

.ea-card__head{
  display:flex !important;
  gap: 12px !important;
  align-items:flex-start !important;
  justify-content: space-between !important;
  margin-bottom: 12px !important;
}
.ea-card__icon{
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  background: rgba(13,110,253,.12) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex: 0 0 auto !important;
}
.ea-card--danger .ea-card__icon{
  background: rgba(220,53,69,.12) !important;
}
.ea-card__title{
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .3px !important;
  opacity: .9 !important;
}
.ea-card__sub{
  opacity: .7 !important;
  margin-top: 3px !important;
  font-size: .95rem !important;
}

.ea-pill{
  display:inline-flex !important;
  align-items:center !important;
  gap: 6px !important;
  padding: 6px 10px !important;
  border-radius: 999px !important;
  font-weight: 800 !important;
  font-size: .9rem !important;
  white-space: nowrap !important;
  border: 1px solid rgba(0,0,0,.08) !important;
}
.ea-pill--danger{
  background: rgba(220,53,69,.08) !important;
  color: #dc3545 !important;
}

/* Kulcs-érték sorok */
.ea-kv{
  display:flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}
.ea-line{
  display:flex !important;
  align-items:flex-start !important;
  justify-content: space-between !important;
  gap: 14px !important;
}
.ea-k{
  font-weight: 800 !important;
  opacity: .85 !important;
  flex: 0 0 48% !important;
  max-width: 48% !important;
}
.ea-v{
  font-weight: 600 !important;
  text-align: left !important;
  flex: 1 1 auto !important;

  /* EZ fogja meg az “összevissza” tördelést */
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}
.ea-line--strong .ea-k{ opacity: 1 !important; }
.ea-v--big{ font-size: 1.25rem !important; font-weight: 900 !important; }
.ea-v--bold{ font-weight: 900 !important; }

.ea-item-block{
  padding: 12px 0 !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
}
.ea-item-block:first-child{
  border-top: 0 !important;
  padding-top: 0 !important;
}

.ea-back-btn{
  border-radius: 14px !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}


.ea-title-group {
  display: flex;
  flex-direction: column;
}

.ea-title {
  font-weight: 800;
  line-height: 1.25;
}
.ea-line--with-media {
  align-items: center;
}

.ea-inline-title {
  font-weight: 800;
  line-height: 1.25;
}

.ea-line--with-media { align-items: center; gap: 10px; }
.ea-inline-title { font-weight: 800; line-height: 1.25; }
/* egy tétel = egy doboz (ez adja a “nem szétesős” érzetet) */
.ea-itembox{
  padding: 12px 14px;
  border-radius: 12px;
  background: #f9fafb;
  margin-bottom: 14px;
}

/* fejléc saját flex-szel (nem ea-line!), hogy a cím ne ugorjon jobbra */
.ea-itemhead{
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.ea-itemhead__text{ min-width: 0; }

.ea-inline-title{
  font-weight: 800;
  line-height: 1.25;
  margin: 0;
}

.ea-inline--info .ea-k{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

