/* MXM Cx - TDA planı modülü stilleri. Yalnız .pln ve .pl* sınıfları; sitenin geri kalanına dokunmaz. Kaldırmak için bu dosya silinir (bkz. plan.js). */
.pln{display:flex;flex-direction:column;gap:14px;min-width:0}
.pln .plhead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.pln .plhead h1{margin:2px 0 4px}
.pln .plhead p{margin:0}
.pln .seg button.on{background:#3b7d57;color:#fff}

/* KPI kutuları */
.plkpi{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.plkpi.det{grid-template-columns:repeat(4,minmax(0,1fr))}
.plkpi.sm{grid-template-columns:repeat(4,minmax(0,1fr));margin:10px 0}
.plkpi>button,.plkpi>div{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;background:var(--paper);border:1.5px solid var(--line);border-radius:var(--r);padding:12px 14px;font:600 24px/1.1 var(--serif);color:var(--ink)}
.plkpi.det>div,.plkpi.sm>div{font-size:18px}
.plkpi>button{cursor:pointer;transition:border-color .12s,box-shadow .12s}
.plkpi>button:hover{border-color:#bcd5c4}
.plkpi>button.sel{border-color:#3b7d57;box-shadow:0 0 0 3px #e3ede6}
.plkpi span{font:500 12.5px/1.3 var(--sans);color:var(--ink-3)}
.plkpi .ok{color:#3b7d57}.plkpi .bad{color:var(--rust)}.plkpi .warn{color:var(--amber)}
@media (max-width:900px){.plkpi{grid-template-columns:repeat(3,minmax(0,1fr))}.plkpi.det{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* süzgeç */
.plfil{padding:10px 12px}
.plfil .row{align-items:center;flex-wrap:wrap;gap:8px}
.plfil select,.plfil input{min-height:40px}
.plfil .grow{flex:1;min-width:180px}

/* durum etiketleri */
.pls,.pld{display:inline-block;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--card);color:var(--ink-2)}
.pls.tamam,.pld.onay{background:#e3ede6;color:#2f6b49}
.pls.devam{background:#e2f1ed;color:#0f6f5d}
.pls.gecikti,.pld.red{background:var(--rust-soft);color:#a5472a}
.pls.baslamadi,.pld.karar{background:#f8eedf;color:#9a5f1c}
.pls.planli,.pld.yok,.pld.sablon{background:var(--card);color:var(--ink-2)}
.pld.sartli{background:#eef4dc;color:#5f7420}

/* Gantt */
.plg{padding:0;overflow:hidden}
.plgr{display:flex;min-width:0}
.plleft{flex:0 0 auto;width:min(560px,58%);border-right:1px solid var(--line);background:var(--paper);z-index:1}
.pltl{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}
.plhd{height:34px;display:grid;align-items:center;border-bottom:1px solid var(--line);background:var(--shell);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.plleft .plhd,.plleft .plrow{grid-template-columns:72px minmax(0,1fr) 104px 112px;gap:8px;padding:0 10px}
.plweeks{display:flex;white-space:nowrap}
.plweeks span{flex:0 0 auto;padding-left:5px;border-left:1px solid var(--line);font-family:var(--mono);letter-spacing:0;text-transform:none;font-size:11px}
.plrow{height:46px;border-bottom:1px solid var(--line-soft);position:relative;cursor:pointer}
.plleft .plrow{display:grid;align-items:center;font-size:13px}
.plrow:hover{background:#f3f7f4}
.plcode{font-size:12px;font-weight:600;color:var(--ink)}
.plsys{min-width:0;overflow:hidden;line-height:1.25}
.plsys,.plsys small{white-space:nowrap;text-overflow:ellipsis}
.plsys small{display:block;overflow:hidden;color:var(--ink-3);font-size:11.5px}
.pldt{font-family:var(--mono);font-size:11.5px;line-height:1.3;color:var(--ink-2)}
.pldt small,.plst small{display:block;font-size:11px}
.pldt small.bad{color:var(--rust)}.pldt small.ok{color:#3b7d57}
.plst{display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px}
.plst small{display:inline;color:var(--ink-3)}
.plgrid{position:relative;background-image:linear-gradient(90deg,var(--line-soft) 1px,transparent 1px)}
.plbar,.plghost{position:absolute;top:14px;height:18px;border-radius:5px}
.plghost{top:11px;height:24px;border:1.5px dashed #b9c3cc;background:transparent}
.plbar{background:#d6e6dc;border:1px solid #bcd5c4;overflow:hidden}
.plbar b{display:block;height:100%;background:#3b7d57}
.plbar.tamam{background:#3b7d57;border-color:#3b7d57}
.plbar.devam{background:#d5ece6;border-color:#9ccfc2}.plbar.devam b{background:#138a73}
.plbar.gecikti{background:var(--rust-soft);border-color:#e3a58f}.plbar.gecikti b{background:var(--rust)}
.plbar.baslamadi{background:#f6e7d1;border-color:#e2bb85}.plbar.baslamadi b{background:var(--amber)}
.plbar.planli{background:#e8edf1;border-color:#d3dbe2}
.plbar.man{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.55) 0 4px,transparent 4px 8px)}
.pltoday{position:absolute;top:0;bottom:0;width:0;border-left:2px solid var(--rust);opacity:.75;pointer-events:none}

/* lejant */
.plleg{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;font-size:12.5px;margin:0}
.plleg i{display:inline-block;width:22px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.plleg i.b{background:#d6e6dc;border:1px solid #bcd5c4}
.plleg i.f{background:#3b7d57}
.plleg i.o{border:1.5px dashed #b9c3cc;height:12px}
.plleg i.m{background:#e8edf1 repeating-linear-gradient(135deg,rgba(255,255,255,.7) 0 3px,transparent 3px 6px);border:1px solid #d3dbe2}
.plleg i.t{width:2px;height:14px;background:var(--rust);border-radius:0}

/* içe aktarma önizlemesi */
.plimp{margin:8px 0;padding-left:18px;max-height:220px;overflow:auto;font-size:13px;line-height:1.6}
.plimp .bad{color:var(--rust)}.plimp .ok{color:#3b7d57}

@media (max-width:700px){
  .plleft{width:62%}
  .plleft .plhd,.plleft .plrow{grid-template-columns:60px minmax(0,1fr) 92px;padding:0 8px}
  .plleft .plhd span:nth-child(3),.plleft .pldt{display:none}
}
.pln .seg{display:inline-flex}
.pln h1 .mono{font-size:.72em;font-weight:600;color:var(--ink-2);margin-right:4px}
#pmode button.on{background:#3b7d57;color:#fff}

/* ziyaret bağı: seçim listesi ve ziyaret sayfasındaki plan kartı */
.ppick .ppq{width:100%;min-height:40px}
.ppl{max-height:240px;overflow:auto;border:1px solid var(--line);border-radius:8px;margin-top:6px}
.ppi{display:grid;grid-template-columns:22px 62px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 10px;border-bottom:1px solid var(--line-soft);cursor:pointer;font-size:13px}
.ppi:last-child{border-bottom:0}
.ppi.on{background:#e3ede6}
.pvb .pvr{display:grid;grid-template-columns:62px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line-soft);font-size:13px}
.pvb .pvr:last-of-type{border-bottom:0}
.pvb .plst small.bad{color:var(--rust)}
.pvx{min-width:0;padding:2px 10px}
@media (max-width:700px){.pvb .pvr{grid-template-columns:56px minmax(0,1fr)}.pvb .pvr .plst{grid-column:2}}
