:root{--primary:#4f46e5;--primary-hover:#4338ca;--primary-light:#eef2ff;--danger:#ef4444;--danger-hover:#dc2626;--danger-light:#fee2e2;--success:#10b981;--success-hover:#059669;--success-light:#d1fae5;--warning:#f59e0b;--warning-light:#fef3c7;--bg-color:#f3f4f6;--surface:#fff;--surface-muted:#f9fafb;--text-main:#111827;--text-muted:#6b7280;--border:#e5e7eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.875rem}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5}.btn{border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-main);background-color:#e5e7eb;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .15s ease-in-out;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(.96)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--danger-hover)}.btn-success{background-color:var(--success);color:#fff}.btn-success:hover:not(:disabled){background-color:var(--success-hover)}.btn-outline{background-color:var(--surface);border-color:var(--border);color:var(--text-main)}.btn-sm{padding:.35rem .75rem;font-size:.825rem}.card{background-color:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border);padding:1.5rem}.form-group{flex-direction:column;gap:.35rem;display:flex}.form-label{color:var(--text-main);font-size:.875rem;font-weight:700}.form-input,.form-select,.form-textarea{border-radius:var(--radius-sm);border:1px solid var(--border);background-color:var(--surface);width:100%;color:var(--text-main);padding:.65rem .85rem;font-family:inherit;font-size:.95rem}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:2px solid var(--primary);border-color:#0000}.table-container{background-color:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border);padding:1rem;overflow-x:auto}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th{border-bottom:2px solid var(--border);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);padding:.75rem 1rem;font-size:.825rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.9rem 1rem}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background-color:#11182799;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;padding:2rem;overflow-y:auto}.pin-display{letter-spacing:.65rem;background-color:var(--bg-color);border-radius:var(--radius-md);height:76px;color:var(--primary);border:2px solid var(--border);justify-content:center;align-items:center;margin:1.25rem 0 2rem;font-size:2.5rem;font-weight:800;display:flex}.numpad{grid-template-columns:repeat(3,1fr);gap:.85rem;display:grid}.numpad-btn{background-color:var(--bg-color);border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;color:var(--text-main);padding:1.25rem;font-size:1.6rem;font-weight:700;transition:all .1s}.numpad-btn:hover{background-color:#e5e7eb;border-color:#d1d5db}.numpad-btn:active{transform:scale(.95)}.print-only{display:none}@media print{.no-print{display:none!important}.print-only{display:block!important}body{background:#fff}.card,.table-container{box-shadow:none!important;border:1px solid #ccc!important}}
