/* Vardan tesis paneli. Görsel dil vardan.tech ile aynı: koyu zemin, petrol mavisi ışık, General Sans.
   Kural: yazı en az 16 px, dokunma hedefi en az 48 px, kart ızgarası yok (gruplar 1 px çizgiyle ayrılır), renk yalnız durum için.
   Rakamlar "Vardan Rakam" yüzlerinden gelir: General Sans'ın rakamlarından türetilmiş sabit genişlikli yüzler (canlı sayılar kaymaz). */
@font-face{font-family:"General Sans";src:url("yazi/GeneralSans-Variable.woff2") format("woff2");font-weight:200 700;font-display:swap}
@font-face{font-family:"Vardan Rakam";src:url("yazi/rakam-400.woff2") format("woff2");font-weight:200 449;font-display:swap;unicode-range:U+30-39}
@font-face{font-family:"Vardan Rakam";src:url("yazi/rakam-500.woff2") format("woff2");font-weight:450 549;font-display:swap;unicode-range:U+30-39}
@font-face{font-family:"Vardan Rakam";src:url("yazi/rakam-600.woff2") format("woff2");font-weight:550 700;font-display:swap;unicode-range:U+30-39}

:root{
  color-scheme:dark;
  --zemin:#05090C;--yuzey:#0A161D;--yuzey-2:#0F2029;--cizgi:rgba(234,242,244,.11);--cizgi-2:rgba(234,242,244,.22);
  --yazi:#EAF2F4;--gri:#9AABB2;--isik:#45B7CF;--isik-zemin:rgba(69,183,207,.14);--yesil:#7CF2B0;--sari:#F2B84B;--kirmizi:#FF7A6B;
  --d-calis:#7CF2B0;--d-uyari:#F2B84B;--d-bekle:#8297A0;--d-planli:#45B7CF;--d-ariza:#FF7A6B;--d-kapali:#40525A;
  --gunes:#F2B84B;--sebeke:#45B7CF;--granul:#45B7CF;--balya:#8297A0;--ana-yazi:#04141A;
  --golge:rgba(0,0,0,.5);
  --yazi-tipi:"Vardan Rakam","General Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --kenar:clamp(16px,3vw,32px);--ust-boy:60px;--alt-boy:60px;--yan-gen:236px;--yaricap:6px;
}
:root[data-tema="acik"]{
  color-scheme:light;
  --zemin:#F3F6F7;--yuzey:#FFFFFF;--yuzey-2:#E6EDF0;--cizgi:rgba(11,20,24,.12);--cizgi-2:rgba(11,20,24,.26);
  --yazi:#0B1418;--gri:#45565D;--isik:#146C86;--isik-zemin:rgba(20,108,134,.1);--yesil:#0F7A47;--sari:#8A5600;--kirmizi:#B3261E;
  --d-calis:#1A9A5C;--d-uyari:#C27F00;--d-bekle:#71838A;--d-planli:#146C86;--d-ariza:#D2392A;--d-kapali:#B9C5CA;
  --gunes:#D09018;--sebeke:#146C86;--granul:#146C86;--balya:#8C9DA4;--ana-yazi:#FFFFFF;--golge:rgba(11,20,24,.28);
}
@media (prefers-color-scheme:light){
  :root:not([data-tema="koyu"]){
    color-scheme:light;
    --zemin:#F3F6F7;--yuzey:#FFFFFF;--yuzey-2:#E6EDF0;--cizgi:rgba(11,20,24,.12);--cizgi-2:rgba(11,20,24,.26);
    --yazi:#0B1418;--gri:#45565D;--isik:#146C86;--isik-zemin:rgba(20,108,134,.1);--yesil:#0F7A47;--sari:#8A5600;--kirmizi:#B3261E;
    --d-calis:#1A9A5C;--d-uyari:#C27F00;--d-bekle:#71838A;--d-planli:#146C86;--d-ariza:#D2392A;--d-kapali:#B9C5CA;
    --gunes:#D09018;--sebeke:#146C86;--granul:#146C86;--balya:#8C9DA4;--ana-yazi:#FFFFFF;--golge:rgba(11,20,24,.28);
  }
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--ust-boy) + 16px)}
body{margin:0;background:var(--zemin);color:var(--yazi);font:400 16px/1.5 var(--yazi-tipi);-webkit-font-smoothing:antialiased;word-spacing:.02em}
[hidden]{display:none!important}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-underline-offset:3px}
button{font:inherit;color:inherit}
p,li,dd,td{text-wrap:pretty}
:focus-visible{outline:2px solid var(--isik);outline-offset:2px;border-radius:4px}
.gizli{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.atla{position:absolute;left:8px;top:-80px;z-index:100;display:inline-flex;align-items:center;min-height:48px;padding:0 18px;border-radius:var(--yaricap);background:var(--isik);color:var(--ana-yazi);font-weight:600;text-decoration:none}
.atla:focus{top:8px}

/* ------------------------------------------------------------- kabuk */
.kabuk{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr}
.ust{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;min-height:calc(var(--ust-boy) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) var(--kenar) 0;background:var(--zemin);border-bottom:1px solid var(--cizgi)}
.marka{display:flex;align-items:center;gap:12px;min-height:48px;min-width:48px;text-decoration:none;color:var(--yazi)}
.marka .logo{display:block;height:22px;width:auto}
.marka .logo-simge{display:none;width:28px;height:28px}
.marka .urun{display:none;font-weight:500;color:var(--gri);padding-left:12px;border-left:1px solid var(--cizgi-2);white-space:nowrap}
.ust-saat,.ust .canli,.ust .dil,.ust .tema{display:none}
/* hesap: kullanıcı adı ve çıkış (sunucudan gelir; her genişlikte görünür, uzun ad kısalır, taşma olmaz) */
.hesap{display:flex;align-items:center;gap:12px;min-width:0;margin-left:auto}
.kullanici{min-width:0;max-width:14ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gri);font-weight:500}
.cikis-form{display:flex;margin:0;flex:none}
.cikis{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:48px;padding:0 16px;border:1px solid var(--cizgi-2);border-radius:99px;background:none;color:var(--yazi);font-weight:600;cursor:pointer;white-space:nowrap}
.cikis:hover{border-color:var(--isik)}
.ust-saat{align-items:baseline;gap:8px;color:var(--gri);white-space:nowrap}
.ust-saat time{color:var(--yazi);font-weight:500}
.ust .canli{align-items:center;gap:8px;min-height:48px;padding:0 14px;border:1px solid var(--cizgi-2);border-radius:99px;background:none;cursor:pointer;font-weight:500;white-space:nowrap}
.canli .nokta{width:9px;height:9px;border-radius:50%;background:var(--d-calis)}
.canli[aria-pressed="true"] .nokta{background:var(--d-bekle)}
.ust .dil{align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:0 12px;border:1px solid var(--cizgi-2);border-radius:99px;text-decoration:none;font-weight:600;letter-spacing:.06em}
.ust .tema{align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--cizgi-2);border-radius:50%;background:none;cursor:pointer}
.tema svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.ust .dil:hover{color:var(--yazi)}
@media (max-width:399px){.marka .logo{display:none}.marka .logo-simge{display:block}}

.yan{display:none}
main{min-width:0;padding:22px var(--kenar) calc(var(--alt-boy) + 36px + env(safe-area-inset-bottom,0px))}
main:focus{outline:none}
.alt-menu{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--zemin);border-top:1px solid var(--cizgi)}
.alt-menu a,.alt-menu button{position:relative;display:flex;align-items:center;justify-content:center;min-height:var(--alt-boy);padding:0 2px;border:0;background:none;color:var(--gri);font-size:16px;font-weight:500;text-decoration:none;cursor:pointer;white-space:nowrap}
.alt-menu [aria-current]{color:var(--yazi)}
@media (max-width:359px){.alt-menu a,.alt-menu button{font-size:15px;letter-spacing:-.01em;padding:0}}
.alt-menu [aria-current]::before{content:"";position:absolute;top:-1px;left:20%;right:20%;height:3px;border-radius:0 0 3px 3px;background:var(--isik)}

@media (min-width:1024px){
  .kabuk{grid-template-columns:var(--yan-gen) minmax(0,1fr)}
  .ust{grid-column:1/-1;gap:14px}
  .marka .urun{display:inline}
  .ust-saat,.ust .canli,.ust .dil,.ust .tema{display:inline-flex}
  .ust-saat{margin-left:auto}
  .hesap{margin-left:6px}
  .kullanici{max-width:18ch}
  .yan{display:flex;flex-direction:column;gap:2px;position:sticky;top:var(--ust-boy);height:calc(100dvh - var(--ust-boy));overflow:auto;padding:18px 14px 20px;border-right:1px solid var(--cizgi)}
  .yan a[data-ic]{display:flex;align-items:center;min-height:48px;padding:0 14px;border-radius:var(--yaricap);color:var(--gri);font-weight:500;text-decoration:none}
  .yan a[data-ic]:hover{color:var(--yazi);background:var(--yuzey)}
  .yan a[aria-current]{color:var(--yazi);background:var(--yuzey-2);box-shadow:inset 3px 0 0 var(--isik)}
  .yan-site{display:inline-flex;align-items:center;min-height:48px;margin-top:auto;padding:0 14px;border-top:1px solid var(--cizgi);color:var(--gri)}
  main{padding:26px 32px 48px}
  .alt-menu{display:none}
}
.alt-not{margin-top:40px;padding-top:16px;border-top:1px solid var(--cizgi);color:var(--gri)}

/* ------------------------------------------------------------- ekran başlığı ve ortak öğeler */
.ekran-bas{display:grid;gap:6px;margin-bottom:20px}
.ekran-bas h1{font-size:clamp(1.625rem,3.4vw,2rem);font-weight:600;letter-spacing:-.02em;line-height:1.15}
.ekran-bas h1:focus{outline:none}
.ekran-alt{color:var(--gri);min-height:3em}
.ekran-alt span{display:block}
@media (min-width:460px){.ekran-alt{min-height:1.5em}.ekran-alt span{display:inline}.ekran-alt span+span::before{content:" \00b7\20 "}}
.hazirlik{color:var(--gri);padding:24px 0}
.ekran{min-height:60vh}
.ekran[aria-busy="true"]~.alt-not{display:none}
.ekran[aria-busy="false"] .hazirlik{display:none}
.bolum{margin-top:34px}
.bolum:first-child{margin-top:0}
.bolum-bas{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 18px;margin-bottom:14px}
.bolum-bas h2,.bolum h2{font-size:1.1875rem;font-weight:600;letter-spacing:-.01em;line-height:1.3}
.bolum-bas p,.not{color:var(--gri)}
.not{margin-top:12px;max-width:72ch}
.not b,.not strong{color:var(--yazi);font-weight:600}
.iki{display:grid;gap:34px;grid-template-columns:minmax(0,1fr)}
@media (min-width:1180px){.iki{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:44px}.iki.esit{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.iki>.bolum{margin-top:0}
.ekran>.iki,.ekran>.bolum+.iki,.ekran>a+.bolum+.iki{margin-top:36px}
.s,.sag{text-align:right}
.say{font-weight:500;white-space:nowrap}
.gri{color:var(--gri)}
.uyari-yazi{color:var(--sari)}
.ariza-yazi{color:var(--kirmizi)}
.iyi-yazi{color:var(--yesil)}
.bag{color:var(--isik);font-weight:600}
.bag:hover{text-decoration:underline}

/* göstergeler (kart değil: tek çizgi ızgarası, hücreler zeminle ayrılır) */
/* ızgara çizgileri hücre gölgesiyle (boş hücre zeminle aynı kalır); son satırın ve son sütunun gölgesi kap dışında kırpılır */
.kpi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border-block:1px solid var(--cizgi);overflow:hidden}
.kpi>div{padding:14px 14px 14px 0;min-width:0;box-shadow:1px 0 0 var(--cizgi),0 1px 0 var(--cizgi)}
.kpi>div:nth-child(even){padding-left:14px}
.kpi dt{color:var(--gri);line-height:1.35}
.kpi dd{margin:4px 0 0;font-size:clamp(1.5rem,5.4vw,1.875rem);font-weight:600;letter-spacing:-.01em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi dd small{font-size:16px;font-weight:500;color:var(--gri);letter-spacing:0;margin-left:5px}
.kpi dd.ek{display:block;margin-top:4px;color:var(--gri);font-size:16px;font-weight:400;letter-spacing:0;line-height:1.35;white-space:normal;overflow:visible}
@media (min-width:760px){.kpi{grid-template-columns:repeat(3,minmax(0,1fr))}.kpi>div,.kpi>div:nth-child(even){padding:14px 16px}}
@media (min-width:1280px){.kpi.alti{grid-template-columns:repeat(6,minmax(0,1fr))}.kpi.dort{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi.bes{grid-template-columns:repeat(5,minmax(0,1fr))}}
.kpi [data-d="4"],.kpi .ariza-yazi{color:var(--kirmizi)}

/* durum ışığı */
.nokta{display:inline-block;flex:none;width:10px;height:10px;border-radius:50%;background:var(--d-calis);vertical-align:middle}
.nokta[data-d="1"]{background:var(--d-uyari)}
.nokta[data-d="2"]{background:transparent;box-shadow:inset 0 0 0 2px var(--d-bekle)}
.nokta[data-d="3"]{background:transparent;box-shadow:inset 0 0 0 2px var(--d-planli)}
.nokta[data-d="4"],.nokta[data-d="5"]{background:var(--d-ariza)}
.nokta[data-d="6"]{background:var(--d-kapali)}
.durum{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.durum[data-d="1"] .durum-ad{color:var(--sari)}
.durum[data-d="4"] .durum-ad,.durum[data-d="5"] .durum-ad{color:var(--kirmizi)}
.lejant{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--gri)}
.lejant span{display:inline-flex;align-items:center;gap:8px}
.lejant .nokta{animation:none!important}
@media (prefers-reduced-motion:no-preference){
  .nokta[data-d="4"]{animation:yanip 1.6s ease-in-out infinite}
  .canli[aria-pressed="false"] .nokta{animation:nefes 2.4s ease-in-out infinite}
}
@keyframes yanip{50%{opacity:.3}}
@keyframes nefes{50%{opacity:.4}}

/* doluluk çubuğu */
.cubuk{display:block;height:6px;border-radius:3px;background:var(--cizgi);overflow:hidden}
.cubuk i{display:block;height:100%;width:0;border-radius:3px;background:var(--isik);transition:width .6s cubic-bezier(.2,.7,.2,1)}
.cubuk.sari i{background:var(--gunes)}
.cubuk.uyar i{background:var(--d-uyari)}

/* ------------------------------------------------------------- tesis akış şeması */
.akis{position:relative}
.akis-cizim{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.akis-cizim path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.akis-cizim .hat{stroke:var(--cizgi-2);stroke-width:2}
.akis-cizim .hat.bos{stroke-dasharray:4 6}
.akis-cizim .akan{stroke:var(--isik);stroke-width:2;stroke-dasharray:6 14;opacity:.9}
.akis-cizim .ok{fill:var(--cizgi-2);stroke:none}
@media (prefers-reduced-motion:no-preference){.akis-cizim .akan{animation:ak 1.2s linear infinite}}
@keyframes ak{to{stroke-dashoffset:-20}}
.akis ol{position:relative;display:grid;gap:30px 40px;grid-template-columns:minmax(0,1fr)}
.istasyon{position:relative;z-index:1;min-width:0}
.istasyon>a{display:grid;align-content:start;gap:6px;height:100%;min-height:48px;padding:12px 14px 13px;border:1px solid var(--cizgi-2);border-radius:var(--yaricap);background:var(--yuzey);color:var(--yazi);text-decoration:none;transition:border-color .2s}
.istasyon>a:hover{border-color:var(--isik)}
.istasyon[data-d="4"]>a,.istasyon[data-d="5"]>a{border-color:var(--d-ariza)}
.istasyon[data-d="1"]>a{border-color:var(--d-uyari)}
.ist-bas{display:flex;align-items:center;gap:9px;font-weight:600;line-height:1.3;min-width:0}
.ist-bas{align-items:flex-start}.ist-bas .nokta,.ist-bas .noktalar{margin-top:6px}
.ist-bas .ad{min-width:0}
.ist-bas .noktalar{display:inline-flex;gap:4px}
.ist-durum{color:var(--gri)}
.ist-deger{display:flex;align-items:baseline;gap:6px;font-size:1.25rem;font-weight:600;line-height:1.2;white-space:nowrap}
.ist-deger small{font-size:16px;font-weight:500;color:var(--gri)}
.ist-olcu{color:var(--gri);line-height:1.35}
.ist-olcu b{color:var(--yazi);font-weight:500}
.yardimci{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:0 28px;margin-top:22px;border-top:1px solid var(--cizgi)}
.yardimci li{border-bottom:1px solid var(--cizgi)}
.yardimci a{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;min-height:52px;padding:6px 0;text-decoration:none}
.yardimci .ad{font-weight:500;white-space:nowrap}
.yardimci .deger{margin-left:auto;color:var(--gri);text-align:right}

/* ------------------------------------------------------------- olay listesi */
.olaylar li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 12px;padding:11px 0;border-bottom:1px solid var(--cizgi)}
.olaylar li:first-child{border-top:1px solid var(--cizgi)}
.olaylar time{color:var(--gri);white-space:nowrap}
.olaylar .tur{font-weight:600;white-space:nowrap}
.olaylar .metin{grid-column:1/-1}
.olaylar [data-tur="ariza"] .tur,.olaylar [data-tur="kisa"] .tur{color:var(--kirmizi)}
.olaylar [data-tur="uyari"] .tur{color:var(--sari)}
.olaylar [data-tur="planli"] .tur{color:var(--isik)}
.olaylar [data-tur="denetim"] .tur{color:var(--gri)}
.olaylar .ust-satir{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;grid-column:1/-1}
.olaylar .sure{color:var(--gri)}
.bos-durum{padding:14px 0;color:var(--gri);border-block:1px solid var(--cizgi)}

/* ------------------------------------------------------------- tablolar */
.tablo-kap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tablo{width:100%;border-collapse:collapse}
.tablo caption{text-align:left;color:var(--gri);padding:0 0 10px}
.tablo th,.tablo td{padding:10px 12px;border-bottom:1px solid var(--cizgi);text-align:left;vertical-align:middle}
.tablo th:first-child,.tablo td:first-child{padding-left:0}
.tablo th:last-child,.tablo td:last-child{padding-right:0}
.tablo thead th{color:var(--gri);font-weight:500;white-space:nowrap;border-bottom-color:var(--cizgi-2)}
.tablo .s{text-align:right;white-space:nowrap}
.tablo tbody th{font-weight:500}
.tablo tfoot th,.tablo tfoot td{font-weight:600;border-top:1px solid var(--cizgi-2);border-bottom:0}
.tablo tr.ara th{padding-top:18px;color:var(--gri);font-weight:600;border-bottom-color:var(--cizgi-2)}
.tablo tr.sec{background:var(--isik-zemin)}
.tablo.sar .s{white-space:normal}
.tablo-kap[tabindex]:focus-visible{outline-offset:4px}
.tablo .satir-bag{display:inline-flex;align-items:center;gap:10px;min-height:48px;font-weight:600;text-decoration:none}
.tablo .satir-bag:hover .ad{text-decoration:underline}
.tablo .kod{color:var(--gri);font-weight:500;white-space:nowrap}
.nw{white-space:nowrap}
.tablo .cubuk{margin-top:6px;max-width:220px}
@media (max-width:759px){
  .tablo.yigin thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .tablo.yigin,.tablo.yigin tbody,.tablo.yigin tfoot,.tablo.yigin tr,.tablo.yigin td,.tablo.yigin th{display:block}
  .tablo.yigin tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;padding:12px 0;border-bottom:1px solid var(--cizgi)}
  .tablo.yigin tbody tr:first-child{border-top:1px solid var(--cizgi-2)}
  .tablo.yigin td,.tablo.yigin th{padding:0;border:0;text-align:left;white-space:normal}
  .tablo.yigin [data-l]::before{content:attr(data-l);display:block;color:var(--gri);font-weight:400}
  .tablo.yigin .tam{grid-column:1/-1}
  .tablo.yigin tr.ara{display:block;padding:18px 0 8px;border-bottom:1px solid var(--cizgi-2)}
  .tablo.yigin.dort tr{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 10px}
  .tablo.yigin.dort .satir-bag{min-height:48px}
  .tablo.yigin tfoot tr{border-top:1px solid var(--cizgi-2)}
  .tablo.yigin .satir-bag{min-height:48px}
}

/* ------------------------------------------------------------- seçim ve düğmeler */
.secim{display:flex;flex-wrap:wrap;gap:8px}
.secim button{min-height:48px;padding:0 16px;border:1px solid var(--cizgi-2);border-radius:var(--yaricap);background:transparent;color:var(--gri);font-weight:500;cursor:pointer;white-space:nowrap}
.secim button:hover{color:var(--yazi)}
.secim button[aria-pressed="true"]{color:var(--yazi);background:var(--yuzey-2);border-color:var(--isik)}
.secim-satir{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-bottom:16px}
.secim-satir .etiket{color:var(--gri)}
.dugme{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 24px;border:1px solid transparent;border-radius:99px;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s}
.dugme.ana{background:var(--isik);color:var(--ana-yazi)}
.dugme.ana:hover{filter:brightness(1.08)}
.dugme.ikinci{border-color:var(--cizgi-2);background:transparent;color:var(--yazi)}
.dugme.ikinci:hover{border-color:var(--isik)}
.dugme:active{transform:translateY(1px)}
.ince{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 16px;border:1px solid var(--cizgi-2);border-radius:var(--yaricap);background:transparent;color:var(--yazi);font-weight:500;text-decoration:none;cursor:pointer;white-space:nowrap}
.ince:hover{border-color:var(--isik)}
.daha{margin-top:14px}
.geri-bag{display:inline-flex;align-items:center;gap:8px;min-height:48px;margin:-8px 0 8px;color:var(--isik);font-weight:600;text-decoration:none}
.geri-bag:hover{text-decoration:underline}

/* ------------------------------------------------------------- grafikler (çizim SVG, yazılar HTML) */
.grafik{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px}
.grafik .y{position:relative;width:52px;color:var(--gri)}
.grafik .y span{position:absolute;right:0;transform:translateY(-50%);white-space:nowrap;line-height:1}
.grafik .cizim{position:relative;height:220px;border-bottom:1px solid var(--cizgi-2)}
.grafik .cizim svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.grafik .cizim .izgara{stroke:var(--cizgi);stroke-width:1;vector-effect:non-scaling-stroke}
.grafik .cizim .esik{stroke:var(--sari);stroke-width:1.5;stroke-dasharray:5 5;vector-effect:non-scaling-stroke;fill:none}
.grafik .cizim .simdi{stroke:var(--gri);stroke-width:1;stroke-dasharray:2 4;vector-effect:non-scaling-stroke}
.grafik .cizim .cizgi{fill:none;stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.grafik .x{grid-column:2;position:relative;height:28px;color:var(--gri)}
.grafik .x span{position:absolute;top:6px;transform:translateX(-50%);white-space:nowrap;line-height:1}
.grafik .x span:first-child{transform:none}
.grafik .x span:last-child{transform:translateX(-100%)}
.grafik .bant-ad{position:absolute;top:6px;color:var(--gri);white-space:nowrap;line-height:1.2;transform:translateX(-50%)}
.grafik .dilim-0{fill:transparent}.grafik .dilim-1{fill:var(--isik-zemin)}.grafik .dilim-2{fill:rgba(130,151,160,.08)}
.grafik .alan-g{fill:var(--gunes);opacity:.6}.grafik .alan-e{fill:var(--sebeke);opacity:.32}.grafik .cz-g{stroke:var(--gunes)}.grafik .cz-e{stroke:var(--sebeke)}
.cubuk-grafik{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px}
.cubuk-grafik .y{position:relative;width:52px;color:var(--gri)}
.cubuk-grafik .y span{position:absolute;right:0;transform:translateY(-50%);line-height:1;white-space:nowrap}
.cubuklar{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:end;gap:3px;height:200px;border-bottom:1px solid var(--cizgi-2);background:linear-gradient(var(--cizgi),var(--cizgi)) 0 0/100% 1px no-repeat,linear-gradient(var(--cizgi),var(--cizgi)) 0 50%/100% 1px no-repeat}
.cubuklar .s{display:flex;align-items:flex-end;justify-content:center;gap:2px;height:100%;min-width:0}
.cubuklar .s i{display:block;flex:1 1 0;max-width:22px;border-radius:2px 2px 0 0;background:var(--granul);min-height:0}
.cubuklar .s i.b{background:var(--balya)}
.cubuklar .s .yigin{display:flex;flex-direction:column-reverse;flex:1 1 0;max-width:34px;height:100%;justify-content:flex-start}
.cubuklar .s .yigin i{flex:none;max-width:none;border-radius:0}
.cubuklar .s .yigin i.g{background:var(--gunes)}
.cubuklar .s .yigin i.e{background:var(--sebeke)}
.cubuklar .s .yigin i:last-child{border-radius:2px 2px 0 0}
.cubuk-x{grid-column:2;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:3px;color:var(--gri);padding-top:6px}
.cubuk-x span{text-align:center;white-space:nowrap;overflow:visible;min-width:0}
.cubuk-x span:first-child{text-align:left}.cubuk-x span:last-child{text-align:right}
.cubuk-grafik{overflow:hidden;padding-top:12px}
.lejant i{display:inline-block;width:14px;height:10px;border-radius:2px}
.lejant i.gunes{background:var(--gunes)}.lejant i.sebeke{background:var(--sebeke)}.lejant i.granul{background:var(--granul)}.lejant i.balya{background:var(--balya)}
.lejant i.esik{height:0;border-top:2px dashed var(--sari);border-radius:0}
.lejant i.bant-p{background:var(--isik-zemin);outline:1px solid var(--cizgi-2)}.lejant i.bant-g{background:rgba(130,151,160,.16);outline:1px solid var(--cizgi-2)}
details.veri{margin-top:12px}
details.veri summary{display:inline-flex;align-items:center;min-height:48px;color:var(--isik);font-weight:600;cursor:pointer}
details.veri summary::marker{content:""}
details.veri summary::before{content:"+";display:inline-block;width:1.2em;font-weight:600}
details.veri[open] summary::before{content:"\2212"}
.kivilcim{position:relative;height:120px;border-bottom:1px solid var(--cizgi-2)}
.kivilcim svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.kivilcim .cizgi{fill:none;stroke:var(--isik);stroke-width:2;vector-effect:non-scaling-stroke;stroke-linejoin:round}
.kivilcim .alan{fill:var(--isik-zemin)}
.kivilcim .esik{stroke:var(--sari);stroke-width:1.5;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}
.kivilcim-alt{display:flex;justify-content:space-between;gap:12px;color:var(--gri);padding-top:6px}

/* denge çubuğu (güneş + şebeke = toplam) */
.denge{display:grid;gap:10px}
.denge-cubuk{display:flex;height:14px;border-radius:3px;overflow:hidden;background:var(--cizgi)}
.denge-cubuk i{display:block;height:100%}
.denge-cubuk i.g{background:var(--gunes)}.denge-cubuk i.e{background:var(--sebeke)}
.denge-satir{display:flex;flex-wrap:wrap;gap:6px 22px;color:var(--gri)}
.denge-satir b{color:var(--yazi);font-weight:600}

/* kırılım çubuğu (maliyet, fire) */
.kirilim{display:flex;height:14px;border-radius:3px;overflow:hidden;background:var(--cizgi);margin:6px 0 4px}
.kirilim i{display:block;height:100%;border-right:2px solid var(--zemin)}
.kirilim i:last-child{border-right:0}
.k0{background:var(--isik)}.k1{background:#7FA7B5}.k2{background:var(--gunes)}.k3{background:#A98FD0}.k4{background:#5E8F7B}.k5{background:#C9786B}
:root[data-tema="acik"] .k1{background:#5D8796}:root[data-tema="acik"] .k3{background:#7B62A8}:root[data-tema="acik"] .k4{background:#3F7A62}:root[data-tema="acik"] .k5{background:#B0584A}
.renk{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:8px;vertical-align:-1px}

/* ------------------------------------------------------------- makine ayrıntısı */
.makine-bas{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-bottom:6px}
.makine-bas .durum{font-size:1.125rem;font-weight:600}
.makine-bas .durum .nokta{width:12px;height:12px}
.makine-kim{display:flex;flex-wrap:wrap;gap:4px 18px;color:var(--gri);margin-bottom:22px}
.makine-kim b{color:var(--yazi);font-weight:500}
.olcuMetin{color:var(--gri)}
.gostergeler{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border-block:1px solid var(--cizgi);overflow:hidden}
.gostergeler>div{padding:14px 14px 14px 0;min-width:0;box-shadow:1px 0 0 var(--cizgi),0 1px 0 var(--cizgi)}
.gostergeler>div:nth-child(even){padding-left:14px}
.gostergeler dt{color:var(--gri)}
.gostergeler dd{margin:4px 0 0;font-size:1.5rem;font-weight:600;line-height:1.2;white-space:nowrap}
.gostergeler dd small{font-size:16px;font-weight:500;color:var(--gri);margin-left:4px}
.gostergeler .sinir{display:block;color:var(--gri);font-size:16px;font-weight:400}
@media (min-width:760px){.gostergeler{grid-template-columns:repeat(3,minmax(0,1fr))}.gostergeler>div,.gostergeler>div:nth-child(even){padding:14px 16px}}
.bolge{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 16px;margin-top:10px}
.bolge div{display:grid;gap:2px}
.bolge span{color:var(--gri)}
.bolge b{font-weight:600}
@media (min-width:760px){.bolge{grid-template-columns:repeat(6,minmax(0,1fr))}}
.ozellik{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.ozellik>div{display:grid;grid-template-columns:minmax(0,13em) minmax(0,1fr);gap:4px 16px;padding:10px 0;border-bottom:1px solid var(--cizgi)}
.ozellik>div:first-child{border-top:1px solid var(--cizgi)}
.ozellik dt{color:var(--gri)}
.ozellik dd{font-weight:500}
@media (max-width:519px){.ozellik>div{grid-template-columns:minmax(0,1fr)}}

/* ------------------------------------------------------------- stok blokları (ERP) */
.stoklar{display:grid;grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid var(--cizgi)}
.stoklar>section{padding:16px 0 18px;border-bottom:1px solid var(--cizgi);min-width:0}
@media (min-width:900px){.stoklar{grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--cizgi)}.stoklar>section{padding:16px 22px 18px;border-bottom:0;border-left:1px solid var(--cizgi)}.stoklar>section:first-child{padding-left:0;border-left:0}}
.stoklar h3{font-size:16px;font-weight:500;color:var(--gri)}
.stoklar .buyuk{display:block;margin-top:4px;font-size:clamp(1.75rem,4vw,2.125rem);font-weight:600;line-height:1.15;white-space:nowrap}
.stoklar .buyuk small{font-size:16px;font-weight:500;color:var(--gri);margin-left:5px}
.stoklar .cubuk{margin:10px 0 8px}
.stoklar dl{display:grid;gap:4px}
.stoklar dl div{display:flex;justify-content:space-between;gap:12px}
.stoklar dt{color:var(--gri)}
.stoklar dd{font-weight:500;text-align:right}
.sinif{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:26px;padding:0 6px;border-radius:4px;border:1px solid var(--cizgi-2);font-weight:600}
.denklem{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;font-size:clamp(1.125rem,3vw,1.5rem);font-weight:600;line-height:1.25}
.denklem span{padding:9px 16px;border-radius:var(--yaricap);border:1px solid var(--cizgi-2);background:var(--yuzey)}
.denklem .e{border-color:var(--sebeke);color:var(--yazi)}
.denklem .f{border-color:var(--d-uyari)}
.denklem .c{border-color:var(--d-calis)}
.denklem i{font-style:normal;color:var(--gri)}
.kaynak{margin-top:14px;padding-left:14px;border-left:2px solid var(--d-uyari);color:var(--gri);max-width:80ch}
.kaynak a{color:var(--yazi);font-weight:500}
.sayaclar{display:grid;gap:0;border-top:1px solid var(--cizgi)}
.sayaclar>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;padding:14px 0;border-bottom:1px solid var(--cizgi)}
.sayaclar .cubuk{grid-column:1/-1}
.sayaclar .ad{font-weight:600}
.sayaclar .ek{grid-column:1/-1;color:var(--gri)}
.raporlar>li{display:grid;grid-template-columns:minmax(0,1fr);gap:10px 24px;padding:18px 0;border-bottom:1px solid var(--cizgi)}
.raporlar>li:first-child{border-top:1px solid var(--cizgi)}
.raporlar h3{font-size:1.0625rem;font-weight:600}
.raporlar p{color:var(--gri)}
.raporlar .eylem{display:flex;flex-wrap:wrap;gap:8px}
@media (min-width:1000px){.raporlar>li{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center}}
.indirilen{margin-top:10px;color:var(--gri)}
.indirilen li{padding:8px 0;border-bottom:1px solid var(--cizgi);word-break:break-all}

/* ------------------------------------------------------------- iletişim kutuları */
dialog{max-width:none;max-height:none;border:0;padding:0;background:transparent;color:var(--yazi)}
dialog::backdrop{background:rgba(2,6,8,.7)}
.kapat{justify-self:start;min-height:48px;padding:0 20px;border:1px solid var(--cizgi-2);border-radius:99px;background:transparent;font-weight:600;cursor:pointer}
.sayfa{width:100%;max-width:100%;margin:auto 0 0}
.sayfa-ic{display:grid;gap:14px;max-height:88dvh;overflow:auto;padding:20px var(--kenar) calc(18px + env(safe-area-inset-bottom,0px));background:var(--yuzey);border-top:1px solid var(--cizgi-2);border-radius:12px 12px 0 0}
.sayfa-ic h2{font-size:1.125rem}
.sayfa-menu li{border-bottom:1px solid var(--cizgi)}
.sayfa-menu a{display:grid;gap:2px;min-height:56px;padding:10px 0;text-decoration:none;font-weight:600}
.sayfa-menu a span{color:var(--gri);font-weight:400}
.sayfa-menu a[aria-current]{color:var(--isik)}
.sayfa-ayar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.sayfa-ayar>:first-child{grid-column:1/-1}
.sayfa-ayar .ikinci{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 12px;border:1px solid var(--cizgi-2);border-radius:var(--yaricap);background:transparent;font-weight:500;text-decoration:none;cursor:pointer;text-align:center}
@media (min-width:1024px){.sayfa{width:min(480px,100%);margin:auto}.sayfa-ic{border-radius:var(--yaricap);border:1px solid var(--cizgi-2)}}

/* ------------------------------------------------------------- giriş ekranı */
.giris-sayfa .ust{position:static}
.giris-sayfa .ust .dil,.giris-sayfa .ust .tema{display:inline-flex}
.giris-sayfa .ust .dil{margin-left:auto}
@media (max-width:479px){.giris-sayfa .ust .tema{display:none}}
.giris{display:grid;gap:40px;max-width:1120px;margin:0 auto;padding:clamp(32px,7vw,88px) var(--kenar) 56px}
@media (min-width:960px){.giris{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:96px;align-items:center;min-height:calc(100dvh - var(--ust-boy) - 120px)}}
.giris-sol{display:grid;gap:20px;align-content:start}
.giris-ust{color:var(--isik);font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.giris h1{font-size:clamp(2.6rem,9vw,4.75rem);font-weight:500;line-height:1;letter-spacing:-.045em}
.giris-alt{color:var(--gri);font-size:clamp(1.125rem,3.2vw,1.375rem);line-height:1.45;max-width:30ch}
.giris-sag{display:grid;gap:22px;align-content:start;max-width:440px;width:100%}
.giris-sag h2{font-size:1.1875rem;font-weight:600;padding-top:20px;border-top:1px solid var(--cizgi-2)}
.giris-form{display:grid;gap:20px}
.alan{display:grid;gap:8px}
/* etiketin dokunma alanı 48 px (üstteki ve alttaki boşluğa taşar, yerleşimi değiştirmez; etikete dokunmak alana odaklanır) */
.alan label{color:var(--gri);font-weight:500;padding:16px 0 8px;margin:-16px 0 -8px}
.alan input{width:100%;min-height:52px;padding:0 14px;border:1px solid var(--cizgi-2);border-radius:var(--yaricap);background:var(--yuzey);color:var(--yazi);font:inherit;line-height:1.25}
.alan input:hover{border-color:var(--gri)}
.alan input:focus-visible{outline:2px solid var(--isik);outline-offset:2px;border-color:var(--isik)}
.sifre{position:relative}
.sifre input{padding-right:84px}
.sifre .goster{position:absolute;top:2px;right:2px;min-width:72px;min-height:48px;padding:0 12px;border:0;border-radius:var(--yaricap);background:none;color:var(--isik);font-weight:600;cursor:pointer}
.sifre .goster:hover{background:var(--isik-zemin)}
.giris-form .dugme{width:100%;margin-top:4px}
.giris-form .dugme[aria-disabled="true"]{opacity:.7;cursor:progress}
.mesaj{padding:2px 0 2px 14px;border-left:3px solid var(--isik);font-weight:500}
.mesaj.hata{border-left-color:var(--kirmizi)}
.giris-alt-bilgi{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;max-width:1120px;margin:0 auto;padding:22px var(--kenar) calc(28px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--cizgi);color:var(--gri)}
.giris-alt-bilgi a{display:inline-flex;align-items:center;min-height:48px;color:var(--gri)}
.yok-sayfa{grid-template-columns:minmax(0,1fr)!important}
.giris-eylem{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{
  .ust,.yan,.alt-menu,.atla,dialog,.secim,.daha,details.veri summary{display:none!important}
  body{background:#fff;color:#000}
  main{padding:0}
}
