/* HARISCON BRICK — shared styles that don't belong as inline Tailwind
   utilities. Loaded once via includes/head.php on every page. */

.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
  font-size: 24px;
  line-height: 1;
  user-select: none;
}

body {
  -webkit-font-smoothing: antialiased;
}

/* Status "stamp" — used for transaksi/status columns (AKTIF, LUNAS,
   BELUM LUNAS, etc). Dashed border + slight rotation reads as a stamp
   rather than a generic pill. */
.stamp {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.625rem;
  border: 1.5px dashed currentColor;
  border-radius: 0.375rem;
  transform: rotate(-2deg);
  font-family: 'Inter', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}

.stamp-approved { color: #15803D; background: rgba(21, 128, 61, 0.08); }
.stamp-pending  { color: #B45309; background: rgba(180, 83, 9, 0.08); }
.stamp-rejected { color: #B91C1C; background: rgba(185, 28, 28, 0.08); }

/* Keyboard focus visibility */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid #003366;
  outline-offset: 2px;
}

/* Modal open/close, toggled by assets/js/app.js */
[data-modal] { display: none; }
[data-modal].is-open { display: flex; }

/* Combobox dropdown, toggled by assets/js/combobox.js */
[data-combobox-list] { display: none; }
[data-combobox-list].is-open { display: block; }

/* Report/print pages (laporan/*.php, cetak_*.php): full app chrome shows
   on screen, but only the report content itself should print. */
@media print {
  .no-print,
  #sidebar-drawer,
  #sidebar-backdrop,
  header.sticky,
  nav.md\:hidden {
    display: none !important;
  }
  .print-area {
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Browsers strip background colors on print by default — invoice
     letterhead/badges rely on brand colors printing, so force them on. */
  .print-area, .print-area * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  * { transition-duration: 0.001ms !important; animation-duration: 0.001ms !important; }
}
