/* ====== Kérdezze a Heti Értékelőt ====== */
.heti-ai-wrap{max-width:820px;margin:0 auto}
.heti-ai-form{display:flex;gap:12px}
.heti-ai-form input{flex:1;padding:15px 18px;border:2px solid var(--line);border-radius:12px;font:inherit;font-size:1.05rem;background:var(--card);color:var(--ink)}
.heti-ai-form input:focus{outline:none;border-color:var(--accent)}
.heti-ai-samples{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:16px}
.heti-ai-samples span{font-size:.85rem;color:var(--muted)}
.heti-ai-samples button{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:999px;padding:7px 14px;font:inherit;font-size:.85rem;cursor:pointer}
.heti-ai-samples button:hover{border-color:var(--accent);color:var(--accent)}
.heti-ai-thread{margin-top:26px;display:flex;flex-direction:column;gap:14px}
.hai-msg{padding:14px 18px;border-radius:14px;line-height:1.6;max-width:92%}
.hai-msg.user{align-self:flex-end;background:var(--accent);color:var(--accent-contrast,#fff)}
.hai-msg.bot{align-self:flex-start;background:var(--tint);color:var(--ink);border:1px solid var(--line)}
.hai-msg.wait{opacity:.7;font-style:italic}
.hai-msg.err{border-color:#c0392b;color:#c0392b}
.hai-sources{align-self:flex-start;display:flex;flex-direction:column;gap:5px;font-size:.86rem;padding-left:6px}
.hai-sources span{color:var(--muted);font-weight:700;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}
.hai-sources a{color:var(--accent);text-decoration:underline}
.heti-ai-note{margin-top:30px;font-size:.82rem;color:var(--muted)}

/* A három kiemelt oldal közti egyszerű navigáció. */
.feature-nav{width:min(100% - 48px,1360px);margin:28px auto 0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.feature-nav a{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:9px 14px;border-radius:999px;font:inherit;font-size:.82rem;font-weight:700}
.feature-nav a:hover{border-color:var(--accent);color:var(--accent)}

/* ====== Ügyeink térképe ====== */
.terkep-layout{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:44px;align-items:start}
.terkep-svg{width:100%;height:auto}
.tk-region{cursor:pointer}
.tk-region ellipse{fill:var(--tint);stroke:var(--line);stroke-width:2;transition:fill .2s,stroke .2s}
.tk-region text{text-anchor:middle;font-weight:700;font-size:17px;fill:var(--ink);pointer-events:none;font-family:inherit}
.tk-region:hover ellipse,.tk-region.active ellipse{fill:var(--accent);stroke:var(--accent-d,var(--accent))}
.tk-region:hover text,.tk-region.active text{fill:#fff}
.terkep-tabs{display:flex;flex-wrap:wrap;gap:8px}
.terkep-tab{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 16px;border-radius:999px;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer}
.terkep-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}
.terkep-towns{display:none;flex-wrap:wrap;gap:8px;margin-top:18px}
.terkep-towns.active{display:flex}
.terkep-town{border:1px dashed var(--line);background:none;color:var(--ink);padding:7px 13px;border-radius:8px;font:inherit;font-size:.86rem;cursor:pointer}
.terkep-town:hover{border-style:solid;border-color:var(--accent);color:var(--accent)}
.terkep-search{display:flex;gap:10px;margin-top:24px}
.terkep-search input{flex:1;padding:11px 14px;border:1px solid var(--line);border-radius:10px;font:inherit;background:var(--card);color:var(--ink)}
.terkep-search input:focus{outline:none;border-color:var(--accent)}
.terkep-results{margin-top:44px}
.terkep-hint{color:var(--muted)}
.terkep-res-title{font-size:1.4rem;margin-bottom:18px}
.terkep-projects,.terkep-news{margin-top:28px}.terkep-projects>h4,.terkep-news>h4{font-size:1rem;margin-bottom:14px;color:var(--accent)}
.terkep-project-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.terkep-project{border:1px solid var(--line);border-radius:12px;padding:18px 20px;background:var(--card)}
.terkep-project-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.terkep-project-head strong{font-size:1rem;line-height:1.35}.terkep-project p{margin-top:10px;color:var(--muted);font-size:.88rem;line-height:1.5}
.terkep-project .vall-bar{margin-top:14px}

/* Hargita-atlasz elrendezés: a térkép és a választó külön, jól áttekinthető panel. */
.terkep-atlas{grid-template-columns:minmax(320px,1.05fr) minmax(340px,.95fr);gap:0;background:#20292B;border:2px solid #121212;box-shadow:0 18px 40px rgba(18,18,18,.16)}
.terkep-map-card{position:relative;min-height:560px;padding:30px 34px 26px;background:#20292B;color:#fff;overflow:hidden}
.terkep-map-kicker,.terkep-side-kicker{font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.terkep-map-kicker{color:#37B7D4}.terkep-map-intro{margin-top:10px;color:#B9C7C9;font-size:.88rem;max-width:28ch}
.terkep-map-card .terkep-svg{display:block;width:min(100%,400px);margin:18px auto 0;position:relative;z-index:1}
.terkep-map-card .tk-region ellipse{fill:#2D3C3E;stroke:#5B7F84;stroke-width:2;transition:fill .2s,stroke .2s,transform .2s}
.terkep-map-card .tk-region:hover ellipse,.terkep-map-card .tk-region.active ellipse{fill:#E14D3A;stroke:#fff;transform:scale(1.025);transform-origin:center}
.terkep-map-card .tk-region text{fill:#fff;font-size:16px}
.terkep-map-legend{position:absolute;left:34px;right:34px;bottom:25px;display:flex;align-items:center;justify-content:space-between;color:#9EB8BC;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.terkep-map-legend span:first-child{display:flex;align-items:center;gap:8px}.terkep-map-legend i{display:block;width:10px;height:10px;background:#E14D3A;border-radius:50%}.terkep-compass{display:grid;place-items:center;width:26px;height:26px;border:1px solid #5B7F84;color:#37B7D4}
.terkep-control-card{padding:34px;background:#fff;color:var(--ink)}
.terkep-control-card .terkep-side-kicker{color:var(--accent)}.terkep-control-card h2{font:700 2rem/1.05 var(--display);margin-top:10px;color:var(--ink)}.terkep-side-intro{margin-top:12px;color:var(--muted);font-size:.9rem;line-height:1.55}
.terkep-control-card .terkep-tabs{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.terkep-control-card .terkep-tab{border:1px solid var(--line);border-radius:0;padding:12px 13px;text-align:left;line-height:1.25}
.terkep-control-card .terkep-tab.active{background:var(--ink);border-color:var(--ink);color:#fff}
.terkep-control-card .terkep-towns{margin-top:14px;gap:7px}.terkep-control-card .terkep-town{border-radius:0;padding:8px 10px;font-size:.8rem}
.terkep-town-kicker{margin-top:32px;color:var(--muted)}.terkep-control-card .terkep-search{margin-top:12px}.terkep-control-card .terkep-search input{border-radius:0;background:#F0F0EB}.terkep-control-card .terkep-search .btn{border-radius:0;white-space:nowrap}
.terkep-news{border-top:2px solid var(--ink);padding-top:26px}.terkep-projects{border-top:2px solid var(--ink);padding-top:26px}
.terkep-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.terkep-card{display:block;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card);transition:border-color .2s,transform .2s}
.terkep-card:hover{border-color:var(--accent);transform:translateY(-3px)}
.terkep-thumb{aspect-ratio:16/9;background:var(--tint)}
.terkep-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.terkep-card-body{padding:14px 16px}
.terkep-card-body h4{font-size:1rem;line-height:1.4;color:var(--ink)}
.terkep-card-body time{display:block;margin-top:8px;font-size:.78rem;color:var(--muted)}

/* ====== Vállalás-követő ====== */
.vall-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:34px}
.vall-stat{border:1px solid var(--line);border-radius:12px;padding:20px;text-align:center;background:var(--card)}
.vall-stat b{display:block;font-size:2.1rem;color:var(--ink)}
.vall-stat span{font-size:.82rem;color:var(--muted)}
.vall-stat.kesz b{color:#1e8e5a}
.vall-stat.folyamatban b{color:#c98a1b}
.vall-stat.tervezes b{color:var(--accent)}
.vall-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.vall-filter button{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:8px 16px;border-radius:999px;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}
.vall-filter button.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.vall-list{display:flex;flex-direction:column;gap:16px}
.vall-item{border:1px solid var(--line);border-radius:12px;padding:22px 24px;background:var(--card)}
.vall-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.vall-head h3{font-size:1.15rem;flex:1}
.vall-badge{font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:999px}
.vall-badge.kesz{background:#e2f4ea;color:#1e8e5a}
.vall-badge.folyamatban{background:#fdf1dc;color:#a8720f}
.vall-badge.tervezes{background:var(--tint);color:var(--accent)}
.vall-region{margin-top:8px;font-size:.84rem;color:var(--muted)}
.vall-item p{margin-top:10px;color:var(--muted);line-height:1.6}
.vall-bar{position:relative;margin-top:16px;height:22px;background:var(--tint);border-radius:999px;overflow:hidden}
.vall-bar-in{height:100%;border-radius:999px;transition:width .6s ease}
.vall-bar-in.kesz{background:#1e8e5a}
.vall-bar-in.folyamatban{background:#e0a531}
.vall-bar-in.tervezes{background:var(--accent-soft,var(--accent))}
.vall-pct{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:.74rem;font-weight:700;color:var(--ink)}
.vall-link{display:inline-block;margin-top:14px;font-size:.88rem;font-weight:600;color:var(--accent)}

@media (max-width:900px){
  .terkep-layout{grid-template-columns:1fr}
  .terkep-map-card{min-height:500px}
  .terkep-cards{grid-template-columns:1fr}
  .terkep-project-list{grid-template-columns:1fr}
  .vall-stats{grid-template-columns:repeat(2,1fr)}
  .heti-ai-form{flex-direction:column}
}
