/* HisaabKitaab - Complete Styles */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

*{font-family:'Inter',sans-serif;box-sizing:border-box}
body{background:#f3f4f6;margin:0;padding:0;overflow-x:hidden}
.sidebar{transition:transform .3s ease,width .3s ease}
.sidebar-collapsed{transform:translateX(-100%)}
@media(min-width:1024px){.sidebar-collapsed{transform:none;width:4.5rem}}
.fade-in{animation:fadeIn .25s ease-out}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.card{background:#fff;border-radius:0.75rem;box-shadow:0 1px 3px rgba(0,0,0,0.08);border:1px solid #e5e7eb}
.btn-primary{background:#4F46E5;color:#fff;padding:0.5rem 1rem;border-radius:0.5rem;font-weight:500;border:none;cursor:pointer;transition:background .15s}
.btn-primary:hover{background:#4338CA}
.btn-primary:disabled{background:#9CA3AF;cursor:not-allowed}
.btn-secondary{background:#fff;color:#374151;padding:0.5rem 1rem;border-radius:0.5rem;font-weight:500;border:1px solid #D1D5DB;cursor:pointer;transition:all .15s}
.btn-secondary:hover{background:#F9FAFB;border-color:#9CA3AF}
.btn-danger{background:#EF4444;color:#fff;padding:0.5rem 1rem;border-radius:0.5rem;font-weight:500;border:none;cursor:pointer}
.btn-danger:hover{background:#DC2626}
.btn-success{background:#10B981;color:#fff;padding:0.5rem 1rem;border-radius:0.5rem;font-weight:500;border:none;cursor:pointer}
.btn-success:hover{background:#059669}
.input{width:100%;padding:0.5rem 0.75rem;border:1px solid #D1D5DB;border-radius:0.5rem;font-size:0.875rem;outline:none;transition:border .15s;background:#fff}
.input:focus{border-color:#4F46E5;box-shadow:0 0 0 3px rgba(79,70,229,0.1)}
select.input{appearance:auto}
.badge{display:inline-block;padding:0.125rem 0.5rem;border-radius:9999px;font-size:0.75rem;font-weight:500}
.badge-green{background:#D1FAE5;color:#065F46}
.badge-yellow{background:#FEF3C7;color:#92400E}
.badge-red{background:#FEE2E2;color:#991B1B}
.badge-blue{background:#DBEAFE;color:#1E40AF}
.badge-gray{background:#F3F4F6;color:#4B5563}
.badge-purple{background:#EDE9FE;color:#5B21B6}
table{width:100%;border-collapse:collapse}
th{text-align:left;padding:0.75rem;font-size:0.75rem;font-weight:600;color:#6B7280;text-transform:uppercase;letter-spacing:0.05em;border-bottom:2px solid #E5E7EB}
td{padding:0.75rem;font-size:0.875rem;border-bottom:1px solid #F3F4F6;color:#374151}
tr:hover td{background:#F9FAFB}
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.4);z-index:50;display:flex;align-items:center;justify-content:center;padding:1rem}
.modal{background:#fff;border-radius:1rem;width:100%;max-width:42rem;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px rgba(0,0,0,0.15)}
.nav-item{display:flex;align-items:center;gap:0.75rem;padding:0.65rem 1rem;border-radius:0.5rem;cursor:pointer;color:#6B7280;font-size:0.875rem;font-weight:500;transition:all .15s;white-space:nowrap}
.nav-item:hover{background:#EEF2FF;color:#4F46E5}
.nav-item.active{background:#EEF2FF;color:#4F46E5;font-weight:600}
.nav-item i{width:1.25rem;text-align:center;font-size:1rem}
.stat-card{position:relative;overflow:hidden}
.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.stat-card.blue::before{background:#4F46E5}
.stat-card.green::before{background:#10B981}
.stat-card.orange::before{background:#F59E0B}
.stat-card.red::before{background:#EF4444}
.toast{position:fixed;bottom:1.5rem;right:1.5rem;padding:0.75rem 1.25rem;border-radius:0.5rem;color:#fff;font-size:0.875rem;z-index:100;transform:translateY(100px);opacity:0;transition:all .3s ease}
.toast.show{transform:none;opacity:1}
.toast.success{background:#10B981}
.toast.error{background:#EF4444}
.loader{display:inline-block;width:1.25rem;height:1.25rem;border:2px solid #E5E7EB;border-top-color:#4F46E5;border-radius:50%;animation:spin .6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* Quantity input in invoice */
.qty-input-group{display:flex;align-items:center;gap:0;border:1px solid #D1D5DB;border-radius:0.5rem;overflow:hidden;background:#fff}
.qty-input-group button{padding:0.35rem 0.5rem;background:#f3f4f6;border:none;cursor:pointer;color:#4B5563;font-size:0.85rem;transition:background .15s;display:flex;align-items:center;justify-content:center;min-width:28px}
.qty-input-group button:hover{background:#E5E7EB}
.qty-input-group input{width:48px;text-align:center;border:none;outline:none;padding:0.35rem 0;font-size:0.85rem;-moz-appearance:textfield}
.qty-input-group input::-webkit-outer-spin-button,
.qty-input-group input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* Pricing cards */
.pricing-card{border:2px solid #E5E7EB;border-radius:1rem;padding:2rem;text-align:center;transition:all .3s;position:relative}
.pricing-card:hover{border-color:#4F46E5;box-shadow:0 10px 40px rgba(79,70,229,0.1)}
.pricing-card.popular{border-color:#4F46E5;box-shadow:0 10px 40px rgba(79,70,229,0.15)}
.pricing-card.popular::before{content:'BEST VALUE';position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:#4F46E5;color:#fff;padding:2px 16px;border-radius:99px;font-size:0.65rem;font-weight:700;letter-spacing:0.1em}
.pricing-card.current{border-color:#10B981}
.pricing-card.current::after{content:'CURRENT PLAN';position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:#10B981;color:#fff;padding:2px 16px;border-radius:99px;font-size:0.65rem;font-weight:700;letter-spacing:0.1em}

/* Print styles */
.no-print{}
.print-only{display:none}

/* A4 Print */
@media print{
  .no-print{display:none!important}
  .print-only{display:block!important}
  body{background:#fff!important;margin:0;padding:0}
  .modal-overlay{position:static;background:none;padding:0}
  .modal{box-shadow:none;border-radius:0;max-height:none;max-width:none}
}

/* Thermal print styles */
.thermal-print{width:80mm;margin:0 auto;padding:4mm;font-family:'Courier New',monospace;font-size:11px;line-height:1.4;color:#000}
.thermal-print .thermal-header{text-align:center;border-bottom:1px dashed #000;padding-bottom:4mm;margin-bottom:3mm}
.thermal-print .thermal-header h2{font-size:14px;margin:0 0 2px}
.thermal-print .thermal-header p{margin:1px 0;font-size:10px}
.thermal-print .thermal-items{border-bottom:1px dashed #000;padding-bottom:3mm;margin-bottom:3mm}
.thermal-print .thermal-item{display:flex;justify-content:space-between;padding:1px 0;font-size:11px}
.thermal-print .thermal-item-detail{font-size:9px;color:#555;padding-left:4mm}
.thermal-print .thermal-totals{text-align:right}
.thermal-print .thermal-totals .total-row{display:flex;justify-content:space-between;padding:1px 0}
.thermal-print .thermal-totals .grand-total{font-size:14px;font-weight:bold;border-top:1px dashed #000;padding-top:2mm;margin-top:2mm}
.thermal-print .thermal-footer{text-align:center;border-top:1px dashed #000;padding-top:3mm;margin-top:3mm;font-size:10px}
.thermal-print .thermal-qr{text-align:center;margin:3mm 0}

/* Search highlight */
.search-highlight{background:#FEF3C7;padding:0 2px;border-radius:2px}

/* Auth page */
.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:1rem}
.auth-card{background:#fff;border-radius:1.5rem;padding:2.5rem;width:100%;max-width:400px;box-shadow:0 25px 50px rgba(0,0,0,0.2)}

::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:#f1f1f1}
::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}

/* POS styles */
.pos-pay-btn{border-radius:0.5rem;font-weight:500;cursor:pointer;transition:all .15s;text-align:center;border:1px solid #D1D5DB}
#pos-product-grid::-webkit-scrollbar{width:4px}
.pos-product-card{border:1.5px solid #E5E7EB;transition:border-color .15s,background .15s}
.pos-product-card:hover{border-color:#4F46E5;background:#EEF2FF}

/* Scanner overlay */
#scanner-video-container video{object-fit:cover}
.scanner-corner{position:absolute;width:20px;height:20px}

/* Profile avatar */
.profile-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#fff;background:#4F46E5;flex-shrink:0}

/* Payment method radio option */
.payment-method-option { display: block; cursor: pointer; }
.payment-method-option input[type="radio"] { position: absolute; opacity: 0; pointer-events: none; }
.payment-method-option div { border: 2px solid #E5E7EB; border-radius: 8px; padding: 8px 4px; text-align: center; transition: all 0.15s; }
.payment-method-option:has(input:checked) div { border-color: #4F46E5; background: #EEF2FF; }

/* UPC barcode badge */
.upc-badge { font-family: 'Courier New', monospace; font-size: 11px; background: #FFF7ED; color: #EA580C; border: 1px solid #FED7AA; border-radius: 4px; padding: 1px 6px; display: inline-flex; align-items: center; gap: 4px; }


