*{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}
html{line-height:1.5;-webkit-text-size-adjust:100%}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";line-height:1.5}
button,input,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}
button,select{text-transform:none}
button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}
table{text-indent:0;border-color:inherit;border-collapse:collapse}
a{color:inherit;text-decoration:inherit}

.min-h-screen{min-height:100vh}
.w-full{width:100%}
.max-w-6xl{max-width:72rem}
.mx-auto{margin-left:auto;margin-right:auto}
.px-4{padding-left:1rem;padding-right:1rem}
.py-3{padding-top:.75rem;padding-bottom:.75rem}
.py-4{padding-top:1rem;padding-bottom:1rem}
.py-6{padding-top:1.5rem;padding-bottom:1.5rem}
.p-2{padding:.5rem}
.p-3{padding:.75rem}
.p-4{padding:1rem}
.p-6{padding:1.5rem}
.mt-2{margin-top:.5rem}
.mt-4{margin-top:1rem}
.mt-6{margin-top:1.5rem}
.mb-2{margin-bottom:.5rem}
.mb-4{margin-bottom:1rem}
.mb-6{margin-bottom:1.5rem}
.gap-2{gap:.5rem}
.gap-3{gap:.75rem}
.gap-4{gap:1rem}
.gap-1{gap:.25rem}
.ml-3{margin-left:.75rem}
.mr-2{margin-right:.5rem}
.py-2{padding-top:.5rem;padding-bottom:.5rem}
.px-3{padding-left:.75rem;padding-right:.75rem}

.flex{display:flex}
.inline-flex{display:inline-flex}
.grid{display:grid}
.hidden{display:none}
.flex-wrap{flex-wrap:wrap}
.flex-nowrap{flex-wrap:nowrap}
.items-center{align-items:center}
.justify-between{justify-content:space-between}
.justify-center{justify-content:center}
.text-left{text-align:left}
.text-center{text-align:center}
.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}
.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.w-1\\/3{width:33.333333%}
.w-2\\/3{width:66.666667%}
@media (min-width:768px){.md\\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\\:w-1\\/3{width:33.333333%}.md\\:w-2\\/3{width:66.666667%}.md\\:px-6{padding-left:1.5rem;padding-right:1.5rem}}

.text-xs{font-size:.75rem;line-height:1rem}
.text-sm{font-size:.875rem;line-height:1.25rem}
.text-base{font-size:1rem;line-height:1.5rem}
.text-lg{font-size:1.125rem;line-height:1.75rem}
.text-xl{font-size:1.25rem;line-height:1.75rem}
.font-semibold{font-weight:600}
.font-bold{font-weight:700}
.uppercase{text-transform:uppercase}
.tracking-wide{letter-spacing:.025em}

.rounded{border-radius:.25rem}
.rounded-md{border-radius:.375rem}
.rounded-lg{border-radius:.5rem}
.shadow{box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}
.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}

.border{border-width:1px}
.border-t{border-top-width:1px}
.border-gray-200{border-color:#e5e7eb}
.border-gray-300{border-color:#d1d5db}

.bg-white{background-color:#fff}
.bg-gray-50{background-color:#f9fafb}
.bg-gray-100{background-color:#f3f4f6}
.bg-blue-600{background-color:#2563eb}
.bg-blue-700{background-color:#1d4ed8}
.bg-emerald-600{background-color:#059669}
.bg-emerald-700{background-color:#047857}
.bg-red-50{background-color:#fef2f2}

.text-gray-600{color:#4b5563}
.text-gray-700{color:#374151}
.text-gray-900{color:#111827}
.text-white{color:#fff}
.text-red-700{color:#b91c1c}
.text-blue-700{color:#1d4ed8}

.hover\\:bg-blue-700:hover{background-color:#1d4ed8}
.hover\\:bg-emerald-700:hover{background-color:#047857}
.hover\\:bg-gray-100:hover{background-color:#f3f4f6}
.hover\\:underline:hover{text-decoration:underline}

.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:.375rem;padding:.375rem .5rem;font-weight:600}
.btn-primary{background-color:#2563eb;color:#fff}
.btn-primary:hover{background-color:#1d4ed8}
.btn-secondary{background-color:#f3f4f6;color:#111827}
.btn-secondary:hover{background-color:#e5e7eb}
.btn-success{background-color:#059669;color:#fff}
.btn-success:hover{background-color:#047857}

.input{width:100%;border-width:1px;border-color:#d1d5db;border-radius:.375rem;padding:.5rem .75rem;background-color:#fff}
.input-sm{border-width:1px;border-color:#d1d5db;border-radius:.375rem;padding:.25rem .5rem;background-color:#fff;font-size:.75rem;line-height:1rem}
.btn-sm{padding:.25rem .5rem;font-size:.75rem;line-height:1rem}
.label{display:block;font-size:.875rem;line-height:1.25rem;color:#374151;margin-bottom:.25rem}
.card{background-color:#fff;border-width:1px;border-color:#e5e7eb;border-radius:.5rem;box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}
.card-body{padding:1rem}

.table{width:100%;border-width:1px;border-color:#e5e7eb}
.table th,.table td{border-width:1px;border-color:#e5e7eb;padding:.5rem;vertical-align:middle;text-align:center}
.table th{background-color:#f3f4f6;font-weight:700}

.overflow-x-auto{overflow-x:auto}
.whitespace-nowrap{white-space:nowrap}

.no-print{}
.print-only{display:none}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:50}
.modal-panel{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:1rem}
.modal-card{background:#fff;border-radius:.5rem;border:1px solid #e5e7eb;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);width:95%;max-width:56rem}
.modal-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid #e5e7eb}
.modal-body{padding:0}
.modal-iframe{width:100%;height:80vh;border:0;display:block}

@page{size:landscape;margin:12mm}
@media print{
  .no-print{display:none !important}
  .print-only{display:block !important}
  body{background:#fff;color:#000}
  .min-h-screen{min-height:auto}
  .shadow,.shadow-sm{box-shadow:none}
  .card{border-color:#000}
  .overflow-x-auto{overflow:visible}
  .table{width:100%}
  .table,.table th,.table td{border-color:#000}
  .table th{background-color:#fff}
}
