/* FullShipping — mobil tablo kartları ve yazdırma.
   Yüklenme sırası: en son (base/app/components/screens'ten sonra). */

/* ============================================================
   MOBİL: yoğun tabloları karta çevir (≤720px)
   Kolon başlıkları data-label ile satırın içine taşınır.
   ============================================================ */
@media (max-width: 720px) {
  .fs-table-wrap { overflow: visible; }
  .fs-table--cards thead { display: none; }
  .fs-table--cards, .fs-table--cards tbody, .fs-table--cards tr, .fs-table--cards td { display: block; width: 100%; }
  .fs-table--cards tr {
    border: 1px solid var(--fs-border); border-radius: var(--fs-r-md);
    background: var(--fs-surface); margin-bottom: 10px; padding: 4px 0;
    box-shadow: var(--fs-shadow-xs);
  }
  .fs-table--cards tr[data-late] { box-shadow: inset 3px 0 0 var(--fs-danger-500), var(--fs-shadow-xs); }
  .fs-table--cards tr[data-attention] { box-shadow: inset 3px 0 0 var(--fs-warning-500), var(--fs-shadow-xs); }
  .fs-table--cards td {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    padding: 8px 14px; border: 0; text-align: right; min-height: 0;
  }
  .fs-table--cards td::before {
    content: attr(data-label); flex: none;
    font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase;
    color: var(--fs-ink-3); text-align: left;
  }
  .fs-table--cards td:empty { display: none; }
  /* ilk hücre başlık gibi: etiketsiz, sola yatık, ayırıcılı */
  .fs-table--cards td:first-child::before { display: none; }
  .fs-table--cards td:first-child {
    justify-content: flex-start; text-align: left; font-size: var(--fs-fs-body);
    padding-top: 12px; padding-bottom: 12px;
    border-bottom: 1px solid var(--fs-border); margin-bottom: 4px;
  }
  /* Seçim kutusu kendi satırını açmasın: kartın sağ üst köşesine yerleşir */
  .fs-table--cards tr { position: relative; }
  .fs-table--cards td:has(> input[type="checkbox"]) {
    position: absolute; top: 10px; right: 10px; width: auto; padding: 0;
    border: 0; margin: 0; justify-content: flex-start;
  }
  .fs-table--cards td:has(> input[type="checkbox"])::before { display: none; }
  /* Seçim kutusu ilk hücreyse başlık görevini ikinci hücre alır */
  .fs-table--cards td:has(> input[type="checkbox"]) + td::before { display: none; }
  .fs-table--cards td:has(> input[type="checkbox"]) + td {
    justify-content: flex-start; text-align: left; font-size: var(--fs-fs-body);
    padding: 12px 44px 12px 14px;
    border-bottom: 1px solid var(--fs-border); margin-bottom: 4px;
  }
  /* Etiketsiz son hücre (eylem düğmeleri) tam satır, sola yatık */
  .fs-table--cards td:not([data-label]):last-child {
    justify-content: flex-start; padding-top: 10px;
    border-top: 1px solid var(--fs-border); margin-top: 4px;
  }
  .fs-table--cards td:not([data-label]):last-child::before { display: none; }

  /* Yoğun bileşenler mobilde daralır */
  .fs-filters__row { gap: 6px; }
  .fs-seg { flex-wrap: wrap; }
  .fs-kpi__value { font-size: 26px; }
  .fs-page-head { flex-direction: column; align-items: flex-start; gap: 12px; }
  .fs-page-head > div:last-child { width: 100%; }
  .fs-statrow { grid-template-columns: repeat(2, 1fr); }
  .fs-modal__panel { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); }
  .fs-sheet__panel { width: 100vw; }
  .fs-daterange { width: 100%; }
  .fs-daterange input { flex: 1; min-width: 0; }
}

/* ============================================================
   YAZDIRMA
   Ekranın kabuğu basılmaz; yalnız içerik ve basılacak parça kalır.
   ============================================================ */
@media print {
  @page { margin: 14mm; }

  :root { --fs-canvas: #fff; --fs-surface: #fff; --fs-surface-2: #fff; --fs-surface-3: #f4f4f6; }
  html[data-theme="dark"] { --fs-ink: #111; --fs-ink-2: #333; --fs-ink-3: #666; --fs-border: #ccc; }

  body { background: #fff; color: #111; }

  /* Kabuk ve etkileşim yok */
  .fs-side, .fs-topbar, .fs-msearch, .fs-palette, .fs-toasts,
  .fs-pop, .fs-popwrap, .fs-drag, .fs-iconbtn, .fs-kbd,
  .fs-toolbar, [data-bulkbar], .fs-views, .fs-filters,
  .fs-btn, .fs-menubtn, .fs-sheet__foot, .fs-modal__foot, .fs-widget__foot .fs-btn { display: none !important; }

  .fs-app { display: block; }
  .fs-main { display: block; }
  .fs-content { padding: 0; max-width: none; }
  .fs-dash { display: block; }
  .fs-card, .fs-widget { break-inside: avoid; box-shadow: none; border-color: #ddd; margin-bottom: 8mm; }
  .fs-col-3, .fs-col-4, .fs-col-5, .fs-col-6, .fs-col-7, .fs-col-8, .fs-col-12 { grid-column: auto; }

  /* Tablolar sayfa sonunda düzgün kırılsın */
  .fs-table-wrap { overflow: visible; }
  .fs-table { font-size: 9.5pt; }
  .fs-table thead { display: table-header-group; }
  .fs-table tr { break-inside: avoid; }
  .fs-table th { background: #f4f4f6 !important; color: #111 !important; }

  /* Durum sözcükleri mürekkep tasarrufu için çerçeveli */
  .fs-state, .fs-badge {
    background: none !important; color: #111 !important;
    box-shadow: inset 0 0 0 1px #999; padding: 1px 7px;
  }
  .fs-state::before { background: #111 !important; }

  /* Grafikler basılmaz; yerine veri kalır */
  .fs-bars, .fs-donut, .fs-spark, .fs-viz { display: none !important; }
  .fs-legend { display: block; }

  /* Basılacak parça verildiyse yalnız o çıkar */
  body:has([data-print-only]) .fs-content > *:not([data-print-only]) { display: none !important; }
  [data-print-only] { break-inside: avoid; }

  /* Etiket: tek başına, kenarsız, gerçek ölçüde */
  body:has(.fs-labelsheet[data-print-only]) { margin: 0; }
  .fs-labelsheet[data-print-only] {
    width: 4in; height: 6in; max-width: none; box-shadow: none;
    aspect-ratio: auto; page-break-after: always;
  }
  .fs-labelsheet[data-size="a6"][data-print-only] { width: 105mm; height: 148mm; }
  .fs-labelsheet[data-size="a5"][data-print-only] { width: 148mm; height: 210mm; }
  .fs-labelstage { padding: 0; background: none; border: 0; min-height: 0; place-items: start; }

  /* Fatura ve toplama listesi: başlık her sayfada */
  .fs-print-head { display: flex !important; align-items: flex-start; justify-content: space-between; margin-bottom: 8mm; }
  .fs-print-only { display: block !important; }
  a[href]::after { content: ""; }
}

/* Ekranda yalnız yazdırmaya ait bloklar gizli */
.fs-print-head, .fs-print-only { display: none; }
