/**
 * TheCharterBox — Print Styles
 * Loaded with media="print" — rules apply only when printing.
 */

@media print {

  /* ── Page setup ───────────────────────────────────────────────────── */

  @page {
    margin: 15mm 15mm 15mm 15mm;
    size: A4 portrait;
  }

  body {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 11px !important;
    color: #000 !important;
    background: white !important;
  }

  /* ── Hide WordPress theme chrome ──────────────────────────────────── */

  header, footer, nav,
  .site-header, .site-footer,
  .site-navigation, .sidebar,
  #wpadminbar, .menu, .widget-area {
    display: none !important;
  }

  /* ── Hide calculator UI controls ──────────────────────────────────── */

  .tcb-tabs              { display: none !important; }
  .tcb-export-bar        { display: none !important; }
  .tcb-btn               { display: none !important; }
  .tcb-header-actions    { display: none !important; }
  .tcb-sidebar           { display: none !important; }
  .tcb-tooltip-icon      { display: none !important; }
  .tcb-event-delete      { display: none !important; }
  .tcb-port-delete       { display: none !important; }
  .tcb-sof-col-actions   { display: none !important; }
  .tcb-breakdown-legend  { display: none !important; }
  .tcb-timeline-wrap     { display: none !important; }
  .tcb-timeline-bar      { display: none !important; }
  .tcb-timeline-label    { display: none !important; }
  .tcb-preset-info       { display: none !important; }
  .tcb-footer            { display: none !important; }

  /* Port card action buttons (added in port restructure) */
  .tcb-btn-add-port      { display: none !important; }
  .tcb-port-card-rename  { display: none !important; }
  .tcb-port-card-remove  { display: none !important; }
  .tcb-sof-port-bar      { display: none !important; }

  /* Force all port cards open */
  .tcb-port-card-term-body { display: block !important; }

  /* ── Make inputs look like plain text ─────────────────────────────── */

  input, select, textarea {
    border: none !important;
    background: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    padding: 0 !important;
    font-size: 11px !important;
    box-shadow: none !important;
  }

  /* ── Main layout ──────────────────────────────────────────────────── */

  .tcb-wrapper {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: white !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  .tcb-main {
    display: block !important;
  }

  .tcb-content {
    width: 100% !important;
  }

  .tcb-tab-panels {
    display: block !important;
  }

  /* All tab panels are visible before print (via JS beforeprint handler) */
  .tcb-panel {
    page-break-inside: avoid;
  }

  /* ── Branded print header (hidden on screen) ──────────────────────── */

  .tcb-print-header {
    display: block !important;
    text-align: center;
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid #1B2A4A;
  }

  .tcb-print-header h1 {
    font-size: 18px !important;
    color: #1B2A4A !important;
    margin: 0 0 2px !important;
    font-weight: 700;
  }

  .tcb-print-header p {
    font-size: 10px;
    color: #666;
    margin: 0;
  }

  /* Hide on-screen header chrome, keep title text */
  .tcb-header {
    background: white !important;
    color: #1B2A4A !important;
    border-bottom: none !important;
    padding: 0 !important;
  }

  .tcb-title {
    color: #1B2A4A !important;
    font-size: 14px !important;
  }

  /* ── Charter terms section ────────────────────────────────────────── */

  .tcb-fieldset {
    border: 1px solid #ccc !important;
    page-break-inside: avoid;
    margin-bottom: 8px !important;
    padding: 8px !important;
  }

  .tcb-form-row {
    margin-bottom: 4px !important;
  }

  /* ── Results summary ──────────────────────────────────────────────── */

  .tcb-results-summary,
  .tcb-combined-result {
    border: 2px solid #1B2A4A !important;
    padding: 10px !important;
    margin: 10px 0 !important;
    page-break-inside: avoid;
  }

  .tcb-summary-cards {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 8px !important;
  }

  .tcb-card {
    border: 1px solid #ccc !important;
    padding: 8px !important;
  }

  .tcb-card.tcb-demurrage {
    border-color: #D64045 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-card.tcb-despatch {
    border-color: #4CAF50 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-card-value.tcb-demurrage,
  .tcb-card.tcb-demurrage .tcb-card-value {
    color: #D64045 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-card-value.tcb-despatch,
  .tcb-card.tcb-despatch .tcb-card-value {
    color: #4CAF50 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* ── Tables ───────────────────────────────────────────────────────── */

  table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 10px !important;
    page-break-inside: auto;
  }

  tr { page-break-inside: avoid; }

  th {
    background: #1B2A4A !important;
    color: #fff !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    padding: 5px 7px !important;
    font-size: 10px !important;
    text-align: left;
  }

  td {
    padding: 4px 7px !important;
    border-bottom: 0.5px solid #DDD !important;
  }

  /* ── Breakdown row colors ─────────────────────────────────────────── */

  .tcb-row-counting {
    background: #E8F5E9 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-row-weekend {
    background: #F5F5F5 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-row-holiday {
    background: #E3F2FD !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-row-weather {
    background: #E1F5FE !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-row-interrupted {
    background: #FFF3E0 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-row-demurrage {
    background: #FFEBEE !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-row-laytime-expired td {
    background: #D32F2F !important;
    color: #fff !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* ── Status badges ────────────────────────────────────────────────── */

  .tcb-badge {
    padding: 1px 4px !important;
    font-size: 8px !important;
    border-radius: 2px !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .tcb-badge-counting    { background: #4CAF50 !important; color: #fff !important; }
  .tcb-badge-weekend     { background: #9E9E9E !important; color: #fff !important; }
  .tcb-badge-holiday     { background: #42A5F5 !important; color: #fff !important; }
  .tcb-badge-weather     { background: #29B6F6 !important; color: #fff !important; }
  .tcb-badge-interrupted { background: #FFA726 !important; color: #fff !important; }
  .tcb-badge-excluded    { background: #757575 !important; color: #fff !important; }
  .tcb-badge-demurrage   { background: #EF5350 !important; color: #fff !important; }

  /* ── Page breaks ──────────────────────────────────────────────────── */

  #tcb-panel-sof     { page-break-before: auto; }
  .tcb-breakdown     { page-break-before: always; }
  .tcb-port-result   { page-break-inside: avoid; }

  /* ── Print footer (hidden on screen) ─────────────────────────────── */

  .tcb-print-footer {
    display: block !important;
    text-align: center;
    margin-top: 20px;
    padding-top: 8px;
    border-top: 1px solid #CCC;
    font-size: 9px;
    color: #888;
  }

}
