/*
 * This is a manifest file that'll be compiled into application.css.
 *
 * With Propshaft, assets are served efficiently without preprocessing steps. You can still include
 * application-wide styles in this file, but keep in mind that CSS precedence will follow the standard
 * cascading order, meaning styles declared later in the document or manifest will override earlier ones,
 * depending on specificity.
 *
 * Consider organizing styles into separate files for maintainability.
 */
/* Night button active state */
.night-btn[data-active="true"] {
  background-color: #fef3c7;
  border-color: #f59e0b;
  color: #92400e;
}

.night-line-btn[data-active="true"] {
  background-color: #fef3c7;
  border-color: #f59e0b;
  color: #92400e;
}

/* Keep 9-column layout on all screen sizes */
.talent-input-grid .grid-cols-9 {
  grid-template-columns: repeat(9, minmax(0, 1fr));
}

/* Responsive adjustments for very small screens only */
@media (max-width: 480px) {
  .talent-input-grid .grid-cols-9 {
    grid-template-columns: repeat(9, minmax(60px, 1fr));
    font-size: 0.75rem;
  }
  
  .talent-input-grid input {
    padding: 0.25rem;
    font-size: 0.75rem;
  }
  
  .talent-input-grid button {
    padding: 0.25rem 0.5rem;
    font-size: 0.625rem;
  }
}

/* Show number input arrows for rate inputs (removed hiding CSS) */

/* Rate adjustment button styling */
.rate-plus-btn:hover {
  background-color: #dcfce7;
}

.rate-minus-btn:hover {
  background-color: #fecaca;
}

/* Talent category button selected state */
.talent-btn.border-blue-500 {
  background-color: #ffff;
  border-color: #3b82f6;
  color: black;
}

/* Additional lines styling */
.additional-lines .talent-line {
  border-left: 3px solid #e5e7eb;
  background-color: #f9fafb;
}

.additional-lines .talent-line:hover {
  background-color: #f3f4f6;
}

/* Compact input styling for additional lines */
.talent-line input[type="number"] {
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
}

.talent-line button {
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
}

/* Quote preview table Excel-style borders */
.quote-preview-table {
  border-collapse: collapse;
  border: 1px solid #d1d5db;
}

.quote-preview-table th,
.quote-preview-table td {
  border-right: 1px solid #d1d5db;
  border-bottom: 1px solid #d1d5db;
}

.quote-preview-table th:last-child,
.quote-preview-table td:last-child {
  border-right: none;
}

.quote-preview-table thead tr {
  border-bottom: 1px solid #d1d5db;
}

.quote-preview-table tfoot tr {
  border-top: 2px solid #9ca3af;
}

/* Print-specific CSS for PDF generation */
@media print {
  /* Hide navigation */
  nav {
    display: none !important;
  }

  /* Hide flash messages */
  div[role="alert"] {
    display: none !important;
  }

  /* Hide buttons (Edit Quote, Download PDF, Back to Quotations) */
  .flex.gap-3 a,
  .flex.gap-3 button,
  .flex.gap-4 a,
  .flex.gap-4 button,
  a.btn,
  button.btn {
    display: none !important;
  }

  /* Hide action buttons container at top and bottom */
  div.flex.justify-between.items-center.p-6,
  div.flex.justify-center.gap-4 {
    display: none !important;
  }

  /* Show PDF header only on first page */
  .pdf-header {
    display: flex !important;
  }

  /* Ensure content starts at top on first page */
  body {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  main {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  /* Remove max-width constraint for PDF */
  .max-w-7xl {
    max-width: 100% !important;
  }

  /* Adjust page margins */
  @page {
    margin: 1cm 1.5cm;
  }

  /* Ensure tables don't break awkwardly */
  table {
    page-break-inside: auto;
  }

  tr {
    page-break-inside: avoid;
    page-break-after: auto;
  }

  thead {
    display: table-header-group;
  }

  tfoot {
    display: table-footer-group;
  }
}
