.rhk-root{
  --rhk-purple:#5349D3; --rhk-sky:#ADE0F7; --rhk-lav:#7B68EE;
  --rhk-ink:#1E1B3B; --rhk-line:#e7e6f5; --rhk-muted:#6b6a86;
  font-family:"Lato",-apple-system,Roboto,Arial,sans-serif; color:var(--rhk-ink);
}
.rhk-note{background:#fff8e1;border:1px solid #f0d98a;color:#6b5a10;
  padding:8px 12px;border-radius:8px;font-size:13px;margin-bottom:12px;}
.rhk-loading{padding:24px;color:var(--rhk-muted);}
.rhk-bar{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin-bottom:14px;}
.rhk-count{font-size:14px;color:var(--rhk-muted);}
.rhk-count b{color:var(--rhk-purple);}
/* Filtrid: siltide veerg kohandub pikima sildi järgi (nt vene "ПОКАЗАТЬ"),
   nii et sildid ei murdu ega lähe read paigast ära.
   NB: display:contents AINULT filtriridadele — korruseplaani nupuread (.rhk-fp-bldg /
   .rhk-fp-floor) kasutavad sama klassi .rhk-frow ja peavad jääma tavaliseks flex-reaks. */
.rhk-filters{display:grid;grid-template-columns:max-content 1fr;gap:10px 14px;align-items:center;margin-bottom:16px;}
.rhk-filters > .rhk-frow{display:contents;}
.rhk-frow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.rhk-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.rhk-flabel{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--rhk-muted);white-space:nowrap;}
/* Kitsal ekraanil: silt nuppude kohale omaette reale */
@media(max-width:560px){
  .rhk-filters{display:flex;flex-direction:column;align-items:stretch;gap:12px;}
  .rhk-filters > .rhk-frow{display:flex;flex-direction:column;align-items:flex-start;gap:6px;}
}
.rhk-chip{padding:7px 14px;border-radius:999px;border:1px solid var(--rhk-line);
  background:#fff;color:var(--rhk-ink);font-size:14px;cursor:pointer;transition:all .12s;}
.rhk-chip:hover{border-color:var(--rhk-lav);}
.rhk-chip.on{background:var(--rhk-purple);border-color:var(--rhk-purple);color:#fff;font-weight:700;}
.rhk-toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;}
.rhk-layout{display:grid;grid-template-columns:1fr 360px;gap:20px;align-items:start;}
@media(max-width:900px){.rhk-layout{grid-template-columns:1fr;}}
.rhk-tablewrap{overflow-x:auto;border:1px solid var(--rhk-line);border-radius:12px;}
table.rhk-table{border-collapse:collapse;width:100%;font-size:14px;min-width:640px;}
.rhk-table th,.rhk-table td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--rhk-line);white-space:nowrap;}
.rhk-table th{background:#f6f5ff;color:var(--rhk-muted);font-weight:700;font-size:12px;
  letter-spacing:.04em;text-transform:uppercase;cursor:pointer;user-select:none;}
.rhk-table tbody tr{cursor:pointer;transition:background .1s;}
.rhk-table tbody tr:hover,.rhk-table tbody tr.active{background:#f0eefc;}
.rhk-table td.num{text-align:right;font-variant-numeric:tabular-nums;}
.rhk-price{font-weight:700;}
.rhk-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;}
.rhk-badge.vaba{background:#e3f6e8;color:#1c7a3d;}
.rhk-badge.broneeritud{background:#fff2cf;color:#8a6a00;}
.rhk-badge.muudud{background:#ececf0;color:#7a7a86;}
.rhk-badge.kysi{background:#e7f2ff;color:#2456a6;}
.rhk-empty{padding:28px;text-align:center;color:var(--rhk-muted);}
.rhk-plan{position:sticky;top:16px;border:1px solid var(--rhk-line);border-radius:12px;
  overflow:hidden;background:#fff;}
.rhk-plan-head{padding:12px 14px;background:var(--rhk-ink);color:#fff;font-size:13px;
  letter-spacing:.05em;text-transform:uppercase;}
.rhk-plan-img{display:block;width:100%;height:auto;background:#f6f5ff;min-height:160px;}
.rhk-plan-meta{padding:12px 14px;font-size:14px;line-height:1.5;}
.rhk-plan-meta .big{font-size:16px;font-weight:700;color:var(--rhk-purple);}
.rhk-plan-empty{padding:28px 14px;color:var(--rhk-muted);font-size:14px;}

/* v0.2 additions */
.rhk-bar{justify-content:space-between;}
.rhk-reset{background:none;border:1px solid var(--rhk-line);border-radius:8px;
  padding:6px 12px;font-size:13px;color:var(--rhk-muted);cursor:pointer;}
.rhk-reset:hover{border-color:var(--rhk-lav);color:var(--rhk-purple);}
.rhk-arrow{color:var(--rhk-purple);font-size:10px;}
.rhk-btn{display:inline-block;padding:9px 16px;border-radius:8px;border:1px solid var(--rhk-purple);
  background:#fff;color:var(--rhk-purple);font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;}
.rhk-btn:hover{background:#f0eefc;}
.rhk-btn-primary{background:var(--rhk-purple);color:#fff;}
.rhk-btn-primary:hover{background:#443acb;color:#fff;}
/* modal */
.rhk-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;}
.rhk-modal-bg{position:absolute;inset:0;background:rgba(30,27,59,.55);}
.rhk-modal-box{position:relative;background:#fff;border-radius:14px;max-width:900px;width:100%;
  max-height:90vh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.3);}
.rhk-m-close{position:absolute;top:10px;right:14px;background:none;border:none;font-size:28px;
  line-height:1;color:#fff;cursor:pointer;z-index:2;text-shadow:0 1px 4px rgba(0,0,0,.4);}
.rhk-m-grid{display:grid;grid-template-columns:1.1fr 1fr;}
@media(max-width:720px){.rhk-m-grid{grid-template-columns:1fr;}}
.rhk-m-left{background:#f6f5ff;display:flex;align-items:center;justify-content:center;}
.rhk-m-img{width:100%;height:auto;display:block;}
.rhk-m-noimg{padding:60px 20px;color:var(--rhk-muted);}
.rhk-m-right{padding:26px 26px 30px;}
.rhk-m-title{font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--rhk-muted);}
.rhk-m-price{font-size:26px;font-weight:800;color:var(--rhk-purple);margin:4px 0 16px;display:flex;align-items:center;gap:10px;}
.rhk-m-price .rhk-badge{font-size:12px;}
table.rhk-m-specs{width:100%;border-collapse:collapse;margin-bottom:16px;}
.rhk-m-specs th{text-align:left;color:var(--rhk-muted);font-weight:600;padding:7px 0;width:120px;font-size:14px;}
.rhk-m-specs td{padding:7px 0;font-weight:700;font-size:14px;border-bottom:1px solid var(--rhk-line);}
.rhk-m-agent{background:#f6f5ff;border-radius:10px;padding:14px 16px;font-size:14px;line-height:1.5;margin-bottom:16px;}
.rhk-m-agent-name{font-weight:700;}
.rhk-m-agent a{color:var(--rhk-purple);}

/* v0.3 interaktiivne majaskeem */
.rhk-plan-head-b{}
.rhk-schem{position:relative;line-height:0;background:#f6f5ff;}
.rhk-schem-img{display:block;width:100%;height:auto;}
.rhk-schem-svg{position:absolute;inset:0;width:100%;height:100%;}
.rhk-zone{fill:rgba(83,73,211,0);stroke:rgba(83,73,211,0);stroke-width:.4;
  cursor:pointer;transition:fill .12s,stroke .12s;}
.rhk-schem:hover .rhk-zone{stroke:rgba(83,73,211,.35);}
.rhk-zone:hover{fill:rgba(83,73,211,.28);stroke:rgba(83,73,211,.9);}
.rhk-zone.hot{fill:rgba(123,104,238,.38);stroke:var(--rhk-purple);stroke-width:.6;}
.rhk-plan-metaholder .rhk-plan-meta{padding:12px 14px;}

/* v0.5 — korteriplaan külgpaneelis */
.rhk-plan-floor{border-top:1px solid var(--rhk-line);}
.rhk-plan-floor-lbl{padding:8px 14px 0;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--rhk-muted);}
.rhk-plan-floor-img{display:block;width:100%;height:auto;padding:6px 14px 12px;}

/* v0.5 — korruseplaanide vaatur */
.rhk-fp{margin-top:34px;border-top:2px solid var(--rhk-line);padding-top:22px;}
.rhk-fp-title{font-size:22px;font-weight:800;color:var(--rhk-ink);margin:0 0 14px;}
.rhk-fp-bldg,.rhk-fp-floor{gap:8px;margin-bottom:10px;}
.rhk-fp-view{margin-top:8px;border:1px solid var(--rhk-line);border-radius:12px;overflow:hidden;background:#f6f5ff;position:relative;}
.rhk-fp-img{display:block;width:100%;height:auto;}
.rhk-fp-pdf{display:block;width:100%;height:75vh;border:0;background:#fff;}
.rhk-fp-open{position:absolute;top:12px;right:12px;background:#fff;}

/* v0.5 — müügiinfo */
.rhk-muugiinfo{margin-top:30px;border-top:2px solid var(--rhk-line);padding-top:18px;font-size:15px;line-height:1.6;}
.rhk-muugiinfo h1,.rhk-muugiinfo h2,.rhk-muugiinfo h3{color:var(--rhk-ink);}

/* v0.6 — pop-up kontaktivorm (Fluent) */
.rhk-m-right{overflow:auto;max-height:90vh;}
/* Pop-upi järjekord: korteri andmed → "Lae alla PDF" → vahejoon → "Küsi lisainfot" + vorm */
.rhk-m-formtitle{font-size:20px;font-weight:800;color:var(--rhk-purple);margin:0 0 10px;}
.rhk-m-apt{margin-bottom:14px;}
.rhk-m-apt .rhk-m-title{margin-bottom:2px;}
.rhk-m-form .ff-el-input--label label{font-size:13px;color:var(--rhk-muted);}
.rhk-m-form input[type=text],.rhk-m-form input[type=email],.rhk-m-form input[type=tel],.rhk-m-form textarea{width:100%;}
.rhk-m-form .ff-btn-submit,.rhk-m-form button[type=submit]{background:var(--rhk-purple)!important;border-color:var(--rhk-purple)!important;}

/* v0.7 — tabeli joondus ja veerud */
.rhk-table th, .rhk-table td { text-align: center !important; }
.rhk-table td.num { text-align: center !important; }
.rhk-table th { white-space: normal; vertical-align: middle; }   /* pikad päised (Rõdu/terrass m²) reavahetusega */
.rhk-table td { white-space: nowrap; }
.rhk-table th .rhk-arrow { display: inline; }

/* v0.7.1 — Rõdu/terrass veerg kitsamaks (päis murdub) */
.rhk-table th[data-k="balc"]{ width:78px; white-space:normal; }
.rhk-table th[data-k="area"]{ width:88px; white-space:normal; }

/* v1.1 — pop-upi "Lae alla PDF" nupp */
.rhk-m-actions{ margin:0 0 18px; padding-bottom:18px; border-bottom:1px solid var(--rhk-line); }
.rhk-pdf-btn{
  display:inline-flex; align-items:center; gap:8px;
  background:#fff; color:var(--rhk-purple); border:1px solid var(--rhk-purple);
  border-radius:8px; padding:9px 16px; font-size:14px; font-weight:700;
  font-family:inherit; cursor:pointer; transition:background .12s;
}
.rhk-pdf-btn::before{ content:"⤓"; font-size:15px; line-height:1; }
.rhk-pdf-btn:hover:not(:disabled){ background:#f0eefc; }
.rhk-pdf-btn:disabled{ opacity:.6; cursor:default; }
.rhk-pdf-btn:focus-visible{ outline:2px solid var(--rhk-lav); outline-offset:2px; }

/* v0.8 — Suvekampaania bänner (sama toon nagu avalehe kampaaniakast #7B68EE) */
.rhk-campaign{
  background:var(--rhk-lav); color:#fff; font-weight:800;
  font-size:17px; line-height:1.35; text-align:center;
  padding:16px 22px; border-radius:12px; margin-bottom:18px;
  letter-spacing:.02em;
}
@media(max-width:600px){ .rhk-campaign{ font-size:15px; padding:13px 16px; } }
