/* ==========================================================================
   Dağıtım · Duran Varlık — ekran stilleri.
   Kaynak: docs/moduller/dagitim/DAGITIM_DURAN_VARLIK_PROTOTIP.html (uygulama yüzeyi). Listeler Radzen'siz,
   prototipteki gibi düz tablo. BÜTÜN kurallar .fa kök sınıfının altındadır: sınıf adları (proc-grid, proc-btn,
   tabs, drawer…) Satın Alma'nın genel stilleriyle aynı adı taşısa da buradaki kurallar dışarı sızmaz; Satın Alma
   ekranları etkilenmez. Telefon ekranı .fa.fa-phone kökündedir (Saha Uygulaması).
   ========================================================================== */
.fa {
  --proc-ink: #111827; --proc-ink-soft: #34414b; --proc-muted: #6b7280;
  --proc-line: #d5dbe3; --proc-line-soft: #e8edf1;
  --proc-canvas: #f5f7fb; --proc-surface: #ffffff; --proc-surface-soft: #f4f7fa;
  --proc-accent: #2563eb; --proc-accent-strong: #1d4ed8; --proc-accent-soft: #dbeafe; --proc-accent-wash: #eff6ff;
  --proc-good: #15803d; --proc-good-soft: #dcfce7; --proc-warning: #92400e; --proc-warning-soft: #fef3c7;
  --proc-danger: #b91c1c; --proc-danger-soft: #fee2e2; --proc-neutral: #475569; --proc-neutral-soft: #eef2f7;
  --proc-h-bar: 36px; --proc-h-control: 26px; --proc-h-row: 24px;
  --proc-font: Inter, "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  --proc-fs-h2: 13px; --proc-fs-h3: 12px; --proc-fs-base: 12px; --proc-fs-sm: 11px; --proc-fs-xs: 10px;
}
.fa, .fa * { box-sizing: border-box; font-family: var(--proc-font); }
.fa { background: var(--proc-canvas); color: var(--proc-ink); font-size: var(--proc-fs-base); line-height: 1.45; }
.fa .app { display: grid; grid-template-columns: 236px minmax(0,1fr); height: 840px; }
/* dar ekranda uygulama çerçevesi kendi içinde yana kayar, sayfa taşmaz */
@media (max-width: 1100px) {  .fa .app { min-width: 1100px; } .fa .doc-map { display: block; overflow-x: auto; } }

.fa .content { overflow: auto; position: relative; }

/* kenar menü — NavMenu.razor sırası */

.fa .proc-bar { min-height: var(--proc-h-bar); display: flex; align-items: center; gap: 6px; padding: 5px 10px; background: var(--proc-surface); border-bottom: 1px solid var(--proc-line); flex-wrap: wrap; position: relative; }   /* kaydırmayla inmez; sayfanın başında kalır */
.fa .proc-bar h3 { margin: 0; font-size: var(--proc-fs-h2); font-weight: 640; }
.fa .proc-bar .spacer { flex: 1; }
.fa .proc-crumb { font-size: var(--proc-fs-xs); color: var(--proc-muted); letter-spacing: .02em; }
.fa .proc-btn { height: var(--proc-h-control); display: inline-flex; align-items: center; gap: 5px; padding: 0 9px; font-size: var(--proc-fs-sm); font-weight: 550; border-radius: 3px; border: 1px solid var(--proc-line); background: var(--proc-surface); color: var(--proc-ink-soft); cursor: pointer; white-space: nowrap; }
.fa .proc-btn:hover:not(:disabled) { background: var(--proc-surface-soft); border-color: #bcc6d3; }
.fa .proc-btn.primary { background: var(--proc-accent); border-color: var(--proc-accent); color: #fff; }
.fa .proc-btn.primary:hover:not(:disabled) { background: var(--proc-accent-strong); }
.fa .proc-btn.ghost { background: transparent; border-color: transparent; color: var(--proc-accent-strong); }
.fa .proc-btn:disabled { opacity: .45; cursor: not-allowed; }
.fa .proc-btn.xs { height: 20px; padding: 0 6px; font-size: var(--proc-fs-xs); }
.fa .proc-in, .fa .proc-sel { height: var(--proc-h-control); border: 1px solid var(--proc-line); border-radius: 3px; background: var(--proc-surface); color: var(--proc-ink); font-size: var(--proc-fs-sm); padding: 0 7px; }
.fa textarea.proc-in { height: auto; padding: 5px 7px; resize: vertical; width: 100%; }
.fa .proc-in:focus, .fa .proc-sel:focus { outline: 2px solid var(--proc-accent); outline-offset: -1px; }

.fa .proc-grid { width: 100%; border-collapse: collapse; background: var(--proc-surface); }
.fa .proc-grid th { height: var(--proc-h-row); font-size: var(--proc-fs-h3); font-weight: 600; text-align: left; color: var(--proc-ink-soft); background: var(--proc-surface-soft); border: 1px solid var(--proc-line); padding: 0 6px; white-space: nowrap; position: sticky; top: 0; z-index: 1; }
.fa .proc-grid td { height: var(--proc-h-row); font-size: var(--proc-fs-sm); border: 1px solid var(--proc-line-soft); padding: 0 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 260px; }
.fa .proc-grid tbody tr:hover td { background: var(--proc-accent-wash); }
.fa .proc-grid tr.sel td { background: #dbeafe !important; }
.fa .proc-grid .num { text-align: right; font-variant-numeric: tabular-nums; }
.fa .proc-grid .act { width: 1%; }
.fa .proc-grid tfoot td { background: var(--proc-surface-soft); font-weight: 700; border-top: 2px solid var(--proc-line); }
.fa .proc-grid tr.err td { background: #fff5f5; }
.fa .proc-grid td.wrap { white-space: normal; min-width: 220px; }
.fa .proc-grid td.wrap { height: auto; padding-top: 3px; padding-bottom: 3px; }
.fa .grid-scroll { overflow: auto; }
.fa .mono { font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; font-size: 11px; }
.fa .muted { color: var(--proc-muted); }
.fa a.lnk, .fa .lnk { color: var(--proc-accent-strong); cursor: pointer; text-decoration: none; }
.fa a.lnk:hover { text-decoration: underline; }

.fa .bdg { display: inline-block; font-size: var(--proc-fs-xs); font-weight: 650; padding: 1px 7px; border-radius: 999px; border: 1px solid transparent; white-space: nowrap; line-height: 1.5; }
.fa .s-depo { background: #eef2f7; color: #475569; border-color: #dde3ec; }
.fa .s-hazir { background: #ccfbf1; color: #0f766e; border-color: #99f6e4; }
.fa .s-tamir { background: #fef3c7; color: #92400e; border-color: #fde68a; }
.fa .s-hurda { background: #e5e7eb; color: #374151; border-color: #d1d5db; }
.fa .s-sevk { background: #dbeafe; color: #1d4ed8; border-color: #bfdbfe; }
.fa .s-kur { background: #fef9c3; color: #854d0e; border-color: #fde047; }
.fa .s-aktif { background: #dcfce7; color: #15803d; border-color: #bbf7d0; }
.fa .s-servis { background: #ffedd5; color: #c2410c; border-color: #fed7aa; }
.fa .s-iade { background: #f3e8ff; color: #7e22ce; border-color: #e9d5ff; }
.fa .t-SEVK { background: #eff6ff; color: #1d4ed8; border-color: #bfdbfe; }
.fa .t-KURULUM { background: #fefce8; color: #854d0e; border-color: #fde68a; }
.fa .t-SERVIS { background: #fff7ed; color: #c2410c; border-color: #fed7aa; }
.fa .t-IADE { background: #faf5ff; color: #7e22ce; border-color: #e9d5ff; }
.fa .t-OZEL { background: #f0fdfa; color: #0f766e; border-color: #99f6e4; }
.fa .w-open { background: var(--proc-accent-wash); color: var(--proc-accent-strong); border-color: #bfdbfe; }
.fa .w-done { background: var(--proc-good-soft); color: var(--proc-good); border-color: #bbf7d0; }
.fa .w-bad { background: var(--proc-danger-soft); color: var(--proc-danger); border-color: #fecaca; }
.fa .rq { display: inline-block; font-size: 10px; font-weight: 700; padding: 0 6px; border-radius: 3px; width: 64px; text-align: center; }
.fa .rq.Z { background: #fee2e2; color: #b91c1c; }
.fa .rq.O { background: #eef2f7; color: #475569; }

.fa .pad { padding: 10px; }
.fa .filters { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; padding: 8px 10px; background: var(--proc-surface); border-bottom: 1px solid var(--proc-line); }
.fa .filters .proc-in.q { width: 220px; }
.fa .panel { background: var(--proc-surface); border: 1px solid var(--proc-line); border-radius: 4px; }
.fa .panel-h { font-size: var(--proc-fs-h3); font-weight: 650; padding: 6px 10px; border-bottom: 1px solid var(--proc-line); background: var(--proc-surface-soft); display: flex; align-items: center; gap: 8px; }
.fa .panel-b { padding: 10px; }
.fa .count-line { padding: 6px 10px; font-size: var(--proc-fs-sm); color: var(--proc-muted); }

/* pano */
.fa .kpis { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 8px; padding: 10px 10px 0; }
.fa .kpi { background: #fff; border: 1px solid var(--proc-line); border-left: 5px solid var(--c); border-radius: 4px; padding: 7px 10px; cursor: pointer; user-select: none; }
.fa .kpi.off { opacity: .4; }
.fa .kpi .n { font-size: 22px; font-weight: 700; font-variant-numeric: tabular-nums; line-height: 1.2; }
.fa .kpi .l { font-size: 11px; color: var(--proc-ink-soft); font-weight: 600; }
.fa .kpi .s { font-size: 10px; color: var(--proc-muted); min-height: 14px; }
.fa .board { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 10px; padding: 10px; }
.fa #map, .fa #fa-board { height: 590px; border: 1px solid var(--proc-line); border-radius: 4px; background: #e5eaf0; }
.fa .map-off { display: flex; align-items: center; justify-content: center; height: 100%; padding: 30px; text-align: center; color: var(--proc-muted); }
.fa .legend { display: flex; gap: 12px; flex-wrap: wrap; padding: 6px 2px 0; font-size: 11px; color: var(--proc-ink-soft); }
.fa .legend i { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 4px; vertical-align: -1px; }
/* sağ panel — yüksekliği sabit: seviye değişince pano yerinden oynamaz */
.fa .bp { height: 590px; display: flex; flex-direction: column; }
.fa .bp-h { flex: none; height: 32px; }
.fa .bp-back { flex: none; width: 52px; justify-content: center; }
.fa .bp-crumb { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fa .bp-body { flex: 1; overflow: auto; }
/* procurement.css'teki genel ".proc-grid { min-width: 760px }" 330px'lik panelde tabloyu taşırıyordu: durum sütunlarının çoğu ve
   Toplam sağa kayıp görünmüyordu (28.09.2026). Panelde tablo panele sığar; sayı sütunları içerik kadar dar. */
.fa .bp .proc-grid { min-width: 0; }
.fa .bp .proc-grid th.num, .fa .bp .proc-grid td.num { width: 1%; padding: 0 5px; }
/* Haritada yeri olmayan varlık notu: haritanın üstünde durur, sayfa düzenini oynatmaz */
.fa .map-box { position: relative; }
.fa .map-miss { position: absolute; top: 8px; left: 60px; right: 60px; width: fit-content; margin: 0 auto; z-index: 1001;background: #fffbeb; border: 1px solid #fcd34d; color: #92400e; border-radius: 4px; padding: 5px 10px; font-size: 11.5px; box-shadow: 0 1px 4px rgba(0,0,0,.15); }
.fa .map-miss .lnk { color: #92400e; font-weight: 600; text-decoration: underline; }
.fa .bp-card { padding: 10px 12px; font-size: 12px; }
.fa .bp-title { font-size: 14px; font-weight: 700; margin-top: 6px; }
.fa .bp-sec { font-size: 11px; font-weight: 700; color: var(--proc-ink-soft); text-transform: uppercase; letter-spacing: .05em; margin: 14px 0 6px; }
.fa .bp-wo { display: flex; align-items: center; gap: 6px; padding: 3px 0; border-bottom: 1px solid var(--proc-line-soft); font-size: 11.5px; }
.fa .bp-wo .muted { margin-left: auto; }
.fa .bp-act { display: flex; gap: 6px; margin-top: 14px; }
/* adımlı iş emri */
.fa .stps { display: inline-flex; gap: 2px; align-items: center; flex-wrap: nowrap; vertical-align: middle; }
.fa .proc-grid td.wrap .stps { flex-wrap: wrap; }
.fa .stp { font-size: 10px; padding: 0 6px; border-radius: 999px; border: 1px solid var(--proc-line); background: #fff; color: var(--proc-muted); white-space: nowrap; line-height: 16px; }
.fa .stp.done { background: var(--proc-good-soft); color: var(--proc-good); border-color: #bbf7d0; }
.fa .stp.cur { background: var(--proc-accent); color: #fff; border-color: var(--proc-accent); font-weight: 650; }
.fa .stp.skip { text-decoration: line-through; opacity: .7; }
.fa .tl-step { font-size: 11.5px; padding: 6px 0 4px; border-top: 1px dashed var(--proc-line); display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; }
.fa .tl-step:first-child { border-top: 0; padding-top: 0; }
.fa .tl-step .tl-st { margin-left: auto; font-size: 10.5px; color: var(--proc-muted); }
.fa .tl-step.done .tl-st { color: var(--proc-good); } .fa .tl-step.cur .tl-st { color: var(--proc-accent-strong); font-weight: 650; }
.fa .tl-step.todo, .fa .tl-step.skip { color: var(--proc-muted); }
.fa .stp-row { display: flex; gap: 6px; align-items: center; height: 26px; margin-bottom: 4px; }
/* adım alanı 5 satırlık sabit yer kaplar; fazlası bu alanın içinde kayar, pencere yerinden oynamaz */
.fa .stp-list { height: 150px; overflow-y: auto; padding-right: 4px; border: 1px solid var(--proc-line-soft); border-radius: 4px; padding: 4px 6px 0; }
.fa .stp-foot { display: flex; align-items: center; gap: 6px; min-height: 22px; margin-top: 4px; }
.fa .stp-n { width: 18px; height: 18px; border-radius: 50%; background: var(--proc-ink); color: #fff; font-size: 10px; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.fa .stp-err { color: var(--proc-danger); font-size: 11px; min-height: 16px; margin-left: 6px; }
.fa .s-dist { background: #e0f2fe; color: #0369a1; border-color: #bae6fd; }
.fa .step-asg { width: 100%; border-collapse: collapse; font-size: 11.5px; }
.fa .step-asg td { padding: 4px; border-top: 1px solid var(--proc-line-soft); vertical-align: top; }
.fa .step-asg tr.st-done td, .fa .step-asg tr.st-skip td { color: var(--proc-muted); }
/* yeni iş emri penceresi sabit boyutludur: adım eklemek pencereyi büyütmez, gerekirse içi kayar */
.fa .fa-dlg-box.wide { width: 980px; height: min(880px, calc(100vh - 32px)); }
.fa .fa-dlg-box.wide > .fa-dlg-in { display: flex; flex-direction: column; height: 100%; }
.fa .fa-dlg-box.wide .dlg-body { flex: 1; min-height: 0; overflow-y: auto; }
.fa .asg-box { height: 212px; overflow-y: auto; border: 1px solid var(--proc-line-soft); border-radius: 4px; }
.fa .asg-box .step-asg tr:first-child td { border-top: 0; }
/* ekipler */
.fa .area-row { border: 1px solid var(--proc-line-soft); border-radius: 4px; padding: 6px 8px; font-size: 11.5px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.fa .chips { flex-basis: 100%; display: flex; flex-wrap: wrap; gap: 4px; }
.fa .chip-cb { display: inline-flex; gap: 3px; align-items: center; border: 1px solid var(--proc-line); border-radius: 999px; padding: 1px 8px; font-size: 11px; background: #fff; cursor: pointer; }
.fa .rt-line { font-size: 11.5px; padding: 3px 0; color: var(--proc-ink-soft); }
.fa .rt-line.hit { font-weight: 700; color: var(--proc-good); }
.fa .proc-bar .seg button { padding: 3px 10px; font-size: 11px; }
.fa .pop { font-family: var(--proc-font); font-size: 12px; line-height: 1.5; min-width: 190px; }

/* varlık kartı */
.fa .card-grid { display: grid; grid-template-columns: minmax(0,1fr) 380px; gap: 10px; padding: 10px 10px 0; }
.fa .kv { display: grid; grid-template-columns: 150px 1fr 150px 1fr; gap: 6px 12px; margin: 0; font-size: 12px; }
.fa .kv dt { color: var(--proc-muted); text-align: right; }
.fa .kv dd { margin: 0; font-weight: 550; min-width: 0; overflow-wrap: anywhere; }
.fa #mini { height: 214px; }
.fa .wo-hist { display: flex; flex-direction: column; gap: 6px; }
.fa .wo-hist details { border: 1px solid var(--proc-line); border-radius: 4px; background: #fff; }
.fa .wo-hist summary { list-style: none; cursor: pointer; padding: 6px 10px; display: grid; grid-template-columns: 150px 50px 1fr auto 110px; gap: 10px; align-items: center; font-size: 12px; }
.fa .wo-hist summary::-webkit-details-marker { display: none; }
.fa .wo-hist summary > * { justify-self: start; }
.fa .wo-hist details[open] summary { border-bottom: 1px solid var(--proc-line-soft); background: var(--proc-surface-soft); }
.fa .wo-hist .wo-in { padding: 8px 12px 4px; }
.fa .wo-hist .wo-meta { font-size: 11px; color: var(--proc-muted); margin-bottom: 8px; }

/* zaman çizelgesi */
.fa .tl { list-style: none; margin: 0; padding: 0; }
.fa .tl li { position: relative; padding: 0 0 10px 18px; margin-left: 5px; border-left: 2px solid var(--proc-line); font-size: 11.5px; }
.fa .tl li:last-child { border-left-color: transparent; }
.fa .tl li::before { content: ""; position: absolute; left: -6px; top: 3px; width: 10px; height: 10px; border-radius: 50%; background: #fff; border: 2px solid var(--proc-accent); }
.fa .tl li.fin::before { background: var(--proc-good); border-color: var(--proc-good); }
.fa .tl li.bad::before { background: var(--proc-danger); border-color: var(--proc-danger); }
.fa .tl .t1 { font-weight: 650; }
.fa .tl .t2 { color: var(--proc-muted); font-size: 10.5px; }
.fa .tl .att { display: inline-flex; gap: 6px; margin-left: 6px; font-size: 10.5px; color: var(--proc-ink-soft); }
.fa .tl .nt { background: var(--proc-surface-soft); border-radius: 3px; padding: 2px 6px; margin-top: 2px; display: inline-block; }
.fa .tl li.rev .t1 { text-decoration: line-through; color: var(--proc-muted); }
.fa .tl li.rev::before { border-color: #94a3b8; }
.fa .tl .nt.rv { background: #fef3c7; color: #92400e; }

/* iş emirleri */
.fa .tabs { display: flex; gap: 0; padding: 0 10px; background: var(--proc-surface); border-bottom: 1px solid var(--proc-line); }
.fa .tabs button { border: 0; background: none; padding: 7px 12px; font-size: 12px; font-weight: 600; color: var(--proc-muted); cursor: pointer; border-bottom: 2px solid transparent; font-family: var(--proc-font); }
.fa .tabs button.on { color: var(--proc-accent-strong); border-bottom-color: var(--proc-accent); }
.fa .tabs .cnt { display: inline-block; min-width: 22px; margin-left: 4px; font-size: 10px; background: var(--proc-neutral-soft); border-radius: 999px; padding: 0 5px; text-align: center; }
.fa .wo-layout { display: grid; grid-template-columns: minmax(0,1fr) 390px; height: 710px; }
.fa .wo-layout .grid-scroll { border-right: 1px solid var(--proc-line); }
.fa .drawer { overflow: auto; background: var(--proc-surface); }
.fa .drawer .empty { padding: 40px 20px; text-align: center; color: var(--proc-muted); }
.fa .drawer .dh { padding: 10px 12px; border-bottom: 1px solid var(--proc-line); }
.fa .drawer .dh h4 { margin: 0 0 4px; font-size: 13px; }
.fa .drawer .ds { padding: 10px 12px; border-bottom: 1px solid var(--proc-line-soft); }
.fa .drawer .ds-t { font-size: 11px; font-weight: 700; color: var(--proc-ink-soft); text-transform: uppercase; letter-spacing: .05em; margin-bottom: 6px; }
.fa .kv2 { display: grid; grid-template-columns: 110px 1fr; gap: 3px 10px; font-size: 11.5px; }
.fa .kv2 dt { color: var(--proc-muted); }
.fa .kv2 dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }

/* durum formu */
.fa .sf { display: flex; flex-direction: column; gap: 8px; }
.fa .sf .proc-sel.sf-st { width: 100%; }
.fa .sf-empty { font-size: 11px; color: var(--proc-muted); padding: 6px 0; }
.fa .sf-eff { font-size: 11px; background: #f0f9ff; border: 1px solid #bae6fd; color: #075985; border-radius: 3px; padding: 5px 8px; }
.fa .sf-eff div + div { margin-top: 2px; }
.fa .sf-f { display: flex; flex-direction: column; gap: 4px; }
.fa .sf-f .lb { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 600; color: var(--proc-ink-soft); }
.fa .sf-row { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.fa .sf-ph { display: flex; gap: 6px; flex-wrap: wrap; }
.fa .thumb { width: 54px; height: 54px; border-radius: 4px; background: linear-gradient(135deg,#94a3b8,#cbd5e1); position: relative; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 18px; }
.fa .thumb b { position: absolute; top: -6px; right: -6px; width: 16px; height: 16px; background: #111827; color: #fff; border-radius: 50%; font-size: 10px; line-height: 16px; text-align: center; cursor: pointer; }
.fa .docchip { display: inline-flex; align-items: center; gap: 5px; font-size: 11px; padding: 2px 8px; background: #eef2f7; border-radius: 999px; }
.fa .docchip b { cursor: pointer; }
.fa .sf-foot { display: flex; align-items: center; gap: 8px; }
.fa .sf-miss { flex: 1; font-size: 11px; color: var(--proc-danger); min-height: 16px; }
.fa .sf-miss.ok { color: var(--proc-good); }
/* seri no okutma sonucu iki satırlık sabit yer kaplar: sonuç gelince alttaki alanlar kaymaz */
.fa .sn-res { min-height: 34px; font-size: 11px; line-height: 1.45; color: var(--proc-ink-soft); }
.fa .sn-res .ok { color: var(--proc-good); font-weight: 700; }
.fa .sn-res .no { color: var(--proc-danger); font-weight: 700; }
/* seri no etiketi: barkod ve altında rakam */
.fa .sn-lbl { display: inline-flex; flex-direction: column; align-items: center; gap: 1px; padding: 3px 6px 1px; border: 1px solid var(--proc-line); border-radius: 3px; background: #fff; vertical-align: middle; }
.fa .sn-lbl i { display: block; height: 16px; }
.fa .sn-lbl b { font-family: ui-monospace, Consolas, monospace; font-size: 10px; letter-spacing: .12em; font-weight: 600; }
.fa .bdg.out { background: #fff7ed; color: #9a3412; border-color: #c2410c; }   /* bölge dışı iş: ofisin doğrudan kişiye ataması (E7) */
/* Tahmini bitiş (L11): kişinin ertelediği turuncu dolu, önceki adımla kayan turuncu çerçeve, onay bekleyen mavi; geçmiş tarih kırmızı */
.fa .bdg.ert { background: #ffedd5; color: #9a3412; border-color: #ea580c; }
.fa .bdg.ert2 { background: #fff; color: #9a3412; border-color: #fb923c; }
.fa .bdg.eok { background: #eff6ff; color: #1e40af; border-color: #93c5fd; }
.fa .late { color: var(--proc-danger); }
.fa b.late { font-weight: 700; }
.fa .eta-l { font-size: 11px; margin: -2px 0 6px; }
.fa .eta-l .bdg, .fa .mcard .eta .bdg { vertical-align: 1px; }
.fa .tl li.eta-ev::before { border-color: #ea580c; }
.fa .tl li.eta-ev.ertele .t1 { color: #9a3412; }
.fa .ert-t { color: #9a3412; font-weight: 650; }
.fa .chk-f { display: inline-flex; align-items: center; gap: 5px; height: 26px; padding: 0 8px; border: 1px solid var(--proc-line); border-radius: 4px; background: #fff; font-size: 11.5px; cursor: pointer; }
.fa .chk-f .cnt { font-weight: 650; color: #9a3412; }
.fa .bdg.chg { background: #fef3c7; color: #92400e; border-color: #fde68a; display: inline-flex; align-items: center; height: 19px; vertical-align: middle; }   /* ✎ yedek yazı tipinden gelir; yükseklik sabit, rozet uzamaz */
.fa .chg { font-size: 11.5px; padding: 6px 0; border-top: 1px dashed var(--proc-line); }
.fa .chg:first-child { border-top: 0; padding-top: 0; }
.fa .chg .ch-h { font-weight: 650; }
.fa .chg .ch-m { color: var(--proc-muted); font-size: 10.5px; }
.fa .chg ul { margin: 3px 0 0; padding-left: 16px; }

/* saha / mobil */

/* Telefon: bölüm sınırları koyu ve nettir (gölge yerine çizgi); her ekran üst çubuk · içerik · alt işlem çubuğu diye üçe ayrılır. */
.fa.fa-phone { --ph-edge: #475569; --ph-rule: #1e293b; --ph-bg: #dde3ea; --ph-soft: #94a3b8;
  width: 380px; height: 740px; border: 10px solid #111827; border-radius: 34px; overflow: hidden; background: var(--ph-bg); display: flex; flex-direction: column; box-shadow: 0 10px 30px rgba(15,23,42,.25); }
.fa .ph-sb { background: #0f172a; color: #cbd5e1; font-size: 10px; display: flex; justify-content: space-between; padding: 4px 16px; }
.fa .ph-screen { position: relative; flex: 1; min-height: 0; display: flex; flex-direction: column; }
.fa .ph-top { flex: none; background: #1e293b; color: #fff; padding: 10px 12px; display: flex; align-items: center; gap: 10px; min-height: 52px; border-bottom: 2px solid #0f172a; }
.fa .ph-top .tt { font-size: 14px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fa .ph-top .st { font-size: 11px; color: #cbd5e1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fa .ph-top .back { font-size: 22px; cursor: pointer; width: 26px; flex: none; }
.fa .ph-top .ph-scan { margin-left: auto; flex: none; height: 30px; border: 1px solid #64748b; background: #334155; color: #fff; border-radius: 6px; font-size: 12px; padding: 0 10px; cursor: pointer; font-family: var(--proc-font); }
.fa .ph-tabs { display: flex; background: #fff; border-bottom: 2px solid var(--ph-rule); }
.fa .ph-tabs button { flex: 1; border: 0; background: none; padding: 9px; font-size: 13px; font-weight: 600; color: #475569; border-bottom: 3px solid transparent; margin-bottom: -2px; font-family: var(--proc-font); cursor: pointer; }
.fa .ph-tabs button + button { border-left: 1px solid #cbd5e1; }
.fa .ph-tabs button.on { color: #1d4ed8; border-bottom-color: #2563eb; background: #eff6ff; }
.fa .ph-tabs.four button { font-size: 12px; padding: 9px 2px; }
.fa .ph-body { flex: 1; min-height: 0; overflow: auto; padding-bottom: 8px; }
/* alt işlem çubuğu: ekranın asıl işlemleri yalnız burada durur */
.fa .ph-act { flex: none; display: flex; flex-direction: column; gap: 6px; padding: 10px 12px 18px; background: #fff; border-top: 2px solid var(--ph-rule); }
.fa .ph-act:empty { display: none; }
.fa .ph-btns { display: flex; gap: 8px; }
.fa .ph-btns .proc-btn { flex: 1; min-width: 0; height: 42px; font-size: 13px; justify-content: center; border: 1.5px solid var(--ph-edge); color: #1e293b; overflow: hidden; text-overflow: ellipsis; }
.fa .ph-btns .proc-btn.primary { border-color: #1d4ed8; color: #fff; }
.fa .ph-msg { min-height: 17px; font-size: 11.5px; color: var(--proc-danger); }
.fa .ph-msg.ok { color: var(--proc-good); }
.fa .ph-msg.idle { color: #475569; }
/* onay ekranı: işlemin üstüne tam ekran açılır, altındaki ekranın doldurulmuş hâli korunur */
.fa .ph-ov { position: absolute; inset: 0; z-index: 20; background: var(--ph-bg); display: flex; flex-direction: column; }
.fa .ph-ov[hidden] { display: none; }
.fa .ph-ov .ph-top { background: #1d4ed8; border-bottom-color: #1e3a8a; }
.fa .ph-ov .ph-top .st { color: #dbeafe; }
/* Seçim penceresi (L6): telefondaki açılır listeler telefonun altından açılan liste olarak seçilir.
   Satırlar parmakla dokunulacak yükseklikte (54px), yazı 16px; seçili satır mavi ve ✓; Vazgeç ayrı düğme. */
.fa .pk { position: absolute; inset: 0; z-index: 30; display: flex; flex-direction: column; justify-content: flex-end; padding: 8px; gap: 8px; }
.fa .pk-bg { position: absolute; inset: 0; background: rgba(15,23,42,.6); }
.fa .pk-sheet, .fa .pk-x { position: relative; }
.fa .pk-sheet { display: flex; flex-direction: column; max-height: calc(100% - 90px); background: #fff; border: 1.5px solid #1e293b; border-radius: 14px; overflow: hidden; }
.fa .pk-h { flex: none; padding: 12px 16px; text-align: center; font-size: 13px; font-weight: 700; color: #1e293b; background: #f1f5f9; border-bottom: 2px solid #1e293b; }
.fa .pk-list { overflow-y: auto; overscroll-behavior: contain; outline: none; }
.fa .pk-o { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 54px; padding: 8px 16px; border: 0; border-top: 1px solid #94a3b8; background: #fff; color: #111827; font-family: var(--proc-font); font-size: 16px; text-align: left; cursor: pointer; }
.fa .pk-list > .pk-o:first-child, .fa .pk-g + .pk-o { border-top: 0; }
.fa .pk-o:hover:not(:disabled), .fa .pk-o:focus-visible { background: #eff6ff; outline: none; }
.fa .pk-o:active:not(:disabled) { background: #dbeafe; }
.fa .pk-o:disabled { color: #94a3b8; cursor: default; }
.fa .pk-o.on { color: #1d4ed8; font-weight: 650; background: #eff6ff; }
.fa .pk-t { flex: 1; min-width: 0; }
.fa .pk-t small { display: block; margin-top: 2px; font-size: 12.5px; font-weight: 400; color: #475569; }
.fa .pk-o.bad small { color: var(--proc-danger); }
.fa .pk-ck { flex: none; width: 20px; font-size: 18px; color: #1d4ed8; text-align: right; }
.fa .pk-g { padding: 8px 16px 6px; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: #1e293b; background: #e2e8f0; border-top: 1.5px solid #1e293b; border-bottom: 1px solid #94a3b8; }
.fa .pk-x { flex: none; height: 54px; border: 1.5px solid #1e293b; border-radius: 14px; background: #fff; color: #1d4ed8; font-family: var(--proc-font); font-size: 16px; font-weight: 700; cursor: pointer; }
.fa .pk-x:hover { background: #eff6ff; }
/* ekranda duran seçenek satırları (L7): durum listesi ve formdaki kısa seçimler — açılır liste yok */
.fa .chs { border: 1.5px solid var(--ph-edge); border-radius: 8px; overflow: hidden; background: #fff; }
.fa .ch { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 48px; padding: 8px 12px; border: 0; border-top: 1px solid var(--ph-soft); background: #fff; color: #111827; font-family: var(--proc-font); font-size: 15px; text-align: left; cursor: pointer; }
.fa .ch:first-child { border-top: 0; }
.fa .ch:hover { background: #eff6ff; }
.fa .ch:active { background: #dbeafe; }
.fa .ch.on { background: #eff6ff; color: #1d4ed8; font-weight: 650; }
.fa .ch-t { flex: 1; min-width: 0; }
.fa .ch-t small { display: block; margin-top: 2px; font-size: 12.5px; font-weight: 400; color: #475569; }
.fa .ch.bad .ch-t small { color: var(--proc-danger); }
.fa .ch .ck { flex: none; width: 20px; font-size: 18px; color: #1d4ed8; text-align: right; }
.fa .chs.big .ch { min-height: 56px; font-size: 16px; }
.fa .chs.big .ch .ck { color: #475569; font-size: 22px; }
.fa .ch[hidden] { display: none; }
.fa .ch:disabled { cursor: default; background: #fff; color: #94a3b8; }
.fa .ch.lock { color: #64748b; }
.fa .ch .stp { flex: none; }
/* sıralanabilen adım satırı: solda dokununca adım ekranı, sağda büyük oklar (L8) */
.fa .ch.ch-mv { padding: 0 6px 0 0; gap: 6px; cursor: default; }
.fa .ch.ch-mv:hover { background: #fff; }
.fa .ch-main { flex: 1; min-width: 0; display: flex; align-items: center; gap: 10px; min-height: 58px; padding: 8px 4px 8px 12px; border: 0; background: transparent; font: inherit; color: inherit; text-align: left; cursor: pointer; }
.fa .ch-main:hover { background: #eff6ff; }
.fa .mv { flex: none; width: 44px; height: 44px; border: 2px solid var(--ph-edge); border-radius: 6px; background: #fff; color: #1e293b; font-size: 20px; font-weight: 700; cursor: pointer; font-family: var(--proc-font); }
.fa .mv:hover:not(:disabled) { border-color: #1d4ed8; color: #1d4ed8; }
.fa .mv.no { opacity: .35; }            /* kurala aykırı yön: soluk, dokununca nedeni yazar */
.fa .mv:disabled { opacity: .12; cursor: default; }   /* listenin ucu */
.fa .ed-why { min-height: 38px; margin: 6px 0; font-size: 12px; line-height: 1.4; color: #475569; }
.fa .ed-why.bad { color: var(--proc-danger); }
.fa .ed-why.ok { color: var(--proc-good); }
/* telefondaki seçim kutusu: dokununca pencere açılır; kutunun kendisi de parmak yüksekliğinde */
.fa .ph-screen select { cursor: pointer; }
.fa .cf-intro { font-size: 14px; margin-bottom: 6px; }
.fa .cf-list { margin: 0; padding-left: 18px; font-size: 13px; }
.fa .cf-list li { margin: 6px 0; }
.fa .mcard { background: #fff; margin: 8px; border-radius: 8px; padding: 10px 12px; border: 1.5px solid var(--ph-edge); font-size: 13px; }
.fa .mcard.tap { cursor: pointer; }
.fa .mcard.tap:hover { border-color: #1d4ed8; }
.fa .mcard.tap:active { background: #eff6ff; }
.fa .mcard .r1 { display: flex; align-items: center; gap: 6px; margin-bottom: 4px; }
.fa .mcard .r1 .no { font-weight: 700; }
.fa .mcard .r1 .dt { margin-left: auto; font-size: 11px; color: #475569; }
.fa .mcard .cn { font-weight: 650; }
.fa .mcard .ad { font-size: 12px; color: #475569; }
.fa .mcard h5 { margin: 0 0 8px; padding-bottom: 5px; font-size: 12px; color: #1e293b; text-transform: uppercase; letter-spacing: .05em; border-bottom: 1.5px solid var(--ph-rule); }
.fa .mcard .role { margin-top: 8px; padding: 6px 8px; background: #f1f5f9; border: 1px solid #94a3b8; border-radius: 6px; font-size: 12.5px; }
/* katlanan bölüm (saha değişiklikleri) kapalı gelir; adımlar ve geçmiş her zaman açık görünür */
.fa .mfold > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 700; color: #1e293b; text-transform: uppercase; letter-spacing: .05em; }
.fa .mfold > summary::-webkit-details-marker { display: none; }
.fa .mfold > summary::before { content: "▸"; font-size: 12px; }
.fa .mfold[open] > summary::before { content: "▾"; }
.fa .mfold > summary span { margin-left: auto; text-transform: none; letter-spacing: 0; font-weight: 500; color: #475569; }
.fa .mfold[open] > summary { margin-bottom: 8px; padding-bottom: 5px; border-bottom: 1.5px solid var(--ph-rule); }
.fa .ph-sec { margin: 12px 12px 0; padding-bottom: 3px; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; font-size: 11px; color: #1e293b; border-bottom: 2px solid var(--ph-rule); }
.fa .m-empty { padding: 40px 20px; text-align: center; color: #475569; font-size: 13px; }
/* Ekibim alt sekmeleri: iki eşit, çerçeveli düğme; seçili dolu mavi */
.fa .ph-seg { display: flex; margin: 10px 8px 2px; border: 2px solid var(--ph-rule); border-radius: 8px; overflow: hidden; background: #fff; }
.fa .ph-seg button { flex: 1; height: 40px; border: 0; background: #fff; color: #1e293b; font-family: var(--proc-font); font-size: 14px; font-weight: 650; cursor: pointer; }
.fa .ph-seg button + button { border-left: 2px solid var(--ph-rule); }
.fa .ph-seg button.on { background: var(--proc-accent); color: #fff; }
.fa .mcard .who { margin-top: 8px; padding-top: 6px; border-top: 1px solid var(--ph-soft); font-size: 12.5px; color: #1e293b; line-height: 1.5; }
.fa .mcard .eta { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--ph-soft); font-size: 12.5px; color: #1e293b; line-height: 1.6; }
.fa.fa-phone .eta-l { font-size: 12px; }
.fa .eta-need { margin-top: 6px; color: #1e40af; font-weight: 600; }
.fa .mcard h5 .h5-sub { text-transform: none; letter-spacing: 0; font-weight: 400; color: #475569; }
/* işlem düğmelerinin yazısı sığmazsa düğmeler iki satıra dizilir (yazı kırpılmaz) */
.fa .ph-btns.rows { flex-wrap: wrap; }
.fa .ph-btns.rows .proc-btn { flex: 1 1 calc(50% - 4px); }
.fa .mrow { display: flex; align-items: center; gap: 8px; }
.fa .mrow .chev { margin-left: auto; font-size: 22px; color: #475569; }
/* seçim listeleri (hangi adımlar / kime) — satırlar arası çizgi belirgin */
.fa .chk-row { display: flex; gap: 10px; align-items: flex-start; padding: 9px 2px; border-top: 1px solid var(--ph-soft); font-size: 13px; cursor: pointer; }
.fa .chk-row:first-of-type { border-top: 0; }
.fa .chk-row input { width: 18px; height: 18px; margin: 1px 0 0; flex: none; }
.fa .chk-row.off { color: #94a3b8; cursor: default; }
.fa .chk-row.all { border-bottom: 1.5px solid var(--ph-rule); }
.fa .chk-row .ad { display: block; }
.fa .opt-card { display: block; width: calc(100% - 16px); margin: 8px; text-align: left; background: #fff; border: 1.5px solid var(--ph-edge); border-radius: 8px; padding: 12px; cursor: pointer; font-family: var(--proc-font); color: #1e293b; }
.fa .opt-card:hover:not(:disabled) { border-color: #1d4ed8; background: #eff6ff; }
.fa .opt-card:disabled { opacity: .5; cursor: not-allowed; }
.fa .opt-card b { display: block; font-size: 14px; margin-bottom: 3px; }
.fa .opt-card span { display: block; font-size: 12px; color: #475569; }
.fa .opt-card .ln { font-size: 13px; color: #1e293b; margin-top: 3px; }
.fa .opt-card .ln.muted2 { color: #475569; font-size: 12px; margin-top: 6px; }
.fa .opt-intro { margin: 12px 12px 4px; font-size: 13px; color: #1e293b; line-height: 1.5; }
.fa .sf.m .proc-sel, .fa .sf.m .proc-in { height: 44px; font-size: 15px; }
.fa .sf.m textarea.proc-in { height: auto; }
.fa .sf.m .proc-btn { height: 36px; font-size: 13px; }
.fa .sf.m .proc-btn.primary { width: 100%; justify-content: center; height: 42px; font-size: 14px; }
.fa .sf.m .sf-foot { flex-direction: column; align-items: stretch; }
.fa .sf.m .sf-f .lb { font-size: 12.5px; }
.fa .sf.m .sf-rules { display: flex; flex-direction: column; gap: 16px; }   /* alan grupları birbirine yapışmaz */
.fa .sf.m .thumb { width: 64px; height: 64px; }
/* Saha uygulamasında her şey belirgin çerçevelidir: giriş kutusu, düğme, seçenek, etiket, fotoğraf, belge.
   Açık gri ince çizgi yok; dokunulan her şeyin çerçevesi koyu (#475569) ve 2px (1,5px normal ekranda 1px çizilir). Odakta mavi halka. */
.fa.fa-phone .proc-in, .fa.fa-phone .proc-sel { border: 2px solid var(--ph-edge); border-radius: 6px; background: #fff; color: #111827; }
.fa.fa-phone .proc-in::placeholder { color: #64748b; opacity: 1; }
.fa.fa-phone .proc-in:focus, .fa.fa-phone .proc-sel:focus { outline: 3px solid #93c5fd; outline-offset: 0; border-color: #1d4ed8; }
.fa.fa-phone .proc-btn { border: 2px solid var(--ph-edge); border-radius: 6px; background: #fff; color: #1e293b; font-weight: 600; }
.fa.fa-phone .proc-btn:hover:not(:disabled) { border-color: #1d4ed8; background: #eff6ff; }
.fa.fa-phone .proc-btn.primary { border-color: #1d4ed8; background: var(--proc-accent); color: #fff; }
.fa.fa-phone .proc-btn.primary:hover:not(:disabled) { background: var(--proc-accent-strong); }
.fa.fa-phone .proc-btn:focus-visible { outline: 3px solid #93c5fd; outline-offset: 1px; }
/* Okut: barkod simgeli, koyu kalın çerçeveli, giriş kutusuyla aynı yükseklikte */
.fa .scan-btn { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; }
.fa .scan-btn .ic { flex: none; }
.fa.fa-phone .proc-btn.scan-btn { height: 44px; padding: 0 14px; border: 2px solid #1e293b; color: #111827; font-size: 14px; }
.fa.fa-phone .proc-btn.scan-btn:hover:not(:disabled) { border-color: #1d4ed8; color: #1d4ed8; }
.fa .ph-top .ph-home { margin-left: auto; flex: none; display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-width: 58px; height: 42px; padding: 0 6px; border: 1.5px solid #e2e8f0; border-radius: 6px; background: #334155; color: #fff; cursor: pointer; font-family: var(--proc-font); }
.fa .ph-top .ph-home small { font-size: 10px; font-weight: 600; line-height: 1; }
.fa .ph-top .ph-home .ic { width: 18px; height: 18px; }
.fa .ph-top .ph-home:hover { background: #475569; }
.fa .ph-top .ph-home:focus-visible { outline: 3px solid #93c5fd; outline-offset: 1px; }
.fa .ph-ov .ph-top .ph-home { background: #1e40af; border-color: #dbeafe; }
.fa .ph-top .ph-scan { display: inline-flex; align-items: center; gap: 6px; border: 1.5px solid #e2e8f0; font-weight: 600; }
.fa .ph-top .ph-scan .ic { width: 18px; height: 18px; }
.fa.fa-phone .sf-row { gap: 8px; }
.fa.fa-phone .rq { border: 1px solid transparent; }
.fa.fa-phone .rq.Z { border-color: #f87171; }
.fa.fa-phone .rq.O { border-color: #94a3b8; }
.fa.fa-phone .thumb { border: 2px solid var(--ph-edge); }
.fa.fa-phone .chs, .fa.fa-phone .opt-card { border-width: 2px; }   /* seçenek listeleri ve işlem kartları da kalın çerçeveli */
.fa.fa-phone .docchip { border: 1px solid var(--ph-edge); }
.fa.fa-phone .sn-lbl { border-color: var(--ph-edge); }
.fa.fa-phone .mcard .role { border: 1.5px solid var(--ph-edge); }
.fa.fa-phone .ph-tabs button + button { border-left-color: var(--ph-soft); }
/* iş emri değişikliği (telefon) */
.fa .ed-err { min-height: 32px; font-size: 11.5px; color: var(--proc-danger); margin-top: 4px; }
.fa .log { list-style: none; margin: 0; padding: 0; max-height: 330px; overflow: auto; }
.fa .log li { font-size: 11.5px; padding: 5px 10px; border-bottom: 1px solid var(--proc-line-soft); }
.fa .log li .tm { color: var(--proc-muted); font-size: 10.5px; margin-right: 6px; font-variant-numeric: tabular-nums; }
.fa .log li.sys { background: #f0fdf4; }

/* tanımlar */
.fa .def-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); gap: 10px; padding: 10px; align-items: start; }
.fa .addrow { display: flex; gap: 6px; padding: 8px 10px; border-top: 1px solid var(--proc-line); flex-wrap: wrap; }
.fa .st-tbl select { height: 22px; font-size: 11px; border: 1px solid var(--proc-line); border-radius: 3px; }
.fa .st-tbl td { max-width: none; }
.fa .st-tbl .init td { background: #f8fafc; }
.fa .settings { display: flex; gap: 14px; align-items: center; padding: 8px 10px; background: #fff; border-bottom: 1px solid var(--proc-line); font-size: 11.5px; flex-wrap: wrap; }

/* içe aktarma */
.fa .imp-grid { display: grid; grid-template-columns: 360px minmax(0,1fr); gap: 10px; padding: 10px; align-items: start; }
.fa .imp-grid textarea { font-family: ui-monospace, Consolas, monospace; font-size: 11px; height: 300px; white-space: pre; overflow: auto; }
.fa .steps-mini { margin: 0; padding-left: 18px; font-size: 11.5px; color: var(--proc-ink-soft); }
.fa .steps-mini li { margin: 3px 0; }

/* diyalog */
.fa .fa-dlg-box { border: 0; padding: 0; border-radius: 6px; box-shadow: 0 20px 50px rgba(15,23,42,.35); width: 660px; max-width: calc(100vw - 32px); }
.fa .fa-dlg-bg { background: rgba(15,23,42,.45); }
.fa .dlg-body { padding: 12px; display: flex; flex-direction: column; gap: 10px; }
.fa .seg { display: inline-flex; border: 1px solid var(--proc-line); border-radius: 4px; overflow: hidden; align-self: flex-start; }
.fa .seg button { border: 0; background: #fff; padding: 5px 14px; font-size: 12px; font-weight: 600; color: var(--proc-ink-soft); cursor: pointer; font-family: var(--proc-font); border-right: 1px solid var(--proc-line); }
.fa .seg button:last-child { border-right: 0; }
.fa .seg button.on { background: var(--proc-accent); color: #fff; }
.fa .fgrid { display: grid; grid-template-columns: 130px 1fr 130px 1fr; gap: 8px 10px; align-items: center; }
.fa .fgrid label { font-size: 11px; color: var(--proc-muted); text-align: right; }
.fa .fgrid .full { grid-column: 2 / -1; }
.fa .fgrid .proc-in, .fa .fgrid .proc-sel { width: 100%; }
.fa .fgrid .ro { font-size: 11.5px; font-weight: 550; min-height: 18px; }
.fa .dlg-foot { display: flex; align-items: center; gap: 6px; padding: 8px 12px; border-top: 1px solid var(--proc-line); background: var(--proc-surface-soft); }
.fa .dlg-msg { flex: 1; font-size: 11px; color: var(--proc-danger); }
.fa .elig { font-size: 11px; background: #fffbeb; border: 1px solid #fde68a; color: #92400e; border-radius: 3px; padding: 5px 8px; }


/* ---------- Blazor ekranlarına özgü (prototipte karşılığı yok) ---------- */
.fa.fa-page { min-height: 100%; }
.fa .fa-fill { max-height: calc(100vh - 205px); }
.fa .fa-dlg-bg { position: fixed; inset: 0; z-index: 1200; display: flex; align-items: center; justify-content: center; padding: 16px; }
.fa .fa-dlg-box { background: var(--proc-surface); max-height: calc(100vh - 32px); display: flex; flex-direction: column; overflow: hidden; }
.fa .fa-dlg-in { display: flex; flex-direction: column; min-height: 0; max-height: calc(100vh - 32px); }
.fa .fa-dlg-in .dlg-body { overflow-y: auto; }
.fa .fa-dlg-in .proc-bar { position: static; }
.fa .fa-err { margin: 10px; padding: 8px 10px; border: 1px solid #fecaca; background: #fef2f2; color: #991b1b; border-radius: 4px; font-size: 12px; }
.fa .fa-link-box { font-family: ui-monospace, Consolas, monospace; font-size: 11px; background: #f8fafc; border: 1px solid var(--proc-line); border-radius: 3px; padding: 6px 8px; word-break: break-all; }
.fa .fa-pin { font-family: ui-monospace, Consolas, monospace; font-size: 22px; font-weight: 700; letter-spacing: .2em; }
.fa .fa-ev-img { max-width: 100%; max-height: 70vh; display: block; margin: 0 auto; border: 1px solid var(--proc-line); }
.fa .map-off { display: flex; align-items: center; justify-content: center; height: 100%; padding: 30px; text-align: center; color: var(--proc-muted); }

/* Saha uygulaması gerçek telefonda: prototipteki telefon çerçevesi yerine tam ekran (masaüstünde ortada, telefon genişliğinde). */
/* Ekrana sabitlenir: sayfa gövdesinin kenar boşluğu ya da tarayıcı çubukları yüksekliği aşırtıp alt işlem çubuğunu ekran dışına itmesin. */
.fa-field-host { position: fixed; inset: 0; overflow: hidden; background: #0f172a; display: flex; justify-content: center; }
.fa.fa-phone.fa-full { width: 100%; max-width: 520px; height: 100%; border: 0; border-radius: 0; box-shadow: none; }
.fa.fa-phone.fa-full .ph-act { padding-bottom: calc(18px + env(safe-area-inset-bottom, 0px)); }
.fa.fa-phone .sf.m .sf-foot { position: sticky; bottom: -10px; background: #fff; padding: 8px 0 2px; margin-top: 8px; border-top: 1.5px solid var(--ph-rule); }
.fa .ph-top .ph-left { min-width: 0; flex: 1; }
.fa .ph-login { padding: 24px 16px; display: flex; flex-direction: column; gap: 12px; }
.fa .ph-login h4 { margin: 0; font-size: 18px; color: #1e293b; }
.fa .ph-login .proc-in { height: 52px; font-size: 24px; letter-spacing: 8px; text-align: center; font-family: ui-monospace, Consolas, monospace; }
.fa .ph-login .proc-btn { height: 48px; font-size: 15px; justify-content: center; }
.fa .ph-err { background: #fee2e2; color: #991b1b; border: 1.5px solid #f87171; border-radius: 8px; padding: 10px 12px; font-size: 13px; }
.fa .ph-link { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.fa .fa-cam { position: absolute; inset: 0; z-index: 40; background: #000; display: flex; flex-direction: column; }
.fa .fa-cam video { flex: 1; min-height: 0; width: 100%; object-fit: cover; }
.fa .fa-cam .fa-cam-aim { position: absolute; left: 10%; right: 10%; top: 38%; height: 22%; border: 3px solid #22c55e; border-radius: 10px; pointer-events: none; }
.fa .fa-cam .fa-cam-bar { flex: none; padding: 12px; background: #0f172a; color: #e2e8f0; font-size: 13px; display: flex; flex-direction: column; gap: 8px; }
/* saha linki penceresi (Ekipler ve Saha Personeli › Linki düzenle) */
.fa .lnk-grid { display: grid; grid-template-columns: 90px 1fr auto; gap: 8px 10px; align-items: center; }
.fa .lnk-grid > label { font-size: 11px; color: var(--proc-muted); text-align: right; }
.fa .lnk-grid .proc-in { width: 100%; height: 30px; }
.fa .lnk-grid .pin { font-family: ui-monospace, Consolas, monospace; font-size: 18px; letter-spacing: 6px; width: 150px; }
.fa .lnk-info { background: #eff6ff; border: 1px solid #bfdbfe; color: #1e3a8a; border-radius: 4px; padding: 8px 10px; font-size: 12px; }
.fa .lnk-acts { display: flex; gap: 6px; flex-wrap: wrap; }
.fa .ph-bad { margin: 8px 0 0; padding: 16px; background: #fff; border: 2px solid #b91c1c; border-radius: 10px; font-size: 13px; color: #1e293b; line-height: 1.5; }
.fa .ph-bad h4 { margin: 0 0 8px; color: #b91c1c; font-size: 16px; }
.fa .ph-toast { position: absolute; left: 10px; right: 10px; bottom: 84px; z-index: 35; background: #0f172a; color: #fff; border: 1.5px solid #334155; border-radius: 10px; padding: 10px 12px; font-size: 13px; line-height: 1.45; white-space: pre-line; box-shadow: 0 8px 24px rgba(15,23,42,.35); cursor: pointer; }
.fa .ph-toast.bad { background: #7f1d1d; border-color: #b91c1c; }

/* Üst şeritte birbirine ait düğmeler tek çerçevede (İş Emirleri › Maliyet ve satın alma); ana düğmeden
   (+ Yeni iş emri) ayrı dursun diye sağında boşluk. */
.fa .bar-grp { display: inline-flex; align-items: center; gap: 4px; padding: 3px; border: 1px solid var(--proc-line); border-radius: 5px; background: var(--proc-surface-soft); margin-right: 18px; }
.fa .bar-grp .grp-cap { font-size: 10.5px; color: var(--proc-muted); padding: 0 4px 0 2px; white-space: nowrap; }

/* İş emri çekmecesi — Maliyet ve satın alma listesi. Dar çekmecede yatay kayar; sayfa kaymaz. */
.fa .wo-cost-scroll { overflow-x: auto; }
.fa .wo-cost-desc { max-width: 150px; }
.fa .wo-cost-note { font-size: 10.5px; margin-top: 4px; }
.fa .wo-cost-err { font-size: 11px; color: var(--proc-danger); }

/* ── Dağıtım › Sistem Yönetimi › Parametreler (DistributionSettings.razor) ─────────────────────────────
   Ayar satırı: solda başlık, sağda iki seçenek kartı. Etiketin tamamı tıklanır. Alt durum satırı HER ZAMAN yer
   kaplar (metni değişir, düğmeler yerinden oynamaz). */
.fa .dset { margin: 10px; max-width: 1100px; }
.fa .dset-lead { margin: 0 0 10px; color: var(--proc-ink-soft); max-width: 820px; }
.fa .dset-rows { display: flex; flex-direction: column; gap: 8px; }
.fa .dset-row { display: grid; grid-template-columns: 240px minmax(0,1fr) minmax(0,1fr); gap: 8px; align-items: stretch; border-top: 1px solid var(--proc-line-soft); padding-top: 8px; }
.fa .dset-row:first-child { border-top: 0; padding-top: 0; }
.fa .dset-row-h .t, .fa .dset-opt .t { font-weight: 640; }
.fa .dset-opt { display: flex; gap: 8px; align-items: flex-start; padding: 7px 9px; border: 1px solid var(--proc-line); border-radius: 4px; background: var(--proc-surface); cursor: pointer; }
.fa .dset-opt.on { border-color: var(--proc-accent); background: var(--proc-accent-wash); }
.fa .dset-opt input { margin-top: 2px; accent-color: var(--proc-accent); }
.fa .dset-opt:has(input:disabled) { cursor: default; }
.fa .dset-foot { display: flex; align-items: center; gap: 6px; padding: 7px 10px; border-top: 1px solid var(--proc-line); background: var(--proc-surface-soft); }
.fa .dset-foot .spacer { flex: 1; }
.fa .dset-status { color: var(--proc-muted); min-height: 18px; }
.fa .dset-status.dirty { color: var(--proc-warning); font-weight: 600; }
.fa .dset-err { padding: 8px 10px; border: 1px solid #f0c2c2; background: var(--proc-danger-soft); color: var(--proc-danger); border-radius: 4px; }
@media (max-width: 900px) { .fa .dset-row { grid-template-columns: minmax(0,1fr); } }

/* ── Excel ile Toplu Yükleme › İş Emirleri (FaWorkOrderImportPanel.razor) ─────────────────────────────
   Parametre satırı her durumda aynı yüksekliği kaplar (yükleniyor / okunamadı / okundu). Hedef depo seçimi kalıp
   gerektirmiyorsa kapanır ama yerini korur. "Kayıtsız" müşteri rozeti kesikli çerçeveli: Dağıtım Müşterileri'nde karşılığı yok. */
.fa .wimp-param { min-height: 34px; display: flex; align-items: center; gap: 8px; padding: 5px 8px; border: 1px solid var(--proc-line); border-radius: 4px; background: var(--proc-surface-soft); font-size: 11.5px; }
.fa .wimp-param.reg { border-color: #bbf7d0; background: #f0fdf4; }
.fa .wimp-param.copy { border-color: #fed7aa; background: #fff7ed; }
.fa .wimp-param .lnk { margin-left: auto; white-space: nowrap; }
.fa .wimp-opts { display: grid; grid-template-columns: minmax(0,1fr); gap: 6px; }
.fa .wimp-opts label { display: grid; grid-template-columns: 118px minmax(0,1fr); align-items: center; gap: 6px; font-size: 11.5px; color: var(--proc-ink-soft); }
.fa .wimp-opts label.off { opacity: .55; }
.fa .wimp-cols { padding: 5px 10px; font-size: 11px; color: var(--proc-muted); border-bottom: 1px solid var(--proc-line-soft); }
.fa .bdg.copy { background: #fff7ed; color: #9a3412; border: 1px dashed #fb923c; }
