/* Zoning Diagram Maker v1.0.0 — bubble-diagram-maker / adjacency-matrix-maker ile ayni gorsel dil */

.zdm-root{
  --zdm-ink:#1f2933; --zdm-mut:#8a94a6; --zdm-line:#ddd; --zdm-bg:#f9f9f9;
  --zdm-panel:#fff; --zdm-blue:#0073aa; --zdm-blue-d:#005a87;
  --zdm-green:#00a32a; --zdm-red:#c0392b; --zdm-h:640px;
  max-width:100%; margin:20px 0; border:1px solid var(--zdm-line); border-radius:8px;
  overflow:hidden; background:var(--zdm-bg); color:var(--zdm-ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
}
.zdm-root *,.zdm-root *::before,.zdm-root *::after{box-sizing:border-box}
.zdm-root.zdm-dark{--zdm-ink:#e6eaf0;--zdm-mut:#95a0b0;--zdm-line:#39424e;--zdm-bg:#1d232b;--zdm-panel:#252d36}

.zdm-head{padding:10px 12px;background:var(--zdm-panel);border-bottom:1px solid var(--zdm-line);display:flex;gap:8px;flex-wrap:wrap}
.zdm-head input{flex:1 1 220px;min-width:0;padding:8px 10px;border:1px solid var(--zdm-line);border-radius:4px;
  font-size:14px;background:var(--zdm-bg);color:var(--zdm-ink)}
.zdm-head input.zdm-sub{font-size:13px;color:var(--zdm-mut)}

.zdm-bar{display:flex;gap:6px;padding:8px 12px;background:var(--zdm-panel);border-bottom:1px solid var(--zdm-line);flex-wrap:wrap;align-items:center}
.zdm-grp{display:flex;gap:4px;align-items:center;padding-right:6px;border-right:1px solid var(--zdm-line)}
.zdm-grp:last-child{border-right:none;padding-right:0}
.zdm-grp label{font-size:12px;color:var(--zdm-mut);white-space:nowrap}
.zdm-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;background:var(--zdm-blue);color:#fff;
  border:none;border-radius:4px;cursor:pointer;font-size:12px;line-height:1;white-space:nowrap;
  transition:background .15s ease,transform .15s ease;font-family:inherit}
.zdm-btn:hover{background:var(--zdm-blue-d);transform:translateY(-1px)}
.zdm-btn:active{transform:translateY(0)}
.zdm-btn:focus-visible{outline:3px solid #ffb900;outline-offset:2px}
.zdm-btn.zdm-add{background:var(--zdm-green)}
.zdm-btn.zdm-add:hover{background:#008a20}
.zdm-btn.zdm-ghost{background:transparent;color:var(--zdm-ink);border:1px solid var(--zdm-line)}
.zdm-btn.zdm-ghost:hover{background:var(--zdm-line);color:var(--zdm-ink)}
.zdm-btn.zdm-danger{background:var(--zdm-red)}
.zdm-btn.zdm-danger:hover{background:#a5322a}
.zdm-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.zdm-sel{padding:6px 8px;border:1px solid var(--zdm-line);border-radius:4px;font-size:12px;
  background:var(--zdm-panel);color:var(--zdm-ink);font-family:inherit}
.zdm-num{width:58px;padding:6px 6px;border:1px solid var(--zdm-line);border-radius:4px;font-size:12px;
  text-align:right;background:var(--zdm-bg);color:var(--zdm-ink);font-family:inherit}

.zdm-main{display:flex;align-items:stretch;min-height:var(--zdm-h)}
.zdm-side{flex:0 0 268px;border-right:1px solid var(--zdm-line);background:var(--zdm-panel);
  display:flex;flex-direction:column;max-height:var(--zdm-h)}
.zdm-side h3{margin:0;padding:10px 12px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;
  color:var(--zdm-mut);border-bottom:1px solid var(--zdm-line);font-weight:700}
.zdm-list{list-style:none;margin:0;padding:6px;overflow:auto;flex:1}
.zdm-item{display:flex;align-items:center;gap:4px;padding:4px;border-radius:4px;flex-wrap:wrap}
.zdm-item:hover{background:var(--zdm-bg)}
.zdm-item.zdm-on{background:var(--zdm-bg);box-shadow:inset 0 0 0 1px var(--zdm-blue)}
.zdm-swatch{flex:0 0 10px;height:22px;border-radius:2px}
.zdm-item input.zdm-name{flex:1 1 auto;min-width:0;padding:5px 6px;border:1px solid transparent;border-radius:3px;
  font-size:13px;background:transparent;color:var(--zdm-ink);font-family:inherit}
.zdm-item input.zdm-name:focus{border-color:var(--zdm-blue);background:var(--zdm-bg);outline:none}
.zdm-item .zdm-zsel{flex:0 0 96px;padding:4px 4px;border:1px solid var(--zdm-line);border-radius:3px;
  font-size:11.5px;background:var(--zdm-bg);color:var(--zdm-ink);font-family:inherit}
.zdm-item .zdm-dim{flex:0 0 46px;padding:4px 4px;border:1px solid var(--zdm-line);border-radius:3px;
  font-size:11.5px;text-align:right;background:var(--zdm-bg);color:var(--zdm-ink);font-family:inherit}
.zdm-item .zdm-x{flex:0 0 10px;text-align:center;color:var(--zdm-mut);font-size:11px}
.zdm-item button.zdm-del{background:none;border:none;cursor:pointer;color:var(--zdm-mut);font-size:14px;
  padding:2px 4px;border-radius:3px;line-height:1}
.zdm-item button.zdm-del:hover{color:var(--zdm-red);background:var(--zdm-bg)}
.zdm-side-foot{padding:8px;border-top:1px solid var(--zdm-line);display:flex;gap:4px;flex-wrap:wrap}

.zdm-stage{flex:1 1 auto;overflow:auto;padding:14px;max-height:var(--zdm-h);background:var(--zdm-bg);
  display:flex;align-items:flex-start;justify-content:center}
.zdm-canvas{background:#fff;border:1px solid var(--zdm-line);border-radius:4px;touch-action:none;
  max-width:100%;cursor:default}
.zdm-root.zdm-dark .zdm-canvas{background:#141a20}

.zdm-key{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:10px 18px;
  border-top:1px solid var(--zdm-line);background:var(--zdm-panel);font-size:13px;color:var(--zdm-ink)}
.zdm-key i{display:inline-block;width:24px;height:16px;border-radius:3px;margin-right:7px;
  vertical-align:-2px;font-style:normal}
.zdm-key b{font-variant-numeric:tabular-nums}
.zdm-hint{color:var(--zdm-mut);font-size:12.5px;margin-left:auto}

.zdm-stats{padding:10px 18px;border-top:1px solid var(--zdm-line);background:var(--zdm-bg);
  font-size:13px;color:var(--zdm-mut);line-height:1.7}
.zdm-stats b{color:var(--zdm-ink)}
.zdm-warn{color:var(--zdm-red);font-weight:600}

.zdm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.zdm-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);background:#1f2933;color:#fff;
  padding:10px 16px;border-radius:6px;font-size:13px;z-index:99999;box-shadow:0 6px 20px rgba(0,0,0,.25)}

@media (max-width:860px){
  .zdm-main{flex-direction:column}
  .zdm-side{flex:1 1 auto;border-right:none;border-bottom:1px solid var(--zdm-line);max-height:none}
  .zdm-list{max-height:250px}
  .zdm-stage{max-height:none;padding:10px}
  .zdm-hint{margin-left:0;flex:1 1 100%}
}
@media print{ .zdm-bar,.zdm-side,.zdm-hint{display:none!important} .zdm-root{border:none} }

/* ==================================================================
   TEMA GERI ALMA — bopea/JNews arac icindeki ogeleri eziyor.
   Bu blok adjacency-matrix-maker v1.0.1'de CANLIDA olculdu:
   buton rengi #fff'e zorlaniyor, text-transform capitalize,
   td'lere kenarlik, ul/li dolgusu, input genisligi 76px'e sikisiyor.
   Ayni tema burada da gecerli, o yuzden v1.0.0'a bastan konuldu.
   ================================================================== */
.zdm-root .zdm-btn,
.zdm-root .zdm-sel,
.zdm-root select,
.zdm-root input{
  text-transform:none!important; letter-spacing:normal!important;
  font-family:inherit!important; box-shadow:none!important;
}
.zdm-root .zdm-btn{ color:#fff!important; }
.zdm-root .zdm-btn.zdm-ghost{ color:var(--zdm-ink)!important; background:transparent!important; }
.zdm-root .zdm-btn.zdm-ghost:hover{ background:var(--zdm-line)!important; }

.zdm-root ul.zdm-list{ padding:6px!important; margin:0!important; list-style:none!important; }
.zdm-root li.zdm-item{ margin:0!important; padding:4px!important; border:0!important; }
.zdm-root li.zdm-item::before,.zdm-root li.zdm-item::marker{ content:none!important; display:none!important; }
.zdm-root .zdm-item button.zdm-del{ color:var(--zdm-mut)!important; background:none!important; padding:2px 4px!important; }
.zdm-root .zdm-item button.zdm-del:hover{ color:var(--zdm-red)!important; }

.zdm-root .zdm-head input,
.zdm-root .zdm-item input{ background:var(--zdm-bg)!important; color:var(--zdm-ink)!important; }
.zdm-root .zdm-item input.zdm-name{
  width:auto!important; min-width:0!important; flex:1 1 auto!important;
  background:transparent!important; border:1px solid transparent!important;
}
.zdm-root .zdm-item input.zdm-name:focus{ border-color:var(--zdm-blue)!important; background:var(--zdm-bg)!important; }
.zdm-root .zdm-item .zdm-dim{ width:46px!important; min-width:46px!important; flex:0 0 46px!important; }
.zdm-root .zdm-item .zdm-zsel{ width:96px!important; min-width:96px!important; flex:0 0 96px!important; max-width:96px!important; }
.zdm-root .zdm-num{ width:58px!important; min-width:58px!important; }
.zdm-root .zdm-sel{ width:auto!important; max-width:210px; }
.zdm-root .zdm-side h3{ padding:10px 12px!important; margin:0!important; }
.zdm-root canvas.zdm-canvas{ max-width:100%!important; height:auto; display:block; margin:0!important; }
