﻿/* ============================================================================
   YANILMA SINIRI PROGRAMI – BİRLEŞİK CSS
   Sürüm: 2026-10-29 | UTF-8 BOM

   Kaynak dosyalar, mevcut YanilmaSiniri.aspx içindeki yükleme sırasına göre
   birleştirilmiştir. CSS kuralları, seçiciler, özgüllük, !important ifadeleri,
   @media, @keyframes, açık/koyu tema ve tam ekran davranışı DEĞİŞTİRİLMEDİ.

   İÇİNDEKİLER
   [01] YanilmaCanvas_V1_7.css
        • Parsel önizleme, çizim, tam ekran, katmanlar
        • Hesaplama göstergesi ve koordinat yükleme kartı
        • Sayfa bilgi ve form alanı stilleri
   [02] YanilmaSonucTema_V1.css
        • Açık / koyu tema değişkenleri ve rapor kartları
        • Sonuç özeti, butonlar, ekran/print stilleri
   [03] YanilmaSonucCanvas_V1_0.css
        • Hesaplama sonrası Canvas, sonuç katmanları, nokta bilgileri
        • Tam ekran, sorunlu geometriler, köşe inceleme panelleri

   KURULUM: HTML'de üç ayrı CSS bağlantısı yerine yalnızca
   /LIHKAB/dxf/YanilmaSiniri_Birlesik.css bağlantısını kullanın.
   /Tema2022/css/print.css ve diğer site genel stilleri aynen korunur.
   ============================================================================ */

/* ============================================================================
   BÖLÜM 01 | 01. KOORDİNAT YÜKLEME / PARSEL ÖNİZLEME CANVAS, HESAP MODALI VE FORM STİLLERİ
   KAYNAK: YanilmaCanvas_V1_7.css
   ============================================================================ */
/* SHKMMB - Yukleme Sonrasi Parsel Onizleme Paneli V1.1.5
   Mevcut YanilmaCanvas_V1_1.js fonksiyonlari ve eleman ID'leri korunur.
   Yalnizca #parselCizimPanel icinde calisir. */
#parselCizimPanel.parsel-onizleme-kart {
  background: #101820;
  color: #eaf2f9;
  border: 1px solid #34465a;
  border-radius: 11px;
  padding: 12px;
  margin: 10px 0 12px;
  box-shadow: 0 3px 12px rgba(0,0,0,.15);
  isolation: isolate;
  position: relative;
  z-index: 0;
  box-sizing: border-box;
}
#parselCizimPanel .parsel-kart-baslik {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
#parselCizimPanel .parsel-kart-baslik strong {
  color: #71e6a2;
  font-size: 16px;
  font-weight: 700;
}
#parselCizimPanel .parsel-kart-butonlar {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}
#parselCizimPanel .parsel-kart-butonlar button {
  border-radius: 6px !important;
  padding: 7px 11px !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  box-shadow: none !important;
  text-transform: none !important;
  white-space: nowrap;
  cursor: pointer;
}
#parselCizimPanel #parselGorunumeSigdir {
  background: #253647 !important;
  border: 1px solid #62778d !important;
  color: #ecf5ff !important;
}
#parselCizimPanel #parselGorunumeSigdir:hover,
#parselCizimPanel #parselGorunumeSigdir:focus {
  background: #354b61 !important;
  color: #fff !important;
}
#parselCizimPanel #parselYenidenYukle {
  background: #1461b7 !important;
  border: 1px solid #247ee0 !important;
  color: #fff !important;
}
#parselCizimPanel #parselYenidenYukle:hover,
#parselCizimPanel #parselYenidenYukle:focus {
  background: #1a75d5 !important;
  color: #fff !important;
}
#parselCizimPanel .parsel-kart-aciklama {
  padding: 9px 11px;
  margin-bottom: 11px;
  background: #1b3046;
  color: #d9edff;
  border: 1px solid #345875;
  border-radius: 7px;
  font-size: 13px;
  line-height: 1.5;
}
#parselCizimPanel .parsel-canvas-sahne {
  position: relative;
  isolation: isolate;
  z-index: 0;
  border: 1px solid #2c4054;
  border-radius: 8px;
  background: #101820;
  overflow: hidden;
}
#parselCizimPanel #parselCanvas {
  display: block;
  width: 100%;
  height: 360px;
  background: #101820;
  border: 0;
  border-radius: 8px;
  touch-action: none;
  cursor: grab;
}
#parselCizimPanel #parselKatmanPanel { z-index: 1 !important; }
#parselCizimPanel #parselNoktaBilgi { z-index: 2 !important; }
#parselCizimPanel #parselCizimBilgi {
  color: #b6c8d8;
  margin-top: 8px;
  font-size: 12px;
}
#parselCizimPanel #parselAlanBilgi {
  color: #7bd6ff !important;
  text-align: center;
  margin-top: 7px;
  font-size: 15px;
  font-weight: 700;
}
#parselCizimPanel #parselUyarilar { margin-top: 8px; }
#parselCizimPanel #parselUyarilar:empty { display: none; }
@media (max-width: 520px) {
  #parselCizimPanel .parsel-kart-baslik { align-items: flex-start; }
  #parselCizimPanel .parsel-kart-butonlar button { padding: 7px 9px !important; }
}


/* V1.1.6 - Google Haritalar tarzı tam ekran kontrolü */
#parselCizimPanel .parsel-canvas-sahne { position: relative; }
#parselCizimPanel #parselTamEkran {
  position:absolute; top:11px; right:11px; z-index:3;
  display:flex; align-items:center; justify-content:center;
  width:35px; height:35px; padding:0 !important;
  border:1px solid #526779; border-radius:5px;
  background:#253b4d; color:#fff; cursor:pointer;
}
#parselCizimPanel #parselTamEkran:hover { background:#176744; }
#parselCizimPanel #parselTamEkrandanCik {
  display:none;
  background:#253647 !important;
  border:1px solid #62778d !important;
  color:#ecf5ff !important;
}
#parselCizimPanel #parselTamEkrandanCik:hover { background:#354b61 !important; }
#parselCizimPanel:fullscreen {
  width:100%; height:100vh; height:100dvh; margin:0; padding:14px;
  border:0; border-radius:0; background:#101820;
  display:flex !important; flex-direction:column; overflow:hidden;
  box-sizing:border-box; z-index:0;
}
#parselCizimPanel:fullscreen #parselYenidenYukle,
#parselCizimPanel:fullscreen #parselTamEkran { display:none !important; }
#parselCizimPanel:fullscreen #parselTamEkrandanCik { display:inline-flex !important; }
#parselCizimPanel:fullscreen .parsel-kart-baslik,
#parselCizimPanel:fullscreen .parsel-kart-aciklama { flex-shrink:0; }
#parselCizimPanel:fullscreen .parsel-canvas-sahne {
  flex:1 1 auto; min-height:0; display:flex; position:relative;
}
#parselCizimPanel:fullscreen #parselCanvas {
  width:100%; height:100%; flex:1 1 auto; min-height:0;
}
#parselCizimPanel:fullscreen #parselAlanBilgi,
#parselCizimPanel:fullscreen #parselUyarilar { flex-shrink:0; }

/* V1.1.6 - Önceki inline stillerin harici CSS karşılığı */
#parselCizimPanel .parsel-overlay-panel { position:absolute; box-sizing:border-box; border-radius:5px; }
#parselCizimPanel .parsel-layer-panel {
 bottom:9px; right:9px; z-index:1; width:160px; max-width:calc(100% - 18px);
 max-height:75%; overflow-x:hidden; overflow-y:auto; padding:9px 10px;
 border:1px solid #475569; background:rgba(20,29,41,.93);
 color:#f1f5f9; font-size:11px; line-height:1.4;
}
#parselCizimPanel .parsel-corner-info {
 display:none; left:8px; bottom:8px; z-index:2; max-width:85%;
 padding:6px 9px; background:rgba(15,23,42,.92);
 color:#fff; font-size:12px; pointer-events:none;
}
/* Canvas alt hesaplama bölümü */
#parselCizimPanel .parsel-hesaplama-alt {
    margin-top: 18px;
    padding: 16px 0 2px;
    border-top: 1px solid #34465a;
}

    #parselCizimPanel .parsel-hesaplama-alt .btn {
        display: block;
        width: 100%;
        border-radius: 7px;
        font-weight: 600;
        padding: 12px 16px;
    }

/* Tam ekranda hesaplama düğmesini gizle */
#parselCizimPanel:fullscreen .parsel-hesaplama-alt {
    display: none;
}
/* Canvas altındaki hesaplama butonu */
#parselCizimPanel .parsel-hesaplama-alt .yanilma-hesap-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px;
    position: relative;
    width: 100%;
    min-height: 48px;
    padding: 12px 16px;
    background: #22a447;
    color: #ffffff !important;
    border: 0;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
}

/* Büyüyüp kaybolan beyaz nokta */
#parselCizimPanel .yanilma-hesap-btn::before {
    content: "";
    display: block;
    position: static;
    flex: 0 0 12px;
    width: 12px;
    height: 12px;
    background: #ffffff;
    border-radius: 50%;
    animation: yanilmaNoktaBuyu 0.9s ease-out infinite;
}

#parselCizimPanel .yanilma-hesap-btn:hover {
    background: #198d3b;
}

@keyframes yanilmaNoktaBuyu {
    0% {
        transform: scale(0);
        opacity: 0;
    }

    30% {
        opacity: 1;
    }

    100% {
        transform: scale(1);
        opacity: 0;
    }
}

/* V1.1.7 - Katmanlar paneli: izole yerlesim ve renkli legend */
#parselCizimPanel #parselKatmanPanel.parsel-katman-ozel {
  position: absolute !important;
  right: 9px !important;
  bottom: 9px !important;
  width: 165px !important;
  min-width: 0 !important;
  max-width: calc(100% - 18px) !important;
  max-height: calc(100% - 18px) !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  padding: 9px 10px !important;
  background: rgba(20,29,41,.96) !important;
  border: 1px solid #475569 !important;
  border-radius: 6px !important;
  color: #f1f5f9 !important;
  z-index: 4 !important;
  line-height: 1.4 !important;
}
#parselCizimPanel #parselKatmanPanel.parsel-katman-ozel.parsel-katman-acik {
  width: 218px !important;
}
#parselCizimPanel #parselKatmanPanel .parsel-katman-baslik {
  position: static !important;
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  user-select: none !important;
  min-height: 24px !important;
}
#parselCizimPanel #parselKatmanPanel .parsel-katman-baslik-yazi {
  position: static !important;
  display: block !important;
  float: none !important;
  width: auto !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #f8fafc !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-align: left !important;
  white-space: nowrap !important;
}
#parselCizimPanel #parselKatmanPanel .parsel-katman-dugme {
  appearance: none !important;
  -webkit-appearance: none !important;
  position: static !important;
  inset: auto !important;
  display: flex !important;
  float: none !important;
  flex: 0 0 24px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  min-width: 24px !important;
  max-width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  max-height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid #52677b !important;
  border-radius: 5px !important;
  background: #1d2d3d !important;
  color: #e5f0fb !important;
  font-size: 17px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  text-align: center !important;
  cursor: pointer !important;
  transform: none !important;
  box-shadow: none !important;
}
#parselCizimPanel #parselKatmanPanel .parsel-katman-icerik {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  margin: 7px 0 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
#parselCizimPanel #parselKatmanPanel .parsel-katman-icerik[hidden] { display: none !important; }
#parselCizimPanel #parselKatmanPanel .parsel-katman-satir {
  position: static !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 24px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 2px 0 !important;
  box-sizing: border-box !important;
  line-height: 19px !important;
}
#parselCizimPanel #parselKatmanPanel input.parsel-katman-checkbox {
  appearance: auto !important;
  -webkit-appearance: checkbox !important;
  position: static !important;
  display: block !important;
  float: none !important;
  flex: 0 0 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
  inset: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  transform: none !important;
  vertical-align: middle !important;
  box-shadow: none !important;
  cursor: pointer !important;
}
#parselCizimPanel #parselKatmanPanel .parsel-katman-cizgi {
  position: static !important;
  display: block !important;
  float: none !important;
  flex: 0 0 14px !important;
  width: 14px !important;
  height: 3px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 2px !important;
  box-sizing: border-box !important;
}
#parselCizimPanel #parselKatmanPanel label.parsel-katman-etiket {
  position: static !important;
  display: block !important;
  float: none !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #e2e8f0 !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 19px !important;
  text-align: left !important;
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
}
#parselCizimPanel #parselKatmanPanel .parsel-katman-ayrac {
  display: block !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: 1px !important;
  margin: 5px 0 !important;
  padding: 0 !important;
  background: #475569 !important;
  border: 0 !important;
}


/*HESAP LOADİNG*/
/* Yanilma Siniri Hesaplama - AJAX surerken ortali yukleme penceresi.
   Hesaplamaya veya Canvas'a dokunmaz. */
.yanilma-hesap-overlay {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(5, 13, 23, .73);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .20s ease, visibility .20s ease;
    box-sizing: border-box;
}
.yanilma-hesap-overlay.aktif {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
}
.yanilma-hesap-kart,
.yanilma-hesap-kart * { box-sizing: border-box; }
.yanilma-hesap-kart {
    width: min(100%, 390px);
    border: 1px solid rgba(113, 162, 204, .36);
    border-radius: 20px;
    background: linear-gradient(145deg, #1d3040 0%, #131f2c 62%, #101b27 100%);
    box-shadow: 0 24px 78px rgba(0, 0, 0, .46), 0 0 35px rgba(34, 163, 255, .12);
    padding: 30px 27px 25px;
    text-align: center;
    color: #eaf4ff;
    font-family: Arial, Helvetica, sans-serif;
}
.yanilma-hesap-simge {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: rgba(29, 75, 105, .38);
}
.yanilma-hesap-simge::before {
    content: '';
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    border: 3px solid rgba(83, 175, 239, .16);
    border-top-color: #37b8ff;
    border-right-color: #35e6a0;
    animation: yanilma-don 1.1s linear infinite;
}
.yanilma-hesap-simge svg {
    width: 42px;
    height: 42px;
    filter: drop-shadow(0 0 7px rgba(63, 230, 166, .26));
}
.yanilma-hesap-kart h2 {
    font: 700 19px/1.4 Arial, Helvetica, sans-serif;
    color: #f0f9ff;
    margin: 0 0 10px;
}
.yanilma-hesap-aciklama {
    font: 400 13px/1.65 Arial, Helvetica, sans-serif;
    color: #b5c9d9;
    margin: 0 0 18px;
}
.yanilma-hesap-durum {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 9px;
    font: 600 13px/1.5 Arial, Helvetica, sans-serif;
    color: #79d8ff;
    margin-bottom: 18px;
}
.yanilma-hesap-nabiz {
    height: 8px;
    width: 8px;
    border-radius: 50%;
    background: #42d7ff;
    box-shadow: 0 0 0 0 rgba(66, 215, 255, .45);
    animation: yanilma-nabiz 1.6s infinite;
}
.yanilma-hesap-dipnot {
    margin: 0;
    padding-top: 15px;
    border-top: 1px solid rgba(137, 176, 203, .15);
    color: #8fa8bc;
    font: 400 12px/1.55 Arial, Helvetica, sans-serif;
}
body.yanilma-islem-acik { overflow: hidden !important; }
@keyframes yanilma-don { to { transform: rotate(360deg); } }
@keyframes yanilma-nabiz {
    0%, 100% { box-shadow: 0 0 0 0 rgba(66, 215, 255, .36); opacity: 1; }
    55% { box-shadow: 0 0 0 9px rgba(66, 215, 255, 0); opacity: .65; }
}
@media (max-width: 420px) {
    .yanilma-hesap-kart { padding: 24px 18px 20px; border-radius: 16px; }
    .yanilma-hesap-kart h2 { font-size: 17px; }
}
@media (prefers-reduced-motion: reduce) {
    .yanilma-hesap-simge::before, .yanilma-hesap-nabiz { animation: none; }
    .yanilma-hesap-overlay { transition: none; }
}
/*HESAP LOADİNG SONU */

/***************     YÜKLEME FORMU */
/* Yanılma Sınırı - Geometri Yükleme Paneli V1
 * Yalnızca #yukForm alanına uygulanır. Form alanlarını, JS ve Canvas'ı etkilemez.
 * Varsayılan açık tema; body.dark-theme koyu tema.
 */
#yukForm.yanilma-upload-card {
    --yu-bg: #f9fcff;
    --yu-border: #b9d9f6;
    --yu-text: #233b54;
    --yu-muted: #64778d;
    --yu-accent: #147bd0;
    --yu-icon-bg: #e7f4ff;
    --yu-chip-bg: #eef6ff;
    --yu-chip-border: #d6e8f8;
    --yu-divider: #d9e7f3;
    --yu-shadow: 0 8px 24px rgba(34, 88, 143, .08);
    display: block;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    margin: 10px 0 0;
    padding: 20px 16px 16px;
    border: 1px solid var(--yu-border);
    border-radius: 14px;
    background: var(--yu-bg);
    color: var(--yu-text);
    box-shadow: var(--yu-shadow);
    text-align: center;
    line-height: 1.45;
}
body.dark-theme #yukForm.yanilma-upload-card {
    --yu-bg: #152230;
    --yu-border: #345b7d;
    --yu-text: #edf5ff;
    --yu-muted: #aec1d5;
    --yu-accent: #76bfff;
    --yu-icon-bg: #233f58;
    --yu-chip-bg: #20354a;
    --yu-chip-border: #35526c;
    --yu-divider: #31465b;
    --yu-shadow: 0 8px 24px rgba(0, 0, 0, .17);
}
#yukForm .yu-heading { margin: 0; padding: 0; }
#yukForm .yu-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 13px;
    background: var(--yu-icon-bg);
    color: var(--yu-accent);
    font-size: 23px;
    margin-bottom: 9px;
}
#yukForm .yu-title {
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .1px;
    color: var(--yu-text);
}
#yukForm .yu-description {
    max-width: 400px;
    margin: 5px auto 15px;
    color: var(--yu-muted);
    font-size: 13px;
    line-height: 1.55;
}
#yukForm .yu-action { margin: 0 0 14px; padding: 0; }
#yukForm .yu-upload-btn,
#yukForm .yu-upload-btn.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 38px;
    min-width: 174px;
    margin: 0;
    padding: 8px 20px;
    border: 1px solid #1684de;
    border-radius: 9px;
    background-color: #2389df;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.3;
    cursor: pointer;
    box-shadow: 0 4px 10px rgba(28, 123, 206, .19);
    transition: background-color .15s, box-shadow .15s, transform .15s;
}
#yukForm .yu-upload-btn:hover,
#yukForm .yu-upload-btn.btn:hover {
    background-color: #116fbe;
    border-color: #116fbe;
    color: #fff;
    box-shadow: 0 6px 13px rgba(28, 123, 206, .22);
    transform: translateY(-1px);
}
#yukForm .yu-filetypes {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin: 0 auto 10px;
}
#yukForm .yu-filetype {
    display: inline-flex;
    gap: 5px;
    align-items: baseline;
    padding: 5px 9px;
    border: 1px solid var(--yu-chip-border);
    border-radius: 7px;
    background: var(--yu-chip-bg);
    color: var(--yu-muted);
    font-size: 11px;
    white-space: nowrap;
}
#yukForm .yu-filetype b { color: var(--yu-accent); font-size: 11px; }
#yukForm .yu-hint {
    max-width: 400px;
    margin: 0 auto 13px;
    color: var(--yu-muted);
    font-size: 12px;
    line-height: 1.5;
}
#yukForm .yu-hint .fa { color: var(--yu-accent); margin-right: 3px; }
#yukForm .yu-template {
    border-top: 1px solid var(--yu-divider);
    padding-top: 12px;
    display: flex;
    gap: 5px;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    font-size: 12px;
    color: var(--yu-muted);
}
#yukForm .yu-template > .fa { color: #23976d; margin-right: 3px; }
#yukForm .yu-template a { color: var(--yu-accent); font-weight: 700; text-decoration: none; }
#yukForm .yu-template a:hover { text-decoration: underline; }
@media (max-width: 480px) {
    #yukForm.yanilma-upload-card { padding: 17px 12px 14px; border-radius: 12px; }
    #yukForm .yu-title { font-size: 15px; }
    #yukForm .yu-filetype { padding: 5px 7px; }
}
@media (prefers-reduced-motion: reduce) {
    #yukForm .yu-upload-btn { transition: none; }
    #yukForm .yu-upload-btn:hover { transform: none; }
}

/*********** YÜKLEME OMRU SONUU */

/*** DOSYA ŞABLONLARI POPUP */
.yfg-guide {
                                --yfg-bg: #ffffff;
                                --yfg-surface: #f7faff;
                                --yfg-text: #1a2d44;
                                --yfg-muted: #52657e;
                                --yfg-border: #d9e5f2;
                                --yfg-blue: #1678d6;
                                --yfg-blue-soft: #eaf4ff;
                                --yfg-warning-bg: #fff7e5;
                                --yfg-warning-text: #875a17;
                                color: var(--yfg-text);
                                background: var(--yfg-bg);
                                font: 13px/1.55 'Segoe UI', Tahoma, Arial, sans-serif;
                                padding: 2px;
                                max-width: 100%;
                                box-sizing: border-box;
                            }
                            body.dark-theme .yfg-guide {
                                --yfg-bg: #182431;
                                --yfg-surface: #1d2c3b;
                                --yfg-text: #e4edf8;
                                --yfg-muted: #b5c7d9;
                                --yfg-border: #36506a;
                                --yfg-blue: #66b6ff;
                                --yfg-blue-soft: #203c55;
                                --yfg-warning-bg: #392f20;
                                --yfg-warning-text: #ffd48b;
                            }
                            .yfg-guide, .yfg-guide * { box-sizing: border-box; }
                            .yfg-guide .yfg-intro { text-align: center; padding: 10px 12px 14px; }
                            .yfg-guide .yfg-mainicon {
                                display: inline-flex; align-items: center; justify-content: center;
                                width: 42px; height: 42px; border-radius: 12px;
                                color: var(--yfg-blue); background: var(--yfg-blue-soft);
                                font-size: 20px; margin-bottom: 7px;
                            }
                            .yfg-guide .yfg-title { font-size: 17px; font-weight: 700; margin: 0 0 6px; color: var(--yfg-text); }
                            .yfg-guide .yfg-lead { color: var(--yfg-muted); margin: 0 0 11px; font-size: 13px; line-height: 1.6; }
                            .yfg-guide .yfg-filetypes { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; }
                            .yfg-guide .yfg-chip {
                                display: inline-flex; gap: 6px; align-items: center;
                                border: 1px solid var(--yfg-border); border-radius: 7px;
                                background: var(--yfg-surface); padding: 5px 9px;
                                color: var(--yfg-text); font-size: 12px;
                            }
                            .yfg-guide .yfg-chip b { color: var(--yfg-blue); }
                            .yfg-guide .yfg-note {
                                background: var(--yfg-blue-soft); color: var(--yfg-text);
                                border-left: 3px solid var(--yfg-blue);
                                border-radius: 5px; padding: 10px 12px; margin: 0 0 12px;
                                line-height: 1.55;
                            }
                            .yfg-guide .yfg-list-heading { font-size: 12px; font-weight: 700; color: var(--yfg-muted); margin: 0 0 8px; }
                            .yfg-guide .yfg-card {
                                background: var(--yfg-surface); border: 1px solid var(--yfg-border);
                                border-radius: 11px; margin: 0 0 9px; overflow: hidden;
                            }
                            .yfg-guide .yfg-card[open] { border-color: var(--yfg-blue); }
                            .yfg-guide .yfg-card summary {
                                list-style: none; cursor: pointer; padding: 13px 12px;
                                display: flex; align-items: center; gap: 11px;
                                user-select: none; color: var(--yfg-text);
                            }
                            .yfg-guide .yfg-card summary::-webkit-details-marker { display: none; }
                            .yfg-guide .yfg-format-icon {
                                flex: none; display: inline-flex; align-items: center; justify-content: center;
                                width: 34px; height: 34px; border-radius: 8px;
                                background: var(--yfg-blue-soft); color: var(--yfg-blue); font-size: 17px;
                            }
                            .yfg-guide .yfg-card-title { flex: 1; min-width: 0; }
                            .yfg-guide .yfg-card-name { display: block; font-size: 14px; font-weight: 700; color: var(--yfg-text); }
                            .yfg-guide .yfg-card-desc { display: block; font-size: 11px; font-weight: 400; color: var(--yfg-muted); margin-top: 2px; }
                            .yfg-guide .yfg-arrow { color: var(--yfg-muted); font-size: 17px; flex: none; }
                            .yfg-guide .yfg-card[open] .yfg-arrow { transform: rotate(180deg); }
                            .yfg-guide .yfg-card-content {
                                border-top: 1px solid var(--yfg-border); padding: 12px 14px;
                                color: var(--yfg-text); background: var(--yfg-bg);
                                font-size: 12.5px;
                            }
                            .yfg-guide .yfg-card-content p { margin: 0 0 9px; color: var(--yfg-text); }
                            .yfg-guide .yfg-card-content ul { padding-left: 18px; margin: 0; }
                            .yfg-guide .yfg-card-content li { margin: 0 0 7px; line-height: 1.55; }
                            .yfg-guide .yfg-card-content li:last-child { margin-bottom: 0; }
                            .yfg-guide .yfg-callout {
                                background: var(--yfg-blue-soft); border-radius: 7px;
                                padding: 10px 11px; margin-bottom: 11px;
                                color: var(--yfg-text); line-height: 1.55;
                            }
                            .yfg-guide .yfg-callout i { color: var(--yfg-blue); margin-right: 4px; }
                            .yfg-guide .yfg-excel-sample {
                                background: var(--yfg-surface); border: 1px solid var(--yfg-border);
                                border-radius: 8px; padding: 8px; text-align: center; margin-bottom: 11px;
                            }
                            .yfg-guide .yfg-excel-sample img {
                                display: block; max-width: 100%; width: 100%; height: auto;
                                max-height: 230px; object-fit: contain; margin: 0 auto; border-radius: 3px;
                            }
                            .yfg-guide .yfg-excel-caption { font-size: 11px; color: var(--yfg-muted); margin-top: 5px; }
                            .yfg-guide .yfg-retired {
                                display: flex; align-items: flex-start; gap: 9px;
                                background: var(--yfg-warning-bg); color: var(--yfg-warning-text);
                                padding: 11px 12px; border-radius: 9px;
                                border: 1px solid var(--yfg-border); margin-top: 13px;
                                font-size: 12px; line-height: 1.6;
                            }
                            .yfg-guide .yfg-retired i { margin-top: 2px; font-size: 15px; flex: none; }
                            .yfg-guide .yfg-retired strong { color: inherit; }
                            @media (max-width: 450px) {
                                .yfg-guide .yfg-intro { padding-left: 2px; padding-right: 2px; }
                                .yfg-guide .yfg-title { font-size: 15px; }
                                .yfg-guide .yfg-card summary { padding: 11px 9px; gap: 8px; }
                                .yfg-guide .yfg-card-content { padding: 10px; }
                            }
/********** DOSYA ŞABLONLARI POPUP BİTER */

/* ===============================================================
   Yanılma Sınırı — Bilgi sütunu V1
   Yalnız #sagsolForm altında çalışır, form alanlarını değiştirmez.
   Ana/SHKMMB anlatımı + alt hizalı paylaşım / açık & koyu tema.
   =============================================================== */
#sagsolForm .ys-form-iki-sutun {
  display:grid;
  grid-template-columns:minmax(0,2.15fr) minmax(0,1fr);
  gap:20px;
  align-items:stretch;
  width:100%;
}
#sagsolForm .ys-form-iki-sutun > .ortaSol,
#sagsolForm .ys-form-iki-sutun > .ortaSag {
  float:none !important;
  width:auto !important;
  max-width:none !important;
  min-width:0;
  margin:0;
}
#sagsolForm .ys-form-iki-sutun > .clear { display:none !important; }
#sagsolForm .ys-bilgi-sag {
  display:flex;
  flex-direction:column;
  align-self:stretch;
  font-size:12.5px;
  line-height:1.42;
}
#sagsolForm .ys-bilgi-sag #fiyatDetay {
  flex:1 0 auto;
  border-radius:10px;
  padding:11px 10px;
  margin:0;
  color:#24405a;
  background:#f7faff;
  border:1px solid #c7dff6;
  overflow-wrap:break-word;
}
#sagsolForm .ys-bilgi-sag #fiyatDetay h4 {
  font-size:16px;
  line-height:1.35;
  margin:0 0 7px;
  font-weight:700;
  color:#1f9b65 !important;
}
#sagsolForm .ys-bilgi-kategori {
  color:#e04452;
  font-weight:700;
  font-size:13px;
  margin:0 0 7px;
}
#sagsolForm .ys-bilgi-giris {
  margin:0 0 8px;
  color:#3c526a;
}
#sagsolForm .ys-bilgi-yontem {
  padding:8px 8px;
  margin:0 0 7px;
  border:1px solid #d7e4ef;
  border-radius:8px;
  background:#fff;
}
#sagsolForm .ys-bilgi-yontem-baslik {
  font-size:12.7px;
  font-weight:700;
  margin-bottom:5px;
  line-height:1.35;
}
#sagsolForm .ys-bilgi-ana { border-left:3px solid #278bc8; }
#sagsolForm .ys-bilgi-ana .ys-bilgi-yontem-baslik { color:#1773af; }
#sagsolForm .ys-bilgi-shk { border-left:3px solid #8996a5; }
#sagsolForm .ys-bilgi-shk .ys-bilgi-yontem-baslik { color:#4b6076; }
#sagsolForm .ys-bilgi-yontem p { margin:0 0 6px; }
#sagsolForm .ys-bilgi-yontem p:last-child { margin-bottom:0; }
#sagsolForm .ys-bilgi-cizim {
  border-top:1px solid #cbdceb;
  padding-top:7px;
  margin:2px 0 7px;
  color:#445d75;
}
#sagsolForm .ys-bilgi-link {
  display:inline-block;
  color:#127cc2;
  font-weight:600;
  text-decoration:none;
  line-height:1.4;
}
#sagsolForm .ys-bilgi-link:hover { text-decoration:underline; }
#sagsolForm .ys-bilgi-paylas {
  padding:11px 10px 7px;
  margin-top:9px;
  border-radius:9px;
  border:1px solid #d4e0ea;
  background:#f7f9fc;
  flex-shrink:0;
  min-height:65px;
}
#sagsolForm .ys-bilgi-paylas-baslik { font-size:12px; margin-bottom:7px; color:#47627d; }
#sagsolForm .ys-bilgi-paylas .a2a_kit { display:block; min-height:32px; }
#sagsolForm #arsivonayli { line-height:1.55; }

/* Sayfanın mevcut açık/koyu tema anahtarı: body.dark-theme */
body.dark-theme #sagsolForm .ys-bilgi-sag #fiyatDetay {
  background:#192735; border-color:#35516b; color:#d1ddeb;
}
body.dark-theme #sagsolForm .ys-bilgi-giris { color:#c1cfdf; }
body.dark-theme #sagsolForm .ys-bilgi-yontem {
  background:#17212d; border-color:#304458;
}
body.dark-theme #sagsolForm .ys-bilgi-ana { border-left-color:#35adf7; }
body.dark-theme #sagsolForm .ys-bilgi-ana .ys-bilgi-yontem-baslik { color:#80d1ff; }
body.dark-theme #sagsolForm .ys-bilgi-shk { border-left-color:#8798aa; }
body.dark-theme #sagsolForm .ys-bilgi-shk .ys-bilgi-yontem-baslik { color:#d3dce5; }
body.dark-theme #sagsolForm .ys-bilgi-cizim { color:#b8c8d9; border-top-color:#37506a; }
body.dark-theme #sagsolForm .ys-bilgi-link { color:#6ec6ff; }
body.dark-theme #sagsolForm .ys-bilgi-paylas {
  background:#262f3a; border-color:#3a4a5e;
}
body.dark-theme #sagsolForm .ys-bilgi-paylas-baslik { color:#d4e0ed; }

/* Dar ekranlarda form ve açıklama doğal sırayla alt alta gelir. */
@media (max-width:991px) {
  #sagsolForm .ys-form-iki-sutun { grid-template-columns:minmax(0,1fr); gap:14px; }
  #sagsolForm .ys-bilgi-sag #fiyatDetay { flex:0 1 auto; }
  #sagsolForm .ys-bilgi-paylas { min-height:0; }
}
/* =========================== BÖLÜM 01 SONU =========================== */

/* ============================================================================
   BÖLÜM 02 | 02. HESAPLAMA SONUCU – AÇIK / KOYU TEMA VE RAPOR DÜZENİ
   KAYNAK: YanilmaSonucTema_V1.css
   ============================================================================ */
/*
 * Yanilma Siniri - yalnizca sonuc bolumu.
 * Varsayilan: acik tema. Koyu tema: body.dark-theme
 * ASPX <head> icinde ana tema CSS dosyalarindan SONRA yukleyin:
 * <link rel="stylesheet" href="/Content/yanilma-sonuc-tema.css" />
 * Canvas geometrisi, cizgi renkleri ve JavaScript katmanlari degistirilmez.
 * Mevcut Font Awesome 4 dosyasi kullanilir; yeni kutuphane gerekmez.
 */
#yanilmaSonucPanel.sonuc-birlesik {
    --ys-surface: #ffffff;
    --ys-summary-surface: #ffffff;
    --ys-panel-border: #dce1e5;
    --ys-warning-panel-bg: #fff6e6;
    --ys-warning-panel-border: #ead2a8;
    --ys-warning-panel-text: #80531a;
    --ys-surface-soft: #f5f6f7;
    --ys-text: #29323a;
    --ys-muted: #596774;
    --ys-border: #dce1e5;
    --ys-accent: #218838;
    --ys-blue: #0075b5;
    --ys-green: #17813b;
    --ys-success-bg: #edf7ef;
    --ys-success-text: #23643a;
    --ys-success-border: #c8e3cf;
    --ys-warning-bg: #fff6e6;
    --ys-warning-text: #80531a;
    --ys-warning-border: #ead2a8;
    --ys-danger-bg: #fff0ed;
    --ys-danger-text: #a23728;
    --ys-danger-border: #edc6bf;
    --ys-info-bg: #f0f6fa;
    --ys-info-border: #d1e1ec;
    --ys-info-text: #405869;
    --ys-info-heading: #246480;
    --ys-control-border: #adb8c1;
    --ys-cad-bg: #0e1822;
    --ys-cad-border: #3b536a;
    --ys-button-hover: #e9edf0;
    --ys-focus: #0075b5;
    --ys-shadow: 0 2px 10px rgba(30,40,50,.06);
}

body.dark-theme #yanilmaSonucPanel.sonuc-birlesik {
    --ys-surface: #141d26;
    --ys-summary-surface: #282a2c;
    --ys-panel-border: #365063;
    --ys-warning-panel-bg: #352c24;
    --ys-warning-panel-border: #735439;
    --ys-warning-panel-text: #ffdfb0;
    --ys-surface-soft: #303336;
    --ys-text: #edf0f2;
    --ys-muted: #b4bec7;
    --ys-border: #484e53;
    --ys-accent: #6cda8b;
    --ys-blue: #56beff;
    --ys-green: #61e69a;
    --ys-success-bg: #203b2b;
    --ys-success-text: #a4e8b8;
    --ys-success-border: #41634a;
    --ys-warning-bg: #3b3023;
    --ys-warning-text: #f3d29d;
    --ys-warning-border: #746044;
    --ys-danger-bg: #442c29;
    --ys-danger-text: #ffbeb1;
    --ys-danger-border: #78514a;
    --ys-info-bg: #293740;
    --ys-info-border: #455c6b;
    --ys-info-text: #d2e0e9;
    --ys-info-heading: #a4d5ee;
    --ys-control-border: #85919b;
    --ys-button-hover: #3c4145;
    --ys-focus: #75caff;
    --ys-shadow: 0 2px 10px rgba(0,0,0,.14);
}

/* Mevcut yerlesim ve boyutlar */
/* Yalnizca WebMethod sonuc HTML'i. ASPX ana tema / sidebar degismez. */
#yanilmaSonucPanel.sonuc-birlesik{max-width:100%;box-sizing:border-box;background:var(--ys-surface)!important;color:var(--ys-text)!important;border:1px solid var(--ys-panel-border);border-radius:11px;padding:13px!important;margin:8px 0 12px!important;overflow:visible;font-family:Arial,Segoe UI,sans-serif;}
#yanilmaSonucPanel.sonuc-birlesik *{box-sizing:border-box;}
#yanilmaSonucPanel.sonuc-birlesik .sb-ustbilgi{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;background:var(--ys-surface-soft);border:1px solid var(--ys-border);border-radius:7px;padding:9px 11px;margin-bottom:12px;font-size:13px;color:var(--ys-muted);}
#yanilmaSonucPanel.sonuc-birlesik .sb-ustbilgi b{color:var(--ys-text);}
#yanilmaSonucPanel.sonuc-birlesik .sb-kart-baslik{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px;flex-wrap:wrap;}
#yanilmaSonucPanel.sonuc-birlesik .sb-kart-baslik strong{color:var(--ys-accent);font-size:20px;font-weight:750;}
#yanilmaSonucPanel.sonuc-birlesik .sb-kart-baslik small{display:block;color:var(--ys-muted);font-size:11px;line-height:1.45;margin-top:3px;}
    #yanilmaSonucPanel.sonuc-birlesik .sb-kart-baslik small.shata {
        display: block;
        color: var(--ys-danger-text);
        font-size: 12px;
        line-height: 1.45;
        margin-top: 3px;
    }
#yanilmaSonucPanel.sonuc-birlesik .sb-durum{font-size:10px;color:var(--ys-success-text);background:var(--ys-success-bg);border:1px solid var(--ys-success-border);border-radius:5px;padding:4px 7px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-durum.sb-kismi{background:var(--ys-warning-bg);border-color:var(--ys-warning-border);color:var(--ys-warning-text);}
#yanilmaSonucPanel.sonuc-birlesik .sb-ozet{background:var(--ys-summary-surface);border:1px solid var(--ys-border);border-radius:8px;overflow:hidden;}
#yanilmaSonucPanel.sonuc-birlesik .sb-sayilar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}
#yanilmaSonucPanel.sonuc-birlesik .sb-sayi{padding:14px 5px 11px;text-align:center;min-width:0;}
#yanilmaSonucPanel.sonuc-birlesik .sb-sayi+.sb-sayi{border-left:1px solid var(--ys-border);}
#yanilmaSonucPanel.sonuc-birlesik .sb-sayi small{color:var(--ys-muted);font-size:11px;display:block;}
#yanilmaSonucPanel.sonuc-birlesik .sb-sayi b{font-size:clamp(16px,2.2vw,27px);letter-spacing:-.5px;line-height:1.45;white-space:nowrap;display:inline-block;font-variant-numeric:tabular-nums;}
#yanilmaSonucPanel.sonuc-birlesik .sb-sayi .sb-birim{font-size:11px;font-weight:400;color:var(--ys-muted);margin-left:3px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-sayi em{display:block;color:var(--ys-muted);font-style:normal;font-size:10px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-mavi{color:var(--ys-blue)!important;}#yanilmaSonucPanel.sonuc-birlesik .sb-yesil{color:var(--ys-green)!important;}
#yanilmaSonucPanel.sonuc-birlesik .sb-karar{padding:10px 12px;text-align:center;background:var(--ys-success-bg);border-top:1px solid var(--ys-success-border);color:var(--ys-success-text);font-weight:700;font-size:12px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-karar.sb-hata{background:var(--ys-danger-bg);color:var(--ys-danger-text);border-color:var(--ys-danger-border);}
#yanilmaSonucPanel.sonuc-birlesik .sb-karar.sb-belirsiz{background:var(--ys-warning-bg);color:var(--ys-warning-text);border-color:var(--ys-warning-border);}
#yanilmaSonucPanel.sonuc-birlesik .sb-gerekce{margin-top:10px;padding:10px 12px;background:var(--ys-info-bg);border:1px solid var(--ys-info-border);border-radius:7px;font-size:11px;color:var(--ys-info-text);}
#yanilmaSonucPanel.sonuc-birlesik .sb-gerekce strong{display:block;color:var(--ys-info-heading);margin-bottom:5px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-gerekce p{margin:5px 0 0;line-height:1.5;}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik{display:flex!important;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px;padding:0!important;background:transparent!important;border:0!important;margin:15px 2px 7px!important;}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik strong{font-size:12px;color:var(--ys-text)!important;}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik button{font-size:11px!important;border-radius:5px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-harita-notu{font-size:10px;color:var(--ys-muted);margin:0 2px 8px;}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-sahne{position:relative!important;height:410px!important;min-height:310px!important;max-width:100%;overflow:hidden!important;border:1px solid var(--ys-cad-border)!important;border-radius:8px;background:var(--ys-cad-bg)!important;}
#yanilmaSonucPanel.sonuc-birlesik #yanilmaSonucCanvas{display:block!important;width:100%!important;height:100%!important;touch-action:none;}
/* Canvas V2.3 kendi alan panelini uretir: hesaplamasi devam eder, ikinci kutu gizlenir. */
#yanilmaSonucPanel.sonuc-birlesik #yanilmaSonucAlanlar{display:none!important;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir{margin-top:9px;background:var(--ys-surface-soft);border:1px solid var(--ys-border);border-radius:8px;color:var(--ys-text);overflow:hidden;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir > summary{cursor:pointer;display:flex;align-items:center;gap:7px;list-style:none;font-size:12px;font-weight:700;padding:11px 12px;color:var(--ys-text);user-select:none;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir > summary::-webkit-details-marker{display:none;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir > summary:before{content:'\f067';font-family:FontAwesome;border:1px solid var(--ys-control-border);width:19px;height:19px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;font-weight:400;font-size:16px;flex-shrink:0;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir[open] > summary:before{content:'\f068';}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik{padding:0 12px 13px;font-size:11px;overflow-x:auto;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik table{width:100%;border-collapse:collapse;color:var(--ys-text);font-size:11px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik td,#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik th{padding:8px 7px;border-top:1px solid var(--ys-border);background:transparent;color:var(--ys-text);}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik th{text-align:left;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik td:not(:first-child){text-align:right;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik .bTablo{background:transparent!important;}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik .bTablo td,#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik .bTablo th{background:var(--ys-surface-soft)!important;color:var(--ys-text)!important;font-size:11px!important;}
#yanilmaSonucPanel.sonuc-birlesik .sb-teknik-baslik{margin:9px 0 4px;font-size:12px;color:var(--ys-info-heading);}
#yanilmaSonucPanel.sonuc-birlesik #yanilmaSonucIhlaller{margin-top:9px!important;}
#yanilmaSonucPanel.sonuc-birlesik #yanilmaSonucIhlaller[hidden]{display:none!important;}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-uyari-acilir{background:var(--ys-warning-panel-bg)!important;border:1px solid var(--ys-warning-panel-border)!important;border-radius:8px;color:var(--ys-warning-panel-text)!important;font-size:11px;}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-uyari-acilir summary{padding:11px 12px!important;}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-uyari-acilir ul{padding-left:19px;}
#yanilmaSonucPanel.sonuc-birlesik .sb-kaynak{color:var(--ys-muted);font-size:11px;margin-top:8px;line-height:1.5;}
@media(max-width:590px){#yanilmaSonucPanel.sonuc-birlesik .sb-sayi{padding:10px 4px 9px}#yanilmaSonucPanel.sonuc-birlesik .sb-sayi b{font-size:clamp(14px,3vw,20px)}#yanilmaSonucPanel.sonuc-birlesik .sb-sayi small{font-size:9px}#yanilmaSonucPanel.sonuc-birlesik .sb-sayi em{font-size:9px}#yanilmaSonucPanel.sonuc-birlesik .sb-sayi .sb-birim{font-size:10px}#yanilmaSonucPanel.sonuc-birlesik .sonuc-sahne{height:335px!important}#yanilmaSonucPanel.sonuc-birlesik .sb-ustbilgi{font-size:10px}}

/* Ana temanin genel button / table / alert kurallarina karsi yerel stiller. */
#yanilmaSonucPanel.sonuc-birlesik {
    color-scheme: light;
    box-shadow: var(--ys-shadow);
}
body.dark-theme #yanilmaSonucPanel.sonuc-birlesik { color-scheme: dark; }
#yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik button {
    background: var(--ys-surface-soft) !important;
    color: var(--ys-text) !important;
    border: 1px solid var(--ys-control-border) !important;
    padding: 6px 10px;
    cursor: pointer;
}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik button:hover {
    background: var(--ys-button-hover) !important;
}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir > summary:hover {
    background: var(--ys-button-hover);
}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir[open] > summary {
    border-bottom: 1px solid var(--ys-border);
    margin-bottom: 8px;
}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir .sb-acilir { margin-top: 8px; }
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik p { color: inherit; }
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik thead th {
    background: var(--ys-surface-soft) !important;
    color: var(--ys-text) !important;
}
#yanilmaSonucPanel.sonuc-birlesik .sb-acilir-icerik tbody tr:hover > td {
    background: var(--ys-button-hover) !important;
}
/* JS ile uretilen uyari kapsayicisindaki sabit acik renkleri etkisizlestirir. */
#yanilmaSonucPanel.sonuc-birlesik #yanilmaSonucIhlaller {
    background: var(--ys-warning-bg) !important;
    color: var(--ys-warning-text) !important;
    border-color: var(--ys-warning-border) !important;
}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-uyari-acilir > summary,
#yanilmaSonucPanel.sonuc-birlesik .sonuc-uyari-acilir li {
    color: inherit !important;
}
#yanilmaSonucPanel.sonuc-birlesik .sonuc-uyari-acilir > summary:hover {
    background: transparent;
}
/* CAD alani iki temada da koyudur; ici icin genel renk kurali uygulanmaz. */
#yanilmaSonucPanel.sonuc-birlesik .sonuc-sahne {
    color-scheme: dark;
    color: #eaf2f9;
}
/* FA4'te less-than-equal yok: chevron-left ve alt cizgi ile esitsizlik ikonu. */
#yanilmaSonucPanel.sonuc-birlesik .sb-kucuk-esit {
    display: inline-block;
    border-bottom: 1px solid currentColor;
    padding-bottom: .12em;
    font-size: .78em;
    vertical-align: .03em;
}
#yanilmaSonucPanel.sonuc-birlesik .sb-gerekce p > .fa-circle {
    font-size: .45em;
    vertical-align: .25em;
    margin-right: .45em;
}
#yanilmaSonucPanel.sonuc-birlesik button:focus-visible,
#yanilmaSonucPanel.sonuc-birlesik summary:focus-visible {
    outline: 2px solid var(--ys-focus);
    outline-offset: 3px;
}
/* Teknik ayrintilarin altinda, ana sonuc kutusunun icindeki butonlar. */
#yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler.row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 12px 0 0;
    padding-top: 12px;
    border-top: 1px solid var(--ys-border);
}
/* Bootstrap row pseudo elemanlari grid hucresi olusturmasin. */
#yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler.row::before,
#yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler.row::after {
    display: none;
    content: none;
}
#yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler > .col-sm-4 {
    display: flex;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    flex: none;
    float: none;
    padding: 0;
    margin: 0;
}
#yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler .ys-islem {
    width: 100%;
    min-width: 0;
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    gap: 8px;
    font-weight: bold;
    font-size: 12px;
    padding: 10px 6px;
    line-height: 1.4;
    white-space: normal;
    text-align: center;
    text-decoration: none;
    border-radius: 5px;
}
#yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler .ys-islem > .fa {
    font-size: 16px;
    margin: 0;
}
#yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler .ys-pdf-uyari {
    min-width: 0;
    margin: 0;
    font-size: 11px;
    overflow-wrap: anywhere;
}
@media (max-width: 575px) {
    #yanilmaSonucPanel.sonuc-birlesik .yanilma-sonuc-islemler.row {
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }
}
.yanilma-sonuc-islemler .btn-danger { background: #dc3545; border-color: #dc3545; color: #fff; }
.yanilma-sonuc-islemler .btn-success { background: #28a745; border-color: #28a745; color: #fff; }
.yanilma-sonuc-islemler .btn-dark { background: #343a40; border-color: #343a40; color: #fff; }
.yanilma-sonuc-islemler .btn-secondary { background: #6c757d; border-color: #6c757d; color: #fff; }
.yanilma-sonuc-islemler .btn-danger:hover { background: #c82333; border-color: #bd2130; }
.yanilma-sonuc-islemler .btn-success:hover { background: #218838; border-color: #1e7e34; }
.yanilma-sonuc-islemler .btn-dark:hover { background: #23272b; border-color: #1d2124; }
body.dark-theme .yanilma-sonuc-islemler .btn-dark { background: #343a40; border-color: #343a40; }
body.dark-theme .yanilma-sonuc-islemler .btn-dark:hover { background: #23272b; border-color: #1d2124; }
.yanilma-sonuc-islemler a:focus-visible { outline: 2px solid #0075b5; outline-offset: 3px; }
body.dark-theme .yanilma-sonuc-islemler a:focus-visible { outline-color: #75caff; }
.yanilma-sonuc-islemler .ys-pdf-uyari { background: #fff6e6; color: #80531a; border-color: #ead2a8; }
body.dark-theme .yanilma-sonuc-islemler .ys-pdf-uyari { background: #3b3023; color: #f3d29d; border-color: #746044; }
/* Acik temada hesap sonucunu one cikarir; koyu tema aynen korunur. */
@media screen {
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-ozet {
        border-color: #9fb8cd;
        box-shadow: 0 3px 12px rgba(24, 60, 89, .12);
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi:nth-child(1) {
        background: #e3f2ff;
        box-shadow: inset 0 3px 0 #087bbb;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi:nth-child(2) {
        background: #e9eff6;
        box-shadow: inset 0 3px 0 #254d70;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi:nth-child(3) {
        background: #e0f3e8;
        box-shadow: inset 0 3px 0 #158342;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi + .sb-sayi {
        border-left-color: #b5c8d6;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi small {
        color: #304b62;
        font-weight: 600;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi em,
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi .sb-birim {
        color: #40576a;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi b {
        color: #183c59;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi .sb-mavi {
        color: #0069a6 !important;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-sayi .sb-yesil {
        color: #087336 !important;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-karar {
        background: #19753b;
        color: #ffffff;
        border-top-color: #125b2d;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-karar.sb-hata {
        background: #b33b2e;
        color: #ffffff;
        border-top-color: #963125;
    }
    body:not(.dark-theme) #yanilmaSonucPanel.sonuc-birlesik .sb-karar.sb-belirsiz {
        background: #f3ce78;
        color: #563708;
        border-top-color: #cba64b;
    }
}

/* Iki temada da baslik + aciklama + Canvas tek CAD paneli gibi gorunur. */
@media screen {
    body #yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik {
        background: #101820 !important;
        color: #eaf2f9 !important;
        color-scheme: dark;
        margin: 15px 0 0 !important;
        padding: 11px 12px 7px !important;
        border: 1px solid var(--ys-cad-border) !important;
        border-bottom: 0 !important;
        border-radius: 8px 8px 0 0;
    }
    body #yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik strong {
        color: #eaf2f9 !important;
    }
    body #yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik button {
        background: #263442 !important;
        color: #eaf2f9 !important;
        border-color: #688094 !important;
    }
    body #yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik button:hover {
        background: #33495a !important;
    }
    body #yanilmaSonucPanel.sonuc-birlesik .sonuc-baslik button:focus-visible {
        outline-color: #75caff;
    }
    body #yanilmaSonucPanel.sonuc-birlesik .sb-harita-notu {
        background: #101820;
        color: #a4bac9;
        margin: 0;
        padding: 0 12px 10px;
        border-left: 1px solid var(--ys-cad-border);
        border-right: 1px solid var(--ys-cad-border);
    }
    body #yanilmaSonucPanel.sonuc-birlesik .sonuc-sahne {
        background: #101820 !important;
        margin: 0 !important;
        border-top: 0 !important;
        border-radius: 0 0 8px 8px;
    }
}

/* Yazdirma: bilgi panelleri acik; CAD arka plani ve cizim renkleri korunur. */
@media print {
    body #yanilmaSonucPanel.sonuc-birlesik,
    body.dark-theme #yanilmaSonucPanel.sonuc-birlesik {
        --ys-surface: #ffffff;
    --ys-summary-surface: #ffffff;
    --ys-panel-border: #dce1e5;
    --ys-warning-panel-bg: #fff6e6;
    --ys-warning-panel-border: #ead2a8;
    --ys-warning-panel-text: #80531a;
        --ys-surface-soft: #f5f6f7;
        --ys-text: #29323a;
        --ys-muted: #596774;
        --ys-border: #dce1e5;
        --ys-accent: #218838;
        --ys-blue: #0075b5;
        --ys-green: #17813b;
        --ys-success-bg: #edf7ef;
        --ys-success-text: #23643a;
        --ys-success-border: #c8e3cf;
        --ys-warning-bg: #fff6e6;
        --ys-warning-text: #80531a;
        --ys-warning-border: #ead2a8;
        --ys-danger-bg: #fff0ed;
        --ys-danger-text: #a23728;
        --ys-danger-border: #edc6bf;
        --ys-info-bg: #f0f6fa;
        --ys-info-border: #d1e1ec;
        --ys-info-text: #405869;
        --ys-info-heading: #246480;
        --ys-control-border: #adb8c1;
        --ys-cad-bg: #0e1822;
        --ys-cad-border: #3b536a;
        --ys-button-hover: #e9edf0;
        --ys-focus: #0075b5;
        --ys-shadow: 0 2px 10px rgba(30,40,50,.06);

        background: #fff !important;
        color: #29323a !important;
        box-shadow: none;
    }
    #yanilmaSonucPanel.sonuc-birlesik .noPrint,
    .yanilma-sonuc-islemler.noPrint { display: none !important; }
}
/* =========================== BÖLÜM 02 SONU =========================== */

/* ============================================================================
   BÖLÜM 03 | 03. HESAPLAMA SONUCU CANVAS – KATMANLAR, TAM EKRAN, NOKTA VE İHLALLER
   KAYNAK: YanilmaSonucCanvas_V1_0.css
   ============================================================================ */
/* Sadece hesaplama sonrası sonuç paneli. Yükleme Canvas stilinden bağımsız. */
#yanilmaSonucPanel[hidden] { display:none !important; }
#yanilmaSonucPanel { background:#101820; color:#e5f0fa; border:1px solid #34465a; border-radius:11px; padding:12px; margin:20px 0; box-sizing:border-box; isolation:isolate; }
#yanilmaSonucPanel .sonuc-baslik { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
#yanilmaSonucPanel .sonuc-baslik strong { color:#71e6a2; font-size:16px; }
#yanilmaSonucPanel button { background:#253647; border:1px solid #62778d; border-radius:5px; padding:7px 12px; color:white; cursor:pointer; font-size:12px; }
#yanilmaSonucPanel .sonuc-sahne { position:relative; height:420px; border:1px solid #2c4054; border-radius:8px; overflow:hidden; }
#yanilmaSonucCanvas { display:block; width:100%; height:100%; background:#101820; cursor:grab; touch-action:none; }
#yanilmaSonucKatman { position:absolute; right:9px; bottom:9px; max-height:70%; overflow:auto; min-width:170px; padding:9px 10px; border:1px solid #475569; border-radius:5px; background:rgba(20,29,41,.95); font-size:12px; z-index:1; }
#yanilmaSonucKatman strong { display:block; margin-bottom:6px; }
#yanilmaSonucPanel .sonuc-katman-satir { display:flex; align-items:center; gap:7px; font-size:11px; color:#e2e8f0; margin:6px 0; line-height:1.3; cursor:pointer; }
#yanilmaSonucPanel .sonuc-katman-satir input { width:14px; height:14px; margin:0; flex-shrink:0; }
#yanilmaSonucNokta:not([hidden]) { position:absolute; bottom:8px; left:8px; max-width:55%; padding:7px 9px; border-radius:5px; background:rgba(15,23,42,.95); color:white; font-size:12px; pointer-events:none; }
#yanilmaSonucPanel:fullscreen { border:0; border-radius:0; margin:0; display:flex; flex-direction:column; height:100dvh; padding:14px; }
#yanilmaSonucPanel:fullscreen .sonuc-sahne { flex:1; min-height:0; }
@media(max-width:520px){#yanilmaSonucPanel .sonuc-sahne{height:350px;}#yanilmaSonucKatman{min-width:130px;}}
/* V1.1 - dogrulanmis geometri ihlallerini panel altinda listele */
#yanilmaSonucIhlaller[hidden] { display:none !important; }
#yanilmaSonucIhlaller { margin-top:12px; padding:12px 15px; border:1px solid #a36846; border-radius:6px; background:#fff3df; color:#854d0e; font-size:13px; line-height:1.55; }
#yanilmaSonucIhlaller strong { display:block; margin-bottom:6px; }
#yanilmaSonucIhlaller ul { margin:0; padding-left:19px; }
#yanilmaSonucIhlaller li { margin:3px 0; }
#yanilmaSonucPanel:fullscreen #yanilmaSonucIhlaller { max-height:115px; overflow:auto; flex-shrink:0; }

/* V1.2 - sol ust alan paneli; sag alttaki katman panelini etkilemez. */
#yanilmaSonucAlanlar { position:absolute; top:10px; left:10px; z-index:1; width:218px;
 max-width:calc(100% - 56px); background:rgba(20,29,41,.94); border:1px solid #475569;
 border-radius:6px; padding:9px 11px; box-sizing:border-box; color:#f1f5f9;
 font-size:12px; line-height:1.45; pointer-events:none; }
#yanilmaSonucAlanlar strong { display:block; margin:0 0 5px; font-size:12px; color:#dbeafe; }
#yanilmaSonucAlanlar .sonuc-alan-satir { display:flex; align-items:center; justify-content:space-between; gap:8px; margin:4px 0; }
#yanilmaSonucAlanlar .sonuc-alan-satir b { white-space:nowrap; font-variant-numeric:tabular-nums; }
#yanilmaSonucAlanlar .sonuc-alan-ic { color:#60c5ff; }
#yanilmaSonucAlanlar .sonuc-alan-dis { color:#64faaa; }
#yanilmaSonucAlanlar small { display:block; font-size:10px; color:#fbbf24; margin-bottom:3px; }
@media(max-width:520px){#yanilmaSonucAlanlar{top:7px;left:7px;width:190px;font-size:11px;padding:7px 8px;}}

/* V1.3 — Köşe karşılaştırması ve ihlal bilgisi */
#yanilmaSonucKoseDetay[hidden],#yanilmaSonucKoseIpucu[hidden]{display:none!important;}
#yanilmaSonucKoseDetay{position:absolute;left:10px;bottom:10px;z-index:3;background:rgba(19,31,45,.98);border:1px solid #64748b;border-radius:7px;padding:10px;color:#f1f5f9;font-size:12px;width:min(490px,calc(100% - 22px));max-height:58%;overflow:auto;box-sizing:border-box;box-shadow:0 5px 18px rgba(0,0,0,.35);}
#yanilmaSonucKoseDetay .sonuc-kose-baslik{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;color:#71e6a2;}
#yanilmaSonucPanel .sonuc-kose-kapat{border:0;background:transparent;padding:0 5px;font-size:19px;color:white;}
#yanilmaSonucKoseDetay .sonuc-koordinat-tablosu{width:100%;font-size:11px;border-collapse:collapse;}
#yanilmaSonucKoseDetay th,#yanilmaSonucKoseDetay td{padding:5px;border-bottom:1px solid #35495a;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;}
#yanilmaSonucKoseDetay th:first-child,#yanilmaSonucKoseDetay td:first-child{text-align:left;}
#yanilmaSonucKoseDetay .sonuc-kose-durum{margin-top:8px;padding:8px;border-radius:5px;line-height:1.45;}
#yanilmaSonucKoseDetay .sonuc-kose-durum p{margin:3px 0;}
#yanilmaSonucKoseDetay .sonuc-kose-durum.hata{background:#381f27;color:#fecaca;}
#yanilmaSonucKoseDetay .sonuc-kose-durum.temiz{background:#153c2f;color:#86efac;}
#yanilmaSonucKoseDetay .sonuc-kose-durum.bilinmiyor{background:#423519;color:#fde68a;}
#yanilmaSonucKoseIpucu{position:absolute;left:10px;bottom:10px;z-index:2;padding:6px 9px;background:#172433;color:white;border:1px solid #52677b;border-radius:5px;font-size:11px;pointer-events:none;}
#yanilmaSonucAlanlar .sonuc-alan-tapu{color:#fff;}
#yanilmaSonucAlanlar .sonuc-tecviz-durum{border-top:1px solid #475569;margin-top:7px;padding-top:7px;font-size:11px;line-height:1.4;}
#yanilmaSonucAlanlar .sonuc-tecviz-durum.icinde{color:#86efac;}
#yanilmaSonucAlanlar .sonuc-tecviz-durum.disinda{color:#fca5a5;}
#yanilmaSonucAlanlar .sonuc-tecviz-durum.bilinmiyor{color:#fde68a;}
@media(max-width:600px){#yanilmaSonucKoseDetay{width:calc(100% - 20px);max-height:52%;font-size:11px;}#yanilmaSonucKoseDetay .sonuc-koordinat-tablosu{font-size:10px;}}
/* =========================== BÖLÜM 03 SONU =========================== */
