:root{--primary:#2563eb;--primary-hover:#1d4ed8;--success:#059669;--bg-app:#f8fafc;--text-main:#1e293b;--text-muted:#64748b;--border:#e2e8f0;--card-bg:#fff}body{background-color:var(--bg-app);color:var(--text-main);margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5}.app-container{max-width:900px;margin:3rem auto;padding:0 1rem}h1{color:var(--text-main);text-align:center;margin-bottom:2rem;font-size:1.875rem;font-weight:700}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 4px 6px -1px #0000001a}table{border-collapse:collapse;width:100%;margin-top:1.5rem;font-size:.95rem}th{background:var(--bg-app);text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border);padding:.75rem 1rem;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--border);padding:1rem}tr.no-print{color:var(--text-muted)}tr:hover{background-color:#f1f5f9}tr:last-child{font-weight:700}.total-row{font-size:1.1rem;font-weight:700;background-color:#f0f9ff!important}button{cursor:pointer;border:1px solid var(--border);background:#fff;border-radius:6px;justify-content:center;align-items:center;padding:.625rem 1.25rem;font-weight:500;transition:all .2s;display:inline-flex}button.primary{background:var(--primary);color:#fff;border:none}button.primary:hover{background:var(--primary-hover)}button:active{transform:translateY(1px)}input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--primary);cursor:pointer}.controls{justify-content:space-around;align-items:center;margin-top:3rem;display:flex}.controls button{min-width:10rem;height:3rem}@media print{body{color:#000;background:#fff;margin:0;padding:0}.card{box-shadow:none;background-color:#0000;border:none;margin:0;padding:0}.app-container{max-width:100%!important;margin:0!important;padding:.2in!important}table{border-collapse:collapse;width:100%;font-size:8pt;line-height:1.1}th,td{border:.5pt solid #ccc;padding:2px 4px!important}th{text-transform:uppercase;-webkit-print-color-adjust:exact;font-size:7pt;font-weight:700;background-color:#f0f0f0!important}tr{page-break-inside:avoid}.no-print,button,.upload-instructions,h1{display:none!important}.pdf-header{border-bottom:1pt solid #000;margin-bottom:10px;display:block}}
