/* ============================================================================
   QMS System — Jira-benzeri arayüz (çalışma modeli: sol proje menüsü + durum
   sütunlu Kanban board + issue detay). Renk/tipografi BİZİM marka (#2a3bd0),
   tanıtım sitesiyle bütünlük. Metronic'ten bağımsız, kendi başına yeter.
   ============================================================================ */
:root {
  --brand:        #2a3bd0;
  --brand-700:    #1e2aa0;
  --brand-050:    #e9ecfb;
  --navy:         #10124a;
  --navy-700:     #1b1f63;
  --ink:          #172b4d;   /* ana metin (Jira ink) */
  --muted:        #5e6c84;   /* ikincil metin */
  --line:         #dfe1e6;   /* kenarlık */
  --line-soft:    #ebecf0;
  --content-bg:   #f4f5f7;   /* içerik zemini */
  --card-bg:      #ffffff;
  --sidebar-ink:  #c3c7e6;
  --sidebar-ink-dim: #8c91c4;
  /* Durum renkleri (Jira sütun dili, bizim paletle uyumlu) */
  --st-todo-fg:   #42526e;  --st-todo-bg:   #ebecf0;
  --st-prog-fg:   #2a3bd0;  --st-prog-bg:   #e6e9fb;
  --st-impl-fg:   #0a7d5a;  --st-impl-bg:   #dcf3ea;
  --st-ver-fg:    #055a43;  --st-ver-bg:    #c9ecdc;
  --st-excl-fg:   #5e6c84;  --st-excl-bg:   #dfe1e6;
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: "Inter", -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  color: var(--ink); background: var(--content-bg); line-height: 1.5; -webkit-font-smoothing: antialiased;
}
a { color: var(--brand); text-decoration: none; }
a:hover { text-decoration: underline; }
h1, h2, h3, h4, h5 { margin: 0 0 .4rem; line-height: 1.25; color: var(--ink); font-weight: 600; }

/* ───────────────────────── SHELL ───────────────────────── */
.jira { display: flex; min-height: 100vh; }
.jira-sidebar {
  position: fixed; top: 0; left: 0; bottom: 0; width: 240px; background: var(--navy);
  color: var(--sidebar-ink); display: flex; flex-direction: column; overflow-y: auto; z-index: 30;
}
.jira-sidebar__brand {
  display: flex; align-items: center; gap: .55rem; padding: 16px 18px; color: #fff;
  font-weight: 800; font-size: 1.2rem; letter-spacing: .01em; white-space: nowrap;
}
.jira-sidebar__brand .mark {
  width: 26px; height: 26px; flex: none; background: var(--brand); display: grid; place-items: center;
  color: #fff; font-weight: 800; font-size: .95rem;
}
.jira-nav { padding: 6px 10px 20px; }
.jira-nav__section {
  padding: 16px 10px 6px; font-size: .68rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .08em; color: var(--sidebar-ink-dim);
}
.jira-nav__link {
  display: flex; align-items: center; gap: .6rem; padding: .5rem .7rem; color: var(--sidebar-ink);
  font-size: .9rem; border-left: 3px solid transparent;
}
.jira-nav__link:hover { background: var(--navy-700); color: #fff; text-decoration: none; }
.jira-nav__link.active { background: var(--navy-700); color: #fff; border-left-color: var(--brand); font-weight: 600; }
.jira-nav__link i { width: 16px; text-align: center; font-size: .9rem; opacity: .85; }

.jira-main { flex: 1; margin-left: 240px; display: flex; flex-direction: column; min-width: 0; }
.jira-topbar {
  position: sticky; top: 0; z-index: 20; height: 56px; background: #fff; border-bottom: 1px solid var(--line);
  display: flex; align-items: center; gap: 1rem; padding: 0 20px;
}
.jira-topbar__title { font-size: 1.02rem; font-weight: 600; color: var(--ink); white-space: nowrap; }
.jira-topbar__spacer { flex: 1; }
.jira-topbar__right { display: flex; align-items: center; gap: .8rem; }
.jira-user {
  width: 32px; height: 32px; border-radius: 50%; background: var(--brand); color: #fff;
  display: grid; place-items: center; font-weight: 700; font-size: .85rem;
}

/* Kullanıcı menüsü (avatar → açılır: ad/e-posta + Çıkış). JS'siz <details>. */
.jira-usermenu { position: relative; }
.jira-usermenu > summary { list-style: none; cursor: pointer; }
.jira-usermenu > summary::-webkit-details-marker { display: none; }
.jira-usermenu > summary::marker { content: ""; }
.jira-usermenu__panel {
  position: absolute; right: 0; top: calc(100% + 8px); min-width: 220px; background: #fff;
  border: 1px solid var(--line); box-shadow: 0 6px 20px rgba(23, 43, 77, .18); z-index: 50;
}
.jira-usermenu__who { padding: .7rem .9rem; border-bottom: 1px solid var(--line); }
.jira-usermenu__name { font-weight: 600; font-size: .9rem; color: var(--ink); }
.jira-usermenu__mail { font-size: .78rem; color: var(--muted); }
.jira-usermenu__item {
  display: block; width: 100%; text-align: left; padding: .6rem .9rem; background: none;
  border: 0; font: inherit; color: var(--ink); cursor: pointer;
}
.jira-usermenu__item:hover { background: var(--line-soft); text-decoration: none; }
.jira-usermenu__logout { color: #bf2600; font-weight: 600; }
.jira-content { padding: 22px; flex: 1; }

/* Tenant (proje bağlamı) seçici — topbar */
.jira-tenant { display: flex; align-items: center; gap: .4rem; font-size: .85rem; color: var(--muted); }
.jira-tenant select {
  font: inherit; padding: .32rem .5rem; border: 1px solid var(--line); background: #fff; color: var(--ink);
  border-radius: 0;
}

/* ───────────────────────── FORM / BUTON ───────────────────────── */
.btn-pri, .btn-sub, .btn-ghost {
  display: inline-flex; align-items: center; gap: .4rem; font: inherit; font-weight: 600; font-size: .88rem;
  padding: .45rem .9rem; border: 1px solid transparent; cursor: pointer; border-radius: 0; white-space: nowrap;
}
.btn-pri { background: var(--brand); color: #fff; }
.btn-pri:hover { background: var(--brand-700); color: #fff; text-decoration: none; }
.btn-sub { background: #fff; color: var(--ink); border-color: var(--line); }
.btn-sub:hover { background: var(--line-soft); text-decoration: none; }
.btn-ghost { background: transparent; color: var(--brand); }
.btn-ghost:hover { background: var(--brand-050); text-decoration: none; }
.btn-sm { padding: .3rem .6rem; font-size: .82rem; }
.inp, select.inp, textarea.inp {
  font: inherit; width: 100%; padding: .5rem .6rem; border: 1px solid var(--line); background: #fff;
  color: var(--ink); border-radius: 0; outline: none;
}
.inp:focus { border-color: var(--brand); box-shadow: 0 0 0 2px var(--brand-050); }
label.lbl { display: block; font-size: .78rem; font-weight: 600; color: var(--muted); margin: 0 0 .25rem; }

/* ───────────────────────── PANEL / KART ───────────────────────── */
.panel { background: var(--card-bg); border: 1px solid var(--line); }
.panel__head { padding: .9rem 1.1rem; border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.panel__title { font-size: 1.02rem; font-weight: 600; }
.panel__body { padding: 1.1rem; }

/* Rozet / etiket */
.tag { display: inline-flex; align-items: center; font-size: .72rem; font-weight: 700; padding: .14rem .5rem; border-radius: 0; text-transform: uppercase; letter-spacing: .03em; }
.tag--chapter { background: var(--brand-050); color: var(--brand); }
.tag--todo  { background: var(--st-todo-bg);  color: var(--st-todo-fg); }
.tag--prog  { background: var(--st-prog-bg);  color: var(--st-prog-fg); }
.tag--impl  { background: var(--st-impl-bg);  color: var(--st-impl-fg); }
.tag--ver   { background: var(--st-ver-bg);   color: var(--st-ver-fg); }
.tag--excl  { background: var(--st-excl-bg);  color: var(--st-excl-fg); }
/* Semantik durum renkleri (denetim dereceleri, CAPA aç/kapa, aşama ilerleme) */
.tag--success { background: #dcf3ea; color: #0a7d5a; }
.tag--warn    { background: #fff4d6; color: #8a6400; }
.tag--danger  { background: #ffe5e0; color: #bf2600; }
.tag--info    { background: #e6e9fb; color: #2a3bd0; }

/* İlerleme çubuğu */
.pbar { height: 8px; background: var(--line-soft); }
.pbar > span { display: block; height: 100%; background: var(--brand); }

/* ───────────────────────── KANBAN ───────────────────────── */
.board-toolbar { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; margin-bottom: 1rem; }
.chip-filter { display: inline-flex; gap: .3rem; flex-wrap: wrap; }
.chip {
  font: inherit; font-size: .82rem; font-weight: 600; padding: .32rem .7rem; border: 1px solid var(--line);
  background: #fff; color: var(--muted); cursor: pointer; border-radius: 0;
}
.chip.active { background: var(--brand); color: #fff; border-color: var(--brand); }

.kanban { display: flex; gap: 12px; align-items: flex-start; overflow-x: auto; padding-bottom: 8px; }
.kan-col { flex: 0 0 290px; background: #f1f2f6; border: 1px solid var(--line); display: flex; flex-direction: column; max-height: calc(100vh - 210px); }
.kan-col__head {
  display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .7rem .8rem;
  font-size: .76rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--muted);
  border-bottom: 1px solid var(--line);
}
.kan-col__count { background: #fff; border: 1px solid var(--line); color: var(--muted); font-weight: 700; padding: 0 .45rem; min-width: 22px; text-align: center; }
.kan-col__body { padding: 8px; display: flex; flex-direction: column; gap: 8px; overflow-y: auto; }
.kan-col__empty { color: var(--muted); font-size: .82rem; text-align: center; padding: 1.2rem .5rem; }

.issue-card {
  display: block; background: #fff; border: 1px solid var(--line); border-left: 3px solid var(--brand);
  padding: .7rem .75rem; color: var(--ink); border-radius: 0;
  transition: box-shadow .12s ease, border-color .12s ease;
}
.issue-card:hover { box-shadow: 0 1px 6px rgba(23,43,77,.14); text-decoration: none; }
.issue-card.st-todo  { border-left-color: var(--st-todo-fg); }
.issue-card.st-prog  { border-left-color: var(--st-prog-fg); }
.issue-card.st-impl  { border-left-color: var(--st-impl-fg); }
.issue-card.st-ver   { border-left-color: var(--st-ver-fg); }
.issue-card.st-excl  { border-left-color: var(--st-excl-fg); opacity: .78; }
.issue-card__title { font-size: .9rem; line-height: 1.35; margin: 0 0 .5rem; color: var(--ink);
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; }
.issue-card__foot { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.issue-card__key { font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace; font-size: .76rem; font-weight: 700; color: var(--brand); }
.issue-card__meta { font-size: .72rem; color: var(--muted); }

/* ───────────── GÖRÜNÜM SEKMELERİ (Pano ↔ Liste) ───────────── */
.jira-viewtabs { display: flex; gap: 2px; border-bottom: 2px solid var(--line); margin-bottom: 12px; }
.jira-viewtab {
  font: inherit; font-size: .86rem; font-weight: 600; padding: .5rem .95rem; cursor: pointer;
  background: transparent; border: 0; border-bottom: 2px solid transparent; margin-bottom: -2px; color: var(--muted);
}
.jira-viewtab:hover { color: var(--ink); }
.jira-viewtab.active { color: var(--brand); border-bottom-color: var(--brand); }
.jira-viewtab__ic { font-size: .95rem; margin-right: .2rem; }
/* Görünüm gizleme — `hidden` attribute'u .kanban/.iso-list display:flex tarafından ezildiği
   için açık !important sınıf gerekir (aksi halde iki görünüm üst üste kalır). */
.is-hidden { display: none !important; }

/* ───────────── LİSTE GÖRÜNÜMÜ (madde satırları) ───────────── */
.iso-list { display: flex; flex-direction: column; gap: 1rem; }
.list-group { border: 1px solid var(--line); background: #fff; }
.list-group__head {
  display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .6rem .85rem;
  font-size: .78rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--brand);
  background: var(--brand-050); border-bottom: 1px solid var(--line);
}
.list-group__count { background: #fff; border: 1px solid var(--line); color: var(--muted); font-weight: 700; padding: 0 .45rem; min-width: 22px; text-align: center; }
.list-clause {
  display: flex; align-items: center; gap: .75rem; padding: .55rem .85rem; border-bottom: 1px solid var(--line-soft);
  border-left: 3px solid transparent; color: var(--ink); cursor: pointer;
}
.list-clause:last-child { border-bottom: 0; }
.list-clause:hover { background: var(--line-soft); }
.list-clause:focus { outline: 2px solid var(--brand); outline-offset: -2px; }
.list-clause.st-todo  { border-left-color: var(--st-todo-fg); }
.list-clause.st-prog  { border-left-color: var(--st-prog-fg); }
.list-clause.st-impl  { border-left-color: var(--st-impl-fg); }
.list-clause.st-ver   { border-left-color: var(--st-ver-fg); }
.list-clause.st-excl  { border-left-color: var(--st-excl-fg); opacity: .8; }
.list-clause__key { font-family: "SFMono-Regular", Consolas, monospace; font-size: .76rem; font-weight: 700; color: var(--brand); flex: 0 0 auto; min-width: 72px; }
.list-clause__title { flex: 1 1 auto; font-size: .9rem; line-height: 1.3; }
.list-clause__owner { flex: 0 0 auto; font-size: .8rem; color: var(--muted); min-width: 90px; text-align: right; }
.list-clause__meta { flex: 0 0 auto; font-size: .72rem; color: var(--muted); min-width: 64px; text-align: right; }
@media (max-width: 720px) { .list-clause__owner, .list-clause__meta { display: none; } }

/* Durum pili (liste + özel pano ortak) */
.pill { flex: 0 0 auto; display: inline-block; font-size: .72rem; font-weight: 700; padding: .14rem .5rem; border-radius: 999px; min-width: 86px; text-align: center; }
.pill.st-todo  { background: var(--st-todo-bg);  color: var(--st-todo-fg); }
.pill.st-prog  { background: var(--st-prog-bg);  color: var(--st-prog-fg); }
.pill.st-impl  { background: var(--st-impl-bg);  color: var(--st-impl-fg); }
.pill.st-ver   { background: var(--st-ver-bg);   color: var(--st-ver-fg); }
.pill.st-excl  { background: var(--st-excl-bg);  color: var(--st-excl-fg); }

/* ───────────── GENEL BAKIŞ (KPI kartları + durum dağılımı) ───────────── */
.ov-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px; }
.ov-tile { display: block; background: #fff; border: 1px solid var(--line); border-top: 3px solid var(--brand); padding: .85rem .9rem; color: var(--ink); }
a.ov-tile:hover { box-shadow: 0 1px 6px rgba(23,43,77,.14); text-decoration: none; border-top-color: var(--st-prog-fg); }
.ov-tile__label { font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); }
.ov-tile__big { font-size: 1.9rem; font-weight: 800; line-height: 1.15; margin: .2rem 0; color: var(--ink); }
.ov-tile__big.ov-ok { color: var(--st-impl-fg); }
.ov-tile__big.ov-warn { color: #b54708; }
.ov-tile__big.ov-muted { color: var(--muted); font-weight: 700; }
.ov-tile__sub { font-size: .78rem; color: var(--muted); }
.ov-seg { display: flex; height: 16px; background: var(--line-soft); overflow: hidden; }
.ov-seg__part { display: block; min-width: 0; }
.ov-seg__part.st-todo { background: var(--st-todo-fg); }
.ov-seg__part.st-prog { background: var(--st-prog-fg); }
.ov-seg__part.st-impl { background: var(--st-impl-fg); }
.ov-seg__part.st-ver  { background: var(--st-ver-fg); }
.ov-seg__part.st-excl { background: var(--st-excl-fg); }
.ov-legend { display: flex; flex-wrap: wrap; gap: .4rem 1rem; margin-top: .55rem; font-size: .78rem; color: var(--muted); }
.ov-legend .dot { display: inline-block; width: 10px; height: 10px; margin-right: .3rem; vertical-align: middle; }
.dot.st-todo { background: var(--st-todo-fg); } .dot.st-prog { background: var(--st-prog-fg); }
.dot.st-impl { background: var(--st-impl-fg); } .dot.st-ver { background: var(--st-ver-fg); }
.dot.st-excl { background: var(--st-excl-fg); }

/* ───────────── KEK (Kalite El Kitabı) gövdesi ───────────── */
.kek-meta th { background: var(--line-soft); font-weight: 700; white-space: nowrap; }
.kek-map { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .5rem; }
.kek-map__ch { font-size: .84rem; border: 1px solid var(--line); padding: .25rem .6rem; background: #fff; }
.kek-map__no { font-weight: 800; color: var(--brand); margin-right: .2rem; }
.kek-sec { border-left: 3px solid var(--line); padding: .3rem 0 .5rem .7rem; margin: .5rem 0; }
.kek-sec__h { font-size: .92rem; }
.kek-sec__h .badge-soft { background: #fde9c8; color: #8a5a00; margin-left: .3rem; }

/* ───────────────────────── ISSUE DETAY ───────────────────────── */
.issue-hero { background: var(--navy); color: #fff; padding: 1.1rem 1.3rem; }
.issue-hero__key { font-family: "SFMono-Regular", Consolas, monospace; font-size: .78rem; opacity: .7; color: #fff; }
.issue-hero__title { font-size: 1.5rem; font-weight: 700; margin: .25rem 0 0; color: #fff; }
.issue-hero__meta { display: flex; justify-content: space-between; align-items: baseline; margin-top: .9rem; font-size: .85rem; opacity: .9; }
.issue-hero .pbar { background: rgba(255,255,255,.18); margin-top: .4rem; }
.issue-hero .pbar > span { background: #fff; }

.issue-grid { display: grid; grid-template-columns: 260px 1fr; gap: 16px; align-items: start; }
@media (max-width: 860px) { .issue-grid { grid-template-columns: 1fr; } }
/* Adım kolonu EKRANDA SABİT (sticky, topbar'ın altında): sayfayı kaydırınca sağ içerik akar,
   ray yerinde kalır. Ray yalnız ekrana sığmayınca (85 madde) İÇERİDE kaydırır. */
.rail-col { position: sticky; top: 72px; align-self: start; }
.rail-col__inner { display: flex; flex-direction: column; min-height: 0; max-height: calc(100vh - 88px); }
@media (max-width: 860px) { .rail-col { position: static; } .rail-col__inner { max-height: none; } }

/* Adım rayı (issue list) */
.rail { background: #fff; border: 1px solid var(--line); flex: 1 1 auto; min-height: 0; overflow: auto; }
@media (max-width: 860px) { .rail { flex: none; max-height: 60vh; } }
.rail__group { padding: .55rem .8rem .25rem; font-size: .72rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .04em; color: var(--brand); position: sticky; top: 0; background: #fff; z-index: 2; border-bottom: 1px solid var(--line-soft); }
.rail__item { display: flex; align-items: center; gap: .5rem; padding: .4rem .8rem; color: var(--ink);
  font-size: .85rem; border-left: 3px solid transparent; }
.rail__item:hover { background: var(--line-soft); text-decoration: none; }
.rail__item .mk { width: 18px; height: 18px; flex: none; display: grid; place-items: center; font-size: .66rem;
  border: 1px solid var(--line); background: #fff; color: var(--muted); }
.rail__item.done .mk { background: var(--st-impl-fg); border-color: var(--st-impl-fg); color: #fff; }
.rail__item.current { background: var(--brand-050); border-left-color: var(--brand); font-weight: 700; }
.rail__item.current .mk { background: var(--brand); border-color: var(--brand); color: #fff; }

/* Tablo (liste ekranları) */
.jtable { width: 100%; border-collapse: collapse; background: #fff; font-size: .88rem; }
.jtable th, .jtable td { text-align: left; padding: .6rem .7rem; border-bottom: 1px solid var(--line); vertical-align: top; }
.jtable th { font-size: .72rem; text-transform: uppercase; letter-spacing: .04em; color: var(--muted); font-weight: 700; background: #fafbfc; }
.jtable tbody tr:hover { background: var(--line-soft); }
.jtable td .btn-sm, .jtable td .btn-sub, .jtable td .btn-pri { margin-right: .3rem; }

/* Sayfa başlığı (liste/form üstü) */
.page-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 16px; }
.page-head h1 { font-size: 1.3rem; margin: 0; font-weight: 700; }
.page-head .muted { font-size: .85rem; }
.badge-soft { display: inline-block; font-size: .72rem; font-weight: 700; padding: .14rem .5rem; background: var(--line-soft); color: var(--muted); border-radius: 0; }

/* Sayfalama */
.jpager { display: flex; gap: 4px; list-style: none; padding: 0; margin: 1rem 0 0; flex-wrap: wrap; }
.jpager li a { display: inline-block; min-width: 32px; text-align: center; padding: .3rem .55rem; border: 1px solid var(--line); background: #fff; color: var(--ink); font-size: .85rem; }
.jpager li a:hover { background: var(--line-soft); text-decoration: none; }
.jpager li.active a { background: var(--brand); color: #fff; border-color: var(--brand); }
.jpager li.disabled a { color: var(--line); pointer-events: none; }

/* Süzgeç çubuğu */
.filter-bar { display: flex; flex-wrap: wrap; gap: .6rem; align-items: flex-end; }
.filter-bar .fb-field { display: flex; flex-direction: column; min-width: 160px; }
.filter-bar .fb-field > label { font-size: .72rem; font-weight: 600; color: var(--muted); margin-bottom: .2rem; }
.filter-bar .fb-actions { margin-left: auto; display: flex; gap: .4rem; align-items: flex-end; }
.inp--dolu { border-color: #e0a800 !important; box-shadow: 0 0 0 2px #fff4d6; }

/* Minimal grid (eski row/col-md-* işaretlemesi stacklemeden çalışsın) */
.row { display: flex; flex-wrap: wrap; margin: 0 -8px; }
.row > [class*="col-"] { padding: 0 8px; box-sizing: border-box; }
.col-md-1 { width: 8.333%; } .col-md-2 { width: 16.667%; } .col-md-3 { width: 25%; }
.col-md-4 { width: 33.333%; } .col-md-5 { width: 41.667%; } .col-md-6 { width: 50%; }
.col-md-7 { width: 58.333%; } .col-md-8 { width: 66.667%; } .col-md-9 { width: 75%; }
.col-md-10 { width: 83.333%; } .col-md-11 { width: 91.667%; } .col-md-12 { width: 100%; }
.col-lg-3 { width: 25%; } .col-lg-9 { width: 75%; }
@media (max-width: 820px) { .row > [class*="col-"] { width: 100%; } }

/* Yardımcı */
.muted { color: var(--muted); }
.stack > * + * { margin-top: 1rem; }
.row-form { display: grid; grid-template-columns: 160px 1fr; gap: .6rem 1rem; align-items: start; margin-bottom: .8rem; }
@media (max-width: 680px) { .row-form { grid-template-columns: 1fr; } }
.note-alert { background: #fff8e6; border: 1px solid #ffe6a8; color: #7a5b00; padding: .7rem .9rem; font-size: .88rem; }
.ok-alert { background: var(--st-impl-bg); border: 1px solid #9bd9bf; color: var(--st-impl-fg); padding: .7rem .9rem; font-size: .9rem; }
.info-alert { background: var(--brand-050); border: 1px solid #c3cbf5; color: var(--brand-700); padding: .7rem .9rem; font-size: .88rem; }

/* ===== Kanban board drawer + pills + drag (paylaşılan: clause/özel/capa/denetim) ===== */
.issue-card[draggable="true"]{cursor:grab}
.issue-card.dragging{opacity:.45}
.kan-col.drop-hot .kan-col__body{background:#eef1ff;outline:2px dashed #9aa6f0;outline-offset:-4px;border-radius:8px}
.drw-overlay{position:fixed;inset:0;background:rgba(15,20,40,.35);z-index:900}
.drw{position:fixed;top:0;right:0;height:100vh;width:min(460px,94vw);background:#fff;z-index:901;
     box-shadow:-8px 0 30px rgba(0,0,0,.18);display:flex;flex-direction:column;
     transform:translateX(100%);transition:transform .18s ease}
.drw.open{transform:translateX(0)}
/* Tam ekran/genişlet: dar slide-over → tam sayfa (ayrı sayfaya gitmeden), içerik ortalı okunur */
.drw.drw--full{width:100vw}
.drw--full .drw__body{max-width:920px;margin:0 auto;width:100%}
.drw__bar{display:flex;justify-content:flex-end;gap:.2rem;padding:.5rem .6rem;border-bottom:1px solid #eceef3}
.drw__close,.drw__expand{border:0;background:none;font-size:1.05rem;cursor:pointer;color:#555;padding:.15rem .55rem;border-radius:6px}
.drw__close{font-size:1.15rem}
.drw__close:hover,.drw__expand:hover{background:#f1f2f6}
.drw__body{padding:1rem 1.2rem;overflow:auto}
.drw__key{font-family:ui-monospace,monospace;font-size:.76rem;color:#6b7280;font-weight:700}
.drw__title{font-size:1.1rem;margin:.2rem 0 .6rem;line-height:1.3}
.drw__sec{margin:.85rem 0;padding-top:.7rem;border-top:1px solid #f0f1f5}
.drw__sec-h{font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin-bottom:.5rem}
.drw__q{margin:0;padding-left:1.1rem;font-size:.88rem;color:#374151}.drw__q li{margin-bottom:.25rem}
.drw__pills{display:flex;gap:.35rem;flex-wrap:wrap}
.drw-pill input{position:absolute;opacity:0;pointer-events:none}
.drw-pill span{display:inline-block;padding:.32rem .62rem;border-radius:999px;border:1px solid #dfe2ea;font-size:.8rem;background:#fff;color:#4b5563;cursor:pointer}
.drw-pill input:checked+span{border-color:transparent;color:#fff;font-weight:600;background:#2a3bd0}
.drw__grid2{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.4rem}
.drw__save{margin-top:1rem;display:flex;align-items:center;gap:.7rem}
.drw__saved{color:#1f7a4d;font-size:.85rem;font-weight:600}
.drw__ev{margin:0 0 .6rem;padding-left:1.1rem;font-size:.86rem}
.drw__full{display:inline-block;margin-top:1rem;font-size:.84rem}

/* ===== Kontrol Paneli (dashboard) + sistem (standart) seçim kartları ===== */
.dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:8px}
.dash-card{background:#fff;border:1px solid var(--line,#e7e9f0);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:.4rem;transition:box-shadow .15s,border-color .15s}
.dash-card:hover{box-shadow:0 6px 20px rgba(20,30,80,.08);border-color:#c3c9e6}
.dash-card__top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.dash-card__title{font-size:1.02rem;font-weight:700;margin:.1rem 0}
.dash-card__title a{color:inherit;text-decoration:none}
.dash-card__go{margin-top:auto;color:#2a3bd0;font-weight:600;font-size:.88rem}
.dash-new{border:1.5px dashed #c3c9e6;background:#fafbff;align-items:center;justify-content:center;text-align:center;color:#2a3bd0;font-weight:600;min-height:140px;cursor:pointer}
.dash-new:hover{border-color:#2a3bd0;background:#f3f5ff}
.sys-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;margin-top:8px}
.sys-card{background:#fff;border:1px solid var(--line,#e7e9f0);border-radius:10px;padding:18px}
.sys-card__name{font-size:1.05rem;font-weight:700;margin:.1rem 0 .3rem}
.sys-card__desc{color:#6b7280;font-size:.88rem;margin:0 0 .8rem;min-height:2.4em}

/* ===== Jira-sadık: sol sidebar yalnız proje-içi; global nav ÜST barda ===== */
.jira--nosb .jira-sidebar { display: none; }
.jira--nosb .jira-main { margin-left: 0; }
.jira-topnav { display: flex; align-items: center; gap: .15rem; flex-wrap: wrap; }
.jira-topnav__brand { display: flex; align-items: center; gap: .5rem; font-weight: 800; color: var(--ink);
  white-space: nowrap; margin-right: .5rem; text-decoration: none; }
.jira-topnav__brand .mark { width: 24px; height: 24px; flex: none; background: var(--brand); color: #fff;
  display: grid; place-items: center; font-weight: 800; font-size: .9rem; }
.jira-topnav a, .jira-topnav__dd > summary { display: inline-flex; align-items: center; gap: .4rem;
  padding: .42rem .65rem; border-radius: 6px; color: var(--ink); font-size: .9rem; font-weight: 500;
  cursor: pointer; white-space: nowrap; list-style: none; }
.jira-topnav a:hover, .jira-topnav__dd > summary:hover { background: var(--line-soft); text-decoration: none; }
.jira-topnav a.active { color: var(--brand); font-weight: 700; }
.jira-topnav__create { background: var(--brand); color: #fff !important; }
.jira-topnav__create:hover { background: var(--brand) !important; filter: brightness(1.06); }
.jira-topnav__dd { position: relative; }
.jira-topnav__dd > summary::-webkit-details-marker { display: none; }
.jira-topnav__panel { position: absolute; top: calc(100% + 4px); left: 0; min-width: 210px; background: #fff;
  border: 1px solid var(--line); border-radius: 8px; box-shadow: 0 10px 30px rgba(20,30,80,.14); padding: .3rem; z-index: 40; }
.jira-topnav__panel a { display: block; padding: .5rem .7rem; border-radius: 6px; font-weight: 500; }

/* ===== Dosya ekleri (attach.js + _attachments.html) — drawer / modal / sayfa ortak ===== */
.attach-list { list-style: none; padding: 0; margin: .3rem 0 .5rem; }
.attach-row { display: flex; align-items: center; gap: .5rem; padding: .32rem .5rem; border: 1px solid var(--line);
  border-radius: 6px; background: #fff; margin-bottom: .35rem; }
.attach-row:hover { background: var(--line-soft); }
.attach-name { font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 60%; }
.attach-meta { font-size: .78rem; flex-shrink: 0; }
.attach-row .drw-attach-del { margin-left: auto; display: inline; }
.attach-del { border: 0; background: none; color: #c0392b; cursor: pointer; font-size: .9rem; line-height: 1;
  padding: .15rem .3rem; border-radius: 4px; }
.attach-del:hover { background: #fdecea; }
.attach-empty { font-size: .84rem; padding: .2rem 0; }

/* Sürükle-bırak alanı */
.attach-zone { display: block; cursor: pointer; text-align: center; padding: .9rem .8rem; border: 2px dashed var(--line);
  border-radius: 8px; background: #fafbfc; transition: border-color .12s, background .12s; }
.attach-zone:hover { border-color: var(--brand); background: var(--brand-050); }
.attach-zone.drag { border-color: var(--brand); background: var(--brand-050); box-shadow: inset 0 0 0 2px var(--brand-050); }
.attach-zone.has-file { border-style: solid; border-color: var(--st-impl-fg); background: var(--st-impl-bg); }
.attach-zone__prompt { font-size: .86rem; color: var(--ink); display: block; }
.attach-zone__icon { font-size: 1.1rem; display: block; margin-bottom: .15rem; color: var(--brand); }
.attach-zone__hint { display: block; font-size: .74rem; margin-top: .2rem; }

.attach-chip { display: flex; align-items: center; gap: .3rem; margin-top: .45rem; padding: .35rem .55rem;
  background: var(--brand-050); border: 1px solid var(--line); border-radius: 6px; font-size: .82rem; font-weight: 500; }
.attach-chip__x { border: 0; background: none; color: var(--muted); cursor: pointer; font-size: .82rem; margin-left: auto; }
.attach-chip__x:hover { color: #c0392b; }

.attach-row2 { display: flex; gap: .4rem; align-items: center; margin-top: .45rem; }
.attach-note { flex: 1; min-width: 120px; }
.attach-submit.is-loading { opacity: .6; cursor: progress; }
.attach-err { margin-top: .4rem; font-size: .82rem; color: #c0392b; background: #fdecea; border: 1px solid #f5c6cb;
  border-radius: 6px; padding: .35rem .55rem; }

/* MDR modalı (mdr.html) — drawer-stili dosya paneli tablo satırından açılır */
.attach-modal { position: fixed; inset: 0; z-index: 60; display: none; }
.attach-modal.open { display: block; }
.attach-modal__ov { position: absolute; inset: 0; background: rgba(9,30,66,.48); }
.attach-modal__box { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  width: min(520px, 94vw); max-height: 86vh; overflow: auto; background: #fff; border-radius: 10px;
  box-shadow: 0 16px 48px rgba(9,30,66,.32); padding: 1rem 1.1rem; }
.attach-modal__head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .4rem; }
.attach-modal__title { font-size: .95rem; font-weight: 600; }
.attach-modal__x { border: 0; background: none; font-size: 1.1rem; cursor: pointer; color: var(--muted); }
.attach-modal__x:hover { color: var(--ink); }
.attach-link { font-size: .76rem; background: none; border: 0; color: var(--brand); cursor: pointer; padding: 0; }
.attach-link:hover { text-decoration: underline; }
