@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{--font-sans:"Plus Jakarta Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--bg-app:#0c0a09;--bg-card:#1c1917;--bg-card-hover:#262220;--bg-input:#292524;--border-color:#3e3835;--border-glow:#f9731626;--text-primary:#fafaf9;--text-secondary:#a8a29e;--text-muted:#78716c;--color-primary:#f97316;--color-primary-rgb:249, 115, 22;--color-success:#10b981;--color-success-rgb:16, 185, 129;--color-warning:#eab308;--color-warning-rgb:234, 179, 8;--color-danger:#f43f5e;--color-danger-rgb:244, 63, 94;--color-info:#06b6d4;--color-info-rgb:6, 182, 212;--radius-lg:16px;--radius-md:10px;--radius-sm:6px;--transition-smooth:all .25s cubic-bezier(.4, 0, .2, 1);--shadow-premium:0 10px 30px -10px #000000b3}[data-theme=light]{--bg-app:#f5f5f4;--bg-card:#fff;--bg-card-hover:#fafaf9;--bg-input:#f5f5f4;--border-color:#e7e5e4;--text-primary:#1c1917;--text-secondary:#57534e;--text-muted:#a8a29e;--shadow-premium:0 10px 30px -10px #1c191714}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.app-container{background-color:var(--bg-app);width:100vw;height:100vh;display:flex;position:relative}.sidebar{background-color:var(--bg-card);border-right:1px solid var(--border-color);width:260px;height:100%;transition:var(--transition-smooth);flex-direction:column;flex-shrink:0;justify-content:space-between;padding:24px 16px;display:flex}.brand-section{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:0 12px 24px;display:flex}.brand-logo{background:linear-gradient(135deg, var(--color-primary), #d97706);border-radius:var(--radius-md);color:#fff;justify-content:center;align-items:center;width:38px;height:38px;font-weight:800;display:flex;box-shadow:0 0 15px #f9731666}.brand-name{letter-spacing:-.5px;background:linear-gradient(to right, #fff, var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.25rem;font-weight:800}.nav-links{flex-direction:column;flex-grow:1;gap:6px;margin-top:24px;list-style:none;display:flex}.nav-item{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth);align-items:center;gap:12px;padding:12px 14px;font-weight:500;text-decoration:none;display:flex}.nav-item:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.nav-item.active{background-color:rgba(var(--color-primary-rgb), .15);border-left:3px solid var(--color-primary);color:var(--color-primary);font-weight:600}.nav-icon{width:20px;height:20px}.user-profile{border-top:1px solid var(--border-color);align-items:center;gap:12px;margin-top:auto;padding-top:16px;display:flex}.user-avatar{background-color:var(--bg-input);border:2px solid var(--color-primary);width:40px;height:40px;color:var(--color-primary);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.user-info{flex-direction:column;display:flex;overflow:hidden}.user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.user-role{color:var(--text-muted);font-size:.75rem}.content-wrapper{flex-direction:column;flex-grow:1;height:100%;padding:24px;display:flex;position:relative;overflow-y:auto}.screen-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.screen-title{letter-spacing:-.5px;color:var(--text-primary);font-size:1.75rem;font-weight:800}.screen-subtitle{color:var(--text-secondary);font-size:.875rem}.card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);padding:24px;position:relative;overflow:hidden}.card:before{content:"";background:radial-gradient(circle at 10% 10%, var(--border-glow) 0%, transparent 40%);pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.form-group{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.form-label{color:var(--text-secondary);font-size:.875rem;font-weight:600}.form-input{background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-family:var(--font-sans);transition:var(--transition-smooth);outline:none;padding:12px 16px;font-size:.95rem}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .2)}.btn{font-family:var(--font-sans);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-smooth);-webkit-user-select:none;user-select:none;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:.95rem;font-weight:600;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:0 4px 15px rgba(var(--color-primary-rgb), .3)}.btn-primary:hover{box-shadow:0 4px 20px rgba(var(--color-primary-rgb), .5);background-color:#ea580c}.btn-secondary{background-color:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--border-color)}.btn-success{background-color:var(--color-success);color:#fff;box-shadow:0 4px 15px rgba(var(--color-success-rgb), .3)}.btn-success:hover{background-color:#059669}.btn-danger{background-color:var(--color-danger);color:#fff;box-shadow:0 4px 15px rgba(var(--color-danger-rgb), .3)}.btn-danger:hover{background-color:#e11d48}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:9999px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{background-color:rgba(var(--color-success-rgb), .15);color:var(--color-success);border:1px solid rgba(var(--color-success-rgb), .3)}.badge-warning{background-color:rgba(var(--color-warning-rgb), .15);color:var(--color-warning);border:1px solid rgba(var(--color-warning-rgb), .3)}.badge-danger{background-color:rgba(var(--color-danger-rgb), .15);color:var(--color-danger);border:1px solid rgba(var(--color-danger-rgb), .3)}.badge-info{background-color:rgba(var(--color-info-rgb), .15);color:var(--color-info);border:1px solid rgba(var(--color-info-rgb), .3)}.table-container{border-radius:var(--radius-md);border:1px solid var(--border-color);width:100%;overflow-x:auto}.pos-table{border-collapse:collapse;text-align:left;width:100%;font-size:.925rem}.pos-table th{background-color:var(--bg-card);color:var(--text-secondary);border-bottom:1px solid var(--border-color);z-index:10;padding:16px;font-weight:600;position:sticky;top:0}.pos-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);transition:var(--transition-smooth);background-color:#1c191766;padding:16px}.pos-table tr:hover td{background-color:var(--bg-card-hover)}.pin-pad-container{background-color:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);max-width:360px;box-shadow:var(--shadow-premium);flex-direction:column;gap:20px;margin:auto;padding:30px;display:flex}.pin-display{background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);letter-spacing:8px;width:100%;height:60px;color:var(--color-primary);justify-content:center;align-items:center;font-size:1.75rem;font-weight:700;display:flex}.pin-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.pin-btn{background-color:var(--bg-input);border:1px solid var(--border-color);height:70px;color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:600;display:flex}.pin-btn:hover{background-color:var(--border-color);border-color:var(--color-primary)}.pin-btn:active{transform:scale(.92)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.content-wrapper.billing-wrapper{height:100%;padding:16px 24px;overflow:hidden}.billing-layout{grid-template-columns:1fr 420px;gap:20px;height:100%;display:grid;overflow:hidden}.catalog-panel{flex-direction:column;height:100%;display:flex;overflow:hidden}.cart-panel{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;height:100%;display:flex;overflow:hidden}.catalog-search-bar{flex-shrink:0;grid-template-columns:1fr 180px;gap:12px;margin-bottom:16px;display:grid}.category-filter{-ms-overflow-style:none;scrollbar-width:none;flex-shrink:0;gap:8px;margin-bottom:16px;padding-bottom:8px;display:flex;overflow-x:auto}.category-filter::-webkit-scrollbar{display:none}.content-wrapper.inventory-wrapper{flex-direction:column;height:100%;padding:16px 24px;display:flex;overflow:hidden}.inventory-table-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);flex-direction:column;flex-grow:1;margin-bottom:16px;display:flex;overflow:hidden}.inventory-table-container{flex-grow:1;width:100%;overflow-y:auto}.category-tab{background-color:var(--bg-card);border:1px solid var(--border-color);white-space:nowrap;cursor:pointer;color:var(--text-secondary);transition:var(--transition-smooth);border-radius:9999px;padding:8px 16px;font-size:.85rem}.category-tab.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.product-grid{flex-grow:1;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;padding-bottom:20px;display:grid;overflow-y:auto}.product-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-smooth);-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:space-between;padding:16px;display:flex}.product-card:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 15px #0006}.product-card.low-stock{border-color:var(--color-warning)}.product-card.out-of-stock{border-color:var(--color-danger);opacity:.6;cursor:not-allowed}.cart-items{flex-direction:column;flex-grow:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.cart-item{background-color:var(--bg-input);border-radius:var(--radius-md);border:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:12px;display:flex}.cart-totals{background-color:var(--bg-input);border-top:1px solid var(--border-color);flex-direction:column;gap:10px;padding:20px;display:flex}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:24px;display:grid}.kpi-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-premium);align-items:center;gap:16px;padding:20px;display:flex}.kpi-icon-wrapper{border-radius:var(--radius-md);justify-content:center;align-items:center;width:50px;height:50px;display:flex}.kpi-details{flex-direction:column;display:flex}.kpi-title{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px;font-size:.8rem;font-weight:600}.kpi-value{color:var(--text-primary);font-size:1.5rem;font-weight:800}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;background-color:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:550px;box-shadow:var(--shadow-premium);max-height:90vh;padding:28px;overflow-y:auto}.toast-container{z-index:1000;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background-color:var(--bg-card);border:1px solid var(--border-color);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);color:var(--text-primary);box-shadow:var(--shadow-premium);align-items:center;gap:12px;padding:14px 20px;font-size:.9rem;font-weight:500;animation:.3s slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@media print{body{color:#000!important;background-color:#fff!important;font-family:Courier New,Courier,monospace!important}.sidebar,.nav-links,.nav-item,.brand-section,.screen-header,.btn,.toast-container,.modal-overlay,.catalog-panel,.cart-panel,.content-wrapper>:not(.printable-invoice){display:none!important}.content-wrapper{height:auto!important;padding:0!important;overflow:visible!important}.printable-invoice{width:80mm!important;margin:0 auto!important;padding:2mm!important;display:block!important}.printable-invoice.a4-invoice{width:210mm!important;font-family:var(--font-sans)!important;padding:10mm!important}.printable-invoice table{border-collapse:collapse!important;width:100%!important}.printable-invoice th,.printable-invoice td{color:#000!important;border-bottom:1px dashed #000!important;padding:4px!important;font-size:11px!important}}.printable-invoice{display:none}.dashboard-charts-grid,.reports-charts-grid{grid-template-columns:2fr 1fr;gap:24px;margin-bottom:24px;display:grid}.dashboard-bottom-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.form-grid-2col{grid-template-columns:1fr 1fr;gap:16px;display:grid}.ledger-overview-grid{grid-template-columns:1fr 2fr;gap:24px;margin-bottom:24px;display:grid}.ledger-split-layout{grid-template-columns:1fr 1.2fr;gap:24px;display:grid}.purchases-split-layout{grid-template-columns:1.5fr 1fr;gap:24px;display:grid}.settings-split-layout{grid-template-columns:1.2fr 1fr;gap:24px;display:grid}.mobile-only{display:none!important}.mobile-header{background-color:var(--bg-card);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:none}.hamburger-btn{color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.hamburger-btn:hover{color:var(--color-primary)}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;background-color:#0009;width:100vw;height:100vh;position:fixed;top:0;left:0}@media (width<=1024px){.sidebar{align-items:center;width:72px;padding:24px 8px}.brand-info,.nav-text,.user-info,.logout-text{display:none!important}.brand-section{justify-content:center;margin-bottom:24px}.nav-links{align-items:center}.nav-item{border-radius:var(--radius-md);justify-content:center;padding:12px}.user-profile{background:0 0;border:none;justify-content:center;padding:0}.logout-btn{justify-content:center!important;padding:12px!important}}@media (width<=768px){.mobile-header{display:flex}.sidebar{z-index:100;align-items:stretch;width:260px;height:100vh;padding:24px 16px;position:fixed;top:0;left:-260px;box-shadow:10px 0 30px #00000080}.sidebar.open{left:0}.brand-info,.nav-text,.user-info,.logout-text{display:block!important}.brand-section{justify-content:flex-start;margin-bottom:30px}.nav-links{align-items:stretch}.nav-item{justify-content:flex-start;padding:12px 16px}.user-profile{border:1px solid var(--border-color);background-color:#1c19174d;justify-content:flex-start;padding:12px}.logout-btn{justify-content:center!important;padding:10px!important}.billing-layout{grid-template-columns:1fr;gap:16px;height:auto;overflow-y:auto}.content-wrapper.billing-wrapper{height:auto;padding:12px 16px;overflow-y:auto}.catalog-panel,.cart-panel{height:auto}.mobile-only{display:inline-flex!important}.dashboard-charts-grid,.dashboard-bottom-grid,.form-grid-2col,.ledger-overview-grid,.ledger-split-layout,.purchases-split-layout,.reports-charts-grid,.settings-split-layout{grid-template-columns:1fr!important;gap:16px!important;margin-bottom:16px!important}.ledger-split-layout.details-active .customer-list-panel,.ledger-split-layout:not(.details-active) .customer-details-panel,.inventory-wrapper .pos-table th:nth-child(2),.inventory-wrapper .pos-table td:nth-child(2),.inventory-wrapper .pos-table th:nth-child(3),.inventory-wrapper .pos-table td:nth-child(3),.inventory-wrapper .pos-table th:nth-child(4),.inventory-wrapper .pos-table td:nth-child(4),.inventory-wrapper .pos-table th:nth-child(6),.inventory-wrapper .pos-table td:nth-child(6){display:none!important}}
