@import url('nunito.css');  /* self-host — çevrimdışı çalışır (woff2'ler static/fonts/) */
/* grupas.ai — 5S Metodolojisi. Sol-sidebar düzeni; normas / Core Tools ile aynı aile.
   Palet ve bileşenler normas'tan devralındı; 5S'e özel renkler --s1..--s5. */
:root {
  --navy: #112740; --blue: #6096d5; --blue-d: #2b61a1; --blue-l: #89b1e0;
  --g-navy: #246195; --g-cyan: #059eda; --g-cyan-l: #3fb3ea; --g-light: #809cbc;
  --ink: #1b232d; --muted: #586a7e; --line: #d2dde9; --bg: #f1f6fb;
  --card: #ffffff; --pale: #edf3fa; --pale-line: #9dbfe5;
  --green: #2e9e6b; --amber: #d9922b; --red: #d1495b;
  --radius: 10px; --shadow: 0 1px 3px rgba(17,39,64,.06), 0 1px 2px rgba(17,39,64,.04);
  /* Beş adımın kimlik renkleri — her yerde AYNI kullanılır (nav, rozet, grafik) */
  --s1: #d1495b;  /* Seiri    — Ayıkla        */
  --s2: #d9922b;  /* Seiton   — Düzenle       */
  --s3: #2e9e6b;  /* Seiso    — Temizle       */
  --s4: #2b61a1;  /* Seiketsu — Standartlaştır*/
  --s5: #7a5cc4;  /* Shitsuke — Disiplin      */
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink);
  font: 14px/1.55 'Nunito', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; }
a { color: var(--blue-d); text-decoration: none; }
a:hover { text-decoration: underline; }

/* İçeriğin sağ üstündeki grupas logosu — şeffaf, çerçevesiz; geri butonuyla aynı satırda */
.icerik-ust { display: flex; align-items: center; justify-content: space-between; gap: 12px;
  margin-bottom: 10px; min-height: 42px; }
.ust-logo { margin-left: auto; background: none; border: 0; padding: 0; line-height: 0;
  opacity: .92; transition: .15s; }
.ust-logo:hover { opacity: 1; }
.ust-logo img { width: 150px; height: auto; display: block; }
@media (max-width: 700px) { .ust-logo img { width: 112px; } }

/* Kabuk: sol sidebar + içerik */
.shell { display: flex; min-height: 100vh; }
.sidebar { width: 236px; flex-shrink: 0; background: var(--navy); color: #fff;
  padding: 20px 14px; display: flex; flex-direction: column; gap: 3px;
  position: sticky; top: 0; align-self: flex-start; height: 100vh; overflow-y: auto; }
.sidebar .brand { font-size: 30px; font-weight: 800; letter-spacing: .5px;
  font-family: 'Nunito', -apple-system, BlinkMacSystemFont, sans-serif; line-height: 1;
  display: flex; align-items: baseline; gap: 6px; }
/* İki renkli marka: 5S grupas camgöbeği, SUITE beyaz */
.sidebar .brand .b5 { color: var(--g-cyan-l); }
.sidebar .brand .bsuite { color: #fff; }
.sidebar .brand-sub { font-size: 12.5px; opacity: .62; margin: 6px 0 14px; letter-spacing: .3px;
  font-style: italic; font-weight: 600; }
.sidebar a { display: block; padding: 8px 11px; border-radius: 7px; color: #dfe9f5;
  text-decoration: none; font-size: 13px; }
.sidebar a:hover { background: rgba(255,255,255,.09); text-decoration: none; }
.sidebar a.active { background: rgba(96,150,213,.32); color: #fff; font-weight: 600;
  box-shadow: inset 3px 0 0 var(--blue); }
.nav-group { font-size: 10px; text-transform: uppercase; letter-spacing: .5px;
  opacity: .5; margin: 15px 4px 3px; color: #fff; }
.nav-say { float: right; background: rgba(255,255,255,.18); color: #fff; font-size: 10.5px;
  font-weight: 700; border-radius: 999px; padding: 0 6px; line-height: 16px; margin-top: 1px; }
/* Adım numarası madalyonu — sidebar'da 1S..5S */
.s-no { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px;
  border-radius: 6px; font-size: 10.5px; font-weight: 800; color: #fff; margin-right: 7px;
  vertical-align: -4px; letter-spacing: 0; }
.s-no.s1 { background: var(--s1); } .s-no.s2 { background: var(--s2); }
.s-no.s3 { background: var(--s3); } .s-no.s4 { background: var(--s4); }
.s-no.s5 { background: var(--s5); }
/* Katlanır sidebar grubu */
.sidebar .nav-fold > summary { display: flex; align-items: center; padding: 8px 11px;
  border-radius: 7px; color: #dfe9f5; font-size: 13px; cursor: pointer; list-style: none; }
.sidebar .nav-fold > summary::-webkit-details-marker { display: none; }
.sidebar .nav-fold > summary:hover { background: rgba(255,255,255,.09); }
.sidebar .nav-fold > summary::after { content: "▸"; margin-left: auto; font-size: .78em; opacity: .55;
  transition: transform .15s; }
.sidebar .nav-fold[open] > summary::after { transform: rotate(90deg); }
.sidebar .nav-alt { padding-left: 30px; font-size: 12.5px; }

/* Sidebar alt kullanıcı bloğu */
.sb-user { margin-top: auto; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.14); }
.sb-user-ad { font-size: 13px; font-weight: 700; color: #fff; }
.sb-user-rol { margin: 5px 0 9px; }
.rol-rozet { display: inline-block; font-size: 10.5px; font-weight: 700; padding: 2px 9px;
  border-radius: 999px; letter-spacing: .2px; }
.rol-rozet.super { background: #2b8a4e; color: #fff; }
.rol-rozet.admin { background: var(--blue); color: #fff; }
.rol-rozet.uye { background: #e3e8f0; color: #57617a; }
.sb-user-alt { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.sb-user-alt a { display: inline; padding: 0; font-size: 12px; color: #bcd2ee; }
.sb-user-alt a:hover { background: none; text-decoration: underline; }
.sb-user-alt form { margin: 0; }
.sb-user-alt button { background: rgba(255,255,255,.10); color: #fff;
  border: 1px solid rgba(255,255,255,.22); border-radius: 7px; padding: 5px 10px;
  font-size: 12px; font-weight: 600; cursor: pointer; }
.sb-user-alt button:hover { background: rgba(255,255,255,.2); }

/* İçerik */
.content { flex: 1; min-width: 0; padding: 84px 34px 30px; max-width: 1220px; }
h1 { font-size: 22px; margin: 0 0 4px; color: var(--navy); }
h2 { font-size: 17px; margin: 24px 0 10px; color: var(--navy); }
h3 { font-size: 14.5px; margin: 16px 0 8px; color: var(--ink); }
.sub { color: var(--muted); margin: 0 0 18px; font-size: 13px; }
.crumb { color: var(--muted); font-size: 13px; margin-bottom: 8px; }

/* Kartlar & grid */
.card { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 18px; box-shadow: var(--shadow); margin-bottom: 18px; }
.card h3 { color: var(--navy); margin-top: 0; }
.card p { margin: 6px 0 10px; }
.card ul, .card ol { margin: 6px 0 12px; padding-left: 22px; }
.card li { margin-bottom: 5px; }
.grid { display: grid; gap: 16px; }
.g2 { grid-template-columns: 1fr 1fr; }
.g3 { grid-template-columns: repeat(3, 1fr); }
.g4 { grid-template-columns: repeat(4, 1fr); }
.g5 { grid-template-columns: repeat(5, 1fr); }
@media (max-width: 1080px) { .g4, .g5 { grid-template-columns: repeat(2, 1fr); } .g3 { grid-template-columns: 1fr; } }

/* İstatistik kutuları */
.stat { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 16px; box-shadow: var(--shadow); }
.stat .k { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
.stat .v { font-size: 28px; font-weight: 700; margin-top: 4px; color: var(--navy); }
.stat .v.blue { color: var(--blue-d); }

/* Tablolar */
table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
th, td { text-align: left; padding: 9px 10px; border-bottom: 1px solid var(--line); }
th { color: var(--muted); font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .03em; }
tbody tr:hover { background: #fafcfe; }
td.num, th.num { text-align: right; font-variant-numeric: tabular-nums; }
td.c, th.c { text-align: center; }

/* Formlar */
label { display: block; font-size: 12.5px; color: var(--muted); margin-bottom: 4px; font-weight: 500; }
input, select, textarea { width: 100%; padding: 8px 10px; border: 1px solid var(--line);
  border-radius: 7px; font: inherit; background: #fff; color: var(--ink); }
input:focus, select:focus, textarea:focus { outline: none; border-color: var(--blue);
  box-shadow: 0 0 0 3px rgba(96,150,213,.15); }
.field { margin-bottom: 12px; }
.row { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); align-items: end; }

/* Butonlar */
.btn { display: inline-flex; align-items: center; gap: 6px; padding: 8px 15px; border-radius: 7px;
  border: 1px solid var(--line); background: #fff; color: var(--ink); font: inherit; font-weight: 500;
  cursor: pointer; }
.btn:hover { background: var(--pale); text-decoration: none; }
.btn.primary { background: var(--blue); border-color: var(--blue); color: #fff; }
.btn.primary:hover { background: var(--navy); border-color: var(--navy); }
.btn.sm { padding: 5px 10px; font-size: 13px; }
.btn.danger { color: var(--red); border-color: #f0c4cb; }
.btn.danger:hover { background: #fdf0f2; }
.btn-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
form.inline { display: inline; }

/* Badge'ler */
.badge { display: inline-block; padding: 2px 9px; border-radius: 999px; font-size: 12px; font-weight: 600; }
.badge.mavi { background: #e5eefb; color: var(--blue-d); }
.badge.gri { background: #eef1f5; color: #55606e; }
.badge.yesil { background: #e3f4ec; color: var(--green); }
.badge.sari { background: #fbf1de; color: var(--amber); }
.badge.kirmizi { background: #fbe6e9; color: var(--red); }

/* Flash */
.flash { padding: 11px 14px; border-radius: 8px; margin-bottom: 14px; font-size: 13.5px; }
.flash.success { background: #e3f4ec; color: #1c6f47; }
.flash.error { background: #fbe6e9; color: #a02c3c; }
.flash.warn { background: #fbf1de; color: #8a5d10; }

/* Yardımcılar */
.muted { color: var(--muted); }
.small { font-size: 13px; }
.right { text-align: right; }
.mt0 { margin-top: 0; }
hr.sep { border: none; border-top: 1px solid var(--line); margin: 16px 0; }
details.acc { border: 1px solid var(--line); border-radius: 8px; padding: 10px 14px; margin-bottom: 10px; background: #fff; }
details.acc summary { cursor: pointer; font-weight: 600; }
.ai-out { white-space: pre-wrap; background: var(--pale); border: 1px solid var(--line);
  border-radius: 8px; padding: 14px; margin-top: 12px; font-size: 13.5px; }

/* Geri Dön butonu (panel hariç her sayfada) */
.geri-bar { margin: 0 0 14px; }
.geri-btn { display: inline-flex; align-items: center; gap: 6px; background: #fff; color: var(--navy);
  border: 1px solid var(--navy); padding: 7px 15px; border-radius: 7px; font-size: .9rem;
  font-weight: 600; cursor: pointer; transition: background .12s, color .12s; }
.geri-btn:hover { background: var(--navy); color: #fff; }

/* Alt bilgi */
.app-footer { margin-top: 32px; padding-top: 16px; border-top: 1px solid var(--line);
  color: var(--muted); font-size: 12.5px; display: flex; justify-content: space-between;
  align-items: center; flex-wrap: wrap; gap: 10px; }
.footer-links { display: flex; gap: 14px; }

/* ---- 5S'e özel ---- */
/* Adım kartı (panelde beşli şerit) */
.s-kart { display: block; background: var(--card); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 14px 15px; box-shadow: var(--shadow);
  border-top: 3px solid var(--line); color: var(--ink); }
.s-kart:hover { text-decoration: none; box-shadow: 0 4px 14px rgba(17,39,64,.10); }
.s-kart.s1 { border-top-color: var(--s1); } .s-kart.s2 { border-top-color: var(--s2); }
.s-kart.s3 { border-top-color: var(--s3); } .s-kart.s4 { border-top-color: var(--s4); }
.s-kart.s5 { border-top-color: var(--s5); }
.s-kart .s-ust { display: flex; align-items: center; gap: 8px; }
.s-kart .s-jp { font-size: 11px; color: var(--muted); font-style: italic; }
.s-kart .s-ad { font-size: 15px; font-weight: 800; color: var(--navy); line-height: 1.15; }
.s-kart .s-aciklama { font-size: 12.5px; color: var(--muted); margin-top: 7px; line-height: 1.45; }
.s-kart .s-durum { margin-top: 10px; font-size: 12px; color: var(--muted); }
/* Boş/hazırlanacak modül bildirimi */
.taslak { border: 1px dashed var(--pale-line); background: linear-gradient(180deg, #f7fbff, #fff);
  border-radius: var(--radius); padding: 22px 20px; color: var(--muted); }
.taslak b { color: var(--navy); }

/* ---- Modül mimarisi (15 modül) ---- */
/* Sidebar modül satırı: numara madalyonu + ad */
.sidebar a.nav-modul { display: flex; align-items: center; gap: 7px; padding: 7px 10px;
  font-size: 12.5px; line-height: 1.25; }
.m-no { display: inline-flex; align-items: center; justify-content: center;
  min-width: 19px; height: 19px; padding: 0 4px; border-radius: 6px; flex-shrink: 0;
  background: rgba(255,255,255,.14); color: #cfe0f3; font-size: 10.5px; font-weight: 800; }
.sidebar a.active .m-no { background: var(--blue); color: #fff; }
.m-ad { flex: 1; min-width: 0; }
.m-yildiz { color: #ffd36b; font-size: 11px; flex-shrink: 0; }
.m-no.big { background: var(--pale); color: var(--blue-d); min-width: 26px; height: 26px;
  font-size: 13px; vertical-align: -3px; margin-right: 4px; }

/* Panel: 5S şerit biraz daha sıkı */
.adim-serit .s-kart { padding: 12px 13px; }
.adim-serit .s-durum { display: none; }

/* Panel: sistem haritası */
.harita-grup { margin-bottom: 18px; }
.hg-bas { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; margin-bottom: 8px;
  padding-bottom: 6px; border-bottom: 1px solid var(--line); }
.hg-ikon { font-size: 15px; }
.hg-ad { font-size: 14.5px; font-weight: 800; color: var(--navy); }
.hg-ozet { font-size: 12.5px; color: var(--muted); }
.hg-kartlar { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(238px, 1fr)); }
.m-kart { display: block; background: var(--card); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 12px 14px; box-shadow: var(--shadow); color: var(--ink); }
.m-kart:hover { text-decoration: none; box-shadow: 0 4px 14px rgba(17,39,64,.10);
  border-color: var(--pale-line); }
.m-kart.fark { border-left: 3px solid var(--g-cyan); }
.mk-ust { display: flex; align-items: center; gap: 6px; margin-bottom: 6px; }
.m-kart .m-no { background: var(--pale); color: var(--blue-d); }
.m-kart .m-yildiz { color: var(--amber); }
.mk-durum { margin-left: auto; font-size: 10.5px; text-transform: uppercase; letter-spacing: .04em;
  color: var(--muted); background: #f1f4f9; border-radius: 999px; padding: 1px 8px; }
.mk-ad { font-size: 13.5px; font-weight: 700; color: var(--navy); line-height: 1.25; }
.mk-ozet { font-size: 12px; color: var(--muted); margin-top: 5px; line-height: 1.45; }

/* Panel: akış şeridi */
.akis { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.akis .ak { background: var(--pale); border: 1px solid var(--pale-line); border-radius: 999px;
  padding: 4px 12px; font-size: 12.5px; font-weight: 600; color: var(--blue-d); }
.akis .ak.vurgu { background: #e7f6ee; border-color: #a8dcc0; color: #1c7a4f; }
.akis .ok { color: var(--muted); font-size: 12px; }

/* Modül sayfası kapsam listesi */
ul.kapsam { margin: 8px 0 10px; padding-left: 20px; }
ul.kapsam li { margin-bottom: 6px; color: #33415a; }

/* ---- Giriş ekranı ---- */
.giris-body { display: flex; align-items: center; justify-content: center; min-height: 100vh;
  background: linear-gradient(160deg, #112740 0%, #1d3f63 55%, #2b61a1 100%); margin: 0; }
.giris-kutu { background: #fff; border-radius: 14px; padding: 30px 32px; width: 100%;
  max-width: 380px; box-shadow: 0 18px 50px rgba(9,22,38,.38); }
.giris-marka { font-size: 44px; font-weight: 800; color: var(--navy); line-height: 1; text-align: center; }
.giris-marka .b5 { color: var(--g-cyan); }
.giris-marka .bsuite { color: var(--g-navy); margin-left: 8px; }
.giris-alt { text-align: center; color: var(--muted); font-style: italic; font-weight: 600;
  font-size: 13px; margin: 4px 0 20px; }
.giris-logo { position: fixed; bottom: 22px; right: 26px; width: 150px; opacity: .9; }

/* ---- Satır içi düzenleme (tablo satırından açılan form) ---- */
.satir-duzenle { display: inline-block; }
.satir-duzenle > summary { display: inline-block; cursor: pointer; font-size: 12.5px;
  font-weight: 600; color: var(--blue-d); padding: 4px 10px; border: 1px solid #bcd0ee;
  border-radius: 7px; list-style: none; }
.satir-duzenle > summary::-webkit-details-marker { display: none; }
.satir-duzenle[open] > summary { background: var(--pale); }
.satir-form { text-align: left; background: var(--pale); border: 1px solid var(--pale-line);
  border-radius: 9px; padding: 12px 14px; margin-top: 8px; min-width: 420px; }
.satir-form .field { margin-top: 10px; }
label.onay { display: inline-flex; align-items: center; gap: 7px; font-size: 13px;
  color: var(--ink); margin: 10px 0 0; font-weight: 600; }
label.onay input { width: auto; }
.pasif-satir { opacity: .58; }
.nowrap { white-space: nowrap; }
.stat .v.sm { font-size: 17px; line-height: 1.25; }

/* Lokasyon ağacı */
.lok-tablo td { vertical-align: top; }
.lok-girinti { display: inline-block; }
.lok-cizgi { color: var(--pale-line); margin-right: 3px; }

/* Alan kodu rozeti */
.alan-kod { display: inline-block; font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 12px; background: var(--pale); color: var(--blue-d); border-radius: 6px;
  padding: 1px 8px; letter-spacing: .02em; }
.qr-kutu { background: var(--pale); border: 1px dashed var(--pale-line); border-radius: 8px;
  padding: 10px 12px; font-size: 12.5px; }
.filtre { padding: 14px 16px; }

/* Kritiklik rozetleri */
.badge.kr-A { background: #fbe6e9; color: var(--red); }
.badge.kr-B { background: #fbf1de; color: var(--amber); }
.badge.kr-C { background: #e9eef5; color: #55606e; }

/* Taslak modülün menüde soluk durması */
.sidebar a.nav-modul.taslak { opacity: .68; }
.sidebar a.nav-modul.taslak.active { opacity: 1; }
.mk-durum.ok { background: #e3f4ec; color: #1c7a4f; }
.m-kart.hazir { border-color: #bfe0cd; }

/* ---- Mobil (M7 mobil denetim için de temel) ---- */
.menu-ac, .menu-btn { display: none; }
@media (max-width: 900px) {
  .shell { flex-direction: column; }
  .menu-btn { display: inline-flex; align-items: center; gap: 6px; position: sticky; top: 0;
    z-index: 60; background: var(--navy); color: #fff; padding: 11px 16px; font-weight: 700;
    font-size: 14px; cursor: pointer; }
  .sidebar { display: none; width: 100%; height: auto; position: static; }
  .menu-ac:checked ~ .sidebar { display: flex; }
  .content { padding: 18px 16px 24px; }
  .row { grid-template-columns: 1fr; }
  .g2, .g3, .g4, .g5 { grid-template-columns: 1fr; }
  .satir-form { min-width: 0; }
  .card { padding: 14px; }
  table { font-size: 13px; }
}

/* ---- M1: ağaç, alan kartı, harita ---- */
.alan-isaret { font-size: 13px; }
.vardiya-sec { display: flex; gap: 16px; flex-wrap: wrap; }
.vardiya-sec label.onay { margin: 0; font-weight: 500; }
.qr-goster { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.qr-goster img { border: 1px solid var(--line); border-radius: 8px; background: #fff; padding: 6px; }
.ek-gorsel { width: 100%; border: 1px solid var(--line); border-radius: 8px; display: block;
  margin-bottom: 8px; }
textarea { min-height: 60px; resize: vertical; }
.matris td { vertical-align: top; }

/* Tesis 5S haritası */
.harita-tesis { margin-bottom: 20px; }
.ht-bas { font-size: 15px; color: var(--navy); padding-bottom: 6px; margin-bottom: 10px;
  border-bottom: 1px solid var(--line); display: flex; align-items: baseline; gap: 8px; }
.ht-kutular { display: grid; gap: 10px; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); }
.ht-kutu { display: block; border-radius: 9px; padding: 11px 13px; color: var(--ink);
  border: 1px solid var(--line); border-left: 5px solid var(--muted); background: var(--card);
  box-shadow: var(--shadow); }
.ht-kutu:hover { text-decoration: none; box-shadow: 0 4px 14px rgba(17,39,64,.12); }
.htk-kod { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11px;
  color: var(--muted); }
.htk-ad { font-weight: 700; color: var(--navy); font-size: 13.5px; line-height: 1.25; margin: 2px 0 4px; }
.htk-alt { font-size: 11.5px; color: var(--muted); }
.risk-A { border-left-color: var(--red); } .risk-B { border-left-color: var(--amber); }
.risk-C { border-left-color: var(--green); }
.risk-yok { border-left-color: #cbd5e1; }
.ht-anahtar { display: inline-flex; align-items: center; font-size: 12.5px; padding: 5px 12px;
  border: 1px solid var(--line); border-left: 5px solid var(--muted); border-radius: 7px;
  background: #fff; }

/* ---- Yazdırılabilir alan kartı ---- */
.kart-body { background: #e9eef5; margin: 0; padding: 20px; }
.kart-arac { max-width: 800px; margin: 0 auto 14px; display: flex; gap: 8px; }
.alan-kart { max-width: 800px; margin: 0 auto; background: #fff; border: 1px solid var(--line);
  border-radius: 10px; padding: 24px 26px; box-shadow: 0 4px 18px rgba(17,39,64,.10); }
.ak-ust { display: flex; justify-content: space-between; align-items: flex-start;
  border-bottom: 3px solid var(--navy); padding-bottom: 10px; margin-bottom: 16px; }
.ak-kurum { font-size: 12px; letter-spacing: .12em; color: var(--muted); text-transform: uppercase; }
.ak-baslik { font-size: 24px; font-weight: 800; color: var(--navy); letter-spacing: .04em; }
.ak-logo { width: 150px; height: auto; }
.ak-govde { display: flex; gap: 22px; align-items: flex-start; }
.ak-sol { flex: 1; min-width: 0; }
.ak-sag { width: 190px; flex-shrink: 0; text-align: center; }
.ak-alan-ad { font-size: 21px; font-weight: 800; color: var(--ink); line-height: 1.2; }
.ak-kod { display: inline-block; font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  background: var(--navy); color: #fff; border-radius: 6px; padding: 2px 10px; font-size: 13px;
  margin: 6px 0; }
.ak-yol { font-size: 12px; color: var(--muted); margin-bottom: 12px; }
.ak-tablo { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.ak-tablo th { text-align: left; color: var(--muted); font-weight: 600; font-size: 11px;
  text-transform: uppercase; letter-spacing: .03em; padding: 5px 8px 5px 0; width: 116px;
  border-bottom: 1px solid #eef2f7; vertical-align: top; }
.ak-tablo td { padding: 5px 12px 5px 0; border-bottom: 1px solid #eef2f7; vertical-align: top; }
.ak-unvan { color: var(--muted); font-size: 11.5px; margin-left: 6px; }
.ak-bolum { margin-top: 14px; }
.ak-bolum-bas { font-size: 11px; font-weight: 800; letter-spacing: .1em; color: var(--blue-d);
  background: var(--pale); padding: 4px 8px; border-radius: 5px; margin-bottom: 6px; }
.ak-serbest { font-size: 12.5px; white-space: pre-wrap; }
.ak-qr { width: 170px; height: 170px; border: 1px solid var(--line); border-radius: 8px; padding: 6px; }
.ak-qr-not { font-size: 11px; color: var(--muted); margin-top: 4px; }
.ak-kroki { width: 100%; margin-top: 12px; border: 1px solid var(--line); border-radius: 6px; }
.ak-alt { display: flex; justify-content: space-between; font-size: 11px; color: var(--muted);
  border-top: 1px solid var(--line); margin-top: 18px; padding-top: 10px; }
@media print {
  .kart-body { background: #fff; padding: 0; }
  .kart-arac { display: none; }
  .alan-kart { border: none; box-shadow: none; max-width: none; padding: 0; }
}

/* ---- M2: sorumluluk rolleri, RACI, matris ---- */
.rol-etiket { display: inline-block; font-size: 11.5px; font-weight: 700; padding: 2px 9px;
  border-radius: 999px; white-space: nowrap; background: #eef1f5; color: #47536a; }
.rol-alan_sahibi { background: #e5eefb; color: var(--blue-d); }
.rol-alan_lideri { background: #e7f1ff; color: #1f4f8f; }
.rol-departman_yoneticisi { background: #fbf1de; color: #8a5d10; }
.rol-denetci { background: #ecf6f0; color: #1c7a4f; }
.rol-ekip_uyesi { background: #f1f0fb; color: #5b4ea8; }
.rol-koordinator { background: #e9f4fa; color: #1a6a90; }
.rol-komite { background: #fbe9ef; color: #a33055; }

.raci { display: inline-flex; align-items: center; justify-content: center; width: 20px;
  height: 20px; border-radius: 5px; font-size: 11px; font-weight: 800; color: #fff; }
.raci-R { background: #2e9e6b; } .raci-A { background: #2b61a1; }
.raci-C { background: #d9922b; } .raci-I { background: #8b93a3; }

.sorumluluk-tablo td, .sorumluluk-tablo th { padding: 7px 8px; }
.sorumluluk-tablo { font-size: 12.5px; }
.sorumluluk-form .row { align-items: end; }

.tablo-kaydir { overflow-x: auto; }
.matris-h { min-width: 130px; }
.mh-kisi { font-size: 12px; line-height: 1.5; white-space: nowrap; }
.mh-yedek { font-size: 9.5px; text-transform: uppercase; letter-spacing: .04em;
  background: #eef1f5; color: #6a7484; border-radius: 4px; padding: 0 4px; margin-left: 3px; }
.mh-vardiya { font-size: 9.5px; background: #e5eefb; color: var(--blue-d); border-radius: 4px;
  padding: 0 4px; margin-left: 3px; }
.mh-kisi .raci { width: 15px; height: 15px; font-size: 9px; margin-left: 4px;
  vertical-align: -2px; }

.uyari-kutu { border-left: 4px solid var(--red); }
.uyari-liste { margin-top: 6px; font-size: 12.5px; }
.uyari-liste a { color: #a02c3c; text-decoration: underline; }

/* ---- Çalışma alanı seçici (sidebar) ---- */
.ca-secici { background: rgba(0,0,0,.18); border-radius: 9px; padding: 7px; margin-bottom: 14px; }
.ca-baslik { font-size: 9px; letter-spacing: .12em; text-transform: uppercase; color: #9fc0e4;
  font-weight: 800; padding: 2px 6px 5px; }
.sidebar a.ca-satir { display: flex; align-items: flex-start; gap: 7px; padding: 6px 7px;
  border-radius: 7px; }
.sidebar a.ca-satir.secili { background: rgba(96,150,213,.4); box-shadow: inset 2px 0 0 var(--g-cyan-l); }
.ca-nokta { color: var(--g-cyan-l); font-size: 10px; line-height: 1.6; }
.ca-metin { min-width: 0; }
.ca-tur { display: block; font-size: 8.5px; letter-spacing: .1em; color: #9fc0e4; font-weight: 800; }
.ca-isim { display: block; font-size: 12px; font-weight: 700; color: #fff; line-height: 1.25; }
.sidebar a.ca-yonet { font-size: 11px; opacity: .8; padding: 5px 7px; margin-top: 2px;
  border-top: 1px solid rgba(255,255,255,.12); border-radius: 0; }

/* ---- İçerik üstü çalışma alanı şeridi ---- */
.ca-serit { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 16px;
  padding: 8px 14px; border-radius: 9px; font-size: 12.5px; border: 1px solid; }
.ca-serit.ornek { background: #fff7e8; border-color: #f0dbb2; color: #8a5d10; }
.ca-serit.bos { background: #eef6ff; border-color: #c5dcf4; color: #1f4f8f; }
.cs-etiket { font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.cs-ad { font-weight: 700; }
.cs-not { color: inherit; opacity: .75; }
.ca-serit .btn { margin-left: auto; }

.ca-kart.aktif { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(96,150,213,.16); }
.ca-kart-ust { display: flex; gap: 6px; margin-bottom: 8px; }
.ca-sayilar { font-size: 12.5px; margin-bottom: 12px; }
.ca-sayilar td { padding: 4px 0; border-bottom: 1px solid #f0f3f8; color: var(--muted); }
.ca-sayilar td.num { color: var(--navy); font-weight: 700; }

/* ---- M3: profil kütüphanesi ---- */
.profil-kart.kullanilmiyor { opacity: .72; }
.agirlik-serit { display: flex; height: 7px; border-radius: 4px; overflow: hidden; margin: 8px 0 6px;
  background: #eef1f5; }
.as-parca { display: block; }
.as-s1 { background: var(--s1); } .as-s2 { background: var(--s2); } .as-s3 { background: var(--s3); }
.as-s4 { background: var(--s4); } .as-s5 { background: var(--s5); }
.profil-alt { display: flex; gap: 10px; flex-wrap: wrap; font-size: 11px; color: var(--muted);
  margin-top: 8px; padding-top: 7px; border-top: 1px solid #f0f3f8; }
.pk-kullanim { margin-left: auto; font-weight: 700; color: var(--blue-d); }
.as-anahtar { display: inline-flex; align-items: center; gap: 6px; font-size: 12px;
  color: var(--muted); }
.as-kutu { width: 12px; height: 12px; border-radius: 3px; display: inline-block; }
.agirlik-tablo td { padding: 6px 8px; border-bottom: 1px solid #f2f5f9; vertical-align: middle; }
.ag-bar { background: #eef1f5; border-radius: 4px; height: 9px; overflow: hidden; }
.ag-dolu { display: block; height: 100%; }
.sablon-onizleme { border: 1px dashed var(--pale-line); border-radius: 9px; padding: 10px 12px;
  background: linear-gradient(180deg, #f7fbff, #fff); }
.so-satir { display: flex; align-items: center; gap: 9px; padding: 6px 0;
  border-bottom: 1px solid #eef2f7; font-size: 12.5px; }
.so-satir:last-child { border-bottom: none; }
.so-satir.pasif { opacity: .4; }
.so-ad { font-weight: 700; color: var(--navy); width: 110px; }
.so-ag { color: var(--blue-d); font-weight: 700; width: 44px; }
.so-soru { color: var(--muted); font-size: 11.5px; }

/* ---- M4: soru bankası ---- */
.soru-tablo { font-size: 12.5px; }
.soru-tablo td { vertical-align: top; }
.soru-kod { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11.5px;
  background: var(--pale); color: var(--blue-d); border-radius: 5px; padding: 1px 6px; }
.surum { font-size: 10px; background: #eef1f5; color: #55606e; border-radius: 4px;
  padding: 0 5px; margin-left: 3px; }
.tip-rozet { display: inline-block; font-size: 11px; background: #eef4fc; color: var(--blue-d);
  border-radius: 5px; padding: 1px 7px; white-space: nowrap; }
.kural { display: inline-flex; align-items: center; justify-content: center; min-width: 20px;
  height: 19px; padding: 0 4px; border-radius: 5px; font-size: 10.5px; font-weight: 800;
  margin-right: 2px; }
.kural.kritik { background: #fbe6e9; color: var(--red); }
.kural.foto { background: #eef4fc; color: var(--blue-d); }
.kural.yorum { background: #fbf1de; color: var(--amber); }
.kural.esik { background: #e9f4ee; color: var(--green); }
.profil-sec { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
  gap: 4px 12px; margin: 8px 0 4px; }
.profil-sec label.onay { margin: 0; font-weight: 500; font-size: 12.5px; }
.ornek-kutu { border-radius: 8px; padding: 10px 12px; margin: 8px 0; font-size: 13px; }
.ornek-kutu.iyi { background: #eef8f2; border-left: 4px solid var(--green); }
.ornek-kutu.kotu { background: #fdf0f2; border-left: 4px solid var(--red); }
.ok-etiket { display: block; font-size: 10.5px; font-weight: 800; letter-spacing: .06em;
  text-transform: uppercase; margin-bottom: 3px; opacity: .75; }
.secenek-liste { font-size: 13px; }
.etiket-liste { display: flex; flex-wrap: wrap; gap: 6px; }
.etiket { display: inline-block; background: var(--pale); border: 1px solid var(--pale-line);
  color: var(--blue-d); border-radius: 999px; padding: 3px 11px; font-size: 12px; }

/* ---- Boş çalışma alanı yönlendirmesi ---- */
.bos-durum { display: flex; gap: 16px; align-items: flex-start; background: linear-gradient(180deg,#f7fbff,#fff);
  border: 1px dashed var(--pale-line); border-radius: var(--radius); padding: 20px 22px;
  margin-bottom: 18px; }
.bd-ikon { font-size: 30px; line-height: 1; }
.bd-govde h3 { margin: 0 0 4px; color: var(--navy); }
.bd-govde p { margin: 0 0 12px; color: var(--muted); font-size: 13px; max-width: 640px; }
.bd-govde form { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }

/* ---- M5: denetim şablonu ---- */
.sablon-kart .mk-ust { align-items: center; }
.algoritma { border: 1px dashed var(--pale-line); border-radius: 9px; padding: 12px 14px;
  background: linear-gradient(180deg,#f7fbff,#fff); }
/* Not: flex kullanılmıyor — metin içindeki <b> parçaları ayrı flex öğesi olup
   araya boşluk sokuyordu. Numara satır içi, metin normal akışta. */
.alg-adim { display: block; font-size: 12.5px; padding: 6px 0; line-height: 1.55;
  border-bottom: 1px solid #eef2f7; }
.alg-adim:last-child { border-bottom: none; }
.alg-adim.vurgu { color: #a02c3c; }
.alg-no { display: inline-flex; align-items: center; justify-content: center; width: 19px;
  height: 19px; border-radius: 5px; background: var(--blue); color: #fff; font-size: 11px;
  font-weight: 800; flex-shrink: 0; margin-right: 7px; vertical-align: -4px; }
.alg-adim.vurgu .alg-no { background: var(--red); }
.sablon-bolum { margin-bottom: 16px; }
.sb-bas { display: flex; align-items: center; gap: 8px; font-weight: 700; color: var(--navy);
  padding-bottom: 6px; margin-bottom: 6px; border-bottom: 1px solid var(--line); }
.banka-liste { max-height: 340px; overflow-y: auto; border: 1px solid var(--line);
  border-radius: 9px; padding: 6px; }
.banka-liste.kisa { max-height: 220px; }
.banka-satir { display: flex; align-items: center; gap: 8px; padding: 5px 7px; border-radius: 6px;
  font-size: 12.5px; cursor: pointer; }
.banka-satir:hover { background: var(--pale); }
.banka-satir input { width: auto; }
.bs-metin { flex: 1; min-width: 0; }

/* ---- M6: planlama, takvim, uyum ---- */
.katman-kart { border-top: 3px solid var(--line); }
.katman-kart.k-s2 { border-top-color: var(--s2); }
.katman-kart.k-s4 { border-top-color: var(--s4); }
.katman-kart.k-s5 { border-top-color: var(--s5); }
.kk-ust { display: flex; align-items: center; gap: 8px; color: var(--navy); font-size: 14.5px;
  margin-bottom: 6px; }
.kk-ikon { font-size: 18px; }
.katman-rozet { display: inline-block; font-size: 11px; font-weight: 700; padding: 2px 8px;
  border-radius: 999px; white-space: nowrap; background: #eef1f5; color: #47536a; }
.katman-rozet.k-s2 { background: #fdf3e2; color: #8a5d10; }
.katman-rozet.k-s4 { background: #e5eefb; color: var(--blue-d); }
.katman-rozet.k-s5 { background: #f1f0fb; color: #5b4ea8; }
tr.gecikmis td { background: #fff8f8; }

.takvim-ust { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.takvim-baslik { font-size: 17px; font-weight: 800; color: var(--navy); }
.takvim-anahtar { display: flex; gap: 6px; margin-left: auto; flex-wrap: wrap; }
.takvim { display: grid; grid-template-columns: repeat(7, 1fr); gap: 4px; }
.tk-baslik { font-size: 10.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted);
  font-weight: 700; text-align: center; padding: 4px 0; }
.tk-hucre { background: var(--card); border: 1px solid var(--line); border-radius: 8px;
  min-height: 92px; padding: 5px 6px; }
.tk-hucre.disari { background: #f7f9fc; opacity: .55; }
.tk-hucre.bugun { border-color: var(--blue); box-shadow: 0 0 0 2px rgba(96,150,213,.18); }
.tk-gun { font-size: 11px; color: var(--muted); font-weight: 700; margin-bottom: 3px; }
.tk-gorev { display: block; font-size: 10.5px; line-height: 1.35; padding: 2px 5px; margin-bottom: 2px;
  border-radius: 4px; border-left: 3px solid var(--muted); background: #f1f4f9; color: var(--ink);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tk-gorev:hover { text-decoration: none; background: var(--pale); }
.tk-gorev.k-s2 { border-left-color: var(--s2); }
.tk-gorev.k-s4 { border-left-color: var(--s4); }
.tk-gorev.k-s5 { border-left-color: var(--s5); }
.tk-gorev.tamam { background: #eef8f2; color: #1c6f47; }
.tk-gorev.gecikti { background: #fdf0f2; color: #a02c3c; }
.tk-fazla { font-size: 10px; color: var(--muted); padding-left: 3px; }
@media (max-width: 900px) { .takvim { grid-template-columns: repeat(2, 1fr); }
  .tk-baslik { display: none; } .tk-hucre.disari { display: none; } }

/* ---- M6 ek: denetçi iş planı, yıllık takvim ---- */
.denetci-kart.riskli { border-left: 4px solid var(--red); }
.dk-ust { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px;
  flex-wrap: wrap; margin-bottom: 10px; }
.dk-ad { font-size: 15px; font-weight: 800; color: var(--navy); }
.dk-sayilar { display: flex; gap: 14px; flex-wrap: wrap; }
.dk-say { font-size: 12px; color: var(--muted); }
.dk-say b { font-size: 17px; color: var(--navy); margin-right: 3px; }
.dk-say.kotu b { color: var(--red); }
.yillik { font-size: 12.5px; min-width: 900px; }
.yt-hucre { padding: 4px; }
.yt-kutu { display: inline-flex; align-items: center; justify-content: center; min-width: 24px;
  height: 22px; border-radius: 5px; font-size: 11.5px; font-weight: 700; padding: 0 5px; }
.yt-kutu.tamam { background: #e3f4ec; color: #1c7a4f; }
.yt-kutu.gecikti { background: #fbe6e9; color: var(--red); }
.yt-kutu.planli { background: #e5eefb; color: var(--blue-d); }
.yt-bos { color: #cfd8e4; }

/* ---- M7: mobil denetim ekranı ---- */
.denetim-ust { position: sticky; top: 0; z-index: 40; display: flex; align-items: center;
  gap: 14px; flex-wrap: wrap; background: var(--navy); color: #fff; border-radius: 10px;
  padding: 11px 16px; margin-bottom: 2px; }
.du-alan { font-size: 15px; font-weight: 800; }
.du-alan .alan-kod { background: rgba(255,255,255,.16); color: #dbe8f7; }
.du-sablon { font-size: 11.5px; opacity: .75; }
.du-skor { margin-left: auto; text-align: right; }
.ds-deger { font-size: 26px; font-weight: 800; line-height: 1; }
.ds-alt { font-size: 10.5px; opacity: .75; }
.du-durum { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; font-size: 10.5px; }
.ag-cevrimici { color: #6ee7a8; }
.ag-cevrimdisi { color: #ffcf6b; font-weight: 700; }
.kuyruk { background: rgba(255,255,255,.18); border-radius: 4px; padding: 1px 6px; }
.gizli { display: none; }
.ilerleme-cizgi { height: 4px; background: #dfe6f0; border-radius: 3px; overflow: hidden;
  margin-bottom: 16px; }
.ilerleme-cizgi span { display: block; height: 100%; background: var(--green); transition: width .25s; }

.denetim-bolum { margin-bottom: 20px; }
.db-bas { display: flex; align-items: center; gap: 8px; font-weight: 800; color: var(--navy);
  font-size: 15px; padding-bottom: 6px; border-bottom: 2px solid var(--line); margin-bottom: 10px; }
.soru-kart { background: var(--card); border: 1px solid var(--line); border-radius: 10px;
  padding: 13px 15px; margin-bottom: 10px; box-shadow: var(--shadow); }
.soru-kart.cevapli { border-left: 4px solid var(--green); }
.soru-kart.kritik-soru { border-top: 2px solid var(--red); }
.sk-ust { display: flex; align-items: center; gap: 6px; margin-bottom: 6px; }
.sk-durum { margin-left: auto; font-size: 11px; color: var(--green); font-weight: 700; }
.sk-metin { font-size: 14.5px; font-weight: 700; color: var(--ink); line-height: 1.35; }
.sk-aciklama { font-size: 12px; color: var(--muted); margin-top: 3px; }
.sk-ornek { margin-top: 6px; }
.sk-ornek > summary { font-size: 12px; color: var(--blue-d); cursor: pointer; }
.sk-cevap { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 11px; }
.puan-btn { min-width: 46px; min-height: 44px; padding: 0 14px; border-radius: 9px;
  border: 1.5px solid var(--line); background: #fff; font: inherit; font-weight: 700;
  font-size: 15px; cursor: pointer; color: var(--ink); }
.puan-btn:hover { border-color: var(--blue); }
.puan-btn.secili { color: #fff; border-color: transparent; }
.puan-btn.iyi.secili, .puan-btn.p4.secili, .puan-btn.p5.secili { background: var(--green); }
.puan-btn.p3.secili { background: #7cb342; }
.puan-btn.p2.secili { background: var(--amber); }
.puan-btn.p1.secili, .puan-btn.p0.secili, .puan-btn.kotu.secili { background: var(--red); }
.puan-btn.secenek { font-size: 13px; font-weight: 600; min-width: 0; }
.puan-btn.secenek.secili { background: var(--blue-d); }
.puan-btn.na { margin-left: auto; font-size: 13px; color: var(--muted); }
.puan-btn.na.secili { background: #8b93a3; }
.sayisal-giris { max-width: 190px; }
.sk-arac { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 11px; }
.arac-btn { display: inline-flex; align-items: center; min-height: 38px; padding: 0 12px;
  border-radius: 8px; border: 1px solid var(--line); background: #f8fafd; font-size: 12.5px;
  font-weight: 600; color: var(--blue-d); cursor: pointer; }
.arac-btn:hover { background: var(--pale); }
.arac-btn.kaydediyor { background: #fdecea; color: var(--red); border-color: #f3c2bd; }
.sk-yorum { margin-top: 9px; }
.sk-yorum textarea { font-size: 13px; }
.sk-medya { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-top: 9px; }
.medya-kucuk { position: relative; display: block; width: 78px; height: 78px; border-radius: 8px;
  overflow: hidden; border: 1px solid var(--line); }
.medya-kucuk img { width: 100%; height: 100%; object-fit: cover; }
.isaret-rozet { position: absolute; bottom: 0; left: 0; right: 0; background: rgba(224,27,60,.85);
  color: #fff; font-size: 9px; text-align: center; }
.ses-oynatici { height: 34px; max-width: 220px; }
.sk-bulgu { margin-top: 10px; background: #fff8f8; border: 1px solid #f3d4d4; border-radius: 9px;
  padding: 11px 13px; }

/* fotoğraf işaretleme katmanı */
.isaret-katman { position: fixed; inset: 0; background: rgba(9,22,38,.86); z-index: 200;
  display: flex; align-items: center; justify-content: center; padding: 16px; }
.isaret-ic { background: #fff; border-radius: 12px; padding: 14px; max-width: 96vw; max-height: 94vh;
  overflow: auto; }
.isaret-bas { font-size: 13px; color: var(--muted); margin-bottom: 8px; }
.isaret-ic canvas { max-width: 100%; border-radius: 8px; touch-action: none; cursor: crosshair;
  border: 1px solid var(--line); }
.isaret-arac { display: flex; gap: 8px; margin-top: 10px; justify-content: flex-end; }

/* imza */
.imza-kutu canvas { width: 100%; max-width: 600px; height: 150px; border: 1px dashed var(--pale-line);
  border-radius: 9px; background: #fcfdff; touch-action: none; }
.kapat-kart { border-top: 3px solid var(--blue); }

/* denetim özeti */
.sonuc-serit { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; border-radius: 12px;
  padding: 16px 20px; margin-bottom: 18px; border: 1px solid; }
.sonuc-serit.basarili { background: #eef8f2; border-color: #b8e0c8; }
.sonuc-serit.basarisiz { background: #fdf0f2; border-color: #f2c6cd; }
.ss-deger { font-size: 44px; font-weight: 800; line-height: 1; color: var(--navy); }
.ss-alt { font-size: 11px; color: var(--muted); }
.ss-metin b { font-size: 17px; letter-spacing: .04em; }
.sonuc-serit.basarili .ss-metin b { color: #1c7a4f; }
.sonuc-serit.basarisiz .ss-metin b { color: #a02c3c; }
.ss-degisim { margin-left: auto; text-align: right; }
.ss-degisim .yukari { color: var(--green); font-weight: 800; font-size: 17px; }
.ss-degisim .asagi { color: var(--red); font-weight: 800; font-size: 17px; }
.ss-imza img { height: 54px; }
.cevap-rozet { display: inline-block; min-width: 44px; border-radius: 6px; padding: 1px 7px;
  font-size: 12px; font-weight: 700; }
.cevap-rozet.iyi { background: #e3f4ec; color: #1c7a4f; }
.cevap-rozet.orta { background: #fbf1de; color: #8a5d10; }
.cevap-rozet.kotu { background: #fbe6e9; color: var(--red); }
.foto-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 10px; }
.foto-kutu { display: block; border: 1px solid var(--line); border-radius: 9px; overflow: hidden;
  background: #fff; color: var(--ink); }
.foto-kutu img { width: 100%; height: 130px; object-fit: cover; display: block; }
.foto-zaman, .foto-bilgi { display: block; font-size: 11px; color: var(--muted); padding: 6px 8px; }
.foto-bilgi b { display: block; color: var(--navy); font-size: 12px; }
.foto-soru { display: block; margin-top: 2px; font-size: 10.5px; }
.surec-liste { font-size: 13.5px; line-height: 1.7; }

/* QR karşılama (mobil) */
.qr-karsilama { max-width: 520px; margin: 0 auto; }
.qk-ust { background: var(--navy); color: #fff; border-radius: 12px; padding: 18px 20px;
  text-align: center; }
.qk-etiket { font-size: 10px; letter-spacing: .14em; opacity: .7; }
.qk-ad { font-size: 25px; color: #fff; margin: 4px 0; }
.qk-kod { display: inline-block; background: rgba(255,255,255,.16); border-radius: 6px;
  padding: 2px 10px; font-family: ui-monospace, Menlo, monospace; font-size: 12.5px; }
.qk-bilgi { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line);
  border: 1px solid var(--line); border-radius: 10px; overflow: hidden; margin: 14px 0; }
.qk-bilgi > div { background: #fff; padding: 9px 12px; }
.qk-bilgi span { display: block; font-size: 10.5px; color: var(--muted); text-transform: uppercase;
  letter-spacing: .04em; }
.qk-bilgi b { font-size: 13.5px; color: var(--navy); }
.skor-iyi { color: var(--green) !important; } .skor-kotu { color: var(--red) !important; }
.qk-gorev { background: var(--pale); border: 1px solid var(--pale-line); border-radius: 9px;
  padding: 10px 13px; margin-bottom: 12px; display: flex; justify-content: space-between;
  align-items: center; gap: 8px; flex-wrap: wrap; }
.qk-buton { width: 100%; justify-content: center; min-height: 52px; font-size: 16px; }
.qk-alt { display: flex; gap: 8px; margin-top: 14px; }
.qk-alt .btn { flex: 1; justify-content: center; }

@media (max-width: 900px) {
  .denetim-ust { border-radius: 0; margin: -18px -16px 2px; padding: 10px 14px; }
  .du-durum { flex-direction: row; align-items: center; width: 100%; justify-content: flex-start; }
  .puan-btn { flex: 1; min-width: 52px; }
  .puan-btn.na { flex: 0 0 auto; }
  .qk-bilgi { grid-template-columns: 1fr; }
}


/* ---- M8: parametrik puanlama ---- */
.puan-btn.seviye { display: inline-flex; flex-direction: column; align-items: center;
  justify-content: center; gap: 1px; min-width: 84px; padding: 6px 10px; line-height: 1.1; }
.pb-deger { font-size: 17px; font-weight: 800; }
.pb-etiket { font-size: 9.5px; font-weight: 600; opacity: .8; text-align: center; }
.puan-btn.seviye.iyi { border-color: #b8e0c8; }
.puan-btn.seviye.orta { border-color: #f0dbb2; }
.puan-btn.seviye.kotu { border-color: #f2c6cd; }
.puan-btn.seviye.iyi.secili { background: var(--green); }
.puan-btn.seviye.orta.secili { background: var(--amber); }
.puan-btn.seviye.kotu.secili { background: var(--red); }
.puan-btn.secili .pb-etiket { opacity: .95; }

.formul { display: flex; align-items: center; gap: 10px; font-size: 17px; color: var(--navy);
  font-weight: 700; background: var(--pale); border-radius: 10px; padding: 14px 18px; }
.fr-kesir { display: inline-flex; flex-direction: column; text-align: center; font-size: 13.5px; }
.fr-kesir span:first-child { border-bottom: 2px solid var(--navy); padding-bottom: 2px; }
.fr-kesir span:last-child { padding-top: 2px; }
.buyuk-skor { font-size: 19px; color: var(--navy); }
.mini-skor { display: inline-block; min-width: 32px; border-radius: 5px; padding: 1px 6px;
  font-size: 12px; font-weight: 700; background: #eef1f5; color: #55606e; }
.mini-skor.iyi { background: #e3f4ec; color: #1c7a4f; }
.mini-skor.orta { background: #fbf1de; color: #8a5d10; }
.mini-skor.kotu { background: #fbe6e9; color: var(--red); }
.bant-rozet { display: inline-block; font-size: 11.5px; font-weight: 700; padding: 2px 10px;
  border-radius: 999px; }
.b-kirmizi { background: #fbe6e9; color: var(--red); }
.b-sari { background: #fbf1de; color: #8a5d10; }
.b-yesil { background: #e3f4ec; color: #1c7a4f; }
.b-altin { background: linear-gradient(135deg, #f7e3a1, #e9c65c); color: #6b4e07; }
.b-gri { background: #eef1f5; color: #55606e; }
.olcek-kart .ok-ust { display: flex; align-items: baseline; gap: 9px; flex-wrap: wrap;
  margin-bottom: 8px; }
.ok-tam { margin-left: auto; font-size: 11.5px; color: var(--blue-d); background: var(--pale);
  border-radius: 5px; padding: 1px 8px; }
.seviye-kutu { display: inline-flex; align-items: center; justify-content: center; width: 28px;
  height: 28px; border-radius: 7px; background: var(--navy); color: #fff; font-weight: 800;
  font-size: 13px; }
.kritik-kart { border-left: 4px solid var(--red); }
.kritik-madde { display: inline-block; background: #fff; border: 1px solid #f0c4cb;
  border-radius: 5px; padding: 1px 8px; font-size: 11.5px; margin: 2px 3px 0 0; color: #a02c3c; }
.trend { display: flex; align-items: flex-end; gap: 6px; height: 130px; padding: 6px 0;
  border-bottom: 1px solid var(--line); }
.trend-sutun { flex: 1; display: flex; flex-direction: column; justify-content: flex-end;
  align-items: center; height: 100%; }
.trend-dolu { display: block; width: 100%; border-radius: 4px 4px 0 0; min-height: 3px; }
.trend-dolu.iyi { background: var(--green); } .trend-dolu.orta { background: var(--amber); }
.trend-dolu.kotu { background: var(--red); }
.trend-etiket { font-size: 10px; color: var(--muted); margin-top: 3px; }

/* ---- M9: bulgu sınıfları ve eskalasyon ---- */
.sinif-kart { border-left: 4px solid var(--line); }
.sinif-kart.s-kirmizi { border-left-color: var(--red); }
.sinif-kart.s-sari { border-left-color: var(--amber); }
.sinif-kart.s-gri { border-left-color: #9aa5b5; }
.sinif-kart.s-mavi { border-left-color: var(--blue); }
.sinif-ikon { font-size: 16px; }
.esk-rozet { display: inline-flex; align-items: center; justify-content: center; width: 22px;
  height: 22px; border-radius: 6px; font-size: 12px; font-weight: 800; color: #fff;
  background: #9aa5b5; }
.esk-rozet.e1 { background: var(--amber); }
.esk-rozet.e2 { background: #e8743b; }
.esk-rozet.e3 { background: var(--red); }
.merdiven { display: flex; flex-direction: column; gap: 8px; }
.merdiven.yatay { flex-direction: row; flex-wrap: wrap; }
.merdiven-adim { display: flex; align-items: flex-start; gap: 9px; padding: 8px 12px;
  border: 1px solid var(--line); border-radius: 9px; background: #fbfcfe; font-size: 12.5px;
  opacity: .55; flex: 1; min-width: 190px; }
.merdiven-adim.aktif { opacity: 1; background: #fff; }


/* ---- Yetki matrisi ---- */
.yetki-tablo { font-size: 12.5px; min-width: 760px; }
.yetki-tablo .ths { display: block; font-weight: 400; font-size: 9.5px; opacity: .7;
  text-transform: none; letter-spacing: 0; }
.yetki-var { color: var(--green); font-weight: 800; }
.yetki-yok { color: #c9d2de; }

/* ---- M10: aksiyon / CAPA ---- */
.akis-serit { display: flex; align-items: stretch; gap: 4px; flex-wrap: wrap; margin-bottom: 16px; }
.akis-adim { flex: 1; min-width: 96px; background: #fff; border: 1px solid var(--line);
  border-radius: 9px; padding: 8px 10px; opacity: .5; }
.akis-adim.tamam { opacity: 1; border-color: #b8e0c8; background: #f6fbf8; }
.aa-ad { font-size: 9.5px; text-transform: uppercase; letter-spacing: .07em; color: var(--muted);
  font-weight: 800; }
.aa-deger { font-size: 12.5px; font-weight: 700; color: var(--navy); margin-top: 2px;
  word-break: break-word; }
.akis-ok { align-self: center; color: var(--muted); font-size: 13px; }
.is-akis { border-top: 3px solid var(--blue); }
.ba-ikili { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ba-kutu { border: 1px solid var(--line); border-radius: 9px; padding: 10px; }
.ba-etiket { font-size: 10px; font-weight: 800; letter-spacing: .1em; color: var(--muted);
  margin-bottom: 6px; }
.ba-etiket.after { color: var(--green); }
.ba-kutu img { width: 100%; border-radius: 7px; display: block; margin-bottom: 8px; }
.ba-bos { background: var(--pale); border-radius: 7px; padding: 22px 10px; text-align: center;
  color: var(--muted); font-size: 12px; margin-bottom: 8px; }
.ba-kutu input[type=file] { font-size: 11.5px; margin-bottom: 6px; }
.neden-satir label { font-weight: 600; color: var(--ink); }
.kanban { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; align-items: start; }
.kb-sutun { background: #f4f7fb; border-radius: 10px; padding: 9px; }
.kb-bas { font-size: 12.5px; font-weight: 800; padding: 5px 9px; border-radius: 7px;
  margin-bottom: 4px; }
.kb-aciklama { font-size: 10.5px; color: var(--muted); margin-bottom: 8px; line-height: 1.35; }
.kb-kart { display: block; background: #fff; border: 1px solid var(--line); border-radius: 8px;
  padding: 9px 10px; margin-bottom: 7px; color: var(--ink); }
.kb-kart:hover { text-decoration: none; box-shadow: 0 3px 10px rgba(17,39,64,.1); }
.kb-kart.gecikmis-kart { border-left: 3px solid var(--red); }
.kb-kod { font-family: ui-monospace, Menlo, monospace; font-size: 10.5px; color: var(--muted);
  display: flex; justify-content: space-between; align-items: center; gap: 4px; }
.kb-baslik { font-size: 12.5px; font-weight: 700; color: var(--navy); line-height: 1.3;
  margin: 3px 0 5px; }
.kb-alt { display: flex; flex-direction: column; gap: 1px; font-size: 10.5px; color: var(--muted); }
.kb-bos { text-align: center; color: #c9d2de; padding: 10px; font-size: 12px; }
@media (max-width: 1100px) { .kanban { grid-template-columns: repeat(2, 1fr); }
  .ba-ikili { grid-template-columns: 1fr; } }


/* ---- M11: kırmızı etiket ---- */
.karar-secim { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 8px; margin: 8px 0; }
.karar-kutu { display: block; border: 1px solid var(--line); border-radius: 9px; padding: 9px 11px;
  cursor: pointer; background: #fff; }
.karar-kutu:hover { border-color: var(--blue); background: var(--pale); }
.karar-kutu input { width: auto; margin-right: 6px; }
.kk-ikon { font-size: 15px; }
.kk-ad { font-weight: 700; font-size: 13px; color: var(--navy); }
.kk-aciklama { display: block; font-size: 11px; color: var(--muted); margin-top: 3px; }
.rt-etiket { max-width: 520px; margin: 0 auto; background: #fff; border: 3px solid #d1202f;
  border-radius: 8px; overflow: hidden; }
.rt-ust { background: #d1202f; color: #fff; padding: 10px 16px; display: flex;
  justify-content: space-between; align-items: center; }
.rt-baslik { font-size: 21px; font-weight: 800; letter-spacing: .08em; }
.rt-kod { font-family: ui-monospace, Menlo, monospace; font-size: 15px; }
.rt-kurum { text-align: center; font-size: 11px; letter-spacing: .1em; color: var(--muted);
  padding: 6px; border-bottom: 1px solid var(--line); }
.rt-tablo { width: 100%; border-collapse: collapse; font-size: 13px; }
.rt-tablo th { text-align: left; width: 110px; padding: 7px 14px; color: var(--muted);
  font-size: 11px; text-transform: uppercase; border-bottom: 1px solid #eef2f7; }
.rt-tablo td { padding: 7px 14px; border-bottom: 1px solid #eef2f7; }
.rt-buyuk { font-size: 16px; font-weight: 800; color: var(--ink); }
.rt-not { padding: 8px 14px; font-size: 12.5px; color: var(--muted); }
.rt-karar { padding: 12px 14px; background: #fff6f6; border-top: 2px dashed #f0c4cb; }
.rt-karar-bas { font-size: 11px; font-weight: 800; letter-spacing: .08em; color: #a02c3c;
  margin-bottom: 8px; }
.rt-secenekler { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 12px; font-size: 12.5px; }
.rt-imza { margin-top: 14px; font-size: 12px; color: var(--muted); }
.rt-alt { background: #f6f8fb; padding: 7px 14px; font-size: 10.5px; color: var(--muted);
  text-align: center; }
@media print { .kart-arac { display: none; } .rt-etiket { border-width: 2px; } }

/* ---- M12: görsel standart ---- */
.standart-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 12px; }
.standart-kart { display: block; border: 1px solid var(--line); border-radius: 10px;
  overflow: hidden; background: #fff; color: var(--ink); }
.standart-kart:hover { text-decoration: none; box-shadow: 0 4px 14px rgba(17,39,64,.12); }
.standart-kart.suresi-gecmis { border-color: #f0c4cb; }
.standart-kart img { width: 100%; height: 140px; object-fit: cover; display: block; }
.sk-fotosuz { height: 140px; background: var(--pale); display: flex; align-items: center;
  justify-content: center; color: var(--muted); font-size: 12px; }
.sk-govde { padding: 9px 11px; }
.sk-kategori { font-size: 10.5px; color: var(--blue-d); font-weight: 700; }
.sk-baslik { font-size: 13px; font-weight: 700; color: var(--navy); line-height: 1.3;
  margin: 3px 0 5px; }
.sk-alt { display: flex; justify-content: space-between; font-size: 11px; color: var(--muted); }
.sk-uyari { margin-top: 5px; font-size: 11px; color: var(--red); font-weight: 600; }
.standart-referans { border: 1px solid var(--pale-line); border-radius: 10px; padding: 10px 14px;
  margin-bottom: 16px; background: linear-gradient(180deg, #f7fbff, #fff); }
.standart-referans > summary { cursor: pointer; font-weight: 700; color: var(--blue-d);
  font-size: 13px; }
.sr-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 9px; margin-top: 10px; }
.sr-kutu { display: block; border: 1px solid var(--line); border-radius: 8px; overflow: hidden;
  background: #fff; color: var(--ink); }
.sr-kutu img { width: 100%; height: 92px; object-fit: cover; display: block; }
.sr-fotosuz { height: 92px; background: var(--pale); display: flex; align-items: center;
  justify-content: center; font-size: 11px; color: var(--muted); }
.sr-ad { display: block; font-size: 10.5px; padding: 5px 7px; color: var(--muted); }
.asc-izgara { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 14px; }
.asc-kutu { border: 1px solid var(--line); border-radius: 9px; padding: 10px; }
.asc-bas { font-size: 11px; font-weight: 800; color: var(--blue-d); background: var(--pale);
  border-radius: 5px; padding: 3px 8px; margin-bottom: 7px; display: inline-block; }
.asc-kutu img { width: 100%; border-radius: 7px; display: block; }
.asc-baslik { font-size: 13px; font-weight: 700; color: var(--navy); margin-top: 6px; }
.asc-aciklama { font-size: 11.5px; color: var(--muted); margin-top: 3px; }
.asc-rev { font-size: 10.5px; color: var(--muted); margin-top: 4px; }

/* ---- M13: 5S Sancağı ---- */
.sancak-seviye { border-top: 3px solid var(--line); }
.sancak-seviye.s-bronz { border-top-color: #b87333; }
.sancak-seviye.s-gumus { border-top-color: #9aa5b5; }
.sancak-seviye.s-altin { border-top-color: #e0b445; }
.sancak-seviye.s-excellence { border-top-color: #7a5cc4; }
.ss-ikon { font-size: 30px; line-height: 1; }
.ss-ad { font-size: 15px; font-weight: 800; color: var(--navy); margin: 4px 0; }
.ss-aciklama { font-size: 12px; color: var(--muted); margin-bottom: 8px; }
.ss-kriter { font-size: 12px; margin: 0 0 8px; padding-left: 18px; color: #33415a; }
.ss-kriter li { margin-bottom: 3px; }
.ss-kriter li.manuel { color: #5b4ea8; }
.ss-alt { font-size: 11px; color: var(--muted); border-top: 1px solid #f0f3f8; padding-top: 6px; }
.sancak-rozet { display: inline-block; font-size: 11.5px; font-weight: 700; padding: 2px 10px;
  border-radius: 999px; white-space: nowrap; }
.r-bronz { background: #f6e8dc; color: #8a5225; }
.r-gumus { background: #eef1f5; color: #55606e; }
.r-altin { background: linear-gradient(135deg, #f9ecc0, #eccd66); color: #6b4e07; }
.r-excellence { background: linear-gradient(135deg, #e8e2fa, #c9bcf0); color: #4a3a86; }
.sancak-serit { display: flex; align-items: center; gap: 18px; border-radius: 12px;
  padding: 16px 22px; margin-bottom: 18px; border: 1px solid var(--line); flex-wrap: wrap; }
.sancak-serit.r-altin { background: linear-gradient(135deg, #fdf6e0, #fff); border-color: #eccd66; }
.sancak-serit.r-gumus { background: linear-gradient(135deg, #f5f7fa, #fff); }
.sancak-serit.r-bronz { background: linear-gradient(135deg, #fbf1e8, #fff); border-color: #e3c3a5; }
.sancak-serit.r-excellence { background: linear-gradient(135deg, #f3f0fd, #fff); border-color: #c9bcf0; }
.sr-ikon { font-size: 46px; line-height: 1; }
.sr-ad { font-size: 19px; font-weight: 800; color: var(--navy); letter-spacing: .04em; }
.sr-alan { font-size: 14px; color: var(--ink); }
.sr-bilgi { font-size: 12px; color: var(--muted); margin-top: 2px; }
.sr-islem { margin-left: auto; display: flex; gap: 8px; align-items: center; }
.degerlendirme { border-left: 4px solid #dfe6f0; }
.degerlendirme.uygun { border-left-color: var(--green); }
.dg-bas { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; }
.dg-sonuc { font-size: 12.5px; font-weight: 700; }
.dg-sonuc.ok { color: var(--green); }
.dg-sonuc.yok { color: var(--muted); }
.kriter-tablo { font-size: 12.5px; }
.kriter-tablo tr.gecti td:first-child { color: var(--green); font-weight: 800; }
.kriter-tablo tr.kaldi td:first-child { color: var(--red); font-weight: 800; }
.kriter-tablo tr.kaldi { background: #fffafa; }
.mini-trend { display: inline-flex; align-items: flex-end; gap: 2px; height: 28px; }
.mt-sutun { width: 6px; border-radius: 2px 2px 0 0; background: var(--muted); display: block; }
.mt-sutun.iyi { background: var(--green); } .mt-sutun.orta { background: var(--amber); }
.mt-sutun.kotu { background: var(--red); }

/* Sertifika */
.sertifika { max-width: 720px; margin: 0 auto; }
.sf-cerceve { background: #fff; border: 3px double var(--navy); border-radius: 6px;
  padding: 34px 40px; text-align: center; }
.sertifika.s-altin .sf-cerceve { border-color: #c9a227; }
.sertifika.s-excellence .sf-cerceve { border-color: #7a5cc4; }
.sertifika.s-bronz .sf-cerceve { border-color: #b87333; }
.sf-ust { display: flex; justify-content: space-between; align-items: center;
  border-bottom: 1px solid var(--line); padding-bottom: 10px; margin-bottom: 18px; }
.sf-kurum { font-size: 12px; letter-spacing: .16em; color: var(--muted); }
.sf-logo { width: 130px; }
.sf-madalya { font-size: 56px; line-height: 1; }
.sf-seviye { font-size: 27px; font-weight: 800; color: var(--navy); letter-spacing: .06em;
  margin: 6px 0 2px; }
.sf-alt-baslik { font-size: 12.5px; color: var(--muted); letter-spacing: .1em;
  text-transform: uppercase; }
.sf-alan { font-size: 30px; font-weight: 800; color: var(--ink); margin: 20px 0 4px; }
.sf-yol { font-size: 12.5px; color: var(--muted); }
.sf-bilgiler { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin: 24px 0;
  border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 14px 0; }
.sf-bilgiler span { display: block; font-size: 10px; text-transform: uppercase;
  letter-spacing: .06em; color: var(--muted); }
.sf-bilgiler b { font-size: 15px; color: var(--navy); }
.sf-not { font-style: italic; color: var(--muted); font-size: 13px; margin-bottom: 18px; }
.sf-alt { display: flex; justify-content: space-between; align-items: flex-end; margin-top: 18px; }
.sf-imza { text-align: left; font-size: 12.5px; }
.sf-cizgi { width: 190px; border-top: 1px solid var(--ink); margin-bottom: 5px; }
.sf-qr img { width: 96px; height: 96px; }
.sf-dipnot { font-size: 10.5px; color: var(--muted); margin-top: 16px;
  border-top: 1px solid var(--line); padding-top: 8px; }
@media print { .kart-arac { display: none; } .sf-cerceve { border-width: 2px; } }

/* Doğrulama sayfası */
.dogrula-kutu { background: #fff; border-radius: 14px; padding: 30px 34px; width: 100%;
  max-width: 420px; box-shadow: 0 18px 50px rgba(9,22,38,.38); text-align: center; }
.dg-durum { font-size: 13px; font-weight: 800; letter-spacing: .08em; padding: 7px 14px;
  border-radius: 999px; display: inline-block; margin-bottom: 16px; }
.dg-durum.gecerli { background: #e3f4ec; color: #1c7a4f; }
.dg-durum.gecersiz { background: #fbe6e9; color: #a02c3c; }
.dg-madalya { font-size: 54px; line-height: 1; }
.dg-seviye { font-size: 19px; font-weight: 800; color: var(--navy); margin-top: 4px; }
.dg-alan { font-size: 15px; color: var(--ink); margin-top: 4px; }
.dg-kurum { font-size: 12px; color: var(--muted); }
.dg-tablo { width: 100%; margin-top: 16px; font-size: 13px; }
.dg-tablo td { padding: 6px 0; border-bottom: 1px solid #eef2f7; text-align: left; }
.dg-tablo td:last-child { text-align: right; }
.dg-dipnot { font-size: 11px; color: var(--muted); margin-top: 18px; }

/* ---- M14/M15: grafikler ve panolar ---- */
.uyari-etiket { display: inline-block; background: #fff7e8; border: 1px solid #f0dbb2;
  color: #8a5d10; border-radius: 5px; padding: 1px 8px; font-size: 11px; margin: 2px 3px 0 0; }
.grafik-radar { width: 100%; max-width: 230px; display: block; margin: 0 auto; }
.rd-halka { fill: none; stroke: #e5eaf2; stroke-width: 1; }
.rd-eksen { stroke: #e5eaf2; stroke-width: 1; }
.rd-alan { fill: rgba(96,150,213,.28); stroke: var(--blue-d); stroke-width: 2; }
.rd-nokta { fill: var(--blue-d); }
.rd-nokta.s1 { fill: var(--s1); } .rd-nokta.s2 { fill: var(--s2); }
.rd-nokta.s3 { fill: var(--s3); } .rd-nokta.s4 { fill: var(--s4); }
.rd-nokta.s5 { fill: var(--s5); }
.rd-etiket { font-size: 10px; fill: var(--muted); font-weight: 700; }
.radar-sarma { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; }
.radar-tablo { flex: 1; min-width: 190px; font-size: 12.5px; }
.grafik-trend { width: 100%; height: auto; }
.tr-izgara { stroke: #eef2f7; stroke-width: 1; }
.tr-eksen { font-size: 9px; fill: var(--muted); }
.tr-cizgi { fill: none; stroke: var(--blue-d); stroke-width: 2.5; stroke-linejoin: round; }
.tr-nokta { fill: #fff; stroke: var(--blue-d); stroke-width: 2; }
.trafik { display: inline-flex; flex-direction: column; gap: 2px; padding: 3px; border-radius: 4px;
  background: #2b3648; }
.tf-isik { width: 9px; height: 9px; border-radius: 50%; background: #4a5568; display: block; }
.tf-isik.yanik.kirmizi { background: #ff4d5e; box-shadow: 0 0 5px #ff4d5e; }
.tf-isik.yanik.sari { background: #ffc247; box-shadow: 0 0 5px #ffc247; }
.tf-isik.yanik.yesil { background: #3ddc84; box-shadow: 0 0 5px #3ddc84; }
.pareto-tablo { font-size: 12.5px; }
.pareto-tablo td { padding: 6px 8px; border-bottom: 1px solid #f2f5f9; }
.pt-metin { max-width: 320px; }
.pt-bar { width: 34%; }
.isi-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(126px, 1fr)); gap: 8px; }
.isi-kutu { display: flex; align-items: center; gap: 8px; border: 1px solid var(--line);
  border-radius: 8px; padding: 8px 10px; background: #fff; color: var(--ink); }
.isi-kutu:hover { text-decoration: none; box-shadow: 0 3px 10px rgba(17,39,64,.1); }
.isi { display: inline-flex; align-items: center; justify-content: center; min-width: 34px;
  height: 28px; border-radius: 6px; font-weight: 800; font-size: 13px; }
.i-iyi { background: #d8f0e3; color: #14663f; }
.i-orta { background: #fbf1de; color: #8a5d10; }
.i-zayif { background: #fde3d5; color: #a44a19; }
.i-kotu { background: #fbd7dc; color: #a02c3c; }
.i-yok { background: #eef1f5; color: #9aa5b5; }
.ik-ad { font-size: 11.5px; line-height: 1.25; }
.pano-sekme { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 16px; }

/* ---- Yönetişim katmanı: üç kavramlı kart ---- */
.yk-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
  gap: 12px; margin-bottom: 18px; }
.yk-kart { background: var(--card); border: 1px solid var(--line); border-radius: 11px;
  padding: 13px 15px; box-shadow: var(--shadow); border-left: 4px solid var(--line); }
.yk-kart.risk-sari { border-left-color: var(--amber); }
.yk-kart.risk-kirmizi { border-left-color: var(--red); }
.yk-kart.risk-yesil { border-left-color: var(--green); }
.yk-buyuk .yk-kart { border-left-width: 6px; margin-bottom: 18px; }
.yk-ust { display: flex; align-items: baseline; gap: 8px; margin-bottom: 10px; flex-wrap: wrap; }
.yk-ad { font-size: 15px; font-weight: 800; color: var(--navy); }
.yk-uclu { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.yk-olcut { background: #f7f9fc; border-radius: 8px; padding: 8px 9px; text-align: center; }
.yo-etiket { display: block; font-size: 9.5px; text-transform: uppercase; letter-spacing: .05em;
  color: var(--muted); font-weight: 800; }
.yo-deger { display: block; font-size: 21px; font-weight: 800; line-height: 1.15; color: var(--navy); }
.yo-deger.iyi { color: var(--green); } .yo-deger.orta { color: var(--amber); }
.yo-deger.kotu { color: var(--red); }
.yo-sancak { display: block; padding: 3px 0; }
.yo-alt { display: block; font-size: 9.5px; color: var(--muted); margin-top: 2px; line-height: 1.25; }
.yk-alt { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; padding-top: 9px;
  border-top: 1px solid #f0f3f8; font-size: 11.5px; }
.yk-hedef { color: var(--blue-d); font-weight: 600; }
.yk-engel { color: #a02c3c; }
.yk-risk { margin-left: auto; font-weight: 700; }
.yk-risk.r-sari { color: #8a5d10; } .yk-risk.r-kirmizi { color: var(--red); }
.yk-risk.r-yesil { color: var(--green); }

/* Olgunluk */
.olgunluk-serit { display: grid; grid-template-columns: repeat(6, 1fr); gap: 6px;
  margin-bottom: 18px; }
.ol-adim { background: #f4f7fb; border: 1px solid var(--line); border-radius: 9px;
  padding: 11px 10px; text-align: center; opacity: .5; }
.ol-adim.aktif { opacity: 1; background: #fff; }
.ol-adim.simdiki { border-color: var(--blue); box-shadow: 0 0 0 2px rgba(96,150,213,.2); }
.ol-ikon { font-size: 20px; }
.ol-no { font-size: 9.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--muted);
  font-weight: 800; }
.ol-ad { font-size: 13px; font-weight: 800; color: var(--navy); }
.ol-aciklama { font-size: 10.5px; color: var(--muted); margin-top: 4px; line-height: 1.3; }
@media (max-width: 900px) { .olgunluk-serit { grid-template-columns: repeat(2, 1fr); }
  .yk-uclu { grid-template-columns: 1fr; } }

/* Tekrar analizi */
.tekrar-kart { border-left: 4px solid var(--amber); }
.tk-ust { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 6px; }
.tk-sayi { margin-left: auto; background: #fdecea; color: var(--red); border-radius: 999px;
  padding: 2px 10px; font-size: 12px; font-weight: 800; }
.tk-metin { font-size: 13.5px; color: var(--ink); }
.tk-oneri { margin-top: 7px; background: var(--pale); border-radius: 8px; padding: 8px 11px;
  font-size: 12.5px; color: var(--blue-d); }
.tk-alt { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-top: 9px;
  padding-top: 8px; border-top: 1px solid #f0f3f8; }
.tekrar-satir { padding: 7px 0; border-bottom: 1px solid #f2f5f9; font-size: 13px; }
.risk-liste { font-size: 12.5px; color: #33415a; padding-left: 20px; margin: 6px 0; }

/* Best practice & ödüller */
.bp-kart { border-left: 4px solid var(--green); }
.bp-ust { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 10px; }
.bp-ad { font-size: 16px; font-weight: 800; color: var(--navy); }
.bp-ba { display: flex; gap: 4px; }
.bp-ba img { width: 68px; height: 50px; object-fit: cover; border-radius: 5px;
  border: 1px solid var(--line); }
.odul-izgara { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 12px; margin-bottom: 18px; }
.odul-kart { text-align: center; border-top: 3px solid var(--amber); }
.od-ikon { font-size: 34px; line-height: 1; }
.od-ad { font-size: 14px; font-weight: 800; color: var(--navy); margin: 5px 0; }
.od-kazanan { font-size: 15px; font-weight: 700; }
.od-kazanan .etiket { font-size: 11.5px; margin: 2px; }
.od-deger { font-size: 12.5px; color: var(--blue-d); font-weight: 700; margin-top: 4px; }
.od-aciklama { font-size: 11px; color: var(--muted); margin-top: 6px; }

/* ---- AI önerileri ---- */
.medya-sarma { display: flex; flex-direction: column; gap: 4px; align-items: center; }
.ai-btn { border-color: #cfc4ef; color: #5b4ea8; background: #f6f4fd; font-size: 11px;
  min-height: 30px; padding: 0 9px; }
.ai-btn:hover { background: #ece7fa; }
.ai-oneri-kutu { margin-top: 10px; border: 1px solid #d9d1f5; background: #faf9ff;
  border-radius: 9px; padding: 10px 12px; }
.ao-bas { font-size: 12px; font-weight: 800; color: #5b4ea8; margin-bottom: 6px; }
.ao-satir { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 6px 0;
  border-bottom: 1px solid #eee9fb; font-size: 12.5px; }
.ao-satir:last-child { border-bottom: none; }
.ao-satir.karar-red { opacity: .5; }
.ao-metin { flex: 1; min-width: 200px; }
.ao-guven { font-size: 10.5px; border-radius: 4px; padding: 1px 7px; }
.ao-guven.g-yuksek { background: #e3f4ec; color: #1c7a4f; }
.ao-guven.g-orta { background: #fbf1de; color: #8a5d10; }
.ao-guven.g-dusuk { background: #eef1f5; color: #6a7484; }
.ai-soru { border: 1px solid var(--line); border-radius: 10px; padding: 12px 14px;
  margin-bottom: 10px; background: #fff; }
.ais-ust { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; cursor: pointer; }
.ais-ust input[type=checkbox] { width: 18px; height: 18px; }
.ais-metin { flex: 1; font-weight: 700; font-size: 13.5px; }
.ais-gerekce { font-size: 11.5px; color: #5b4ea8; background: #f6f4fd; border-radius: 6px;
  padding: 5px 9px; margin-bottom: 8px; }

/* ============================================================ Projeler & proje sayfası */
.sidebar a.sb-proje{display:block;margin:10px 8px 14px;padding:10px 12px;border-radius:10px;
  background:linear-gradient(180deg,#1f3a5f,#18314f);border:1px solid #2f5480;text-decoration:none}
.sidebar a.sb-proje:hover{border-color:#4a7db5;background:linear-gradient(180deg,#254670,#1b3a5c)}
.sidebar a.sb-proje.active{border-color:#7fb1e8;box-shadow:0 0 0 1px rgba(127,177,232,.35) inset}
.sb-proje .sp-et{display:block;font-size:9.5px;letter-spacing:.12em;color:#8fb6de;font-weight:700}
.sb-proje .sp-ad{display:block;font-size:14px;font-weight:700;color:#eaf2fb;margin:2px 0 1px;line-height:1.25}
.sb-proje .sp-not{display:block;font-size:10.5px;color:#8fb6de}

.cs-yol{font-size:13px}
.cs-yol a{color:#2f5480;text-decoration:none;font-weight:600}
.cs-yol a:hover{text-decoration:underline}
.cs-yol .cs-proje{color:#123a63}

.proje-liste{display:flex;flex-direction:column;gap:10px;margin:18px 0 26px}
.proje-satir{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid #dbe4ee;
  border-radius:12px;background:#fff;text-decoration:none;color:inherit;transition:.15s}
.proje-satir:hover{border-color:#8fb1d8;box-shadow:0 3px 12px rgba(20,50,90,.09);transform:translateY(-1px)}
.proje-satir.aktif{border-color:#2f7d4f;background:#f6fdf8}
.proje-satir.ornek{background:#fffdf5}
.proje-satir.ornek.aktif{background:#f9fdf7}
.ps-ikon{font-size:26px;flex:0 0 auto}
.ps-govde{flex:1;min-width:0}
.ps-ad{display:block;font-size:16px;font-weight:700;color:#12314f}
.ps-ad .badge{margin-left:6px;vertical-align:middle}
.ps-ack{display:block;font-size:12.5px;color:#61728a;margin:2px 0 6px}
.ps-sayilar{display:flex;flex-wrap:wrap;gap:6px}
.ps-sayilar span{font-size:11.5px;background:#f1f5fa;border:1px solid #e0e8f2;border-radius:20px;
  padding:2px 9px;color:#4a5b73}
.ps-sayilar span.uyari{background:#fff4e8;border-color:#f3d3ae;color:#8a4f14}
.ps-sayilar span.iyi{background:#eefaf1;border-color:#c4e6cf;color:#1f6b41}
.ps-git{flex:0 0 auto;font-weight:700;color:#2f5480;font-size:13px}
.yeni-proje .satir-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.yeni-proje .satir-form label{display:flex;flex-direction:column;font-size:12px;font-weight:600;
  color:#4a5b73;gap:4px;min-width:200px}
.yeni-proje .satir-form label.genis{flex:1;min-width:260px}
.yeni-proje .satir-form label.onay{flex-direction:row;align-items:center;gap:6px;font-weight:500}

.proje-head{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:flex-start;
  padding:18px 20px;border-radius:14px;border:1px solid #dbe4ee;background:#fff;margin-bottom:14px}
.proje-head.ornek{background:linear-gradient(135deg,#fffdf4,#fff);border-color:#ecdcb4}
.ph-et{font-size:10px;letter-spacing:.12em;font-weight:800;color:#7a8ba3}
.proje-head h1{margin:2px 0 4px;font-size:26px}
.ph-alt{display:flex;flex-wrap:wrap;gap:12px;font-size:12.5px;color:#61728a}
.ph-kpi{display:flex;gap:10px;flex-wrap:wrap}
.phk{min-width:118px;padding:10px 12px;border:1px solid #e2e9f2;border-radius:10px;background:#f9fbfd}
.phk-ad{font-size:11px;font-weight:700;color:#5b6c85}
.phk-deg{font-size:26px;font-weight:800;color:#123a63;line-height:1.15}
.phk-deg small{font-size:12px;font-weight:600;color:#8d9cb2}
.phk-not{font-size:10.5px;color:#8593a8}
.phk.olg{background:#f4f8ff;border-color:#cfe0f5}

.proje-next{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:11px 16px;
  border:1px dashed #b9cde4;border-radius:10px;background:#f4f9ff;margin-bottom:16px}
.pn-et{font-size:10px;letter-spacing:.1em;font-weight:800;color:#3c6598}
.pn-metin{flex:1;font-size:13.5px;color:#25405f}

.proje-grup{margin:24px 0}
.proje-grup h2{font-size:17px;margin:0 0 2px}
.pg-ozet{font-size:12.5px;color:#71809a;margin:0 0 10px}
.modul-butonlar{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.modul-butonlar.kucuk{grid-template-columns:repeat(auto-fill,minmax(215px,1fr))}
.modul-btn{position:relative;display:block;padding:13px 14px 12px;border:1px solid #dbe4ee;
  border-radius:11px;background:#fff;text-decoration:none;color:inherit;transition:.15s}
.modul-btn:hover{border-color:#7fa6d4;box-shadow:0 4px 14px rgba(20,50,90,.1);transform:translateY(-2px)}
.modul-btn.taslak{background:#fafbfc;border-style:dashed}
.mb-no{position:absolute;top:10px;right:12px;font-size:10.5px;font-weight:800;color:#a7b6ca}
.mb-ikon{font-size:20px;display:block;line-height:1.1}
.mb-ad{display:block;font-size:14px;font-weight:700;color:#12314f;margin:5px 0 3px;padding-right:26px}
.mb-ozet{display:block;font-size:11.5px;color:#6e7d96;line-height:1.45}
.mb-rozet{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.mbr{font-size:10.5px;border-radius:20px;padding:2px 8px;border:1px solid #e0e8f2;background:#f4f7fb;color:#7c8aa0}
.mbr.dolu{background:#eef5ff;border-color:#c9dcf5;color:#2b5486;font-weight:600}
.mbr.taslak{background:#f6f2ea;border-color:#e6dac2;color:#8a7440}
.proje-alt-islem{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 8px;padding-top:14px;
  border-top:1px solid #e6ecf3}
.panel-projeler{margin:18px 0 8px}
.pp-bas{display:flex;align-items:center;gap:12px}
.pp-bas h2{margin:0}
.pp-kartlar{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:8px}
.pp-kart{display:block;padding:12px 14px;border:1px solid #dbe4ee;border-radius:11px;background:#fff;
  text-decoration:none;color:inherit;transition:.15s}
.pp-kart:hover{border-color:#7fa6d4;transform:translateY(-2px);box-shadow:0 4px 14px rgba(20,50,90,.1)}
.pp-kart.aktif{border-color:#2f7d4f;background:#f7fdf9}
.ppk-ust{display:block;font-size:15px;font-weight:700;color:#12314f}
.ppk-ad{margin-left:2px}
.ppk-sayilar{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.ppk-sayilar span{font-size:11px;background:#f1f5fa;border:1px solid #e0e8f2;border-radius:20px;
  padding:2px 8px;color:#4a5b73}
.ps-sil{margin:-6px 0 4px auto;padding-right:4px}
/* sadeleşmiş sidebar: modüller ve araçlar katlanır listede */
.nav-fold.moduller{margin:2px 8px 6px}
.nav-fold > summary{cursor:pointer;list-style:none;padding:8px 12px;margin:2px 8px;border-radius:8px;
  font-size:12.5px;font-weight:700;color:#b8cde4;background:rgba(255,255,255,.04)}
.nav-fold > summary::-webkit-details-marker{display:none}
.nav-fold > summary::after{content:'▾';float:right;opacity:.6;transition:.15s}
.nav-fold[open] > summary::after{transform:rotate(180deg)}
.nav-fold > summary:hover{background:rgba(255,255,255,.09);color:#eaf2fb}
.nf-say{font-size:10px;font-weight:600;opacity:.6;margin-left:4px}
.sidebar .nav-alt .m-no{display:inline-block;min-width:16px;font-size:9.5px;font-weight:800;
  opacity:.55;margin-right:3px}

/* Firmalar & Projeler — normas satır düzeni */
.yeni-proje-fold{margin:14px 0 6px}
.yeni-proje-fold > summary{cursor:pointer;list-style:none;display:inline-block;padding:9px 16px;
  border-radius:9px;background:#eef5ff;border:1px solid #c9dcf5;color:#23507f;font-weight:700;
  font-size:14px}
.yeni-proje-fold > summary::-webkit-details-marker{display:none}
.yeni-proje-fold > summary:hover{background:#e2eeff;border-color:#9dc2ec}
.yeni-proje-fold[open] > summary{margin-bottom:8px}
.yeni-proje-fold .satir-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.yeni-proje-fold .satir-form label{display:flex;flex-direction:column;font-size:12px;
  font-weight:600;color:#4a5b73;gap:4px;min-width:200px}
.yeni-proje-fold .satir-form label.genis{flex:1;min-width:240px}
.yeni-proje-fold .satir-form label.onay{flex-direction:row;align-items:center;gap:6px;font-weight:500}
.proje-kpi{margin:14px 0 10px}
.firma-tablo{width:100%;border-collapse:collapse;font-size:13.5px}
.firma-tablo th{text-align:left;font-size:11px;letter-spacing:.06em;text-transform:uppercase;
  color:#7a8ba3;padding:10px 12px;border-bottom:1px solid #e6ecf3;background:#fafcfe}
.firma-tablo td{padding:11px 12px;border-bottom:1px solid #eef2f7;vertical-align:middle}
.firma-tablo tr:last-child td{border-bottom:none}
.firma-satir:hover{background:#f7fafd}
.firma-satir.aktif{background:#f6fdf8}
.firma-satir a{color:#12314f;text-decoration:none}
.firma-satir a:hover{text-decoration:underline}
.firma-tablo td.num{text-align:right;font-variant-numeric:tabular-nums}
.firma-tablo td.num.uyari{color:#b3261e;font-weight:700}
.firma-tablo td.right{text-align:right}
.firma-tablo td.nowrap{white-space:nowrap}
.faz-ilerleme{display:flex;gap:4px;margin-bottom:3px}
.faz-nokta{width:13px;height:13px;border-radius:50%;background:#e3e9f1;border:1px solid #d2dbe6;
  display:inline-block}
.faz-nokta.tamam{background:#3f8f5f;border-color:#357a51}
.pn-ilerleme{display:flex;align-items:center;gap:4px}
.pn-ilerleme .faz-nokta{width:11px;height:11px}
.pn-say{font-size:11px;color:#5b6c85;font-weight:700;margin-left:4px}

/* Şirket künyesi */
.kunye-form .kf-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));
  gap:14px}
.kunye-form label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;
  color:#4a5b73}
.kunye-form label.genis{grid-column:1/-1}
.kunye-form .ipucu{font-size:11px;font-weight:500;color:#8593a8}
.kunye-form .zorunlu{color:#b3261e}
.kunye-uyari{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;
  border:1px solid #f0d3a8;background:#fff8ed;border-radius:10px;margin-bottom:14px;
  font-size:13.5px;color:#7a4e13}
.ph-duzenle{font-size:12px;font-weight:700;color:#2f5480;text-decoration:none;
  border-bottom:1px dashed #9dc2ec}
.ph-duzenle:hover{color:#123a63}
.kunye-eksik{display:inline-block;margin-top:3px;font-size:11.5px;color:#8a4f14;
  background:#fff4e8;border:1px solid #f3d3ae;border-radius:20px;padding:1px 9px;
  text-decoration:none}
.kunye-eksik:hover{background:#ffe9d2}
/* Panel başlığındaki iki renkli marka */
.marka-5s{color:var(--g-cyan)}
.marka-suite{color:var(--g-navy);font-weight:600;letter-spacing:2px}

/* Geçici parola kartı — yönetici kişiye iletsin diye kalıcı gösterilir */
.parola-kutu{border:1px solid #bcdcc6;background:#f3fbf5;border-radius:11px;padding:14px 16px;
  margin:14px 0 18px}
.pk-bas{font-weight:800;color:#1f6b41;font-size:15px}
.pk-not{font-size:12.5px;color:#4a6b57;margin:3px 0 10px}
.pk-kutu{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}
.pk-kutu > div{background:#fff;border:1px solid #d6e7dc;border-radius:8px;padding:7px 11px}
.pk-et{display:block;font-size:10px;letter-spacing:.08em;color:#7c9187;font-weight:700}
.pk-kutu code{font-size:14px;color:#123a63;font-weight:700}
.pk-kutu code.pk-pw{font-size:17px;letter-spacing:1px;color:#1f6b41}
.pk-metin{width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;
  border:1px solid #d6e7dc;border-radius:8px;padding:9px 11px;background:#fff;color:#33415a;
  resize:vertical;margin-bottom:8px}

/* ============================================================ Sektör modeli */
.sektor-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:10px;
  margin:10px 0 18px}
.sektor-izgara.sik{grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:8px}
.sektor-kart{position:relative;display:block;padding:12px 13px;border:1px solid #dbe4ee;
  border-radius:11px;background:#fff;cursor:pointer;transition:.15s;text-decoration:none;
  color:inherit}
.sektor-kart:hover{border-color:#7fa6d4;box-shadow:0 3px 12px rgba(20,50,90,.09)}
.sektor-kart input{position:absolute;top:11px;right:11px;width:16px;height:16px;margin:0;
  accent-color:#2b61a1;z-index:2}
.sektor-kart:has(input:checked),.sektor-kart.secili{border-color:#2b61a1;background:#f4f9ff;
  box-shadow:0 0 0 1px #2b61a1 inset}
/* Başlık satırı sağ üstteki seçim dairesinin altına GİRMESİN: yeri flex kutusunda
   ayrılır (span'a padding vermek çok satırlı başlıkta ilk satırı korumaz). */
.sk-ust{display:flex;align-items:flex-start;gap:8px;padding-right:26px;min-height:22px}
.sk-ikon{font-size:20px}
.sk-ad{font-size:14px;font-weight:700;color:#12314f;line-height:1.25}
.sk-ozet{display:block;font-size:11.5px;color:#6e7d96;line-height:1.45;margin:5px 0 7px}
.sk-sayilar{display:flex;flex-wrap:wrap;gap:4px}
.sk-sayilar span{font-size:10.5px;background:#f1f5fa;border:1px solid #e0e8f2;border-radius:20px;
  padding:1px 8px;color:#5b6c85}
.adim-baslik{display:flex;align-items:flex-start;gap:9px;margin:14px 0 6px;font-size:13.5px;
  color:#33415a}
.ab-no{flex:0 0 auto;width:22px;height:22px;border-radius:50%;background:#2b61a1;color:#fff;
  font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center}
.mevcut-sektor{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:11px;
  border:1px solid #cfe0f5;background:#f4f9ff;margin-bottom:14px}
.mevcut-sektor .ms-ikon{font-size:26px}
.ms-govde{flex:1;display:flex;flex-direction:column}
.sektor-etiket{background:#eef5ff;border:1px solid #c9dcf5;border-radius:20px;padding:1px 9px;
  color:#2b5486;font-weight:600;font-size:11.5px}
.sektor-detay{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.sektor-detay section{background:#fff;border:1px solid #e6ecf3;border-radius:11px;padding:14px 16px}
.sektor-detay section.genis{grid-column:1/-1}
.sektor-detay h3{margin:0 0 2px;font-size:14px}
.sd-liste{margin:8px 0 0;padding-left:18px}
.sd-liste li{margin-bottom:6px;font-size:13px;color:#33415a}
.sd-rozetler{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.sd-rozet{font-size:11.5px;background:#f4f7fb;border:1px solid #e0e8f2;border-radius:20px;
  padding:2px 9px;color:#4a5b73}
.kritik-not{font-size:13px;color:#8a2f22;background:#fdf3f1;border:1px solid #f0cfc8;
  border-radius:8px;padding:9px 11px;margin:8px 0 0}
.soru-tablo td{vertical-align:top}
.soru-tablo tr.kritik-satir{background:#fdf7f6}
.uyari-kutu .onay{display:block;margin-top:8px;font-weight:600}
.sektor-uyari{border-color:#c9dcf5;background:#f4f9ff;color:#23507f}
.so-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}
.so-kutu{background:#fff;border:1px solid #e6ecf3;border-radius:11px;padding:13px 15px}
.so-kutu h3{margin:0 0 6px;font-size:13.5px}
.so-kutu ul{margin:0;padding-left:17px}
.so-kutu li{font-size:12.5px;color:#4a5b73;margin-bottom:5px}
.salt-okunur{background:#f4f7fb;color:#5b6c85}

/* Sayfa gezinmesi: Geri Dön + Sonraki Adım (üstte ve altta aynı ikili) */
.gezinme{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.alt-gezinme{margin:26px 0 4px;padding-top:16px;border-top:1px solid #e6ecf3}
.sonraki-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 15px;border-radius:8px;
  border:1px solid #2b61a1;background:#2b61a1;color:#fff;font-size:13px;font-weight:700;
  text-decoration:none;transition:.15s}
.sonraki-btn:hover{background:#23507f;border-color:#23507f;text-decoration:none;color:#fff;
  transform:translateY(-1px)}
@media (max-width:600px){
  .sonraki-btn{font-size:12px;padding:6px 11px}
}

/* ============================================================ AI katmanı */
.ai-kapali{border:1px solid #f0d3a8;background:#fff8ed;border-radius:10px;padding:11px 15px;
  margin:12px 0;font-size:13.5px;color:#7a4e13}
.ai-kartlar{display:flex;flex-direction:column;gap:16px;margin-top:14px}
.ai-kart{background:#fff;border:1px solid #e6ecf3;border-radius:12px;padding:16px 18px}
.ai-kart h2{margin:0 0 4px;font-size:17px}
.ai-sonuc{margin-top:12px;border-top:1px dashed #dbe4ee;padding-top:12px}
.ai-meta{font-size:11px;color:#8593a8;margin-bottom:6px}
.ai-manset{font-size:15px;font-weight:700;color:#123a63}
.ai-genel{font-style:italic;color:#4a5b73}
.ai-ikili{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;
  margin:10px 0}
.ai-ikili h4{margin:0 0 4px;font-size:13px}
.ai-ikili ul{margin:0;padding-left:18px}
.ai-ikili li{font-size:12.5px;margin-bottom:4px;color:#4a5b73}
.tema-kume{border:1px solid #e6ecf3;border-radius:10px;padding:11px 13px;margin-bottom:9px;
  background:#fafcfe}
.tk-bas{font-weight:700;color:#12314f;margin-bottom:4px}
.tk-neden,.tk-kaldirac{font-size:12.5px;color:#4a5b73;margin-bottom:3px}
.sor-form textarea{width:100%;margin:6px 0 10px}
.sor-cevap .sor-metin{font-size:15px;line-height:1.6}
.uyari-satir{color:#8a4f14;background:#fff4e8;border:1px solid #f3d3ae;border-radius:8px;
  padding:8px 11px;font-size:13px}
.tahmin-aciklama{background:#f4f8ff;border:1px solid #cfe0f5;border-radius:10px;
  padding:11px 14px;font-size:12.5px;color:#25405f;margin:12px 0}

/* Kullanım kılavuzu */
.sidebar a.sb-kilavuz{margin:8px 8px 4px;background:rgba(255,255,255,.07);border-radius:8px;
  font-weight:700}
.kilavuz-icindekiler{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 20px}
.kilavuz-icindekiler a{font-size:12.5px;background:#eef5ff;border:1px solid #c9dcf5;
  border-radius:20px;padding:4px 12px;color:#2b5486;font-weight:600;text-decoration:none}
.kilavuz-icindekiler a:hover{background:#dfeaff;text-decoration:none}
.guru-kutu{border-color:#c9dcf5;background:linear-gradient(180deg,#f7fbff,#fff)}
.guru-kutu textarea{width:100%;margin:6px 0 10px}
.guru-cevap{margin-top:12px;border-top:1px dashed #cfe0f5;padding-top:12px;font-size:14px}
.guru-adim{margin:8px 0;padding-left:20px}
.guru-adim li{margin-bottom:5px}
.guru-modul{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:8px;
  font-size:12px;color:#5b6c85}
.guru-gecmis{margin-top:10px;font-size:12.5px}
.kilavuz-adimlar{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:12px}
.kadim{display:flex;gap:10px;background:#fff;border:1px solid #e6ecf3;border-radius:11px;
  padding:12px 14px}
.ka-no{flex:0 0 auto;width:26px;height:26px;border-radius:50%;background:#2b61a1;color:#fff;
  font-weight:800;display:flex;align-items:center;justify-content:center;font-size:13px}
.ka-nasil{font-size:12.5px;color:#4a5b73;margin:3px 0}
.ka-cikti{font-size:12px;color:#1f6b41;font-weight:600}
.amac-izgara{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
.amac-kart{background:#fff;border:1px solid #e6ecf3;border-radius:11px;padding:13px 15px}
.amac-kart h3{margin:0 0 6px;font-size:14px;color:#12314f}
.amac-kart ol{margin:0 0 8px;padding-left:18px}
.amac-kart li{font-size:12.5px;color:#4a5b73;margin-bottom:4px}
.amac-modul{display:flex;gap:5px;flex-wrap:wrap}
.kmodul{background:#fff;border:1px solid #e6ecf3;border-radius:12px;padding:15px 17px;
  margin-bottom:12px}
.km-bas{display:flex;align-items:center;gap:10px}
.km-bas h3{margin:0;font-size:16px}
.km-no{background:#123a63;color:#fff;font-weight:800;font-size:12px;border-radius:7px;
  padding:3px 9px}
.km-amac{color:#4a5b73;font-size:13.5px;margin:6px 0 10px}
.km-izgara{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.km-izgara h4{margin:0 0 4px;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
  color:#7a8ba3}
.km-izgara ul{margin:0;padding-left:17px}
.km-izgara li{font-size:12.5px;color:#33415a;margin-bottom:3px}
.km-ipucu{margin:11px 0 0;font-size:12.5px;color:#7a4e13;background:#fff8ed;
  border:1px solid #f0d3a8;border-radius:8px;padding:8px 11px}
.onay-satir{flex-direction:row !important;align-items:flex-start;gap:8px}
.kalite-puan{display:flex;align-items:baseline;gap:6px;margin:6px 0 10px}
.kp-deger{font-size:34px;font-weight:800;color:#123a63}
.kp-alt{font-size:13px;color:#7a8ba3;font-weight:600}
.kalite-puan.seviye-zayif .kp-deger{color:#b3261e}
.kalite-puan.seviye-orta .kp-deger{color:#b3771e}
.kalite-puan.seviye-iyi .kp-deger{color:#2b61a1}
.kalite-puan.seviye-guclu .kp-deger{color:#1f6b41}
.kalite-bar{margin-bottom:10px}
.kb-satir{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:12px}
.kb-ad{width:110px;color:#5b6c85;font-weight:600}
.kb-cubuk{flex:1;height:8px;background:#eef2f7;border-radius:20px;overflow:hidden}
.kb-cubuk span{display:block;height:100%;background:#2b61a1}
.kb-puan{width:48px;text-align:right;color:#5b6c85}
.ai-kalite-kart{border-color:#cfe0f5}
.ai-benzer{border-color:#cfe0f5}
/* Proje sayfasındaki iki ana pano butonu */
.proje-panolar{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;
  margin:16px 0 6px}
.pano-btn{display:flex;align-items:center;gap:13px;padding:14px 16px;border-radius:12px;
  border:1px solid #cfe0f5;background:linear-gradient(135deg,#f4f9ff,#fff);
  text-decoration:none;color:inherit;transition:.15s}
.pano-btn:hover{border-color:#7fa6d4;box-shadow:0 4px 14px rgba(20,50,90,.1);
  transform:translateY(-2px);text-decoration:none}
.pb-ikon{font-size:26px;flex:0 0 auto}
.pb-ad{display:block;font-size:16px;font-weight:700;color:#12314f}
.pb-ozet{display:block;font-size:12px;color:#6e7d96;line-height:1.45;margin-top:2px}

/* Organizasyon: sıra rehberi ve ilk kayıt */
.yan-ekranlar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px}
.ye-etiket{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#8593a8;
  font-weight:700;margin-right:2px}
.ye-btn{display:inline-flex;flex-direction:column;padding:7px 13px;border:1px solid #dbe4ee;
  border-radius:9px;background:#fff;text-decoration:none;color:#12314f;font-size:13px;
  line-height:1.3;transition:.15s}
.ye-btn:hover{border-color:#7fa6d4;text-decoration:none;transform:translateY(-1px)}
.ye-btn span{font-size:11px;color:#7a8ba3;font-weight:500}
.sira-rehberi{border:1px solid #cfe0f5;background:#f7fbff;border-radius:12px;padding:14px 16px;
  margin-bottom:14px}
.sr-bas{font-weight:800;color:#123a63;margin-bottom:9px}
.sr-adimlar{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.sr-adim{display:flex;gap:9px;background:#fff;border:1px solid #e2ebf5;border-radius:10px;
  padding:10px 12px}
.sr-adim.tamam{background:#f4fbf6;border-color:#c4e6cf}
.sr-no{flex:0 0 auto;width:23px;height:23px;border-radius:50%;background:#2b61a1;color:#fff;
  font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center}
.sr-adim.tamam .sr-no{background:#2f7d4f}
.sr-govde{display:flex;flex-direction:column}
.sr-govde b{font-size:13.5px;color:#12314f}
.sr-govde span{font-size:11.5px;color:#6e7d96;line-height:1.4}
.sr-bitis{margin-top:10px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  font-size:13px;color:#1f6b41;font-weight:600}
.ilk-kayit{border:1px dashed #b9cde4;background:#fff;border-radius:12px;padding:16px 18px;
  margin-bottom:14px}
.ilk-kayit h3{margin:0 0 4px}
.ilk-kayit p{font-size:13.5px;color:#4a5b73;margin:0 0 10px}
.row .ipucu{display:block;font-size:11px;color:#8593a8;margin-top:3px}
.row .zorunlu{color:#b3261e}
.ye-btn.pasif{opacity:.5;cursor:not-allowed;background:#f4f7fb}
.bos-yonlendirme{display:flex;gap:16px;align-items:flex-start;border:1px dashed #b9cde4;
  background:#f7fbff;border-radius:12px;padding:18px 20px;margin:14px 0}
.by-ikon{font-size:34px;line-height:1}
.bos-yonlendirme h3{margin:0 0 5px}
.bos-yonlendirme p{margin:0 0 11px;font-size:13.5px;color:#4a5b73;max-width:70ch}
.hata-teknik{margin:16px auto 0;max-width:640px;text-align:left;font-size:12.5px}
.hata-teknik pre{background:#f4f7fb;border:1px solid #e0e8f2;border-radius:8px;padding:10px 12px;
  overflow-x:auto;white-space:pre-wrap;color:#8a2f22}
.sistem-admin{border:1px solid #cfe0f5;background:#f7fbff;border-radius:11px;padding:12px 15px;
  margin:12px 0}
.sa-bas{font-weight:800;color:#123a63;margin-bottom:7px}
.sa-liste{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px}
.sa-kisi{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #dbe4ee;
  border-radius:20px;padding:4px 12px;font-size:12.5px}
.sa-kisi code{font-size:11.5px;color:#5b6c85}
.sistem-not{border-left:4px solid var(--g-cyan);background:#f4f9ff;border-radius:8px;
  padding:12px 15px;margin-bottom:14px;font-size:13.5px;color:#25405f}

/* ============================================================ 5S BASIC ekleri
   Aile stili 5SXL'den devralindi; asagisi yalnizca Basic'in kullandigi bilesenler. */
.kart-izgara { display: grid; gap: 14px; grid-template-columns: repeat(auto-fill, minmax(238px, 1fr));
  margin: 10px 0 22px; }
.kart-izgara .card, .kart-izgara .bos-yonlendirme { margin: 0; }
.kart-izgara .bos-yonlendirme { grid-column: 1 / -1; }
.modul-kart { display: block; color: inherit; transition: .15s; }
.modul-kart:hover { text-decoration: none; border-color: var(--pale-line);
  box-shadow: 0 3px 10px rgba(17,39,64,.09); transform: translateY(-1px); }
.modul-kart h3 { font-size: 15px; margin-bottom: 4px; }
.adim-kart { display: block; color: inherit; border-left: 4px solid var(--line); }
.adim-kart:hover { text-decoration: none; box-shadow: 0 3px 10px rgba(17,39,64,.09); }
.adim-kart.s1 { border-left-color: var(--s1); } .adim-kart.s2 { border-left-color: var(--s2); }
.adim-kart.s3 { border-left-color: var(--s3); } .adim-kart.s4 { border-left-color: var(--s4); }
.adim-kart.s5 { border-left-color: var(--s5); }
.adim-kart h3 { font-size: 15px; margin-bottom: 4px; }
.card.sayac { text-align: center; }
.sayac .sy-deg { font-size: 34px; font-weight: 800; color: var(--navy); line-height: 1.1; }
.sayac .sy-ad { color: var(--muted); font-size: 12.5px; margin-bottom: 9px; }
.rozet { display: inline-block; background: var(--pale); color: var(--muted); border: 1px solid var(--line);
  border-radius: 999px; padding: 1px 8px; font-size: 10.5px; font-weight: 700; vertical-align: 2px; }
.rozet.ok { background: #e3f4ec; color: #1c6f47; border-color: #a8dcc0; }
.rozet.oneri { background: #eee9fb; color: #5b45a3; border-color: #cfc3ef; }
.rozet.super { background: var(--navy); color: #fff; border-color: var(--navy); }
.tablo { width: 100%; border-collapse: collapse; }
.tablo th { text-align: left; }
.tablo tr.pasif { opacity: .55; }
.onay { display: flex; align-items: center; gap: 7px; margin: 8px 0 12px; font-size: 13.5px; }
.katlanir { margin-top: 18px; }
.katlanir > summary { cursor: pointer; color: var(--blue-d); font-size: 13.5px; }

/* --- proje sayfasi: sirali adim akisi --- */
.proje-basi { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px;
  flex-wrap: wrap; border-bottom: 1px solid var(--line); padding-bottom: 12px; margin-bottom: 14px; }
.proje-basi h1 { margin: 2px 0 4px; }
.pb-firma { font-size: 12px; color: var(--muted); font-weight: 700; letter-spacing: .3px; }
.pb-yan { display: flex; flex-direction: column; gap: 6px; align-items: flex-end; }
.akis-listesi { list-style: none; margin: 12px 0 24px; padding: 0; display: flex;
  flex-direction: column; gap: 8px; counter-reset: adim; }
.akis-kart { display: flex; align-items: center; gap: 14px; background: var(--card);
  border: 1px solid var(--line); border-left: 4px solid var(--blue); border-radius: var(--radius);
  padding: 12px 14px; box-shadow: var(--shadow); }
.akis-kart.taslak { border-left-color: var(--pale-line); }
.akis-kart.kilitli { opacity: .58; border-left-color: var(--line); background: #fafcfe; }
.ak-no { flex-shrink: 0; width: 30px; height: 30px; border-radius: 50%; background: var(--navy);
  color: #fff; font-weight: 800; font-size: 14px; display: flex; align-items: center;
  justify-content: center; }
.ak-no.buyuk { width: 40px; height: 40px; font-size: 18px; }
.akis-kart.kilitli .ak-no { background: var(--muted); }
.ak-govde { flex: 1; min-width: 0; }
.ak-baslik { font-weight: 700; color: var(--navy); font-size: 14.5px; }
.ak-ozet { color: var(--muted); font-size: 12.8px; margin-top: 2px; }
.ak-sag { flex-shrink: 0; }
.adim-basi { display: flex; gap: 14px; align-items: flex-start; margin-bottom: 14px; }
.adim-basi h1 { margin: 2px 0 4px; }
@media (max-width: 700px) {
  .akis-kart { flex-wrap: wrap; }
  .ak-sag { width: 100%; }
  .ak-sag .btn { width: 100%; justify-content: center; }
}

/* --- adim ekranlari --- */
.yardim { background: linear-gradient(180deg, #f7fbff, #fff); border: 1px dashed #b9cde4;
  border-radius: var(--radius); padding: 12px 15px; margin: 12px 0 18px; font-size: 13px; }
.yardim b { color: var(--navy); }
.yardim ul { margin: 6px 0 0; padding-left: 20px; color: var(--muted); }
.yardim li { margin-bottom: 3px; }
.adim-gezinme { margin-top: 22px; padding-top: 14px; border-top: 1px solid var(--line); }
.ornek-kutu { display: flex; gap: 16px; align-items: center; justify-content: space-between;
  flex-wrap: wrap; background: #eef7f1; border: 1px solid #a8dcc0; border-radius: var(--radius);
  padding: 14px 16px; margin: 12px 0 18px; }
.ornek-kutu p { margin: 4px 0 0; max-width: 70ch; }
.onay-grup { display: flex; flex-wrap: wrap; gap: 4px 18px; }
.onay-grup .onay { margin: 0; }
.rozet.kritik { background: #fbe6e9; color: #a02c3c; border-color: #f0c4cb; }
.skor { font-weight: 800; }
.skor.iyi { color: var(--green); } .skor.orta { color: var(--amber); } .skor.zayif { color: var(--red); }
.skor.buyuk { font-size: 26px; margin-left: 8px; }
.sayac .sy-deg.kotu { color: var(--red); }
.artis { color: var(--green); font-weight: 700; } .azalis { color: var(--red); font-weight: 700; }
tr.geciken { background: #fdf3f4; }
tr.dusuk-puan { background: #fdf7f0; }

/* puanlama satiri */
.soru-satir { display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
  background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 9px 13px; margin-bottom: 6px; }
.sr-metin { flex: 1; min-width: 240px; font-size: 13.5px; }
.sr-puan { display: flex; gap: 3px; }
.sr-not { flex-basis: 220px; padding: 6px 9px; border: 1px solid var(--line); border-radius: 6px;
  font: inherit; font-size: 12.5px; }
.puan-sec { position: relative; }
.puan-sec input { position: absolute; opacity: 0; width: 0; height: 0; }
.puan-sec span { display: flex; align-items: center; justify-content: center; width: 30px;
  height: 30px; border: 1px solid var(--line); border-radius: 7px; cursor: pointer;
  font-weight: 700; font-size: 13px; background: #fff; color: var(--muted); }
.puan-sec input:checked + span { background: var(--blue); border-color: var(--blue); color: #fff; }
.puan-sec.yok span { color: #a9b6c5; }
.yapistir-alt { position: sticky; bottom: 0; background: var(--bg); padding: 12px 0;
  border-top: 1px solid var(--line); margin-top: 10px; }

/* 1S-5S kirilimi */
.kirilim { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  margin: 10px 0 22px; }
.kr-kutu { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 11px 13px; text-align: center; }
.kr-deg { font-size: 22px; font-weight: 800; color: var(--navy); line-height: 1.2; }
.kr-ad { font-size: 11.5px; color: var(--muted); margin-top: 3px; }
.kr-cubuk { height: 7px; background: var(--pale); border-radius: 999px; overflow: hidden;
  margin: 5px 0 2px; }
.kr-cubuk span { display: block; height: 100%; background: var(--blue); border-radius: 999px; }
.kr-cubuk.mini { height: 5px; width: 62px; margin: 3px 0 0; }

/* sancak */
.sancak-kart h3 { font-size: 14.5px; }
.sancak-rozet { display: inline-block; color: #fff; font-weight: 800; border-radius: 999px;
  padding: 4px 13px; font-size: 13px; margin: 4px 0 6px; }
.sancak-rozet.yok { background: var(--pale); color: var(--muted); border: 1px dashed var(--line); }
.sancak-rozet.kucuk { padding: 2px 10px; font-size: 11.5px; }
.kriter-blok { border-top: 1px solid var(--line); margin-top: 8px; padding-top: 6px; }
.kriter-liste { list-style: none; padding: 0; margin: 4px 0 0; font-size: 12.3px; }
.kriter-liste li.tamam { color: var(--green); }
.kriter-liste li.eksik { color: var(--red); }

/* yazdirilabilir raporlar */
body.rapor { background: #fff; padding: 26px 30px; max-width: 950px; margin: 0 auto; }
.rp-ust { display: flex; justify-content: space-between; align-items: flex-start;
  border-bottom: 2px solid var(--navy); padding-bottom: 10px; margin-bottom: 16px; }
.rp-ust h1 { margin: 0; font-size: 22px; }
.rp-logo { width: 130px; height: auto; }
.rp-kpi { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin-bottom: 18px; }
.rp-kpi div { border: 1px solid var(--line); border-radius: 8px; padding: 9px; text-align: center;
  font-size: 11.5px; color: var(--muted); }
.rp-kpi span { display: block; font-size: 22px; font-weight: 800; color: var(--navy); }
.rapor h2 { font-size: 15px; margin: 18px 0 7px; color: var(--navy); }
.rapor .tablo { margin-bottom: 10px; }
.rapor .tablo th, .rapor .tablo td { border: 1px solid var(--line); padding: 5px 8px;
  font-size: 12px; }
.kunye td:nth-child(odd) { background: var(--pale); color: var(--muted); width: 130px; }
.rp-imza { display: flex; gap: 40px; margin-top: 26px; font-size: 12px; }
.rp-alt { margin-top: 20px; border-top: 1px solid var(--line); padding-top: 8px;
  font-size: 11px; color: var(--muted); text-align: center; }
.yazdir-btn { margin-bottom: 14px; }
@media print {
  .yazdir-btn { display: none; }
  body.rapor { padding: 0; }
  h2 { page-break-after: avoid; }
  table { page-break-inside: auto; }
  tr { page-break-inside: avoid; }
  /* Grafikler PDF'te soluk çıkmasın: renk basımı zorlanır, kutular sayfa ortasından bölünmez. */
  body.rapor, body.rapor * { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .radar-kutu, .gelisim-kutu, .rp-kpi, .ai-kutu { page-break-inside: avoid; }
  .radar-satir { page-break-inside: avoid; }
  @page { margin: 12mm 10mm; }
}

/* --- akordeon (proje sayfasi: 10 adim tek sayfada) --- */
.ak-ust { display: flex; align-items: center; gap: 14px; width: 100%; cursor: pointer; }
.akis-kart { flex-direction: column; align-items: stretch; transition: .15s; }
.akis-kart:not(.kilitli) .ak-ust:hover .ak-baslik { color: var(--blue-d); }
.akis-kart.acik { border-left-color: var(--g-cyan); box-shadow: 0 3px 14px rgba(17,39,64,.10); }
.ak-ok { display: inline-block; color: var(--muted); transition: transform .15s; margin-right: 4px; }
.akis-kart.acik .ak-ok { transform: rotate(180deg); }
.ak-sag { display: flex; align-items: center; gap: 6px; }
.ak-icerik { border-top: 1px solid var(--line); margin-top: 12px; padding-top: 12px; }
.ak-icerik h2:first-child { margin-top: 0; }
.ak-yukleniyor { color: var(--muted); font-size: 13px; padding: 10px 0; }

/* --- radar grafik --- */
.radar-satir { display: flex; flex-wrap: wrap; gap: 18px; align-items: flex-start;
  margin: 10px 0 22px; }
.radar-kutu { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 10px 12px; box-shadow: var(--shadow); }
.radar-baslik { font-size: 12.5px; font-weight: 700; color: var(--navy); text-align: center;
  margin-bottom: 2px; }
.radar { display: block; }
.radar-ag { fill: none; stroke: var(--line); stroke-width: 1; }
.radar-eksen { stroke: var(--line); stroke-width: 1; }
.radar-etiket { font-size: 12px; font-weight: 800; fill: var(--navy); }
.radar-etiket-alt { font-size: 8.5px; fill: var(--muted); }
.radar-olcek { font-size: 8.5px; fill: #a9b6c5; }
.radar-seri { fill-opacity: .14; stroke-width: 2; stroke-linejoin: round; }
.radar-lejant { display: flex; flex-wrap: wrap; gap: 4px 12px; justify-content: center;
  margin-top: 6px; font-size: 11px; color: var(--muted); max-width: 380px; }
.radar-lejant i { display: inline-block; width: 9px; height: 9px; border-radius: 2px;
  margin-right: 4px; vertical-align: -1px; }
.kirilim-yan { flex: 1; min-width: 260px; margin: 0; }

/* --- grupas.ai --- */
.ai-nokta { color: var(--g-cyan); }
.btn.ai-btn { background: linear-gradient(135deg, #12324f, #246195); border-color: #12324f;
  color: #fff; }
.btn.ai-btn:hover { background: linear-gradient(135deg, #246195, #059eda); }
.btn.ai-btn[disabled] { opacity: .45; cursor: not-allowed; }
.ai-kutu { background: linear-gradient(180deg, #f4f9fd, #fff); border: 1px solid #bcd6ea;
  border-left: 4px solid var(--g-cyan); border-radius: var(--radius); padding: 13px 16px;
  margin: 10px 0 16px; }
.ai-kutu.uyari { border-left-color: var(--amber); background: linear-gradient(180deg,#fdf8ef,#fff);
  border-color: #ecd7ae; }
.ai-etiket { font-size: 11px; font-weight: 800; letter-spacing: .3px; color: var(--navy);
  text-transform: none; margin-bottom: 6px; }
.ai-metin { white-space: pre-wrap; font-size: 13.2px; line-height: 1.6; }
.ai-kutu h3 { font-size: 13px; margin: 10px 0 3px; color: var(--navy); }
.ai-kutu p, .ai-kutu ul { margin: 3px 0 6px; font-size: 13px; }

/* --- soru seti araclari + kutuphane --- */
.soru-araclar { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  margin: 10px 0 18px; }
.sa-kart { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 12px 14px; box-shadow: var(--shadow); }
.sa-kart.ai { border-left: 3px solid var(--g-cyan); }
.sa-kart h3 { margin: 0 0 4px; font-size: 14px; color: var(--navy); }
.sa-kart p { margin: 0 0 9px; }
.sa-kart input[type=file] { font-size: 11.5px; max-width: 150px; }
.sektor-ozet { background: var(--pale); border: 1px solid var(--pale-line);
  border-radius: var(--radius); padding: 11px 14px; margin: 12px 0 16px; }
.sektor-ozet p { margin: 4px 0 0; }
.kut-liste { display: flex; flex-direction: column; gap: 4px; margin-bottom: 16px; }
.kut-satir { display: flex; gap: 10px; align-items: flex-start; background: var(--card);
  border: 1px solid var(--line); border-radius: 8px; padding: 8px 12px; cursor: pointer;
  font-size: 13.2px; }
.kut-satir:hover { border-color: var(--pale-line); background: #fbfdff; }
.kut-satir.ekli { opacity: .6; cursor: default; }
.kut-satir input { margin-top: 3px; }
.kut-metin { flex: 1; }
.ai-metin { white-space: normal; font-size: 13.2px; line-height: 1.6; }
.ai-metin h4 { font-size: 12.5px; color: var(--navy); margin: 12px 0 3px;
  text-transform: uppercase; letter-spacing: .3px; }
.ai-metin h4:first-child { margin-top: 0; }
.ai-metin p { margin: 0 0 7px; }
.ai-metin ul { margin: 3px 0 9px; padding-left: 20px; }
.ai-metin li { margin-bottom: 3px; }

/* --- yatay bar grafik (radarin yanindaki kesin deger okumasi) --- */
.bar-kutu { background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 12px 15px; box-shadow: var(--shadow); flex: 1; min-width: 280px; }
.bar-liste { display: flex; flex-direction: column; gap: 7px; margin-top: 8px; }
.bar-satir { display: flex; align-items: center; gap: 10px; }
.bar-ad { width: 132px; flex-shrink: 0; font-size: 12.3px; color: var(--ink); }
.bar-ad .s-no { margin-right: 5px; }
.bar-cizgi { position: relative; flex: 1; height: 15px; background: var(--pale);
  border-radius: 4px; overflow: hidden; }
.bar-dolgu { position: absolute; left: 0; top: 0; height: 100%; border-radius: 4px;
  background: var(--blue); transition: width .3s; }
.bar-dolgu.s1 { background: var(--s1); } .bar-dolgu.s2 { background: var(--s2); }
.bar-dolgu.s3 { background: var(--s3); } .bar-dolgu.s4 { background: var(--s4); }
.bar-dolgu.s5 { background: var(--s5); }
.bar-dolgu.iyi { background: var(--green); } .bar-dolgu.orta { background: var(--amber); }
.bar-dolgu.zayif { background: var(--red); }
.bar-esik { position: absolute; top: 0; width: 1px; height: 100%;
  background: rgba(255,255,255,.75); }
.bar-deger { width: 62px; flex-shrink: 0; text-align: right; font-weight: 800;
  font-size: 12.5px; color: var(--navy); }
.bar-deger.iyi { color: var(--green); } .bar-deger.orta { color: var(--amber); }
.bar-deger.zayif { color: var(--red); }
.bar-trend { font-size: 10px; font-weight: 700; margin-left: 3px; }
.bar-not { font-size: 11px; color: var(--muted); margin-top: 9px; }
.ak-icerik[hidden] { display: none; }
@media (max-width: 700px) { .bar-ad { width: 92px; font-size: 11.5px; } }
@media print { .bar-dolgu { print-color-adjust: exact; -webkit-print-color-adjust: exact; } }
.radar-kutu { flex-shrink: 0; max-width: 100%; }
.radar { max-width: 100%; height: auto !important; }
@media (max-width: 640px) { .radar-kutu { width: 100%; } .radar { width: 100% !important; } }

/* --- puanlama olcutu ve rehberi --- */
.olcut-satir { font-size: 11.8px; color: var(--muted); margin-top: 3px;
  border-left: 2px solid var(--pale-line); padding-left: 8px; }
.olcut-satir.eksik { color: var(--red); border-left-color: #f0c4cb; }
.olcut-duzenle > summary { font-size: 11px; color: var(--blue-d); cursor: pointer;
  margin-top: 4px; }
.olcut { display: inline-block; }
.olcut > summary { font-size: 11px; color: var(--blue-d); cursor: pointer; list-style: none; }
.olcut > summary::-webkit-details-marker { display: none; }
.olcut-metin { font-size: 11.8px; color: var(--muted); background: var(--pale);
  border-radius: 6px; padding: 6px 9px; margin-top: 4px; max-width: 460px; }
.puan-rehber { background: var(--card); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 10px 14px; margin-bottom: 16px; }
.puan-rehber > summary { cursor: pointer; font-size: 13.5px; color: var(--navy); }
.rehber-tablo { margin-top: 8px; }
.rehber-tablo td { padding: 3px 8px; font-size: 12.5px; }
.rt-puan { width: 34px; text-align: center; font-weight: 800; color: #fff; border-radius: 6px; }
.rt-puan.p5 { background: #2e9e6b; } .rt-puan.p4 { background: #63ac6b; }
.rt-puan.p3 { background: #d9922b; } .rt-puan.p2 { background: #d97a2b; }
.rt-puan.p1 { background: #d1495b; } .rt-puan.p0 { background: #8f2f3d; }

/* --- denetci kartlari ve karsilastirma --- */
.denetci-kart { border-left: 3px solid var(--amber); }
.denetci-kart.tamam { border-left-color: var(--green); }
.denetci-kart h3 { font-size: 14px; margin: 0 0 2px; }
.dk-skor { font-size: 26px; font-weight: 800; margin: 6px 0 2px; }
.karsilastirma .puan-hucre { text-align: center; font-weight: 700; width: 52px; }
.karsilastirma th { font-size: 11.5px; }

/* --- denetim takvimi matrisi --- */
.takvim-matris th { text-align: center; font-size: 11.5px; padding: 4px 3px; }
.takvim-matris th.bu-ay, .takvim-matris td.bu-ay { background: #eaf3fb; }
.takvim-matris .tm-alan { width: 190px; font-size: 12.5px; }
.tm-hucre { text-align: center; vertical-align: middle; padding: 3px 2px; min-width: 42px; }
.tm-nokta { display: inline-block; min-width: 22px; padding: 1px 4px; margin: 1px;
  border-radius: 5px; font-size: 10.5px; font-weight: 700; color: #fff;
  background: var(--blue); }
.tm-nokta.yapildi { background: var(--green); }
.tm-nokta.kacirildi { background: var(--red); }
.tm-nokta.gecmis { background: var(--amber); }
.satir-ekip > summary { list-style: none; }
.satir-ekip > summary::-webkit-details-marker { display: none; }
.satir-ekip .onay-grup { max-height: 150px; overflow-y: auto; }
.tm-nokta.taslak { background: #a9b6c5; }
.ai-form { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; margin-top: 8px; }
.ai-form .field { margin: 0; min-width: 170px; }
.rotasyon-uyari { background: #fdf3f4; border: 1px solid #f0c4cb; border-radius: 8px;
  padding: 7px 10px; margin-top: 6px; font-size: 11.8px; color: #8a2f3c; }
.rotasyon-uyari .onay { margin: 6px 0 2px; font-weight: 700; }
.onay.rotasyon-dolu { color: var(--red); font-weight: 700; }

/* --- kurulum sirasi rehberi --- */
.kurulum-sira { list-style: none; padding: 0; margin: 8px 0 0; display: flex;
  flex-direction: column; gap: 5px; }
.kurulum-sira li { font-size: 12.8px; color: var(--muted); }
.kurulum-sira li b { color: var(--ink); }
.kurulum-sira li.tamam { color: var(--green); }
.kurulum-sira li.tamam b { color: var(--green); }
.kurulum-sira a { margin-left: 6px; font-size: 12px; }
.seviye-aciklama { display: grid; gap: 6px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  background: var(--pale); border: 1px solid var(--pale-line); border-radius: var(--radius);
  padding: 10px 13px; margin: 10px 0 16px; font-size: 12.3px; color: var(--muted); }
.seviye-aciklama b { color: var(--navy); }
.satir-islem > summary { list-style: none; }
.satir-islem > summary::-webkit-details-marker { display: none; }
.soru-duzenle > summary { list-style: none; display: inline-block; margin-top: 5px; }
.soru-duzenle > summary::-webkit-details-marker { display: none; }

/* --- alan gelisim cubuk grafigi --- */
.gelisim-izgara { display: grid; gap: 14px; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  margin: 10px 0 22px; }
.gelisim-kutu { background: var(--card); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 12px 14px; box-shadow: var(--shadow); }
.gelisim-ust { display: flex; justify-content: space-between; align-items: baseline;
  gap: 10px; margin-bottom: 8px; }
.gelisim-ozet .skor { font-size: 19px; }
.gelisim-cubuklar { position: relative; display: flex; align-items: flex-end; gap: 6px;
  border-bottom: 2px solid var(--line); padding: 0 2px; margin-bottom: 6px; }
.gc-sutun { flex: 1; min-width: 26px; display: flex; flex-direction: column;
  justify-content: flex-end; align-items: center; height: 100%; }
.gc-cubuk { width: 100%; max-width: 40px; border-radius: 4px 4px 0 0; background: var(--blue);
  transition: height .3s; min-height: 3px; }
.gc-cubuk.iyi { background: var(--green); } .gc-cubuk.orta { background: var(--amber); }
.gc-cubuk.zayif { background: var(--red); }
.gc-deger { font-size: 10.5px; font-weight: 800; color: var(--navy); margin-bottom: 2px; }
.gc-etiket { font-size: 9.5px; color: var(--muted); margin-top: 3px; white-space: nowrap; }
.gelisim-hedef { position: absolute; left: 0; right: 0; border-top: 1px dashed var(--muted);
  opacity: .55; }
.gelisim-hedef span { position: absolute; right: 0; top: -13px; font-size: 9.5px;
  color: var(--muted); background: var(--card); padding: 0 3px; }
.gelisim-bos { color: var(--muted); font-size: 12.5px; padding: 14px 0; text-align: center;
  border: 1px dashed var(--line); border-radius: 8px; }
@media print { .gc-cubuk { print-color-adjust: exact; -webkit-print-color-adjust: exact; } }

/* --- proje plani GANTT --- */
.gantt { border: 1px solid var(--line); border-radius: var(--radius); background: var(--card);
  overflow: hidden; box-shadow: var(--shadow); margin: 10px 0 8px; }
.gantt-basi { display: flex; background: var(--pale); border-bottom: 1px solid var(--line);
  font-size: 11px; font-weight: 700; color: var(--navy); }
.gantt-satir { display: flex; border-bottom: 1px solid #eef3f8; min-height: 30px;
  align-items: center; }
.gantt-satir:last-child { border-bottom: 0; }
.gantt-satir.faz { background: #f7fafd; }
.gantt-satir.faz .gt-ad { color: var(--navy); }
.gt-ad { width: 300px; flex-shrink: 0; padding: 5px 10px; font-size: 12.3px;
  border-right: 1px solid var(--line); display: flex; align-items: center; gap: 5px;
  min-height: 30px; }
.gt-gorev { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 210px; }
.gt-serit { position: relative; flex: 1; min-width: 260px; height: 30px; }
.gt-ay { position: absolute; top: 0; height: 100%; border-left: 1px solid var(--line);
  padding: 4px 5px; font-size: 10.5px; color: var(--muted); white-space: nowrap;
  overflow: hidden; }
.gt-cubuk { position: absolute; top: 7px; height: 15px; border-radius: 4px;
  background: var(--blue-l); overflow: hidden; min-width: 4px; }
.gt-cubuk.planlandi { background: #b9d0e8; }
.gt-cubuk.devam { background: var(--blue); }
.gt-cubuk.tamam { background: var(--green); }
.gt-cubuk.gecikmis { background: var(--red); }
.gt-cubuk.faz-cubuk { top: 9px; height: 11px; background: var(--navy); opacity: .35;
  border-radius: 3px; }
.gt-dolgu { position: absolute; left: 0; top: 0; height: 100%;
  background: rgba(255,255,255,.45); }
.gt-yuzde { position: absolute; right: 3px; top: -1px; font-size: 9px; font-weight: 800;
  color: #fff; text-shadow: 0 1px 2px rgba(0,0,0,.35); }
.gt-bugun { position: absolute; top: 0; bottom: 0; width: 2px; background: var(--amber);
  opacity: .75; z-index: 2; }
.gt-kt { color: var(--amber); font-size: 11px; }
.gt-duzenle { margin-left: auto; }
.gt-duzenle > summary { list-style: none; cursor: pointer; color: var(--blue-d);
  font-size: 12px; padding: 0 4px; }
.gt-duzenle > summary::-webkit-details-marker { display: none; }
.gt-form { position: absolute; z-index: 20; margin-top: 4px; min-width: 330px;
  box-shadow: 0 6px 20px rgba(17,39,64,.18); }
.gantt-lejant { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 11px;
  color: var(--muted); margin-bottom: 18px; }
.gantt-lejant i.gl { display: inline-block; width: 11px; height: 9px; border-radius: 2px;
  margin-right: 4px; vertical-align: 0; }
.gl.planlandi { background: #b9d0e8; } .gl.devam { background: var(--blue); }
.gl.tamam { background: var(--green); } .gl.gecikmis { background: var(--red); }
.gl.bugun { background: var(--amber); width: 3px; }
.gantt.kompakt .gt-ad { width: 230px; font-size: 11px; }
.gantt.kompakt .gantt-satir { min-height: 24px; }
.gantt.kompakt .gt-serit { height: 24px; }
.gantt.kompakt .gt-cubuk { top: 5px; height: 13px; }
@media (max-width: 760px) { .gt-ad { width: 160px; } .gt-gorev { max-width: 100px; } }
@media print { .gt-cubuk, .gt-dolgu, .gantt-satir.faz { print-color-adjust: exact;
  -webkit-print-color-adjust: exact; } .gt-duzenle { display: none; } }

/* --- plan aktivite listesi (GANTT'in duzenleme tablosu) --- */
.akt-tablo td { padding: 3px 4px; vertical-align: middle; }
.akt-tablo input[type=text], .akt-tablo input:not([type]), .akt-tablo input[type=date],
.akt-tablo input[type=number] { padding: 4px 6px; border: 1px solid var(--line);
  border-radius: 5px; font: inherit; font-size: 12px; background: #fff; }
.akt-tablo input:focus { border-color: var(--blue); outline: none; }
.akt-tablo .akt-ad { min-width: 240px; width: 100%; }
.akt-tablo .akt-yuzde { width: 56px; text-align: right; }
.akt-tablo tr:target { background: #fff8e6; }
.akt-tablo .btn-row { flex-wrap: nowrap; }
a.gt-duzenle { text-decoration: none; opacity: .55; }
a.gt-duzenle:hover { opacity: 1; }

/* denetimde soru başına fotoğraf (sancak fotoğraflarından ayrı: dn- öneki) */
.dn-foto { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; flex: 0 0 auto; max-width: 300px; }
.dn-foto-dugme { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 32px;
  border: 1px solid var(--line); border-radius: 6px; cursor: pointer; background: var(--card); font-size: 15px; }
.dn-foto-dugme:hover { border-color: var(--blue); }
.dn-foto-dugme.calisiyor { opacity: .6; pointer-events: none; }
.dn-foto-serit { display: flex; gap: 5px; flex-wrap: wrap; align-items: center; }
.dn-foto-kutu { position: relative; display: inline-block; line-height: 0; }
.dn-foto-kutu img { width: 42px; height: 32px; object-fit: cover; border-radius: 5px;
  border: 1px solid var(--line); display: block; }
.dn-foto-sil { position: absolute; top: -6px; right: -6px; width: 17px; height: 17px; line-height: 14px;
  padding: 0; border-radius: 50%; border: 1px solid var(--line); background: #fff; color: #b3261e;
  font-size: 12px; cursor: pointer; }

/* Ürün logosu (görsel marka) */
.sidebar .brand.brand-logo { display: block; font-size: 0; line-height: 0; }
.sidebar .brand img.urun-logo { width: 100%; max-width: 180px; height: auto; display: block; }
.giris-marka.giris-logo { font-size: 0; line-height: 0; position: static; width: auto; opacity: 1; }
h1.panel-logo { line-height: 0; }
h1.panel-logo img.urun-logo { height: 56px; width: auto; max-width: 100%; display: block; }
.giris-marka img.urun-logo { width: 100%; max-width: 260px; height: auto; display: block; margin: 0 auto; }
