:root{--brand-green:#0a7337;--brand-green-hover:#085e2b;--brand-yellow:#f59e0b;--brand-blue:#3b82f6;--brand-lightblue:#0ea5e9;--brand-red:#ef4444;--bg-color:#f8fafc;--surface:#fff;--text-main:#0f172a;--text-muted:#64748b;--border:#e2e8f0}*{box-sizing:border-box;margin:0;padding:0}* html{overscroll-behavior:none}* body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;overscroll-behavior:none;-webkit-overflow-scrolling:touch;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}* .flex{display:flex}* .flex-col{flex-direction:column;display:flex}* .items-center{align-items:center}* .justify-center{justify-content:center}* .justify-between{justify-content:space-between}* .gap-2{gap:8px}* .gap-3{gap:12px}* .gap-4{gap:16px}* .p-4{padding:16px}* .p-6{padding:24px}* .mt-2{margin-top:8px}* .mt-4{margin-top:16px}* .mb-2{margin-bottom:8px}* .mb-4{margin-bottom:16px}* .text-center{text-align:center}* .font-bold{font-weight:700}* .w-full{width:100%}* .text-white{color:#fff}* input,* select,* textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text-main);border-radius:8px;padding:10px 14px;font-size:14px;transition:all .2s}* input:focus,* select:focus,* textarea:focus{border-color:var(--brand-green);outline:none;box-shadow:0 0 0 3px #0a73371a}* label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:12px;font-weight:600;display:block}* .btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 1px 2px #0000000d}* .btn:active{transform:scale(.98)}* .btn-primary{background-color:var(--brand-green);color:#fff}* .btn-primary:hover{background-color:var(--brand-green-hover);box-shadow:0 4px 12px #0a733733}* .btn-outline{border-color:var(--border);color:var(--text-main);background-color:#0000}* .btn-outline:hover{background-color:#f1f5f9}* .card{background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d}* .mobile-container{background:#fff;max-width:480px;min-height:100vh;margin:0 auto;position:relative;box-shadow:0 0 40px #0000000d}* .alert-info{color:#0f766e;background-color:#f0fdfa;border:1px solid #ccfbf1;border-radius:8px;padding:14px 16px;font-size:14px;font-weight:500}* .metric-card{color:#fff;border-radius:12px;flex:1;padding:24px;transition:transform .2s;position:relative;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a}* .metric-card:hover{transform:translateY(-2px)}* .metric-yellow{background:linear-gradient(135deg,#f59e0b,#d97706)}* .metric-lightblue{background:linear-gradient(135deg,#0ea5e9,#0284c7)}* .metric-blue{background:linear-gradient(135deg,#3b82f6,#2563eb)}* .metric-green{background:linear-gradient(135deg,#10b981,#059669)}* .data-table-container{border:1px solid var(--border);border-radius:8px;overflow-x:auto}* .data-table{border-collapse:collapse;background:#fff;width:100%;font-size:14px}* .data-table th{color:var(--text-muted);text-align:left;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);background-color:#f8fafc;padding:14px 16px;font-size:12px;font-weight:600}* .data-table td{border-bottom:1px solid var(--border);vertical-align:middle;color:var(--text-main);padding:16px}* .data-table tr:last-child td{border-bottom:none}* .data-table tbody tr:hover{background-color:#f1f5f9}* .pagination{align-items:center;gap:8px;display:flex}* .pagination-btn{border:1px solid var(--border);cursor:pointer;color:var(--text-main);background:#fff;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500}* .pagination-btn:hover:not(:disabled){background:#f1f5f9}* .pagination-btn:disabled{opacity:.5;cursor:not-allowed}* #printable-thermal-label{display:none}@media print{* body *{visibility:hidden}* #printable-thermal-label,* #printable-thermal-label *{visibility:visible}* #printable-thermal-label{width:100mm;margin:0;padding:0;display:block;position:absolute;top:0;left:0}}
