
/* InfraTrack v3.1.10 - Uniform Procurement Button System + Quote Card Alignment */
:root{
  --it-maroon:#9b0000;
  --it-maroon-dark:#7f0000;
  --it-maroon-soft:#fff1f1;
  --it-border:#d9e3f1;
}

/* Universal button reset for procurement actions */
.it-btn,
a.it-btn,
button.it-btn,
.btn-uniform,
a.btn-uniform,
button.btn-uniform,
.btn-premium,
.btn-compare,
.btn-new,
.btn-edit,
.btn-delete,
.proc-btn,
.proc-action-btn {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-height:38px !important;
  padding:0 18px !important;
  border-radius:12px !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  cursor:pointer !important;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease !important;
  border:1px solid transparent !important;
  box-sizing:border-box !important;
}

/* Primary maroon standard: same as Save Vendor Quote / organization pill */
.it-btn-primary,
a.it-btn-primary,
button.it-btn-primary,
.btn-new,
.btn-compare,
.btn-edit,
.proc-primary,
button[type="submit"].btn-premium,
input[type="submit"].btn-premium,
button[type="submit"],
.save-vendor-quote {
  background:linear-gradient(180deg, #b40000 0%, var(--it-maroon) 100%) !important;
  color:#fff !important;
  border-color:var(--it-maroon) !important;
  box-shadow:0 10px 22px rgba(155,0,0,.18) !important;
}

.it-btn-primary:hover,
a.it-btn-primary:hover,
button.it-btn-primary:hover,
.btn-new:hover,
.btn-compare:hover,
.btn-edit:hover,
.proc-primary:hover,
button[type="submit"].btn-premium:hover,
input[type="submit"].btn-premium:hover,
button[type="submit"]:hover,
.save-vendor-quote:hover {
  transform:translateY(-1px) !important;
  background:linear-gradient(180deg, #a60000 0%, var(--it-maroon-dark) 100%) !important;
  color:#fff !important;
  box-shadow:0 14px 28px rgba(155,0,0,.25) !important;
}

/* Secondary action: Open / neutral */
.it-btn-secondary,
a.it-btn-secondary,
button.it-btn-secondary,
.btn-open,
.proc-secondary {
  background:#fff !important;
  color:var(--it-maroon) !important;
  border-color:#d9e3f1 !important;
  box-shadow:0 8px 18px rgba(15,23,42,.05) !important;
}

.it-btn-secondary:hover,
a.it-btn-secondary:hover,
button.it-btn-secondary:hover,
.btn-open:hover,
.proc-secondary:hover {
  background:var(--it-maroon-soft) !important;
  color:var(--it-maroon) !important;
  border-color:#efb5b5 !important;
  transform:translateY(-1px) !important;
}

/* Danger button still uses same shape but softer */
.it-btn-danger,
a.it-btn-danger,
button.it-btn-danger,
.btn-delete,
.proc-danger {
  background:#fff !important;
  color:var(--it-maroon) !important;
  border-color:#ffb8b8 !important;
  box-shadow:0 8px 18px rgba(155,0,0,.06) !important;
}

.it-btn-danger:hover,
a.it-btn-danger:hover,
button.it-btn-danger:hover,
.btn-delete:hover,
.proc-danger:hover {
  background:var(--it-maroon) !important;
  color:#fff !important;
  border-color:var(--it-maroon) !important;
  transform:translateY(-1px) !important;
}

/* Disabled buttons should be readable */
.it-btn[disabled],
button.it-btn:disabled,
.btn-compare[disabled],
.btn-disabled,
button:disabled {
  opacity:.55 !important;
  cursor:not-allowed !important;
  transform:none !important;
  box-shadow:none !important;
}

/* Top page action alignment */
.procurement-page-actions,
.proc-header-actions,
.page-actions,
.header-actions,
.actions-top {
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:10px !important;
  margin-bottom:14px !important;
}

/* Table action buttons aligned */
td .it-action-group,
.table-actions,
.action-buttons,
.procurement-actions {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}

/* Normalize old direct links/buttons inside procurement action cells */
td.action a,
td.action button,
td.actions a,
td.actions button,
td:last-child a[href*="procurement"],
td:last-child button {
  min-height:36px !important;
  border-radius:12px !important;
  padding:0 16px !important;
  font-weight:800 !important;
}

/* Submitted Quotation cards: force consistent bottom-aligned actions */
.submitted-quotes,
.quote-card-grid,
.vendor-quote-grid,
.proc-quote-grid,
.cards-row {
  align-items:stretch !important;
}

.submitted-quote-card,
.quote-card,
.vendor-quote-card,
.proc-quote-card {
  display:flex !important;
  flex-direction:column !important;
  min-height:250px !important;
  height:100% !important;
  padding:18px !important;
  box-sizing:border-box !important;
}

/* Push all quote-card actions to bottom */
.submitted-quote-card .quote-actions,
.quote-card .quote-actions,
.vendor-quote-card .quote-actions,
.proc-quote-card .quote-actions,
.submitted-quote-card .actions,
.quote-card .actions,
.vendor-quote-card .actions,
.proc-quote-card .actions {
  margin-top:auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:10px !important;
  width:100% !important;
  padding-top:14px !important;
}

/* If actions are plain direct children in card, align known buttons at bottom */
.submitted-quote-card > a[href*="edit"],
.submitted-quote-card > a[href*="delete"],
.submitted-quote-card > button,
.quote-card > a[href*="edit"],
.quote-card > a[href*="delete"],
.quote-card > button,
.vendor-quote-card > a[href*="edit"],
.vendor-quote-card > a[href*="delete"],
.vendor-quote-card > button {
  align-self:center !important;
}

/* Card action widths */
.submitted-quote-card .it-btn,
.quote-card .it-btn,
.vendor-quote-card .it-btn,
.submitted-quote-card .btn-edit,
.submitted-quote-card .btn-delete,
.quote-card .btn-edit,
.quote-card .btn-delete,
.vendor-quote-card .btn-edit,
.vendor-quote-card .btn-delete {
  min-width:96px !important;
}

/* Specific Compare/New buttons readability */
a[href*="compare"],
button[onclick*="compare"],
.btn-compare {
  background:linear-gradient(180deg, #b40000 0%, var(--it-maroon) 100%) !important;
  color:#fff !important;
  border-color:var(--it-maroon) !important;
  box-shadow:0 10px 22px rgba(155,0,0,.18) !important;
}

a[href*="compare"]:hover,
button[onclick*="compare"]:hover,
.btn-compare:hover {
  color:#fff !important;
  background:linear-gradient(180deg, #a60000 0%, var(--it-maroon-dark) 100%) !important;
}

a[href*="/procurement/new"],
a[href*="/procurement/request/new"],
a[href*="/procurement/requests/new"],
.btn-new {
  background:linear-gradient(180deg, #b40000 0%, var(--it-maroon) 100%) !important;
  color:#fff !important;
  border-color:var(--it-maroon) !important;
  box-shadow:0 10px 22px rgba(155,0,0,.18) !important;
  min-height:42px !important;
  padding:0 22px !important;
}

/* Give quotation cards better visual structure */
.submitted-quote-card .quote-vendor,
.quote-card .quote-vendor,
.vendor-quote-card .quote-vendor,
.submitted-quote-card h3,
.quote-card h3,
.vendor-quote-card h3 {
  min-height:48px !important;
}

.submitted-quote-card .quote-amount,
.quote-card .quote-amount,
.vendor-quote-card .quote-amount {
  margin-top:8px !important;
}

/* Mobile */
@media (max-width: 768px){
  .procurement-page-actions,
  .proc-header-actions,
  .page-actions,
  .header-actions {
    justify-content:stretch !important;
  }
  .procurement-page-actions .it-btn,
  .proc-header-actions .it-btn,
  .page-actions .it-btn {
    width:100% !important;
  }
  td .it-action-group,
  .table-actions,
  .action-buttons,
  .procurement-actions {
    flex-direction:column !important;
    align-items:stretch !important;
  }
}
