/* Aydınlar Bakım Paneli: açık tema, logo renkleri (kırmızı #DB261B, koyu gri #4E4949, beyaz). Düzen
   arayuz_referansi/aydinlar-bakim.html'deki yönetici panelinden: logolu üst kısım, özet kutuları, başlıklı
   bölüm kartları ve rozetli durumlar. Yazı tipi Source Sans 3, kendi sunucumuzdan (statik/yazi/, OFL-1.1).
   Telefonda (dar ekran) tek sütun: açılır menü, kart biçiminde tablolar, ekrana sığan QR. Dış kaynak yok.
   Marka kırmızısı yalnızca vurgu içindir (üst çizgi, seçili menü); "Uygun Değil" ve arıza için ayrı,
   koyu bir durum kırmızısı (--kotu) kullanılır. Yazı/zemin okunurluğu en az 4,5:1
   (uygulama/panel/tests/test_gorunum.py). */
@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(yazi/source-sans-3-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:400;src:url(yazi/source-sans-3-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(yazi/source-sans-3-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:600;src:url(yazi/source-sans-3-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(yazi/source-sans-3-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Source Sans 3";font-style:normal;font-display:swap;font-weight:700;src:url(yazi/source-sans-3-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root {
  --marka-kirmizi: #DB261B;
  --marka-gri: #4E4949;
  --marka-gri-koyu: #3A3636;
  --zemin: #ffffff;
  --sayfa: #f3f2f2;
  --yazi: #231f1f;
  --soluk: #5c5656;
  --cizgi: #d8d3d3;
  --cizgi-acik: #e9e6e6;
  --baslik-zemin: #f8f7f7;
  --iyi: #17663a;
  --iyi-zemin: #e6f3eb;
  --kotu: #a3173f;
  --kotu-zemin: #fbe7ec;
  --bekle: #855000;
  --bekle-zemin: #fff3dc;
  --odak: #1d4ed8;
  color-scheme: light;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font: 17px/1.45 "Source Sans 3", "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: var(--yazi); background: var(--sayfa); }
a { color: var(--marka-gri); text-underline-offset: 3px; }
:focus-visible { outline: 3px solid var(--odak); outline-offset: 2px; }

/* Üst kısım: logo ve menü */
.ust { background: var(--zemin); border-top: 4px solid var(--marka-kirmizi); border-bottom: 1px solid var(--cizgi); padding: 8px 24px 0; }
.ust-satir { display: flex; align-items: center; gap: 14px; min-height: 52px; max-width: 1180px; margin: 0 auto; }
.kurum { display: flex; align-items: center; gap: 14px; font-weight: 700; color: var(--marka-gri); text-decoration: none; }
.kurum img { display: block; width: 150px; height: auto; }
.kurum-ad { padding-left: 14px; border-left: 1px solid var(--cizgi); font-size: 0.9em; letter-spacing: 0.06em; text-transform: uppercase; }
.menu-dugme { display: none; margin-left: auto; }
.ana-menu { display: flex; flex-wrap: wrap; align-items: center; gap: 2px; padding: 4px 0 0; max-width: 1180px; margin: 0 auto; }
.ana-menu a { color: var(--marka-gri); text-decoration: none; padding: 10px 12px; white-space: nowrap; font-weight: 600; }
.ana-menu a:hover { background: var(--baslik-zemin); }
.ana-menu a[aria-current="page"] { box-shadow: inset 0 -3px 0 var(--marka-kirmizi); color: var(--yazi); }
.menu-alt { margin-left: auto; display: flex; align-items: center; gap: 10px; padding-bottom: 4px; }
.menu-alt form { margin: 0; }
.kullanici { color: var(--soluk); }

main { padding: 24px; max-width: 1180px; margin: 0 auto; }
h1 { color: var(--yazi); font-size: 1.6em; line-height: 1.2; margin: 0.2em 0 0.7em; overflow-wrap: anywhere; }
h1 small { font-weight: 400; color: var(--soluk); font-size: 0.6em; }
h2 { color: var(--marka-gri); font-size: 1.25em; margin: 1.2em 0 0.6em; }
.kart { background: var(--zemin); border: 1px solid var(--cizgi); border-radius: 8px; padding: 16px 20px; margin-bottom: 20px; }
.kart > h2:first-child { margin-top: 0; }
.dar { max-width: 560px; }
label { display: block; margin: 10px 0; font-weight: 600; }
.satir-ici label { display: inline-block; margin-right: 12px; }
.satir-ici { display: inline; }
input, select { font: inherit; font-weight: 400; padding: 9px 11px; border: 1.5px solid #8f8888; border-radius: 6px; background: var(--zemin); color: var(--yazi); max-width: 100%; }
label input, label select { display: block; margin-top: 4px; min-width: 260px; }
button { font: inherit; font-weight: 700; min-height: 44px; padding: 8px 18px; border: 1.5px solid var(--marka-gri); background: var(--marka-gri); color: #fff; border-radius: 6px; cursor: pointer; }
button:hover { background: var(--marka-gri-koyu); }
button.ikincil { background: var(--zemin); color: var(--marka-gri); }
button.ikincil:hover { background: var(--baslik-zemin); }
button.tehlike { background: var(--zemin); color: var(--kotu); border-color: var(--kotu); }
button:disabled { opacity: 0.6; cursor: default; }
a.dugme { display: inline-flex; align-items: center; font-weight: 700; min-height: 44px; padding: 8px 18px; border: 1.5px solid var(--marka-gri); background: var(--zemin); color: var(--marka-gri); border-radius: 6px; text-decoration: none; }
a.dugme:hover { background: var(--baslik-zemin); }
.gun-sec { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; }
.gun-sec label { flex: 1 1 200px; }

/* Özet kutuları */
.kutular { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 20px; }
.kutu { background: var(--zemin); border: 1px solid var(--cizgi); border-radius: 8px; padding: 14px 18px; display: grid; gap: 2px; color: var(--yazi); text-decoration: none; }
.kutu-sayi { font-size: 2.2em; font-weight: 700; line-height: 1.1; font-variant-numeric: tabular-nums; }
.kutu-sayi small { font-size: 0.5em; font-weight: 600; color: var(--soluk); }
.kutu-ad { color: var(--soluk); }
.kutu.kotu .kutu-sayi { color: var(--kotu); }
.kutu.bekliyor .kutu-sayi { color: var(--bekle); }

/* Başlıklı bölüm (referanstaki "Tesislerin bugünkü durumu" kartı) */
.bolum { background: var(--zemin); border: 1px solid var(--cizgi); border-radius: 8px; margin-bottom: 20px; overflow: hidden; }
.bolum-bas { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; padding: 12px 18px; border-bottom: 1px solid var(--cizgi); }
.bolum-bas h2 { margin: 0; font-size: 0.95em; letter-spacing: 0.08em; text-transform: uppercase; color: var(--yazi); }
.bolum-bas span { color: var(--soluk); font-size: 0.95em; }
.bolum > table { margin: 0; border: 0; }
.bolum > table th:first-child, .bolum > table td:first-child { padding-left: 18px; }
.bolum > p { margin: 0; padding: 14px 18px; }
.rozet { display: inline-block; padding: 1px 10px; border-radius: 999px; font-weight: 700; font-size: 0.92em; white-space: nowrap; }
.rozet.iyi { background: var(--iyi-zemin); color: var(--iyi); }
.rozet.bekliyor { background: var(--bekle-zemin); color: var(--bekle); }
.rozet.kotu { background: var(--kotu-zemin); color: var(--kotu); }

/* Tablolar */
table { border-collapse: collapse; width: 100%; background: var(--zemin); margin-bottom: 24px; border: 1px solid var(--cizgi); }
th, td { border-bottom: 1px solid var(--cizgi-acik); padding: 10px 12px; text-align: left; vertical-align: top; overflow-wrap: break-word; }
th { background: var(--baslik-zemin); color: var(--soluk); font-size: 0.85em; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; border-bottom: 1px solid var(--cizgi); }
tbody tr:last-child td { border-bottom: 0; }

/* Durum renkleri (marka kırmızısı değil) */
.iyi { color: var(--iyi); font-weight: 600; }
.kotu { color: var(--kotu); font-weight: 600; }
.bekliyor { color: var(--bekle); font-weight: 600; }
.hata { color: var(--kotu); font-weight: 600; background: var(--kotu-zemin); border-left: 4px solid var(--kotu); padding: 10px 14px; border-radius: 6px; }
.tarayici-uyari { background: var(--kotu-zemin); border-left: 4px solid var(--kotu); padding: 12px 16px; border-radius: 6px; margin-bottom: 16px; }
.tarayici-uyari p { margin: 0 0 10px; }
.tarayici-uyari .baglanti { margin-top: 8px; word-break: break-all; user-select: all; }
.metin { white-space: pre-wrap; max-width: 360px; overflow-wrap: anywhere; }
.cihaz { margin-bottom: 6px; }
.suzgec a { margin-right: 12px; }
.suzgec a.secili { font-weight: 700; text-decoration: none; color: var(--yazi); }

/* QR: her genişlikte tam görünür, ekrana göre küçülür; beyaz çerçeve ve SVG içinde 4 modül boşluk */
.qr-kutu { background: #fff; padding: 12px; border: 1px solid var(--cizgi); border-radius: 8px; width: 100%; max-width: 360px; margin: 0 auto 12px; }
.qr-kutu svg.qr { display: block; width: 100%; height: auto; background: #fff; }
.baglanti { overflow-wrap: anywhere; font-family: ui-monospace, Consolas, monospace; font-size: 0.9em; background: var(--sayfa); padding: 8px; border-radius: 6px; }
.baglanti-ac summary { cursor: pointer; color: var(--marka-gri); }
.ad-duzelt summary { cursor: pointer; color: var(--marka-gri); font-size: 0.9em; margin-top: 0.25rem; }
.ad-duzelt form { margin-top: 0.5rem; }
.kisa-kod { font-family: ui-monospace, Consolas, monospace; font-size: 1.8em; font-weight: 700; letter-spacing: 0.08em; color: var(--yazi); text-align: center; overflow-wrap: anywhere; }

/* Formlar: aylık takvim (#26). Tablo yatay kayar, tesis sütunu yerinde kalır; renk yanında işaret de var. */
.ay-sec { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.ay-sec .gun-listesi { margin-left: auto; }
.takvim-aciklama { display: flex; flex-wrap: wrap; gap: 6px 18px; list-style: none; margin: 14px 0 0; padding: 0; }
.takvim-aciklama li { display: flex; align-items: center; gap: 6px; }
.takvim-kap { overflow-x: auto; }
table.takvim { width: auto; min-width: 100%; margin: 0; border: 0; }
table.takvim th, table.takvim td { padding: 3px 1px; text-align: center; vertical-align: middle; }
table.takvim th { letter-spacing: 0; text-transform: none; }
table.takvim .takvim-tesis { position: sticky; left: 0; z-index: 1; background: var(--zemin); text-align: left; min-width: 8em; max-width: 9em; padding-left: 12px; font-size: 0.85em; color: var(--yazi); border-right: 1px solid var(--cizgi); }
table.takvim thead .takvim-tesis { background: var(--baslik-zemin); color: var(--soluk); }
table.takvim .takvim-gun { font-size: 0.8em; }
table.takvim .takvim-gun small { font-weight: 400; }
table.takvim .takvim-sayi { padding: 3px 6px; font-variant-numeric: tabular-nums; }
.takvim-kutu { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 4px; font-size: 0.85em; font-weight: 700; text-decoration: none; border: 1px solid transparent; }
a.takvim-kutu:hover { outline: 2px solid var(--marka-gri); }
.takvim-kutu.zamaninda { background: var(--iyi-zemin); color: var(--iyi); border-color: var(--iyi); }
.takvim-kutu.gec { background: var(--bekle-zemin); color: var(--bekle); border-color: var(--bekle); }
.takvim-kutu.yok { background: var(--kotu-zemin); color: var(--kotu); border-color: var(--kotu); }
.takvim-kutu.bakim_degil { background: var(--zemin); color: var(--soluk); border-color: var(--cizgi); }
.takvim-kutu.takip_disi { background: var(--cizgi-acik); color: var(--soluk); }

/* Telefon ve dar ekran */
@media (max-width: 760px) {
  .ust { padding: 6px 14px 0; }
  .kurum img { width: 124px; }
  .kurum-ad { padding-left: 10px; font-size: 0.8em; }
  main { padding: 14px; }
  .js .menu-dugme { display: inline-block; }
  .js .ana-menu { display: none; }
  .js .ana-menu.acik { display: flex; }
  .ana-menu { flex-direction: column; align-items: stretch; gap: 0; border-top: 1px solid var(--cizgi); margin-top: 6px; }
  .ana-menu a { padding: 13px 8px; border-bottom: 1px solid var(--cizgi); }
  .ana-menu a[aria-current="page"] { box-shadow: inset 4px 0 0 var(--marka-kirmizi); }
  .menu-alt { margin: 8px 0 4px; justify-content: space-between; }
  .kart { padding: 12px 14px; }
  .kutular { gap: 8px; }
  .kutu { padding: 10px 12px; }
  .kutu-sayi { font-size: 1.8em; }
  .kutu-ad { font-size: 0.9em; line-height: 1.25; }
  label input, label select { min-width: 0; width: 100%; }
  .satir-ici label { display: block; margin-right: 0; }
  /* Tablolar kart biçiminde: her satır bir kart, her hücre başlığıyla birlikte */
  table.kartli, table.kartli thead, table.kartli tbody, table.kartli tr, table.kartli th, table.kartli td { display: block; width: 100%; }
  table.kartli { background: transparent; border: 0; }
  table.kartli thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  table.kartli tr { background: var(--zemin); border: 1px solid var(--cizgi); border-radius: 8px; margin-bottom: 12px; padding: 4px 0; }
  table.kartli td { border: 0; border-bottom: 1px solid var(--cizgi-acik); padding: 6px 12px; }
  table.kartli td:last-child { border-bottom: 0; }
  table.kartli td[data-baslik]:not([data-baslik=""])::before { content: attr(data-baslik); display: block; font-size: 0.85em; font-weight: 600; color: var(--soluk); }
  table.kartli td:empty { display: none; }
  /* Bölüm içindeki tablo: satırlar bölümün içinde alt alta, ayrı kart değil */
  .bolum > table.kartli tr { border: 0; border-bottom: 1px solid var(--cizgi); border-radius: 0; margin: 0; }
  .bolum > table.kartli tr:last-child { border-bottom: 0; }
  .bolum > table.kartli td:first-child { padding-left: 12px; }
  .metin { max-width: none; }
  .ariza-kapat input { width: 100%; margin-bottom: 6px; }
  table.takvim .takvim-tesis { min-width: 6.5em; max-width: 7.5em; font-size: 0.8em; padding-left: 8px; }
  .ay-sec .gun-listesi { margin-left: 0; }
}

/* Test sekmesi */
.test-uyari { background: var(--bekle-zemin); color: var(--bekle); border-left: 4px solid var(--bekle); padding: 10px 14px; border-radius: 6px; font-weight: 600; }
.periyot-dugmeleri { display: flex; flex-wrap: wrap; gap: 8px; }

/* Kayıt: yeni anahtar ve var olan (eşitlenen) anahtarla bağlama düğmeleri */
.kayit-dugmeleri { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; }
.kucuk { color: var(--soluk); font-size: 0.92em; }

/* Atölye bölümü (2026-10-30): aynı görünüm; yalnızca alt menü, gri rozet, çok satırlı metin ve malzeme tablosu */
.atolye-menu { display: flex; flex-wrap: wrap; gap: 4px 0; margin: -6px 0 18px; }
.rozet.gri { background: var(--cizgi-acik); color: var(--soluk); }
textarea { font: inherit; font-weight: 400; padding: 9px 11px; border: 1.5px solid #8f8888; border-radius: 6px; background: var(--zemin); color: var(--yazi); width: 100%; display: block; margin-top: 4px; }
table.malzeme td { padding: 4px 6px; }
table.malzeme input { width: 100%; min-width: 0; padding: 6px 8px; }
.fis-goruntu { max-width: 100%; height: auto; border: 1px solid var(--cizgi); border-radius: 6px; }
