/* Atık Yönetimi ve Geri Dönüşüm — modül stilleri. Prototipten (docs/moduller/atik-yonetimi/ATIK_YONETIMI_PROTOTIP_REV1_1.html)
   türetildi; bütün kurallar .dsp kapsamındadır (platformun Radzen ve diğer modül stilleriyle çakışmaz).
   Kabuk (marka / sekme / kenar menüsü) alınmadı: menü platformun NavMenu'sündedir. */

.dsp{--ink:#111827; --ink-soft:#34414b; --muted:#6b7280;
  --line:#d5dbe3; --line-soft:#e8edf1;
  --canvas:#f5f7fb; --surface:#fff; --surface-soft:#f4f7fa; --surface-alt:#fbfcfd;
  --accent:#2563eb; --accent-strong:#1d4ed8; --accent-soft:#dbeafe; --accent-wash:#eff6ff;
  --good:#15803d; --good-soft:#dcfce7;
  --warn:#92400e; --warn-soft:#fef3c7;
  --danger:#b91c1c; --danger-soft:#fee2e2;
  --neutral:#475569; --neutral-soft:#eef2f7;
  --head:#111827; --head-2:#1b2534; --head-ink:#cbd5e1;
  --h-ctl:26px; --h-row:24px;
  --fs-h2:13px; --fs:12px; --fs-sm:11px; --fs-xs:10px;
  --r:3px; --pill:999px;
  --font:Inter,"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;}
.dsp button,.dsp input,.dsp select,.dsp textarea{font-family:var(--font)}
.dsp .stage{display:flex;flex-direction:column;gap:10px;max-width:1600px}
.dsp .bar{min-height:36px;display:flex;align-items:center;gap:6px;padding:5px 10px;background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap}
.dsp .bar h3{margin:0;font-size:var(--fs-h2);font-weight:640}
.dsp .bar .sp,.dsp .sp{flex:1}
.dsp .card{border:1px solid var(--line);border-radius:5px;background:var(--surface);overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.05)}
.dsp .pad{padding:10px}
.dsp .btn{height:var(--h-ctl);display:inline-flex;align-items:center;gap:5px;padding:0 9px;font-size:var(--fs-sm);font-weight:550;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);cursor:pointer;white-space:nowrap;text-decoration:none}
.dsp .btn:hover:not(:disabled){background:var(--surface-soft);border-color:#bcc6d3}
.dsp .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.dsp .btn.primary:hover:not(:disabled){background:var(--accent-strong)}
.dsp .btn.ghost{background:transparent;border-color:transparent;color:var(--accent-strong)}
.dsp .btn.ghost:hover{background:var(--accent-wash)}
.dsp .btn.xs{height:20px;padding:0 6px;font-size:var(--fs-xs)}
.dsp .btn:disabled{opacity:.45;cursor:not-allowed}
.dsp .in,.dsp .sel{height:var(--h-ctl);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);font-size:var(--fs-sm);padding:0 7px;color:var(--ink);width:100%}
.dsp textarea.in{height:auto;padding:5px 7px;resize:vertical}
.dsp .in:focus,.dsp .sel:focus{outline:2px solid var(--accent);outline-offset:-1px}
.dsp .in:disabled,.dsp .sel:disabled{background:var(--surface-soft);color:var(--ink-soft);cursor:not-allowed}
.dsp .in.num{text-align:right}
.dsp label.lb{display:block;font-size:var(--fs-xs);color:var(--muted);margin:0 0 3px}
.dsp .req::after{content:" *";color:var(--danger)}
.dsp .grid{display:grid;gap:8px}
.dsp .g2{grid-template-columns:1fr 1fr}
.dsp .g3{grid-template-columns:1fr 1fr 1fr}
.dsp .w80{width:80px}
.dsp .w130{width:130px}
.dsp .w150{width:150px}
.dsp .w160{width:160px}
.dsp .w200{width:200px}
.dsp .w220{width:220px}
.dsp .w260{width:260px}
.dsp table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}
.dsp thead th{text-align:left;font-size:var(--fs-sm);font-weight:600;color:var(--ink-soft);background:var(--surface-soft);border-bottom:1px solid var(--line);padding:5px 8px;white-space:nowrap}
.dsp tbody td{border-bottom:1px solid var(--line-soft);padding:4px 8px;height:var(--h-row);vertical-align:middle}
.dsp tbody tr:hover{background:var(--accent-wash)}
.dsp tbody tr.sel{background:var(--accent-wash)}
.dsp tfoot td{padding:5px 8px;border-top:1px solid var(--line);font-weight:600;background:var(--surface-alt)}
.dsp .num{text-align:right;font-variant-numeric:tabular-nums}
.dsp .code{font-family:ui-monospace,Consolas,monospace;font-size:10.5px;background:var(--neutral-soft);border-radius:var(--r);padding:0 4px;color:#334155;white-space:nowrap}
.dsp .hz{color:var(--danger);font-weight:700}
.dsp .lnk{color:var(--accent-strong);cursor:pointer;text-decoration:underline dotted}
.dsp .muted{color:var(--muted)}
.dsp .sub{font-size:var(--fs-xs);color:var(--muted)}
.dsp .empty{text-align:center;color:var(--muted);padding:18px!important}
.dsp .tag{display:inline-flex;align-items:center;gap:4px;border-radius:var(--pill);padding:1px 7px;font-size:var(--fs-xs);font-weight:600;white-space:nowrap}
.dsp .t-ok{background:var(--good-soft);color:var(--good)}
.dsp .t-warn{background:var(--warn-soft);color:var(--warn)}
.dsp .t-bad{background:var(--danger-soft);color:var(--danger)}
.dsp .t-info{background:var(--accent-soft);color:var(--accent-strong)}
.dsp .t-mute{background:var(--neutral-soft);color:var(--neutral)}
.dsp .note{display:flex;gap:7px;align-items:flex-start;border-radius:5px;padding:7px 9px;font-size:var(--fs-sm);line-height:1.5}
.dsp .note.info{background:var(--accent-wash);color:#1e3a8a;border:1px solid #bfdbfe}
.dsp .note.warn{background:var(--warn-soft);color:#78350f;border:1px solid #fde68a}
.dsp .note.good{background:var(--good-soft);color:#14532d;border:1px solid #bbf7d0}
.dsp .note.bad{background:var(--danger-soft);color:#7f1d1d;border:1px solid #fecaca}
.dsp .proto{font-size:var(--fs-xs);color:var(--muted);font-style:italic;padding:6px 10px;border-top:1px dashed var(--line)}
.dsp .two{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:10px;align-items:start}
.dsp .two.rev{grid-template-columns:380px minmax(0,1fr)}
.dsp .two.eq{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.dsp .col{display:flex;flex-direction:column;gap:10px;min-width:0}
.dsp .kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.dsp .kpi{border:1px solid var(--line);background:var(--surface);border-radius:5px;padding:8px 10px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:2px}
.dsp .kpi span{font-size:var(--fs-xs);color:var(--muted)}
.dsp .kpi b{font-size:18px;font-weight:700}
.dsp .kpi:hover{border-color:var(--accent)}
.dsp .stp{display:flex;gap:2px;min-width:120px}
.dsp .stp span{flex:1;height:6px;border-radius:2px;background:var(--line-soft)}
.dsp .stp span.done{background:#86efac}
.dsp .stp span.cur{background:var(--accent)}
.dsp .stp.wide span{height:auto;padding:5px 4px;font-size:var(--fs-xs);text-align:center;color:var(--muted)}
.dsp .stp.wide span.done{background:var(--good-soft);color:var(--good)}
.dsp .stp.wide span.cur{background:var(--accent);color:#fff;font-weight:650}
/* Ziyaret planlama (16.10.2026 düzeni): solda ekleme paneli; sağda durak tablosu tam genişlikte, harita altında aynı genişlikte ve yüksek.
   Çok geniş ekranda harita tablonun yanına geçer. Eski üç sütun 1484 px ekranda tabloya ~470 px bırakıyordu (nokta adı 7 satıra bölünüyordu). */
.dsp .plan-grid{display:grid;grid-template-columns:270px minmax(0,1fr);grid-template-areas:"left stops" "left map";gap:10px;align-items:start}
.dsp .plan-grid>.pl-left{grid-area:left}
.dsp .plan-grid>.pl-stops{grid-area:stops}
.dsp .plan-grid>.mapc{grid-area:map}
.dsp .plan-grid .dsp-map{height:380px}
.dsp .plan-grid .stop-addr{display:block;max-width:420px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(min-width:1800px){
  .dsp .plan-grid{grid-template-columns:270px minmax(0,1fr) minmax(420px,.8fr);grid-template-areas:"left stops map"}
  .dsp .plan-grid .dsp-map{height:520px}
}
.dsp .sec{padding:8px 10px;border-top:1px solid var(--line-soft)}
.dsp .sec h4{margin:0 0 6px;font-size:var(--fs-sm);font-weight:640;display:flex;align-items:center;gap:6px}
.dsp .sec h4 .cnt{font-size:9px;background:var(--neutral-soft);border-radius:var(--pill);padding:0 6px}
.dsp .chips{display:flex;flex-direction:column;gap:4px}
.dsp .chip{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface-alt);border-radius:4px;padding:4px 7px;cursor:pointer;text-align:left;font-size:var(--fs-sm);width:100%;color:var(--ink)}
.dsp .chip:hover{border-color:var(--accent);background:var(--accent-wash)}
.dsp .chip .g1{flex:1;min-width:0}
.dsp .chip .plus{color:var(--accent-strong);font-weight:700}
.dsp .qa{position:relative}
.dsp .qa .in{height:32px;font-size:12px}
.dsp .qa-list{position:absolute;left:0;right:-160px;top:calc(100% + 2px);background:#fff;border:1px solid var(--line);border-radius:4px;box-shadow:0 8px 24px rgba(16,24,40,.18);z-index:20;display:none;max-height:340px;overflow:auto}
.dsp .qa-list.on{display:block}
.dsp .qa-it{display:flex;gap:8px;padding:6px 8px;cursor:pointer;border-bottom:1px solid var(--line-soft)}
.dsp .qa-it.on,.dsp .qa-it:hover{background:var(--accent-wash)}
.dsp .qa-it .ic{width:18px;text-align:center;flex:0 0 auto}
.dsp .hint{font-size:var(--fs-xs);color:var(--muted);margin-top:4px}
.dsp .acts{white-space:nowrap}
.dsp .ib{width:20px;height:20px;border:1px solid var(--line);background:#fff;border-radius:3px;cursor:pointer;font-size:10px;padding:0;color:var(--ink-soft);vertical-align:middle}
.dsp .ib:disabled{opacity:.3;cursor:default}
.dsp .ib.del{color:var(--danger)}
.dsp .grip{cursor:grab;color:#94a3b8;padding:0 4px;user-select:none;vertical-align:middle}
.dsp .rol{border:0;border-radius:var(--pill);padding:1px 8px;font-size:var(--fs-xs);font-weight:650;cursor:pointer;min-width:52px;display:inline-block;text-align:center}
.dsp .r-alim{background:#e0f2fe;color:#075985}
.dsp .r-ara{background:#f3e8ff;color:#6b21a8}
.dsp .r-teslim{background:var(--good-soft);color:var(--good)}
.dsp .checks{height:84px;overflow:auto;padding:6px 10px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:3px;background:var(--surface-alt)}
.dsp .ck{font-size:var(--fs-sm)}
.dsp .ck.warn{color:var(--warn)}
.dsp .ck.bad{color:var(--danger);font-weight:600}
.dsp .ck.good{color:var(--good);font-weight:600}
.dsp .ck.info{color:var(--neutral)}
.dsp tr.flash td{animation:dsp-fl 1.4s ease-out}
@keyframes dsp-fl{from{background:#fef08a}to{background:transparent}}
.dsp tr.drop td{box-shadow:inset 0 2px 0 var(--accent)}
.dsp .stops-box{max-height:430px;overflow:auto}
.dsp #map{width:100%;height:auto;display:block}
.dsp .saha-grid{display:grid;grid-template-columns:420px minmax(0,1fr);gap:10px;align-items:start}
.dsp .phone-wrap{display:flex;justify-content:center;padding:14px;background:var(--surface-soft)}
.dsp .phone{width:340px;height:640px;border:10px solid #1f2937;border-radius:28px;background:#f1f5f9;overflow:auto}
.dsp .ph-head{background:#0f172a;color:#e2e8f0;padding:10px 12px;position:sticky;top:0;z-index:2}
.dsp .ph-prog{height:4px;background:#334155;border-radius:2px;margin-top:8px;overflow:hidden}
.dsp .ph-prog span{display:block;height:100%;background:#22c55e}
.dsp .ph-card{margin:10px;background:#fff;border-radius:10px;padding:12px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.dsp .ph-t{margin:8px 0 2px;font-size:15px}
.dsp .ph-info{margin-top:8px;padding:8px;background:#f8fafc;border-radius:6px;font-size:11.5px}
.dsp .ph-btn{width:100%;min-height:44px;border-radius:8px;border:0;font-size:14px;font-weight:650;cursor:pointer;background:#e2e8f0;color:#1e293b;margin-top:6px}
.dsp .ph-btn.p{background:var(--accent);color:#fff}
.dsp .ph-row{display:flex;gap:6px;margin-top:8px}
.dsp .ph-row .s{flex:1;min-height:36px;font-size:11px;border-radius:8px;border:0;background:#e2e8f0;color:#334155;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none;font-weight:600}
.dsp .ph-in{height:40px;font-size:15px}
.dsp .ph-link{background:none;border:0;color:var(--danger);font-size:12px;margin-top:10px;cursor:pointer;text-decoration:underline}
.dsp .ph-list{margin:0 10px 10px}
.dsp .ph-li{display:flex;gap:8px;align-items:center;padding:6px 8px;background:#fff;border-radius:6px;margin-bottom:4px;font-size:11px}
.dsp .ph-li.cur{outline:2px solid var(--accent)}
.dsp .vstep{list-style:none;margin:0;padding:0}
.dsp .vstep li{display:flex;gap:8px;align-items:center;padding:4px 0;color:var(--muted)}
.dsp .vstep li i{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;font-style:normal;font-size:10px;flex:0 0 auto}
.dsp .vstep li.done{color:var(--ink)}
.dsp .vstep li.done i{background:var(--good);border-color:var(--good);color:#fff}
.dsp .vstep li.cur{color:var(--accent-strong);font-weight:650}
.dsp .vstep li.cur i{border-color:var(--accent);background:var(--accent-soft)}
.dsp .vstep .z{margin-left:auto;font-size:var(--fs-xs);color:var(--muted);font-weight:400}
.dsp .log{list-style:none;margin:0;padding:0;max-height:420px;overflow:auto}
.dsp .log li{display:grid;grid-template-columns:110px 140px 1fr;gap:8px;padding:4px 10px;border-bottom:1px solid var(--line-soft);font-size:var(--fs-sm)}
.dsp .netbox{height:var(--h-ctl);display:flex;align-items:center;justify-content:flex-end;padding:0 8px;background:var(--good-soft);color:var(--good);border-radius:var(--r);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}
.dsp .checks-inline{display:flex;gap:12px;flex-wrap:wrap;font-size:var(--fs-sm)}
.dsp .checks-inline label{display:flex;gap:4px;align-items:center}
.dsp .bal{padding:10px;min-height:150px;border-top:1px solid var(--line-soft)}
.dsp .balbar{height:24px;background:var(--line-soft);border-radius:3px;display:flex;overflow:hidden}
.dsp .balbar span{height:100%;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;white-space:nowrap;overflow:hidden}
.dsp .balbar span.gap{background:repeating-linear-gradient(45deg,#fca5a5,#fca5a5 4px,#fee2e2 4px,#fee2e2 8px);color:#7f1d1d}
.dsp .formula{font-family:ui-monospace,Consolas,monospace;font-size:11px;background:var(--surface-soft);padding:6px 8px;border-radius:3px;margin:8px 0;overflow-x:auto;white-space:nowrap}
.dsp .balnums{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}
.dsp .balnums div{background:var(--surface-soft);border-radius:4px;padding:5px 8px}
.dsp .balnums b{display:block;font-size:14px;font-variant-numeric:tabular-nums}
.dsp fieldset.fs{border:1px solid var(--line);border-radius:4px;padding:8px;margin:0;display:grid;gap:8px;min-width:0}
.dsp fieldset.fs legend{font-size:var(--fs-xs);color:var(--muted);padding:0 4px}
.dsp fieldset.plain{border:0;margin:0;min-width:0}
.dsp fieldset:disabled .in,.dsp fieldset:disabled .sel{background:var(--surface-soft)}
.dsp fieldset.fs:disabled{opacity:.55}
.dsp .radio-cards{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.dsp .rc{border:1px solid var(--line);border-radius:5px;padding:7px 8px;cursor:pointer;display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm)}
.dsp .rc.on{border-color:var(--accent);background:var(--accent-wash);box-shadow:inset 0 0 0 1px var(--accent)}
.dsp .fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line-soft)}
.dsp .fields div{background:#fff;padding:7px 10px;min-width:0}
.dsp .fields label{display:block;font-size:var(--fs-xs);color:var(--muted)}
.dsp .fields b{font-size:12.5px}
.dsp .tl{list-style:none;margin:0;padding:12px 12px 4px 24px;max-height:520px;overflow:auto}
.dsp .tl li{position:relative;padding:0 0 12px 12px;border-left:2px solid var(--line)}
.dsp .tl li::before{content:'';position:absolute;left:-6px;top:3px;width:10px;height:10px;border-radius:50%;background:var(--accent)}
.dsp .tl li:first-child::before{background:var(--good)}
.dsp .tl .z{font-size:var(--fs-xs);color:var(--muted)}
.dsp .pill-list{display:flex;flex-wrap:wrap;gap:4px}
/* Radzen .rz-body'ye translateZ(0) verir: position:fixed pencere viewport yerine o kaydırma kabına bağlanır, sayfa kaydırılmışken pencere ve karartma
   kaydırma kadar yukarıda kalır (uzun listede ekran dışı). Atık penceresi açıkken dönüşüm kaldırılır (uçtan uca test 16.10.2026). */
.rz-body:has(.dsp .modal){transform:none}
.dsp .modal{position:fixed;inset:0;background:rgba(15,23,42,.45);display:none;align-items:center;justify-content:center;z-index:50;padding:16px}
.dsp .modal.on{display:flex}
.dsp .modal .box{background:#fff;border-radius:6px;width:min(900px,100%);max-height:90vh;display:flex;flex-direction:column;overflow:hidden}
.dsp .modal .body{overflow:auto}
.dsp .seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;flex:0 0 auto}
.dsp .seg button{height:24px;border:0;background:var(--surface);color:var(--ink-soft);font-size:var(--fs-sm);padding:0 9px;cursor:pointer;display:flex;align-items:center;gap:4px}
.dsp .seg button+button{border-left:1px solid var(--line)}
.dsp .seg button.on{background:var(--accent-wash);color:var(--accent-strong);font-weight:640}
.dsp .board{display:flex;gap:8px;overflow-x:auto;padding:8px;align-items:flex-start;background:var(--surface-soft)}
.dsp .lane{flex:0 0 220px;display:flex;flex-direction:column;background:var(--surface-alt);border:1px solid var(--line);border-top:3px solid var(--c,#94a3b8);border-radius:5px;max-height:calc(100vh - 220px);min-width:0}
.dsp .lane.over{outline:2px dashed var(--accent);outline-offset:-2px;background:var(--accent-wash)}
.dsp .lane-head{display:flex;align-items:center;gap:6px;padding:6px 8px 2px;cursor:pointer;user-select:none}
.dsp .lane-t{flex:1;min-width:0;font-size:var(--fs-xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dsp .lane-n{font-size:9px;font-weight:700;background:var(--neutral-soft);border-radius:var(--pill);padding:0 6px;line-height:15px}
.dsp .lane-sum{padding:0 8px 5px;font-size:var(--fs-xs);color:var(--muted);border-bottom:1px solid var(--line-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:20px}
.dsp .lane-body{padding:6px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:56px}
.dsp .lane-empty{font-size:var(--fs-xs);color:var(--muted);text-align:center;padding:10px 0}
.dsp .lane.fold{flex-basis:34px}
.dsp .lane.fold .lane-sum,.dsp .lane.fold .lane-body{display:none}
.dsp .lane.fold .lane-head{flex-direction:column;padding:8px 0;writing-mode:vertical-rl}
.dsp .lane.fold .lane-t{overflow:visible}
.dsp .kc{background:#fff;border:1px solid var(--line);border-left:3px solid var(--hl,var(--line));border-radius:4px;padding:5px 7px;display:flex;flex-direction:column;gap:1px;font-size:var(--fs-sm);min-width:0}
.dsp .kc[draggable=true]{cursor:grab}
.dsp .board .kc{user-select:none}
.dsp .kc.dragging{opacity:.45}
.dsp .kc.sel{box-shadow:0 0 0 2px var(--accent)}
.dsp .kc-t,.dsp .kc-f{display:flex;align-items:center;gap:5px;min-width:0}
.dsp .kc-f{margin-top:3px;min-height:20px}
.dsp .kc-l{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.dsp .kc-flash{animation:dsp-kcfl 1.4s ease-out}
@keyframes dsp-kcfl{from{background:#fef08a}to{background:#fff}}
.dsp .board .lane{position:relative;flex:0 0 var(--lw,220px)}
.dsp .board.fit .lane{flex:1 1 0;min-width:110px}
.dsp .board .lane-body{overflow-x:hidden}
.dsp .board .kc-t,.dsp .board .kc-f{flex-wrap:wrap;row-gap:2px}
.dsp .board .kc-t a,.dsp .board .kc-t b,.dsp .board .kc-f .btn{white-space:nowrap}
.dsp .board .lane.fold,.dsp .board.fit .lane.fold{flex:0 0 34px;min-width:0}
.dsp .lane-grip{position:absolute;top:0;right:-6px;width:9px;height:100%;cursor:col-resize;z-index:3;border-radius:3px}
.dsp .lane-grip:hover,.dsp .lane-grip.on{background:color-mix(in srgb,var(--accent) 28%,transparent)}
.dsp .lane.fold .lane-grip{display:none}
.dsp .ctx{position:fixed;z-index:70;min-width:190px;max-width:300px;background:#fff;border:1px solid var(--line);border-radius:5px;box-shadow:0 8px 24px rgba(16,24,40,.18);padding:3px 0;font-size:var(--fs-sm)}
.dsp .ctx-h{padding:3px 12px 5px;font-size:var(--fs-xs);color:var(--muted);border-bottom:1px solid var(--line-soft);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dsp .ctx button{display:flex;align-items:center;gap:8px;width:100%;border:0;background:none;padding:5px 12px;text-align:left;cursor:pointer;font-size:var(--fs-sm);color:var(--ink);font-family:var(--font);white-space:nowrap}
.dsp .ctx button:hover:not(:disabled),.dsp .ctx button.on{background:var(--accent-wash)}
.dsp .ctx button:disabled{color:#a3adba;cursor:default}
.dsp .ctx-k{margin-left:auto;padding-left:14px;color:var(--muted);font-size:var(--fs-xs)}
.dsp .ctx hr{border:0;border-top:1px solid var(--line-soft);margin:3px 0}
.dsp .pn-dlbl{margin:10px 0 4px;font-size:var(--fs-xs);color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.dsp .pn-dur{display:flex;flex-wrap:wrap;gap:4px}
.dsp .pn-dur button{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border:1px solid var(--line);border-radius:var(--pill);background:#fff;font-size:var(--fs-sm);cursor:pointer;color:var(--ink);font-family:var(--font)}
.dsp .pn-dur button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-wash)}
.dsp .pn-dur button.on{border-color:var(--c);box-shadow:inset 0 0 0 1px var(--c);font-weight:640;cursor:default}
.dsp .pn-dur button:disabled:not(.on){color:#a3adba;cursor:default;background:var(--surface-soft)}
.dsp .pn-ge{list-style:none;margin:0;padding:0;font-size:var(--fs-sm)}
.dsp .pn-ge li{display:grid;grid-template-columns:104px minmax(0,1fr);gap:6px;padding:2px 0;border-bottom:1px solid var(--line-soft)}
.dsp .pn-gecis{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:var(--fs-sm)}
.dsp .modal .box.gn{max-width:100%}
.dsp .modal .box.gn .body{padding:10px;overflow:auto}
.dsp .gn-tab{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:-2px 0 8px}
.dsp .gn-tab button{border:0;background:none;padding:6px 10px;font-size:var(--fs-sm);color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;font-family:var(--font)}
.dsp .gn-tab button.on{color:var(--accent-strong);border-bottom-color:var(--accent);font-weight:640}
.dsp .nt-liste{max-height:340px;overflow:auto;border-top:1px solid var(--line-soft)}
.dsp .nt-ay{padding:4px 10px;background:var(--surface-soft);font-size:var(--fs-xs);font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.dsp .nt{padding:5px 10px;border-bottom:1px solid var(--line-soft)}
.dsp .nt-h{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm)}
.dsp .nt-m{font-size:var(--fs-sm);white-space:pre-wrap;margin-top:1px}
.dsp .nt.sabit{background:#fffbeb}
.dsp .zc{list-style:none;margin:0;padding:0;font-size:var(--fs-sm)}
.dsp .zc li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:6px;padding:4px 0;border-bottom:1px solid var(--line-soft)}
.dsp .zc li.dur{color:var(--danger)}
.dsp .kp{position:fixed;inset:0;z-index:80;background:rgba(15,23,42,.35);display:flex;justify-content:center;align-items:flex-start;padding-top:12vh}
.dsp .kp-box{width:min(620px,94vw);background:#fff;border-radius:7px;box-shadow:0 18px 48px rgba(16,24,40,.35);overflow:hidden}
.dsp .kp-box input{width:100%;height:44px;border:0;border-bottom:1px solid var(--line);padding:0 14px;font-size:14px;font-family:var(--font);outline:none}
.dsp .kp-l{max-height:52vh;overflow:auto}
.dsp .kp-it{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px 14px;cursor:pointer;font-size:var(--fs-sm)}
.dsp .kp-it.on{background:var(--accent-wash)}
.dsp .kp-ipucu{padding:6px 14px;font-size:var(--fs-xs);color:var(--muted);border-top:1px solid var(--line-soft);background:var(--surface-alt)}
.dsp .kc-kural{font-size:var(--fs-xs);font-weight:600;min-height:15px}
.dsp .ps-k{display:grid;grid-template-columns:minmax(0,1.4fr) 110px 120px 26px;gap:6px;align-items:center;margin-bottom:4px}
.dsp .ph-ust{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.dsp .ph-ust b,.dsp .ph-ust h3{margin:0;font-size:16px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dsp .ph-geri{flex:0 0 auto;width:40px;height:40px;border-radius:50%;border:0;background:#e2e8f0;color:#1e293b;display:grid;place-items:center;cursor:pointer;padding:0}
.dsp .ph-geri:hover{background:#cbd5e1}
.dsp .ph-geri:active{background:#94a3b8}
.dsp .ph-geri:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.dsp .ph-geri svg{width:22px;height:22px}
.dsp .ph-pin{width:100%;height:48px;font-size:24px;letter-spacing:.5em;text-align:center;border:1px solid var(--line);border-radius:8px;font-family:ui-monospace,Consolas,monospace}
.dsp .ph-ozet{display:grid;grid-template-columns:84px minmax(0,1fr);gap:5px 8px;margin:8px 0;font-size:12px}
.dsp .ph-ozet dt{color:var(--muted)}
.dsp .ph-ozet dd{margin:0;font-weight:600;word-break:break-word}
.dsp .ph-act{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}
.dsp .ph-act button,.dsp .ph-act a{position:relative;min-height:46px;border:0;border-radius:8px;background:#e2e8f0;color:#334155;font-size:11px;font-weight:600;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;text-decoration:none;font-family:var(--font)}
.dsp .ph-act span{font-size:15px}
.dsp .ph-act .ph-say{position:absolute;top:4px;right:5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;line-height:18px;font-style:normal}
.dsp .ph-soru{padding:8px 0;border-bottom:1px solid var(--line-soft);font-size:12px}
.dsp .ph-soru .ph-iki{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:5px}
.dsp .ph-iki button{min-height:34px;border-radius:7px;border:1px solid var(--line);background:#fff;font-weight:600;cursor:pointer;font-family:var(--font)}
.dsp .ph-iki button.on.e{background:var(--good-soft);border-color:var(--good);color:var(--good)}
.dsp .ph-iki button.on.h{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}
.dsp .ph-kayit{font-size:30px;text-align:center;font-variant-numeric:tabular-nums;margin:14px 0 6px}
.dsp .ph-kayit.on{color:var(--danger)}
.dsp .ph-gri{opacity:.55}
.dsp .ph-li .kilit{margin-left:4px}
.dsp .lk-sir{font-family:ui-monospace,Consolas,monospace;background:var(--surface-soft);border:1px dashed var(--line);border-radius:5px;padding:8px 10px;word-break:break-all}
.dsp .lk-pin{font-size:26px;letter-spacing:.35em;font-weight:700}
.dsp .kalan{display:inline-block;min-width:64px;text-align:right;font-variant-numeric:tabular-nums;font-weight:650}
.dsp .kalan.gec{color:var(--danger)}
.dsp .me-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dsp .neden{list-style:none;margin:0;padding:0;font-size:var(--fs-sm)}
.dsp .neden li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:6px;padding:5px 0;border-bottom:1px solid var(--line-soft)}
.dsp .kanal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px}
.dsp .kanal>div{border:1px solid var(--line);border-radius:5px;padding:8px 10px;display:flex;flex-direction:column;gap:4px}
@media(max-width:1000px){
  .dsp .me-grid,.dsp .kanal{grid-template-columns:1fr}
}
.dsp .gb-sat{display:grid;grid-template-columns:110px 110px minmax(0,1.4fr) 76px 90px 92px 96px 24px;gap:5px;align-items:center;margin-bottom:4px}
.dsp .gb-top{display:flex;justify-content:flex-end;gap:18px;font-variant-numeric:tabular-nums;margin-top:6px;font-size:var(--fs-sm)}
.dsp .crm-bag{display:inline-flex;align-items:center;gap:6px;border:1px solid #c7d2fe;background:#eef2ff;color:#3730a3;border-radius:var(--pill);padding:1px 8px;font-size:var(--fs-xs);font-weight:600}
.dsp .doc-onizle{border:1px solid var(--line);background:#fff;padding:18px 22px;font-size:12px;line-height:1.5;box-shadow:0 2px 10px rgba(0,0,0,.06)}
.dsp .doc-onizle h2{margin:0 0 4px;font-size:16px}
.dsp .doc-onizle table td,.dsp .doc-onizle table th{border:1px solid #cbd5e1;padding:4px 6px}
.dsp .doc-imza{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:26px}
.dsp .doc-imza div{border-top:1px solid #334155;padding-top:4px;text-align:center;font-size:11px}
.dsp .modal .box.gm-box{width:min(580px,100%)}
.dsp .gm-steps{margin:0;padding-left:18px;display:grid;gap:3px;font-size:var(--fs-sm)}
.dsp .gm-in{height:32px;font-size:12px}
.dsp .gm-prev{min-height:58px;display:flex;flex-direction:column;gap:2px;font-size:var(--fs-sm)}
.dsp .gm-prev a{font-size:var(--fs-xs);margin-left:6px}
.dsp .gm-kind{display:inline-block;margin-left:6px;padding:0 7px;border-radius:var(--pill);font-size:var(--fs-xs);font-weight:600;color:var(--good);background:var(--good-soft)}
.dsp .gm-kind.approx{color:#b45309;background:var(--warn-soft)}
.dsp .gm-warn{padding:3px 8px;border-radius:4px;font-size:var(--fs-xs);color:var(--warn);background:var(--warn-soft)}
.dsp .gm-err{color:var(--danger)}
.dsp button.gm-tag{border:0;cursor:pointer}
.dsp .tk{display:grid;grid-template-columns:240px minmax(0,1fr);gap:10px;align-items:start}
.dsp .tk-mini{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;padding:6px;text-align:center}
.dsp .tk-mini span{font-size:var(--fs-xs);color:var(--muted);font-weight:600}
.dsp .tk-mini button{position:relative;height:24px;border:0;background:none;border-radius:3px;cursor:pointer;font-size:var(--fs-sm);color:var(--ink);padding:0}
.dsp .tk-mini button:hover{background:var(--accent-wash)}
.dsp .tk-mini button.out{color:#b6bfcb}
.dsp .tk-mini button.tatil{color:#b91c1c}
.dsp .tk-mini button.bugun{font-weight:700;box-shadow:inset 0 0 0 1px var(--accent)}
.dsp .tk-mini button.on{background:var(--accent);color:#fff}
.dsp .tk-mini button i{position:absolute;bottom:2px;left:50%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--accent)}
.dsp .tk-mini button.on i{background:#fff}
.dsp .tk-tur{display:flex;align-items:center;gap:6px;padding:3px 10px;font-size:var(--fs-sm);cursor:pointer;min-width:0}
.dsp .tk-tur>span:not(.tk-sw):not(.tk-n):not(.tk-av){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dsp .tk-ara{padding:5px 10px 1px;font-size:var(--fs-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.dsp .tk-sw{width:10px;height:10px;border-radius:2px;background:var(--c);flex:0 0 auto}
.dsp .tk-av{width:18px;height:18px;border-radius:50%;background:var(--accent-soft);color:var(--accent-strong);display:grid;place-items:center;font-size:8px;font-weight:700;flex:0 0 auto}
.dsp .tk-av.ekip{border-radius:3px;background:var(--neutral-soft);color:var(--neutral)}
.dsp .tk-av.acik{background:var(--warn-soft);color:var(--warn)}
.dsp .tk-n{margin-left:auto;color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}
.dsp .tk-gec{display:grid;grid-template-columns:62px minmax(0,1fr);gap:6px;width:100%;border:0;border-bottom:1px solid var(--line-soft);background:none;padding:4px 10px;text-align:left;cursor:pointer;font-size:var(--fs-sm);color:var(--ink)}
.dsp .tk-gec:hover{background:var(--danger-soft)}
.dsp .tk-ay{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--line)}
.dsp .tk-dh{padding:4px 6px;font-size:var(--fs-xs);font-weight:600;color:var(--muted);background:var(--surface-soft);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.dsp .tk-d{min-height:98px;padding:3px 4px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);display:flex;flex-direction:column;gap:2px;cursor:pointer;min-width:0}
.dsp .tk-d:hover{background:var(--surface-alt)}
.dsp .tk-d.hs{background:#f8fafc}
.dsp .tk-d.tatil{background:#fef2f2}
.dsp .tk-d.out{background:#fbfcfd}
.dsp .tk-d.out .tk-dn b{color:#b6bfcb}
.dsp .tk-d.over{outline:2px dashed var(--accent);outline-offset:-2px;background:var(--accent-wash)}
.dsp .tk-dn{display:flex;align-items:center;gap:4px;font-size:11px;min-height:17px}
.dsp .tk-dn b{font-weight:600}
.dsp .tk-d.bugun .tk-dn b{background:var(--accent);color:#fff;border-radius:var(--pill);padding:0 6px}
.dsp .tk-tn{font-size:9px;color:#b91c1c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.dsp .tk-ev{display:block;width:100%;text-align:left;border:0;border-left:3px solid var(--c);background:color-mix(in srgb,var(--c) 13%,#fff);color:var(--ink);font-size:10.5px;line-height:16px;padding:0 5px;border-radius:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;font-family:var(--font)}
.dsp .tk-ev[draggable=true]{cursor:grab}
.dsp .tk-ev.bitti{opacity:.5}
.dsp .tk-ev.acik{background:#fff;outline:1px dashed var(--c);outline-offset:-1px}
.dsp .tk-ev.gec{box-shadow:inset -3px 0 0 #dc2626}
.dsp .tk-more{font-size:10px;color:var(--accent-strong);margin-left:auto}
.dsp .tk-hafta{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-left:1px solid var(--line)}
.dsp .tk-hafta .tk-d{min-height:380px}
.dsp .tk-ag-d{padding:5px 10px;background:var(--surface-soft);font-weight:600;font-size:var(--fs-sm);border-bottom:1px solid var(--line);display:flex;gap:8px}
.dsp .tk-ag{display:grid;grid-template-columns:12px minmax(0,1fr) 150px 170px;gap:8px;align-items:center;padding:4px 10px;border-bottom:1px solid var(--line-soft);font-size:var(--fs-sm);cursor:pointer}
.dsp .tk-ag:hover{background:var(--accent-wash)}
.dsp .tk-ag.bitti{color:var(--muted)}
.dsp .tk-leg{display:flex;gap:12px;flex-wrap:wrap;padding:5px 10px;font-size:var(--fs-xs);color:var(--muted);border-top:1px solid var(--line)}
.dsp .tk-leg i{display:inline-block;width:14px;height:9px;border-radius:2px;margin-right:4px;vertical-align:-1px;background:color-mix(in srgb,#0284c7 13%,#fff);border-left:3px solid #0284c7}
.dsp .modal .box.tk-pop{width:min(460px,100%)}
.dsp .tk-pop dl{display:grid;grid-template-columns:96px minmax(0,1fr);gap:4px 8px;margin:0;font-size:var(--fs-sm)}
.dsp .tk-pop dt{color:var(--muted)}
.dsp .tk-pop dd{margin:0}
@media(max-width:1000px){
  .dsp .tk{grid-template-columns:1fr}
  .dsp .tk-d{min-height:70px}
}
@media(max-width:1000px){
  .dsp .plan-grid,.dsp .two,.dsp .two.rev,.dsp .two.eq,.dsp .saha-grid{grid-template-columns:1fr}
  .dsp .plan-grid{grid-template-areas:"stops" "map" "left"}
  .dsp .kpis{grid-template-columns:repeat(3,1fr)}
  .dsp .fields{grid-template-columns:1fr 1fr}
  .dsp .qa-list{right:0}
}
@media(max-width:600px){
  .dsp .kpis{grid-template-columns:1fr 1fr}
  .dsp .g3{grid-template-columns:1fr}
}

/* ── Blazor uyarlaması ─────────────────────────────────────────────── */
.dsp{font-family:var(--font);font-size:var(--fs);line-height:1.45;color:var(--ink);background:var(--canvas);padding:10px;min-height:100%}
.dsp button,.dsp input,.dsp select,.dsp textarea{font-family:var(--font)}
.dsp .stage{max-width:none}
.dsp .modal{display:flex}
.dsp .page-head{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}
.dsp .page-head h1{margin:0;font-size:15px;font-weight:700}
.dsp .page-head .crumbs a{color:var(--accent-strong);cursor:pointer;text-decoration:none}
.dsp .dsp-toast{position:fixed;right:16px;bottom:16px;background:#0f172a;color:#fff;padding:9px 14px;border-radius:5px;font-size:12px;z-index:90;max-width:440px}
.dsp .dsp-err{background:var(--danger-soft);color:#7f1d1d;border:1px solid #fecaca;border-radius:5px;padding:7px 9px;font-size:var(--fs-sm)}
.dsp .tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);padding:0 8px;background:var(--surface)}
.dsp .tabs button{border:0;background:none;padding:7px 11px;font-size:var(--fs-sm);color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}
.dsp .tabs button.on{color:var(--accent-strong);border-bottom-color:var(--accent);font-weight:640}
.dsp .chkl{display:flex;gap:4px;align-items:center;font-size:var(--fs-sm);cursor:pointer}
.dsp .row-actions{white-space:nowrap;width:1%}
.dsp .scroll-y{max-height:calc(100vh - 230px);overflow:auto}
.dsp .scroll-y thead th{position:sticky;top:0;z-index:1}


/* F3 — ziyaret planlama haritası (pshRouteMap, Leaflet) */
.dsp .dsp-map{height:340px;border-top:1px solid var(--line-soft)}

/* F4 — telefon (personel mobil linki; .dsp kabuğu dışında): ziyaret noktası rol rozeti */
.m-rol{border-radius:999px;padding:1px 8px;font-size:11px;font-weight:650;display:inline-block;min-width:24px;text-align:center}
.m-rol.r-alim{background:#e0f2fe;color:#075985}
.m-rol.r-ara{background:#f3e8ff;color:#6b21a8}
.m-rol.r-teslim{background:#dcfce7;color:#15803d}
.m-chk{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}
.m-chk button{min-height:40px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-weight:600}
.m-chk button.on.e{background:#dcfce7;border-color:#15803d;color:#15803d}
.m-chk button.on.h{background:#fee2e2;border-color:#dc2626;color:#b91c1c}

/* Plaka uyarısı (İşletme): kırmızı süresi geçmiş belge / açık arıza, sarı uyarı gününe girmiş belge; tıklanınca İşletme'de araç kartı */
.dsp .plate-alert{border:0;background:none;cursor:pointer;font-weight:700;padding:0 3px;font-size:13px;line-height:1;vertical-align:baseline}
.dsp .plate-alert.bad{color:var(--danger)}
.dsp .plate-alert.warn{color:#d97706}
.dsp .plate-alert:hover{text-decoration:underline}
