/* =========================
   KIELITEKO – ARKISTO (CSS)
   ========================= */

/* Poista GP:n page-header-ylävälit */
.post-type-archive-kieliteko .page-header{ margin:0; }

/* ---------- Otsikkopalkki ---------- */
.kt-archbar{
  display:grid;
  grid-template-columns: auto 1fr auto;
  grid-template-areas: "icon title sort";
  align-items:end;
  column-gap:14px;
  padding:18px 0 14px;
  border-bottom:1px solid var(--border, #e5e7eb);
  margin-bottom:14px;
}
.kt-archbar__icon{
  grid-area:icon;
  width:44px; height:44px; display:block;
}
.kt-archbar__title{
  grid-area:title;
  margin:0;
  font-size: clamp(1.25rem, 2.2vw, 1.6rem);
  line-height:1.1;
  font-weight:800;
}
.kt-archbar__meta{
  grid-column: 2;
  font-size: .95rem;
  color: #444;
}
.kt-archbar__sort{
  grid-area:sort;
  justify-self:end;
  align-self:end;
}
.kt-archbar__sort select{
  padding:.4rem .6rem;
  border:1px solid var(--border,#e5e7eb);
  border-radius:8px;
  background:#fff;
}
.kt-clearall { margin-left: .5rem; text-decoration: underline; }
.kt-clearall:hover { text-decoration: none; }

/* ---------- Kaksi palstaa ---------- */
.kt-archive{
  display:grid;
  grid-template-columns: 260px minmax(0,1fr);
  gap:24px;
}

/* Vasen info + suodatus */
.kt-archive__filters{ position:sticky; top:18px; align-self:start; }
.kt-info{ margin-bottom:18px; }
.kt-info__lead{ margin:.25rem 0 .5rem; font-weight:600; }
.kt-info__small{ margin:0 0 .6rem; color:#475569; }
.kt-info__switch{
  display:inline-block;
  margin:.25rem 0 1rem;
  text-decoration:none;
  font-weight:700;
}
.kt-info__switch:hover{ text-decoration:underline; }

.kt-filters{}
.kt-filters__title{
  margin:0 0 .5rem;
  font-size:1rem;
  font-weight:700;
  border-top:1px solid var(--border,#e5e7eb);
  padding-top:.75rem;
}

/* Oikea paneeli */
.kt-archive__content{ min-width:0; }

/* ---------- Korttiruudukko ---------- */
.kieliteko-grid{
  display:grid;
  gap:var(--gap,18px);
  grid-template-columns: repeat(3, minmax(0,1fr));
}
.kieliteko-grid > *{ min-width:0; } /* Firefox min-content fix */

/* Breakpointit */
@media (max-width:1100px){
  .kt-archive{ grid-template-columns: 220px minmax(0,1fr); }
  .kieliteko-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width:780px){
  .kt-archbar{
    grid-template-columns: auto 1fr;
    grid-template-areas:
      "icon title"
      ".    sort";
    row-gap:8px;
  }
  .kt-archive{ grid-template-columns: 1fr; }
  .kt-archive__filters{ position:static; }
  .kieliteko-grid{ grid-template-columns: 1fr; }
}

/* Pieni viimeistely kortin peukulle */
.kt-card__thumb{ width:22px; height:22px; margin-left:.25rem; vertical-align:middle; }

/* ---------- Suodatin – Booking/Tripadvisor -henkinen ---------- */
.kt-filterbar { margin: 0 0 16px; }
.kt-filter__controls { margin-bottom: 8px; font-size: .95rem; }
.btn-link { background: none; border: 0; padding: 0; cursor: pointer; text-decoration: underline; font: inherit; }
.btn-link:hover { text-decoration: none; }

/* --- Suodatin: riisutut “listatekstit”, ei laatikoita --- */
.kt-checkgrid {
  display: block;          /* yksi per rivi; vaihda gridiksi jos haluat 2 saraketta */
}

.kt-check{
  display:flex;
  align-items:center;
  gap:6px;
  margin:4px 0;            /* kevyt riviväli */
  padding:0;               /* EI laatikon sisätyyliä */
  border:0;                /* EI reunaa */
  border-radius:0;         /* EI kulmia */
  background:transparent;  /* EI taustaa */
  font-size: .9rem;        /* pienempi fontti */
  line-height: 1.2;
}

/* pienemmät checkboxit ja neutraalit tilat */
.kt-check input[type="checkbox"]{
  width:16px;
  height:16px;
  flex:0 0 auto;
  accent-color:auto;       /* selaimen oma tyyli; halutessasi poista tämä rivi */
}

/* hover: pelkkä tekstin korostus, ei taustaa */
.kt-check:hover span{
  text-decoration: underline;
}

/* valittuna vain pieni vahvistus, ei bokseja */
.kt-check input[type="checkbox"]:checked + span{
  font-weight: 600;
  text-decoration: none;
}


/* ---------- Sivutus ---------- */
.kt-pagination{ margin-top:24px; }

/* Tiivistä Kategoriat-osion pystymarginaalit */
fieldset.kt-filter { 
  margin: 0;
  padding: 0;
  border: 0;
}

.kt-filter--kategoria legend {
  display: block;          /* varmistetaan, että margin toimii tasaisesti */
  margin: 0 0 6px;         /* pienempi väli otsikon ja listan väliin */
  padding: 0;              /* poista oletuspadding */
  line-height: 1.2;
}

/* Pienennä kontrollirivin väliä (Valitse kaikki / Tyhjennä) tai poista kokonaan */
.kt-filter__controls {
  margin: 2px 0 6px;       /* aiempi oli 8px; tee tiiviimmäksi */
  font-size: .9rem;
}

/* Tiivistä yksittäisten rivien väliä */
.kt-check {
  margin: 2px 0;           /* aiempi oli 4–8px; säädä makusi mukaan */
}

/* Jos haluat aivan minimivälin legendin ja EKA rivin väliin, voit myös poistaa kontrollirivin:
.kt-filter__controls { display: none; }
*/

/* Piilota kontrollirivi kokonaan (varmistus, jos HTML joskus palaa) */
.kt-filter__controls { display: none !important; }

/* Tiivistä otsikon ja listan väliä, kun kontrolliriviä ei ole */
.kt-filter--kategoria legend { margin: 0 0 4px; }

/* Tiivistä yksittäisten rivien väliä (valinnainen) */
.kt-check { margin: 2px 0; }
