/* Cookie banner + panel (külső fájl) */

.cookieBanner,
.cookiePanel,
.cookieFab {
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.cookieBackdrop{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.45);
  backdrop-filter: blur(2px);
  z-index: 9998;
  display: none;
}

.cookieBanner{
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 9999;

  max-width: 980px;
  margin: 0 auto;

  border-radius: 22px;
  overflow: hidden;

  background: rgba(255,255,255,.94);
  border: 1px solid rgba(12,31,24,.12);
  box-shadow: 0 18px 50px rgba(0,0,0,.18);
  display: none;
}

.cookieBanner__inner{
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 14px;
  padding: 16px 16px 14px;
}

.cookieBanner__title{
  margin: 0 0 6px;
  font-weight: 950;
  letter-spacing: -.3px;
  color: var(--text, #0c1f18);
  font-size: 16px;
}

.cookieBanner__text{
  margin: 0;
  color: rgba(12,31,24,.72);
  font-weight: 650;
  font-size: 13px;
  line-height: 1.45;
}

.cookieBanner__links{
  margin-top: 8px;
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
  font-size: 13px;
}

.cookieLink{
  color: var(--green, #176b4a);
  font-weight: 800;
  text-decoration: underline;
}

.cookieBanner__actions{
  display:flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.cookieBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding: 12px 14px;
  border-radius: 999px;
  border: 1px solid rgba(12,31,24,.12);
  font-weight: 900;
  cursor:pointer;
  transition: transform .12s ease, filter .12s ease;
  user-select: none;
  white-space: nowrap;
}

.cookieBtn:active{ transform: translateY(1px); }

.cookieBtn--primary{
  background: #1f7a53;
  color:#fff;
  border-color: rgba(255,255,255,.12);
  box-shadow: 0 10px 26px rgba(31,122,83,.25);
}

.cookieBtn--ghost{
  background: rgba(12,31,24,.04);
  color: var(--text, #0c1f18);
}

.cookieBtn--small{
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 900;
}

/* Panel (beállítások) */
.cookiePanel{
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 10000;

  max-width: 720px;
  margin: 0 auto;

  border-radius: 26px;
  overflow:hidden;

  background: rgba(255,255,255,.96);
  border: 1px solid rgba(12,31,24,.14);
  box-shadow: 0 22px 70px rgba(0,0,0,.22);
  display: none;
}

.cookiePanel__top{
  padding: 16px 16px 12px;
  background: linear-gradient(90deg, rgba(10,42,32,.96), rgba(15,76,56,.92));
  color: #fff;
}

.cookiePanel__title{
  margin: 0;
  font-size: 16px;
  font-weight: 950;
  letter-spacing: -.3px;
}

.cookiePanel__subtitle{
  margin: 6px 0 0;
  color: rgba(255,255,255,.86);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
}

.cookiePanel__body{
  padding: 14px 16px 12px;
}

.cookieRow{
  display:flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;

  border: 1px solid rgba(12,31,24,.10);
  border-radius: 18px;
  padding: 12px 12px 10px;
  background: linear-gradient(180deg, #ffffff, #f2f7f4);
  box-shadow: 0 12px 34px rgba(0,0,0,.06);
  margin-bottom: 10px;
}

.cookieRow__text strong{
  display:block;
  font-weight: 950;
  color: var(--text, #0c1f18);
  letter-spacing: -.2px;
}

.cookieRow__text span{
  display:block;
  color: rgba(12,31,24,.72);
  font-weight: 650;
  font-size: 13px;
  margin-top: 4px;
  line-height: 1.45;
}

.cookiePanel__actions{
  display:flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
  padding: 0 16px 16px;
}

/* Toggle */
.cookieToggle{
  position: relative;
  width: 50px;
  height: 30px;
  flex: 0 0 auto;
}

.cookieToggle input{
  appearance:none;
  -webkit-appearance:none;
  width: 50px;
  height: 30px;
  border-radius: 999px;
  border: 1px solid rgba(12,31,24,.18);
  background: rgba(12,31,24,.10);
  outline: none;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease;
}

.cookieToggle input::after{
  content:"";
  position:absolute;
  top: 4px;
  left: 4px;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 10px 18px rgba(0,0,0,.18);
  transition: transform .15s ease;
}

.cookieToggle input:checked{
  background: rgba(31,122,83,.32);
  border-color: rgba(31,122,83,.35);
}

.cookieToggle input:checked::after{
  transform: translateX(20px);
}

.cookieToggle input:disabled{
  cursor: not-allowed;
  opacity: .75;
}

/* Cookie FAB (ikon) */
.cookieFab{
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9997;
  display: none;
}

.cookieFab__btn{
  width: 52px;
  height: 52px;
  border-radius: 18px;

  border: 1px solid rgba(255,255,255,.18);
  background: rgba(10,42,32,.92);
  color: #fff;

  display:grid;
  place-items:center;

  box-shadow: 0 18px 40px rgba(0,0,0,.18);
  cursor: pointer;
}

.cookieFab__btn:active{
  transform: translateY(1px);
}

@media (max-width: 720px){
  .cookieBanner__inner{
    grid-template-columns: 1fr;
  }
  .cookieBanner__actions{
    justify-content: flex-start;
  }
}
