/* ================================================================
   HotelizPMS — Shared Report Styles
   Applied to all /reports/* pages
================================================================ */
.rpt-kpi-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:0;background:var(--border);border-bottom:1px solid var(--border)}
.rpt-kc{background:var(--surface);padding:13px 16px 10px;position:relative;overflow:hidden;transition:.14s;cursor:default}
.rpt-kc:hover{background:var(--surface2)}
.rpt-kac{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--kc,var(--primary)),transparent)}
.rpt-kbg{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:40px;opacity:.04;color:var(--kc,var(--primary))}
.rpt-kl{font-size:7.5px;font-weight:800;text-transform:uppercase;letter-spacing:.9px;color:var(--text-muted);margin-bottom:4px}
.rpt-kl i{margin-right:3px;font-size:7px}
.rpt-kv{font-size:21px;font-weight:800;color:var(--kc,var(--primary));line-height:1;font-family:monospace;font-variant-numeric:tabular-nums}
.rpt-ks2{font-size:9px;color:var(--text-muted);margin-top:2px}
.rpt-kb{display:inline-flex;align-items:center;gap:2px;font-size:8px;font-weight:700;padding:2px 5px;border-radius:3px;margin-top:4px}
.rpt-kb-up{background:#d1fae5;color:#059669}
.rpt-kb-dn{background:#fee2e2;color:#dc2626}
.rpt-kb-fl{background:var(--surface3,#eef2f9);color:var(--text-muted)}

/* Filter bar */
.rpt-filter-bar{background:var(--surface);border-bottom:1px solid var(--border);padding:8px 20px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.rpt-fg{display:flex;align-items:center;gap:4px}
.rpt-fl{font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);white-space:nowrap}

/* Section header */
.rpt-sec-hdr{display:flex;align-items:center;justify-content:space-between;padding:9px 20px;background:var(--surface);border-bottom:1px solid var(--border);margin-top:1px}
.rpt-sec-title{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;color:var(--primary)}
.rpt-sec-title i{font-size:11px}
.rpt-count{background:var(--surface2);color:var(--text-muted);font-size:9px;font-weight:700;padding:1px 6px;border-radius:20px;border:1px solid var(--border)}

/* Table */
.rpt-table-wrap{background:var(--surface);margin-top:1px;overflow-x:auto;-webkit-overflow-scrolling:touch}
.rpt-table{width:100%;border-collapse:collapse;font-size:11.5px}
.rpt-table thead tr{background:linear-gradient(135deg,var(--primary),#1a3266);position:sticky;top:0;z-index:20}
.rpt-table thead th{padding:8px 11px;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:rgba(255,255,255,.85);text-align:left;white-space:nowrap;border-right:1px solid rgba(255,255,255,.05)}
.rpt-table thead th:last-child{border-right:none}
.rpt-table thead th.r{text-align:right}
.rpt-table thead th.c{text-align:center}
.rpt-table tbody tr{border-bottom:1px solid var(--border);transition:.1s}
.rpt-table tbody tr:hover{background:#edf2ff}
.rpt-table tbody tr:nth-child(even){background:var(--surface2)}
.rpt-table tbody tr:nth-child(even):hover{background:#edf2ff}
.rpt-table td{padding:7px 11px;vertical-align:middle;color:var(--text-secondary)}
.rpt-table td.r{text-align:right;font-family:monospace;font-size:11px}
.rpt-table td.c{text-align:center}
.rpt-table td.mono{font-family:monospace;font-size:11px}
.rpt-table tfoot tr{background:linear-gradient(90deg,var(--surface3,#eef2f9),var(--surface2))}
.rpt-table tfoot td{padding:8px 11px;font-weight:800;font-size:11px;color:var(--primary);border-top:2px solid var(--border)}

/* Divider row */
.rpt-divider-row td{background:var(--primary)!important;color:rgba(255,255,255,.8)!important;font-weight:700!important;font-size:9px!important;padding:5px 11px!important;text-transform:uppercase!important;letter-spacing:.5px!important}

/* Badges */
.rpt-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:20px;font-size:9px;font-weight:700;white-space:nowrap}
.rpt-badge-gray{background:#f1f5f9;color:#64748b}
.rpt-badge-green{background:#d1fae5;color:#059669}
.rpt-badge-red{background:#fee2e2;color:#dc2626}
.rpt-badge-amber{background:#fef3c7;color:#d97706}
.rpt-badge-blue{background:#dbeafe;color:#2563eb}
.rpt-badge-purple{background:#ede9fe;color:#7c3aed}
.rpt-badge-teal{background:#cffafe;color:#0891b2}
.rpt-badge-gold{background:#fff5d6;color:#7a4700}
.rpt-badge-navy{background:var(--primary);color:#fff}

/* Misc */
.rpt-av{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#0891b2);display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:800;color:#fff;flex-shrink:0}
.rpt-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:60px;font-size:13px;color:var(--text-muted)}
.rpt-empty{text-align:center;padding:60px;color:var(--text-muted)}
.rpt-empty i{font-size:36px;display:block;margin-bottom:12px;opacity:.3}
.rpt-highbal{color:#dc2626!important;font-weight:700!important}
.rpt-pbar{height:5px;background:var(--border);border-radius:3px;overflow:hidden;margin-top:3px;min-width:60px}
.rpt-pf{height:100%;border-radius:3px}

/* Print */

  .rpt-table thead tr{position:static!important}
  .rpt-table thead th{background:#0a1628!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .rpt-table tbody tr:nth-child(even){background:#f6f8fd!important;-webkit-print-color-adjust:exact}
  .rpt-kc,.rpt-kpi-strip,.rpt-badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ── Print: Black & White ────────────────────────── */


/* ── Print: B&W — works without "Background graphics" ── */


/* Print-only header (hidden on screen) */
.rpt-print-header { display: none; }

/* ── Print: B&W Report ──────────────────────────── */
@media print {
  /* Hide app chrome + interactive elements */
  .pms-sidebar, .pms-header, .pms-footer, .sidebar-overlay,
  .rsc-legend, .rsc-stats, .rsc-popup,
  .pms-btn, .pms-btn-primary, .pms-btn-secondary, .pms-btn-ghost,
  button:not(.no-hide-print),
  .rpt-filter-bar input, .rpt-filter-bar select { display: none !important; }

  /* Hide interactive header — print-only header replaces it */
  .page-header, .rpt-page-hdr { display: none !important; }

  /* Hide filter bar */
  .rpt-filter-bar { display: none !important; }

  /* KPI strip — show B&W */
  .rpt-kpi-strip { border: 1px solid #ccc !important; background: #fff !important; }
  .rpt-kc { background: #fff !important; border-right: 1px solid #eee !important; }
  .rpt-kac { background: #999 !important; }
  .rpt-kl { color: #666 !important; }
  .rpt-kv { color: #000 !important; }
  .rpt-ks2 { color: #666 !important; }
  .rpt-kbg { display: none !important; }

  /* Force layout */
  .pms-shell, .pms-body, .pms-main, .pms-content,
  .rpt-table-wrap, body, html { 
    background: #fff !important; color: #000 !important;
    width: 100% !important; max-width: 100% !important;
    margin: 0 !important; padding: 0 !important;
  }
  .pms-body { display: block !important; }
  .pms-main { margin: 0 !important; padding: 0 !important; }
  .pms-content { padding: 4px 0 !important; }
  .rpt-table-wrap { overflow: visible !important; }

  /* Override CSS variables */
  :root, .theme-dark, .theme-light {
    --bg: #fff !important; --surface: #fff !important; --surface2: #f5f5f5 !important;
    --surface3: #eee !important; --border: #ccc !important; --text: #000 !important;
    --text-muted: #666 !important; --text-secondary: #333 !important;
    --hover: transparent !important; --primary: #000 !important;
  }

  /* Section header */
  .rpt-sec-hdr { background: #fff !important; border-bottom: 2px solid #000 !important; padding: 6px 0 !important; }
  .rpt-sec-title { color: #000 !important; font-size: 13px !important; }
  .rpt-sec-title i { color: #000 !important; }
  .rpt-count { border: 1px solid #999 !important; color: #000 !important; background: #eee !important; }

  /* Table B&W */
  .rpt-table { width: 100% !important; font-size: 10px; color: #000 !important; border-collapse: collapse; border: 1px solid #000; }
  .rpt-table thead tr { position: static !important; }
  .rpt-table thead th { 
    background: #1a1a2e !important; color: #fff !important; 
    padding: 6px 8px; font-size: 8px; border: 1px solid #1a1a2e;
    -webkit-print-color-adjust: exact; print-color-adjust: exact; 
  }
  .rpt-table tbody tr { background: #fff !important; border-bottom: 1px solid #ddd; }
  .rpt-table tbody tr:nth-child(even) { background: #f5f5f5 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .rpt-table td { padding: 5px 8px; color: #000 !important; }
  .rpt-table tfoot td { border-top: 2px solid #000; font-weight: 700; color: #000 !important; }

  /* Badges B&W */
  .rpt-badge, .pmsgrid-code, code { background: #eee !important; color: #000 !important; border: 1px solid #ccc; -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  /* Print header */
  .rpt-print-header {
    display: flex !important; justify-content: space-between; align-items: center;
    padding: 10px 0 8px; border-bottom: 2px solid #000; margin-bottom: 8px;
  }
  .rpt-print-title { font-size: 16px; font-weight: 700; color: #000 !important; }
  .rpt-print-date { font-size: 12px; color: #333 !important; }

  /* Force text black (except table headers) */
  * { color: #000 !important; }
  .rpt-table thead th, .rpt-table thead th * { color: #fff !important; }
  .rpt-kac { height: 3px !important; }
}
