:root {
  --bg: #edf2f7;
  --panel: #ffffff;
  --text: #172033;
  --muted: #6b778c;
  --primary: #1f5f99;
  --primary-dark: #164a78;
  --navy: #0f3356;
  --navy-2: #123f68;
  --secondary: #e8eef5;
  --border: #d7e0ea;
  --success: #16a34a;
  --warning: #f59e0b;
  --danger: #dc2626;
  --blue: #2563eb;
  --shadow: 0 16px 40px rgba(23, 32, 51, 0.10);
  --dashboard-bg: #edf4fb;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  background: var(--dashboard-bg);
  color: var(--text);
}

.shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 290px 1fr;
}

.sidebar {
  position: sticky;
  top: 0;
  height: 100vh;
  padding: 22px;
  background: linear-gradient(180deg, var(--navy), var(--navy-2));
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255,255,255,0.16);
}

.brand-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 16px;
  font-size: 22px;
}

.brand h1, .brand p { margin: 0; }
.brand h1 { font-size: 20px; }
.brand p { margin-top: 4px; color: #c8d7e7; font-size: 13px; }

.side-nav { display: grid; gap: 8px; }

.nav-btn {
  width: 100%;
  text-align: left;
  border: none;
  border-radius: 14px;
  padding: 13px 14px;
  background: transparent;
  color: #d9e8f8;
  cursor: pointer;
  font-weight: 700;
  transition: 0.2s;
}

.nav-btn:hover, .nav-btn.active {
  background: rgba(255,255,255,0.14);
  color: #fff;
}

.sidebar-footer {
  margin-top: auto;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.16);
}

.sidebar-footer span { display: block; color: #c8d7e7; font-size: 12px; margin-bottom: 6px; }
.sidebar-footer strong { display: block; word-break: break-word; }

.main {
  width: min(1500px, calc(100% - 32px));
  margin: 22px auto;
}

.topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 22px;
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 22px;
  box-shadow: var(--shadow);
}

.topbar h2, .topbar p { margin: 0; }
.topbar p { margin-top: 6px; color: var(--muted); }
.top-actions, .action-row { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.action-row.compact { justify-content: flex-end; }

.page { display: none; margin-top: 20px; }
.active-page { display: block; }

.hero-panel,
.panel {
  background: var(--panel);
  border: 1px solid var(--border);
  border-radius: 22px;
  padding: 22px;
  box-shadow: var(--shadow);
}

.hero-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background:
    linear-gradient(135deg, rgba(31, 95, 153, 0.95), rgba(15, 51, 86, 0.96)),
    radial-gradient(circle at top right, rgba(255,255,255,0.22), transparent 40%);
  color: #fff;
  margin-bottom: 16px;
}

.hero-panel h3 { margin: 8px 0; font-size: 28px; max-width: 850px; }
.hero-panel p { margin: 0; color: #d9e8f8; max-width: 850px; }
.compact-hero { padding: 18px 22px; margin-bottom: 14px; }
.compact-hero h3 { font-size: 24px; margin: 5px 0; }
.hero-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.eyebrow { color: #c8e2ff; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }

.panel-title { margin-bottom: 18px; }
.panel-title.with-action {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
}
.panel-title h3, .panel-title p { margin: 0; }
.panel-title p { margin-top: 6px; color: var(--muted); }

.two-column {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 16px;
}

.stats-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
  margin-bottom: 16px;
}

.stat-card,
.workflow-card {
  padding: 16px;
  background: #f7fafc;
  border: 1px solid var(--border);
  border-radius: 16px;
}

.stat-card span,
.workflow-card span {
  display: block;
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 8px;
}

.stat-card strong { font-size: 22px; }
.workflow-card strong { font-size: 20px; }

.workflow-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.upload-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin: 22px 0;
}

.file-card {
  display: block;
  padding: 18px;
  border: 2px dashed var(--border);
  border-radius: 18px;
  background: #f8fbfe;
  cursor: pointer;
  transition: 0.2s;
}

.file-card:hover { border-color: var(--primary); transform: translateY(-2px); }
.file-card span { display: block; color: var(--muted); font-size: 14px; margin-bottom: 6px; }
.file-card strong { display: block; margin-bottom: 12px; }
.file-card input { width: 100%; }
.file-card em { display: block; margin-top: 8px; color: var(--primary); font-style: normal; font-size: 13px; font-weight: 700; }

.btn {
  border: none;
  border-radius: 12px;
  padding: 11px 15px;
  cursor: pointer;
  font-weight: 700;
  transition: 0.2s;
}

.btn:hover { transform: translateY(-1px); }
.btn.primary { background: var(--primary); color: #fff; }
.btn.primary:hover { background: var(--primary-dark); }
.btn.ghost { background: var(--secondary); color: var(--text); }
.btn.light { background: rgba(255,255,255,0.18); color: #fff; border: 1px solid rgba(255,255,255,0.35); }
.btn.danger { background: #fee2e2; color: #991b1b; }
.btn.big { padding: 14px 18px; }

input, select, textarea {
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 11px 12px;
  font-size: 14px;
  outline: none;
  background: #fff;
}

input:focus, select:focus, textarea:focus { border-color: var(--primary); }

.project-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 18px;
}

.project-header h3, .project-header p { margin: 0; }
.project-header p { margin-top: 6px; color: var(--muted); }

.filter-row {
  display: grid;
  grid-template-columns: 1fr 240px;
  gap: 12px;
  margin-bottom: 14px;
}
.shipment-filter { grid-template-columns: 240px 120px; }

.table-wrapper {
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 16px;
}

table { width: 100%; border-collapse: collapse; min-width: 1200px; }
th, td {
  padding: 11px 10px;
  border-bottom: 1px solid var(--border);
  text-align: left;
  font-size: 14px;
  vertical-align: middle;
}
th { background: #f1f5f9; color: #26364f; position: sticky; top: 0; z-index: 1; }
tr:hover td { background: #f9fbfd; }

.status-select { min-width: 125px; font-weight: 700; }
.status-bekliyor { color: #64748b; }
.status-devam { color: var(--warning); }
.status-tamam { color: var(--success); }
.status-revize { color: var(--danger); }
.status-hazir { color: var(--blue); }
.status-sevk { color: #047857; }

.saved-projects { display: grid; gap: 10px; }
.saved-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #f8fbfe;
}

.recent-list { display: grid; gap: 8px; max-height: 260px; overflow: auto; }
.recent-item, .recent-empty {
  background: #f8fbfe;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 10px;
  font-size: 13px;
}
.recent-item strong { display: inline-block; min-width: 72px; }
.recent-empty { color: var(--muted); border-style: dashed; }

.small-note { color: var(--muted); font-size: 12px; margin-top: 4px; }

.report-controls {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}

#reportText { width: 100%; resize: vertical; font-family: Consolas, monospace; }

.settings-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-bottom: 16px;
}
.settings-grid label { display: grid; gap: 7px; font-weight: 700; color: #26364f; }

.modal {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(15, 23, 42, 0.55);
  backdrop-filter: blur(5px);
  z-index: 50;
}

.modal-content {
  width: min(900px, 100%);
  max-height: 90vh;
  overflow: auto;
  background: #fff;
  border-radius: 22px;
  padding: 22px;
  box-shadow: var(--shadow);
}
.modal-content.wide { width: min(1250px, 100%); }
.modal-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 16px; }
.modal-header h2, .modal-header p { margin: 0; }
.modal-header p { color: var(--muted); margin-top: 6px; }
.icon-btn { border: none; background: #eef2f7; width: 38px; height: 38px; border-radius: 999px; font-size: 24px; cursor: pointer; }

.detail-summary {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 18px;
}
.detail-summary div { background: #f8fbfe; border: 1px solid var(--border); border-radius: 14px; padding: 12px; }
.detail-summary span { color: var(--muted); display: block; margin-bottom: 6px; font-size: 13px; }

.hidden { display: none !important; }

@media (max-width: 1050px) {
  .shell { grid-template-columns: 1fr; }
  .sidebar { position: relative; height: auto; }
  .side-nav { grid-template-columns: repeat(2, 1fr); }
  .main { width: min(100% - 22px, 1500px); margin: 12px auto; }
  .stats-grid, .dashboard-stats, .upload-grid, .two-column, .workflow-grid, .detail-summary, .settings-grid, .workflow-modal-stats { grid-template-columns: 1fr; }
  .topbar, .project-header, .hero-panel, .panel-title.with-action { flex-direction: column; align-items: stretch; }
}


.dashboard-stats {
  grid-template-columns: repeat(4, 1fr);
}

.mini-panel {
  padding: 16px;
}

.compact-list {
  max-height: 175px;
}

.workflow-modal-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-bottom: 14px;
}

.workflow-modal-stats div {
  padding: 14px;
  background: #f8fbfe;
  border: 1px solid var(--border);
  border-radius: 14px;
}

.workflow-modal-stats span {
  display: block;
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 7px;
}

.workflow-modal-stats strong {
  font-size: 21px;
}

@media (max-width: 1250px) {
  .dashboard-stats { grid-template-columns: repeat(2, 1fr); }
}

body.dashboard-mode .topbar {
  display: none;
}

body.dashboard-mode .page {
  margin-top: 0;
}

body.dashboard-mode .main {
  margin-top: 22px;
}

body.dashboard-mode .compact-hero {
  margin-top: 0;
}

body.dashboard-mode .compact-hero h3 {
  font-size: 30px;
  margin: 0 0 8px 0;
}

body.dashboard-mode .compact-hero p {
  font-size: 15px;
}
.dashboard-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 18px;
}

.dashboard-overview-grid .stat-card {
  min-height: 126px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: linear-gradient(180deg, #ffffff, #f7fafc);
  border-radius: 18px;
}

.dashboard-overview-grid .stat-card.highlight {
  background: linear-gradient(135deg, #1f5f99, #123f68);
  color: #fff;
}

.dashboard-overview-grid .stat-card.highlight span,
.dashboard-overview-grid .stat-card.highlight em {
  color: #d8e8f8;
}

.dashboard-overview-grid .stat-card strong {
  font-size: 26px;
  line-height: 1.15;
}

.dashboard-overview-grid .stat-card em {
  font-style: normal;
  color: var(--muted);
  font-size: 12px;
  margin-top: 6px;
}

.dashboard-analytics-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  align-items: start;
}

.dashboard-analytics-grid .span-2 {
  grid-column: span 2;
}

.chart-panel {
  padding-bottom: 16px;
}

.chart-box {
  position: relative;
  height: 280px;
}

.chart-box.tall-chart {
  height: 340px;
}

.chart-box canvas {
  width: 100% !important;
  height: 100% !important;
}

.hourglass-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

.hourglass-card {
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 16px;
  background: linear-gradient(180deg, #fbfdff, #f3f8fc);
}

.hourglass-card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 14px;
}

.hourglass-card-head h4 {
  margin: 0 0 4px 0;
  font-size: 16px;
}

.hourglass-card-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}

.status-pill.active {
  background: #e0f2fe;
  color: #0c4a6e;
}

.status-pill.done {
  background: #dcfce7;
  color: #166534;
}

.hourglass-layout {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 16px;
  align-items: center;
}

.hourglass-shape {
  position: relative;
  width: 110px;
  height: 170px;
  margin: 0 auto;
}

.hourglass-top-bowl,
.hourglass-bottom-bowl {
  position: absolute;
  left: 12px;
  width: 86px;
  overflow: hidden;
  background: rgba(31, 95, 153, 0.08);
}

.hourglass-top-bowl {
  top: 10px;
  height: 66px;
  clip-path: polygon(0 0, 100% 0, 58% 100%, 42% 100%);
  border-top: 3px solid #1f5f99;
}

.hourglass-bottom-bowl {
  bottom: 10px;
  height: 66px;
  clip-path: polygon(42% 0, 58% 0, 100% 100%, 0 100%);
  border-bottom: 3px solid #1f5f99;
}

.hourglass-top-bowl::before,
.hourglass-bottom-bowl::before {
  content: "";
  position: absolute;
  inset: 0;
  border-left: 3px solid #1f5f99;
  border-right: 3px solid #1f5f99;
}

.hourglass-sand {
  position: absolute;
  left: 0;
  width: 100%;
}

.hourglass-sand.top {
  bottom: 0;
  background: linear-gradient(180deg, #8fd3ff, #2b7bbb);
}

.hourglass-sand.bottom {
  bottom: 0;
  background: linear-gradient(180deg, #2b7bbb, #103f69);
}

.hourglass-flow {
  position: absolute;
  top: 66px;
  left: 50%;
  width: 4px;
  height: 38px;
  transform: translateX(-50%);
  background: linear-gradient(180deg, #8fd3ff, #2b7bbb);
  border-radius: 999px;
}

.hourglass-neck {
  position: absolute;
  top: 78px;
  left: 50%;
  width: 12px;
  height: 10px;
  transform: translateX(-50%);
  background: #1f5f99;
  border-radius: 999px;
}

.hourglass-percent {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 6px 10px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--border);
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 6px 12px rgba(23, 32, 51, 0.08);
}

.hourglass-metrics {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.hourglass-metrics div {
  padding: 10px 12px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
}

.hourglass-metrics span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 4px;
}

.hourglass-metrics strong {
  font-size: 15px;
}

.compact-list .recent-item {
  padding: 10px 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #fff;
  margin-bottom: 8px;
  font-size: 13px;
}

@media (max-width: 1280px) {
  .dashboard-overview-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .dashboard-analytics-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-analytics-grid .span-2 {
    grid-column: span 1;
  }

  .hourglass-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 768px) {
  .dashboard-overview-grid {
    grid-template-columns: 1fr;
  }

  .hourglass-layout {
    grid-template-columns: 1fr;
  }
}
.dashboard-analytics-grid .span-3 {
  grid-column: span 3;
}

.process-board {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.process-step-card {
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff, #f7fafc);
}

.process-step-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
}

.process-step-head h4 {
  margin: 0;
  font-size: 16px;
}

.process-step-head span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 52px;
  padding: 6px 9px;
  border-radius: 999px;
  background: #e0f2fe;
  color: #0c4a6e;
  font-size: 13px;
  font-weight: 800;
}

.process-progress-track {
  width: 100%;
  height: 12px;
  background: #e8eef5;
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: 12px;
}

.process-progress-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #1f5f99, #16a34a);
  border-radius: 999px;
  transition: width 0.3s ease;
}

.process-step-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

.process-step-metrics div {
  padding: 9px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--border);
}

.process-step-metrics small {
  display: block;
  color: var(--muted);
  font-size: 11px;
  margin-bottom: 4px;
}

.process-step-metrics strong {
  font-size: 13px;
}

.process-empty {
  padding: 18px;
  border: 1px dashed var(--border);
  border-radius: 16px;
  background: #f8fbfe;
  color: var(--muted);
}

@media (max-width: 1280px) {
  .dashboard-analytics-grid .span-3 {
    grid-column: span 1;
  }

  .process-board {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .process-board {
    grid-template-columns: 1fr;
  }

  .process-step-metrics {
    grid-template-columns: 1fr;
  }
}
/* =========================================================
   STEELPPC ANA MENÜ YENİ PANEL YERLEŞİMİ
   Amaç:
   - Paneller üst üste binmesin
   - Ana Menü ekrana otursun
   - Kaydırma sadece ilgili panel içinde olsun
========================================================= */

/* Sadece Ana Menü açıkken tam ekran dashboard davranışı */
body.dashboard-mode {
  overflow: hidden;
}

body.dashboard-mode .shell {
  height: 100vh;
  overflow: hidden;
}

body.dashboard-mode .sidebar {
  height: 100vh;
  overflow-y: auto;
}

body.dashboard-mode .main {
  height: calc(100vh - 24px);
  margin: 12px auto;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

/* Ana Menü'de üst genel başlığı gizle */
body.dashboard-mode .topbar {
  display: none;
}

/* Diğer sayfalarda normal kaydırma olsun */
body:not(.dashboard-mode) {
  overflow: auto;
}

body:not(.dashboard-mode) .shell {
  min-height: 100vh;
}

body:not(.dashboard-mode) .main {
  overflow: visible;
}

body:not(.dashboard-mode) .page.active-page {
  overflow-y: auto;
}

/* Ana Menü ana iskelet */
#dashboardPage.active-page {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-rows: 72px 88px minmax(0, 1fr);
  gap: 10px;
  margin-top: 0;
  overflow: hidden;
}

/* Üst tanıtım paneli */
#dashboardPage .compact-hero {
  min-height: 0;
  margin: 0;
  padding: 12px 16px;
  border-radius: 18px;
}

#dashboardPage .compact-hero h3 {
  margin: 0 0 4px 0;
  font-size: 21px;
}

#dashboardPage .compact-hero p {
  font-size: 13px;
  margin: 0;
}

#dashboardPage .hero-actions {
  flex-shrink: 0;
}

#dashboardPage .hero-actions .btn.big {
  padding: 9px 12px;
  font-size: 13px;
}

/* Üst küçük özet kartları */
.dashboard-overview-grid {
  min-height: 0;
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  overflow: hidden;
}

.dashboard-overview-grid .stat-card {
  min-width: 0;
  min-height: 0;
  height: 88px;
  padding: 10px;
  border-radius: 14px;
  overflow: hidden;
}

.dashboard-overview-grid .stat-card span {
  font-size: 10.5px;
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dashboard-overview-grid .stat-card strong {
  display: block;
  font-size: 17px;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dashboard-overview-grid .stat-card em {
  display: none;
}

/* Alt panel alanı: kesin yerleşim */
.dashboard-analytics-grid {
  height: 100%;
  min-height: 0;
  overflow: hidden;
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-template-rows: minmax(245px, 1.15fr) minmax(190px, 0.85fr);
  gap: 10px;
  align-items: stretch;
}

/* Eski span ayarlarını etkisiz hale getir */
.dashboard-analytics-grid .span-2,
.dashboard-analytics-grid .span-3 {
  grid-column: auto;
}

/* 1. panel: Aktif Proje İlerleme Panosu */
.dashboard-analytics-grid > .panel:nth-child(1) {
  grid-column: 1 / 6;
  grid-row: 1 / 2;
}

/* 2. panel: Aktif Projelerin Durumu */
.dashboard-analytics-grid > .panel:nth-child(2) {
  grid-column: 6 / 10;
  grid-row: 1 / 2;
}

/* 3. panel: Son İşlemler */
.dashboard-analytics-grid > .panel:nth-child(3) {
  grid-column: 10 / 13;
  grid-row: 1 / 2;
}

/* 4. panel: Proje Performans Göstergesi */
.dashboard-analytics-grid > .panel:nth-child(4) {
  grid-column: 1 / 6;
  grid-row: 2 / 3;
}

/* 5. panel: Süreç Dağılımı */
.dashboard-analytics-grid > .panel:nth-child(5) {
  grid-column: 6 / 9;
  grid-row: 2 / 3;
}

/* 6. panel: Ağırlık Dağılımı */
.dashboard-analytics-grid > .panel:nth-child(6) {
  grid-column: 9 / 13;
  grid-row: 2 / 3;
}

/* Tüm dashboard panelleri */
.dashboard-analytics-grid > .panel {
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  padding: 12px;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
}

.dashboard-analytics-grid .panel-title {
  flex-shrink: 0;
  margin-bottom: 8px;
}

.dashboard-analytics-grid .panel-title.with-action {
  gap: 8px;
}

.dashboard-analytics-grid .panel-title h3 {
  font-size: 15px;
  line-height: 1.2;
}

.dashboard-analytics-grid .panel-title p {
  font-size: 11px;
  line-height: 1.25;
}

.dashboard-analytics-grid .panel-title .btn {
  padding: 8px 10px;
  font-size: 12px;
  white-space: nowrap;
}

/* Grafik alanları */
.chart-box {
  flex: 1;
  min-height: 0;
  height: auto;
  overflow: hidden;
}

.chart-box.tall-chart {
  height: auto;
}

.chart-box canvas {
  width: 100% !important;
  height: 100% !important;
}

/* Süreç panosu kendi içinde kaysın */
#activeProcessBoard {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding-right: 4px;
}

.process-board {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.process-step-card {
  min-width: 0;
  padding: 9px;
  border-radius: 12px;
}

.process-step-head {
  margin-bottom: 7px;
}

.process-step-head h4 {
  font-size: 13px;
}

.process-step-head span {
  min-width: 40px;
  padding: 4px 7px;
  font-size: 11px;
}

.process-progress-track {
  height: 7px;
  margin-bottom: 7px;
}

.process-step-metrics {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
}

.process-step-metrics div {
  padding: 6px;
  border-radius: 9px;
  min-width: 0;
}

.process-step-metrics small {
  font-size: 9.5px;
  white-space: nowrap;
}

.process-step-metrics strong {
  display: block;
  font-size: 10.5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Kum saati paneli kendi içinde kaysın */
#projectHourglassGrid {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding-right: 4px;
}

.hourglass-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.hourglass-card {
  min-width: 0;
  padding: 10px;
  border-radius: 13px;
}

.hourglass-card-head {
  margin-bottom: 7px;
}

.hourglass-card-head h4 {
  font-size: 13px;
}

.hourglass-card-head p {
  font-size: 10.5px;
}

.status-pill {
  padding: 4px 8px;
  font-size: 10.5px;
}

.hourglass-layout {
  grid-template-columns: 70px minmax(0, 1fr);
  gap: 8px;
}

.hourglass-shape {
  width: 66px;
  height: 96px;
}

.hourglass-top-bowl,
.hourglass-bottom-bowl {
  left: 7px;
  width: 52px;
  height: 38px;
}

.hourglass-top-bowl {
  top: 5px;
}

.hourglass-bottom-bowl {
  bottom: 5px;
}

.hourglass-flow {
  top: 42px;
  height: 20px;
}

.hourglass-neck {
  top: 46px;
  width: 9px;
  height: 8px;
}

.hourglass-percent {
  font-size: 10px;
  padding: 3px 6px;
}

.hourglass-metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}

.hourglass-metrics div {
  min-width: 0;
  padding: 6px;
  border-radius: 9px;
}

.hourglass-metrics span {
  font-size: 9.5px;
}

.hourglass-metrics strong {
  display: block;
  font-size: 10.5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Son işlemler paneli kendi içinde kaysın */
#recentHistoryBox {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding-right: 4px;
}

.recent-list {
  max-height: none;
}

.compact-list .recent-item,
.recent-item,
.recent-empty {
  padding: 8px;
  font-size: 11.5px;
  line-height: 1.3;
}

.recent-item strong {
  min-width: 52px;
}

/* Panel içi scrollbar daha zarif */
#activeProcessBoard::-webkit-scrollbar,
#projectHourglassGrid::-webkit-scrollbar,
#recentHistoryBox::-webkit-scrollbar {
  width: 6px;
}

#activeProcessBoard::-webkit-scrollbar-thumb,
#projectHourglassGrid::-webkit-scrollbar-thumb,
#recentHistoryBox::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
}

/* Orta ekranlarda tek kolon düzenine dön */
@media (max-width: 1450px) {
  body.dashboard-mode {
    overflow: auto;
  }

  body.dashboard-mode .shell {
    height: auto;
    min-height: 100vh;
    overflow: visible;
  }

  body.dashboard-mode .main {
    height: auto;
    overflow: visible;
  }

  #dashboardPage.active-page {
    height: auto;
    min-height: 0;
    display: block;
    overflow: visible;
  }

  .dashboard-overview-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 12px;
  }

  .dashboard-analytics-grid {
    height: auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
    overflow: visible;
  }

  .dashboard-analytics-grid > .panel:nth-child(1),
  .dashboard-analytics-grid > .panel:nth-child(2),
  .dashboard-analytics-grid > .panel:nth-child(4) {
    grid-column: span 2;
    grid-row: auto;
  }

  .dashboard-analytics-grid > .panel:nth-child(3),
  .dashboard-analytics-grid > .panel:nth-child(5),
  .dashboard-analytics-grid > .panel:nth-child(6) {
    grid-column: span 1;
    grid-row: auto;
  }

  .dashboard-analytics-grid > .panel {
    min-height: 260px;
  }

  #activeProcessBoard,
  #projectHourglassGrid,
  #recentHistoryBox {
    max-height: 320px;
  }
}

/* Küçük ekranlarda tam mobil düzen */
@media (max-width: 900px) {
  .dashboard-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-analytics-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-analytics-grid > .panel:nth-child(n) {
    grid-column: span 1;
    grid-row: auto;
  }

  .process-board {
    grid-template-columns: 1fr;
  }

  .hourglass-layout {
    grid-template-columns: 1fr;
  }
}

/* Database ayar kartı */
.database-info-card {
  display: grid;
  gap: 6px;
  padding: 14px;
  margin-top: 12px;
  border: 1px dashed var(--border);
  border-radius: 16px;
  background: #f8fbfe;
  color: var(--muted);
  font-size: 13px;
}

.database-info-card strong {
  color: var(--text);
}

#databaseStatus {
  font-weight: 700;
  color: var(--primary);
}


/* === Dashboard proje seçimi ve kum saati iyileştirme === */
.dashboard-hover-card {
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.dashboard-hover-card:hover,
.hourglass-card.selected {
  transform: translateY(-4px);
  border-color: var(--primary);
  box-shadow: 0 18px 45px rgba(31, 95, 153, 0.18);
  background: linear-gradient(180deg, #ffffff, #eef7ff);
}

.hourglass-card {
  cursor: pointer;
}

.hourglass-card.selected {
  outline: 2px solid rgba(31, 95, 153, .28);
}

.btn.small {
  padding: 8px 11px;
  font-size: 12px;
}

.process-board {
  display: block;
}

.process-board-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  padding: 14px;
  margin-bottom: 12px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: linear-gradient(135deg, #f8fbfe, #edf6ff);
}

.process-board-header span {
  display: block;
  color: var(--primary);
  font-size: 12px;
  font-weight: 800;
  margin-bottom: 5px;
}

.process-board-header h4 {
  margin: 0;
  font-size: 19px;
}

.process-board-header p {
  margin: 5px 0 0 0;
  color: var(--muted);
  font-size: 13px;
}

.process-board-summary {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-bottom: 12px;
}

.process-board-summary div {
  padding: 11px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #f8fbfe;
}

.process-board-summary span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 5px;
}

.process-board-summary strong {
  font-size: 16px;
}

.process-board-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.hourglass-status-bars {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}

.status-bar-row {
  display: grid;
  grid-template-columns: 52px 1fr 38px;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}

.status-bar-row span,
.status-bar-row b {
  color: var(--muted);
}

.mini-track {
  height: 7px;
  background: #e5edf5;
  border-radius: 999px;
  overflow: hidden;
}

.mini-track i {
  display: block;
  height: 100%;
  min-width: 2px;
  border-radius: 999px;
  background: var(--primary);
}

@media (max-width: 1050px) {
  .process-board-summary,
  .process-board-grid {
    grid-template-columns: 1fr;
  }

  .process-board-header {
    flex-direction: column;
  }
}


/* === Dashboard v3 düzenlemeleri === */
body.dashboard-mode,
body.dashboard-mode .main,
#dashboardPage.active-page {
  background: var(--dashboard-bg);
}

.dashboard-analytics-grid > .panel,
.dashboard-overview-grid .stat-card,
#dashboardPage .hero-panel,
.process-step-card,
.process-board-summary div,
.recent-item,
.chart-box,
.hourglass-card {
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.dashboard-analytics-grid > .panel:hover,
.dashboard-overview-grid .stat-card:hover,
#dashboardPage .hero-panel:hover,
.process-step-card:hover,
.process-board-summary div:hover,
.recent-item:hover,
.hourglass-card:hover {
  transform: translateY(-3px);
  border-color: var(--primary);
  box-shadow: 0 18px 45px rgba(31, 95, 153, 0.16);
}

.process-board-actions {
  flex-wrap: nowrap;
  justify-content: flex-end;
}

.process-board-header {
  align-items: center;
}

.process-board-header h4 {
  color: var(--navy);
}

.dashboard-analytics-grid > .panel:nth-child(3) #recentHistoryBox {
  max-height: none;
}


/* === Dashboard v4 düzeltmeleri ===
   - Ana sayfa boşluk zemini tek renk yapıldı.
   - Hover mavi çizgisi dışarı taşmasın diye outline/border yerine iç gölge kullanıldı.
   - Yeni Proje sayfası son sevk tarihi alanı eklendi.
*/
body.dashboard-mode,
body.dashboard-mode .shell,
body.dashboard-mode .main,
body.dashboard-mode #dashboardPage,
#dashboardPage.active-page,
#dashboardPage .dashboard-overview-grid,
#dashboardPage .dashboard-analytics-grid {
  background: var(--dashboard-bg) !important;
}

body.dashboard-mode .main {
  box-shadow: none !important;
}

#dashboardPage .hero-panel,
#dashboardPage .dashboard-overview-grid .stat-card,
#dashboardPage .dashboard-analytics-grid > .panel,
#dashboardPage .process-step-card,
#dashboardPage .process-board-summary div,
#dashboardPage .recent-item,
#dashboardPage .hourglass-card {
  border: 1px solid var(--border);
  overflow: hidden;
  will-change: transform, box-shadow;
}

#dashboardPage .hero-panel:hover,
#dashboardPage .dashboard-overview-grid .stat-card:hover,
#dashboardPage .dashboard-analytics-grid > .panel:hover,
#dashboardPage .process-step-card:hover,
#dashboardPage .process-board-summary div:hover,
#dashboardPage .recent-item:hover,
#dashboardPage .hourglass-card:hover,
#dashboardPage .dashboard-hover-card:hover {
  border-color: var(--border) !important;
  outline: none !important;
  transform: translateY(-2px);
  box-shadow:
    inset 0 0 0 1px rgba(31, 95, 153, 0.34),
    0 14px 34px rgba(23, 32, 51, 0.14) !important;
}

#dashboardPage .hourglass-card.selected {
  outline: none !important;
  border-color: var(--border) !important;
  box-shadow:
    inset 0 0 0 2px rgba(31, 95, 153, 0.42),
    0 14px 34px rgba(23, 32, 51, 0.14) !important;
}

.project-extra-grid {
  display: grid;
  grid-template-columns: minmax(260px, 420px);
  gap: 14px;
  margin: 0 0 20px 0;
}

.project-date-card {
  display: grid;
  gap: 8px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #f8fbfe;
}

.project-date-card span {
  font-weight: 800;
  color: #26364f;
}

.project-date-card span small {
  font-weight: 600;
  color: var(--muted);
}

.project-date-card em {
  font-style: normal;
  color: var(--muted);
  font-size: 12px;
}

@media (max-width: 760px) {
  .project-extra-grid {
    grid-template-columns: 1fr;
  }
}

/* PROJE TAKİP SAYFASI - PROJE SEÇİCİ VE İÇTEN KAYDIRMALI YERLEŞİM */
body:not(.dashboard-mode) #trackingPage.active-page {
  height: calc(100vh - 150px);
  min-height: 560px;
}

.tracking-panel {
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.tracking-header {
  flex: 0 0 auto;
}

.tracking-project-bar {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: minmax(320px, 0.95fr) 1.6fr;
  gap: 14px;
  align-items: stretch;
  margin-bottom: 14px;
}

.tracking-project-selects {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #f8fbfe;
}

.tracking-project-selects label {
  display: grid;
  gap: 7px;
  font-weight: 700;
  color: #26364f;
}

.tracking-project-selects label span {
  font-size: 12px;
  color: var(--muted);
}

.tracking-summary-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
}

.tracking-summary-card {
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: #f8fbfe;
  min-height: 78px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.tracking-summary-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.tracking-summary-card strong {
  font-size: 18px;
}

.tracking-filter-row {
  flex: 0 0 auto;
}

.tracking-table-scroll {
  flex: 1 1 auto;
  min-height: 0;
  overflow: auto;
}

.tracking-table-scroll table {
  min-width: 1250px;
}

.tracking-panel .project-header,
.tracking-project-bar,
.tracking-filter-row {
  position: relative;
  z-index: 2;
}

@media (max-width: 1250px) {
  .tracking-project-bar {
    grid-template-columns: 1fr;
  }

  .tracking-summary-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1050px) {
  body:not(.dashboard-mode) #trackingPage.active-page {
    height: auto;
    min-height: 0;
  }

  .tracking-panel {
    height: auto;
    overflow: visible;
  }

  .tracking-project-selects,
  .tracking-summary-grid {
    grid-template-columns: 1fr;
  }

  .tracking-table-scroll {
    max-height: 70vh;
  }
}


/* PROJE TAKİP - PART BAZLI KESİM AKIŞI */
.status-badge {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 2px;
  min-width: 96px;
  padding: 6px 9px;
  border-radius: 12px;
  background: #eef2f7;
  border: 1px solid var(--border);
  line-height: 1.15;
}

.status-badge strong {
  font-size: 12px;
  white-space: nowrap;
}

.status-badge small {
  display: block;
  color: var(--muted);
  font-size: 10.5px;
  font-weight: 700;
}

.status-badge.status-devam {
  background: #fff7ed;
  border-color: #fed7aa;
}

.status-badge.status-tamam,
.status-badge.status-sevk {
  background: #ecfdf5;
  border-color: #bbf7d0;
}

.status-badge.status-revize {
  background: #fef2f2;
  border-color: #fecaca;
}

.status-badge.status-hazir {
  background: #eff6ff;
  border-color: #bfdbfe;
}

.detail-summary {
  grid-template-columns: repeat(5, 1fr);
}

.detail-flow-note {
  margin: -4px 0 14px 0;
  padding: 11px 12px;
  background: #f8fbfe;
  border: 1px dashed var(--border);
  border-radius: 14px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.detail-table-wrapper {
  max-height: 58vh;
  overflow: auto;
}

.detail-cutting-table {
  min-width: 1650px;
}

.detail-cutting-table th,
.detail-cutting-table td {
  font-size: 12.5px;
  padding: 9px 8px;
}

.flow-btn {
  width: 100%;
  min-width: 120px;
  border: 1px solid var(--border);
  border-radius: 11px;
  background: #fff;
  color: var(--text);
  padding: 8px 9px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  transition: 0.18s ease;
  text-align: center;
  line-height: 1.2;
}

.flow-btn:hover:not(:disabled) {
  background: #eff6ff;
  border-color: var(--primary);
  box-shadow: inset 0 0 0 1px rgba(31, 95, 153, 0.18);
}

.flow-btn:disabled {
  cursor: not-allowed;
  opacity: 0.62;
}

.flow-btn.done {
  background: #ecfdf5;
  border-color: #bbf7d0;
  color: #047857;
  opacity: 1;
}

.flow-btn.revision {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
}

.flow-btn.revision.active {
  background: #fef2f2;
  border-color: #fecaca;
  color: #991b1b;
}

.flow-btn small {
  display: block;
  margin-top: 3px;
  font-size: 10.5px;
  font-weight: 700;
}

@media (max-width: 1050px) {
  .detail-summary {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   LAPTOP 100% SABİT DASHBOARD DÜZENİ - V3
   Amaç:
   - Büyük monitördeki ilk yerleşim mantığını korumak.
   - 1366x768 laptop ekranında tarayıcı %100 iken ana menüyü sığdırmak.
   - Panelleri tek kolona düşürmeden, sıkıştırılmış ama okunabilir yapmak.
========================================================= */
@media (min-width: 1000px) {
  body.dashboard-mode {
    overflow: hidden !important;
    background: var(--dashboard-bg, #edf4fb) !important;
  }

  body.dashboard-mode .shell {
    height: 100vh !important;
    min-height: 100vh !important;
    overflow: hidden !important;
    grid-template-columns: 190px minmax(0, 1fr) !important;
    background: var(--dashboard-bg, #edf4fb) !important;
  }

  body.dashboard-mode .sidebar {
    width: 190px !important;
    min-width: 190px !important;
    height: 100vh !important;
    padding: 14px !important;
    gap: 14px !important;
    overflow: hidden !important;
  }

  body.dashboard-mode .brand {
    gap: 8px !important;
    padding-bottom: 12px !important;
  }

  body.dashboard-mode .brand-icon {
    width: 34px !important;
    height: 34px !important;
    border-radius: 10px !important;
    font-size: 16px !important;
  }

  body.dashboard-mode .brand h1 {
    font-size: 14px !important;
    line-height: 1.1 !important;
  }

  body.dashboard-mode .brand p {
    font-size: 9.5px !important;
    line-height: 1.15 !important;
    margin-top: 3px !important;
  }

  body.dashboard-mode .side-nav {
    gap: 7px !important;
  }

  body.dashboard-mode .nav-btn {
    padding: 9px 10px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
    line-height: 1.15 !important;
  }

  body.dashboard-mode .sidebar-footer {
    padding: 10px !important;
    border-radius: 12px !important;
  }

  body.dashboard-mode .sidebar-footer span {
    font-size: 10px !important;
    margin-bottom: 4px !important;
  }

  body.dashboard-mode .sidebar-footer strong {
    font-size: 12px !important;
    line-height: 1.15 !important;
  }

  body.dashboard-mode .main {
    width: calc(100vw - 206px) !important;
    max-width: none !important;
    height: calc(100vh - 14px) !important;
    min-height: 0 !important;
    margin: 7px 8px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    background: var(--dashboard-bg, #edf4fb) !important;
  }

  body.dashboard-mode .topbar {
    display: none !important;
  }

  body.dashboard-mode #dashboardPage.active-page {
    display: grid !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    grid-template-rows: 46px 56px minmax(0, 1fr) !important;
    gap: 7px !important;
    background: var(--dashboard-bg, #edf4fb) !important;
  }

  body.dashboard-mode #dashboardPage .compact-hero {
    min-height: 0 !important;
    height: 46px !important;
    margin: 0 !important;
    padding: 7px 11px !important;
    border-radius: 13px !important;
  }

  body.dashboard-mode #dashboardPage .compact-hero h3 {
    font-size: 16px !important;
    line-height: 1.05 !important;
    margin: 0 0 2px 0 !important;
  }

  body.dashboard-mode #dashboardPage .compact-hero p {
    font-size: 10.5px !important;
    line-height: 1.15 !important;
    margin: 0 !important;
  }

  body.dashboard-mode #dashboardPage .hero-actions .btn.big {
    padding: 7px 10px !important;
    border-radius: 9px !important;
    font-size: 11px !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-overview-grid {
    display: grid !important;
    grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
    gap: 7px !important;
    height: 56px !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    background: var(--dashboard-bg, #edf4fb) !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-overview-grid .stat-card {
    height: 56px !important;
    min-height: 0 !important;
    padding: 7px 8px !important;
    border-radius: 11px !important;
    overflow: hidden !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-overview-grid .stat-card span {
    display: block !important;
    font-size: 8.5px !important;
    line-height: 1.1 !important;
    margin-bottom: 4px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-overview-grid .stat-card strong {
    display: block !important;
    font-size: 12.5px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-overview-grid .stat-card em {
    display: none !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid {
    display: grid !important;
    grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
    grid-template-rows: minmax(0, 1.16fr) minmax(0, .84fr) !important;
    grid-auto-flow: row !important;
    gap: 7px !important;
    height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    align-items: stretch !important;
    background: var(--dashboard-bg, #edf4fb) !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel,
  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:nth-child(n),
  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .span-2,
  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .span-3 {
    min-width: 0 !important;
    min-height: 0 !important;
    width: auto !important;
    height: auto !important;
    padding: 8px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:nth-child(1) {
    grid-column: 1 / 6 !important;
    grid-row: 1 / 2 !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:nth-child(2) {
    grid-column: 6 / 10 !important;
    grid-row: 1 / 2 !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:nth-child(3) {
    grid-column: 10 / 13 !important;
    grid-row: 1 / 2 !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:nth-child(4) {
    grid-column: 1 / 6 !important;
    grid-row: 2 / 3 !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:nth-child(5) {
    grid-column: 6 / 9 !important;
    grid-row: 2 / 3 !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:nth-child(6) {
    grid-column: 9 / 13 !important;
    grid-row: 2 / 3 !important;
  }

  body.dashboard-mode #dashboardPage .panel-title {
    flex-shrink: 0 !important;
    margin-bottom: 5px !important;
  }

  body.dashboard-mode #dashboardPage .panel-title h3 {
    font-size: 12px !important;
    line-height: 1.1 !important;
    margin: 0 !important;
  }

  body.dashboard-mode #dashboardPage .panel-title p {
    font-size: 9px !important;
    line-height: 1.12 !important;
    margin-top: 3px !important;
    display: block !important;
    max-height: 20px !important;
    overflow: hidden !important;
  }

  body.dashboard-mode #dashboardPage .panel-title .btn,
  body.dashboard-mode #dashboardPage .btn.small {
    padding: 5px 7px !important;
    border-radius: 8px !important;
    font-size: 9.5px !important;
    line-height: 1.1 !important;
  }

  body.dashboard-mode #dashboardPage #activeProcessBoard,
  body.dashboard-mode #dashboardPage #projectHourglassGrid,
  body.dashboard-mode #dashboardPage #recentHistoryBox {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-right: 3px !important;
  }

  body.dashboard-mode #dashboardPage .process-board-header {
    padding: 7px !important;
    margin-bottom: 5px !important;
    border-radius: 10px !important;
    gap: 6px !important;
  }

  body.dashboard-mode #dashboardPage .process-board-header h4 {
    font-size: 13px !important;
    line-height: 1.1 !important;
    margin: 0 0 2px 0 !important;
  }

  body.dashboard-mode #dashboardPage .process-board-header p {
    font-size: 9.5px !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: 250px !important;
  }

  body.dashboard-mode #dashboardPage .process-board-actions {
    gap: 4px !important;
    flex-wrap: nowrap !important;
  }

  body.dashboard-mode #dashboardPage .process-board-summary {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 5px !important;
    margin-bottom: 6px !important;
  }

  body.dashboard-mode #dashboardPage .process-board-summary div {
    padding: 6px !important;
    border-radius: 9px !important;
    min-width: 0 !important;
    min-height: 42px !important;
  }

  body.dashboard-mode #dashboardPage .process-board-summary span {
    font-size: 8.5px !important;
    line-height: 1.1 !important;
    margin-bottom: 3px !important;
  }

  body.dashboard-mode #dashboardPage .process-board-summary strong {
    font-size: 10.5px !important;
    line-height: 1.1 !important;
  }

  body.dashboard-mode #dashboardPage .process-board-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 5px !important;
  }

  body.dashboard-mode #dashboardPage .process-step-card {
    padding: 6px !important;
    border-radius: 9px !important;
    min-height: 54px !important;
  }

  body.dashboard-mode #dashboardPage .process-step-head {
    margin-bottom: 4px !important;
    gap: 4px !important;
  }

  body.dashboard-mode #dashboardPage .process-step-head h4 {
    font-size: 10.5px !important;
    line-height: 1.05 !important;
  }

  body.dashboard-mode #dashboardPage .process-step-head span {
    min-width: 28px !important;
    padding: 2px 5px !important;
    font-size: 9px !important;
    border-radius: 999px !important;
  }

  body.dashboard-mode #dashboardPage .process-progress-track {
    height: 5px !important;
    margin-bottom: 4px !important;
  }

  body.dashboard-mode #dashboardPage .process-step-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 3px !important;
  }

  body.dashboard-mode #dashboardPage .process-step-metrics div {
    padding: 3px !important;
    border-radius: 6px !important;
    min-width: 0 !important;
  }

  body.dashboard-mode #dashboardPage .process-step-metrics small {
    display: block !important;
    font-size: 7.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  body.dashboard-mode #dashboardPage .process-step-metrics strong {
    display: block !important;
    font-size: 8px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 5px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-card {
    padding: 7px !important;
    border-radius: 10px !important;
    min-height: 64px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-card-head {
    margin-bottom: 4px !important;
    gap: 5px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-card-head h4 {
    font-size: 10.5px !important;
    line-height: 1.05 !important;
    margin: 0 0 2px 0 !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-card-head p {
    font-size: 8.5px !important;
    line-height: 1.05 !important;
    margin: 0 !important;
  }

  body.dashboard-mode #dashboardPage .status-pill {
    padding: 2px 5px !important;
    font-size: 8px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-layout {
    grid-template-columns: 44px minmax(0, 1fr) !important;
    gap: 6px !important;
    align-items: center !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-shape {
    width: 42px !important;
    height: 55px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-top-bowl,
  body.dashboard-mode #dashboardPage .hourglass-bottom-bowl {
    left: 5px !important;
    width: 32px !important;
    height: 21px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-top-bowl {
    top: 4px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-bottom-bowl {
    bottom: 4px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-flow {
    top: 25px !important;
    height: 10px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-neck {
    top: 27px !important;
    width: 6px !important;
    height: 5px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-percent {
    font-size: 8px !important;
    padding: 2px 4px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-metrics {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 3px !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-metrics div {
    padding: 3px !important;
    border-radius: 6px !important;
    min-width: 0 !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-metrics span {
    font-size: 7.5px !important;
    line-height: 1 !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-metrics strong {
    display: block !important;
    font-size: 8px !important;
    line-height: 1.05 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.dashboard-mode #dashboardPage .recent-list {
    max-height: none !important;
    gap: 5px !important;
  }

  body.dashboard-mode #dashboardPage .recent-item,
  body.dashboard-mode #dashboardPage .recent-empty {
    padding: 6px !important;
    border-radius: 8px !important;
    font-size: 9.5px !important;
    line-height: 1.15 !important;
  }

  body.dashboard-mode #dashboardPage .recent-item strong {
    min-width: 42px !important;
  }

  body.dashboard-mode #dashboardPage .chart-box,
  body.dashboard-mode #dashboardPage .chart-box.tall-chart {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
  }

  body.dashboard-mode #dashboardPage .chart-box canvas {
    width: 100% !important;
    height: 100% !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-hover-card:hover,
  body.dashboard-mode #dashboardPage .dashboard-analytics-grid > .panel:hover,
  body.dashboard-mode #dashboardPage .dashboard-overview-grid .stat-card:hover,
  body.dashboard-mode #dashboardPage .hero-panel:hover,
  body.dashboard-mode #dashboardPage .process-step-card:hover,
  body.dashboard-mode #dashboardPage .process-board-summary div:hover,
  body.dashboard-mode #dashboardPage .recent-item:hover,
  body.dashboard-mode #dashboardPage .hourglass-card:hover {
    transform: translateY(-1px) !important;
    box-shadow: inset 0 0 0 1px rgba(31, 95, 153, 0.28), 0 8px 20px rgba(31, 95, 153, 0.10) !important;
    border-color: rgba(31, 95, 153, 0.42) !important;
    outline: none !important;
  }

  body.dashboard-mode #dashboardPage .hourglass-card.selected {
    outline: none !important;
    box-shadow: inset 0 0 0 1px rgba(31, 95, 153, 0.45), 0 8px 20px rgba(31, 95, 153, 0.12) !important;
  }
}

@media (min-width: 1000px) and (max-width: 1280px) {
  body.dashboard-mode .shell {
    grid-template-columns: 172px minmax(0, 1fr) !important;
  }

  body.dashboard-mode .sidebar {
    width: 172px !important;
    min-width: 172px !important;
    padding: 12px !important;
  }

  body.dashboard-mode .main {
    width: calc(100vw - 186px) !important;
    margin: 6px 7px !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-overview-grid .stat-card span {
    font-size: 7.8px !important;
  }

  body.dashboard-mode #dashboardPage .dashboard-overview-grid .stat-card strong {
    font-size: 11px !important;
  }
}

/* =========================================================
   PROJE TAKİP DETAY MODALI - KOMPAKT V3
   - Dış modal kaydırması kaldırıldı.
   - Tablo ekrana sığacak şekilde sıkıştırıldı.
   - Revize / profil-plaka / malzeme açıklaması görünümü düzenlendi.
   ========================================================= */

.topbar {
  background:
    linear-gradient(135deg, rgba(31, 95, 153, 0.97), rgba(15, 51, 86, 0.97)),
    radial-gradient(circle at top right, rgba(255,255,255,0.18), transparent 42%);
  color: #fff;
}

.topbar p {
  color: #d9e8f8;
}

.topbar .btn.primary {
  background: rgba(255,255,255,0.18);
  border: 1px solid rgba(255,255,255,0.35);
}

#detailModal {
  padding: 10px;
}

#detailModal .modal-content.wide {
  width: min(98vw, 1600px);
  height: min(96vh, 920px);
  max-height: 96vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding: 14px;
  border-radius: 18px;
}

#detailModal .modal-header {
  flex: 0 0 auto;
  align-items: center;
  margin-bottom: 10px;
  padding: 12px 14px;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(31, 95, 153, 0.97), rgba(15, 51, 86, 0.97)),
    radial-gradient(circle at top right, rgba(255,255,255,0.18), transparent 42%);
  color: #fff;
}

#detailModal .modal-header h2 {
  font-size: 22px;
  line-height: 1.1;
}

#detailModal .modal-header p,
#detailSubtitle {
  display: none;
}

#detailModal .icon-btn {
  background: rgba(255,255,255,0.18);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.35);
}

#detailBody {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow: hidden;
}

.compact-detail-summary {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 8px;
  margin-bottom: 0;
}

.compact-detail-summary div {
  padding: 8px 10px;
  border-radius: 12px;
}

.compact-detail-summary span {
  font-size: 11px;
  margin-bottom: 4px;
}

.compact-detail-summary strong {
  font-size: 15px;
}

.compact-detail-table-wrapper {
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overflow: auto;
  border-radius: 14px;
  scrollbar-width: none;
}

.compact-detail-table-wrapper::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.compact-detail-table {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

.compact-detail-table th,
.compact-detail-table td {
  padding: 6px 5px;
  font-size: 11px;
  line-height: 1.15;
  vertical-align: middle;
}

.compact-detail-table th {
  font-size: 10.5px;
  white-space: normal;
}

.compact-detail-table th:nth-child(1),
.compact-detail-table td:nth-child(1) { width: 8%; }
.compact-detail-table th:nth-child(2),
.compact-detail-table td:nth-child(2) { width: 6%; text-align: center; }
.compact-detail-table th:nth-child(3),
.compact-detail-table td:nth-child(3) { width: 10%; }
.compact-detail-table th:nth-child(4),
.compact-detail-table td:nth-child(4) { width: 6%; }
.compact-detail-table th:nth-child(5),
.compact-detail-table td:nth-child(5) { width: 6%; text-align: center; }
.compact-detail-table th:nth-child(6),
.compact-detail-table td:nth-child(6) { width: 6%; text-align: center; }
.compact-detail-table th:nth-child(7),
.compact-detail-table td:nth-child(7) { width: 12%; }
.compact-detail-table th:nth-child(8),
.compact-detail-table td:nth-child(8),
.compact-detail-table th:nth-child(9),
.compact-detail-table td:nth-child(9),
.compact-detail-table th:nth-child(10),
.compact-detail-table td:nth-child(10),
.compact-detail-table th:nth-child(11),
.compact-detail-table td:nth-child(11),
.compact-detail-table th:nth-child(12),
.compact-detail-table td:nth-child(12),
.compact-detail-table th:nth-child(13),
.compact-detail-table td:nth-child(13) { width: 7.66%; }

.center-cell {
  text-align: center;
}

.part-no-cell .status-badge {
  margin-top: 4px;
  padding: 3px 6px;
  font-size: 9.5px;
}

.part-no-cell .status-badge small {
  display: none;
}

.profile-type-cell {
  display: table-cell;
}

.profile-type-cell strong {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  word-break: break-word;
}

.material-type-pill {
  display: inline-flex;
  align-items: center;
  padding: 3px 7px;
  border-radius: 999px;
  font-size: 9.5px;
  font-weight: 900;
  border: 1px solid var(--border);
}

.material-type-pill.profile {
  background: #eff6ff;
  color: #0c4a6e;
  border-color: #bfdbfe;
}

.material-type-pill.plate {
  background: #fff7ed;
  color: #9a3412;
  border-color: #fed7aa;
}

.material-note-cell span {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-clamp: 2;
  max-height: 2.35em;
}

.part-row-revision td {
  background: #fff7f7;
}

.compact-detail-table .flow-btn {
  min-width: 0;
  width: 100%;
  padding: 6px 5px;
  border-radius: 9px;
  font-size: 10.5px;
  line-height: 1.1;
}

.compact-detail-table .flow-btn small {
  margin-top: 2px;
  font-size: 9px;
}

@media (max-width: 1366px) {
  #detailModal .modal-content.wide {
    width: 99vw;
    height: 97vh;
    max-height: 97vh;
    padding: 10px;
  }

  #detailModal .modal-header {
    padding: 9px 12px;
    margin-bottom: 7px;
  }

  #detailModal .modal-header h2 {
    font-size: 19px;
  }

  .compact-detail-summary {
    gap: 6px;
  }

  .compact-detail-summary div {
    padding: 6px 8px;
  }

  .compact-detail-summary strong {
    font-size: 13px;
  }

  .compact-detail-table th,
  .compact-detail-table td {
    padding: 5px 4px;
    font-size: 10.3px;
  }

  .compact-detail-table .flow-btn {
    font-size: 9.8px;
    padding: 5px 4px;
  }
}

/* =====================================================
   STEELCUTPRO ENTEGRASYON PANELİ
   ===================================================== */
.steelcut-panel {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.steelcut-control-grid {
  display: grid;
  grid-template-columns: 1.2fr 1.2fr 0.8fr 1fr;
  gap: 12px;
  align-items: end;
}

.steelcut-control-grid label {
  display: grid;
  gap: 6px;
  font-weight: 700;
  color: #26364f;
}

.steelcut-control-grid label span {
  font-size: 12px;
  color: var(--muted);
}

.steelcut-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.steelcut-summary-grid div {
  background: #f7fafc;
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 12px;
}

.steelcut-summary-grid span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 6px;
}

.steelcut-summary-grid strong {
  font-size: 18px;
}

.steelcut-layout {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 14px;
  min-height: 0;
}

.steelcut-left,
.steelcut-right {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  padding: 14px;
  min-width: 0;
}

.compact-title {
  margin-bottom: 10px;
}

.compact-title h3 {
  font-size: 15px;
}

.compact-title p {
  font-size: 12px;
}

.steelcut-table-scroll {
  max-height: 330px;
  overflow: auto;
}

.steelcut-table {
  min-width: 720px;
}

.cut-result-box {
  max-height: 330px;
  overflow: auto;
  display: grid;
  gap: 10px;
}

.cut-empty {
  padding: 18px;
  border: 1px dashed var(--border);
  border-radius: 14px;
  color: var(--muted);
  background: #f8fbfe;
}

.cut-result-group {
  border: 1px solid var(--border);
  border-radius: 14px;
  background: #f8fbfe;
  padding: 12px;
}

.cut-result-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 10px;
}

.cut-result-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 700;
}

.cut-bars {
  display: grid;
  gap: 8px;
}

.cut-bar-card {
  background: #fff;
  border: 1px solid #dbe6f2;
  border-radius: 12px;
  padding: 9px;
  display: grid;
  gap: 4px;
}

.cut-bar-card b {
  color: #123f68;
}

.cut-bar-card small,
.cut-bar-card em {
  font-size: 12px;
  color: var(--muted);
  font-style: normal;
  line-height: 1.35;
}

.steelcut-actions {
  justify-content: flex-end;
}

@media (max-width: 1200px) {
  .steelcut-control-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .steelcut-layout {
    grid-template-columns: 1fr;
  }
}


/* =====================================================
   STEELCUTPRO ÇOKLU PROJE ENTEGRASYONU
   ===================================================== */
.steelcut-project-area {
  background: #f8fbfe;
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 14px;
  display: grid;
  gap: 12px;
}

.multi-cut-controls {
  grid-template-columns: 1fr 1fr 0.85fr 1fr;
}

.cut-project-toolbar {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.cut-project-toolbar .btn {
  padding: 8px 11px;
  font-size: 12px;
}

.cut-project-checkbox-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  max-height: 138px;
  overflow: auto;
  padding-right: 4px;
}

.cut-project-check {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 9px;
  border: 1px solid var(--border);
  background: #fff;
  border-radius: 12px;
  cursor: pointer;
  transition: 0.18s ease;
}

.cut-project-check:hover,
.cut-project-check.selected {
  border-color: #1f5f99;
  box-shadow: inset 0 0 0 1px rgba(31, 95, 153, 0.18), 0 6px 16px rgba(31, 95, 153, 0.10);
}

.cut-project-check input {
  margin-top: 3px;
  flex: 0 0 auto;
}

.cut-project-check span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.cut-project-check strong {
  font-size: 12px;
  color: #123f68;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cut-project-check em {
  font-style: normal;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.25;
}

.steelcut-summary-five {
  grid-template-columns: repeat(5, 1fr);
}

.multi-project-cut-table {
  min-width: 880px;
}

@media (max-width: 1400px) {
  .cut-project-checkbox-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 1200px) {
  .multi-cut-controls,
  .steelcut-summary-five {
    grid-template-columns: repeat(2, 1fr);
  }

  .cut-project-checkbox-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .multi-cut-controls,
  .steelcut-summary-five,
  .cut-project-checkbox-list {
    grid-template-columns: 1fr;
  }
}

/* =====================================================
   STEELCUTPRO TAM ENTEGRASYON: STOK / FIRE / PDF
   ===================================================== */
.extended-cut-controls {
  grid-template-columns: 1fr 1fr 0.75fr 0.9fr 0.85fr;
}

.steelcut-summary-eight {
  grid-template-columns: repeat(8, minmax(0, 1fr));
}

.steelcut-layout-extended {
  grid-template-columns: 1fr 1fr;
}

.cut-bar-card.from-stock {
  border-color: #93c5fd;
  background: linear-gradient(180deg, #ffffff, #eff6ff);
}

.cut-bar-card.from-new {
  border-color: #bbf7d0;
  background: linear-gradient(180deg, #ffffff, #f0fdf4);
}

.steelcut-stock-area {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 4px;
}

.steelcut-stock-panel {
  border: 1px solid var(--border);
  border-radius: 18px;
  background: #fff;
  padding: 14px;
  min-width: 0;
}

.steelcut-stock-entry {
  display: grid;
  grid-template-columns: 1.4fr 0.8fr 0.55fr auto;
  gap: 8px;
  align-items: center;
  margin-bottom: 12px;
}

.steelcut-stock-entry input {
  min-width: 0;
}

.steelcut-stock-list,
.steelcut-history-list {
  display: grid;
  gap: 8px;
  max-height: 230px;
  overflow: auto;
  padding-right: 4px;
}

.stock-material-card {
  border: 1px solid #dbe6f2;
  border-radius: 13px;
  background: #f8fbfe;
  padding: 10px;
}

.stock-material-card h4 {
  margin: 0 0 8px 0;
  font-size: 13px;
  color: #123f68;
}

.stock-material-card.scrap-card h4 {
  color: #991b1b;
}

.stock-line,
.history-line {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
  padding: 5px 0;
  border-top: 1px solid #e8eef6;
  font-size: 12px;
}

.stock-line:first-of-type {
  border-top: 0;
}

.stock-line span,
.history-line span,
.history-line em {
  color: var(--muted);
  font-style: normal;
}

.history-line {
  grid-template-columns: 0.9fr 1.2fr;
  background: #f8fbfe;
  border: 1px solid var(--border);
  border-radius: 11px;
  padding: 8px;
}

.history-line em {
  grid-column: 1 / -1;
  font-size: 11px;
}

@media (max-width: 1450px) {
  .extended-cut-controls,
  .steelcut-summary-eight {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 1200px) {
  .steelcut-layout-extended,
  .steelcut-stock-area {
    grid-template-columns: 1fr;
  }

  .extended-cut-controls,
  .steelcut-summary-eight {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .extended-cut-controls,
  .steelcut-summary-eight,
  .steelcut-stock-entry {
    grid-template-columns: 1fr;
  }
}

/* =====================================================
   STEELCUTPRO ERP V4 - AYRI SAYFA / MANUEL KESIM / STOK-HURDA
   ===================================================== */
.side-nav .nav-btn[data-page="steelCutStockPage"] {
  position: relative;
}

.steelcut-erp-page,
.steelcut-stock-page {
  margin-top: 20px;
}

.steelcut-erp-shell {
  display: grid;
  gap: 16px;
}

.steelcut-erp-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 22px;
  border-radius: 22px;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(15, 23, 42, 0.92), rgba(31, 95, 153, 0.94)),
    radial-gradient(circle at top right, rgba(255,255,255,0.18), transparent 38%);
  border: 1px solid rgba(255,255,255,0.20);
  box-shadow: var(--shadow);
}

.steelcut-erp-hero.stock-hero {
  background:
    linear-gradient(135deg, rgba(15, 51, 86, 0.96), rgba(15, 118, 110, 0.92)),
    radial-gradient(circle at top right, rgba(255,255,255,0.16), transparent 38%);
}

.steelcut-eyebrow {
  display: inline-block;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #bfdbfe;
}

.steelcut-erp-hero h3 {
  margin: 0;
  color: #fff;
  font-size: 26px;
  font-weight: 900;
}

.steelcut-erp-hero p {
  margin: 6px 0 0 0;
  color: #dbeafe;
  font-size: 13px;
}

.steelcut-hero-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  max-width: 560px;
}

.steelcut-hero-actions .btn.ghost,
.steelcut-hero-actions .btn.light {
  background: rgba(255,255,255,0.15);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.32);
}

.steelcut-erp-summary {
  margin: 0;
}

.steelcut-erp-grid {
  display: grid;
  grid-template-columns: minmax(270px, .85fr) minmax(320px, 1.1fr) minmax(340px, 1.2fr);
  grid-template-areas:
    "projects settings result"
    "projects manual result"
    "list list result";
  gap: 14px;
  align-items: stretch;
}

.steelcut-erp-card,
.steelcut-stock-entry-panel {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 16px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
  min-width: 0;
  overflow: hidden;
}

.project-select-card { grid-area: projects; }
.cut-settings-card { grid-area: settings; }
.manual-cut-card { grid-area: manual; }
.cut-list-card { grid-area: list; }
.cut-result-card { grid-area: result; }

.steelcut-project-controls,
.cut-settings-grid {
  grid-template-columns: 1fr;
  gap: 10px;
}

.cut-project-checkbox-list {
  max-height: 250px;
  overflow: auto;
  padding-right: 4px;
}

.manual-cut-entry,
.steelcut-stock-entry.wide-entry {
  display: grid;
  grid-template-columns: 1.2fr .75fr .55fr auto;
  gap: 8px;
  align-items: end;
}

.manual-cut-entry input,
.steelcut-stock-entry.wide-entry input {
  min-width: 0;
}

.manual-cut-table-wrap {
  margin-top: 10px;
  max-height: 150px;
  overflow: auto;
}

.manual-cut-table,
.multi-project-cut-table {
  min-width: 720px;
}

.steelcut-table-scroll {
  max-height: 255px;
  overflow: auto;
}

.cut-result-card .cut-result-box {
  max-height: 555px;
  overflow: auto;
}

.btn.mini,
.btn.danger.mini {
  padding: 6px 9px;
  font-size: 12px;
  border-radius: 8px;
}

.btn.danger.mini {
  background: #fee2e2;
  color: #991b1b;
}

.steelcut-stock-dashboard {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.steelcut-stock-dashboard div {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 16px;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.06);
}

.steelcut-stock-dashboard span {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-bottom: 8px;
  font-weight: 800;
}

.steelcut-stock-dashboard strong {
  display: block;
  font-size: 24px;
}

.stock-page-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: start;
}

.stock-page-grid .stock-history-panel {
  grid-column: 1 / -1;
}

.stock-page-list {
  max-height: 360px;
  overflow: auto;
}

.stock-page-history {
  max-height: 220px;
  overflow: auto;
}

.steelcut-stock-panel {
  min-width: 0;
}

@media (max-width: 1250px) {
  .steelcut-erp-grid {
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "projects settings"
      "manual manual"
      "list list"
      "result result";
  }

  .cut-result-card .cut-result-box {
    max-height: 360px;
  }
}

@media (max-width: 900px) {
  .steelcut-erp-hero {
    flex-direction: column;
    align-items: stretch;
  }

  .steelcut-hero-actions {
    max-width: none;
    justify-content: flex-start;
  }

  .steelcut-erp-grid,
  .stock-page-grid,
  .steelcut-stock-dashboard {
    grid-template-columns: 1fr;
    grid-template-areas: none;
  }

  .project-select-card,
  .cut-settings-card,
  .manual-cut-card,
  .cut-list-card,
  .cut-result-card,
  .stock-page-grid .stock-history-panel {
    grid-area: auto;
    grid-column: auto;
  }

  .manual-cut-entry,
  .steelcut-stock-entry.wide-entry {
    grid-template-columns: 1fr;
  }
}

/* =====================================================
   STEELCUTPRO ERP V5 - SADE, EKRANA SIĞAN MODÜL TASARIMI
   ===================================================== */
.btn.warning {
  background: #fef3c7;
  color: #92400e;
  border: 1px solid #fbbf24;
}

.btn.warning:disabled {
  opacity: .45;
  cursor: not-allowed;
  transform: none !important;
  box-shadow: none !important;
}

body:not(.dashboard-mode) #cuttingOptimizerPage.active-page,
body:not(.dashboard-mode) #steelCutStockPage.active-page {
  margin-top: 12px;
}

.scpro-shell {
  height: calc(100vh - 120px);
  min-height: 650px;
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  gap: 10px;
  padding: 12px;
  border-radius: 24px;
  background: rgba(255,255,255,0.96);
  border: 1px solid #dbe3ef;
  box-shadow: 0 20px 45px rgba(15, 23, 42, 0.10);
  overflow: hidden;
}

.scpro-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  min-height: 86px;
  padding: 16px 18px;
  border-radius: 20px;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(15, 23, 42, 0.94), rgba(31, 95, 153, 0.92)),
    radial-gradient(circle at right top, rgba(255,255,255,.20), transparent 38%);
  overflow: hidden;
}

.scpro-kicker {
  display: inline-block;
  margin-bottom: 5px;
  color: #bfdbfe;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.scpro-header h3 {
  margin: 0;
  color: #fff;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: -.2px;
}

.scpro-header p {
  margin: 4px 0 0 0;
  color: #dbeafe;
  font-size: 12px;
}

.scpro-header-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.scpro-header-actions .btn.ghost {
  background: rgba(255,255,255,0.14);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.28);
}

.scpro-top-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.scpro-module-card {
  border: 1px solid #dbe3ef;
  border-radius: 16px;
  background: #fff;
  color: #172033;
  padding: 12px 14px;
  min-height: 82px;
  display: grid;
  grid-template-columns: 42px 1fr;
  grid-template-rows: auto auto;
  gap: 3px 10px;
  text-align: left;
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06);
  cursor: pointer;
}

.scpro-module-card:hover,
.scpro-module-card.active {
  transform: translateY(-1px);
  border-color: #93c5fd;
  box-shadow: inset 0 0 0 1px rgba(31, 95, 153, .12), 0 10px 24px rgba(15, 23, 42, .10);
}

.scpro-module-card span {
  grid-row: 1 / 3;
  width: 38px;
  height: 38px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  background: #eff6ff;
  color: #1f5f99;
  font-weight: 900;
}

.scpro-module-card strong {
  align-self: end;
  font-size: 15px;
  color: #0f3356;
}

.scpro-module-card em {
  font-size: 11px;
  line-height: 1.25;
  color: var(--muted);
  font-style: normal;
}

.scpro-summary {
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 8px;
}

.scpro-summary div {
  padding: 9px 10px;
  min-height: 60px;
  border-radius: 14px;
  background: #f8fafc;
}

.scpro-summary span {
  font-size: 10.5px;
  margin-bottom: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.scpro-summary strong {
  font-size: 15px;
  line-height: 1.1;
}

.scpro-workspace {
  min-height: 0;
  overflow: hidden;
}

.scpro-view {
  display: none;
  height: 100%;
  min-height: 0;
}

.scpro-view.active {
  display: block;
}

.scpro-view-grid {
  height: 100%;
  min-height: 0;
  display: grid;
  gap: 12px;
}

.project-view-grid {
  grid-template-columns: 1.4fr .75fr;
}

.result-view-grid {
  grid-template-columns: .95fr 1.05fr;
}

.scpro-panel {
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid #dbe3ef;
  border-radius: 18px;
  padding: 14px;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.06);
}

.scpro-full-panel {
  height: 100%;
}

.scpro-controls-two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.scpro-settings-list {
  grid-template-columns: 1fr;
  gap: 12px;
}

.scpro-toolbar {
  margin: 8px 0 10px 0;
}

.scpro-toolbar .btn,
.scpro-header-actions .btn {
  padding: 9px 12px;
  font-size: 12px;
}

.scpro-project-list {
  flex: 1;
  min-height: 0;
  max-height: none !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  overflow: auto;
}

.scpro-manual-entry {
  grid-template-columns: 1.2fr .65fr .45fr auto;
  margin-bottom: 10px;
}

.scpro-table-wrap-medium,
.scpro-table-wrap-large,
.scpro-result-box {
  flex: 1;
  min-height: 0;
  max-height: none !important;
  overflow: auto;
}

.scpro-result-box {
  display: grid;
  align-content: start;
  gap: 8px;
}

.scpro-page .compact-title {
  margin-bottom: 8px;
}

.scpro-page .compact-title h3 {
  font-size: 15px;
  margin-bottom: 2px;
}

.scpro-page .compact-title p {
  font-size: 11.5px;
  line-height: 1.3;
}

/* Stok / Hurda sayfası da tek ekrana otursun */
#steelCutStockPage .steelcut-erp-shell {
  height: calc(100vh - 120px);
  min-height: 650px;
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr);
  gap: 10px;
  overflow: hidden;
}

#steelCutStockPage .steelcut-erp-hero {
  min-height: 82px;
  padding: 15px 18px;
}

#steelCutStockPage .steelcut-stock-dashboard {
  gap: 8px;
}

#steelCutStockPage .steelcut-stock-dashboard div {
  padding: 10px 12px;
  min-height: 64px;
}

#steelCutStockPage .steelcut-stock-dashboard strong {
  font-size: 20px;
}

#steelCutStockPage .steelcut-stock-entry-panel {
  padding: 12px;
}

#steelCutStockPage .stock-page-grid {
  min-height: 0;
  height: 100%;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: minmax(0, 1fr) 170px;
}

#steelCutStockPage .steelcut-stock-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

#steelCutStockPage .stock-page-list,
#steelCutStockPage .stock-page-history {
  flex: 1;
  min-height: 0;
  max-height: none;
  overflow: auto;
}

@media (max-width: 1280px) {
  .scpro-shell,
  #steelCutStockPage .steelcut-erp-shell {
    min-height: 620px;
  }

  .scpro-header h3 {
    font-size: 21px;
  }

  .scpro-header-actions .btn {
    padding: 8px 10px;
  }

  .scpro-project-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .scpro-summary {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .scpro-shell,
  #steelCutStockPage .steelcut-erp-shell {
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  .scpro-header {
    flex-direction: column;
    align-items: stretch;
  }

  .scpro-top-grid,
  .project-view-grid,
  .result-view-grid,
  #steelCutStockPage .stock-page-grid,
  #steelCutStockPage .steelcut-stock-dashboard {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }

  .scpro-panel,
  .scpro-view,
  .scpro-workspace {
    height: auto;
  }

  .scpro-table-wrap-large,
  .scpro-result-box,
  .scpro-project-list,
  #steelCutStockPage .stock-page-list,
  #steelCutStockPage .stock-page-history {
    max-height: 360px !important;
  }
}

/* =====================================================
   STEELCUTPRO ERP - TOPARLANMIŞ SADE DÜZEN V6
   ===================================================== */
.compact-steelcut-page .scpro-shell-clean {
  max-width: 1480px;
  margin: 0 auto;
}

.compact-steelcut-page .scpro-header-clean {
  padding: 18px 20px;
  margin-bottom: 12px;
}

.compact-steelcut-page .scpro-header-clean h3 {
  margin: 4px 0 4px 0;
}

.compact-steelcut-page .scpro-header-clean p {
  margin: 0;
}

.compact-steelcut-page .compact-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.compact-steelcut-page .compact-actions .btn {
  padding: 10px 12px;
  font-size: 12px;
}

.compact-steelcut-page .scpro-top-grid-compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.compact-steelcut-page .scpro-module-card {
  min-height: 82px;
  padding: 12px 14px;
}

.compact-steelcut-page .scpro-module-card strong {
  font-size: 15px;
}

.compact-steelcut-page .scpro-module-card em {
  font-size: 11px;
  line-height: 1.25;
}

.compact-steelcut-page .scpro-summary-compact {
  gap: 8px;
  margin-bottom: 10px;
}

.compact-steelcut-page .scpro-summary-compact div {
  min-height: 68px;
  padding: 10px;
}

.compact-steelcut-page .scpro-workspace-clean {
  min-height: 0;
}

.compact-steelcut-page .scpro-clean-panel {
  padding: 14px;
  border-radius: 16px;
}

.compact-steelcut-page .compact-title {
  margin-bottom: 10px;
}

.compact-steelcut-page .compact-title h3 {
  font-size: 16px;
  margin-bottom: 4px;
}

.compact-steelcut-page .compact-title p {
  font-size: 12px;
  margin: 0;
}

.compact-steelcut-page .scpro-controls-three {
  display: grid;
  grid-template-columns: repeat(5, minmax(130px, 1fr));
  gap: 10px;
  align-items: end;
}

.compact-steelcut-page .scpro-controls-three label span,
.compact-steelcut-page .manual-cut-entry span {
  font-size: 12px;
}

.compact-steelcut-page .compact-toolbar {
  margin: 10px 0;
}

.compact-steelcut-page .compact-toolbar .btn {
  padding: 9px 11px;
  font-size: 12px;
}

.compact-steelcut-page .compact-project-list {
  max-height: 360px;
  overflow: auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 8px;
  padding-right: 4px;
}

.compact-steelcut-page .compact-project-list .cut-project-check {
  min-height: 74px;
  padding: 10px;
}

.compact-steelcut-page .compact-project-list .cut-project-check strong {
  font-size: 14px;
}

.compact-steelcut-page .compact-project-list .cut-project-check em {
  font-size: 11px;
  line-height: 1.35;
}

.compact-steelcut-page .scpro-manual-entry-select {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) minmax(200px, 1fr) 130px 90px auto;
  gap: 10px;
  align-items: center;
}

.compact-steelcut-page .scpro-manual-entry-select input,
.compact-steelcut-page .scpro-manual-entry-select select {
  min-width: 0;
}

.compact-steelcut-page .result-view-grid-clean {
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.9fr);
  gap: 12px;
}

@media (max-width: 1200px) {
  .compact-steelcut-page .scpro-controls-three {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
  }

  .compact-steelcut-page .scpro-manual-entry-select {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
  }

  .compact-steelcut-page .result-view-grid-clean {
    grid-template-columns: 1fr;
  }
}

/* =====================================================
   STEELCUTPRO ERP - NİHAİ TOPARLAMA V7
   SteelCutPro benzeri, sade, panel bazlı ve ekrana sığan düzen
   ===================================================== */
.scpro-v7-page,
.scpro-v7-stock-page{
  padding:14px !important;
  overflow:hidden;
}

.scpro-v7-shell{
  max-width:1500px;
  height:calc(100vh - 96px);
  min-height:650px;
  margin:0 auto;
  display:grid;
  grid-template-rows:auto auto auto 1fr;
  gap:10px;
  overflow:hidden;
}

.scpro-v7-stock-page .scpro-v7-shell{
  grid-template-rows:auto auto auto 1fr;
}

.scpro-v7-hero{
  background:linear-gradient(135deg,#0f172a,#1e293b 55%,#2563eb);
  color:#fff;
  border-radius:18px;
  padding:16px 18px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  box-shadow:0 14px 28px rgba(15,23,42,.18);
}

.scpro-v7-title span{
  display:inline-block;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#bfdbfe;
  margin-bottom:4px;
}

.scpro-v7-title h3{
  color:#fff;
  font-size:24px;
  margin:0 0 4px 0;
  line-height:1.1;
}

.scpro-v7-title p{
  margin:0;
  color:#dbeafe;
  font-size:12px;
  max-width:820px;
}

.scpro-v7-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
}

.scpro-v7-actions .btn{
  padding:9px 11px;
  font-size:12px;
  white-space:nowrap;
}

.scpro-v7-actions .btn.ghost{
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
}

.scpro-v7-tabs{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.scpro-v7-tabs .scpro-module-card{
  min-height:72px;
  padding:10px 12px;
  border-radius:16px;
  background:#fff;
}

.scpro-v7-tabs .scpro-module-card span{
  width:28px;
  height:28px;
  font-size:12px;
}

.scpro-v7-tabs .scpro-module-card strong{
  font-size:15px;
}

.scpro-v7-tabs .scpro-module-card em{
  font-size:11px;
  line-height:1.25;
}

.scpro-v7-summary{
  grid-template-columns:repeat(8,minmax(0,1fr));
  gap:8px;
  margin:0;
}

.scpro-v7-summary div,
.scpro-v7-stock-summary div{
  min-height:58px;
  padding:9px 10px;
  border-radius:14px;
}

.scpro-v7-summary span,
.scpro-v7-stock-summary span{
  font-size:10px;
}

.scpro-v7-summary strong,
.scpro-v7-stock-summary strong{
  font-size:18px;
}

.scpro-v7-workspace{
  min-height:0;
  overflow:hidden;
}

.scpro-v7-workspace .scpro-view{
  height:100%;
  min-height:0;
}

.scpro-v7-workspace .scpro-view.active{
  display:block;
}

.scpro-v7-grid{
  height:100%;
  min-height:0;
  display:grid;
  gap:12px;
}

.scpro-v7-grid.project-grid{
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);
}

.scpro-v7-grid.manual-grid{
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
}

.scpro-v7-grid.result-grid{
  grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);
}

.scpro-v7-panel{
  min-height:0;
  height:100%;
  padding:14px !important;
  border-radius:16px;
  border:1px solid #dbe3ef;
  background:#fff;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}

.scpro-v7-panel .panel-title{
  flex:0 0 auto;
  margin-bottom:9px;
}

.scpro-v7-panel .panel-title h3{
  font-size:16px;
  margin-bottom:3px;
}

.scpro-v7-panel .panel-title p{
  font-size:11px;
  margin:0;
  color:#64748b;
}

.single-project-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:end;
  margin-bottom:8px;
}

.single-project-row label,
.scpro-v7-settings label{
  display:flex;
  flex-direction:column;
  gap:4px;
  font-size:11px;
  font-weight:800;
  color:#475569;
}

.single-project-row select,
.scpro-v7-settings input,
.scpro-v7-settings select,
.scpro-v7-manual-entry input,
.scpro-v7-manual-entry select,
.stock-entry-grid-v7 input,
.stock-entry-grid-v7 select,
.manual-profile-filter input{
  min-height:38px;
  border-radius:10px;
  border:1px solid #cfd8e3;
  padding:0 10px;
  font-size:12px;
  background:#fff;
}

.scpro-v7-settings{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-bottom:10px;
}

.scpro-v7-panel .btn.full{
  width:100%;
  margin-top:2px;
}

.scpro-v7-help,
.scpro-v7-note{
  margin-top:8px;
  padding:9px 10px;
  border-radius:12px;
  background:#f8fafc;
  border:1px solid #e2e8f0;
  color:#475569;
  font-size:11px;
  line-height:1.4;
}

.scpro-v7-project-list{
  flex:1 1 auto;
  min-height:0;
  max-height:none !important;
  overflow:auto;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding-right:4px;
}

.scpro-v7-project-list .cut-project-check{
  min-height:70px;
  padding:9px 10px;
  border-radius:13px;
}

.scpro-v7-project-list .cut-project-check strong{
  display:block;
  font-size:13px;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.scpro-v7-project-list .cut-project-check em,
.scpro-v7-project-list .cut-project-check small{
  display:block;
  font-size:10.5px;
  line-height:1.3;
  color:#64748b;
}

.scpro-v7-project-list .cut-project-check.has-ready{
  border-color:#bfdbfe;
  background:#f8fbff;
}

.scpro-v7-project-list .cut-project-check.no-ready{
  opacity:.84;
}

.scpro-toolbar.compact-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:6px 0 8px 0;
}

.scpro-toolbar.compact-toolbar .btn{
  padding:8px 9px;
  font-size:11px;
}

.manual-profile-filter{
  margin-bottom:8px;
}

.scpro-v7-manual-entry{
  display:grid;
  grid-template-columns:minmax(210px,1.2fr) minmax(180px,1fr) 110px 80px auto;
  gap:8px;
  align-items:center;
}

.scpro-v7-manual-entry .btn{
  height:38px;
  padding:8px 10px;
  white-space:nowrap;
}

.manual-list-panel .table-wrapper,
.cut-list-card .table-wrapper{
  flex:1 1 auto;
  min-height:0;
  max-height:none !important;
  overflow:auto;
}

.cut-result-card .scpro-result-box{
  flex:1 1 auto;
  min-height:0;
  max-height:none !important;
  overflow:auto;
}

.scpro-v7-stock-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:0;
}

.stock-entry-panel-v7{
  height:auto;
  min-height:0;
}

.stock-entry-grid-v7{
  display:grid;
  grid-template-columns:minmax(150px,.95fr) minmax(200px,1.15fr) minmax(170px,1fr) 105px 80px auto;
  gap:8px;
  align-items:center;
}

.stock-entry-grid-v7 .btn{
  height:38px;
  white-space:nowrap;
}

.scpro-v7-stock-grid{
  min-height:0;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:12px;
  overflow:hidden;
}

.scpro-v7-stock-grid .scpro-v7-panel{
  height:100%;
  min-height:0;
}

.scpro-v7-stock-grid .steelcut-stock-list,
.scpro-v7-stock-grid .steelcut-history-list{
  flex:1 1 auto;
  min-height:0;
  max-height:none !important;
  overflow:auto;
}

.scpro-v7-page table,
.scpro-v7-stock-page table{
  font-size:12px;
}

.scpro-v7-page th,
.scpro-v7-page td,
.scpro-v7-stock-page th,
.scpro-v7-stock-page td{
  padding:7px 8px;
}

@media (max-width:1380px), (max-height:820px){
  .scpro-v7-shell{
    height:calc(100vh - 82px);
    min-height:580px;
    gap:8px;
  }
  .scpro-v7-hero{
    padding:12px 14px;
  }
  .scpro-v7-title h3{
    font-size:20px;
  }
  .scpro-v7-title p{
    font-size:11px;
  }
  .scpro-v7-tabs .scpro-module-card{
    min-height:60px;
    padding:8px 10px;
  }
  .scpro-v7-tabs .scpro-module-card em{
    display:none;
  }
  .scpro-v7-summary div,
  .scpro-v7-stock-summary div{
    min-height:48px;
    padding:7px 8px;
  }
  .scpro-v7-summary strong,
  .scpro-v7-stock-summary strong{
    font-size:15px;
  }
  .scpro-v7-panel{
    padding:10px !important;
  }
  .scpro-v7-project-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:1180px){
  .scpro-v7-shell{
    height:auto;
    min-height:0;
    overflow:visible;
  }
  .scpro-v7-page,
  .scpro-v7-stock-page{
    overflow:auto;
  }
  .scpro-v7-grid.project-grid,
  .scpro-v7-grid.manual-grid,
  .scpro-v7-grid.result-grid,
  .scpro-v7-stock-grid{
    grid-template-columns:1fr;
  }
  .scpro-v7-project-list{
    max-height:360px !important;
  }
  .scpro-v7-stock-summary,
  .scpro-v7-summary{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .stock-entry-grid-v7,
  .scpro-v7-manual-entry{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .scpro-v7-hero,
  .single-project-row{
    grid-template-columns:1fr;
    display:grid;
  }
  .scpro-v7-tabs,
  .scpro-v7-stock-summary,
  .scpro-v7-summary{
    grid-template-columns:1fr 1fr;
  }
  .scpro-v7-project-list,
  .stock-entry-grid-v7,
  .scpro-v7-manual-entry{
    grid-template-columns:1fr;
  }
}

/* =====================================================
   STEELPPC TAM EKRAN PANEL YERLEŞİMİ v8
   İstek: Sayfanın kendisinde kaydırma olmasın;
   sadece tablo/liste/sonuç gibi ilgili panel içleri kaysın.
   ===================================================== */
html,
body{
  width:100%;
  height:100%;
  overflow:hidden !important;
}

body,
body:not(.dashboard-mode){
  overflow:hidden !important;
}

.shell,
body:not(.dashboard-mode) .shell,
body.dashboard-mode .shell{
  height:100vh !important;
  min-height:0 !important;
  overflow:hidden !important;
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
}

.sidebar,
body.dashboard-mode .sidebar{
  position:relative !important;
  height:100vh !important;
  min-height:0 !important;
  overflow:hidden !important;
  padding:16px !important;
  gap:12px !important;
}

.brand{
  flex:0 0 auto;
  padding-bottom:12px !important;
}

.brand-icon{
  width:40px !important;
  height:40px !important;
  border-radius:13px !important;
}

.brand h1{
  font-size:18px !important;
}

.brand p{
  font-size:11.5px !important;
}

.side-nav{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:4px;
  display:grid;
  align-content:start;
  gap:6px !important;
}

.nav-btn{
  padding:10px 12px !important;
  border-radius:12px !important;
  font-size:13px !important;
}

.sidebar-footer{
  flex:0 0 auto;
  padding:11px !important;
  border-radius:13px !important;
}

.main,
body:not(.dashboard-mode) .main,
body.dashboard-mode .main{
  width:min(1500px, calc(100% - 20px)) !important;
  height:100vh !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:10px 0 !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
}

.topbar{
  flex:0 0 auto;
  min-height:66px;
  max-height:78px;
  padding:12px 16px !important;
  border-radius:17px !important;
  gap:12px !important;
  overflow:hidden;
}

.topbar h2{
  font-size:21px !important;
  line-height:1.1;
}

.topbar p{
  font-size:12px !important;
  line-height:1.25;
  margin-top:4px !important;
}

.top-actions .btn,
.topbar .btn{
  padding:9px 11px !important;
  font-size:12px !important;
  white-space:nowrap;
}

.page,
body:not(.dashboard-mode) .page.active-page{
  margin-top:10px !important;
}

.page.active-page,
body:not(.dashboard-mode) .page.active-page{
  flex:1 1 auto !important;
  min-height:0 !important;
  height:auto !important;
  display:flex;
  flex-direction:column;
  overflow:hidden !important;
}

body.dashboard-mode .topbar{
  display:none !important;
}

body.dashboard-mode .main{
  padding:10px 0 !important;
}

body.dashboard-mode #dashboardPage.active-page{
  height:100% !important;
  min-height:0 !important;
  flex:1 1 auto !important;
  margin-top:0 !important;
  overflow:hidden !important;
  display:grid !important;
  grid-template-rows:62px 68px minmax(0,1fr) !important;
  gap:8px !important;
}

#dashboardPage .compact-hero{
  padding:10px 14px !important;
  border-radius:16px !important;
  min-height:0 !important;
  overflow:hidden !important;
}

#dashboardPage .compact-hero h3{
  font-size:19px !important;
  margin:0 0 3px 0 !important;
}

#dashboardPage .compact-hero p{
  font-size:11.5px !important;
  line-height:1.25 !important;
  max-height:30px;
  overflow:hidden;
}

#dashboardPage .hero-actions .btn.big{
  padding:8px 11px !important;
  font-size:12px !important;
}

#dashboardPage .dashboard-overview-grid{
  height:68px !important;
  min-height:0 !important;
  grid-template-columns:repeat(8,minmax(0,1fr)) !important;
  gap:7px !important;
  overflow:hidden !important;
}

#dashboardPage .dashboard-overview-grid .stat-card{
  height:68px !important;
  min-height:0 !important;
  padding:7px 8px !important;
  border-radius:12px !important;
}

#dashboardPage .dashboard-overview-grid .stat-card span{
  font-size:9.5px !important;
  margin-bottom:3px !important;
}

#dashboardPage .dashboard-overview-grid .stat-card strong{
  font-size:14px !important;
  line-height:1.1 !important;
}

#dashboardPage .dashboard-analytics-grid{
  height:100% !important;
  min-height:0 !important;
  overflow:hidden !important;
  grid-template-rows:minmax(0,1.08fr) minmax(0,.92fr) !important;
  gap:8px !important;
}

#dashboardPage .dashboard-analytics-grid > .panel{
  min-height:0 !important;
  padding:10px !important;
  border-radius:14px !important;
  overflow:hidden !important;
}

#dashboardPage .dashboard-analytics-grid .panel-title{
  margin-bottom:6px !important;
}

#dashboardPage .dashboard-analytics-grid .panel-title h3{
  font-size:13.5px !important;
}

#dashboardPage .dashboard-analytics-grid .panel-title p{
  font-size:10px !important;
  line-height:1.15 !important;
  max-height:24px;
  overflow:hidden;
}

#activeProcessBoard,
#projectHourglassGrid,
#recentHistoryBox{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:auto !important;
}

#dashboardPage .chart-box{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:hidden !important;
}

/* Genel sayfalar: dış sayfa değil panel içi kaysın */
.page.active-page > .panel{
  flex:1 1 auto;
  min-height:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  padding:16px !important;
  border-radius:18px !important;
}

.page.active-page > .panel > .panel-title,
.page.active-page > .panel > .project-header,
.page.active-page > .panel > .filter-row,
.page.active-page > .panel > .report-controls,
.page.active-page > .panel > .action-row{
  flex:0 0 auto;
}

#newProjectPage .panel{
  overflow:auto !important;
}

#savedProjectsBox,
.saved-projects{
  flex:1 1 auto;
  min-height:0;
  overflow:auto !important;
  padding-right:4px;
}

#savedProjectsPage .saved-row{
  padding:10px !important;
}

#shipmentPage .table-wrapper,
#reportsPage .table-wrapper{
  flex:1 1 auto;
  min-height:0;
  overflow:auto !important;
}

#reportsPage #reportText{
  flex:1 1 auto;
  min-height:0;
  resize:none !important;
  overflow:auto !important;
}

#settingsPage.active-page{
  display:grid !important;
  grid-template-rows:minmax(0,.65fr) minmax(0,1fr);
  gap:10px;
}

#settingsPage.active-page > .panel{
  min-height:0;
  overflow:auto !important;
}

.database-info-card{
  margin-top:10px !important;
}

/* Proje Takip: üst sabit, tablo kendi içinde kayar */
body:not(.dashboard-mode) #trackingPage.active-page{
  height:auto !important;
  min-height:0 !important;
  overflow:hidden !important;
}

#trackingPage .tracking-panel{
  height:100% !important;
  min-height:0 !important;
  overflow:hidden !important;
  padding:12px !important;
}

#trackingPage .project-header{
  margin-bottom:8px !important;
  gap:10px !important;
}

#trackingPage .project-header h3{
  font-size:17px !important;
}

#trackingPage .project-header p{
  font-size:11.5px !important;
  margin-top:3px !important;
}

#trackingPage .tracking-project-bar{
  margin-bottom:8px !important;
  gap:8px !important;
  grid-template-columns:minmax(300px,.95fr) minmax(0,1.6fr) !important;
}

#trackingPage .tracking-project-selects{
  padding:10px !important;
  gap:8px !important;
}

#trackingPage .tracking-project-selects label span{
  font-size:10.5px !important;
}

#trackingPage .tracking-project-selects select{
  min-height:36px !important;
  font-size:12px !important;
}

#trackingPage .tracking-summary-grid{
  gap:7px !important;
}

#trackingPage .tracking-summary-card{
  min-height:58px !important;
  padding:8px !important;
  border-radius:12px !important;
}

#trackingPage .tracking-summary-card span{
  font-size:10px !important;
}

#trackingPage .tracking-summary-card strong{
  font-size:15px !important;
}

#trackingPage .tracking-filter-row{
  margin-bottom:8px !important;
}

#trackingPage .tracking-table-scroll{
  flex:1 1 auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:auto !important;
}

/* SteelCutPro ERP: tüm ana iskelet tek ekran, listeler/sonuçlar içten kayar */
body:not(.dashboard-mode) #cuttingOptimizerPage.active-page,
body:not(.dashboard-mode) #steelCutStockPage.active-page{
  margin-top:10px !important;
  padding:0 !important;
  overflow:hidden !important;
}

.scpro-v7-page,
.scpro-v7-stock-page{
  padding:0 !important;
  overflow:hidden !important;
}

.scpro-v7-shell,
.scpro-v7-stock-page .scpro-v7-shell,
#steelCutStockPage .steelcut-erp-shell{
  width:100%;
  max-width:none !important;
  height:100% !important;
  min-height:0 !important;
  max-height:100% !important;
  margin:0 !important;
  overflow:hidden !important;
  gap:8px !important;
}

.scpro-v7-hero,
#steelCutStockPage .steelcut-erp-hero{
  min-height:0 !important;
  padding:10px 14px !important;
  border-radius:15px !important;
}

.scpro-v7-title h3{
  font-size:19px !important;
}

.scpro-v7-title p{
  font-size:10.5px !important;
  line-height:1.2 !important;
  max-height:28px;
  overflow:hidden;
}

.scpro-v7-actions .btn{
  padding:8px 10px !important;
  font-size:11px !important;
}

.scpro-v7-tabs{
  gap:7px !important;
}

.scpro-v7-tabs .scpro-module-card{
  min-height:56px !important;
  padding:7px 9px !important;
  border-radius:13px !important;
}

.scpro-v7-tabs .scpro-module-card em{
  display:none !important;
}

.scpro-v7-tabs .scpro-module-card strong{
  font-size:13px !important;
}

.scpro-v7-tabs .scpro-module-card span{
  width:26px !important;
  height:26px !important;
}

.scpro-v7-summary,
.scpro-v7-stock-summary{
  gap:6px !important;
}

.scpro-v7-summary div,
.scpro-v7-stock-summary div{
  min-height:44px !important;
  padding:6px 8px !important;
  border-radius:11px !important;
}

.scpro-v7-summary span,
.scpro-v7-stock-summary span{
  font-size:9px !important;
}

.scpro-v7-summary strong,
.scpro-v7-stock-summary strong{
  font-size:14px !important;
}

.scpro-v7-workspace,
.scpro-v7-workspace .scpro-view,
.scpro-v7-workspace .scpro-view.active,
.scpro-v7-grid{
  min-height:0 !important;
  height:100% !important;
  overflow:hidden !important;
}

.scpro-v7-panel{
  min-height:0 !important;
  height:100% !important;
  padding:10px !important;
  border-radius:14px !important;
  overflow:hidden !important;
}

.scpro-v7-panel .panel-title{
  margin-bottom:6px !important;
}

.scpro-v7-panel .panel-title h3{
  font-size:14px !important;
}

.scpro-v7-panel .panel-title p{
  font-size:10px !important;
  line-height:1.15 !important;
  max-height:24px;
  overflow:hidden;
}

.single-project-row{
  margin-bottom:6px !important;
}

.scpro-toolbar.compact-toolbar{
  margin:5px 0 6px 0 !important;
  gap:5px !important;
}

.scpro-toolbar.compact-toolbar .btn,
.scpro-v7-panel .btn.full{
  padding:7px 8px !important;
  font-size:10.5px !important;
}

.scpro-v7-help,
.scpro-v7-note{
  margin-top:6px !important;
  padding:7px 8px !important;
  font-size:10px !important;
  line-height:1.25 !important;
}

.scpro-v7-project-list,
.manual-list-panel .table-wrapper,
.cut-list-card .table-wrapper,
.cut-result-card .scpro-result-box,
.scpro-v7-stock-grid .steelcut-stock-list,
.scpro-v7-stock-grid .steelcut-history-list,
#steelCutStockPage .stock-page-list,
#steelCutStockPage .stock-page-history{
  flex:1 1 auto !important;
  min-height:0 !important;
  max-height:none !important;
  overflow:auto !important;
}

.scpro-v7-project-list .cut-project-check{
  min-height:58px !important;
  padding:7px 8px !important;
}

.scpro-v7-project-list .cut-project-check strong{
  font-size:12px !important;
}

.scpro-v7-project-list .cut-project-check em,
.scpro-v7-project-list .cut-project-check small{
  font-size:9.5px !important;
}

.scpro-v7-manual-entry,
.stock-entry-grid-v7{
  gap:6px !important;
}

.scpro-v7-manual-entry input,
.scpro-v7-manual-entry select,
.stock-entry-grid-v7 input,
.stock-entry-grid-v7 select,
.manual-profile-filter input,
.single-project-row select,
.scpro-v7-settings input,
.scpro-v7-settings select{
  min-height:34px !important;
  font-size:11px !important;
  padding:0 8px !important;
  border-radius:9px !important;
}

.scpro-v7-manual-entry .btn,
.stock-entry-grid-v7 .btn{
  height:34px !important;
  padding:7px 8px !important;
  font-size:10.5px !important;
}

.scpro-v7-stock-grid{
  min-height:0 !important;
  height:100% !important;
  overflow:hidden !important;
  gap:8px !important;
}

.scpro-v7-page th,
.scpro-v7-page td,
.scpro-v7-stock-page th,
.scpro-v7-stock-page td,
th,td{
  padding:7px 8px;
  font-size:12px;
}

/* Detay modalı: modal dışı değil içerik tablo alanı kaysın */
.modal{
  overflow:hidden !important;
}

.modal-content,
#detailModal .modal-content.wide{
  max-height:calc(100vh - 36px) !important;
  overflow:hidden !important;
  display:flex;
  flex-direction:column;
}

#detailBody{
  flex:1 1 auto;
  min-height:0;
  overflow:hidden;
}

.compact-detail-table-wrapper,
.detail-table-wrapper{
  max-height:none !important;
  height:100% !important;
  min-height:0 !important;
  overflow:auto !important;
}

/* Orta-küçük laptoplarda sayfa bozulmasın; yine dış scroll açılmasın */
@media (max-width:1280px){
  .shell,
  body:not(.dashboard-mode) .shell,
  body.dashboard-mode .shell{
    grid-template-columns:230px minmax(0,1fr) !important;
  }
  .sidebar{
    padding:12px !important;
  }
  .nav-btn{
    padding:9px 10px !important;
    font-size:12px !important;
  }
  .main,
  body:not(.dashboard-mode) .main,
  body.dashboard-mode .main{
    width:calc(100% - 14px) !important;
    padding:7px 0 !important;
  }
  .topbar{
    min-height:60px;
    padding:10px 12px !important;
  }
  .topbar p{
    display:none;
  }
  body.dashboard-mode #dashboardPage.active-page{
    grid-template-rows:54px 60px minmax(0,1fr) !important;
    gap:6px !important;
  }
  #dashboardPage .dashboard-overview-grid{
    height:60px !important;
  }
  #dashboardPage .dashboard-overview-grid .stat-card{
    height:60px !important;
  }
  #trackingPage .tracking-project-bar{
    grid-template-columns:1fr !important;
  }
  #trackingPage .tracking-summary-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  .scpro-v7-grid.project-grid,
  .scpro-v7-grid.manual-grid,
  .scpro-v7-grid.result-grid{
    grid-template-columns:1fr 1fr !important;
  }
  .scpro-v7-stock-grid{
    grid-template-columns:1fr 1fr 1fr !important;
  }
}

@media (max-width:980px){
  .shell,
  body:not(.dashboard-mode) .shell,
  body.dashboard-mode .shell{
    grid-template-columns:190px minmax(0,1fr) !important;
  }
  .brand p,
  .sidebar-footer span{
    display:none !important;
  }
  .scpro-v7-shell,
  .scpro-v7-page,
  .scpro-v7-stock-page,
  .scpro-v7-grid.project-grid,
  .scpro-v7-grid.manual-grid,
  .scpro-v7-grid.result-grid,
  .scpro-v7-stock-grid{
    height:100% !important;
    overflow:hidden !important;
  }
}

/* =====================================================
   V9 - TAM EKRAN / PROFESYONEL TOPARLAMA
   ===================================================== */
:root{
  --v9-blue:#2f80ed;
  --v9-blue-soft:#e8f2ff;
  --v9-navy:#10243f;
  --v9-panel:#ffffff;
  --v9-border:#d9e6f5;
}

html,body{height:100%;overflow:hidden;}
.shell{height:100vh;max-height:100vh;overflow:hidden;}
.sidebar{height:100vh;overflow:hidden;}
.side-nav{overflow:auto;max-height:calc(100vh - 210px);padding-right:4px;}
.main{height:100vh;max-height:100vh;overflow:hidden;padding:14px 16px 16px;display:grid;grid-template-rows:auto 1fr;gap:12px;}
.topbar{
  width:100%;
  min-height:74px;
  border-radius:18px;
  background:linear-gradient(135deg,#1d5fbf,#47a3ff);
  color:#fff;
  box-shadow:0 10px 24px rgba(29,95,191,.18);
  border:1px solid rgba(255,255,255,.28);
  padding:14px 20px;
}
.topbar h2,.topbar p{color:#fff!important;}
.topbar h2{font-size:22px;margin-bottom:4px;}
.topbar p{opacity:.92;font-size:13px;}
.top-actions .btn{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.25);}
.page{height:100%;min-height:0;overflow:hidden;}
.panel{min-height:0;}

/* Yeni Proje */
.new-project-clean-page{display:none;align-items:center;justify-content:center;}
.new-project-clean-page.active-page{display:flex;}
.new-project-panel{width:min(1120px,100%);max-height:100%;display:flex;flex-direction:column;justify-content:center;gap:18px;padding:28px;}
.new-project-upload-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch;}
.professional-file-card{min-height:210px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:1px solid var(--v9-border);background:linear-gradient(180deg,#fff,#f7fbff);box-shadow:0 8px 20px rgba(15,23,42,.06);}
.professional-file-card strong{font-size:17px;margin:8px 0;}
.professional-file-card em{white-space:normal;line-height:1.35;max-width:92%;}
.new-project-extra-grid{display:flex;justify-content:center;}
.professional-date-card{width:min(420px,100%);text-align:center;background:#f8fbff;border:1px solid var(--v9-border);}
.new-project-actions{justify-content:center;margin-top:4px;}

/* Kayıtlı projeler */
.saved-projects-clean-page.active-page{display:block;}
.saved-projects-panel{height:100%;display:grid;grid-template-rows:auto 1fr;gap:12px;overflow:hidden;}
.saved-title-compact{margin-bottom:0!important;}
.saved-title-compact h3{margin:0;}
.saved-title-compact .btn{height:36px;padding:7px 12px;}
.saved-projects-fit{height:100%;overflow:auto;padding-right:4px;}

/* Proje Takip */
.tracking-panel{height:100%;display:grid;grid-template-rows:auto auto auto 1fr;gap:10px;overflow:hidden;}
.tracking-summary-grid{gap:8px;}
.tracking-summary-card{padding:8px 10px;min-height:62px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.tracking-summary-card span{font-size:11px;margin:0 0 3px;color:#64748b;font-weight:800;}
.tracking-summary-card strong{font-size:18px;line-height:1.05;margin:0;text-align:center;}
.tracking-table-scroll{height:100%;overflow:auto;}
.tracking-table-scroll table th,.tracking-table-scroll table td{padding:6px 8px;font-size:12px;}

/* Detay Modal */
.modal-content.wide{width:min(96vw,1500px);height:min(92vh,850px);display:grid;grid-template-rows:auto 1fr;overflow:hidden;}
#detailBody{height:100%;min-height:0;display:grid;grid-template-rows:auto 1fr;gap:8px;overflow:hidden;}
.v9-detail-summary{gap:8px!important;margin-bottom:0!important;}
.v9-detail-summary div{padding:8px 10px!important;min-height:52px!important;}
.v9-detail-table-wrapper{height:100%;overflow:auto!important;}
.v9-detail-table{min-width:1180px!important;width:100%!important;font-size:11px!important;}
.v9-detail-table th,.v9-detail-table td{padding:5px 6px!important;white-space:nowrap;}
.v9-detail-table .part-no-cell{min-width:120px;}
.v9-detail-table .profile-type-cell{min-width:130px;}
.v9-detail-table .material-note-cell{max-width:180px;white-space:normal!important;line-height:1.25;}
.v9-detail-table .material-note-cell span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.flow-btn{padding:5px 7px!important;font-size:10.5px!important;border-radius:7px!important;line-height:1.15;min-width:86px;}
.flow-btn small{display:block;font-size:9px;margin-top:2px;}
.status-badge small{display:block;font-size:9px;}

/* SteelCutPro V9 */
.scpro-v9-page.active-page,.scpro-v9-stock-page.active-page,.laser-cutting-page.active-page,.planning-page.active-page{display:block;}
.scpro-v9-shell{height:100%;display:grid;grid-template-rows:auto auto auto 1fr;gap:10px;overflow:hidden;}
.scpro-main-title{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(135deg,#0f2e5c,#1e73d8);color:#fff;border-radius:18px;padding:14px 18px;box-shadow:0 8px 20px rgba(15,46,92,.18);}
.scpro-main-title span{display:block;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;opacity:.82;}
.scpro-main-title h3{color:#fff;margin:3px 0 4px;font-size:22px;}
.scpro-main-title p{color:#dbeafe;margin:0;font-size:12px;line-height:1.35;}
.scpro-main-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.scpro-main-actions .btn{height:36px;padding:8px 12px;}
.scpro-v9-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.scpro-v9-tabs .scpro-module-card{min-height:70px;padding:10px 12px;border-radius:14px;}
.scpro-v9-summary{grid-template-columns:repeat(8,minmax(0,1fr));gap:8px;}
.scpro-v9-summary div,.scpro-v9-stock-summary div{padding:8px 10px;min-height:56px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;}
.scpro-v9-summary span,.scpro-v9-stock-summary span{font-size:10px;line-height:1.15;}
.scpro-v9-summary strong,.scpro-v9-stock-summary strong{font-size:16px;line-height:1;}
.scpro-v9-workspace{min-height:0;overflow:hidden;}
.scpro-view{height:100%;min-height:0;overflow:hidden;}
.scpro-v9-two-grid{height:100%;display:grid;grid-template-columns:1.35fr .9fr;gap:10px;min-height:0;}
.scpro-v9-panel{background:#fff;border:1px solid var(--v9-border);border-radius:16px;padding:12px;box-shadow:0 5px 14px rgba(15,23,42,.05);min-height:0;overflow:hidden;}
.project-select-panel,.manual-list-panel,.cut-list-card,.cut-result-card,.material-summary-card,.order-summary-card,.fire-usage-card{display:grid;grid-template-rows:auto auto 1fr;gap:8px;}
.project-select-panel{grid-template-rows:auto auto auto 1fr;}
.cut-settings-panel{display:grid;grid-template-rows:auto 1fr auto auto;gap:10px;}
.compact-title{margin-bottom:0!important;}
.compact-title h3{font-size:15px;margin-bottom:2px;}
.compact-title p{font-size:11px;margin:0;color:#64748b;line-height:1.35;}
.compact-toolbar{display:flex;gap:6px;flex-wrap:wrap;}
.compact-toolbar .btn,.compact-toolbar select{height:32px;font-size:11px;padding:6px 9px;}
.scpro-v9-note,.scpro-mini-flow{font-size:11px;color:#475569;background:#f8fbff;border:1px solid #e2e8f0;border-radius:10px;padding:8px;line-height:1.35;}
.scpro-v9-project-list{height:100%;overflow:auto;padding-right:4px;display:grid;gap:7px;align-content:start;}
.v9-project-card{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;border:1px solid #e2e8f0;border-radius:12px;padding:8px;background:#fff;cursor:pointer;}
.v9-project-card.selected{border-color:#60a5fa;background:#eff6ff;}
.cut-project-card-main strong{display:block;font-size:13px;}
.cut-project-card-main span{display:block;font-size:10.5px;color:#64748b;margin-top:2px;}
.cut-project-card-stats{display:grid;grid-template-columns:auto auto;gap:2px 6px;text-align:right;align-items:center;font-size:10px;}
.cut-project-card-stats b{color:#1d4ed8;}
.scpro-v9-settings{display:grid;grid-template-columns:1fr;gap:8px;align-content:start;}
.scpro-v9-settings label span{font-size:11px;font-weight:800;color:#475569;display:block;margin-bottom:4px;}
.scpro-v9-settings input,.scpro-v9-settings select{height:34px;font-size:12px;}
.scpro-v9-manual-entry{display:grid;grid-template-columns:1.3fr 1.1fr .65fr .45fr auto;gap:8px;}
.scpro-v9-manual-entry input,.scpro-v9-manual-entry select{height:34px;font-size:12px;}
.manual-cut-grid{grid-template-columns:1fr 1fr;}
.manual-entry-panel{display:grid;grid-template-rows:auto auto auto;gap:8px;align-content:start;}
.manual-profile-filter input{height:34px;font-size:12px;}
.scpro-v9-report-grid{height:100%;display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:1fr 1fr;gap:10px;min-height:0;}
.cut-list-card{grid-row:1/3;}
.cut-result-card{grid-column:2/4;}
.scpro-table-wrap-large,.scpro-table-wrap-medium,.steelcut-table-scroll,.manual-cut-table-wrap{height:100%;overflow:auto;}
.steelcut-table{width:100%;min-width:0!important;font-size:11.5px;}
.steelcut-table th,.steelcut-table td{padding:5px 7px;}
.cut-result-box{height:100%;overflow:auto;font-size:11.5px;}
.cut-result-group{border:1px solid #e2e8f0;border-radius:12px;margin-bottom:8px;padding:8px;background:#f8fbff;}
.cut-result-group h4{font-size:13px;margin:0 0 6px;display:flex;justify-content:space-between;gap:8px;}
.cut-result-group h4 span{font-size:11px;color:#64748b;}
.cut-bar-line{display:grid;grid-template-columns:130px 1fr 80px;gap:8px;align-items:center;border-top:1px solid #e2e8f0;padding:5px 0;}
.cut-bar-line p,.cut-bar-line em{margin:0;font-style:normal;}
.cut-bar-line.from-stock strong{color:#0f766e;}
.cut-bar-line.from-new strong{color:#1d4ed8;}

/* Stok / Fire / Hurda */
.scpro-v9-stock-page .scpro-v9-shell{grid-template-rows:auto auto auto 1fr;}
.scpro-v9-stock-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;}
.scrap-weight-summary{background:#fff7ed!important;border-color:#fed7aa!important;}
.scpro-v9-stock-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.stock-entry-grid-v9{display:grid;grid-template-columns:1fr 1fr 1fr .65fr .45fr auto;gap:7px;}
.stock-entry-grid-v9 input,.stock-entry-grid-v9 select{height:32px;font-size:11.5px;}
.scpro-v9-stock-grid{height:100%;display:grid;grid-template-columns:1fr 1fr .9fr;gap:10px;min-height:0;}
.stock-page-list,.stock-page-history{height:100%;overflow:auto;padding-right:4px;}
.stock-material-card{border:1px solid #e2e8f0;border-radius:12px;padding:8px;margin-bottom:8px;background:#fff;}
.stock-material-card h4{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:13px;margin:0 0 6px;}
.stock-material-card h4 small{font-size:10px;color:#64748b;}
.stock-line{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:4px 0;border-top:1px solid #f1f5f9;font-size:11px;}
.mini-delete-btn{background:#fee2e2!important;color:#991b1b!important;border:1px solid #fecaca!important;border-radius:8px!important;padding:4px 7px!important;font-size:10px!important;box-shadow:none!important;}
.history-line{border-bottom:1px solid #e2e8f0;padding:6px 0;font-size:11px;display:grid;gap:2px;}
.history-line em{font-style:normal;color:#64748b;}

/* Lazer Kesim */
.laser-panel,.planning-panel{height:100%;display:grid;grid-template-rows:auto auto auto 1fr;gap:10px;overflow:hidden;}
.laser-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;}
.laser-summary-grid div{background:#f8fbff;border:1px solid var(--v9-border);border-radius:14px;padding:10px;text-align:center;}
.laser-summary-grid span{display:block;font-size:11px;font-weight:800;color:#64748b;}
.laser-summary-grid strong{display:block;font-size:18px;color:#1d4ed8;}
.laser-filter-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.laser-table-wrapper{height:100%;overflow:auto;}
.laser-table{width:100%;font-size:12px;}
.laser-table th,.laser-table td{padding:6px 8px;}
.compact-action{font-size:10px!important;padding:5px 7px!important;margin:1px;}

/* Planlama */
.planning-panel{grid-template-rows:auto 1fr auto;}
.planning-grid{height:100%;min-height:0;display:grid;grid-template-columns:.8fr .8fr 1.2fr;gap:10px;overflow:hidden;}
.planning-input-card,.planning-result-card{background:#fff;border:1px solid var(--v9-border);border-radius:14px;padding:12px;overflow:auto;}
.planning-input-card h4,.planning-result-card h4{margin:0 0 8px;font-size:14px;}
.planning-input-card label{display:block;font-size:11px;font-weight:800;color:#475569;margin-bottom:6px;}
.planning-input-card input{height:32px;font-size:12px;margin-top:3px;}
.planning-result-box{font-size:12px;line-height:1.45;}
.planning-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px;}
.planning-kpi-grid div{background:#f8fbff;border:1px solid #e2e8f0;border-radius:10px;padding:8px;text-align:center;}
.planning-kpi-grid span{font-size:10px;color:#64748b;display:block;font-weight:800;}
.planning-kpi-grid strong{font-size:14px;color:#1d4ed8;}
.planning-bars div{display:flex;justify-content:space-between;border-bottom:1px solid #e2e8f0;padding:6px 0;}
.planning-note{font-size:11px;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:8px;}

/* Ayarlar Profil Tipleri */
.settings-v9-page.active-page{display:block;}
.settings-v9-page{height:100%;overflow:hidden;display:grid!important;grid-template-rows:auto 1fr;gap:10px;}
.settings-v9-grid{height:100%;min-height:0;display:grid;grid-template-columns:1.2fr .8fr;gap:10px;overflow:hidden;}
.settings-v9-panel{overflow:hidden;}
.profile-settings-summary{display:flex;justify-content:space-between;align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;padding:10px;margin:10px 0;font-size:12px;}
.profile-settings-summary strong{font-size:18px;color:#1d4ed8;}
.profile-types-modal-content{height:min(92vh,780px);display:grid;grid-template-rows:auto auto 1fr;overflow:hidden;}
.profile-type-entry{display:grid;grid-template-columns:1fr 1fr .5fr auto;gap:8px;margin-bottom:10px;}
.profile-type-entry input{height:34px;font-size:12px;}
.profile-types-list{height:100%;overflow:auto;border:1px solid #e2e8f0;border-radius:12px;padding:8px;background:#f8fafc;}
.profile-type-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:7px;margin-bottom:6px;font-size:12px;}

/* Kesim Rapor Modal */
.cut-report-modal-content{height:min(94vh,860px);display:grid;grid-template-rows:auto auto 1fr;overflow:hidden;}
.cut-report-actions{display:flex;gap:8px;justify-content:flex-end;margin-bottom:8px;}
.cut-report-preview{height:100%;overflow:auto;border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:12px;}
.cut-report-preview table{width:100%;border-collapse:collapse;margin:8px 0 14px;font-size:11px;}
.cut-report-preview th,.cut-report-preview td{border:1px solid #e2e8f0;padding:5px 6px;text-align:left;white-space:normal;}
.cut-report-preview th{background:#f1f5f9;}

/* Sevkiyat */
#shipmentPage.active-page .panel{height:100%;display:grid;grid-template-rows:auto auto 1fr;gap:10px;overflow:hidden;}
#shipmentPage .table-wrapper{height:100%;overflow:auto;}

/* Responsive but still panel-scroll only */
@media (max-width:1400px){
  .scpro-v9-summary{grid-template-columns:repeat(4,1fr);}
  .scpro-v9-report-grid{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr 1fr;}
  .cut-list-card{grid-row:auto;}
  .cut-result-card{grid-column:1/3;}
  .scpro-v9-stock-grid{grid-template-columns:1fr 1fr;}
  .stock-history-panel{grid-column:1/3;}
  .stock-entry-grid-v9{grid-template-columns:1fr 1fr .8fr .55fr .4fr auto;}
}
@media (max-width:1180px){
  .new-project-upload-grid{grid-template-columns:1fr;}
  .scpro-v9-two-grid,.planning-grid,.settings-v9-grid{grid-template-columns:1fr;}
  .scpro-v9-tabs{grid-template-columns:1fr;}
  .scpro-v9-stock-entry-grid,.scpro-v9-stock-grid{grid-template-columns:1fr;}
  .stock-history-panel{grid-column:auto;}
  .scpro-v9-report-grid{grid-template-columns:1fr;grid-template-rows:repeat(5,minmax(220px,1fr));overflow:auto;}
  .cut-result-card{grid-column:auto;}
  .stock-entry-grid-v9,.scpro-v9-manual-entry{grid-template-columns:1fr 1fr;}
}


/* =====================================================
   V10 - SAYFA ÜST ÜSTE BİNME DÜZELTMESİ
   =====================================================
   Not: V9'da settings-v9-page display:grid!important olduğu için
   Ayarlar sayfası diğer sayfaların üstüne biniyordu. Burada sayfa
   görünürlüğünü tek merkezden tekrar kilitliyoruz.
*/
html,
body{
  height:100% !important;
  overflow:hidden !important;
}

.shell{
  height:100vh !important;
  max-height:100vh !important;
  overflow:hidden !important;
}

.main{
  min-width:0 !important;
  min-height:0 !important;
  overflow:hidden !important;
}

.page{
  display:none !important;
  height:100% !important;
  min-height:0 !important;
  margin-top:0 !important;
  overflow:hidden !important;
}

.page.active-page{
  display:block !important;
}

#dashboardPage.active-page{
  display:grid !important;
}

#newProjectPage.active-page{
  display:flex !important;
}

#settingsPage.settings-v9-page{
  display:none !important;
}

#settingsPage.settings-v9-page.active-page{
  display:grid !important;
}

/* Ayarlar artık sol menüde yok; sadece Ana Menü'den açılır. */
.dashboard-settings-btn{
  background:rgba(255,255,255,.18) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  color:#fff !important;
}

/* Sol menü taşmasın; sadece kendi içinde kaydırılsın. */
.side-nav{
  overflow:auto !important;
  min-height:0 !important;
  max-height:calc(100vh - 190px) !important;
}

/* Üst başlık her sayfada aynı genişlikte ve açık mavi kalsın. */
.topbar{
  width:100% !important;
  max-width:100% !important;
  flex:0 0 auto !important;
  background:linear-gradient(135deg,#2f80ed,#6bb8ff) !important;
  border:1px solid rgba(255,255,255,.35) !important;
}

/* Aktif sayfanın iç paneli ekranı taşırmasın; kaydırma sadece iç listelerde olsun. */
#savedProjectsPage.active-page .saved-projects-fit,
#trackingPage.active-page .tracking-table-scroll,
#cuttingOptimizerPage.active-page .scpro-v9-project-list,
#cuttingOptimizerPage.active-page .steelcut-table-scroll,
#cuttingOptimizerPage.active-page .manual-cut-table-wrap,
#cuttingOptimizerPage.active-page .scpro-table-wrap-large,
#cuttingOptimizerPage.active-page .scpro-table-wrap-medium,
#cuttingOptimizerPage.active-page .cut-result-box,
#steelCutStockPage.active-page .stock-page-list,
#steelCutStockPage.active-page .stock-page-history,
#laserCuttingPage.active-page .laser-table-wrapper,
#shipmentPage.active-page .table-wrapper,
#reportsPage.active-page textarea,
#settingsPage.active-page .profile-types-list{
  overflow:auto !important;
}

/* Her sayfanın ana paneli üst üste binmeden kendi alanına otursun. */
#savedProjectsPage.active-page,
#trackingPage.active-page,
#cuttingOptimizerPage.active-page,
#steelCutStockPage.active-page,
#laserCuttingPage.active-page,
#planningPage.active-page,
#shipmentPage.active-page,
#reportsPage.active-page{
  min-height:0 !important;
  height:100% !important;
}

/* Dar ekranlarda eski medya kuralları sayfaları zorla göstermesin. */
@media (max-width:1180px){
  .page:not(.active-page){
    display:none !important;
  }
  #settingsPage.settings-v9-page:not(.active-page){
    display:none !important;
  }
}

/* =====================================================
   V11 - MADDE MADDE TOPARLAMA VE PROFESYONEL EKRAN DÜZENİ
   ===================================================== */
:root{
  --primary:#3b8fe8 !important;
  --primary-dark:#2f78c7 !important;
  --navy:#276fae !important;
  --navy-2:#3b8fe8 !important;
  --v9-blue:#3b8fe8 !important;
  --v9-navy:#245f98 !important;
  --dashboard-bg:#eef6ff !important;
}
.sidebar,
body.dashboard-mode .sidebar{
  background:linear-gradient(180deg,#2f80c9 0%,#3b8fe8 55%,#63b3f3 100%) !important;
}
.brand p{color:#e8f5ff !important;}
.nav-btn{color:#eef8ff !important;}
.nav-btn:hover,.nav-btn.active{background:rgba(255,255,255,.22) !important;}
.topbar,
.scpro-main-title,
.stock-title-v9{
  background:linear-gradient(135deg,#3b8fe8,#77c5ff) !important;
  border:1px solid rgba(255,255,255,.44) !important;
}
.topbar{width:100% !important;max-width:100% !important;}
.topbar .top-actions{margin-left:auto;}
.top-settings-btn{background:rgba(255,255,255,.18) !important;border:1px solid rgba(255,255,255,.30) !important;color:#fff !important;}
.dashboard-settings-btn{display:inline-flex !important;}
.hero-panel{background:linear-gradient(135deg,#3b8fe8,#77c5ff) !important;}

/* Sol alt destek kartı */
.support-footer{display:block;width:100%;text-align:left;color:#fff;cursor:pointer;background:rgba(255,255,255,.15)!important;border:1px solid rgba(255,255,255,.24)!important;box-shadow:none!important;}
.support-footer span{display:block;color:#e8f5ff;font-size:11px;margin-bottom:4px;font-weight:700;}
.support-footer strong:not(#sidebarProjectName){display:block;font-size:18px;letter-spacing:.04em;}
.support-footer em{display:block;font-style:normal;font-size:10px;color:#e8f5ff;margin-top:3px;}
.sidebar-hidden-current{display:none!important;}
.support-modal-content{width:min(520px,92vw);}
.support-box{background:#f8fbff;border:1px solid #d9e6f5;border-radius:16px;padding:18px;line-height:1.5;}
.support-box h3{margin:0 0 8px;color:#245f98;font-size:24px;}
.support-box small{display:block;margin-top:12px;color:#64748b;}

/* Kayıtlı projeler sade */
.saved-projects-clean-page.active-page{display:flex!important;}
.saved-projects-panel{height:100%;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;gap:10px!important;overflow:hidden!important;}
.saved-title-compact{margin-bottom:0!important;padding-bottom:8px;border-bottom:1px solid #e2e8f0;}
.saved-title-compact h3{font-size:18px!important;margin:0!important;}
.saved-title-compact p{font-size:12px!important;margin:3px 0 0!important;color:#64748b!important;}
.saved-projects-fit{min-height:0!important;overflow:auto!important;}

/* Detay aç ekranı: malzeme açıklaması tam 2 satır ve kolonlar sıkı */
.v9-detail-table{min-width:1080px!important;table-layout:fixed!important;}
.v9-detail-table th,.v9-detail-table td{padding:4px 5px!important;font-size:10.8px!important;vertical-align:middle!important;}
.v9-detail-table th:nth-child(1),.v9-detail-table td:nth-child(1){width:11%!important;}
.v9-detail-table th:nth-child(2),.v9-detail-table td:nth-child(2){width:6%!important;text-align:center!important;}
.v9-detail-table th:nth-child(3),.v9-detail-table td:nth-child(3){width:12%!important;}
.v9-detail-table th:nth-child(4),.v9-detail-table td:nth-child(4){width:5%!important;text-align:center!important;}
.v9-detail-table th:nth-child(5),.v9-detail-table td:nth-child(5){width:5%!important;text-align:center!important;}
.v9-detail-table th:nth-child(6),.v9-detail-table td:nth-child(6){width:5%!important;text-align:center!important;}
.v9-detail-table th:nth-child(7),.v9-detail-table td:nth-child(7){width:18%!important;}
.v9-detail-table .material-note-cell{white-space:normal!important;line-height:1.22!important;max-width:none!important;}
.v9-detail-table .material-note-cell span{display:block!important;white-space:normal!important;line-height:1.22!important;max-height:2.5em!important;overflow:hidden!important;}
.v9-detail-table .flow-btn{min-width:74px!important;padding:4px 5px!important;font-size:9.8px!important;}

/* SteelCutPro seçilebilir proje kartları */
.scpro-main-title span{display:none!important;}
.scpro-main-title h3{font-size:21px!important;margin:0 0 4px!important;}
.scpro-main-title p{font-size:12px!important;max-width:920px;}
.v11-project-check{display:grid!important;grid-template-columns:22px 1fr auto;align-items:center;gap:8px;padding:9px 10px!important;border:1px solid #dbeafe;border-radius:13px;background:#fff;cursor:pointer;}
.v11-project-check input{width:16px;height:16px;accent-color:#3b8fe8;}
.v11-project-check.selected{background:#eaf5ff!important;border-color:#3b8fe8!important;box-shadow:inset 0 0 0 1px rgba(59,143,232,.18);}
.v11-project-check .cut-project-card-main strong{display:block;font-size:13px;color:#0f172a;}
.v11-project-check .cut-project-card-main em{display:block;font-size:10.5px;color:#64748b;font-style:normal;margin-top:2px;}
.v11-project-check .cut-project-card-main small{display:block;font-size:10.5px;color:#475569;margin-top:2px;}

/* Lazer kesim: proje seçimi + liste */
.laser-panel{grid-template-rows:auto auto minmax(0,1fr)!important;}
.laser-work-grid{min-height:0;display:grid;grid-template-columns:330px minmax(0,1fr);gap:10px;overflow:hidden;}
.laser-project-panel{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:10px;overflow:hidden;}
.laser-filter-row{grid-template-columns:1fr!important;}
.laser-project-list{min-height:0;overflow:auto;display:grid;gap:7px;align-content:start;padding-right:4px;}
.laser-project-check{display:grid;grid-template-columns:20px 1fr;gap:8px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px;cursor:pointer;}
.laser-project-check.selected{background:#eaf5ff;border-color:#3b8fe8;}
.laser-project-check input{width:15px;height:15px;accent-color:#3b8fe8;}
.laser-project-check strong{display:block;font-size:12.5px;}
.laser-project-check em{display:block;font-size:10.5px;color:#64748b;font-style:normal;margin-top:2px;}
.laser-table-wrapper{min-height:0!important;height:100%!important;overflow:auto!important;}

/* Planlama profesyonel panel */
.professional-planning-panel{display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;gap:10px!important;height:100%;overflow:hidden!important;}
.planning-pro-grid{min-height:0;display:grid;grid-template-columns:280px 280px minmax(0,1fr);gap:10px;overflow:hidden;}
.planning-capacity-card,.planning-parameter-card,.planning-result-wide{min-height:0;overflow:auto;background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:12px;}
.planning-input-card label{margin-bottom:7px!important;}
.planning-result-wide{display:grid;grid-template-rows:auto minmax(0,1fr);}
.planning-table-scroll{min-height:0;overflow:auto;border:1px solid #e2e8f0;border-radius:12px;background:#fff;}
.planning-table{width:100%;border-collapse:collapse;font-size:11.5px;}
.planning-table th,.planning-table td{border-bottom:1px solid #edf2f7;padding:6px 7px;text-align:left;white-space:nowrap;}
.planning-table th{background:#f1f7ff;color:#245f98;font-weight:900;position:sticky;top:0;}
.risk-pill{display:inline-block;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:900;background:#e0f2fe;color:#075985;}
.risk-pill.riskli{background:#fef3c7;color:#92400e;}
.risk-pill.kritik{background:#fee2e2;color:#991b1b;}

/* Sevkiyat fişi */
.shipment-page.active-page{display:flex!important;}
.shipment-panel{height:100%;display:grid!important;grid-template-rows:auto auto minmax(0,1fr)!important;gap:10px;overflow:hidden!important;}
.shipment-table-wrapper{min-height:0!important;height:100%!important;overflow:auto!important;}
.shipment-slip-modal-content{width:min(720px,94vw);display:grid;grid-template-rows:auto auto auto;gap:10px;}
.shipment-slip-form{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.shipment-slip-form label{display:grid;gap:5px;font-weight:800;font-size:12px;color:#475569;}
.shipment-slip-form input,.shipment-slip-form textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:9px;font:inherit;}
.shipment-slip-form label:last-child{grid-column:1/3;}
.ship-actions{justify-content:flex-end;}

/* Müşteri rapor paneli */
.reports-page.active-page{display:flex!important;}
.reports-panel{height:100%;display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto!important;gap:10px;overflow:hidden!important;}
.report-controls-v11{display:grid!important;grid-template-columns:180px minmax(260px,1fr);gap:8px;}
.customer-report-box{min-height:0;overflow:auto;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff;padding:12px;}
.customer-report h3{margin:0 0 4px;color:#245f98;}
.customer-project-card{background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:12px;margin-top:10px;}
.customer-project-head{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e2e8f0;padding-bottom:8px;margin-bottom:8px;}
.customer-project-head h4{margin:0;font-size:16px;color:#0f172a;}
.customer-project-head span{font-size:22px;font-weight:900;color:#3b8fe8;}
.customer-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px;}
.customer-kpis div{background:#f1f7ff;border-radius:10px;padding:8px;text-align:center;}
.customer-kpis b{display:block;color:#245f98;}
.customer-kpis small{display:block;color:#64748b;font-size:10px;}
.customer-bars{display:grid;gap:6px;}
.customer-bars div{display:grid;grid-template-columns:90px 1fr 44px;gap:8px;align-items:center;font-size:11px;}
.customer-bars i{height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden;}
.customer-bars em{display:block;height:100%;background:#3b8fe8;border-radius:999px;}
.customer-history{margin-top:10px;border-top:1px solid #e2e8f0;padding-top:8px;font-size:11.5px;}
.customer-history p{margin:3px 0;color:#475569;}
.hidden-report-text{height:0!important;min-height:0!important;opacity:0;pointer-events:none;padding:0!important;border:0!important;}

@media(max-width:1320px){
  .planning-pro-grid{grid-template-columns:1fr 1fr;}
  .planning-result-wide{grid-column:1/3;}
  .laser-work-grid{grid-template-columns:290px minmax(0,1fr);}
}
@media(max-width:1050px){
  .planning-pro-grid,.laser-work-grid{grid-template-columns:1fr;overflow:auto;}
  .planning-result-wide{grid-column:auto;}
  .shipment-slip-form{grid-template-columns:1fr;}
  .shipment-slip-form label:last-child{grid-column:auto;}
}
