/* =============================================================
   OnlyRide - DNN + Hotcakes Commerce - Teljes CSS
   Reszponzív + Bugfix verzió
   Utolsó frissítés: 2026.05.06
   ============================================================= */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');


.navbar.navbar-default {

    padding-top: 5px !important;

    padding-bottom: 5px !important;

}

.navbar-brand {

    height: auto !important;

    padding: 5px 15px !important;

}



.navbar-brand img {

    max-height: 60px !important;

    width: auto !important;

}



body {

    padding-top: 80px !important;

}

#topHeader {

    position: fixed !important;

    top: 10px !important;

    right: 15px !important;

    z-index: 99999 !important;

    background: white !important;

    padding: 5px 10px !important;

    border-radius: 5px !important;

}



.navbar.navbar-default {

    min-height: unset !important;

    padding: 0 !important;

}



header[role="banner"] {

    display: flex !important;

    flex-direction: column !important;

}

/* =============================================================
   CSS VÁLTOZÓK
   ============================================================= */

:root {
  --black:       #0a0a0a;
  --dark:        #1a1a1a;
  --mid:         #444444;
  --gray:        #888888;
  --border:      #e2e2e2;
  --light:       #f5f5f5;
  --lighter:     #f9f9f9;
  --white:       #ffffff;
  --green:       #4caf50;
  --green-dark:  #388e3c;
  --green-deep:  #006400;
  --green-soft:  #f0faf0;
  --green-light: #a5d6a7;
  --red:         #e53935;
  --radius:      10px;
  --radius-lg:   14px;
  --shadow:      0 4px 24px rgba(0,0,0,0.08);
  --shadow-lg:   0 12px 48px rgba(0,0,0,0.16);
  --shadow-card: 0 2px 10px rgba(0,0,0,0.05);
  --shadow-hover: 0 12px 36px rgba(76,175,80,0.14);
  --transition:  all 0.25s ease;

  /* Reszponzív container padding (40px desktop -> 16px mobile) */
  --container-pad: clamp(16px, 4vw, 40px);
}

/* =============================================================
   GLOBÁLIS RESET ÉS BOX-SIZING
   ============================================================= */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

img,
picture,
video,
canvas,
svg {
  max-width: 100%;
  height: auto;
}

/* Touch tap kiemelés átszínezése */
a,
button,
input,
select,
textarea {
  -webkit-tap-highlight-color: rgba(76, 175, 80, 0.2);
}

/* Kisebb mozgás kérése esetén */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* =============================================================
   GLOBÁLIS FONT: MONTSERRAT
   ============================================================= */

*,
body,
h1, h2, h3, h4, h5, h6,
p, a, span, div, li, td, th,
input, select, textarea, button,
.Head, .SubHead, .Normal, .NormalTextBox,
.NormalBold, .CommandButton, .StandardButton,
.SelectedTab, .OtherTabs, .SubSubHead,
.MainMenu_MenuItem, .MainMenu_MenuItemSel,
.ModuleTitle_MenuItem, .ModuleTitle_MenuItemSel,
.LoginPanel, .LoginTab, .LoginTabSelected,
.DNNModuleContent, .DNNModuleContent *,
.ModHotcakesCartC, .ModHotcakesCartC *,
.ModHotcakesCategoryViewerC, .ModHotcakesCategoryViewerC *,
.hcMvcView, .hcMvcView *,
.hc-product, .hc-product *,
.hc-category, .hc-category * {
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

/* =============================================================
   TELJES SZÉLESSÉG ÉS OVERFLOW VÉDELEM
   FONTOS: az overflow-x: hidden NEM mehet a body-ra vagy
   #siteWrapper-re, mert kinyírja a position:sticky működést!
   Csak a <html>-re tesszük a vízszintes scroll védelmet.
   ============================================================= */

html {
  overflow-x: clip !important;   /* clip: nem hoz létre új scroll-context-et, így a sticky működik */
  max-width: 100% !important;
}

body,
#siteWrapper {
  /* NINCS overflow-x: hidden! Sticky working ezáltal */
  max-width: 100% !important;
}

.container {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: var(--container-pad) !important;
  padding-right: var(--container-pad) !important;
}

#mainContent-inner .container,
#mainContent .container,
.mainContent-inner .container {
  width: 100% !important;
  max-width: 100% !important;
}

/* =============================================================
   HC-LOGIN-CHOOSE RADIO GOMBOK (Új fiók / Bejelentkezés / Vendégként)
   A három radio + szöveg egy vonalban, a radio körök vertikálisan
   középre igazítva a szöveggel.
   ============================================================= */
.hc-login-choose,
#hcLoginChoose,
.hc-checkout .hc-login-choose {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 24px !important;
  padding: 16px 0 !important;
}

.hc-login-choose label,
#hcLoginChoose label,
.hc-login-choose label.radio-inline,
#hcLoginChoose label.radio-inline,
.hc-checkout .hc-login-choose label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0.92rem !important;
  font-weight: 500 !important;
  color: var(--dark) !important;
  line-height: 1 !important;
  cursor: pointer !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
}

.hc-login-choose input[type="radio"],
#hcLoginChoose input[type="radio"],
.hc-login-choose label input[type="radio"],
.hc-checkout .hc-login-choose input[type="radio"] {
  accent-color: var(--green) !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  vertical-align: middle !important;
  flex-shrink: 0 !important;
  position: static !important;
  float: none !important;
  display: inline-block !important;
}

/* =============================================================
   HC-CREDITCARD-FORM (Kártyás fizetés űrlap)
   A Card Number, Exp. Date select-ek, Security Code, Name On Card
   inputok EGYFORMA SZÉLESEK legyenek. Bootstrap form-horizontal,
   label balra, input jobbra.
   ============================================================= */
.hc-creditcard-form,
.hc-checkout .hc-creditcard-form {
  width: 100% !important;
  max-width: 100% !important;
}

.hc-creditcard-form .form-group,
.hc-checkout .hc-creditcard-form .form-group {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin: 0 0 14px 0 !important;
  width: 100% !important;
}

/* Label: 30%, jobbra igazítva */
.hc-creditcard-form .form-group > label,
.hc-creditcard-form .form-group > label.control-label,
.hc-creditcard-form .form-group .col-sm-4,
.hc-creditcard-form .form-group [class*="col-sm-"]:first-child:has(label),
.hc-creditcard-form .form-group .col-sm-3 {
  flex: 0 0 30% !important;
  max-width: 30% !important;
  width: 30% !important;
  text-align: right !important;
  padding: 0 14px 0 0 !important;
  margin: 0 !important;
  float: none !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: #333 !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
}

/* Input wrapper: 70% mindig egyforma szélesség */
.hc-creditcard-form .form-group > div,
.hc-creditcard-form .form-group .col-sm-offset-0,
.hc-creditcard-form .form-group .col-sm-6,
.hc-creditcard-form .form-group .col-sm-8,
.hc-creditcard-form .form-group .col-sm-9,
.hc-creditcard-form .form-group [class*="col-sm-"]:not(:first-child) {
  flex: 1 1 70% !important;
  max-width: 70% !important;
  width: 70% !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
}

/* MINDEN input + select a hitelkártya form-ban EGYFORMA STÍLUS */
.hc-creditcard-form input[type="text"],
.hc-creditcard-form input[type="number"],
.hc-creditcard-form input[type="tel"],
.hc-creditcard-form input.form-control,
.hc-creditcard-form select,
.hc-creditcard-form select.form-control,
.hc-checkout .hc-creditcard-form input,
.hc-checkout .hc-creditcard-form select {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 0 14px !important;
  font-size: 0.92rem !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  background: var(--white) !important;
  color: var(--dark) !important;
  transition: all 0.25s ease !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  display: block !important;
  font-family: 'Montserrat', sans-serif !important;
  line-height: 42px !important;
  vertical-align: middle !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

/* SELECT chevron-nyíl */
.hc-creditcard-form select,
.hc-creditcard-form select.form-control {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234caf50' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  padding-right: 38px !important;
  cursor: pointer !important;
}

.hc-creditcard-form input:focus,
.hc-creditcard-form select:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important;
}

/* Ha az Exp. Date wrapper-ben két select egymás alatt van (hónap+év) */
.hc-creditcard-form .form-group select + select,
.hc-creditcard-form .form-group select ~ select {
  margin-top: 8px !important;
}

/* Reszponzív: mobilon vertikális stack */
@media (max-width: 600px) {
  .hc-creditcard-form .form-group {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .hc-creditcard-form .form-group > label,
  .hc-creditcard-form .form-group > label.control-label {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    text-align: left !important;
    padding: 0 0 6px 0 !important;
  }

  .hc-creditcard-form .form-group > div,
  .hc-creditcard-form .form-group [class*="col-sm-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  .hc-login-choose,
  #hcLoginChoose {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
}
/* =============================================================
   HEADER PANE FULL-WIDTH (CSAK a HeaderPane!)
   A DNN home.css ad .col-md-12 { float: left } szabályt, ami fehér
   margót okoz a header és hero között. Csak a HEADER pane-t nullázzuk,
   a footer és más .row gridjét NE bántjuk!
   ============================================================= */
.headerPane,
.headerPane.col-md-12,
#dnn_HeaderPane,
#dnn_HeaderPane.col-md-12 {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* A header-t tartalmazó row.dnnpane is full-width, padding nélkül,
   DE más .row-okat NE érintsünk (footer, content, stb.) */
.row.dnnpane:has(#dnn_HeaderPane),
main > .row.dnnpane:first-child {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* =============================================================
   FOOTER TÉRKÉP
   ============================================================= */

.footer-mod #terkep,
.footer-mod p:has(iframe) {
  display: block !important;
  margin-top: 12px !important;
}

.footer-mod iframe {
  width: 100% !important;
  height: clamp(160px, 30vw, 200px) !important;
  border: none !important;
  border-radius: 10px !important;
  display: block !important;
}

/* =============================================================
   ALAP DNN STÍLUSOK
   ============================================================= */

.HeadBg {
  color: var(--black);
  border-bottom: 0 !important;
}

main {
  border: none !important;
}

header {
  background: var(--white);
  border-bottom: 1px solid var(--white);
}

li.menuItem.dropdown:hover > ul,
li.menuItem.dropdown:hover > .dropdown-menu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

Body {
  font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;
  background: var(--white);
  color: var(--dark);
  line-height: 1.65;
  font-size: clamp(14px, 1.05vw, 16px);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  padding: 0;
}

.ControlPanel {
  background: var(--lighter);
  border-bottom: 1px solid var(--border);
  padding: 8px 16px;
  font-size: 0.85rem;
}

.TabBg {
  background: var(--black);
  border-bottom: 2px solid var(--black);
}

.LeftPane    { padding: 16px; }
.ContentPane { padding: 24px 16px; }
.RightPane   { padding: 16px; }

.SelectedTab {
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--white);
  background: var(--black);
  padding: 8px 18px;
  border-radius: 6px 6px 0 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

A.SelectedTab:link    { color: var(--white); text-decoration: none; }
A.SelectedTab:visited { color: var(--white); text-decoration: none; }
A.SelectedTab:hover   { color: #cccccc;      text-decoration: none; }
A.SelectedTab:active  { color: var(--white); text-decoration: none; }

.OtherTabs {
  font-weight: 500;
  font-size: 0.9rem;
  color: var(--mid);
  background: var(--light);
  padding: 8px 18px;
  border-radius: 6px 6px 0 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: var(--transition);
}

A.OtherTabs:link    { color: var(--mid);   text-decoration: none; }
A.OtherTabs:visited { color: var(--gray);  text-decoration: none; }
A.OtherTabs:hover   { color: var(--black); text-decoration: none; background: var(--border); }
A.OtherTabs:active  { color: var(--black); text-decoration: none; }

.Head {
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--gray);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--border);
  background: none;
}

.SubHead    { font-size: 1rem;    font-weight: 600; color: var(--dark); margin-bottom: 8px; }
.SubSubHead { font-size: 0.88rem; font-weight: 600; color: var(--mid);  text-transform: uppercase; letter-spacing: 0.8px; }
.Normal     { font-size: 0.95rem; color: var(--mid); line-height: 1.7; }

.NormalTextBox {
  font-size: 0.95rem;
  color: var(--dark);
  background: var(--white);
  border: 2px solid var(--border);
  border-radius: 8px;
  padding: 10px 14px;
  transition: var(--transition);
  outline: none;
  max-width: 100%;
}

.NormalRed  { font-size: 0.9rem;  color: #cc0000; font-weight: 500; }
.NormalBold { font-size: 0.95rem; font-weight: 700; color: var(--black); }

.CommandButton {
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--white);
  background: var(--black);
  border: 2px solid var(--black);
  border-radius: 8px;
  padding: 9px 20px;
  cursor: pointer;
  letter-spacing: 0.3px;
  transition: var(--transition);
  display: inline-block;
  min-height: 40px;
}

A.CommandButton:link    { color: var(--white); text-decoration: none; }
A.CommandButton:visited { color: var(--white); text-decoration: none; }
A.CommandButton:hover   { color: var(--black); background: var(--white); text-decoration: none; }
A.CommandButton:active  { color: var(--white); text-decoration: none; }

.StandardButton {
  font-size: 0.88rem;
  font-weight: 600;
  color: var(--white);
  background: var(--black);
  border: 2px solid var(--black);
  border-radius: 8px;
  padding: 10px 24px;
  cursor: pointer;
  transition: var(--transition);
  min-height: 44px;
}

H1 { font-size: clamp(1.75rem, 4.5vw, 3.5rem); font-weight: 900; color: var(--black); letter-spacing: -1.5px; line-height: 1.1; margin-bottom: 16px; }
H2 { font-size: clamp(1.4rem, 3vw, 2.2rem);    font-weight: 800; color: var(--black); letter-spacing: -0.8px; line-height: 1.2; margin-bottom: 14px; }
H3 { font-size: clamp(1rem, 1.5vw, 1.2rem);    font-weight: 700; color: var(--black); margin-bottom: 10px; }
H4 { font-size: 1rem;                          font-weight: 600; color: var(--dark);  margin-bottom: 8px; }
H5, DT { font-size: 0.85rem; font-weight: 600; color: var(--mid);  text-transform: uppercase; letter-spacing: 1px; }
H6     { font-size: 0.78rem; font-weight: 600; color: var(--gray); text-transform: uppercase; letter-spacing: 1.2px; }

TFOOT, THEAD { background: var(--black); color: var(--white); font-size: 0.85rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; }
TH { font-weight: 700; color: var(--white); background: var(--black); padding: 12px 16px; text-align: left; font-size: 0.85rem; }

A:link    { color: var(--black); text-decoration: none; transition: var(--transition); }
A:visited { color: var(--mid);   text-decoration: none; }
A:hover   { color: var(--black); text-decoration: underline; }
A:active  { color: var(--black); text-decoration: none; }

SMALL { font-size: 0.8rem;  color: var(--gray); }
BIG   { font-size: 1.15rem; font-weight: 600; }

BLOCKQUOTE,
PRE {
  background: var(--lighter);
  border-left: 4px solid var(--black);
  padding: 16px 20px;
  border-radius: 0 8px 8px 0;
  color: var(--mid);
  font-size: 0.95rem;
  margin: 20px 0;
  overflow-x: auto;
  max-width: 100%;
}

UL LI       { font-size: 0.95rem; color: var(--mid);  padding: 4px 0; line-height: 1.6; }
UL LI LI    { font-size: 0.9rem;  color: var(--gray); padding-left: 12px; }
UL LI LI LI { font-size: 0.87rem; color: var(--gray); padding-left: 24px; }
OL LI       { font-size: 0.95rem; color: var(--mid);  padding: 4px 0; }
OL OL LI    { font-size: 0.9rem;  color: var(--gray); }
OL OL OL LI { font-size: 0.87rem; color: var(--gray); }
OL UL LI    { font-size: 0.9rem;  color: var(--gray); }

HR { border: none; border-top: 1px solid var(--border); margin: 32px 0; }

.Message {
  font-size: 0.95rem;
  color: var(--mid);
  background: var(--lighter);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 16px 20px;
  line-height: 1.65;
}
.ItemTitle { font-size: 1rem; font-weight: 700; color: var(--black); margin-bottom: 6px; }

/* DNN modul menük */
.ModuleTitle_MenuContainer { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow); overflow: hidden; }
.ModuleTitle_MenuBar       { background: var(--black); padding: 6px 12px; }
.ModuleTitle_MenuItem      { font-size: 0.88rem; font-weight: 500; color: var(--dark); padding: 9px 16px; cursor: pointer; transition: var(--transition); }
.ModuleTitle_MenuIcon      { width: 16px; height: 16px; margin-right: 8px; opacity: 0.6; }
.ModuleTitle_SubMenu       { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-lg); min-width: 180px; }
.ModuleTitle_MenuBreak     { border-top: 1px solid var(--border); margin: 4px 0; }
.ModuleTitle_MenuItemSel   { font-size: 0.88rem; font-weight: 600; color: var(--white); background: var(--black); padding: 9px 16px; }
.ModuleTitle_MenuArrow     { color: var(--gray); font-size: 0.7rem; }
.ModuleTitle_RootMenuArrow { color: rgba(255,255,255,0.6); font-size: 0.7rem; }

.MainMenu_MenuContainer { background: var(--black); padding: 0 8px; }
.MainMenu_MenuBar       { display: flex; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; flex-wrap: wrap; }
.MainMenu_MenuItem      { font-size: 0.88rem; font-weight: 500; color: #cccccc; padding: 10px 16px; cursor: pointer; border-radius: 6px; transition: var(--transition); text-transform: uppercase; letter-spacing: 0.5px; }
.MainMenu_MenuItem:hover { color: var(--white); background: rgba(255,255,255,0.1); }
.MainMenu_MenuIcon      { width: 16px; height: 16px; margin-right: 6px; filter: brightness(5); }
.MainMenu_SubMenu       { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); box-shadow: var(--shadow-lg); min-width: 200px; padding: 6px 0; }
.MainMenu_MenuBreak     { border-top: 1px solid var(--border); margin: 4px 0; }
.MainMenu_MenuItemSel   { font-size: 0.88rem; font-weight: 600; color: var(--white); background: rgba(255,255,255,0.15); padding: 10px 16px; border-radius: 6px; text-transform: uppercase; letter-spacing: 0.5px; }
.MainMenu_MenuArrow     { color: var(--gray); font-size: 0.65rem; margin-left: 4px; }
.MainMenu_RootMenuArrow { color: rgba(255,255,255,0.5); font-size: 0.65rem; margin-left: 4px; }

/* Login alapok (részletek lentebb) */
.LoginPanel {
  background: var(--white);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow-lg);
  padding: clamp(24px, 4vw, 40px) clamp(20px, 3vw, 36px);
  max-width: 420px;
  width: 100%;
  margin: 0 auto;
}
.LoginTabGroup       { display: flex; gap: 4px; margin-bottom: 24px; border-bottom: 2px solid var(--border); flex-wrap: wrap; }
.LoginTab            { font-size: 0.9rem; font-weight: 500; color: var(--gray); padding: 10px 20px; cursor: pointer; border-radius: 6px 6px 0 0; transition: var(--transition); }
.LoginTabSelected    { font-size: 0.9rem; font-weight: 700; color: var(--black); padding: 10px 20px; border-radius: 6px 6px 0 0; border-bottom: 2px solid var(--black); margin-bottom: -2px; }
.LoginTabHover       { color: var(--dark); background: var(--light); }
.LoginContainerGroup { display: flex; flex-direction: column; gap: 16px; }
.LoginContainer      { display: flex; flex-direction: column; gap: 14px; }


/* =============================================================
   NAVIGÁCIÓ - DESKTOP ALAPÉRTELMEZETT
   ============================================================= */

.navbar.navbar-default {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  gap: 16px !important;
  
  /* EZT VÁLTOZTATTUK: A 12px helyett 5px a felső/alsó belső margó */
  padding: 5px clamp(16px, 3vw, 40px) !important; 
  
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04) !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1000 !important;
  width: 100% !important;
  background: #fff !important;
}

/* A fixed navbar elveszi a teret a layout-ból, ezért
   a body-nak adunk padding-top-ot, hogy a tartalom NE
   bújjon a navbar alá */
body {
  padding-top: 76px !important;
}

/* Reszponzív: mobilon kisebb navbar magasság */
@media (max-width: 767px) {
  body {
    padding-top: 64px !important;
  }
}

#navbar-top-wrapper {
  flex-shrink: 0 !important;
  order: 1 !important;
}

/* Mobil hamburger gomb (desktop-on rejtett) */
.navbar-header {
  display: none !important;
  order: 3 !important;
}

.navbar-toggle {
  background: transparent !important;
  border: 2px solid var(--black) !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  cursor: pointer !important;
  transition: var(--transition) !important;
  margin: 0 !important;
}

.navbar-toggle .icon-bar {
  background: var(--black) !important;
  width: 22px !important;
  height: 2px !important;
  display: block !important;
  border-radius: 2px !important;
}

.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px !important;
}

.navbar-toggle:hover {
  background: var(--green) !important;
  border-color: var(--green) !important;
}

.navbar-toggle:hover .icon-bar {
  background: var(--white) !important;
}

#navbar.navbar-collapse {
  display: flex !important;
  flex: 1 1 auto !important;
  justify-content: center !important;
  order: 2 !important;
  float: none !important;
  width: auto !important;
  padding: 0 !important;
  min-width: 0 !important;
}

.navbar-nav {
  float: none !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  list-style: none !important;
}

.navbar-nav > li > a {
  border-radius: 6px !important;
  padding: 8px 18px !important;
  margin: 4px !important;
  color: var(--black) !important;
  font-weight: 500 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
  position: relative !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
  min-height: 40px !important;
  line-height: 1.5 !important;
}

.navbar-nav > li > a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  height: 3px !important;
  background: var(--green) !important;
  border-radius: 0 0 6px 6px !important;
  transition: width 0.25s ease !important;
}

.navbar-nav > li > a:hover::after {
  width: 100% !important;
}

.navbar-nav > li > a:hover {
  text-decoration: none !important;
  color: var(--black) !important;
}

/* Logo wrapper-ek: ne tömörítsék a logót flex layout-ban,
   és ne korlátozzák a saját szélességükre */
#logo,
.brand,
#navbar-top-wrapper,
#dnn_dnnLOGO_hypLogo,
#dnn_dnnLOGO {
  width: auto !important;
  max-width: none !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
}

#navbar-top-wrapper {
  display: flex !important;
  align-items: center !important;
}

#dnn_dnnLOGO_imgLogo {
  /* 1. Próbáljuk meg alapból nagyobbra venni a magasságát: */
  height: 90px !important; 
  width: auto !important;
  max-width: none !important;
  display: block !important;
  object-fit: contain !important;
  
  /* 2. A NAGYÍTÓ TRÜKK: 
     Ha a képfájlod szélein sok az üres átlátszó hely, ezzel a paranccsal 
     optikailag felnagyítjuk anélkül, hogy a navbar magasságát szétnyomná.
     Az 1.5 azt jelenti, hogy másfélszeresére nagyítja. 
     Ezt az értéket (pl. 1.2, 1.8, 2.0) nyugodtan állítgasd! */
  transform: scale(1.6) !important; 
  
  /* Ez biztosítja, hogy balra igazodva nagyítson, ne lógjon bele a menübe: */
  transform-origin: left center !important; 
}

#logo {
  margin-left: 0 !important;
  display: block !important;
}


/* =============================================================
   TOP SÁV
   ============================================================= */

div#topHeader,
#siteWrapper #topHeader,
body #topHeader {
  background: var(--white) !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 0 !important;
}

div#topHeader * {
  color: var(--gray) !important;
}

div#topHeader a,
div#topHeader a:link,
div#topHeader a:visited {
  color: var(--gray) !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  position: relative !important;
  transition: color 0.2s ease !important;
}

div#topHeader a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 0 !important;
  height: 3px !important;
  background: var(--green-light) !important;
  border-radius: 0 0 6px 6px !important;
  transition: width 0.25s ease !important;
}

div#topHeader a:hover::after {
  width: 100% !important;
}

div#topHeader a:hover {
  color: var(--black) !important;
}

div#topHeader img {
  filter: none !important;
  opacity: 0.5 !important;
  max-width: 100% !important;
  height: auto !important;
}


/* =============================================================
   DROPDOWN MENÜ
   ============================================================= */

.navbar-nav .dropdown-menu,
.navbar-nav .dropdown-menu *,
.navbar-nav .dropdown-menu *::before,
.navbar-nav .dropdown-menu *::after {
  outline: none !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  text-decoration: none !important;
}

.navbar-nav .dropdown-menu {
  border: 1px solid var(--border) !important;
  border-radius: 10px !important;
  box-shadow: 0 12px 48px rgba(0,0,0,0.1) !important;
  padding: 6px !important;
  background: var(--white) !important;
  margin-top: 4px !important;
  overflow: hidden !important;
  max-width: calc(100vw - 32px) !important;
  /* Bal-igazítva a parent <li>-hez (felülírja Bootstrap pull-right örökséget) */
  left: 0 !important;
  right: auto !important;
  transform: none !important;
}

/* Olvasható alapszín submenü items-ekre - felülírja a DNN
   .MainMenu_MenuItem #cccccc szürkéjét, ami fő menüsávra van tervezve */
.navbar-nav .dropdown-menu li,
.navbar-nav .dropdown-menu li a,
.navbar-nav .dropdown-menu li a:link,
.navbar-nav .dropdown-menu li a:visited,
.navbar-nav .dropdown-menu li a.MainMenu_MenuItem,
.navbar-nav .dropdown-menu li a.MainMenu_MenuItemSel,
.navbar-nav .dropdown-menu li a.OtherTabs,
.navbar-nav .dropdown-menu li a.SelectedTab,
.navbar-nav .dropdown-menu .dropdown-item {
  color: var(--mid) !important;
}

/* =============================================================
   DNN MainMenu.css FELÜLÍRÁS (#dnnMenu specificity-vel)
   A DNN modul külön CSS-fájlja sötét hátteret ad a
   .topLevel és .subLevel <li>-knek mobilban (#383c40 / #4a4f54).
   Az #dnnMenu ID-vel írva felülírjuk azt.
   ============================================================= */
#dnnMenu,
#dnnMenu .topLevel,
#dnnMenu .topLevel li,
#dnnMenu .topLevel li a,
#dnnMenu .dropdown-menu,
#dnnMenu .dropdown-menu.subLevel,
#dnnMenu .dropdown-menu li,
#dnnMenu .dropdown-menu.subLevel li,
#dnnMenu .dropdown-menu li a,
#dnnMenu .dropdown-menu.subLevel li a {
  background: transparent !important;
  background-color: transparent !important;
}

/* Dropdown panelnek viszont fehér/light háttér kell */
#dnnMenu .dropdown-menu,
#dnnMenu .dropdown-menu.subLevel {
  background: var(--white) !important;
  background-color: var(--white) !important;
}

/* Olvasható szöveg minden menüpontnál */
#dnnMenu .topLevel li a,
#dnnMenu .topLevel li a:link,
#dnnMenu .topLevel li a:visited,
#dnnMenu .dropdown-menu li a,
#dnnMenu .dropdown-menu li a:link,
#dnnMenu .dropdown-menu li a:visited,
#dnnMenu .dropdown-menu.subLevel li a,
#dnnMenu .dropdown-menu.subLevel li a:link,
#dnnMenu .dropdown-menu.subLevel li a:visited {
  color: var(--mid) !important;
}

/* A felirat valójában <span>-ben van az <a> belsejében, és a
   .MainMenu_MenuItem class saját color-ja van rajta (#cccccc).
   Ezért minden belső elemnek inherit color-t kell adni. */
#dnnMenu .topLevel li a *,
#dnnMenu .topLevel li a span,
#dnnMenu .dropdown-menu li a *,
#dnnMenu .dropdown-menu li a span,
#dnnMenu .dropdown-menu.subLevel li a *,
#dnnMenu .dropdown-menu.subLevel li a span,
#dnnMenu li.MainMenu_MenuItem,
#dnnMenu a.MainMenu_MenuItem,
#dnnMenu .MainMenu_MenuItem,
#dnnMenu .MainMenu_MenuItem span,
#dnnMenu .MainMenu_MenuItemSel,
#dnnMenu .MainMenu_MenuItemSel span {
  color: inherit !important;
  background: transparent !important;
  background-color: transparent !important;
}

/* Hover/active állapot zöld háttér + fehér szöveg */
#dnnMenu .topLevel li a:hover,
#dnnMenu .topLevel li a:focus,
#dnnMenu .dropdown-menu li a:hover,
#dnnMenu .dropdown-menu li a:focus,
#dnnMenu .dropdown-menu.subLevel li a:hover,
#dnnMenu .dropdown-menu.subLevel li a:focus,
#dnnMenu .topLevel li.active > a,
#dnnMenu .topLevel li.current > a {
  background: var(--green-soft) !important;
  background-color: var(--green-soft) !important;
  color: var(--green) !important;
}

/* Hover állapotban a span-ek is zöldek (öröklés) */
#dnnMenu .topLevel li a:hover *,
#dnnMenu .topLevel li a:focus *,
#dnnMenu .dropdown-menu li a:hover *,
#dnnMenu .dropdown-menu li a:focus *,
#dnnMenu .dropdown-menu.subLevel li a:hover *,
#dnnMenu .dropdown-menu.subLevel li a:focus *,
#dnnMenu .topLevel li.active > a *,
#dnnMenu .topLevel li.current > a * {
  color: inherit !important;
}

/* DNN border-bottom színe (#4a4b4c) felülírva világosra */
#dnnMenu .topLevel li,
#dnnMenu .dropdown-menu.subLevel li {
  border-color: var(--border) !important;
}

/* Nyitott dropdown alatti zöld aláhúzás elrejtése
   (a panel jobbra/lefelé van, az aláhúzás csak csúnya marad) */
.navbar-nav > li.open > a::after,
.navbar-nav > li.dropdown.open > a::after,
.navbar-nav > li.dropdown.show > a::after {
  width: 0 !important;
}

.navbar-nav .dropdown-menu > li > a,
.navbar-nav .dropdown-menu .dropdown-item {
  border-radius: 6px !important;
  padding: 10px 16px !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  color: var(--mid) !important;
  transition: all 0.2s ease !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  margin: 2px 0 !important;
  display: block !important;
  background: transparent !important;
  -webkit-appearance: none !important;
  white-space: normal !important;
  min-height: 40px !important;
}

.navbar-nav .dropdown-menu > li > a::after,
.navbar-nav .dropdown-menu .dropdown-item::after {
  display: none !important;
}

.navbar-nav .dropdown-menu > li > a:hover,
.navbar-nav .dropdown-menu > li > a:focus,
.navbar-nav .dropdown-menu > li > a:active,
.navbar-nav .dropdown-menu > li > a:focus-visible,
.navbar-nav .dropdown-menu .dropdown-item:hover,
.navbar-nav .dropdown-menu .dropdown-item:focus,
.navbar-nav .dropdown-menu .dropdown-item:active,
.navbar-nav .dropdown-menu .dropdown-item:focus-visible,
.navbar-nav .dropdown-menu .dropdown-item.active {
  background: var(--green) !important;
  color: var(--white) !important;
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}

.navbar-nav .dropdown-menu > .active > a,
.navbar-nav .dropdown-menu > .active > a:hover,
.navbar-nav .dropdown-menu > .active > a:focus {
  background: var(--green) !important;
  color: var(--white) !important;
  outline: none !important;
  box-shadow: none !important;
}

.navbar-nav .dropdown-menu > li,
.navbar-nav .dropdown-menu > li:focus-within {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
  background: transparent !important;
}


/* =============================================================
   HERO HÁTTÉRKÉP
   FIX: 100vw helyett full-width trükk scrollbar-safe módon
   ============================================================= */

.hero {
  text-align: center;
  background-image: url('/Portals/0/herobg.png') !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  position: relative !important;
  padding: clamp(60px, 10vw, 120px) clamp(16px, 4vw, 24px) !important;
  min-height: clamp(320px, 50vw, 500px) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  /* IGAZI FULL-BLEED: kibújik MINDEN parent padding/margin-ból.
     A trükk: left: 50% középre tolja, majd transform: translateX(-50%)
     visszahúzza pontosan a viewport bal széléig. A width: 100vw
     a teljes viewport szélesség. */
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: 50% !important;
  margin-right: 0 !important;
  transform: translateX(-50%) !important;
  margin-bottom: clamp(24px, 4vw, 50px) !important;
  margin-top: clamp(-40px, -5vw, -80px) !important;
  box-sizing: border-box !important;
  left: 0 !important;
  right: 0 !important;
}

/* Ha a böngészőben van scrollbar, a 100vw átfedheti azt.
   Felülírjuk calc-cal, ami kivonja a scrollbar szélességét */
@supports (width: 100dvw) {
  .hero {
    width: 100dvw !important;
    max-width: 100dvw !important;
  }
}

.hero-overlay {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: rgba(0, 0, 0, 0.5) !important;
  z-index: 1 !important;
}

.hero h1 {
  position: relative !important;
  z-index: 2 !important;
  color: var(--white) !important;
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.3) !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  word-wrap: break-word !important;
  hyphens: auto !important;
}

.hero p {
  position: relative !important;
  z-index: 2 !important;
  color: rgba(255, 255, 255, 0.9) !important;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.2) !important;
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: clamp(0.85rem, 1.5vw, 1.05rem) !important;
}

.hero a.bp-btn {
  position: relative !important;
  z-index: 2 !important;
  background: var(--green-deep) !important;
  color: var(--white) !important;
  border-color: var(--green-deep) !important;
  margin-top: 20px;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.hero a.bp-btn:hover {
  background: var(--green) !important;
  color: var(--white) !important;
  border-color: var(--green) !important;
}


/* =============================================================
   ECO MODUL
   ============================================================= */

.eco-description-module {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(20px, 4vw, 50px);
  width: 100%;
  max-width: 100%;
  margin: clamp(20px, 4vw, 40px) 0;
  padding: clamp(20px, 4vw, 40px);
  background-color: var(--white);
  border-radius: var(--radius-lg);
  box-shadow: 0 10px 30px rgba(0,0,0,0.05);
  box-sizing: border-box;
}

.eco-text-content {
  flex: 1 1 300px;
  min-width: 0;
}

.eco-badge {
  color: var(--green);
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.85rem;
  letter-spacing: 1px;
  display: block;
  margin-bottom: 10px;
}

.eco-text-content h2 {
  font-size: clamp(1.4rem, 3vw, 2.5rem);
  color: #2c3e50;
  margin-bottom: 20px;
  line-height: 1.2;
}

.eco-text-content p {
  font-size: clamp(0.92rem, 1.2vw, 1.1rem);
  color: #555;
  line-height: 1.7;
  margin-bottom: 25px;
}

.eco-link-btn {
  color: #27ae60;
  text-decoration: none;
  font-weight: bold;
  font-size: 1.05rem;
  transition: color 0.3s;
  display: inline-block;
  min-height: 32px;
}

.eco-link-btn:hover {
  color: #219150;
  text-decoration: underline;
}

.eco-image-container {
  flex: 1 1 300px;
  min-width: 0;
  border-radius: 15px;
  overflow: hidden;
  height: clamp(200px, 35vw, 350px);
}

.eco-image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
  display: block;
}

.eco-description-module:hover .eco-image-container img {
  transform: scale(1.05);
}


/* =============================================================
   "SZERETNÉK TÖBBET TUDNI" GOMB
   ============================================================= */

.bp-btn {
  display: inline-block;
  background: var(--white);
  color: var(--black) !important;
  border: 2px solid var(--black);
  border-radius: 8px;
  padding: 12px 28px;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none !important;
  transition: all 0.25s ease;
  cursor: pointer;
  min-height: 44px;
  text-align: center;
  line-height: 1.4;
}

.bp-btn:hover {
  background: var(--green);
  color: var(--white) !important;
  border-color: var(--green);
}


/* =============================================================
   HOTCAKES CATEGORY MENU (felső kategória sáv)
   ============================================================= */

.hc-categorymenu {
  padding: 0 !important;
}

.hc-categorymenu ul {
  list-style: none !important;
  padding: 12px !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 8px !important;
}

.hc-categorymenu ul li {
  flex: 0 0 auto !important;
}

.hc-categorymenu ul li a {
  display: inline-block !important;
  padding: 12px 22px !important;
  background: var(--white) !important;
  border: 2px solid var(--black) !important;
  border-radius: 100px !important;
  color: var(--black) !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
  min-height: 44px !important;
  line-height: 1.4 !important;
}

.hc-categorymenu ul li a:hover {
  background: var(--green) !important;
  color: var(--white) !important;
  border-color: var(--green) !important;
}


/* =============================================================
   TERMÉKOLDAL
   ============================================================= */

.hcMvcView .breadcrumb,
#dnn_HeaderPane .breadcrumb {
  background: #f8f9fa !important;
  border-radius: 10px !important;
  padding: 12px 20px !important;
  font-size: 0.85rem !important;
  border: 1px solid #eee !important;
  flex-wrap: wrap !important;
}

.hcMvcView .breadcrumb a {
  color: var(--green) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.hcMvcView .breadcrumb a:hover {
  color: var(--green-dark) !important;
}

.hc-product h1,
.hcMvcView h1 {
  font-size: clamp(1.4rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin-bottom: 24px !important;
  word-wrap: break-word !important;
}

.hc-product .row-fluid img,
.hc-product img[src*="product"],
.hcMvcView .row-fluid img {
  border-radius: 12px !important;
  border: 1px solid #eee !important;
  max-width: 100% !important;
  height: auto !important;
}

.hc-product img[width="80"],
.hc-product img[class*="thumb"],
.hc-product .clearfix img {
  border-radius: 8px !important;
  border: 2px solid #eee !important;
  padding: 4px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.hc-product img[width="80"]:hover,
.hc-product img[class*="thumb"]:hover,
.hc-product .clearfix img:hover {
  border-color: var(--green) !important;
}

.hc-product .row-fluid span:not(.label),
.hcMvcView .row-fluid span:not(.label) {
  font-size: inherit !important;
}

.hc-product input[type="text"],
.hc-product input[type="number"] {
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 10px 12px !important;
  width: 70px !important;
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  transition: border-color 0.2s ease !important;
  background: var(--white) !important;
  min-height: 44px !important;
  max-width: 100% !important;
}

.hc-product input[type="text"]:focus,
.hc-product input[type="number"]:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76,175,80,0.15) !important;
}

.hc-product .dnnPrimaryAction,
.hc-product input[type="submit"][value*="Kosár"],
.hc-product a[class*="cart"],
.hc-product button[class*="cart"] {
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 28px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 12px rgba(76,175,80,0.25) !important;
  text-decoration: none !important;
  display: inline-block !important;
  vertical-align: middle !important;
  min-height: 48px !important;
  line-height: 1.4 !important;
}

.hc-product .dnnPrimaryAction:hover,
.hc-product input[type="submit"][value*="Kosár"]:hover {
  background: var(--green-dark) !important;
  box-shadow: 0 6px 20px rgba(76,175,80,0.35) !important;
  transform: translateY(-1px) !important;
}

.hc-product .dnnSecondaryAction,
.hc-product a[href*="wish"],
.hc-product a[href*="Wish"],
.hc-product input#savelaterbutton,
input#savelaterbutton.btn,
input#savelaterbutton.btn.btn-default {
  background: var(--white) !important;
  background-color: var(--white) !important;
  color: var(--green) !important;
  border: 2px solid var(--green) !important;
  border-radius: 10px !important;
  padding: 10px 22px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  display: inline-block !important;
  vertical-align: middle !important;
  box-shadow: none !important;
  margin-top: 12px !important;
  min-height: 44px !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

/* A kívánságlista form-group: külön sorban, kis levegővel a Kosárba alatt */
#hcProductActions.form-group input#savelaterbutton,
.form-group input#savelaterbutton {
  display: inline-block !important;
  margin-top: 12px !important;
  margin-left: 0 !important;
}

/* Ha a két gomb külön block elemekben jelenik meg, biztosítjuk a hézagot */
.hc-product .form-group + .form-group,
.hc-product input[type="submit"] + input[type="submit"],
.hc-product .btn + .btn {
  margin-top: 12px !important;
}

.hc-product a[href*="review"],
.hc-product a[href*="Review"] {
  color: var(--green) !important;
  border: 1.5px solid var(--green) !important;
  border-radius: 20px !important;
  padding: 5px 14px !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  font-size: 0.82rem !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
}

.hc-product a[href*="review"]:hover,
.hc-product a[href*="Review"]:hover {
  background: var(--green) !important;
  color: var(--white) !important;
}

.hc-product .label,
.hc-product span[class*="stock"],
.hc-product span[style*="background"] {
  background: var(--green) !important;
  color: var(--white) !important;
  border-radius: 6px !important;
  padding: 4px 12px !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
}

.hcMvcView h2,
.hc-product h2 {
  font-size: clamp(1.1rem, 2vw, 1.3rem) !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin: 30px 0 12px !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid #f0f0f0 !important;
}

/* "Leírás" cím inline rendezése a szöveg elé.
   A Hotcakes a <h2>Leírás</h2> + <p>szöveg</p> struktúrát rajzolja.
   A h2-t inline-block-ra állítjuk, és a következő p-t is inline szöveggel kezdjük. */
.hc-product h2:has(+ p),
.hcMvcView h2:has(+ p) {
  display: inline-block !important;
  margin: 0 8px 0 0 !important;
  padding: 0 !important;
  vertical-align: top !important;
  border-bottom: none !important;
  white-space: nowrap !important;
  font-size: 1.05rem !important;
}

.hc-product h2:has(+ p)::after,
.hcMvcView h2:has(+ p)::after {
  content: ':' !important;
  margin-left: 0 !important;
}

/* Az utána jövő <p> szöveg balra zárkózva indul a cím mellé */
.hc-product h2 + p,
.hcMvcView h2 + p {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0.95rem !important;
  line-height: 1.7 !important;
  color: var(--mid) !important;
  text-align: justify !important;
}

.hcMvcView .alert,
.hcMvcView div[class*="alert"] {
  background: var(--green-soft) !important;
  border: 1px solid #c8e6c9 !important;
  border-radius: 10px !important;
  color: #555 !important;
  padding: 14px 20px !important;
  font-size: 0.88rem !important;
}

/* "Vélemény írása" gomb */
a#hcWriteReviewbtn,
a#hcWriteReviewbtn.btn,
a#hcWriteReviewbtn.btn-success,
a#hcWriteReviewbtn.btn.btn-success.btn-sm.hc-popup {
  background-color: var(--white) !important;
  color: var(--green) !important;
  border: 2px solid var(--green) !important;
  border-radius: 10px !important;
  padding: 10px 22px !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  box-shadow: none !important;
  display: inline-block !important;
  min-height: 44px !important;
  line-height: 1.4 !important;
}

a#hcWriteReviewbtn.btn.btn-success.btn-sm.hc-popup:hover,
a#hcWriteReviewbtn.btn.btn-success:hover,
a#hcWriteReviewbtn.btn:hover,
a#hcWriteReviewbtn:hover {
  background-color: var(--green) !important;
  color: var(--white) !important;
  border-color: var(--green) !important;
  box-shadow: 0 6px 20px rgba(76, 175, 80, 0.35) !important;
  transform: translateY(-2px) !important;
}

/* Csillag rating */
.hc-rating { margin-top: 0; }

/* Csillag sprite NEM lehet flex-ben, mert torzul - blokk elem
   marad, fix méretekkel ahogy a Hotcakes szerette volna */
.hc-product .hc-rating,
.hcMvcView .hc-rating,
.hc-rating.hc-stars0,
.hc-rating.hc-stars1,
.hc-rating.hc-stars2,
.hc-rating.hc-stars3,
.hc-rating.hc-stars4,
.hc-rating.hc-stars5 {
  display: inline-block !important;
  width: 125px !important;
  height: 25px !important;
  flex: none !important;
  overflow: hidden !important;
  vertical-align: middle !important;
  margin: 0 !important;
}

/* HTML struktúra (a Hotcakes erre épít):
   <div class="col-xs-12 margin-bottom-md">    ← parent
     <div class="hc-rating-wrapper">           ← 1. testvér: csillagok
       <div class="hc-rating hc-stars3"></div>
     </div>
     <div class="content-inline">              ← 2. testvér: "-" + Vélemények
       -<a href="#reviews">Vélemények (0)</a>
     </div>
   </div>
   
   Megoldás: a parent col text-align: left + a két testvér inline-block.
   Így mint normál szöveg-folyam balra igazodnak. */
.hc-product .hc-product-details .col-xs-12.margin-bottom-md,
.hc-product .col-xs-12.margin-bottom-md:has(.hc-rating-wrapper),
.hc-product-details .col-xs-12.margin-bottom-md {
  display: block !important;
  text-align: left !important;
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  font-size: 0 !important;  /* "-" textnode és inline-block hézagok */
}

/* Wrapper és content-inline egymás mellett mint inline-block */
.hc-product .hc-rating-wrapper,
.hcMvcView .hc-rating-wrapper,
.hc-rating-wrapper {
  display: inline-block !important;
  width: auto !important;
  text-align: left !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: middle !important;
}

.hc-product .content-inline,
.hcMvcView .content-inline,
.col-xs-12.margin-bottom-md > .content-inline {
  display: inline-block !important;
  width: auto !important;
  margin: 0 0 0 6px !important;  /* kisebb hézag a csillagok és "-" között */
  padding: 0 !important;
  font-size: 0.95rem !important;
  vertical-align: middle !important;
  text-align: left !important;
  color: var(--gray) !important;
}

/* A "-" textnode és a Vélemények link közé minimális hézag */
.hc-product .content-inline a,
.hc-product .content-inline > *,
.content-inline a,
.content-inline > * {
  font-size: 0.95rem !important;
  vertical-align: middle !important;
  margin-left: 4px !important;  /* "-" és link közötti kis hézag */
}

/* A Vélemények link visszakapja a font-size-t */
.hc-product .content-inline a,
.hc-product .content-inline > *,
.content-inline a,
.content-inline > * {
  font-size: 0.95rem !important;
  vertical-align: middle !important;
}

/* A Termékadatok cím alatti row-fluid és container-ek balra hozása,
   hogy a csillag és Vélemények NE húzódjon jobbra a Bootstrap miatt */
.hc-product .hc-product-details .row-fluid,
.hcProductDetails .row-fluid,
#hcProductDetails .row-fluid,
.hc-product .row-fluid {
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}

/* A rating wrapper parent containere (col-md-6, col-xs-12 stb) gyakran
   text-center-rel van - felülírjuk balra */
.hc-product .hcProductDetails,
.hc-product .hc-product-details,
#hcProductDetails,
.hc-product-details,
.hc-product .col-xs-12.margin-bottom-md,
.hc-product .col-md-6 {
  text-align: left !important;
}


/* =============================================================
   KAPCSOLÓDÓ TERMÉKEK
   ============================================================= */

.hc-related-items h3 {
  font-size: clamp(1.1rem, 2vw, 1.3rem) !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin-bottom: 24px !important;
}

/* A parent row-t flex container-ré tesszük, hogy a kártyák
   egyforma magasak legyenek (align-items: stretch) */
.hc-related-items .row,
.hc-related-items .row-fluid,
.hc-related-items > .row,
.hc-related-items > .row-fluid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  margin-left: -10px !important;
  margin-right: -10px !important;
}

.hc-related-items .row > [class*="col-"],
.hc-related-items .row-fluid > [class*="col-"] {
  display: flex !important;
  flex-direction: column !important;
  padding: 0 10px !important;
  margin-bottom: 20px !important;
  float: none !important;
}

.hc-related-items .panel,
.hc-related-items .panel-default {
  background: var(--white) !important;
  border: 1px solid #eee !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
  box-shadow: var(--shadow-card) !important;
  -webkit-box-shadow: none !important;
  height: 100% !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  margin-bottom: 0 !important;
}

.hc-related-items .panel:hover,
.hc-related-items .panel-default:hover {
  border-color: var(--green) !important;
  box-shadow: var(--shadow-hover) !important;
  transform: translateY(-6px) !important;
}

/* Cím FIX magasság: minden kártyán azonos, hogy a kép azonos vonalban legyen.
   100px = ~4 sor cím + padding ami biztos elférjen */
.hc-related-items .panel-heading {
  background: var(--white) !important;
  border-bottom: none !important;
  padding: 18px 18px 12px !important;
  height: 110px !important;
  min-height: 110px !important;
  max-height: 110px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}

/* Line-clamp az <a>-ra ÉS a belső span-re/text-re egyaránt -
   a Hotcakes néha más wrappert használ */
.hc-related-items .panel-heading a,
.hc-related-items .panel-heading > a,
.hc-related-items .panel-heading span,
.hc-related-items .panel-heading h4 {
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  line-clamp: 4 !important;
  line-height: 1.35 !important;
  width: 100% !important;
  word-wrap: break-word !important;
  word-break: break-word !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  margin: 0 !important;
  padding: 0 !important;
}

.hc-related-items .panel-heading a:hover {
  color: var(--green) !important;
}

.hc-related-items .panel-heading a:hover {
  color: var(--green) !important;
}

/* Kép body fix magasság - egységes képmagasság minden kártyán */
.hc-related-items .panel-body {
  padding: 10px 18px !important;
  background: var(--white) !important;
  flex: 1 1 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 220px !important;
  max-height: 220px !important;
  overflow: hidden !important;
}

.hc-related-items .panel-body img {
  border-radius: 10px !important;
  border: 1px solid #f0f0f0 !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 200px !important;
  object-fit: contain !important;
  transition: transform 0.3s ease !important;
  background: #fafafa !important;
  padding: 8px !important;
}

.hc-related-items .panel:hover .panel-body img {
  transform: scale(1.03) !important;
}

.hc-related-items .panel-footer {
  background: var(--white) !important;
  border-top: 1px solid #f0f0f0 !important;
  padding: 14px 18px !important;
  text-align: center !important;
  margin-top: auto !important;
}

.hc-related-items .panel-footer span,
.hc-related-items .panel-footer .price {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  display: block !important;
  margin-bottom: 10px !important;
}

.hc-related-items .panel-footer a,
.hc-related-items .panel-footer button,
.hc-related-items .panel-footer .btn {
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 10px 24px !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: 100% !important;
  max-width: 200px !important;
  margin: 0 auto !important;
  box-shadow: 0 3px 10px rgba(76, 175, 80, 0.2) !important;
  min-height: 44px !important;
}

.hc-related-items .panel-footer a:hover,
.hc-related-items .panel-footer button:hover {
  background: var(--green-dark) !important;
  box-shadow: 0 6px 18px rgba(76, 175, 80, 0.3) !important;
  transform: translateY(-2px) !important;
}

.hc-related-items .panel-footer a i,
.hc-related-items .panel-footer a .fa,
.hc-related-items .panel-footer a .glyphicon,
.hc-related-items .panel-footer a span {
  float: none !important;
  margin: 0 !important;
}


/* =============================================================
   KOSÁR OLDAL
   ============================================================= */

/* A teljes kosár konténer reszponzív legyen */
.ModHotcakesCartC {
  max-width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

.ModHotcakesCartC .hc-cart .row-fluid:hover { background: #f9fdf9 !important; }
.ModHotcakesCartC a[href*="product"] { color: #333 !important; transition: color 0.2s ease !important; }
.ModHotcakesCartC a[href*="product"]:hover { color: var(--green) !important; }
.ModHotcakesCartC a.hc-delete { color: #ccc !important; transition: color 0.2s ease !important; }
.ModHotcakesCartC a.hc-delete:hover { color: var(--red) !important; }
.ModHotcakesCartC .dnnSecondaryAction { transition: all 0.2s ease !important; }
.ModHotcakesCartC .dnnSecondaryAction:hover { border-color: var(--green) !important; color: var(--green) !important; }
.ModHotcakesCartC input[type="text"]:focus { border-color: var(--green) !important; outline: none !important; box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important; }

.ModHotcakesCartC input[value="Alkalmaz"],
.ModHotcakesCartC input[value="Apply"] {
  color: var(--green) !important;
  border-color: var(--green) !important;
  transition: all 0.2s ease !important;
  min-height: 40px !important;
}

.ModHotcakesCartC input[value="Alkalmaz"]:hover,
.ModHotcakesCartC input[value="Apply"]:hover {
  background: var(--green) !important;
  color: var(--white) !important;
}

.ModHotcakesCartC .dnnPrimaryAction {
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 10px !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
  min-height: 48px !important;
}

.ModHotcakesCartC .dnnPrimaryAction:hover {
  background: var(--green-dark) !important;
  box-shadow: 0 6px 20px rgba(76, 175, 80, 0.4) !important;
  transform: translateY(-2px) !important;
}

.ModHotcakesCartC [class*="subtotal"],
.ModHotcakesCartC .hc-cart-total {
  background: #f8f9fa !important;
  color: var(--dark) !important;
  border-radius: 8px !important;
}

.ModHotcakesCartC h1 {
  font-size: clamp(1.4rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  background: none !important;
  margin-bottom: 8px !important;
}

.ModHotcakesCartC h6 {
  font-size: 0.88rem !important;
  color: var(--gray) !important;
  font-weight: 500 !important;
  background: none !important;
  margin-bottom: 24px !important;
}

.ModHotcakesCartC img {
  border-radius: 10px !important;
  border: 1px solid #eee !important;
  padding: 4px !important;
  background: #fafafa !important;
  max-width: 80px !important;
  height: auto !important;
  transition: border-color 0.2s ease !important;
}

.ModHotcakesCartC img:hover { border-color: var(--green) !important; }

.ModHotcakesCartC a[href*="product"] {
  font-weight: 600 !important;
  color: var(--dark) !important;
  text-decoration: none !important;
}

.ModHotcakesCartC input[type="text"],
.ModHotcakesCartC input[type="number"] {
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  width: 60px !important;
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  transition: border-color 0.2s ease !important;
  min-height: 40px !important;
  max-width: 100% !important;
}

.ModHotcakesCartC .dnnSecondaryAction {
  background: var(--white) !important;
  color: #555 !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 6px 16px !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  min-height: 36px !important;
}

.ModHotcakesCartC .dnnSecondaryAction:hover {
  border-color: var(--green) !important;
  color: var(--green) !important;
  background: var(--green-soft) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 2px 8px rgba(76, 175, 80, 0.15) !important;
}

.ModHotcakesCartC a.hc-delete,
.ModHotcakesCartC a[href*="remove"] {
  color: #bbb !important;
  font-size: 1.1rem !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  display: inline-block !important;
  padding: 8px !important;
}

.ModHotcakesCartC a.hc-delete:hover,
.ModHotcakesCartC a[href*="remove"]:hover {
  color: var(--red) !important;
  transform: scale(1.3) !important;
}

.ModHotcakesCartC hr {
  border: none !important;
  border-top: 1px solid #f0f0f0 !important;
  margin: 8px 0 !important;
}

/* Részösszeg */
.ModHotcakesCartC tr.hc-subtotal1,
.ModHotcakesCartC tr.hc-subtotal1 th,
.ModHotcakesCartC tr.hc-subtotal1 td,
.ModHotcakesCartC tr[class*="subtotal"],
.ModHotcakesCartC tr[class*="subtotal"] th,
.ModHotcakesCartC tr[class*="subtotal"] td {
  background: var(--green) !important;
  background-color: var(--green) !important;
  color: var(--white) !important;
  font-weight: 700 !important;
  border-radius: 0 !important;
}

.ModHotcakesCartC .hc-totals-section table,
.ModHotcakesCartC table.table {
  border: none !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  width: 100% !important;
}

.ModHotcakesCartC .hc-totals-section,
.ModHotcakesCartC .hc-totals-section table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: auto !important;
}

.ModHotcakesCartC .hc-cart > .row-fluid:first-child {
  background: transparent !important;
}

.ModHotcakesCartC .hc-cart table thead tr.dnnGridHeader th,
.ModHotcakesCartC table.table thead tr th,
#dnn_ctr388_ContentPane table thead tr th {
  background: #f8f9fa !important;
  color: var(--gray) !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 14px 12px !important;
  border: none !important;
  border-bottom: 2px solid #eee !important;
}

.ModHotcakesCartC .hc-cart table td,
#dnn_ctr388_ContentPane table td {
  border-top: 1px solid #f0f0f0 !important;
  padding: 14px 12px !important;
  vertical-align: middle !important;
}

.ModHotcakesCartC .hc-cart table tbody tr:hover,
#dnn_ctr388_ContentPane table tbody tr:hover {
  background: #f9fdf9 !important;
}

/* Kosár akció gombok */
.hc-cart-actions {
  margin-top: -10px !important;
}

.hc-cart-actions ul.dnnActions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 10px 0 30px !important;
  flex-wrap: wrap !important;
}

.hc-cart-actions ul.dnnActions li {
  list-style: none !important;
}

.hc-action-keepshopping a,
li.hc-action-keepshopping a {
  background: var(--white) !important;
  color: var(--green) !important;
  border: 2px solid var(--green) !important;
  border-radius: 10px !important;
  padding: 12px 24px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 48px !important;
}

.hc-action-keepshopping a:hover {
  background: var(--green-soft) !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.15) !important;
  transform: translateY(-1px) !important;
}

.hc-action-checkout input[type="submit"],
li.hc-action-checkout input[type="submit"],
li.hc-action-checkout .btn.btn-primary {
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 32px !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  min-height: 48px !important;
}

.hc-action-checkout input[type="submit"]:hover,
li.hc-action-checkout input[type="submit"]:hover {
  background: var(--green-dark) !important;
  box-shadow: 0 6px 18px rgba(76, 175, 80, 0.35) !important;
  transform: translateY(-2px) !important;
}

/* Pénztár */
.ModHotcakesCheckoutC thead,
.hc-checkout thead,
.hc-cart-section thead {
  background: var(--green) !important;
}

.ModHotcakesCheckoutC thead th,
.ModHotcakesCheckoutC thead td,
.hc-checkout thead th,
.hc-cart-section thead th {
  background: var(--green) !important;
  color: var(--white) !important;
}

.btn-primary {
  background-color: var(--green) !important;
}

button#hcTakeOrder,
button#hcTakeOrder.btn,
button#hcTakeOrder.btn.btn-primary {
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 14px 40px !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 16px rgba(76, 175, 80, 0.3) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  min-height: 52px !important;
  width: 100% !important;
  max-width: 320px !important;
}

button#hcTakeOrder:hover {
  background: var(--green-dark) !important;
  box-shadow: 0 8px 28px rgba(76, 175, 80, 0.45) !important;
  transform: translateY(-2px) !important;
}

.panel-primary > .panel-heading {
  color: var(--white);
  background-color: var(--green);
  border-color: var(--green);
}


/* =============================================================
   KATEGÓRIA VÁLASZTÓ MENÜ
   FIX: bottom: 10 -> bottom: auto, és nem absolute pozíció
   ============================================================= */

.ModHotcakesCategoryMenuC .hcMvcView {
  background: var(--white) !important;
  border-radius: var(--radius-lg) !important;
  border: 1px solid #eee !important;
  padding: 20px clamp(16px, 3vw, 24px) !important;
  box-shadow: var(--shadow-card) !important;
  margin-bottom: 24px !important;
  overflow: visible !important;
}

.ModHotcakesCategoryMenuC .hc-categorymenu {
  text-align: center !important;
  position: relative !important;
  /* Tartalék hely az almenü számára (ami absolute pozícióban lóg alatta) */
  padding-bottom: 60px !important;
}

.ModHotcakesCategoryMenuC ul.list-unstyled {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  position: relative !important;
}

.ModHotcakesCategoryMenuC ul.list-unstyled > li {
  display: inline-block !important;
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  position: static !important;
}

.ModHotcakesCategoryMenuC ul.list-unstyled > li > a {
  background: var(--white) !important;
  color: #333 !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 10px 22px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  display: inline-block !important;
  white-space: nowrap !important;
  min-height: 44px !important;
  line-height: 1.5 !important;
}

.ModHotcakesCategoryMenuC ul.list-unstyled > li > a:hover {
  background: var(--green-soft) !important;
  border-color: var(--green) !important;
  color: var(--green) !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.12) !important;
  transform: translateY(-2px) !important;
}

/* Aktív főkategória: zöld háttér jelzi, hogy ki van választva */
.ModHotcakesCategoryMenuC ul.list-unstyled > li.hc-current > a,
.ModHotcakesCategoryMenuC ul.list-unstyled > li.active > a {
  background: var(--green) !important;
  border-color: var(--green) !important;
  color: var(--white) !important;
}

/* ALMENÜ - absolute pozíció a parent <ul.list-unstyled> ALATT
   (top: 100%). NEM foglal magasság-helyet a flex layout-ban,
   de NEM is fedi el a főkategóriákat. */
.ModHotcakesCategoryMenuC ul.list-unstyled ul,
.ModHotcakesCategoryMenuC ul.list-unstyled > li > ul {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 100% !important;
  bottom: auto !important;
  margin-top: 12px !important;
  transform: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 0 !important;
  list-style: none !important;
  z-index: 10 !important;
  width: 100% !important;
  height: auto !important;
  float: none !important;
}

.ModHotcakesCategoryMenuC ul.list-unstyled ul li {
  display: inline-block !important;
  float: none !important;
  flex: 0 0 auto !important;
}

.ModHotcakesCategoryMenuC ul.list-unstyled ul li a {
  background: #f8f9fa !important;
  color: #555 !important;
  border: 1.5px solid #e0e0e0 !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  display: inline-block !important;
  white-space: nowrap !important;
  min-height: 36px !important;
  line-height: 1.5 !important;
}

.ModHotcakesCategoryMenuC ul.list-unstyled ul li a:hover {
  background: var(--green-soft) !important;
  border-color: var(--green) !important;
  color: var(--green) !important;
}


/* =============================================================
   BEJELENTKEZÉS, REGISZTRÁCIÓ ÉS POPUP DIALÓGUSOK
   Egységes stílus az oldali login panelhez ÉS a popup dialógusokhoz
   (DNN .ui-dialog rendszer + dnnFormPopup wrapper)
   ============================================================= */

/* === ALAP LOGIN/REGISTRATION PANEL (oldal-szintű, nem popup) === */
.LoginPanel,
#dnn_ctr_Login_pnlLoginContainer {
  background: var(--white) !important;
  border: 1px solid #eee !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08) !important;
  padding: clamp(24px, 4vw, 40px) clamp(20px, 3vw, 36px) !important;
  max-width: 460px !important;
  width: calc(100% - 32px) !important;
  margin: 40px auto !important;
  box-sizing: border-box !important;
}

/* === UI-DIALOG POPUP (DNN szabványos popup) === */
.ui-dialog,
.ui-dialog.dnnFormPopup,
.ui-dialog[role="dialog"] {
  border-radius: var(--radius-lg) !important;
  border: 1px solid #eee !important;
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.15) !important;
  overflow: visible !important;
  max-width: calc(100vw - 32px) !important;
  width: clamp(320px, 90vw, 560px) !important;
  max-height: 95vh !important;
  height: auto !important;
  min-height: 0 !important;
  background: var(--white) !important;
  padding: 0 !important;
}

/* Az ui-dialog tartalom + esetleges parent wrapper-ek scrollbarjának eltüntetése */
.ui-dialog-content,
.ui-dialog .ui-widget-content,
.dnnFormPopup,
.dnnFormPopup-content,
.ui-dialog form {
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
}

/* === IFRAME POPUP (DNN login/register popup iframe-be töltődik) ===
   Az iframe-nek inline style="height: 289px" van JS-től, ami scrollt
   okoz. Felülírjuk és a teljes parent dialog-ot kitöltjük. */
iframe#iPopUp,
iframe.ui-dialog-content,
.ui-dialog iframe,
.dnnFormPopup iframe {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 540px !important;
  max-height: calc(90vh - 80px) !important;
  border: none !important;
  display: block !important;
  background: var(--white) !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

/* A parent .ui-dialog tartalom-területe NULLA padding, hogy az iframe
   az egész szélességet kitöltse (ne legyen szürke rés a szélén) */
.ui-dialog,
.ui-dialog.dnnFormPopup {
  padding: 0 !important;
}

.ui-dialog .dnnFormPopup,
.dnnFormPopup {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  background: var(--white) !important;
}

/* === BEZÁRÓ X GOMB === 
   A jQuery UI dialog titlebar (.ui-dialog-titlebar) abszolút pozícióban
   van a .ui-dialog-on belül. Az X-et a titlebar-on belül FIX pozíciójú,
   és a titlebar parent (.ui-dialog) pedig position: relative. */
.ui-dialog {
  position: absolute !important;
}

.ui-dialog-titlebar {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  z-index: 10 !important;
  width: auto !important;
}

/* A titlebar címét eltüntetjük (a popup tartalma adja meg) */
.ui-dialog-title {
  display: none !important;
}

/* X gomb a parent .ui-dialog jobb-felső sarkán, az iframe FELETT.
   Modern lebegő kerek gomb halvány árnyékkal, hover-on zöld scale. */
.ui-dialog-titlebar-close,
.ui-dialog-titlebar .ui-dialog-titlebar-close,
.ui-dialog-titlebar button.ui-dialog-titlebar-close,
.ui-dialog .ui-dialog-titlebar-close {
  border: 1px solid #e8e8e8 !important;
  background: var(--white) !important;
  background-color: var(--white) !important;
  background-image: none !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  cursor: pointer !important;
  position: absolute !important;
  right: 16px !important;
  top: 16px !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
  color: transparent !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
  z-index: 1000 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

/* Saját X karakter ::before-rel - sötét, jól látható */
.ui-dialog-titlebar-close::before,
.ui-dialog-titlebar .ui-dialog-titlebar-close::before {
  content: '✕' !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  line-height: 1 !important;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif !important;
  display: block !important;
  transition: color 0.25s ease !important;
}

/* A jQuery UI eredeti ikon span-jét elrejtjük (a fehér 'X') */
.ui-dialog-titlebar-close .ui-icon,
.ui-dialog-titlebar-close .ui-button-icon-only,
.ui-dialog-titlebar-close .ui-button-text {
  display: none !important;
  background: none !important;
  background-image: none !important;
  text-indent: 0 !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
}

.ui-dialog-titlebar-close:hover {
  border-color: var(--green) !important;
  background: var(--green-soft) !important;
  background-color: var(--green-soft) !important;
  box-shadow: 0 4px 14px rgba(76, 175, 80, 0.2) !important;
  transform: scale(1.08) !important;
}

.ui-dialog-titlebar-close:hover::before {
  color: var(--green) !important;
}

.ui-dialog-content {
  padding: 24px !important;
  background: var(--white) !important;
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}

/* === FORM CONTENT (mindkét helyen: oldal és popup) === */
.dnnFormPopup .LoginPanel,
.ui-dialog .loginContent,
.ui-dialog .dnnForm,
.ui-dialog form,
.dnnFormPopup .dnnForm {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  width: 100% !important;
}

/* === LABELS === */
.loginContent label,
.LoginPanel label,
.dnnFormPopup label,
.ui-dialog label,
#dnn_ctr_Register_userForm label {
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  color: #333 !important;
  margin-bottom: 6px !important;
  display: inline-block !important;
  text-align: left !important;
  padding-right: 8px !important;
  vertical-align: middle !important;
}

/* === REGISZTRÁCIÓ TABLE LAYOUT FELÜLÍRÁSA ===
   A DNN regisztráció <table>-t használ. Átalakítjuk vertikális
   stack-ké, ahol minden mező új sorba kerül. */
.dnnFormPopup table,
.ui-dialog table.dnnFormItem,
#dnn_ctr_Register_userForm table {
  width: 100% !important;
  border-collapse: collapse !important;
  table-layout: auto !important;
}

.dnnFormPopup table tr,
.ui-dialog table tr,
#dnn_ctr_Register_userForm tr {
  display: flex !important;
  flex-direction: column !important;
  margin-bottom: 18px !important;
  width: 100% !important;
}

.dnnFormPopup table td,
.ui-dialog table td,
#dnn_ctr_Register_userForm td {
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  vertical-align: top !important;
  text-align: left !important;
  border: none !important;
}

.dnnFormPopup table td:first-child,
.ui-dialog table td:first-child,
#dnn_ctr_Register_userForm td:first-child {
  padding-bottom: 8px !important;
}

/* === DNN STANDARD FORM (.dnnForm + .dnnFormItem li-k) ===
   A DNN regisztráció és sok form így néz ki: 
   <ul><li class="dnnFormItem"><div class="dnnLabel">label</div><input></li></ul>
   Az alapértelmezett DNN CSS: .dnnLabel { float: left; width: 11em; text-align: right; }
   Felülírjuk vertikális stack-re. */
.dnnForm .dnnFormItem,
.dnnFormPopup .dnnFormItem,
.ui-dialog .dnnFormItem,
body.popUpFrame .dnnFormItem,
.popUpFrame .dnnFormItem,
ul.dnnForm > li.dnnFormItem,
fieldset .dnnFormItem,
li.dnnFormItem {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  margin: 0 0 18px 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100% !important;
  float: none !important;
  clear: both !important;
}

.dnnForm .dnnFormItem .dnnLabel,
.dnnFormPopup .dnnFormItem .dnnLabel,
.ui-dialog .dnnFormItem .dnnLabel,
body.popUpFrame .dnnFormItem .dnnLabel,
.popUpFrame .dnnFormItem .dnnLabel,
li.dnnFormItem .dnnLabel,
.dnnLabel {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: left !important;
  padding: 0 0 6px 0 !important;
  margin: 0 !important;
  display: block !important;
}

.dnnForm .dnnFormItem .dnnLabel label,
.dnnFormPopup .dnnFormItem .dnnLabel label,
.ui-dialog .dnnFormItem .dnnLabel label,
li.dnnFormItem .dnnLabel label,
.dnnLabel label,
.dnnLabel > label {
  display: inline-block !important;
  float: none !important;
  text-align: left !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  color: #333 !important;
  line-height: 1.4 !important;
}

.dnnForm .dnnFormItem input[type="text"],
.dnnForm .dnnFormItem input[type="password"],
.dnnForm .dnnFormItem input[type="email"],
.dnnFormPopup .dnnFormItem input,
.ui-dialog .dnnFormItem input,
li.dnnFormItem input[type="text"],
li.dnnFormItem input[type="password"],
li.dnnFormItem input[type="email"],
.dnnFormItem input.dnnLengthControl {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  display: block !important;
  float: none !important;
}

/* === LABEL SZÍNEK ÉS PIROS CSILLAG ===
   A .dnnFormRequired osztályt a DNN néha a teljes <label>-re teszi,
   ami pirossá teszi az ÖSSZES szöveget. Felülírjuk: a label sötét,
   csak a ::after csillag piros. */
.dnnFormPopup label,
.dnnFormPopup label.dnnFormRequired,
.dnnFormPopup .dnnLabel label,
.dnnFormPopup .dnnLabel label.dnnFormRequired,
.dnnFormPopup .dnnFormItem label,
.dnnFormPopup .dnnFormItem .dnnLabel label,
.ui-dialog label,
.ui-dialog label.dnnFormRequired,
.ui-dialog .dnnLabel label,
.ui-dialog .dnnFormItem label,
body.popUpFrame label,
body.popUpFrame label.dnnFormRequired,
body.popUpFrame .dnnLabel label,
.popUpFrame label,
.popUpFrame label.dnnFormRequired,
.popUpFrame .dnnLabel label,
.dnnForm label,
.dnnForm label.dnnFormRequired,
.dnnForm .dnnLabel label,
.dnnForm .dnnFormItem label {
  color: #333 !important;
  font-weight: 600 !important;
}

/* A PIROS CSILLAG: csak a POPUP-ON BELÜLI DNN formokon generálunk
   csillagot ::after-rel. A Hotcakes checkout-on a Hotcakes saját
   <span class="dnnFormRequired">*</span> elemet renderel, ott NE adunk
   még egy csillagot ::after-rel (különben dupla lesz, vagy elcsúszik). */
.dnnFormPopup label.dnnFormRequired::after,
.ui-dialog label.dnnFormRequired::after,
body.popUpFrame label.dnnFormRequired::after,
.popUpFrame label.dnnFormRequired::after {
  color: var(--red) !important;
  content: ' *' !important;
  font-weight: 700 !important;
}

/* Az általánosabb label.dnnFormRequired::after szabályt NE adjuk meg,
   mert a Hotcakes checkout saját span-t renderel. Explicit kikapcsolás:
   ne legyen ::after a Hotcakes formokon. */
.ModHotcakesCheckoutC label.dnnFormRequired::after,
.hc-checkout label.dnnFormRequired::after,
.hcMvcView label.dnnFormRequired::after {
  content: none !important;
  display: none !important;
}

/* Ha a DNN saját ::after-jét nem érjük el, a span.dnnFormRequired-et explicit pirossá tesszük */
span.dnnFormRequired,
.dnnFormItem .dnnFormRequired,
.dnnFormPopup span.dnnFormRequired,
.ui-dialog span.dnnFormRequired {
  color: var(--red) !important;
  font-weight: 700 !important;
}

/* =============================================================
   HOTCAKES PÉNZTÁR (CHECKOUT) FORM
   A pénztár oldalon a kötelező mezők label-jei pirosak a .dnnFormRequired
   class miatt. Felülírjuk: a label sötét, csak az .dnnFormRequired span piros.
   NE NYÚLUNK A ::after-hez, mert a DNN saját szabványos csillag-elhelyezését
   használjuk - csak a SZÍN változzon.
   ============================================================= */

/* GLOBÁLIS: label.dnnFormRequired SZÍNE SÖTÉT, nem piros */
label.dnnFormRequired,
.dnnFormRequired label,
form label.dnnFormRequired,
.hcMvcView label.dnnFormRequired,
.ModHotcakesCheckoutC label.dnnFormRequired,
.hc-checkout label.dnnFormRequired,
.LoginPanel label.dnnFormRequired,
.dnnLabel label.dnnFormRequired,
li.dnnFormItem label.dnnFormRequired,
.dnnFormItem .dnnLabel label.dnnFormRequired,
.dnnFormItem label.dnnFormRequired,
table label.dnnFormRequired,
td label.dnnFormRequired,
tr label.dnnFormRequired {
  color: #333 !important;
  font-weight: 600 !important;
}

/* A "*" csillag amit a DNN <span class="dnnFormRequired"> elemként rak
   a label mellé - PIROS marad. A span IGAZI csillagot tartalmaz, NE
   nyúljunk hozzá ::after-rel. Pozíció: inline, közvetlenül a label
   szövege után (NEM elcsúszva balra). */
.dnnFormRequired,
span.dnnFormRequired,
em.dnnFormRequired,
.hcMvcView .dnnFormRequired,
.ModHotcakesCheckoutC .dnnFormRequired,
.hc-checkout .dnnFormRequired,
.hcMvcView span.dnnFormRequired,
.ModHotcakesCheckoutC span.dnnFormRequired,
.hc-checkout span.dnnFormRequired {
  color: var(--red) !important;
  font-weight: 700 !important;
  display: inline !important;
  float: none !important;
  position: static !important;
  margin: 0 0 0 2px !important;
  padding: 0 !important;
  vertical-align: baseline !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

/* HOTCAKES CHECKOUT FORM - input mezők modern stílusa */
.ModHotcakesCheckoutC input[type="text"],
.ModHotcakesCheckoutC input[type="password"],
.ModHotcakesCheckoutC input[type="email"],
.ModHotcakesCheckoutC input[type="tel"],
.ModHotcakesCheckoutC select,
.hc-checkout input[type="text"],
.hc-checkout input[type="password"],
.hc-checkout input[type="email"],
.hc-checkout select {
  border: 2px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 0.95rem !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  transition: all 0.25s ease !important;
  background: var(--white) !important;
  box-sizing: border-box !important;
  line-height: 1.4 !important;
}

.ModHotcakesCheckoutC input[type="text"]:focus,
.ModHotcakesCheckoutC input[type="password"]:focus,
.ModHotcakesCheckoutC input[type="email"]:focus,
.ModHotcakesCheckoutC select:focus,
.hc-checkout input:focus,
.hc-checkout select:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important;
}

/* HOTCAKES CHECKOUT - címsorok ("Bejelentkezés", "Szállítási cím") */
.ModHotcakesCheckoutC h2,
.ModHotcakesCheckoutC h3,
.hc-checkout h2,
.hc-checkout h3 {
  font-size: clamp(1.2rem, 2.2vw, 1.5rem) !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin: 24px 0 16px 0 !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid #f0f0f0 !important;
}

/* Pénztár oldal "Pénztár" cím */
.ModHotcakesCheckoutC h1,
.hc-checkout h1 {
  font-size: clamp(1.6rem, 3vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
  margin-bottom: 20px !important;
  letter-spacing: -0.5px !important;
}

/* Radio gombok modern stílusa (Új fiók / Bejelentkezés / Vásárlás vendégként) */
.ModHotcakesCheckoutC input[type="radio"],
.hc-checkout input[type="radio"] {
  accent-color: var(--green) !important;
  width: 18px !important;
  height: 18px !important;
  cursor: pointer !important;
  margin-right: 6px !important;
  vertical-align: middle !important;
}

/* =============================================================
   HOTCAKES CÍMJEGYZÉK / CÍM MODAL (.hcAddressForm)
   Egy popup modal a Hotcakes-ben, ami a szállítási cím szerkesztésére
   szolgál. Bootstrap 3 form-horizontal layout-ot használ:
   <div class="form-group">
     <label class="col-sm-4 control-label">Cég:</label>
     <div class="col-sm-offset-0 col-sm-6"><input class="form-control"></div>
   </div>
   A col-sm-6 miatt az input csak 50% széles. Minden input EGYFORMA
   SZÉLES legyen.
   ============================================================= */

/* Form-group elrendezés: vertikális stack (label fent, input alatta)
   VAGY horizontal (label balra, input teljes maradék) - a Bootstrap
   col-sm-4 + col-sm-6 marad, de az input wrapper-t kibővítjük 8-ra. */
.hcAddressForm,
.form-horizontal.hcAddressForm {
  width: 100% !important;
  max-width: 100% !important;
}

.hcAddressForm .form-group,
.form-horizontal.hcAddressForm .form-group {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

/* Label: 30% szélesség, jobbra igazítva (Bootstrap horizontal stílus) */
.hcAddressForm .form-group > label,
.hcAddressForm .form-group > label.control-label,
.hcAddressForm .form-group .col-sm-4,
.form-horizontal.hcAddressForm .form-group > label {
  flex: 0 0 30% !important;
  max-width: 30% !important;
  width: 30% !important;
  text-align: right !important;
  padding: 0 14px 0 0 !important;
  margin: 0 !important;
  float: none !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: #333 !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
}

/* Input wrapper: 70% szélesség, mindig egyforma */
.hcAddressForm .form-group > div,
.hcAddressForm .form-group .col-sm-offset-0,
.hcAddressForm .form-group .col-sm-6,
.hcAddressForm .form-group .col-sm-8,
.hcAddressForm .form-group [class*="col-sm-"] {
  flex: 1 1 70% !important;
  max-width: 70% !important;
  width: 70% !important;
  padding: 0 !important;
  margin: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
}

/* MINDEN input/select EGYFORMA SZÉLESSÉG és STÍLUS */
.hcAddressForm input[type="text"],
.hcAddressForm input[type="email"],
.hcAddressForm input[type="tel"],
.hcAddressForm input[type="number"],
.hcAddressForm input.form-control,
.hcAddressForm select,
.hcAddressForm select.form-control,
.hcAddressForm textarea,
.hcAddressForm textarea.form-control {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 0 14px !important;
  font-size: 0.92rem !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  background: var(--white) !important;
  color: var(--dark) !important;
  transition: all 0.25s ease !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  display: block !important;
  font-family: 'Montserrat', sans-serif !important;
  line-height: 42px !important;
  vertical-align: middle !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

/* Textarea kivétel - több sor, nem fix magasság */
.hcAddressForm textarea,
.hcAddressForm textarea.form-control {
  height: auto !important;
  min-height: 80px !important;
  max-height: none !important;
  padding: 10px 14px !important;
  line-height: 1.4 !important;
}

/* SELECT-ek külön: a Bootstrap default native dropdown a Linux/Mac-en
   más alapmagasságot húz - explicit padding-top hozzáadásával 
   vertikálisan központoljuk a szöveget */
.hcAddressForm select,
.hcAddressForm select.form-control {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234caf50' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  padding-right: 38px !important;
  padding-left: 14px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  cursor: pointer !important;
  line-height: 42px !important;
}

/* Focus stílus */
.hcAddressForm input:focus,
.hcAddressForm select:focus,
.hcAddressForm textarea:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important;
  background-color: var(--white) !important;
}

/* Ha van TÖBB input egy form-group-ban (pl. Cím: utca + emelet),
   azok egymás alatt, mindegyik teljes szélesség, kis hézaggal */
.hcAddressForm .form-group input + input,
.hcAddressForm .form-group input + br + input {
  margin-top: 8px !important;
}

/* Close gomb a modal alján */
.hcAddressForm + button,
.hcAddressForm ~ .btn,
button.close,
.hcAddressForm-wrapper .btn-default {
  background: var(--white) !important;
  color: #555 !important;
  border: 1.5px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 10px 28px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  min-height: 44px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

.hcAddressForm + button:hover,
button.close:hover {
  border-color: var(--green) !important;
  color: var(--green) !important;
  background: var(--green-soft) !important;
}

/* Reszponzív: mobilon vertikális stack (label fent, input alatta) */
@media (max-width: 600px) {
  .hcAddressForm .form-group {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .hcAddressForm .form-group > label,
  .hcAddressForm .form-group > label.control-label {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    text-align: left !important;
    padding: 0 0 6px 0 !important;
  }

  .hcAddressForm .form-group > div,
  .hcAddressForm .form-group [class*="col-sm-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}

/* =============================================================
   ÁSZF GOMB ("Nézet ÁSZF") - btn-default felülírás
   Eddig aláhúzott szöveges link volt, most zöld outline gomb
   ============================================================= */
.ModHotcakesCheckoutC a.btn.btn-default,
.ModHotcakesCheckoutC .btn.btn-default,
.hc-checkout a.btn.btn-default,
a.btn.btn-default[href*="terms"],
a.btn.btn-default[href*="aszf"],
a.btn.btn-default[href*="ASZF"] {
  background: var(--white) !important;
  color: var(--green) !important;
  border: 2px solid var(--green) !important;
  border-radius: 10px !important;
  padding: 0 22px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  margin: 0 8px 0 0 !important;
  box-shadow: none !important;
  line-height: 1 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
}

.ModHotcakesCheckoutC a.btn.btn-default:hover,
.ModHotcakesCheckoutC .btn.btn-default:hover,
.hc-checkout a.btn.btn-default:hover,
a.btn.btn-default[href*="terms"]:hover {
  background: var(--green-soft) !important;
  color: var(--green-dark) !important;
  border-color: var(--green-dark) !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.15) !important;
  transform: translateY(-1px) !important;
}

/* =============================================================
   BEJELENTKEZÉS / btn-primary gomb a pénztár oldalon
   <a id="loginbutton" class="btn btn-primary">Bejelentkezés</a>
   Eddig aláhúzott szöveges link volt, most zöld primary gomb
   ============================================================= */
.ModHotcakesCheckoutC a.btn.btn-primary,
.ModHotcakesCheckoutC .btn.btn-primary,
.hc-checkout a.btn.btn-primary,
.hc-checkout .btn.btn-primary,
a#loginbutton,
a#loginbutton.btn,
a#loginbutton.btn.btn-primary,
.hc-login-section a.btn.btn-primary,
#hcTabLogin a.btn.btn-primary,
#hcTabNewAccount a.btn.btn-primary,
#hcTabGuest a.btn.btn-primary {
  background: var(--green) !important;
  background-color: var(--green) !important;
  background-image: none !important;
  color: var(--white) !important;
  border: 2px solid var(--green) !important;
  border-radius: 10px !important;
  padding: 0 22px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  margin: 0 8px 0 0 !important;
  box-shadow: 0 3px 10px rgba(76, 175, 80, 0.2) !important;
  line-height: 1 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  vertical-align: middle !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
}

.ModHotcakesCheckoutC a.btn.btn-primary:hover,
.ModHotcakesCheckoutC .btn.btn-primary:hover,
.hc-checkout a.btn.btn-primary:hover,
a#loginbutton:hover,
a#loginbutton.btn:hover,
a#loginbutton.btn.btn-primary:hover {
  background: var(--green-dark) !important;
  background-color: var(--green-dark) !important;
  color: var(--white) !important;
  border-color: var(--green-dark) !important;
  text-decoration: none !important;
  box-shadow: 0 6px 20px rgba(76, 175, 80, 0.35) !important;
  transform: translateY(-2px) !important;
}

/* A gombokon belüli ikon/em/glyphicon elrejtése - tiszta szöveg-gombok */
.ModHotcakesCheckoutC a.btn.btn-primary em,
.ModHotcakesCheckoutC a.btn.btn-primary .glyphicon,
.ModHotcakesCheckoutC a.btn.btn-primary i,
.ModHotcakesCheckoutC a.btn.btn-default em,
.ModHotcakesCheckoutC a.btn.btn-default .glyphicon,
.ModHotcakesCheckoutC a.btn.btn-default i,
a#loginbutton em,
a#loginbutton .glyphicon,
a#loginbutton i {
  display: none !important;
}

/* A Bejelentkezés + Elfelejtett jelszó gombokat tartalmazó wrapper
   (col-sm-offset-4 col-sm-8) - flex layout, a gombok egy vonalban
   középre vertikálisan */
.ModHotcakesCheckoutC .form-group .col-sm-offset-4,
.ModHotcakesCheckoutC .form-group .col-sm-offset-4.col-sm-8,
#hcTabLogin .col-sm-offset-4,
#hcTabLogin .form-group .col-sm-offset-4 {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
}

/* A wrapper-en belüli gombok ne növekedjenek - természetes szélességükön maradjanak */
#hcTabLogin .col-sm-offset-4 > a,
#hcTabLogin .col-sm-offset-4 > .btn,
.ModHotcakesCheckoutC .form-group .col-sm-offset-4 > a,
.ModHotcakesCheckoutC .form-group .col-sm-offset-4 > .btn {
  flex: 0 0 auto !important;
}

/* A login form GOMBOKAT TARTALMAZÓ utolsó form-group felé margin-top,
   hogy ne ragadjon közvetlenül a Jelszó input alá */
#hcTabLogin .form-group:last-child,
#hcTabNewAccount .form-group:last-child,
#hcTabGuest .form-group:last-child,
.hc-login-section .form-group:has(a#loginbutton),
.hc-login-section .form-group:has(.btn-primary) {
  margin-top: 20px !important;
}

/* Az ÁSZF és Rendelés leadása gombokat tartalmazó wrapper:
   az "Elfogadom..." checkbox + szöveg + Nézet ÁSZF gomb EGY SORBAN,
   középre igazítva. Egyszerű block + text-align: center,
   nem flex (mert a flex átlapolja a checkbox-ot a szöveggel). */
.ModHotcakesCheckoutC .col-xs-12.text-center,
.ModHotcakesCheckoutC .text-center:has(#hcTakeOrder),
.ModHotcakesCheckoutC .form-group:has(a.btn.btn-default[href*="terms"]),
.ModHotcakesCheckoutC .form-group:has(input[type="checkbox"]) {
  display: block !important;
  text-align: center !important;
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
}

/* A wrapper-en belüli inline elemek (checkbox, label, ÁSZF gomb)
   automatikusan egymás mellé kerülnek, mert mindegyik inline-block */
.ModHotcakesCheckoutC .col-xs-12.text-center > *,
.ModHotcakesCheckoutC .form-group:has(input[type="checkbox"]) > * {
  vertical-align: middle !important;
}

/* Az "Elfogadom..." checkbox + label sor: vertikálisan középen.
   A HTML valószínűleg így néz ki: <input type="checkbox"> Elfogadom...
   ahol a szöveg KÖZVETLEN testvér textnode-ja az inputnak.
   Ezért az inputnak NAGY jobb-margin-t adunk, hogy biztos elférjen
   a szöveg eleje. */
.ModHotcakesCheckoutC label:has(input[type="checkbox"]),
.ModHotcakesCheckoutC .checkbox label,
.ModHotcakesCheckoutC label.checkbox-inline {
  display: inline-block !important;
  margin: 0 8px 0 0 !important;
  padding: 0 !important;
  font-size: 0.92rem !important;
  font-weight: 500 !important;
  color: var(--dark) !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  vertical-align: middle !important;
}

.ModHotcakesCheckoutC input[type="checkbox"],
.ModHotcakesCheckoutC .form-group input[type="checkbox"],
.ModHotcakesCheckoutC .col-xs-12 input[type="checkbox"] {
  accent-color: var(--green) !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 12px 0 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  vertical-align: middle !important;
  display: inline-block !important;
  position: static !important;
  float: none !important;
  flex: none !important;
}

/* A checkbox UTÁNI testvér (label vagy szöveg) hézag */
.ModHotcakesCheckoutC input[type="checkbox"] + label,
.ModHotcakesCheckoutC input[type="checkbox"] ~ label {
  margin-left: 0 !important;
  vertical-align: middle !important;
  display: inline-block !important;
  cursor: pointer !important;
}

/* =============================================================
   SZÁLLÍTÁSI MÓD RADIO + SZÖVEG EGY VONALBAN
   A #hcShippingRates a "0,00 Ft - Egyeztetés alatt..." sor,
   ahol a radio körnek és a szövegnek egy sorban kell lennie.
   ============================================================= */
#hcShippingRates,
.hc-delivery-section,
#hcDeliverySection {
  display: block !important;
  width: 100% !important;
}

/* Minden label-radio párost a Hotcakes checkout-on horizontal stack-be */
#hcShippingRates label,
.hc-delivery-section label,
#hcDeliverySection label,
.hcMvcView .hc-delivery-section label,
.ModHotcakesCheckoutC .hc-delivery-section label,
#hcShippingRates .form-group label,
#hcShippingRates > label {
  display: inline-flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  font-size: 0.92rem !important;
  font-weight: 500 !important;
  color: var(--dark) !important;
  line-height: 1.4 !important;
  vertical-align: middle !important;
  cursor: pointer !important;
}

/* Radio gomb belül - középre vertikálisan */
#hcShippingRates input[type="radio"],
.hc-delivery-section input[type="radio"],
#hcDeliverySection input[type="radio"],
.ModHotcakesCheckoutC input[type="radio"] {
  accent-color: var(--green) !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  cursor: pointer !important;
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: middle !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
  position: relative !important;
  top: 0 !important;
}

/* Általános Fizetési mód / Kártyás fizetés radio block */
.hc-payment-section label,
#hcPaymentSection label,
.ModHotcakesCheckoutC .hc-payment-section label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 0 !important;
  margin: 0 !important;
  font-weight: 500 !important;
  cursor: pointer !important;
}

/* === INPUT MEZŐK === */
.loginContent input[type="text"],
.loginContent input[type="password"],
.loginContent input[type="email"],
.LoginPanel input[type="text"],
.LoginPanel input[type="password"],
.LoginPanel input[type="email"],
.dnnFormPopup input[type="text"],
.dnnFormPopup input[type="password"],
.dnnFormPopup input[type="email"],
.ui-dialog input[type="text"],
.ui-dialog input[type="password"],
.ui-dialog input[type="email"] {
  border: 2px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 0.95rem !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  transition: all 0.25s ease !important;
  background: var(--white) !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  display: block !important;
  line-height: 1.4 !important;
}

.loginContent input[type="text"]:focus,
.loginContent input[type="password"]:focus,
.loginContent input[type="email"]:focus,
.LoginPanel input[type="text"]:focus,
.LoginPanel input[type="password"]:focus,
.dnnFormPopup input[type="text"]:focus,
.dnnFormPopup input[type="password"]:focus,
.ui-dialog input[type="text"]:focus,
.ui-dialog input[type="password"]:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important;
}

.loginContent input[type="checkbox"],
.LoginPanel input[type="checkbox"],
.dnnFormPopup input[type="checkbox"],
.ui-dialog input[type="checkbox"] {
  accent-color: var(--green) !important;
  width: 18px !important;
  height: 18px !important;
  cursor: pointer !important;
  margin-right: 6px !important;
}

/* === GOMBOK SOR (Bejelentkezés/Mégse/Regisztráció) === */
.loginContent .dnnActions,
.LoginPanel .dnnActions,
.dnnFormPopup .dnnActions,
.ui-dialog .dnnActions {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 20px 0 0 0 !important;
  padding: 0 !important;
  flex-wrap: wrap !important;
  list-style: none !important;
  justify-content: flex-start !important;
}

.dnnActions li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* === ELSŐDLEGES GOMB (Bejelentkezés / Regisztráció) === */
.loginContent .dnnPrimaryAction,
.LoginPanel .dnnPrimaryAction,
.dnnFormPopup .dnnPrimaryAction,
.ui-dialog .dnnPrimaryAction,
a.dnnPrimaryAction,
input.dnnPrimaryAction[type="submit"],
input.dnnPrimaryAction[type="button"] {
  background: var(--green) !important;
  background-image: none !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 12px 28px !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  line-height: 1.2 !important;
}

.loginContent .dnnPrimaryAction:hover,
.LoginPanel .dnnPrimaryAction:hover,
.dnnFormPopup .dnnPrimaryAction:hover,
.ui-dialog .dnnPrimaryAction:hover,
a.dnnPrimaryAction:hover,
input.dnnPrimaryAction:hover {
  background: var(--green-dark) !important;
  background-image: none !important;
  color: var(--white) !important;
  box-shadow: 0 6px 20px rgba(76, 175, 80, 0.35) !important;
  transform: translateY(-2px) !important;
  text-decoration: none !important;
}

/* === MÁSODLAGOS GOMB (Mégse) === */
.loginContent .dnnSecondaryAction,
.LoginPanel .dnnSecondaryAction,
.dnnFormPopup .dnnSecondaryAction,
.ui-dialog .dnnSecondaryAction,
a.dnnSecondaryAction,
input.dnnSecondaryAction[type="submit"],
input.dnnSecondaryAction[type="button"] {
  background: var(--white) !important;
  background-image: none !important;
  color: #555 !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 10px 22px !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  box-shadow: none !important;
  line-height: 1.2 !important;
}

.loginContent .dnnSecondaryAction:hover,
.LoginPanel .dnnSecondaryAction:hover,
.dnnFormPopup .dnnSecondaryAction:hover,
.ui-dialog .dnnSecondaryAction:hover,
a.dnnSecondaryAction:hover,
input.dnnSecondaryAction:hover {
  border-color: var(--green) !important;
  color: var(--green) !important;
  background: var(--green-soft) !important;
  text-decoration: none !important;
}

/* === LINKEK (Elfelejtett jelszó, Regisztráció) === */
.loginContent a:not(.dnnPrimaryAction):not(.dnnSecondaryAction),
.LoginPanel a:not(.dnnPrimaryAction):not(.dnnSecondaryAction),
.dnnFormPopup a:not(.dnnPrimaryAction):not(.dnnSecondaryAction),
.ui-dialog a:not(.dnnPrimaryAction):not(.dnnSecondaryAction):not(.ui-dialog-titlebar-close) {
  color: var(--green) !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  border: none !important;
  background: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.loginContent a:not(.dnnPrimaryAction):not(.dnnSecondaryAction):hover,
.LoginPanel a:not(.dnnPrimaryAction):not(.dnnSecondaryAction):hover,
.dnnFormPopup a:not(.dnnPrimaryAction):not(.dnnSecondaryAction):hover,
.ui-dialog a:not(.dnnPrimaryAction):not(.dnnSecondaryAction):not(.ui-dialog-titlebar-close):hover {
  color: var(--green-dark) !important;
  text-decoration: underline !important;
}

/* === REQUIRED CSILLAG === */
.dnnFormRequired,
.dnnFormItem .dnnFormRequired,
.dnnFormPopup .dnnFormRequired,
.ui-dialog .dnnFormRequired {
  color: var(--red) !important;
  font-weight: 700 !important;
  margin-left: 2px !important;
}

/* A label maga ne legyen piros - csak a csillag.
   A .dnnFormRequired class-t a DNN néha az egész <label>-re is teszi. */
.dnnFormPopup label,
.ui-dialog label,
.dnnFormPopup label.dnnFormRequired,
.ui-dialog label.dnnFormRequired,
.dnnFormPopup .dnnLabel label,
.ui-dialog .dnnLabel label {
  color: #333 !important;
  font-weight: 600 !important;
}

/* Piros csillag csak a label után - a dnnFormRequired ::after-rel
   teszi a *-ot a label után, az piros marad */
.dnnFormPopup label.dnnFormRequired::after,
.ui-dialog label.dnnFormRequired::after,
.dnnFormPopup .dnnFormRequired::after,
.ui-dialog .dnnFormRequired::after {
  color: var(--red) !important;
}

/* === HELP IKON ÉS TOOLTIP REJTÉSE ===
   A regisztrációs form-on minden mező mellett van egy ⓘ ikon.
   Erős szelektorral elrejtjük. */
.dnnFormPopup .dnnFormHelp,
.ui-dialog .dnnFormHelp,
.dnnFormPopup .dnnTooltip,
.ui-dialog .dnnTooltip,
.dnnFormPopup a.dnnFormHelp,
.ui-dialog a.dnnFormHelp,
.dnnFormPopup .dnnHelperText,
.ui-dialog .dnnHelperText,
a.dnnFormHelp,
.dnnFormHelp,
.dnnFormHelpContent,
.dnnTooltip,
span.dnnFormHelp,
.dnnFormItem a.dnnFormHelp {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  position: absolute !important;
  left: -9999px !important;
}

/* =============================================================
   POPUP MÓD (?popUp=true URL paraméter)
   A DNN egy ÚJ oldalt tölt be az iframe-be POPUP-MÓDBAN, ahol
   a body kap egy `.popUpFrame` osztályt (DNN konvenció).
   Ott NE rajzoljunk újabb LoginPanel keretet, és rejtsük el a
   navbar-t/header-t, hogy az iframe tartalma tiszta legyen.
   ============================================================= */

/* Popup módban a body fehér, és nincs a fő layout */
body.popUpFrame,
body[class*="popUp"],
.popUpFrame {
  background: var(--white) !important;
  padding: 20px !important;
  margin: 0 !important;
  overflow: hidden !important;
}

/* Header, navbar, footer, hero - mind elrejtve popup módban */
body.popUpFrame .navbar,
body.popUpFrame #topHeader,
body.popUpFrame header,
body.popUpFrame footer,
body.popUpFrame .footer,
body.popUpFrame .hero,
body.popUpFrame .ControlPanel,
body[class*="popUp"] .navbar,
body[class*="popUp"] #topHeader,
body[class*="popUp"] header,
body[class*="popUp"] footer,
body[class*="popUp"] .footer,
body[class*="popUp"] .hero,
body[class*="popUp"] .ControlPanel,
.popUpFrame .navbar,
.popUpFrame #topHeader,
.popUpFrame header,
.popUpFrame footer,
.popUpFrame .footer {
  display: none !important;
}

/* LoginPanel a popup-ban: nincs keret, nincs box-shadow,
   nincs max-width - használja a popup teljes szélességét */
body.popUpFrame .LoginPanel,
body.popUpFrame #dnn_ctr_Login_pnlLoginContainer,
body[class*="popUp"] .LoginPanel,
body[class*="popUp"] #dnn_ctr_Login_pnlLoginContainer,
.popUpFrame .LoginPanel,
.popUpFrame #dnn_ctr_Login_pnlLoginContainer,
.dnnFormPopup-content .LoginPanel,
.dnnFormPopup-content #dnn_ctr_Login_pnlLoginContainer {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Container is full-width legyen popupban */
body.popUpFrame .container,
body[class*="popUp"] .container,
.popUpFrame .container,
body.popUpFrame .ContentPane,
body[class*="popUp"] .ContentPane,
.popUpFrame .ContentPane {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* === MODERN POPUP TIPOGRÁFIA ===
   Nagyobb cím, kifinomultabb spacing, modernebb hangulat */

/* "Bejelentkezés" / "Regisztráció" cím - nagyobb és vastagabb */
body.popUpFrame h1,
body.popUpFrame h2,
body.popUpFrame .Head,
body[class*="popUp"] h1,
body[class*="popUp"] h2,
body[class*="popUp"] .Head,
.popUpFrame h1,
.popUpFrame h2,
.popUpFrame .Head,
.popUpFrame .dnnFormSectionHead,
body.popUpFrame .dnnFormSectionHead {
  font-size: 1.75rem !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  letter-spacing: -0.5px !important;
  text-align: left !important;
  text-transform: none !important;
  line-height: 1.2 !important;
}

/* Breadcrumb-szerű felirat ("OnlyRide > Kezdőlap") elrejtése regisztrációnál */
body.popUpFrame .dnnBreadCrumb,
body[class*="popUp"] .dnnBreadCrumb,
.popUpFrame .dnnBreadCrumb {
  display: none !important;
}

/* Megjegyzés alert doboz a regisztráción - modernebb, lekerekített */
body.popUpFrame .dnnFormMessage,
body[class*="popUp"] .dnnFormMessage,
.popUpFrame .dnnFormMessage,
body.popUpFrame .dnnFormInfo,
.popUpFrame .dnnFormInfo {
  background: linear-gradient(135deg, #f0faf0 0%, #e8f5e9 100%) !important;
  background-color: #f0faf0 !important;
  border: 1px solid #c8e6c9 !important;
  border-radius: 12px !important;
  color: #1e3a1f !important;
  padding: 16px 20px !important;
  font-size: 0.85rem !important;
  font-style: normal !important;
  margin-bottom: 24px !important;
  line-height: 1.6 !important;
}

/* === MODERN INPUT FOCUS === */
body.popUpFrame input[type="text"]:focus,
body.popUpFrame input[type="password"]:focus,
body.popUpFrame input[type="email"]:focus,
body[class*="popUp"] input[type="text"]:focus,
body[class*="popUp"] input[type="password"]:focus,
.popUpFrame input[type="text"]:focus,
.popUpFrame input[type="password"]:focus,
.popUpFrame input[type="email"]:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 4px rgba(76, 175, 80, 0.12) !important;
  background: #fcfffc !important;
}

/* === MODERN ELŐD GOMB - FULL WIDTH a Bejelentkezés popup-ban === */
body.popUpFrame .dnnPrimaryAction,
body[class*="popUp"] .dnnPrimaryAction,
.popUpFrame .dnnPrimaryAction,
body.popUpFrame input.dnnPrimaryAction,
body.popUpFrame a.dnnPrimaryAction,
.popUpFrame input.dnnPrimaryAction,
.popUpFrame a.dnnPrimaryAction {
  background: linear-gradient(135deg, var(--green) 0%, var(--green-dark) 100%) !important;
  background-color: var(--green) !important;
  background-image: linear-gradient(135deg, var(--green) 0%, var(--green-dark) 100%) !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 13px 32px !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  box-shadow: 0 4px 14px rgba(76, 175, 80, 0.3) !important;
  min-height: 48px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

body.popUpFrame .dnnPrimaryAction:hover,
.popUpFrame .dnnPrimaryAction:hover {
  background: linear-gradient(135deg, var(--green-dark) 0%, var(--green-deep) 100%) !important;
  background-image: linear-gradient(135deg, var(--green-dark) 0%, var(--green-deep) 100%) !important;
  box-shadow: 0 6px 22px rgba(76, 175, 80, 0.42) !important;
  transform: translateY(-2px) !important;
}

/* === MÁSODLAGOS GOMB MODERN === */
body.popUpFrame .dnnSecondaryAction,
body[class*="popUp"] .dnnSecondaryAction,
.popUpFrame .dnnSecondaryAction,
body.popUpFrame a.dnnSecondaryAction,
body.popUpFrame input.dnnSecondaryAction,
.popUpFrame a.dnnSecondaryAction,
.popUpFrame input.dnnSecondaryAction {
  background: var(--white) !important;
  color: #555 !important;
  border: 1.5px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 11px 24px !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  min-height: 46px !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
}

body.popUpFrame .dnnSecondaryAction:hover,
.popUpFrame .dnnSecondaryAction:hover {
  border-color: var(--green) !important;
  color: var(--green) !important;
  background: var(--green-soft) !important;
  box-shadow: 0 2px 8px rgba(76, 175, 80, 0.15) !important;
  transform: translateY(-1px) !important;
}

/* === DNNACTIONS LISTÁK MODERN ELHELYEZÉS ===
   A Bejelentkezés/Regisztráció gombok és linkek egy sorban,
   modern flex layout-tal. */
body.popUpFrame .dnnActions,
body[class*="popUp"] .dnnActions,
.popUpFrame .dnnActions,
body.popUpFrame ul.dnnActions,
.popUpFrame ul.dnnActions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 24px 0 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  justify-content: flex-start !important;
}

body.popUpFrame .dnnActions li,
.popUpFrame .dnnActions li,
.popUpFrame ul.dnnActions li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-block !important;
}

/* === RESIZE HANDLE-K REJTÉSE ===
   A jQuery UI dialog resizable funkciója vékony szürke sávokat rajzol
   a popup szélein. A popup nem resizable, MINDET eltüntetjük. */
.ui-dialog .ui-resizable-handle,
.ui-resizable-handle,
.ui-resizable-n,
.ui-resizable-e,
.ui-resizable-s,
.ui-resizable-w,
.ui-resizable-ne,
.ui-resizable-nw,
.ui-resizable-se,
.ui-resizable-sw,
.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw,
.ui-dialog .ui-resizable-n,
.ui-dialog .ui-resizable-e,
.ui-dialog .ui-resizable-s,
.ui-dialog .ui-resizable-w {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}


/* =============================================================
   AJÁNLOTT / KIEMELT TERMÉKEK (Featured)
   Reszponzív: 4 -> 3 -> 2 -> 1 oszlop
   ============================================================= */

.ModHotcakesFeaturedProductsC,
.ModHotcakesFeaturedProductsC .row-fluid,
.ModHotcakesFeaturedProductsC .hcMvcView {
  background: var(--white) !important;
}

.ModHotcakesFeaturedProductsC h2 {
  font-size: clamp(1.3rem, 2.5vw, 1.6rem) !important;
  font-weight: 800 !important;
  color: var(--black) !important;
  letter-spacing: -0.5px !important;
  margin-bottom: 24px !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

.ModHotcakesFeaturedProductsC .hc-product-grid,
.ModHotcakesFeaturedProductsC .row-fluid {
  background: var(--white) !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: clamp(10px, 1.5vw, 20px) !important;
  padding: 16px 0 !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
}

/* Desktop alapérték: 4 oszlop */
.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 {
  display: flex !important;
  flex-direction: column !important;
  flex: 0 0 calc(25% - 15px) !important;
  max-width: calc(25% - 15px) !important;
  background: var(--white) !important;
  border: 1px solid #eee !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin-bottom: 16px !important;
  transition: all 0.3s ease !important;
  box-shadow: var(--shadow-card) !important;
}

.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4:hover {
  border-color: var(--green) !important;
  transform: translateY(-6px) !important;
  box-shadow: var(--shadow-hover) !important;
}

.ModHotcakesFeaturedProductsC .panel,
.ModHotcakesFeaturedProductsC .panel-default {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 16px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  width: 100% !important;
}

/* Cím FIX magasság: 3 soros címek is elférjenek, és minden kártyán
   ugyanannyi helyet foglaljon - így a kép pontosan azonos vonalban
   kezdődik minden kártyán, függetlenül a cím hosszától */
.ModHotcakesFeaturedProductsC .panel-heading {
  background: transparent !important;
  border: none !important;
  padding: 16px 16px 12px !important;
  height: 100px !important;
  min-height: 100px !important;
  max-height: 100px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.ModHotcakesFeaturedProductsC .panel-heading a,
.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 a {
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  line-clamp: 3 !important;
  line-height: 1.4 !important;
  border: none !important;
  word-wrap: break-word !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: center !important;
}

.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 a::after {
  display: none !important;
}

.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 a:hover {
  color: var(--green) !important;
}

.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 .panel-body {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: clamp(180px, 25vw, 260px) !important;
  overflow: hidden !important;
  padding: 20px !important;
}

.ModHotcakesFeaturedProductsC .panel-body img,
.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 img {
  max-height: clamp(160px, 22vw, 240px) !important;
  width: auto !important;
  max-width: 90% !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

.ModHotcakesFeaturedProductsC .panel-footer,
.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 .panel-footer {
  margin-top: auto !important;
  padding: 14px 16px !important;
  text-align: center !important;
  background: transparent !important;
  border: none !important;
}

.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 p,
.ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 span[data-bind] {
  font-size: 1.05rem !important;
  color: var(--dark) !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
}

.ModHotcakesFeaturedProductsC .panel-footer a,
.ModHotcakesFeaturedProductsC .panel-footer .btn,
.ModHotcakesFeaturedProductsC .panel-footer input[type="submit"] {
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 10px 28px !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 3px 10px rgba(76, 175, 80, 0.2) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-height: 44px !important;
  text-decoration: none !important;
}

.ModHotcakesFeaturedProductsC .panel-footer a:hover,
.ModHotcakesFeaturedProductsC .panel-footer input[type="submit"]:hover {
  background: var(--green-dark) !important;
  box-shadow: 0 6px 18px rgba(76, 175, 80, 0.3) !important;
  transform: translateY(-2px) !important;
}

/* HR rejtve */
.ModHotcakesFeaturedProductsC hr,
.ModHotcakesFeaturedProductsC .panel hr {
  display: none !important;
}

/* Kosár ikon a featured-ben */
.ModHotcakesFeaturedProductsC .glyphicon-shopping-cart,
.ModHotcakesFeaturedProductsC .fa-shopping-cart,
.ModHotcakesFeaturedProductsC a.add-to-cart-product em,
.ModHotcakesFeaturedProductsC input[type="submit"] + em,
.ModHotcakesFeaturedProductsC .btn .glyphicon {
  display: none !important;
}


/* =============================================================
   KATEGÓRIA OLDAL - GRID NÉZET
   ============================================================= */

.hc-category .breadcrumb,
.ModHotcakesCategoryViewerC .breadcrumb {
  background: #f8f9fa !important;
  border-radius: 10px !important;
  padding: 12px 20px !important;
  font-size: 0.85rem !important;
  border: 1px solid #eee !important;
  flex-wrap: wrap !important;
}

.hc-category .breadcrumb a {
  color: var(--green) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
}

.hc-category .breadcrumb a:hover {
  color: var(--green-dark) !important;
}

.hc-category h1 {
  font-size: clamp(1.3rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin-bottom: 28px !important;
  text-align: center !important;
  word-wrap: break-word !important;
}

.ModHotcakesCategoryViewerC,
.ModHotcakesCategoryViewerC .hcMvcView,
.ModHotcakesCategoryViewerC .hc-category,
.ModHotcakesCategoryViewerC .row,
.ModHotcakesCategoryViewerC .row-fluid {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.hc-category .panel,
.hc-category .panel-default,
.ModHotcakesCategoryViewerC .panel,
.ModHotcakesCategoryViewerC .panel-default {
  background: var(--white) !important;
  border: 1px solid #eee !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
  box-shadow: var(--shadow-card) !important;
  -webkit-box-shadow: var(--shadow-card) !important;
  margin-bottom: 24px !important;
  height: calc(100% - 24px) !important;
  display: flex !important;
  flex-direction: column !important;
}

.hc-category .panel:hover,
.ModHotcakesCategoryViewerC .panel:hover {
  border-color: var(--green) !important;
  box-shadow: var(--shadow-hover) !important;
  transform: translateY(-6px) !important;
}

.hc-category .panel-body,
.ModHotcakesCategoryViewerC .panel-body {
  padding: 16px !important;
  background: var(--white) !important;
}

.hc-category .panel-body img,
.ModHotcakesCategoryViewerC .panel-body img {
  border-radius: 10px !important;
  border: 1px solid #f0f0f0 !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  transition: transform 0.3s ease !important;
  background: #fafafa !important;
  padding: 6px !important;
}

.hc-category .panel:hover .panel-body img,
.ModHotcakesCategoryViewerC .panel:hover .panel-body img {
  transform: scale(1.04) !important;
}

.hc-category .panel-heading,
.ModHotcakesCategoryViewerC .panel-heading {
  background: var(--white) !important;
  border-bottom: none !important;
  padding: 16px 16px 12px !important;
  text-align: center !important;
  height: 100px !important;
  min-height: 100px !important;
  max-height: 100px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.hc-category .panel-heading a,
.ModHotcakesCategoryViewerC .panel-heading a {
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
  word-wrap: break-word !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  line-clamp: 3 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  width: 100% !important;
}

.hc-category .panel-heading a:hover,
.ModHotcakesCategoryViewerC .panel-heading a:hover {
  color: var(--green) !important;
}

.hc-category .panel-footer,
.ModHotcakesCategoryViewerC .panel-footer,
.panel-footer.text-center {
  background: var(--white) !important;
  border-top: 1px solid #f0f0f0 !important;
  padding: 12px 16px !important;
  text-align: center !important;
  margin-top: auto !important;
}

.hc-category .panel-footer a:not(.add-to-cart-product),
.ModHotcakesCategoryViewerC .panel-footer a:not(.add-to-cart-product) {
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.hc-category .panel-footer a:not(.add-to-cart-product):hover {
  color: var(--green) !important;
}

.hc-category .panel-footer span[data-bind],
.ModHotcakesCategoryViewerC .panel-footer span[data-bind] {
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  display: block !important;
  margin-bottom: 8px !important;
}

.panel-footer a.add-to-cart-product,
.hc-category .panel-footer a.add-to-cart-product,
.ModHotcakesCategoryViewerC .panel-footer a.add-to-cart-product {
  border-radius: 8px !important;
  padding: 8px 14px !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  margin: 3px !important;
  white-space: nowrap !important;
  min-height: 40px !important;
}

.panel-footer a.add-to-cart-product[href*="productdata"],
.panel-footer a.add-to-cart-product[href*="Product"] {
  background: var(--white) !important;
  color: var(--green) !important;
  border: 2px solid var(--green) !important;
  box-shadow: none !important;
}

.panel-footer a.add-to-cart-product[href*="productdata"]:hover,
.panel-footer a.add-to-cart-product[href*="Product"]:hover {
  background: var(--green) !important;
  color: var(--white) !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
}

.panel-footer a.add-to-cart-product[href*="cart"],
.panel-footer a.add-to-cart-product[href*="Cart"],
.panel-footer a.add-to-cart-product[href*="AddSku"],
.panel-footer a.add-to-cart-product[href*="osar"] {
  background: var(--green) !important;
  color: var(--white) !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(76, 175, 80, 0.2) !important;
}

.panel-footer a.add-to-cart-product[href*="cart"]:hover,
.panel-footer a.add-to-cart-product[href*="AddSku"]:hover,
.panel-footer a.add-to-cart-product[href*="osar"]:hover {
  background: var(--green-dark) !important;
  box-shadow: 0 4px 14px rgba(76, 175, 80, 0.3) !important;
  transform: translateY(-1px) !important;
}

.panel-footer a.add-to-cart-product .glyphicon,
.panel-footer a.add-to-cart-product em,
.panel-footer a.add-to-cart-product span {
  float: none !important;
  margin: 0 !important;
  font-size: inherit !important;
}

/* Kosár ikon eltüntetése a kategória nézetnél */
.hc-category .panel-footer a.add-to-cart-product em,
.hc-category .panel-footer a.add-to-cart-product .glyphicon,
.ModHotcakesCategoryViewerC .panel-footer a.add-to-cart-product em,
.ModHotcakesCategoryViewerC .panel-footer a.add-to-cart-product .glyphicon-shopping-cart {
  display: none !important;
}

/* Lapozás */
.hc-category .pagination,
.hc-category .pager {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px !important;
  justify-content: center !important;
  padding: 0 !important;
  list-style: none !important;
  margin-bottom: 28px !important;
  position: relative !important;
  float: none !important;
  width: 100% !important;
  clear: both !important;
}

.hc-category .pagination li a,
.hc-category .pager li a {
  border: 1px solid #eee !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  color: #555 !important;
  font-weight: 500 !important;
  font-size: 0.85rem !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  display: block !important;
  background: var(--white) !important;
  min-width: 40px !important;
  min-height: 40px !important;
  text-align: center !important;
  line-height: 1.4 !important;
}

.hc-category .pagination li a:hover {
  background: var(--green-soft) !important;
  border-color: var(--green) !important;
  color: var(--green) !important;
}

.hc-category .pagination li.active a,
.hc-category .pagination .active a {
  background: var(--green) !important;
  border-color: var(--green) !important;
  color: var(--white) !important;
}

/* Rendezés */
.hc-category .hc-catalog-admin,
.ModHotcakesCategoryViewerC .hc-catalog-admin {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin-bottom: 24px !important;
  float: none !important;
  flex-wrap: wrap !important;
}

.hc-category .hc-catalog-admin label {
  margin: 0 !important;
  font-weight: 600 !important;
  font-size: 0.88rem !important;
  color: #555 !important;
  white-space: nowrap !important;
}

.hc-category select,
.hc-category .form-control {
  border: 2px solid #e0e0e0 !important;
  border-radius: 10px !important;
  padding: 12px 40px 12px 16px !important;
  font-size: 0.88rem !important;
  font-weight: 500 !important;
  color: #333 !important;
  background-color: var(--white) !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  display: inline-block !important;
  width: auto !important;
  min-width: 200px !important;
  max-width: 100% !important;
  vertical-align: middle !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234caf50' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
  line-height: 1.4 !important;
  height: auto !important;
  overflow: visible !important;
  min-height: 44px !important;
}

.hc-category select:hover {
  border-color: var(--green) !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.1) !important;
}

.hc-category select:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important;
}

/* Grid mód - alapértelmezett (4 oszlop desktopon) */
.hc-category .row-fluid {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  margin-left: -10px !important;
  margin-right: -10px !important;
}

.hc-category .row-fluid > .col-md-3 {
  display: flex !important;
  float: none !important;
  margin-bottom: 20px !important;
  padding: 0 10px !important;
  box-sizing: border-box !important;
  width: 25% !important;
  flex: 0 0 25% !important;
  max-width: 25% !important;
}

.hc-category .row-fluid > .col-md-3 > .panel {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  margin-bottom: 0 !important;
}

.hc-category .row-fluid > .col-md-3 > .panel > .panel-heading {
  min-height: 80px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.hc-category .row-fluid > .col-md-3 > .panel > .panel-body {
  height: clamp(160px, 22vw, 200px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.hc-category .row-fluid > .col-md-3 > .panel > .panel-body img {
  max-width: 100% !important;
  max-height: clamp(140px, 20vw, 180px) !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

.hc-category .row-fluid > .col-md-3 > .panel > .panel-footer {
  margin-top: auto !important;
}

/* Alkategória kártyák */
.row-fluid.hc-category-cards {
  display: flex !important;
  flex-wrap: wrap !important;
  height: auto !important;
  position: relative !important;
  overflow: visible !important;
  align-items: stretch !important;
  margin-left: -10px !important;
  margin-right: -10px !important;
}

div.col-xs-6.col-md-4.hc-category-card,
div.col-xs-6.col-md-3.hc-category-card,
div.hc-category-card[style],
.hc-category-cards > div[style] {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  float: none !important;
  display: flex !important;
  flex: 0 0 33.333% !important;
  max-width: 33.333% !important;
  padding: 0 10px !important;
  margin-bottom: 20px !important;
  box-sizing: border-box !important;
  transform: none !important;
}

div.hc-category-card > .panel {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
}

div.hc-category-card > .panel > .panel-body {
  height: clamp(180px, 22vw, 220px) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

div.hc-category-card > .panel > .panel-body img {
  max-height: clamp(160px, 20vw, 200px) !important;
  width: auto !important;
  max-width: 100% !important;
  object-fit: contain !important;
}

div.hc-category-card > .panel > .panel-footer {
  margin-top: auto !important;
}

.row-fluid.hc-category-cards[style] {
  height: auto !important;
}


/* =============================================================
   DNNModuleContent
   ============================================================= */

.DNNModuleContent p { font-size: 0.95rem; color: var(--mid); line-height: 1.7; margin: 0 0 10px 0; }
.DNNModuleContent h2 { font-size: clamp(1.4rem, 3vw, 2.2rem); font-weight: 800; color: var(--black); letter-spacing: -1px; margin: 0 0 16px 0; }
.DNNModuleContent h3 { font-size: 1.1rem; font-weight: 700; color: var(--black); margin: 0 0 8px 0; }
.DNNModuleContent h4 { font-size: 0.95rem; font-weight: 600; color: var(--dark); margin: 0 0 8px 0; }
.DNNModuleContent a  { color: var(--black); font-weight: 500; text-decoration: underline; }
.DNNModuleContent a:hover { color: var(--gray); text-decoration: none; }
.DNNModuleContent ul { list-style: none; padding: 0; margin: 0; }
.DNNModuleContent ul li {
  font-size: 0.92rem;
  color: var(--mid);
  padding: 8px 0;
  border-bottom: 0 solid var(--border);
  line-height: 1.6;
}
.DNNModuleContent ul li:last-child { border-bottom: none; }


/* =============================================================
   RÓLUNK SZEKCIÓ
   ============================================================= */

.bp-split {
  display: flex;
  align-items: center;
  gap: clamp(20px, 4vw, 48px);
  padding: clamp(24px, 4vw, 48px) 0;
  flex-wrap: wrap;
}

.bp-split-text {
  flex: 1 1 300px;
  min-width: 0;
}

.bp-split-text h2 {
  font-size: clamp(1.4rem, 3vw, 2.2rem);
  font-weight: 800;
  color: var(--black);
  letter-spacing: -1px;
  margin: 0 0 16px 0;
}

.bp-split-text p {
  font-size: clamp(0.85rem, 1.2vw, 0.95rem);
  color: var(--mid);
  line-height: 1.8;
  margin: 0;
}

.bp-split-image {
  flex: 1 1 300px;
  min-width: 0;
}

.bp-split-image img {
  width: 100%;
  height: auto;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  display: block;
}


/* =============================================================
   FEATURE KÁRTYÁK
   ============================================================= */

.bp-features {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(10px, 1.5vw, 16px) !important;
  padding: clamp(20px, 4vw, 40px) 0 !important;
}

.bp-features .bp-feat-item {
  flex: 1 1 200px;
}

.bp-feat-item {
  text-align: center;
  padding: clamp(20px, 3vw, 32px) clamp(16px, 2.5vw, 24px) !important;
  background: var(--lighter);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg) !important;
  transition: var(--transition);
  text-decoration: none !important;
  color: inherit !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  cursor: pointer !important;
  min-height: 180px !important;
  justify-content: center !important;
}

.bp-feat-item:hover {
  border-color: var(--green) !important;
  transform: translateY(-4px);
  box-shadow: 0 12px 48px rgba(76, 175, 80, 0.15) !important;
  text-decoration: none !important;
}

.bp-feat-item:hover h3 {
  color: var(--green) !important;
}

.bp-feat-icon {
  font-size: clamp(1.6rem, 2.5vw, 2.2rem) !important;
  display: block;
  margin-bottom: 16px !important;
  line-height: 1;
}

.bp-feat-item h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--black);
  margin: 0 0 8px 0;
}

.bp-feat-item p {
  font-size: 0.9rem;
  color: var(--mid);
  line-height: 1.6;
  margin: 0;
}


/* =============================================================
   BANNER SZEKCIÓ
   FIX: 100vw helyett scrollbar-safe módon kicsempézzük
   ============================================================= */

.bp-banner {
  /* IGAZI FULL-BLEED 100vw, ugyanazzal a trükkel mint a .hero */
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: 50% !important;
  margin-right: 0 !important;
  transform: translateX(-50%) !important;
  position: relative !important;
  left: 0 !important;
  right: 0 !important;
  box-sizing: border-box !important;
}

@supports (width: 100dvw) {
  .bp-banner {
    width: 100dvw !important;
    max-width: 100dvw !important;
  }
}

.bp-banner img {
  width: 100% !important;
  height: clamp(180px, 30vw, 420px);
  object-fit: cover;
  display: block;
  border-radius: 0 !important;
  padding-top: 10px;
}

.bp-banner-text {
  padding: 24px 8px 0 8px;
  text-align: center;
}

.bp-banner-text h2 {
  font-size: clamp(1.2rem, 2.5vw, 2rem);
  font-weight: 800;
  color: var(--black);
  letter-spacing: -0.5px;
  margin: 0 0 10px 0;
}

.bp-banner-text p {
  font-size: clamp(0.85rem, 1.2vw, 0.95rem);
  color: var(--mid);
  line-height: 1.7;
  margin: 0;
}


/* =============================================================
   FOOTER
   ============================================================= */

footer .footer-above {
  background-color: #292929;
  padding: clamp(20px, 4vw, 30px) clamp(16px, 4vw, 40px) !important;
  border-top: 10px solid var(--green);
}

.footer-mod {
  padding: 8px 0;
}

.footer-mod h4 {
  color: var(--white) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  margin: 0 0 14px 0 !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(255,255,255,0.12) !important;
}

.footer-mod p {
  color: rgba(255,255,255,0.55) !important;
  font-size: 0.88rem !important;
  line-height: 1.8 !important;
  margin: 0 0 6px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  white-space: normal !important;
  word-break: break-word !important;
  flex-wrap: wrap !important;
}

.footer-mod a {
  color: rgba(255,255,255,0.55) !important;
  text-decoration: none !important;
  word-break: break-word !important;
}

.footer-mod a:hover {
  color: var(--white) !important;
}

#footer,
.footer,
#dnn_footer,
.footer-wrapper {
  background: var(--black) !important;
  padding: clamp(28px, 5vw, 48px) clamp(16px, 4vw, 40px) clamp(16px, 3vw, 24px) !important;
  margin-top: clamp(32px, 5vw, 60px) !important;
}

.dnnCopyright,
#dnn_dnnCOPYRIGHT {
  color: rgba(255,255,255,0.2) !important;
  font-size: 0.78rem !important;
  border-top: 1px solid rgba(255,255,255,0.08) !important;
  padding-top: 20px !important;
  margin-top: 32px !important;
  text-align: center !important;
}


/* =============================================================
   SCROLLBAR
   ============================================================= */

::-webkit-scrollbar       { width: 7px; height: 7px; }
::-webkit-scrollbar-track { background: var(--lighter); }
::-webkit-scrollbar-thumb { background: #bbb; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--black); }

/* Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: #bbb var(--lighter);
}


/* =============================================================
   RESZPONZÍV TÖRÉSPONTOK
   Breakpoint stratégia:
   - 1280px: nagy tablet / kis desktop
   - 1024px: tablet landscape
   - 900px:  tablet portrait (3 oszlop -> 2)
   - 768px:  nagy telefon / kis tablet
   - 600px:  telefon
   - 480px:  kis telefon
   ============================================================= */

/* ===== 1280px (xl) ===== */
@media (max-width: 1280px) {
  .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 {
    flex: 0 0 calc(33.333% - 14px) !important;
    max-width: calc(33.333% - 14px) !important;
  }
}

/* ===== 1024px (lg) ===== */
@media (max-width: 1024px) {
  .container {
    padding-left: clamp(12px, 3vw, 24px) !important;
    padding-right: clamp(12px, 3vw, 24px) !important;
  }

  .hero {
    padding: 80px 20px !important;
    min-height: 400px !important;
  }

  .bp-banner img {
    height: clamp(220px, 28vw, 320px) !important;
  }

  .bp-features {
    gap: 12px !important;
  }

  .bp-feat-item {
    flex: 1 1 calc(50% - 6px) !important;
    padding: 24px 16px !important;
  }

  .eco-description-module {
    gap: 30px !important;
    padding: 30px !important;
  }

  /* Kategória oldal: 4 -> 3 oszlop */
  .hc-category .row-fluid > .col-md-3 {
    width: 33.333% !important;
    flex: 0 0 33.333% !important;
    max-width: 33.333% !important;
  }
}

/* ===== TABLET NAVBAR 768-991px - nincs hamburger,
   de a menüpontok wrap-eljenek és kisebb padding ===== */
@media (min-width: 768px) and (max-width: 991px) {
  .navbar.navbar-default {
    padding: 10px 20px !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  .navbar-nav {
    flex-wrap: wrap !important;
    justify-content: center !important;
  }

  .navbar-nav > li > a {
    padding: 8px 14px !important;
    margin: 2px !important;
    font-size: 0.85rem !important;
  }

}

/* ===== 900px (md) ===== */
@media (max-width: 900px) {
  /* Featured: 3 -> 2 oszlop */
  .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 {
    flex: 0 0 calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
  }

  /* Kategória oldal: 3 -> 2 oszlop */
  .hc-category .row-fluid > .col-md-3 {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  /* Alkategória kártyák: 3 -> 2 */
  div.col-xs-6.col-md-4.hc-category-card,
  div.col-xs-6.col-md-3.hc-category-card,
  div.hc-category-card[style],
  .hc-category-cards > div[style] {
    flex: 0 0 50% !important;
    max-width: 50% !important;
  }

  /* Eco modul column-ra vált */
  .eco-description-module {
    flex-direction: column !important;
    gap: 24px !important;
  }

  .eco-image-container {
    width: 100% !important;
    height: clamp(220px, 40vw, 300px) !important;
  }
}

/* ===== 768px (sm) - mobil break ===== */
@media (max-width: 768px) {
  body { font-size: 14px !important; }

  H1 { font-size: clamp(1.5rem, 6vw, 2rem) !important; letter-spacing: -1px !important; }
  H2 { font-size: clamp(1.2rem, 5vw, 1.6rem) !important; }
  H3 { font-size: clamp(1rem, 4vw, 1.2rem) !important; }

  /* === HERO === */
  .hero {
    padding: clamp(40px, 8vw, 60px) 16px !important;
    min-height: clamp(280px, 50vh, 350px) !important;
    margin-top: clamp(-20px, -3vw, -40px) !important;
  }

  .hero a.bp-btn {
    padding: 12px 24px !important;
    font-size: 0.85rem !important;
  }

  /* === BANNER === */
  .bp-banner img {
    height: clamp(160px, 35vw, 220px) !important;
  }

  /* === FEATURE KÁRTYÁK === */
  .bp-features {
    flex-direction: column !important;
    gap: 10px !important;
  }

  .bp-feat-item {
    flex: 1 1 100% !important;
    padding: 18px 16px !important;
    flex-direction: row !important;
    text-align: left !important;
    gap: 14px !important;
    min-height: auto !important;
  }

  .bp-feat-icon {
    font-size: 1.6rem !important;
    margin-bottom: 0 !important;
    flex-shrink: 0 !important;
  }

  .bp-feat-item h3 {
    font-size: 0.92rem !important;
    margin: 0 !important;
  }

  .bp-feat-item p {
    font-size: 0.82rem !important;
    margin: 2px 0 0 0 !important;
  }

  /* === ECO MODUL === */
  .eco-description-module {
    padding: 24px 16px !important;
    margin: 16px 0 !important;
  }

  .eco-text-content h2 {
    font-size: 1.5rem !important;
  }

  .eco-image-container {
    height: 220px !important;
  }

  /* === RÓLUNK === */
  .bp-split {
    flex-direction: column !important;
    gap: 24px !important;
    padding: 24px 0 !important;
  }

  /* === KATEGÓRIA MENÜ === */
  .ModHotcakesCategoryMenuC ul.list-unstyled {
    gap: 8px !important;
  }

  .ModHotcakesCategoryMenuC ul.list-unstyled > li > a {
    padding: 10px 16px !important;
    font-size: 0.82rem !important;
  }

  .hc-categorymenu ul li a {
    padding: 10px 18px !important;
    font-size: 0.82rem !important;
  }

  /* === FEATURED PRODUCTS === */
  .ModHotcakesFeaturedProductsC h2 {
    font-size: 1.3rem !important;
  }

  .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 .panel-heading {
    min-height: 60px !important;
    padding: 12px 12px 6px !important;
  }

  .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 .panel-body {
    height: 160px !important;
    padding: 12px !important;
  }

  .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 img {
    max-height: 140px !important;
  }

  /* === KATEGÓRIA OLDAL === */
  .hc-category h1 {
    font-size: 1.5rem !important;
    margin-bottom: 16px !important;
  }

  .hc-category .row-fluid > .col-md-3 > .panel > .panel-heading {
    min-height: 60px !important;
    padding: 10px 10px 4px !important;
  }

  .hc-category .panel-heading a {
    font-size: 0.82rem !important;
  }

  .hc-category .row-fluid > .col-md-3 > .panel > .panel-body {
    height: 150px !important;
  }

  .hc-category .row-fluid > .col-md-3 > .panel > .panel-body img {
    max-height: 130px !important;
  }

  .hc-category .panel-footer {
    padding: 10px !important;
  }

  .panel-footer a.add-to-cart-product {
    padding: 8px 10px !important;
    font-size: 0.75rem !important;
  }

  .hc-category .hc-catalog-admin {
    justify-content: center !important;
    flex-wrap: wrap !important;
  }

  .hc-category select {
    min-width: 200px !important;
    width: 100% !important;
  }

  .hc-category .pagination li a {
    padding: 8px 10px !important;
    font-size: 0.78rem !important;
  }

  /* === TERMÉK OLDAL === */
  .hc-product h1,
  .hcMvcView h1 {
    font-size: 1.5rem !important;
  }

  .hc-product .dnnPrimaryAction {
    padding: 12px 20px !important;
    font-size: 0.88rem !important;
    width: 100% !important;
    text-align: center !important;
  }

  .hc-product .dnnSecondaryAction {
    width: 100% !important;
    text-align: center !important;
    margin-left: 0 !important;
    margin-top: 10px !important;
  }

  .hc-related-items .panel-footer a {
    max-width: 100% !important;
  }

  /* === KOSÁR === */
  .ModHotcakesCartC img {
    max-width: 60px !important;
  }

  .ModHotcakesCartC input[type="text"],
  .ModHotcakesCartC input[type="number"] {
    width: 50px !important;
    padding: 6px 4px !important;
  }

  .hc-cart-actions ul.dnnActions {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .hc-action-keepshopping a,
  li.hc-action-keepshopping a {
    width: 100% !important;
    text-align: center !important;
    justify-content: center !important;
    padding: 14px 20px !important;
  }

  .hc-action-checkout input[type="submit"],
  li.hc-action-checkout input[type="submit"] {
    width: 100% !important;
    padding: 14px 20px !important;
  }

  /* === FOOTER === */
  .footer-mod h4 { font-size: 0.68rem !important; }
  .footer-mod p { font-size: 0.82rem !important; }

  .LoginPanel { padding: 24px 20px !important; }
}

/* =============================================================
   NAVBAR MOBIL - 767px (Bootstrap 3 sync!)
   A Bootstrap 3 csak ≤767px-en rendereli ki a .navbar-header DOM
   elemet és aktiválja a collapse JS-t. Ezért külön break point.
   ============================================================= */
@media (max-width: 767px) {
  .navbar.navbar-default {
    flex-wrap: wrap !important;
    padding: 10px 16px !important;
    gap: 8px !important;
    justify-content: space-between !important;
    /* Relative position kell az absolute panelnek */
    position: sticky !important;
    top: 0 !important;
  }

  /* Hamburger megjelenítése */
  .navbar-header {
    display: flex !important;
    align-items: center !important;
    order: 3 !important;
    float: none !important;
    margin: 0 !important;
  }

  /* Menü panel: KIVÉVE a flex layout-ból, abszolút pozícióval
     a navbar alatt - így biztosan 100% széles, nem zavar bele
     a Bootstrap pull-right + flex bug */
  #navbar.navbar-collapse,
  #navbar.navbar-collapse.pull-right {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    border-top: 1px solid var(--border) !important;
    background: var(--white) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08) !important;
    border-radius: 0 0 8px 8px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    float: none !important;
    z-index: 1001 !important;
  }

  #navbar.navbar-collapse.in,
  #navbar.navbar-collapse.show,
  #navbar.navbar-collapse.collapsing,
  #navbar.navbar-collapse.pull-right.in,
  #navbar.navbar-collapse.pull-right.show {
    display: block !important;
    max-height: 75vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* TRANSPARENT BACKGROUND minden gyerek elemen, hogy a DNN
     dark .OtherTabs / .MainMenu_MenuContainer NE üssön át */
  #navbar.navbar-collapse,
  #navbar.navbar-collapse > *,
  #dnnMenu,
  #dnnMenu > *,
  .navbar-nav,
  .navbar-nav > li,
  .navbar-nav > li > a,
  .navbar-nav > li > a.OtherTabs,
  .navbar-nav > li > a.SelectedTab,
  .navbar-nav .MainMenu_MenuContainer,
  .navbar-nav .MainMenu_MenuBar,
  .navbar-nav .MainMenu_MenuItem,
  .navbar-nav .MainMenu_MenuItemSel {
    background: transparent !important;
    background-color: transparent !important;
  }

  #navbar.navbar-collapse {
    background: var(--white) !important;
  }

  /* dnnMenu wrapper full-width */
  #dnnMenu {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .navbar-nav {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    float: none !important;
  }

  .navbar-nav > li {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    list-style: none !important;
    display: block !important;
    border: none !important;
  }

  .navbar-nav > li > a,
  .navbar-nav > li > a.OtherTabs,
  .navbar-nav > li > a.SelectedTab {
    padding: 12px 20px !important;
    margin: 0 !important;
    width: 100% !important;
    display: block !important;
    min-height: 44px !important;
    line-height: 1.4 !important;
    border-radius: 0 !important;
    border: none !important;
    border-bottom: 1px solid var(--border) !important;
    color: var(--black) !important;
    font-size: 0.92rem !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
    float: none !important;
  }

  .navbar-nav > li:last-child > a {
    border-bottom: none !important;
  }

  .navbar-nav > li > a::after {
    display: none !important;
  }

  .navbar-nav > li > a:hover,
  .navbar-nav > li > a:focus,
  .navbar-nav > li > a.SelectedTab,
  .navbar-nav > li.active > a {
    background: var(--green-soft) !important;
    background-color: var(--green-soft) !important;
    color: var(--green) !important;
  }

  /* Dropdown caret szépítés - "+" / üres span helyett szép háromszög */
  .navbar-nav > li > a .caret,
  .navbar-nav .dropdown-toggle .caret {
    border: none !important;
    background: transparent !important;
    width: 0 !important;
    height: 0 !important;
    margin-left: 6px !important;
    color: var(--gray) !important;
    font-size: 0 !important;
    vertical-align: middle !important;
    display: inline-block !important;
    border-top: 5px solid var(--gray) !important;
    border-right: 5px solid transparent !important;
    border-left: 5px solid transparent !important;
    content: '' !important;
  }

  /* Mobil dropdown - submenük indented, light háttér */
  .navbar-nav .dropdown-menu {
    position: static !important;
    float: none !important;
    width: 100% !important;
    box-shadow: none !important;
    border: none !important;
    background: var(--lighter) !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    max-width: 100% !important;
    list-style: none !important;
  }

  .navbar-nav .dropdown-menu > li {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    display: block !important;
    width: 100% !important;
    float: none !important;
  }

  .navbar-nav .dropdown-menu > li > a,
  .navbar-nav .dropdown-menu .dropdown-item {
    padding: 10px 20px 10px 40px !important;
    font-size: 0.85rem !important;
    background: transparent !important;
    color: var(--mid) !important;
    border-radius: 0 !important;
    border-bottom: 1px solid var(--border) !important;
    min-height: 36px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    float: none !important;
  }

  .navbar-nav .dropdown-menu > li:last-child > a {
    border-bottom: none !important;
  }
}

/* ===== 600px - kisebb mobil ===== */
@media (max-width: 600px) {
  /* Featured: 2 oszlop marad, de kisebb padding */
  .ModHotcakesFeaturedProductsC .row-fluid {
    gap: 8px !important;
  }
}

/* ===== 480px - extra kicsi ===== */
@media (max-width: 480px) {
  .hero {
    padding: 40px 12px !important;
    min-height: 260px !important;
  }

  .hero p {
    padding: 0 8px !important;
  }

  /* Featured: 2 -> 1 oszlop */
  .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* Kategória oldal: 2 -> 1 oszlop */
  .hc-category .row-fluid > .col-md-3 {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* Alkategória kártyák: 2 -> 1 */
  div.col-xs-6.col-md-4.hc-category-card,
  div.col-xs-6.col-md-3.hc-category-card,
  div.hc-category-card[style],
  .hc-category-cards > div[style] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  /* Kategória menü: oszlop felsorolás */
  .ModHotcakesCategoryMenuC ul.list-unstyled {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .ModHotcakesCategoryMenuC ul.list-unstyled > li > a {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
  }

  .hc-categorymenu ul {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .hc-categorymenu ul li {
    width: 100% !important;
  }

  .hc-categorymenu ul li a {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
  }

  /* Eco modul */
  .eco-description-module {
    padding: 18px 14px !important;
    margin: 12px 0 !important;
  }

  .eco-text-content h2 {
    font-size: 1.3rem !important;
  }

  .eco-image-container {
    height: 180px !important;
  }

  .bp-banner img {
    height: 160px !important;
  }

  .hcMvcView .breadcrumb,
  .hc-category .breadcrumb {
    padding: 10px 12px !important;
    font-size: 0.75rem !important;
  }

  .hc-category select {
    min-width: 100% !important;
    width: 100% !important;
  }

  .hc-category .hc-catalog-admin {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .hc-category .hc-catalog-admin label {
    text-align: center !important;
  }

  .ModHotcakesCartC .dnnSecondaryAction {
    padding: 6px 10px !important;
    font-size: 0.75rem !important;
  }

  /* Kosár táblázat: vízszintes scroll kis képernyőn */
  .ModHotcakesCartC table {
    font-size: 0.8rem !important;
  }

  /* Kapcsolódó termékek - 1 oszlop kis mobilon */
  .hc-related-items .row-fluid > [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
}

/* ===== 380px és kisebb - extra kompakt ===== */
@media (max-width: 380px) {
  H1 { font-size: 1.4rem !important; }

  .hero {
    padding: 32px 10px !important;
    min-height: 240px !important;
  }

  .hero h1 {
    font-size: 1.3rem !important;
  }

  .hero p {
    font-size: 0.78rem !important;
  }

  .navbar.navbar-default {
    padding: 8px 12px !important;
  }

  .footer-mod p {
    font-size: 0.78rem !important;
  }
}


/* =============================================================
   PRINT STÍLUSOK
   ============================================================= */

@media print {
  .navbar,
  #topHeader,
  .bp-banner,
  .hero-overlay,
  footer,
  .footer,
  .hc-cart-actions,
  .ModHotcakesFeaturedProductsC,
  .hc-related-items {
    display: none !important;
  }

  body {
    background: white !important;
    color: black !important;
  }

  a {
    text-decoration: underline !important;
    color: black !important;
  }
}
/* =========================================
   1. NAVBAR VASTAGÍTÁSA ÉS LOGÓ NAGYÍTÁSA
   ========================================= */

/* A "léc" vastagítása a belső margók (padding) növelésével */
.navbar.navbar-default {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
}

/* Logó még nagyobbra vétele */
#dnn_dnnLOGO_imgLogo {
    height: 80px !important;         /* Magasság növelése */
    transform: scale(2.2) !important; /* A "nagyító trükk" felhúzva 2.2-re */
    transform-origin: left center !important;
}


/* =========================================
   2. BEJELENTKEZÉS KERETÉNEK ELTÜNTETÉSE
   ========================================= */

/* A jobb felső sarokban lévő minden elemről levesszük a keretet és a hátteret */
#topHeader, 
#topHeader table, 
#topHeader td, 
#topHeader th, 
#topHeader div {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
}


/* =========================================
   3. A NAGYÍTÓ ÉS A KERESŐ ELREJTÉSE
   ========================================= */

/* Eltüntetjük a DNN beépített kereső modulját (a beviteli mezőt és a nagyítót is) */
#dnn_dnnSearch,
#dnn_dnnSEARCH,
.SearchContainer,
#topHeader input[type="text"],
#topHeader a[title="Search"],
#topHeader .search-button,
#topHeader img[src*="search"],
#topHeader .dnnSearch {
    display: none !important;
}

/* =========================================
   A TELJES KERESŐ ÉS MINDEN CSÍK/KERET ELTÜNTETÉSE
   ========================================= */

/* 1. Keresőmező, nagyító gomb és ikonok elrejtése - minden lehetséges DNN néven */
#dnn_dnnSEARCH, 
#dnn_dnnSearch, 
.SearchContainer, 
.search-container,
#topHeader .search,
#topHeader input,
#topHeader a.SearchButton,
#topHeader a[title*="Search"],
#topHeader a[title*="Keres"],
#topHeader img[src*="search"],
#topHeader button,
.dnnSearch {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
}

/* 2. Az összes függőleges vonal (csík) és keret nullázása a jobb felső sarokban */
#topHeader,
#topHeader * {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* 3. A tipikus DNN elválasztó karakterek (pl. a "|" vonal) és mikró-ikonok eltüntetése */
#topHeader .Separator,
#topHeader .separator,
#topHeader .divider,
#topHeader img:not([src*="avatar"]):not([src*="profile"]) {
    display: none !important;
}

/* =========================================
   A JOBB FELSŐ SIZTI (KERESŐ, ÉRTESÍTÉSEK, CSÍKOK) ELTÜNTETÉSE
   ========================================= */

/* 1. Kereső elrejtése */
.search.hidden-xs,
#search-action {
    display: none !important;
}

/* 2. Nyelvválasztó elrejtése (ha nem használjátok) */
.language {
    display: none !important;
}

/* 3. Az üzenetek és értesítések (a fura ikonok a név előtt) elrejtése */
#dnn_dnnUser_messageGroup,
#dnn_dnnUser_notificationGroup {
    display: none !important;
}

/* 4. A teljes jobb felső doboz (topHeader) kereteinek és hátterének nullázása */
#topHeader {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 5. A gombok (ButtonGroup) körüli minden csík és formázás nullázása */
ul.buttonGroup, 
ul.buttonGroup li {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 6. A linkek (a nevek és a kijelentkezés) alapformázása */
ul.buttonGroup a {
    border: none !important;
    background: transparent !important;
    padding: 5px 10px !important; /* Kis térköz, hogy ne folyjanak össze */
}

/* 7. Ha esetleg a profilkép (avatar) is zavaró, ezzel tudod elrejteni (opcionális): */
#dnn_dnnUser_avatarGroup {
    display: none !important;
}

/* =========================================
   A VÉGSŐ FINOMHANGOLÁS: AZ UTOLSÓ HALVÁNY VONAL ELTÜNTETÉSE
   ========================================= */

body #topHeader, 
#siteWrapper #topHeader, 
div#topHeader,
#topHeader .container,
#topHeader .row {
    border: none !important;
    border-bottom: none !important;
    border-top: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* =========================================
   A JOBB FELSŐ SIZTI (FIÓK ÉS KIJELENTKEZÉS) MODERNIZÁLÁSA
   ========================================= */

/* 1. Tökéletes középre igazítás és egymás mellé rendezés */
#topHeader #login {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important; /* Távolság a két gomb között */
}

#topHeader .loginGroup, 
#topHeader .registerGroup {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

#topHeader ul.buttonGroup {
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. A linkek alapformázása (lekerekített sarkok, szép betűtípus) */
#topHeader #login a {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.88rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    transition: all 0.3s ease !important;
    border: 2px solid transparent !important;
    color: var(--dark) !important; /* Vagy simán #333, ha a változó nem élne itt */
}

/* 3. A korábbi furcsa zöld aláhúzás eltüntetése INNEN */
#topHeader #login a::after {
    display: none !important;
}

/* 4. A "SuperUser Account" (Fiók) gomb hover effektje: finom zöldes háttér */
#topHeader #login a:hover {
    color: var(--green) !important;
    background: rgba(76, 175, 80, 0.08) !important; /* Nagyon halvány zöld */
}

/* 5. A "Kijelentkezés/Bejelentkezés" extra kiemelése (Zöld keretes gomb) */
#topHeader #dnn_dnnLogin_loginGroup a {
    border-color: var(--green) !important;
    color: var(--green) !important;
    background: transparent !important;
}

/* Kijelentkezés gomb hover: Teljesen zöld lesz, és picit felemelkedik */
#topHeader #dnn_dnnLogin_loginGroup a:hover {
    background: var(--green) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
    transform: translateY(-2px) !important;
}


/* =========================================
   BEJELENTKEZÉS ÉS REGISZTRÁCIÓ GOMBOK (VENDÉG ÁLLAPOT)
   ========================================= */

/* 1. Közös alap (méret, betűtípus, lekerekítés, hogy tökéletesen egyformák legyenek az arányok) */
#topHeader .loginGroup a,
#topHeader .registerGroup a {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.88rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 8px 16px !important;
    border-radius: 8px !important;
    transition: all 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* 2. BEJELENTKEZÉS: Másodlagos gomb (Átlátszó háttér, zöld keret) */
#topHeader .loginGroup a {
    background: transparent !important;
    color: var(--green) !important;
    border: 2px solid var(--green) !important;
}

#topHeader .loginGroup a:hover {
    background: var(--green-soft) !important; /* Finom halványzöld hover */
    color: var(--green-dark) !important;
}

/* 3. REGISZTRÁCIÓ: Elsődleges gomb (Teli zöld háttér, fehér szöveg) */
#topHeader .registerGroup a {
    background: var(--green) !important;
    color: #ffffff !important;
    border: 2px solid var(--green) !important; /* Ugyanaz a vastagság, hogy egy magasságban legyenek */
}

#topHeader .registerGroup a:hover {
    background: var(--green-dark) !important;
    border-color: var(--green-dark) !important;
    box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
    transform: translateY(-2px) !important; /* Pici felemelkedés hovernél */
}

/* =========================================
   A TÖKÉLETES "MIDDLE GROUND" DIZÁJN
   (Regisztráció/Név vs. Bejelentkezés/Kijelentkezés)
   ========================================= */

/* 1. Flexbox és sorrend (Név/Regisztráció balra, Be/Kijelentkezés jobbra) */
#topHeader #login {
    display: flex !important;
    gap: 12px !important;
    justify-content: flex-end !important;
    align-items: center !important;
}

#topHeader .loginGroup { 
    order: 2 !important; 
}

#topHeader .registerGroup { 
    order: 1 !important; 
}

/* 2. REGISZTRÁCIÓ / BEJELENTKEZETT NÉV KÖZÖS STÍLUSA (Elegáns szöveges link) */
#topHeader .registerGroup a {
    background: transparent !important;
    color: var(--dark) !important; /* Sötétszürke szöveg */
    border: 2px solid transparent !important; /* A keret csak a méret megtartása miatt kell */
    border-radius: 8px !important;
    padding: 8px 12px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.88rem !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    
    /* Újra kattintható mindkettő! */
    cursor: pointer !important; 
    pointer-events: auto !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Közös finom hover effekt (ráhúzáskor halványzöld lesz a háttér és zöld a szöveg) */
#topHeader .registerGroup a:hover {
    color: var(--green) !important;
    background: var(--green-soft) !important; 
}

/* 3. BEJELENTKEZÉS / KIJELENTKEZÉS KÖZÖS STÍLUSA (Zöld keretes gomb) */
#topHeader .loginGroup a {
    background: transparent !important;
    color: var(--green) !important;
    border: 2px solid var(--green) !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.88rem !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* Zöld keretes gomb hover (Teli zöld lesz) */
#topHeader .loginGroup a:hover {
    background: var(--green) !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
    transform: translateY(-2px) !important;
}


/* =========================================
   REGISZTRÁCIÓS MEGJEGYZÉS DOBOZ ELTÜNTETÉSE
   ========================================= */

#dnn_ctr_Register_RegistrationForm .dnnFormMessage,
.dnnRegistrationForm .dnnFormMessage,
.dnnFormMessage.dnnFormInfo {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* topHeader kompakt sáv a navbar felett */
#topHeader {
    background: #f8f9fa !important;
    padding: 4px 15px !important;
    text-align: right !important;
    border-bottom: 1px solid #eee !important;
}

#topHeader .loginGroup a,
#topHeader .registerGroup a {
    padding: 4px 10px !important;
    font-size: 0.8rem !important;
}
#topHeader {
    width: 100% !important;
    text-align: right !important;
    border-bottom: 2px solid #eee !important;
    padding: 4px 15px !important;
}

#topHeader .container {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    justify-content: flex-end !important;
    padding: 0 15px !important;
}

.navbar.navbar-default {
    border-top: 2px solid #eee !important;
}

#topHeader {
    width: 100% !important;
    display: flex !important;
    justify-content: flex-end !important;
    padding-right: 0 !important;
}

#topHeader > .container {
    margin-left: auto !important;
    margin-right: 0 !important;
}

#topHeader .container {
    width: auto !important;
    max-width: none !important;
    display: inline-flex !important;
    justify-content: flex-end !important;
    padding: 6px 15px !important;
    border-left: 2px solid #eee !important;
    border-bottom: 2px solid #eee !important;
    border-bottom-left-radius: 8px !important;
    background: white !important;
}

#topHeader .container {
    padding: 4px 10px !important;
    border-left: 2px solid #eee !important;
    border-bottom: 2px solid #eee !important;
    border-bottom-left-radius: 8px !important;
    background: white !important;
    width: auto !important;
    max-width: none !important;
    display: inline-flex !important;
}

#topHeader #login a {
    padding: 4px 8px !important;
    font-size: 0.78rem !important;
}

@media (max-width: 768px) {
    #topHeader {
        padding: 4px 8px !important;
    }

    #topHeader .container {
        padding: 3px 8px !important;
        width: auto !important;
    }

    #topHeader #login a {
        padding: 3px 6px !important;
        font-size: 0.72rem !important;
    }
    #dnn_dnnLOGO_imgLogo {
        height: 50px !important;
        width: auto !important;
    }

    #mainHeader-inner.container {
        padding: 8px 12px !important;
    }

    .navbar.navbar-default {
        padding: 0 0 0 0 !important;
    }

    #mainHeader-inner.container {
        padding: 0 0 0 0 !important;
    }

}

    .navbar.navbar-default {
    padding-top: 40px !important;
}

@media (max-width: 768px) {
  #topHeader {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
  }

  /* Hogy a tartalom ne csússzon a fixed header alá */
  #siteWrapper {
    padding-top: 60px !important; /* a topHeader magasságától függ */
  }
}

.hc-rating {
    background-image: url('/Portals/0/ReviewStars.png') !important;
}

.hc-product .hc-rating-wrapper,.hcMvcView .hc-rating-wrapper, hc-rating-wrapper {
    vertical-align: -17px !important; 
}

/* A Pinterest gomb elrejtése */
span[class^="PIN_"] {
    display: none !important;
}

/* Az X (Twitter) Post gomb elrejtése */
iframe[src*="platform.twitter"] {
    display: none !important;
}

/* Megtörjük a Bootstrap rácsrendszerét, hogy ne oszlopokba rendezze az űrlapot */
#hcProductDetails .col-sm-4, 
#hcProductDetails .col-sm-8,
#hcPriceWrapper .col-sm-4, 
#hcPriceWrapper .col-sm-8 {
    width: auto !important;
    float: none !important;
    padding-left: 0 !important;
}

/* Flexboxszal egymás mellé és balra húzzuk a tartalmakat */
#hcProductDetails .form-group,
#hcPriceWrapper .form-group {
    display: flex !important;
    align-items: center !important;
    margin-left: 0 !important;
    margin-bottom: 10px !important; /* Pici térköz a sorok közé */
}

/* Címkék (Cikkszám, Ár, Mennyiség) egységesítése */
#hcProductDetails .control-label,
#hcPriceWrapper .control-label {
    min-width: 120px !important; /* Ez felel azért, hogy az adatok (pl. az ár és az ID) egy vonalban induljanak */
    text-align: left !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-right: 15px !important;
}

/* Gombok és beviteli mezők balra húzása (eltüntetjük a láthatatlan oszlopot) */
#hcProductDetails [class*="offset-"],
#hcPriceWrapper [class*="offset-"] {
    margin-left: 0 !important;
}

/* 1. A gombokat befelé toló üres margó (offset) KILÖVÉSE */
.hc-product-details .form-horizontal .col-xs-offset-4 {
    margin-left: 0 !important;
}

/* 2. Az oszlopok beépített szélességének és lebegésének (float) megszüntetése */
.hc-product-details .form-horizontal .col-sm-4,
.hc-product-details .form-horizontal .col-sm-8,
.hc-product-details .form-horizontal .col-xs-8 {
    float: none !important;
    width: auto !important;
    padding-left: 0 !important; /* Belső bal margó eltávolítása */
}

/* 3. A sorok egymás mellé rendezése Flexbox segítségével */
.hc-product-details .form-horizontal .form-group,
.hc-product-details .form-horizontal .row {
    display: flex !important;
    align-items: center !important; /* Függőlegesen középre igazítja a szöveget a mezővel */
    margin-left: 0 !important;
    margin-bottom: 12px !important; /* Egy kis térköz a sorok közé */
}

/* 4. A címkék (Cikkszám, Eredeti ár, stb.) egységes balra zárása */
.hc-product-details .form-horizontal .control-label {
    text-align: left !important;
    min-width: 140px !important; /* Ez a fix távolság biztosítja, hogy a jobb oldali adatok egy vonalban induljanak */
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-right: 15px !important; /* Távolság a címke és az érték között */
}

/* 5. A mennyiség mező és a Kosárba gomb tartályának finomhangolása */
#hcProductAction .form-group {
    margin-bottom: 0 !important;
}

/* 1. Minden bal oldali belső behúzás (padding) és margó szigorú nullázása */
.hc-product-details .form-horizontal .form-group,
.hc-product-details .form-horizontal [class*="col-"],
.hc-product-details .form-horizontal label,
.hc-product-details .form-horizontal .control-label {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* 2. Címkék betonbiztos rögzítése, hogy az adatok (ID, Ár) nyílegyenesen álljanak */
.hc-product-details .form-horizontal label,
.hc-product-details .form-horizontal .control-label {
    flex: 0 0 140px !important; /* Ez kényszeríti ki a fix szélességet minden feliratnál */
    max-width: 140px !important;
    width: 140px !important;
    text-align: left !important;
    padding-right: 10px !important;
}

/* 3. A Kosárba és a Kívánságlista gombok elrendezése */
#hcProductAction .form-group {
    display: flex !important;
    align-items: center !important; /* Középre igazítja őket egy vonalba */
    gap: 15px !important; /* Elegáns 15 pixeles űr a két gomb közé */
    flex-wrap: wrap !important; /* Ha mobilon nem férnek ki, szépen egymás alá ugranak */
    margin-top: 10px !important;
}

/* Gombok resetelése, hogy ne tolják el magukat semmilyen irányba */
#hcProductAction input[type="submit"],
#hcProductAction .btn {
    margin: 0 !important;
}
/* A Kívánságlista gomb felső margójának nullázása a tökéletes szintre hozáshoz */
#hcProductActions.form-group input#savelaterbutton, .form-group input#savelaterbutton {
    margin-top: 0 !important;
}

/* A szállítási díj kalkulálása gomb elrejtése */
a.btn.hc-popup {
    display: none !important;
}

/* A kosár táblázat fejlécében lévő szövegek színének javítása */
.hc-cart table tr.dnnGridHeader td,
.hc-cart table tr.dnnGridHeader th {
    color: #555555 !important;
}


/* Cím FIX magasság: minden kártyán azonos, hogy a kép azonos vonalban legyen.
   A Hotcakes a címet <h2><a>SZÖVEG</a></h2> struktúrában rendereli.
   A h2-nek alap margin-ja van, ami "kilóg" a clamp területéből - resetelni kell. */
.hc-related-items .panel-heading {
  background: var(--white) !important;
  border-bottom: none !important;
  padding: 14px 18px !important;
  height: 110px !important;
  min-height: 110px !important;
  max-height: 110px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  overflow: hidden !important;
}

/* A h2 reset - alapból van rajta margin, ami torzítja a layoutot */
.hc-related-items .panel-heading h2,
.hc-related-items .panel-heading h3,
.hc-related-items .panel-heading h4 {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  width: 100% !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  display: block !important;
}

/* Line-clamp 3 sorra (110px / 1.4 line-height / ~14.7px font = max 3 sor)
   Az <a> a tényleges szöveg-konténer */
.hc-related-items .panel-heading a,
.hc-related-items .panel-heading > a,
.hc-related-items .panel-heading h2 a,
.hc-related-items .panel-heading h3 a,
.hc-related-items .panel-heading h4 a,
.hc-related-items .panel-heading span {
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: var(--dark) !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  line-clamp: 3 !important;
  line-height: 1.4 !important;
  width: 100% !important;
  word-wrap: break-word !important;
  word-break: break-word !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

/* Footer 4 oszlop */
.footer-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  width: 100% !important;
}

.footer-grid .footer-mod {
  flex: 1 1 200px !important;
  min-width: 0 !important;
}


/* Üres DNN footer pane-ek elrejtése */
footer .footer-above [class*="col-"]:empty {
  display: none !important;
}

/* A tartalmas pane teljes szélességre */
footer .footer-above [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  padding: 0 !important;
  flex: none !important;
}

/* A DNNModuleContent is 100% */
footer .footer-above .DNNModuleContent {
  width: 100% !important;
}


/* Footer grid javítások */
.footer-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  gap: 0 !important;
}

.footer-grid .footer-mod {
  flex: 1 1 0 !important;
  min-width: 0 !important;          /* Ez véd az overflow ellen */
  overflow: hidden !important;       /* Iframe ne lógjon ki */
  padding: 20px 24px !important;    /* Belső margó */
  border-right: 1px solid rgba(255,255,255,0.08) !important;
}

.footer-grid .footer-mod:last-child {
  border-right: none !important;
}

/* Iframe maradjon a dobozon belül */
.footer-grid .footer-mod iframe {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}



.aszf-hero {
  background: #f5f5f5;
  border-left: 5px solid #4caf50;
  border-radius: 12px;
  padding: 48px 40px;
  margin-bottom: 32px;
  text-align: center;
}

.aszf-hero-inner {
  max-width: 700px;
  margin: 0 auto;
}

.aszf-badge {
  display: inline-block;
  background: rgba(76,175,80,0.12);
  color: #388e3c;
  border: 1px solid rgba(76,175,80,0.3);
  border-radius: 100px;
  padding: 4px 14px;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  margin-bottom: 16px;
}

.aszf-hero h1 {
  color: #1a1a1a !important;
  font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.5px !important;
  margin: 0 0 16px 0 !important;
  line-height: 1.2 !important;
}

.aszf-hero p {
  color: #888 !important;
  font-size: 0.95rem !important;
  line-height: 1.7 !important;
  margin: 0 0 24px 0 !important;
}

.aszf-meta {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  justify-content: center;
}

.aszf-meta span {
  color: #aaa;
  font-size: 0.82rem;
  font-weight: 500;
}



.aszf-content {
  max-width: 860px;
  margin: 0 auto;
  padding: 0 16px 48px;
  font-family: 'Montserrat', sans-serif;
}
 
.aszf-intro {
  font-size: 1.05rem;
  color: #555;
  line-height: 1.8;
  border-left: 4px solid #4caf50;
  padding: 16px 20px;
  background: #f9fdf9;
  border-radius: 0 10px 10px 0;
  margin: 0;
}
 
.aszf-section {
  margin-bottom: 36px;
  padding-bottom: 36px;
  border-bottom: 1px solid #f0f0f0;
}
 
.aszf-section:last-of-type {
  border-bottom: none;
}
 
.aszf-section-title {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}
 
.aszf-section-title::before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 18px;
  background: #4caf50;
  border-radius: 2px;
  flex-shrink: 0;
}
 
.aszf-section p {
  color: #555;
  font-size: 0.93rem;
  line-height: 1.8;
  margin: 0 0 12px 0;
}
 
.aszf-list {
  list-style: none;
  padding: 0;
  margin: 16px 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
 
.aszf-list li {
  padding: 10px 16px 10px 44px !important;
  background: #f8f8f8;
  border-radius: 8px;
  font-size: 0.88rem !important;
  color: #555 !important;
  line-height: 1.5 !important;
  position: relative;
  border: none !important;
}
 
.aszf-list li::before {
  content: '✕';
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #e53935;
  font-size: 0.75rem;
  font-weight: 700;
}
 
.aszf-warning {
  background: #fff8e1;
  border: 1px solid #ffe082;
  border-radius: 10px;
  padding: 16px 20px;
  margin-bottom: 14px;
}
 
.aszf-warning p {
  margin: 0 !important;
  color: #795548 !important;
  font-size: 0.9rem !important;
}
 
.aszf-contact {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #f5f5f5;
  border-radius: 10px;
  padding: 16px 20px;
  font-size: 0.88rem;
  color: #555;
  flex-wrap: wrap;
}
 
.aszf-contact a {
  color: #4caf50 !important;
  font-weight: 600;
  text-decoration: none !important;
}
 
.aszf-contact a:hover {
  text-decoration: underline !important;
}


/* =============================================================
   KÍVÁNSÁGLISTA
   ============================================================= */

.ModHotcakesWishListC h1 {
  font-size: clamp(1.4rem, 3vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
  margin-bottom: 28px !important;
}

/* Vásárlás folytatása */
.ModHotcakesWishListC ul.dnnActions {
  list-style: none !important;
  padding: 0 !important;
  margin-bottom: 20px !important;
  text-align: right !important;
}
.ModHotcakesWishListC ul.dnnActions li {
  display: inline-block !important;
  list-style: none !important;
}
.ModHotcakesWishListC ul.dnnActions a,
.ModHotcakesWishListC ul.dnnActions input[type="submit"] {
  background: var(--white) !important;
  background-image: none !important;
  color: var(--green) !important;
  border: 2px solid var(--green) !important;
  border-radius: 8px !important;
  padding: 9px 18px !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: all 0.25s ease !important;
  box-shadow: none !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
}
.ModHotcakesWishListC ul.dnnActions a:hover,
.ModHotcakesWishListC ul.dnnActions input[type="submit"]:hover {
  background: var(--green) !important;
  color: var(--white) !important;
}

/* Termék kártya */
.ModHotcakesWishListC .hc-wish-item {
  position: relative !important;
  background: var(--white) !important;
  border: 1px solid #eee !important;
  border-radius: 14px !important;
  padding: 20px 320px 20px 20px !important;
  margin-bottom: 16px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important;
  overflow: hidden !important;
  min-height: 140px !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}
.ModHotcakesWishListC .hc-wish-item:hover {
  border-color: var(--green) !important;
  box-shadow: 0 8px 28px rgba(76,175,80,0.12) !important;
}

/* Kép */
.ModHotcakesWishListC .hc-wish-item img {
  float: left !important;
  width: 140px !important;
  height: 140px !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  border: 1px solid #f0f0f0 !important;
  background: #fafafa !important;
  padding: 8px !important;
  margin-right: 20px !important;
  display: block !important;
}

/* Cím */
.ModHotcakesWishListC .hc-wish-item h2 {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  border: none !important;
  float: none !important;
  width: auto !important;
  text-align: left !important;
}
.ModHotcakesWishListC .hc-wish-item h2 a {
  color: var(--dark) !important;
  text-decoration: none !important;
}
.ModHotcakesWishListC .hc-wish-item h2 a:hover {
  color: var(--green) !important;
}

/* Leírás — max 3 sor */
.ModHotcakesWishListC .hc-wish-item p {
  font-size: 0.85rem !important;
  color: #999 !important;
  line-height: 1.65 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  max-height: 4.95em !important;
  margin: 0 !important;
  text-align: left !important;
}

/* Jobb panel */
.ModHotcakesWishListC .col-xs-4.pull-right {
  position: absolute !important;
  right: 20px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  float: none !important;
  width: 300px !important;
  padding: 0 !important;
}
.ModHotcakesWishListC .col-xs-4.pull-right .col-xs-12 {
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
}

/* 2×2 grid */
.ModHotcakesWishListC .col-xs-4.pull-right .form-inline,
.ModHotcakesWishListC .col-xs-4.pull-right .control-inline {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  grid-template-rows: auto auto !important;
  align-items: center !important;
  gap: 8px 16px !important;
  width: 100% !important;
  float: none !important;
  padding: 0 !important;
}

/* 1. cella: Ár felirat (1. gyerek) → sor1/oszlop1 */
.ModHotcakesWishListC .form-inline.control-inline > *:nth-child(1) {
  grid-row: 1 !important;
  grid-column: 1 !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.2px !important;
  color: var(--gray) !important;
  text-align: right !important;
  white-space: nowrap !important;
  float: none !important;
  width: auto !important;
  padding: 0 !important;
}

/* 2. cella: Ár szám (2. gyerek) → sor2/oszlop1 */
.ModHotcakesWishListC .form-inline.control-inline > *:nth-child(2) {
  grid-row: 2 !important;
  grid-column: 1 !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
  white-space: nowrap !important;
  text-align: right !important;
  float: none !important;
  width: auto !important;
  padding: 0 !important;
}

/* 3. cella: Kosárba (3. gyerek) → sor1/oszlop2 */
.ModHotcakesWishListC .form-inline.control-inline > *:nth-child(3) {
  grid-row: 1 !important;
  grid-column: 2 !important;
  float: none !important;
  width: auto !important;
  padding: 0 !important;
}

/* 4. cella: Eltávolítás (4. gyerek) → sor2/oszlop2 */
.ModHotcakesWishListC .form-inline.control-inline > *:nth-child(4) {
  grid-row: 2 !important;
  grid-column: 2 !important;
  float: none !important;
  width: auto !important;
  padding: 0 !important;
  text-align: right !important;
}

/* Kosárba gomb */
.ModHotcakesWishListC input.btn-primary,
.ModHotcakesWishListC input.btn.btn-primary.btn-sm {
  background: var(--green) !important;
  background-image: none !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 9px 16px !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: 0 3px 10px rgba(76,175,80,0.2) !important;
  transition: all 0.25s ease !important;
  -webkit-appearance: none !important;
}
.ModHotcakesWishListC input.btn-primary:hover {
  background: var(--green-dark) !important;
  transform: translateY(-1px) !important;
}

/* Eltávolítás gomb */
.ModHotcakesWishListC input.btn-default,
.ModHotcakesWishListC input.btn.btn-default.btn-sm {
  background: transparent !important;
  background-image: none !important;
  color: var(--red) !important;
  border: none !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  padding: 0 !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  transition: opacity 0.2s !important;
  box-shadow: none !important;
  display: block !important;
  text-align: right !important;
}
.ModHotcakesWishListC input.btn-default:hover {
  opacity: 0.65 !important;
}

/* Strong (ár szám) */
.ModHotcakesWishListC .col-xs-4.pull-right strong {
  white-space: nowrap !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
  display: block !important;
}

/* Mobil */
@media (max-width: 768px) {
  .ModHotcakesWishListC .hc-wish-item {
    padding: 16px !important;
  }
  .ModHotcakesWishListC .col-xs-4.pull-right {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    margin-top: 16px !important;
  }
  .ModHotcakesWishListC .hc-wish-item img {
    width: 80px !important;
    height: 80px !important;
  }
}

/* Vásárlás folytatása gomb — pontos szelektor */
.ModHotcakesWishListC .col-xs-12.text-right.pull-right a.btn-default,
.ModHotcakesWishListC .col-xs-12.pull-right a.btn.btn-default,
.ModHotcakesWishListC div[id*="ModuleActions"] a,
.ModHotcakesWishListC a[aria-label="Actions"],
#dnn_ctr389_ModuleActions_actionButton {
  background: var(--white) !important;
  background-image: none !important;
  color: var(--green) !important;
  border: 2px solid var(--green) !important;
  border-radius: 8px !important;
  padding: 9px 18px !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  box-shadow: none !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
}

.ModHotcakesWishListC .col-xs-12.text-right.pull-right a.btn-default:hover,
.ModHotcakesWishListC a[aria-label="Actions"]:hover,
#dnn_ctr389_ModuleActions_actionButton:hover {
  background: var(--green) !important;
  color: var(--white) !important;
  text-decoration: none !important;
}

/* A ikon (≡) elrejtése a gomb előtt ha zavar */
.ModHotcakesWishListC .col-xs-12.pull-right a.btn-default img,
.ModHotcakesWishListC a[aria-label="Actions"] img {
  display: none !important;
}



/* =============================================================
   LETÖLTÉSEK SZEKCIÓ - Modern kártyás kinézet
   ============================================================= */

.downloads-section {
  max-width: 1200px;
  margin: clamp(24px, 4vw, 48px) auto;
  padding: clamp(24px, 4vw, 40px) clamp(16px, 3vw, 32px);
  background: var(--white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
}

.downloads-title {
  font-size: clamp(1.4rem, 3vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--dark) !important;
  margin: 0 0 8px 0 !important;
  letter-spacing: -0.5px !important;
  text-align: center !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

.downloads-subtitle {
  font-size: clamp(0.9rem, 1.5vw, 1rem) !important;
  color: var(--mid) !important;
  text-align: center !important;
  margin: 0 0 32px 0 !important;
  line-height: 1.6 !important;
}

/* GRID - 3 oszlop desktop-on, reszponzív lefelé */
.downloads-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(16px, 2vw, 24px);
  width: 100%;
}

/* KÁRTYA - egy egész link a kártya */
.download-card {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  padding: clamp(20px, 3vw, 32px) clamp(16px, 2vw, 24px) !important;
  background: var(--white) !important;
  border: 2px solid #eee !important;
  border-radius: var(--radius-lg) !important;
  text-decoration: none !important;
  color: inherit !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

/* Zöld accent-csík a kártya tetején, hover-en bukkan elő */
.download-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--green) 0%, var(--green-dark) 100%) !important;
  transform: scaleX(0) !important;
  transform-origin: left center !important;
  transition: transform 0.3s ease !important;
}

.download-card:hover {
  border-color: var(--green) !important;
  box-shadow: 0 12px 36px rgba(76, 175, 80, 0.18) !important;
  transform: translateY(-6px) !important;
  text-decoration: none !important;
  color: inherit !important;
}

.download-card:hover::before {
  transform: scaleX(1) !important;
}

/* Ikon kör a kártya tetején */
.download-icon {
  width: 72px !important;
  height: 72px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--green-soft) !important;
  border-radius: 50% !important;
  font-size: 2rem !important;
  margin: 0 0 16px 0 !important;
  transition: all 0.3s ease !important;
  flex-shrink: 0 !important;
}

.download-card:hover .download-icon {
  background: var(--green) !important;
  transform: scale(1.1) rotate(-5deg) !important;
}

/* Szöveg tartalom */
.download-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
  flex: 1 1 auto !important;
}

.download-content h3 {
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.3 !important;
}

.download-content p {
  font-size: 0.88rem !important;
  color: var(--mid) !important;
  line-height: 1.6 !important;
  margin: 0 0 16px 0 !important;
  flex: 1 1 auto !important;
}

/* Meta sor: fájltípus badge + Letöltés link */
.download-meta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  padding-top: 12px !important;
  border-top: 1px solid #f0f0f0 !important;
  margin-top: auto !important;
}

.download-type {
  display: inline-block !important;
  padding: 4px 10px !important;
  background: rgba(229, 57, 53, 0.1) !important;
  color: var(--red) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  border-radius: 6px !important;
  letter-spacing: 0.5px !important;
}

.download-type-zip {
  background: rgba(76, 175, 80, 0.1) !important;
  color: var(--green) !important;
}

.download-action {
  color: var(--green) !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
}

.download-card:hover .download-action {
  transform: translateX(4px) !important;
}

/* Reszponzív: tablet 2 oszlop */
@media (max-width: 900px) {
  .downloads-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Reszponzív: mobil 1 oszlop */
@media (max-width: 600px) {
  .downloads-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .download-card {
    flex-direction: row !important;
    text-align: left !important;
    align-items: flex-start !important;
    gap: 16px !important;
    padding: 20px !important;
  }

  .download-icon {
    width: 56px !important;
    height: 56px !important;
    font-size: 1.6rem !important;
    margin: 0 !important;
  }

  .download-content {
    align-items: flex-start !important;
    flex: 1 !important;
  }
}


/* =============================================================
   ÁR LABEL + ÉRTÉK EGY VONALBA
   A Hotcakes a termék és kívánságlista oldalon a "Ár" feliratot
   és az értéket Bootstrap col-xs-6 + col-xs-6 oszlopokba teszi.
   Ez a felirat ÉS az érték keskeny oszlopon megtöri a számot.
   Megoldás: a label keskenyebb, az érték kapja a többi helyet.
   ============================================================= */

.hc-product .form-group.text-right,
.hc-product .text-right.form-group,
.hc-product .control-inline,
.hc-product .form-inline,
.hcMvcView .form-group.text-right,
.hcMvcView .control-inline {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
}

/* A label keskeny, az érték kapja a maradékot */
.hc-product .form-group.text-right > label.control-label,
.hc-product .form-group.text-right > label,
.hc-product .control-inline > label,
.hcMvcView .form-group.text-right > label,
.hc-product .form-group > label.col-xs-6.control-label {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 100px !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
  font-weight: 600 !important;
  color: var(--mid) !important;
  font-size: 0.95rem !important;
  white-space: nowrap !important;
}

/* Az érték oszlop: amennyi hely kell, az ár NE törjön sorba */
.hc-product .form-group.text-right > .col-xs-6:not(label),
.hc-product .form-group.text-right > div,
.hc-product .control-inline > .col-xs-6:not(label),
.hc-product .control-inline > div,
.hcMvcView .form-group.text-right > div {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  font-size: 1.1rem !important;
}

/* Mobilon vertikális stack ha tényleg kevés a hely */
@media (max-width: 480px) {
  .hc-product .form-group.text-right,
  .hc-product .control-inline {
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 4px !important;
  }

  .hc-product .form-group.text-right > label,
  .hc-product .control-inline > label {
    max-width: 100% !important;
  }
}

/* =============================================================
   ÁR LABEL + ÉRTÉK EGY VONALBA - JAVÍTOTT VERZIÓ
   A két oszlopot egy vonalba hozzuk, EGYFORMA betűmérettel,
   közös baseline-nal.
   ============================================================= */

.hc-product .form-group.text-right,
.hc-product .text-right.form-group,
.hc-product .control-inline,
.hc-product .form-inline,
.hcMvcView .form-group.text-right,
.hcMvcView .control-inline,
.hc-product .col-xs-4.pull-right.text-right,
.hc-product .col-xs-4.text-right {
  display: flex !important;
  align-items: baseline !important;       /* baseline igazítás - szövegek alja egy vonalba */
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
  text-align: right !important;
}

/* Az "Ár" LABEL és az érték EGYFORMA betűméretű és súlyú legyen.
   Az "Ár" felirat ne legyen óriási. */
.hc-product .form-group.text-right > label,
.hc-product .form-group.text-right > label.control-label,
.hc-product .form-group.text-right label.col-xs-6,
.hc-product .form-group.text-right label[class*="col-"],
.hc-product .control-inline > label,
.hcMvcView .form-group.text-right > label,
.hc-product .col-xs-4 .form-group label {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
  font-weight: 600 !important;
  font-size: 1.15rem !important;          /* az "Ár" felirat mérete */
  color: var(--mid) !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
  float: none !important;
  display: inline-block !important;
}

/* Az érték oszlopa */
.hc-product .form-group.text-right > div,
.hc-product .form-group.text-right > .col-xs-6:not(label),
.hc-product .form-group.text-right > div[class*="col-"],
.hc-product .control-inline > div,
.hc-product .control-inline > .col-xs-6:not(label),
.hcMvcView .form-group.text-right > div,
.hc-product .col-xs-4 .form-group > div {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
  color: var(--dark) !important;
  font-size: 1.3rem !important;           /* érték kicsit nagyobb mint a felirat */
  line-height: 1.4 !important;
  float: none !important;
  display: inline-block !important;
}

/* Az érték oszlopában lévő span/szöveg is ugyanezt a méretet kapja */
.hc-product .form-group.text-right > div *,
.hc-product .control-inline > div *,
.hc-product .col-xs-4 .form-group > div * {
  font-size: inherit !important;
  font-weight: inherit !important;
  color: inherit !important;
  line-height: inherit !important;
}

/* Mobilon vertikális stack */
@media (max-width: 480px) {
  .hc-product .form-group.text-right,
  .hc-product .control-inline {
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 2px !important;
  }
}


/* =============================================================
   ELRONTOTT GLYPHICON IKONOK ELREJTÉSE
   A bootstrap/glyphicon font hiányzik, ezért □ négyzetek
   jelennek meg a gombokon. Egyszerűbb eltüntetni őket.
   ============================================================= */

.hc-cart-actions .glyphicon,
.hc-cart-actions em,
.hc-cart-actions i,
.hc-action-keepshopping .glyphicon,
.hc-action-keepshopping em,
.hc-action-keepshopping i,
.hc-action-checkout .glyphicon,
.hc-action-checkout em,
.hc-action-checkout i,
.ModHotcakesCartC .glyphicon,
.ModHotcakesCartC em,
.ModHotcakesCartC i.fa,
.ModHotcakesCheckoutC .glyphicon,
.ModHotcakesCheckoutC em,
.ModHotcakesCheckoutC i.fa,
.hc-product .glyphicon,
.hc-product em.glyphicon,
.hc-product i.fa,
.btn .glyphicon,
.btn > em,
.btn > i.fa,
a.btn .glyphicon,
a.btn > em {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0 !important;
}



/* =============================================================
   DNN MODUL ACTION GOMBOK - GLYPHICON FIX
   Az Edit Mode-ban megjelenő szerkesztő gombok glyphicon ikonjai
   ☐ négyzetnek látszanak. Minden ismert DNN action-menü szelektort
   lefedünk és emojikra cseréljük az ikonokat.
   ============================================================= */

/* MINDEN ismert DNN action-menü konténer + benne lévő glyphicon */
.actionMenu .glyphicon,
.actionMenu i,
.actionMenu em,
.actionMenu span[class*="glyphicon"],
ul.actionMenu .glyphicon,
ul.dnnAdminTabNav .glyphicon,
.dnnModuleActions .glyphicon,
.ModuleActions .glyphicon,
.dnn-module-action .glyphicon,
.module-action .glyphicon,
.dnnActions .glyphicon,
.dnnEditState .glyphicon,
.editBar .glyphicon,
.dnnEditBar .glyphicon,
li.actionMenuMove .glyphicon,
li.actionMenuMove i,
.controlBar .glyphicon,
.controlBar_ButtonGroup .glyphicon,
.action-menu-item .glyphicon,
[class*="moduleAction"] .glyphicon,
[class*="ModuleAction"] .glyphicon,
[class*="ActionButton"] .glyphicon,
[class*="dnnActions"] .glyphicon,
li[role="presentation"] .glyphicon {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI Emoji',
               'Apple Color Emoji', 'Noto Color Emoji', sans-serif !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-size: 16px !important;
  line-height: 1 !important;
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  vertical-align: middle !important;
  color: inherit !important;
}

/* Konkrét ikon-class-onkén emoji helyettesítés */
.glyphicon-pencil::before,
.glyphicon-edit::before          { content: '✏️' !important; font-family: inherit !important; }

.glyphicon-cog::before,
.glyphicon-settings::before,
.glyphicon-wrench::before        { content: '⚙️' !important; font-family: inherit !important; }

.glyphicon-trash::before         { content: '🗑️' !important; font-family: inherit !important; }
.glyphicon-remove::before        { content: '✕' !important;  font-family: inherit !important; }
.glyphicon-remove-sign::before   { content: '⊗' !important;  font-family: inherit !important; }
.glyphicon-times::before         { content: '✕' !important;  font-family: inherit !important; }

.glyphicon-plus::before          { content: '➕' !important; font-family: inherit !important; }
.glyphicon-plus-sign::before     { content: '⊕' !important;  font-family: inherit !important; }

.glyphicon-copy::before,
.glyphicon-duplicate::before     { content: '📋' !important; font-family: inherit !important; }

.glyphicon-eye-open::before      { content: '👁' !important;  font-family: inherit !important; }
.glyphicon-eye-close::before     { content: '🚫' !important; font-family: inherit !important; }

.glyphicon-chevron-down::before,
.glyphicon-menu-down::before,
.glyphicon-triangle-bottom::before { content: '▾' !important; font-family: inherit !important; }

.glyphicon-chevron-up::before,
.glyphicon-menu-up::before,
.glyphicon-triangle-top::before  { content: '▴' !important; font-family: inherit !important; }

.glyphicon-chevron-right::before,
.glyphicon-menu-right::before    { content: '▸' !important; font-family: inherit !important; }

.glyphicon-chevron-left::before,
.glyphicon-menu-left::before     { content: '◂' !important; font-family: inherit !important; }

.glyphicon-ok::before,
.glyphicon-check::before         { content: '✓' !important; font-family: inherit !important; }

.glyphicon-shopping-cart::before { content: '🛒' !important; font-family: inherit !important; }

.glyphicon-share::before,
.glyphicon-export::before        { content: '↗' !important; font-family: inherit !important; }

.glyphicon-move::before          { content: '✥' !important; font-family: inherit !important; }
.glyphicon-resize-horizontal::before { content: '↔' !important; font-family: inherit !important; }

.glyphicon-th::before,
.glyphicon-th-list::before,
.glyphicon-list::before          { content: '☰' !important; font-family: inherit !important; }

.glyphicon-info-sign::before     { content: 'ℹ' !important; font-family: inherit !important; }
.glyphicon-question-sign::before { content: '?' !important; font-family: inherit !important; }
.glyphicon-warning-sign::before  { content: '⚠' !important; font-family: inherit !important; }

.glyphicon-search::before        { content: '🔍' !important; font-family: inherit !important; }
.glyphicon-user::before          { content: '👤' !important; font-family: inherit !important; }
.glyphicon-home::before          { content: '🏠' !important; font-family: inherit !important; }
.glyphicon-folder-open::before   { content: '📂' !important; font-family: inherit !important; }
.glyphicon-folder-close::before  { content: '📁' !important; font-family: inherit !important; }
.glyphicon-file::before          { content: '📄' !important; font-family: inherit !important; }
.glyphicon-download::before,
.glyphicon-download-alt::before  { content: '⬇' !important; font-family: inherit !important; }
.glyphicon-upload::before        { content: '⬆' !important; font-family: inherit !important; }
.glyphicon-refresh::before       { content: '↻' !important; font-family: inherit !important; }
.glyphicon-arrow-up::before      { content: '↑' !important; font-family: inherit !important; }
.glyphicon-arrow-down::before    { content: '↓' !important; font-family: inherit !important; }
.glyphicon-arrow-left::before    { content: '←' !important; font-family: inherit !important; }
.glyphicon-arrow-right::before   { content: '→' !important; font-family: inherit !important; }



/* =============================================================
   DNN DNNI IKON FONT - PERSONA BAR / ACTION MENU IKONOK
   A DNN saját ikon-fontja (.dnni .dnni-XXX class-okkal). A font
   fájl gyakran nem töltődik be helyesen, ezért □ négyzetek
   látszanak. Töltjük be CDN-ről vagy emojikkal helyettesítjük.
   ============================================================= */

/* Az <i class="dnni dnni-XXX"> alapszabálya: emoji font */
.dnni,
i.dnni,
.actionMenu .dnni,
.actionMenu i.dnni,
li.actionMenuMove .dnni,
li.actionMenuAdmin .dnni,
.dnn_mact .dnni,
ul.dnn_mact .dnni {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI Emoji',
               'Apple Color Emoji', 'Noto Color Emoji', 'Segoe UI Symbol', sans-serif !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-size: 16px !important;
  line-height: 1 !important;
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  vertical-align: middle !important;
  speak: none !important;
  text-transform: none !important;
  -webkit-font-smoothing: antialiased !important;
  background: none !important;
  background-image: none !important;
}

/* DNNI specifikus ikon class-ok - emoji helyettesítések
   A ::before pseudo content-jét írjuk felül, hogy a böngésző
   saját emoji-fontjával rajzolja ki. */

.dnni-arrows::before,
i.dnni.dnni-arrows::before {
  content: '✥' !important;          /* Mozgatás / arrows - négyirányú nyíl */
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-settings::before,
.dnni-cog::before,
i.dnni.dnni-settings::before {
  content: '⚙' !important;          /* Beállítások */
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-edit::before,
.dnni-pencil::before,
i.dnni.dnni-edit::before {
  content: '✏' !important;          /* Szerkesztés */
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-delete::before,
.dnni-trash::before,
i.dnni.dnni-delete::before {
  content: '🗑' !important;          /* Törlés */
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-help::before,
.dnni-question::before,
i.dnni.dnni-help::before {
  content: '?' !important;           /* Help */
  font-family: inherit !important;
  font-weight: 700 !important;
  background: none !important;
  background-image: none !important;
}

.dnni-refresh::before,
i.dnni.dnni-refresh::before {
  content: '↻' !important;          /* Refresh */
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-develop::before,
.dnni-code::before,
i.dnni.dnni-develop::before {
  content: '⌨' !important;          /* Develop / kód */
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-add::before,
.dnni-plus::before,
i.dnni.dnni-add::before {
  content: '+' !important;
  font-family: inherit !important;
  font-weight: 700 !important;
  background: none !important;
  background-image: none !important;
}

.dnni-copy::before,
i.dnni.dnni-copy::before {
  content: '📋' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-eye::before,
.dnni-view::before,
i.dnni.dnni-eye::before {
  content: '👁' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-close::before,
.dnni-x::before,
i.dnni.dnni-close::before {
  content: '✕' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-check::before,
.dnni-ok::before,
i.dnni.dnni-check::before {
  content: '✓' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-chevron-down::before,
.dnni-arrow-down::before,
i.dnni.dnni-chevron-down::before {
  content: '▾' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-chevron-up::before,
.dnni-arrow-up::before {
  content: '▴' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-chevron-right::before,
.dnni-arrow-right::before {
  content: '▸' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

.dnni-chevron-left::before,
.dnni-arrow-left::before {
  content: '◂' !important;
  font-family: inherit !important;
  background: none !important;
  background-image: none !important;
}

/* FALLBACK: ha valami `.dnni-XYZ` van amit nem fedtünk le,
   legalább egy semleges karaktert mutasson (pont) helyette
   a □ négyzet helyett. */
i.dnni::before {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI Emoji',
               'Apple Color Emoji', 'Noto Color Emoji', sans-serif !important;
  background: none !important;
  background-image: none !important;
}



/* =============================================================
   KOSÁR INPUT MÉRETEK - JAVÍTOTT
   - Mennyiség input + Frissítés gomb EGYFORMA magasság (44px)
   - Promóciós kód input SZÉLESEBB (legalább 200px)
   - Minden hasonló stílusú legyen
   ============================================================= */

/* MENNYISÉG INPUT - .form-control.small (kis kicsi input a kosárban) */
.ModHotcakesCartC input.form-control.small,
.ModHotcakesCartC input[name="lineitemquantity"],
.ModHotcakesCartC .form-group input.form-control.small {
  width: 70px !important;
  min-width: 70px !important;
  max-width: 70px !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 8px 10px !important;
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  line-height: 1.2 !important;
}

/* FRISSÍTÉS GOMB - .btn.btn-default.btn-sm (a kis Frissítés gomb a mennyiség mellett) */
.ModHotcakesCartC input.btn.btn-default.btn-sm,
.ModHotcakesCartC input[value="Frissítés"],
.ModHotcakesCartC input[value="Update"],
.ModHotcakesCartC .form-group input.btn.btn-sm {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 18px !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  color: #555 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  vertical-align: middle !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ModHotcakesCartC input.btn.btn-default.btn-sm:hover,
.ModHotcakesCartC input[value="Frissítés"]:hover {
  border-color: var(--green) !important;
  color: var(--green) !important;
  background: var(--green-soft) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 2px 8px rgba(76, 175, 80, 0.15) !important;
}

/* MENNYISÉG + FRISSÍTÉS sor: egy vonalban, középre */
.ModHotcakesCartC .form-inline,
.ModHotcakesCartC td .form-inline,
.ModHotcakesCartC .hidden-xs.hidden-sm .form-inline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}

.ModHotcakesCartC .form-inline .form-group {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  flex-wrap: nowrap !important;
}

/* PROMÓCIÓS KÓD INPUT - szélesebb mint a mennyiség, mert hosszú kódok férnek bele */
.ModHotcakesCartC .hc-coupon-section input[type="text"],
.ModHotcakesCartC .hc-coupon-section input.form-control,
.ModHotcakesCartC input[name="couponcode"],
.hc-coupon-section input[name="couponcode"],
.hc-coupon-section input.form-control {
  width: 220px !important;
  min-width: 220px !important;
  max-width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 8px 14px !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  text-align: left !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  line-height: 1.2 !important;
}

.ModHotcakesCartC .hc-coupon-section input[type="text"]:focus,
.ModHotcakesCartC input[name="couponcode"]:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important;
}

/* PROMÓCIÓS "ALKALMAZ" GOMB - egyforma magasság az input-tal */
.ModHotcakesCartC .hc-coupon-section input[type="submit"],
.ModHotcakesCartC .hc-coupon-section input.btn,
.ModHotcakesCartC input[value="Alkalmaz"],
.ModHotcakesCartC input[value="Apply"],
.hc-coupon-section input[value="Alkalmaz"],
.hc-coupon-section input[value="Apply"] {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 22px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  border: 2px solid var(--green) !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  color: var(--green) !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  vertical-align: middle !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  margin-left: 8px !important;
}

.ModHotcakesCartC .hc-coupon-section input[type="submit"]:hover,
.ModHotcakesCartC input[value="Alkalmaz"]:hover,
.hc-coupon-section input[value="Alkalmaz"]:hover {
  background: var(--green) !important;
  color: var(--white) !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
  transform: translateY(-1px) !important;
}

/* PROMÓCIÓS form sor egyben */
.hc-coupon-section .form-inline,
.hc-coupon-section .form-group {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
}

.hc-coupon-section label.control-label {
  margin: 0 8px 0 0 !important;
  font-weight: 600 !important;
  color: #555 !important;
  font-size: 0.92rem !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
}

/* Mobilon a promóciós input rugalmasabban: 100%-ig kitölt */
@media (max-width: 600px) {
  .ModHotcakesCartC .hc-coupon-section input[type="text"],
  .ModHotcakesCartC input[name="couponcode"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .hc-coupon-section .form-inline,
  .hc-coupon-section .form-group {
    width: 100% !important;
  }
}


/* =============================================================
   KOSÁR INPUT MÉRETEK - JAVÍTOTT
   - Mennyiség input + Frissítés gomb EGYFORMA magasság (44px)
   - Promóciós kód input SZÉLESEBB (legalább 200px)
   - Minden hasonló stílusú legyen
   ============================================================= */

/* MENNYISÉG INPUT - .form-control.small (kis kicsi input a kosárban) */
.ModHotcakesCartC input.form-control.small,
.ModHotcakesCartC input[name="lineitemquantity"],
.ModHotcakesCartC .form-group input.form-control.small {
  width: 70px !important;
  min-width: 70px !important;
  max-width: 70px !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 8px 10px !important;
  text-align: center !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  line-height: 1.2 !important;
}

/* FRISSÍTÉS GOMB - .btn.btn-default.btn-sm (a kis Frissítés gomb a mennyiség mellett) */
.ModHotcakesCartC input.btn.btn-default.btn-sm,
.ModHotcakesCartC input[value="Frissítés"],
.ModHotcakesCartC input[value="Update"],
.ModHotcakesCartC .form-group input.btn.btn-sm {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 18px !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  color: #555 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  vertical-align: middle !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ModHotcakesCartC input.btn.btn-default.btn-sm:hover,
.ModHotcakesCartC input[value="Frissítés"]:hover {
  border-color: var(--green) !important;
  color: var(--green) !important;
  background: var(--green-soft) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 2px 8px rgba(76, 175, 80, 0.15) !important;
}

/* MENNYISÉG + FRISSÍTÉS sor: egy vonalban, középre */
.ModHotcakesCartC .form-inline,
.ModHotcakesCartC td .form-inline,
.ModHotcakesCartC .hidden-xs.hidden-sm .form-inline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}

.ModHotcakesCartC .form-inline .form-group {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  flex-wrap: nowrap !important;
}

/* PROMÓCIÓS KÓD INPUT - szélesebb mint a mennyiség, mert hosszú kódok férnek bele */
.ModHotcakesCartC .hc-coupon-section input[type="text"],
.ModHotcakesCartC .hc-coupon-section input.form-control,
.ModHotcakesCartC input[name="couponcode"],
.hc-coupon-section input[name="couponcode"],
.hc-coupon-section input.form-control {
  width: 220px !important;
  min-width: 220px !important;
  max-width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 8px 14px !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  text-align: left !important;
  border: 2px solid #e0e0e0 !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  line-height: 1.2 !important;
}

.ModHotcakesCartC .hc-coupon-section input[type="text"]:focus,
.ModHotcakesCartC input[name="couponcode"]:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.15) !important;
}

/* PROMÓCIÓS "ALKALMAZ" GOMB - egyforma magasság az input-tal */
.ModHotcakesCartC .hc-coupon-section input[type="submit"],
.ModHotcakesCartC .hc-coupon-section input.btn,
.ModHotcakesCartC input[value="Alkalmaz"],
.ModHotcakesCartC input[value="Apply"],
.hc-coupon-section input[value="Alkalmaz"],
.hc-coupon-section input[value="Apply"] {
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 22px !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  border: 2px solid var(--green) !important;
  border-radius: 8px !important;
  background: var(--white) !important;
  color: var(--green) !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  vertical-align: middle !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  margin-left: 8px !important;
}

.ModHotcakesCartC .hc-coupon-section input[type="submit"]:hover,
.ModHotcakesCartC input[value="Alkalmaz"]:hover,
.hc-coupon-section input[value="Alkalmaz"]:hover {
  background: var(--green) !important;
  color: var(--white) !important;
  box-shadow: 0 4px 12px rgba(76, 175, 80, 0.25) !important;
  transform: translateY(-1px) !important;
}

/* PROMÓCIÓS form sor egyben */
.hc-coupon-section .form-inline,
.hc-coupon-section .form-group {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin: 0 !important;
}

.hc-coupon-section label.control-label {
  margin: 0 8px 0 0 !important;
  font-weight: 600 !important;
  color: #555 !important;
  font-size: 0.92rem !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
}

/* Mobilon a promóciós input rugalmasabban: 100%-ig kitölt */
@media (max-width: 600px) {
  .ModHotcakesCartC .hc-coupon-section input[type="text"],
  .ModHotcakesCartC input[name="couponcode"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .hc-coupon-section .form-inline,
  .hc-coupon-section .form-group {
    width: 100% !important;
  }
}


/* =============================================================
   KOSÁR TÁBLÁZAT FEJLÉC - "ÁR" OSZLOP DOBOZ-HATÁS JAVÍTÁSA
   Az ÁR oszlop kiemelkedett doboznak látszott a szürke háttér
   és vertikális vonalak miatt. Egységes, kerethélküli fejléc.
   ============================================================= */

/* MINDEN th egyforma kinézet: nincs vertikális border, egyforma 
   háttér, egyforma padding */
.ModHotcakesCartC table thead,
.ModHotcakesCartC .hc-cart table thead,
.ModHotcakesCartC table.table thead,
#dnn_ctr388_ContentPane table thead {
  background: transparent !important;
}

.ModHotcakesCartC table thead tr,
.ModHotcakesCartC .hc-cart table thead tr,
.ModHotcakesCartC table.table thead tr,
.ModHotcakesCartC table thead tr.dnnGridHeader,
#dnn_ctr388_ContentPane table thead tr {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.ModHotcakesCartC table thead th,
.ModHotcakesCartC table thead td,
.ModHotcakesCartC .hc-cart table thead th,
.ModHotcakesCartC table.table thead th,
.ModHotcakesCartC table thead tr.dnnGridHeader th,
#dnn_ctr388_ContentPane table thead th {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  color: var(--gray) !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 14px 12px !important;
  border: none !important;
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
  border-bottom: 2px solid #eee !important;     /* egyetlen vízszintes vonal alul */
  box-shadow: none !important;
  text-align: left !important;
}

/* Az "ÁR" oszlop pontosan ugyanaz, mint a többi */
.ModHotcakesCartC table thead th:nth-child(2),
.ModHotcakesCartC table thead th[align="right"],
.ModHotcakesCartC table thead th.text-right,
.ModHotcakesCartC table thead th.price,
.ModHotcakesCartC table thead th.amount {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-left: none !important;
  border-right: none !important;
  box-shadow: none !important;
}

/* Ha valami inline style ad neki border-t vagy hátteret */
.ModHotcakesCartC table thead th[style],
.ModHotcakesCartC table thead td[style] {
  background: transparent !important;
  background-color: transparent !important;
  border-left: none !important;
  border-right: none !important;
}

/* A táblázat egész sorszín reset: nincs zebra a fejlécben */
.ModHotcakesCartC table.table-striped > thead > tr > th,
.ModHotcakesCartC table.table-bordered > thead > tr > th {
  background: transparent !important;
  border: none !important;
  border-bottom: 2px solid #eee !important;
}

/* =============================================================
   KOSÁR TÁBLÁZAT - EGYSÉGES SOROK ÉS OSZLOPOK
   Minden cella (th, td) egyforma átlátszó hátterű legyen,
   semmi oszlop-háttér színezés.
   ============================================================= */

/* MINDEN th és td átlátszó - sem fejléc, sem cella nem kap hátteret */
.ModHotcakesCartC table,
.ModHotcakesCartC .hc-cart table,
.ModHotcakesCartC table.table,
#dnn_ctr388_ContentPane table {
  background: transparent !important;
  background-color: transparent !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

.ModHotcakesCartC table tbody,
.ModHotcakesCartC table thead,
.ModHotcakesCartC table tr,
.ModHotcakesCartC .hc-cart table tr,
.ModHotcakesCartC table.table tr,
#dnn_ctr388_ContentPane table tr {
  background: transparent !important;
  background-color: transparent !important;
}

/* TBODY CELLÁK - tiszta átlátszó, semmi oszlop-szín */
.ModHotcakesCartC table tbody td,
.ModHotcakesCartC table tbody th,
.ModHotcakesCartC .hc-cart table tbody td,
.ModHotcakesCartC table.table tbody td,
#dnn_ctr388_ContentPane table tbody td {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  border-top: 1px solid #f0f0f0 !important;     /* vékony elválasztó vonal SOROK között */
  border-left: none !important;
  border-right: none !important;
  border-bottom: none !important;
  padding: 16px 12px !important;
  vertical-align: middle !important;
  box-shadow: none !important;
}

/* INLINE STYLE-okat is felülír (ha valami direkt bgcolor van rajta) */
.ModHotcakesCartC table tbody td[style],
.ModHotcakesCartC table tbody td[bgcolor],
.ModHotcakesCartC table tbody td.first-column,
.ModHotcakesCartC table tbody td:first-child {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

/* ZEBRA / STRIPED kikapcsolva - ne legyenek minden második sor más színű */
.ModHotcakesCartC table.table-striped > tbody > tr,
.ModHotcakesCartC table.table-striped > tbody > tr > td,
.ModHotcakesCartC table.table-striped > tbody > tr:nth-of-type(odd),
.ModHotcakesCartC table.table-striped > tbody > tr:nth-of-type(even),
.ModHotcakesCartC table > tbody > tr:nth-child(odd),
.ModHotcakesCartC table > tbody > tr:nth-child(even) {
  background: transparent !important;
  background-color: transparent !important;
}

/* HOVER ÉRINTÉS - finom zöld halvány a teljes soron */
.ModHotcakesCartC table tbody tr:hover,
.ModHotcakesCartC .hc-cart table tbody tr:hover,
#dnn_ctr388_ContentPane table tbody tr:hover {
  background: rgba(76, 175, 80, 0.04) !important;
  background-color: rgba(76, 175, 80, 0.04) !important;
}

.ModHotcakesCartC table tbody tr:hover td {
  background: transparent !important;
  background-color: transparent !important;
}

/* RÉSZÖSSZEG sor MEGMARAD zöldnek - csak az adatsorokat tisztítjuk */
.ModHotcakesCartC tr.hc-subtotal1,
.ModHotcakesCartC tr.hc-subtotal1 th,
.ModHotcakesCartC tr.hc-subtotal1 td,
.ModHotcakesCartC tr[class*="subtotal"],
.ModHotcakesCartC tr[class*="subtotal"] th,
.ModHotcakesCartC tr[class*="subtotal"] td {
  background: var(--green) !important;
  background-color: var(--green) !important;
  color: var(--white) !important;
  font-weight: 700 !important;
}

/* =============================================================
   KOSÁR TÁBLÁZAT - MINDEN CELLA FEHÉR HÁTTÉR
   Egységes tiszta fehér háttér minden sornak, hogy ne legyen
   szürke/eltérő színű oszlop. A táblázat parent (ami szürke
   hátteret ad) felülírva fehérre.
   ============================================================= */

/* TÁBLÁZAT WRAPPER fehér háttér */
.ModHotcakesCartC,
.ModHotcakesCartC .hc-cart,
.ModHotcakesCartC .row-fluid,
.ModHotcakesCartC table,
.ModHotcakesCartC .hc-cart table,
.ModHotcakesCartC table.table,
#dnn_ctr388_ContentPane table {
  background: var(--white) !important;
  background-color: var(--white) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

/* FEJLÉC */
.ModHotcakesCartC table thead,
.ModHotcakesCartC table thead tr,
.ModHotcakesCartC table thead tr.dnnGridHeader {
  background: var(--white) !important;
  background-color: var(--white) !important;
}

.ModHotcakesCartC table thead th,
.ModHotcakesCartC table thead td,
.ModHotcakesCartC table thead tr.dnnGridHeader th,
#dnn_ctr388_ContentPane table thead th {
  background: var(--white) !important;
  background-color: var(--white) !important;
  background-image: none !important;
  color: var(--gray) !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 16px 12px !important;
  border: none !important;
  border-bottom: 2px solid #eee !important;
  box-shadow: none !important;
}

/* TBODY SOROK ÉS CELLÁK - mind fehér */
.ModHotcakesCartC table tbody,
.ModHotcakesCartC table tbody tr,
.ModHotcakesCartC .hc-cart table tbody tr,
#dnn_ctr388_ContentPane table tbody tr {
  background: var(--white) !important;
  background-color: var(--white) !important;
}

.ModHotcakesCartC table tbody td,
.ModHotcakesCartC table tbody th,
.ModHotcakesCartC .hc-cart table tbody td,
#dnn_ctr388_ContentPane table tbody td {
  background: var(--white) !important;
  background-color: var(--white) !important;
  background-image: none !important;
  border: none !important;
  border-top: 1px solid #f0f0f0 !important;
  padding: 16px 12px !important;
  vertical-align: middle !important;
  box-shadow: none !important;
}

/* INLINE STYLE / bgcolor felülírva minden cellán */
.ModHotcakesCartC table tbody td[style],
.ModHotcakesCartC table tbody td[bgcolor],
.ModHotcakesCartC table thead th[style],
.ModHotcakesCartC table thead th[bgcolor] {
  background: var(--white) !important;
  background-color: var(--white) !important;
  background-image: none !important;
}

/* ZEBRA KIKAPCSOLVA */
.ModHotcakesCartC table.table-striped > tbody > tr,
.ModHotcakesCartC table.table-striped > tbody > tr > td,
.ModHotcakesCartC table.table-striped > tbody > tr:nth-of-type(odd),
.ModHotcakesCartC table.table-striped > tbody > tr:nth-of-type(even),
.ModHotcakesCartC table > tbody > tr:nth-child(odd),
.ModHotcakesCartC table > tbody > tr:nth-child(even) {
  background: var(--white) !important;
  background-color: var(--white) !important;
}

.ModHotcakesCartC table > tbody > tr:nth-child(odd) td,
.ModHotcakesCartC table > tbody > tr:nth-child(even) td {
  background: var(--white) !important;
  background-color: var(--white) !important;
}

/* HOVER - finom zöld villanás */
.ModHotcakesCartC table tbody tr:hover,
.ModHotcakesCartC table tbody tr:hover td,
.ModHotcakesCartC .hc-cart table tbody tr:hover td {
  background: var(--green-soft) !important;
  background-color: var(--green-soft) !important;
}

/* RÉSZÖSSZEG ZÖLD SOR - kivétel, ez zöld marad */
.ModHotcakesCartC tr.hc-subtotal1,
.ModHotcakesCartC tr.hc-subtotal1 th,
.ModHotcakesCartC tr.hc-subtotal1 td,
.ModHotcakesCartC tr[class*="subtotal"],
.ModHotcakesCartC tr[class*="subtotal"] th,
.ModHotcakesCartC tr[class*="subtotal"] td,
.ModHotcakesCartC .hc-totals-section tr,
.ModHotcakesCartC .hc-totals-section tr td,
.ModHotcakesCartC .hc-totals-section tr th {
  background: var(--green) !important;
  background-color: var(--green) !important;
  color: var(--white) !important;
  font-weight: 700 !important;
  border: none !important;
}

.ModHotcakesCartC tr.hc-subtotal1:hover,
.ModHotcakesCartC tr.hc-subtotal1:hover td,
.ModHotcakesCartC tr[class*="subtotal"]:hover td {
  background: var(--green) !important;
  background-color: var(--green) !important;
}

/* RÉSZÖSSZEG ÉRTÉK biztos látszódjon a jobb oldalon */
.ModHotcakesCartC .hc-totals-section,
.ModHotcakesCartC .hc-totals-section table {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}

.ModHotcakesCartC .hc-totals-section td,
.ModHotcakesCartC .hc-totals-section th {
  color: var(--white) !important;
  padding: 14px 20px !important;
}

.ModHotcakesCartC .hc-totals-section td:last-child,
.ModHotcakesCartC .hc-totals-section th:last-child {
  text-align: right !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
}

/* =============================================================
   VÉGSŐ JAVÍTÁSOK - MAXIMÁLIS SPECIFITY
   Mindent felülír ami eddig nem működött. A CSS LEGVÉGÉRE
   illeszd be, hogy minden korábbi szabálynál erősebb legyen.
   ============================================================= */

/* ==========================================================
   1. KOSÁR TÁBLÁZAT - EGYSÉGES FEHÉR HÁTTÉR MINDEN CELLÁN
   ========================================================== */

html body .ModHotcakesCartC table,
html body .ModHotcakesCartC table.table,
html body .ModHotcakesCartC .hc-cart table,
html body div.ModHotcakesCartC table {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border-collapse: collapse !important;
  width: 100% !important;
}

html body .ModHotcakesCartC table thead,
html body .ModHotcakesCartC table thead tr,
html body .ModHotcakesCartC table thead tr.dnnGridHeader,
html body .ModHotcakesCartC table thead th,
html body .ModHotcakesCartC table thead td,
html body .ModHotcakesCartC table thead tr.dnnGridHeader th {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  color: #888888 !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 18px 12px !important;
  border: none !important;
  border-bottom: 2px solid #eeeeee !important;
  box-shadow: none !important;
}

html body .ModHotcakesCartC table tbody,
html body .ModHotcakesCartC table tbody tr,
html body .ModHotcakesCartC table tbody td,
html body .ModHotcakesCartC table tbody th,
html body .ModHotcakesCartC table tbody td[style],
html body .ModHotcakesCartC table tbody td[bgcolor],
html body .ModHotcakesCartC table tbody td:first-child,
html body .ModHotcakesCartC table tbody td:nth-child(1),
html body .ModHotcakesCartC table tbody td:nth-child(2),
html body .ModHotcakesCartC table tbody td:nth-child(3),
html body .ModHotcakesCartC table tbody td:nth-child(4),
html body .ModHotcakesCartC table tbody td:nth-child(5) {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border: none !important;
  border-top: 1px solid #f0f0f0 !important;
  padding: 18px 12px !important;
  vertical-align: middle !important;
  box-shadow: none !important;
}

/* RÉSZÖSSZEG sor — ZÖLD marad */
html body .ModHotcakesCartC tr.hc-subtotal1,
html body .ModHotcakesCartC tr.hc-subtotal1 td,
html body .ModHotcakesCartC tr.hc-subtotal1 th,
html body .ModHotcakesCartC tr[class*="subtotal"],
html body .ModHotcakesCartC tr[class*="subtotal"] td,
html body .ModHotcakesCartC tr[class*="subtotal"] th,
html body .ModHotcakesCartC .hc-totals-section tr,
html body .ModHotcakesCartC .hc-totals-section td,
html body .ModHotcakesCartC .hc-totals-section th {
  background: #4caf50 !important;
  background-color: #4caf50 !important;
  background-image: none !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  border: none !important;
}

/* RÉSZÖSSZEG érték jobbra zárva */
html body .ModHotcakesCartC tr.hc-subtotal1 td:last-child,
html body .ModHotcakesCartC tr.hc-subtotal1 th:last-child,
html body .ModHotcakesCartC tr[class*="subtotal"] td:last-child,
html body .ModHotcakesCartC .hc-totals-section td:last-child {
  text-align: right !important;
  font-weight: 800 !important;
}

/* Zebra OFF */
html body .ModHotcakesCartC table.table-striped > tbody > tr,
html body .ModHotcakesCartC table.table-striped > tbody > tr > td,
html body .ModHotcakesCartC table > tbody > tr:nth-child(odd),
html body .ModHotcakesCartC table > tbody > tr:nth-child(even),
html body .ModHotcakesCartC table > tbody > tr:nth-child(odd) > td,
html body .ModHotcakesCartC table > tbody > tr:nth-child(even) > td {
  background: #ffffff !important;
  background-color: #ffffff !important;
}

/* Hover halvány zöld */
html body .ModHotcakesCartC table tbody tr:not(.hc-subtotal1):not([class*="subtotal"]):hover,
html body .ModHotcakesCartC table tbody tr:not(.hc-subtotal1):not([class*="subtotal"]):hover td {
  background: #f0faf0 !important;
  background-color: #f0faf0 !important;
}

/* ==========================================================
   2. AJÁNLOTT TERMÉKEK - EGYFORMA KÁRTYA MAGASSÁG
   ========================================================== */

html body .ModHotcakesFeaturedProductsC .row-fluid,
html body .ModHotcakesFeaturedProductsC .hc-product-grid,
html body .ModHotcakesFeaturedProductsC .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 16px !important;
  padding: 16px 0 !important;
  margin: 0 !important;
}

html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4,
html body .ModHotcakesFeaturedProductsC [class*="col-md-"] {
  display: flex !important;
  flex-direction: column !important;
  flex: 0 0 calc(25% - 12px) !important;
  max-width: calc(25% - 12px) !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  background: #ffffff !important;
  border: 1px solid #eeeeee !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05) !important;
  transition: all 0.3s ease !important;
}

html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4:hover {
  border-color: #4caf50 !important;
  transform: translateY(-6px) !important;
  box-shadow: 0 12px 36px rgba(76,175,80,0.14) !important;
}

html body .ModHotcakesFeaturedProductsC .panel,
html body .ModHotcakesFeaturedProductsC .panel-default {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* FEJLÉC FIX 110px */
html body .ModHotcakesFeaturedProductsC .panel-heading {
  height: 110px !important;
  min-height: 110px !important;
  max-height: 110px !important;
  padding: 16px !important;
  background: transparent !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
}

html body .ModHotcakesFeaturedProductsC .panel-heading h2,
html body .ModHotcakesFeaturedProductsC .panel-heading h3,
html body .ModHotcakesFeaturedProductsC .panel-heading h4 {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
  width: 100% !important;
  display: block !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
}

html body .ModHotcakesFeaturedProductsC .panel-heading a,
html body .ModHotcakesFeaturedProductsC .panel-heading h2 a,
html body .ModHotcakesFeaturedProductsC .panel-heading h3 a,
html body .ModHotcakesFeaturedProductsC .panel-heading h4 a {
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  text-decoration: none !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  line-height: 1.4 !important;
  width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  word-break: break-word !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* KÉP FIX 240px */
html body .ModHotcakesFeaturedProductsC .panel-body,
html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 .panel-body {
  height: 240px !important;
  min-height: 240px !important;
  max-height: 240px !important;
  padding: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: transparent !important;
  border: none !important;
  flex-shrink: 0 !important;
  flex: none !important;
}

html body .ModHotcakesFeaturedProductsC .panel-body img,
html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 img {
  max-height: 210px !important;
  max-width: 90% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  display: block !important;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
}

/* LÁBLÉC kitölt */
html body .ModHotcakesFeaturedProductsC .panel-footer,
html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4 .panel-footer {
  padding: 16px !important;
  background: transparent !important;
  border: none !important;
  text-align: center !important;
  margin-top: auto !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 100px !important;
}

/* Reszponzív lefelé */
@media (max-width: 1280px) {
  html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4,
  html body .ModHotcakesFeaturedProductsC [class*="col-md-"] {
    flex: 0 0 calc(33.333% - 11px) !important;
    max-width: calc(33.333% - 11px) !important;
  }
}

@media (max-width: 900px) {
  html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4,
  html body .ModHotcakesFeaturedProductsC [class*="col-md-"] {
    flex: 0 0 calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
  }
}

@media (max-width: 480px) {
  html body .ModHotcakesFeaturedProductsC .col-xs-6.col-md-4,
  html body .ModHotcakesFeaturedProductsC [class*="col-md-"] {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* Kívánságlista üres üzenetének zöldítése a pontos DOM struktúra alapján */
div.ModHotcakesWishListC div.dnnFormMessage {
    background: #4CAF50 !important; /* Ezt cseréld a pontos OnlyRide zöld színkódra, pl. var(--green) */
    background-color: #4CAF50 !important;
    border-color: #4CAF50 !important;
    color: #ffffff !important;
    text-shadow: none !important;
}

/* "Vásárlás folytatása" gomb elrejtése a Kívánságlista modulban */
div.ModHotcakesWishListC div.col-xs-12.text-center a.btn.btn-default {
    display: none !important;
}
/* 1. Kosár táblázat TÖRZSE: fehér háttér, sötét betűk */
.hcMvcView .table-responsive .table tbody tr td {
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    vertical-align: middle !important;
}

/* 2. Fejléc egységesítése: minden oszlop (az "Ár" is) szürke hátterű legyen */
.hcMvcView .table-responsive > .table > thead > tr > th,
.hcMvcView .table-responsive > .table > thead > tr > td {
    background-color: #f5f5f5 !important;
    color: #555555 !important;
    font-weight: 700 !important;
    border-bottom: 2px solid #ddd !important;
}

/* 3. Ár (lead osztály) formázása */
.hcMvcView .table-responsive .table td span.lead {
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #1a1a1a !important;
    background-color: transparent !important;
    margin: 0 !important;
    line-height: normal !important;
}

/* Atombomba a DNN beépített ID szelektorának legyőzésére a Részösszegnél */
body#Body .ModHotcakesCartC table tbody tr.hc-subtotal th,
body#Body .ModHotcakesCartC table tbody tr.hc-subtotal td {
    background-image: none !important;
    background: #4CAF50 !important;
    background-color: #4CAF50 !important;
    color: #ffffff !important;
}

/* Az összeg szövegének garantált kifehérítése */
body#Body .ModHotcakesCartC table tbody tr.hc-subtotal td span,
body#Body .ModHotcakesCartC table tbody tr.hc-subtotal td strong {
    color: #ffffff !important;
}

/* =============================================================
   PROFILLINK KATTINTHATÓVÁ TÉTELE
   ============================================================= */

#topHeader li.userDisplayName,
#topHeader li.userDisplayName a,
#topHeader a#dnn_dnnUser_enhancedRegisterLink,
#topHeader .registerGroup,
#topHeader .registerGroup a {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 9999 !important;
}

/* Communications és Manage Services fülek elrejtése a profiloldalon */
li[aria-controls="dnnUserSubscriptions"],
li[aria-controls="dnnUserServices"] {
    display: none !important;
}

/* Communications és Manage Services fülek elrejtése */
li[aria-controls="dnnUserSubscriptions"],
li[id="dnn_ctr_EditUser_servicesTab"] {
    display: none !important;
}

/* Return to Order History gomb elrejtése */
a[href*="OrderHistory"],
.hc-action-return,
.ModHotcakesOrderHistoryC a.btn-default {
    display: none !important;
}

/* Felesleges profil mezők elrejtése */
.dnnFormItem:has(input[id*="MiddleName"]),
.dnnFormItem:has(input[id*="Prefix"]),
.dnnFormItem:has(input[id*="Suffix"]),
.dnnFormItem:has(input[id*="Fax"]),
.dnnFormItem:has(input[id*="Website"]),
.dnnFormItem:has(input[id*="IM"]),
.dnnFormItem:has(textarea[id*="Biography"]),
.dnnFormItem:has(select[id*="TimeZone"]),
.dnnFormItem:has(select[id*="Locale"]) {
    display: none !important;
}

.dnnFormItem:has(input[id*="_Unit"]) {
    display: none !important;
}

/* UPDATE gomb magyarra */
a#dnn_ctr_EditUser_Profile_cmdUpdate {
    font-size: 0 !important;
}

a#dnn_ctr_EditUser_Profile_cmdUpdate::after {
    content: "FRISSÍTÉS" !important;
    font-size: 19.8px !important;
}

/* Fiók adatai szekció elrejtése - csak a profil oldalon */
#dnn_ctr_EditUser_Profile_accountInfo,
#dnn_ctr_EditUser_Profile_accountInfo + fieldset,
.dnnForm #H2,
.dnnForm #H2 ~ fieldset {
    display: none !important;
}

/* Rendelési előzmények - csak ez a modul */
.DnnModule-HotcakesOrderHistory h2 {
    color: #4CAF50 !important;
    border-bottom: 2px solid #4CAF50 !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

.DnnModule-HotcakesOrderHistory table thead tr {
    background-color: #4CAF50 !important;
    color: #ffffff !important;
}

.DnnModule-HotcakesOrderHistory table thead td {
    color: #ffffff !important;
    font-weight: 600 !important;
}

.DnnModule-HotcakesOrderHistory table tbody tr:hover {
    background-color: #f0faf0 !important;
}

.DnnModule-HotcakesOrderHistory table tbody tr:nth-child(even) {
    background-color: #f9f9f9 !important;
}

/* Táblázat fejléc - pontos ID alapján */
#dnn_ctr463_ModuleContent table thead tr {
    background-color: #4CAF50 !important;
}

#dnn_ctr463_ModuleContent table thead td {
    background-color: #4CAF50 !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    padding: 12px 8px !important;
}

#dnn_ctr463_ModuleContent h2 {
    color: #4CAF50 !important;
    border-bottom: 2px solid #4CAF50 !important;
    padding-bottom: 10px !important;
}

#dnn_ctr463_ModuleContent table tbody tr:nth-child(even) {
    background-color: #f9f9f9 !important;
}

#dnn_ctr463_ModuleContent table tbody tr:hover {
    background-color: #f0faf0 !important;
}

/* Profil oldal - felső névsor */
#UserDisplayNameHeader h2 {
    color: #4CAF50 !important;
    font-size: 28px !important;
    border-bottom: 3px solid #4CAF50 !important;
    padding-bottom: 10px !important;
    margin-bottom: 15px !important;
}

/* Rólam, Helyszín, Kapcsolat szekció fejlécek */
#dnn_ctr364_ModuleContent h3,
#dnn_ctr364_ModuleContent h4 {
    color: #4CAF50 !important;
    border-left: 4px solid #4CAF50 !important;
    padding-left: 8px !important;
}

/* Rólam, Helyszín, Kapcsolat szekció fejlécek */
#dnn_ctr366_ModuleContent .pBio h3,
#dnn_ctr366_ModuleContent .pAddress h3,
#dnn_ctr366_ModuleContent .pContact h3 {
    color: #4CAF50 !important;
    border-left: 4px solid #4CAF50 !important;
    padding-left: 8px !important;
}

/* Kapcsolat szekció - strong feliratok */
#dnn_ctr366_ModuleContent .pContact strong {
    color: #4CAF50 !important;
}

#dnn_ctr366_ModuleContent .pContact li:has(span[data-bind*="Website"]),
#dnn_ctr366_ModuleContent .pContact li:has(span[data-bind*="IM"]) {
    display: none !important;
}

/* Profile URL (Vanity URL) szekció elrejtése */
#dnn_ctr_EditUser_VanityUrlRow {
    display: none !important;
}

/* "Basic" szekció átírása -> Alapadatok */
h2#Basic a {
    font-size: 0 !important; 
}
h2#Basic a::after {
    content: "Alapadatok" !important;
    font-size: 18px !important; /* A DevTools szerinti eredeti betűméret */
}

/* "Contact" szekció átírása -> Kapcsolat */
h2#Contact a {
    font-size: 0 !important;
}
h2#Contact a::after {
    content: "Kapcsolat" !important;
    font-size: 18px !important;
}

/* "Location" szekció átírása -> Helyszín */
h2#Location a {
    font-size: 0 !important;
}
h2#Location a::after {
    content: "Helyszín" !important;
    font-size: 18px !important;
}




