/* ZKTA — Minimal Clean styles (Tailwind CDN + เสริมเล็กน้อย) */
html { -webkit-text-size-adjust: 100%; }
body { font-family: 'Prompt', sans-serif; }

/* Sidebar collapse (desktop) */
@media (min-width: 1024px) {
  .sb-collapsed .sidebar { width: 4.5rem; }
  .sb-collapsed .sidebar .sb-text { display: none; }
  .sb-collapsed .main-wrap { padding-left: 4.5rem; }
  .sb-collapsed .sidebar nav a { justify-content: center; }
}
.sidebar.open { transform: translateX(0); }

/* Components */
.card { background: #fff; border: 1px solid rgb(226 232 240); border-radius: 1rem; }
.dark .card { background: rgb(15 23 42); border-color: rgb(30 41 59); }
.input { width: 100%; border: 1px solid rgb(203 213 225); border-radius: .6rem; padding: .5rem .75rem; background: #fff; font-size: .875rem; outline: none; }
.input:focus { border-color: var(--brand, #10b981); box-shadow: 0 0 0 3px rgb(16 185 129 / .15); }
.dark .input { background: rgb(2 6 23); border-color: rgb(51 65 85); color: rgb(226 232 240); }
.label { display:block; font-size: .8rem; color: rgb(100 116 139); margin-bottom: .25rem; }
.btn { display:inline-flex; align-items:center; gap:.4rem; padding:.5rem .9rem; border-radius:.6rem; font-size:.875rem; border:1px solid transparent; cursor:pointer; white-space:nowrap; transition: background .15s; }
.btn-sm { padding:.3rem .65rem; font-size:.8rem; }
.btn-ghost { border-color: rgb(226 232 240); background:#fff; color: rgb(51 65 85); }
.btn-ghost:hover { background: rgb(248 250 252); }
.dark .btn-ghost { background: rgb(15 23 42); border-color: rgb(51 65 85); color: rgb(203 213 225); }
.dark .btn-ghost:hover { background: rgb(30 41 59); }
.btn-danger { background: #fee2e2; color: #b91c1c; }
.btn-danger:hover { background: #fecaca; }
.dark .btn-danger { background: rgb(127 29 29 / .4); color: #fca5a5; }
.tbl { width:100%; font-size:.85rem; border-collapse: collapse; }
.tbl thead th { background: rgb(248 250 252); color: rgb(100 116 139); border-bottom: 1px solid rgb(226 232 240); }
.dark .tbl thead th { background: rgb(2 6 23 / .6); color: rgb(148 163 184); border-color: rgb(30 41 59); }
.tbl td { padding: .55rem .75rem; border-bottom: 1px solid rgb(241 245 249); vertical-align: middle; }
.dark .tbl td { border-color: rgb(30 41 59); }
.tbl tbody tr:hover { background: rgb(248 250 252 / .7); }
.dark .tbl tbody tr:hover { background: rgb(30 41 59 / .4); }
.col-hidden { display: none !important; }
.dot { width:.55rem; height:.55rem; border-radius:999px; display:inline-block; }

/* Print-friendly */
.print-only { display: none; }
@media print {
  @page { size: A4 landscape; margin: 10mm; }
  body { background: #fff !important; color: #000 !important; font-size: 11px; }
  .no-print, aside, header, footer, .flash { display: none !important; }
  .print-only { display: block !important; }
  .main-wrap { padding: 0 !important; }
  main { padding: 0 !important; max-width: none !important; }
  .card { border: none !important; box-shadow: none !important; }
  .tbl td, .tbl th { padding: 3px 5px !important; border: 1px solid #999 !important; color:#000 !important; background:#fff !important; }
  .overflow-x-auto { overflow: visible !important; }
  a { color: #000 !important; text-decoration: none !important; }
  .page-break { page-break-after: always; }
  .dark * { color: #000 !important; }
}
