/* CGH Merkez Haritası (public + admin) */
.cmap{--cmap-primary:#3d5afe;--cmap-dark:#2a3eb1;--cmap-ink:#0f172a;--cmap-muted:#64748b;--cmap-line:#e2e8f0;background:#fff;color:var(--cmap-ink)}
.cmap *{box-sizing:border-box}
.cmap-head{text-align:center;max-width:760px;margin:0 auto 1.25rem}
.cmap-head h1,.cmap-head h2{margin:0 0 .4rem;font-size:clamp(1.45rem,2.6vw,2.1rem);line-height:1.2;color:var(--cmap-ink)}
.cmap-head p{margin:0;color:var(--cmap-muted);font-size:1rem}
.cmap-stats{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-top:.9rem}
.cmap-stat{background:#eef1ff;color:var(--cmap-dark);border-radius:999px;padding:.35rem .85rem;font-weight:600;font-size:.9rem}
.cmap-wrap{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;align-items:start}
.cmap-wrap.has-panel{grid-template-columns:minmax(0,1fr) 320px}
.cmap-stage{position:relative;background:linear-gradient(180deg,#f8faff,#fff);border:1px solid var(--cmap-line);border-radius:18px;padding:.75rem}
.cmap-svg{display:block;width:100%;height:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.cmap-il{fill:#eef1f6;stroke:#fff;stroke-width:.9;stroke-linejoin:round;cursor:pointer;transition:fill .15s ease}
.cmap-il:hover,.cmap-il:focus{fill:#dfe4ee;outline:none}
.cmap-il.l1{fill:#c7d0ff}.cmap-il.l2{fill:#97a8ff}.cmap-il.l3{fill:#6680ff}.cmap-il.l4{fill:#3d5afe}
.cmap-il.l1:hover,.cmap-il.l2:hover,.cmap-il.l3:hover,.cmap-il.l4:hover{fill:var(--cmap-dark)}
.cmap-il.is-selected{stroke:#0f172a;stroke-width:1.6}
.cmap-badge{pointer-events:none}
.cmap-badge circle{fill:#fff;stroke:var(--cmap-dark);stroke-width:1.2}
.cmap-badge text{font:700 9px/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;fill:var(--cmap-dark);text-anchor:middle;dominant-baseline:central}
.cmap-tip{position:absolute;z-index:5;pointer-events:none;background:#0f172a;color:#fff;border-radius:8px;padding:.35rem .6rem;font-size:.82rem;line-height:1.3;white-space:nowrap;transform:translate(-50%,calc(-100% - 10px));opacity:0;transition:opacity .1s}
.cmap-tip.is-on{opacity:1}
.cmap-tip b{display:block;font-size:.88rem}
.cmap-legend{display:flex;gap:.9rem;flex-wrap:wrap;align-items:center;justify-content:center;margin-top:.75rem;font-size:.82rem;color:var(--cmap-muted)}
.cmap-legend span{display:inline-flex;align-items:center;gap:.35rem}
.cmap-legend i{width:14px;height:14px;border-radius:4px;display:inline-block;border:1px solid rgba(15,23,42,.08)}
.cmap-panel{background:#fff;border:1px solid var(--cmap-line);border-radius:18px;padding:1rem;box-shadow:0 12px 30px rgba(15,23,42,.08);max-height:560px;overflow:auto}
.cmap-panel[hidden]{display:none}
.cmap-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.6rem}
.cmap-panel-head h3{margin:0;font-size:1.15rem}
.cmap-panel-head p{margin:.15rem 0 0;color:var(--cmap-muted);font-size:.88rem}
.cmap-close{border:0;background:#f1f5f9;border-radius:10px;width:36px;height:36px;font-size:1.2rem;line-height:1;cursor:pointer;color:#334155;flex:0 0 auto}
.cmap-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.cmap-item a{display:flex;gap:.7rem;align-items:center;padding:.55rem;border:1px solid var(--cmap-line);border-radius:12px;text-decoration:none;color:inherit;transition:border-color .15s,background .15s}
.cmap-item a:hover{border-color:var(--cmap-primary);background:#f6f8ff}
.cmap-logo{width:48px;height:48px;border-radius:10px;object-fit:contain;background:#fff;border:1px solid var(--cmap-line);flex:0 0 48px}
.cmap-logo--ph{display:flex;align-items:center;justify-content:center;font-size:1.3rem;background:#eef1ff;color:var(--cmap-dark);font-weight:700}
.cmap-item strong{display:block;font-size:.92rem;line-height:1.25}
.cmap-item small{display:block;color:var(--cmap-muted);font-size:.8rem;margin-top:.15rem}
.cmap-empty{margin:.25rem 0 .8rem;color:#334155;font-size:.92rem;line-height:1.5}
.cmap-cta{display:block;text-align:center;margin-top:.8rem;background:var(--cmap-primary);color:#fff!important;border-radius:12px;padding:.7rem 1rem;font-weight:600;text-decoration:none}
.cmap-cta:hover{background:var(--cmap-dark)}
.cmap-cta--ghost{background:#eef1ff;color:var(--cmap-dark)!important}
.cmap-index{margin-top:1.5rem}
.cmap-index h2,.cmap-index h3{font-size:1.1rem;margin:0 0 .75rem}
.cmap-index-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}
.cmap-index-card{border:1px solid var(--cmap-line);border-radius:14px;padding:.75rem .9rem}
.cmap-index-card h4{margin:0 0 .4rem;font-size:.98rem;display:flex;justify-content:space-between;gap:.5rem}
.cmap-index-card h4 a{color:var(--cmap-dark);text-decoration:none}
.cmap-index-card h4 span{color:var(--cmap-muted);font-weight:500;font-size:.85rem}
.cmap-index-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.3rem}
.cmap-index-card li a{color:#1e293b;text-decoration:none;font-size:.88rem}
.cmap-index-card li a:hover{color:var(--cmap-primary);text-decoration:underline}
.cmap-index-card li small{color:var(--cmap-muted)}
.cmap-home-more{text-align:center;margin-top:1rem}
.cmap-home-more a{display:inline-block}
.cmap-preview-flag{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:10px;padding:.5rem .8rem;font-size:.85rem;margin:0 auto 1rem;max-width:760px;text-align:center}
@media (max-width:900px){
  .cmap-wrap.has-panel{grid-template-columns:minmax(0,1fr)}
  .cmap-panel{max-height:none}
  .cmap-stage{padding:.35rem;border-radius:14px}
  .cmap-il{stroke-width:.6}
  .cmap-badge{display:none}
}
