*{margin:0;padding:0;box-sizing:border-box}html{overflow-x:hidden}body{font-family:Segoe UI,sans-serif;background-color:#f2f2f2;color:#1c1c1c;overflow-x:hidden;max-width:100vw}#root{min-height:100vh;overflow-x:hidden;max-width:100vw}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:#c1c1c1;border-radius:10px}::-webkit-scrollbar-thumb:hover{background-color:#a0a0a0}*{scrollbar-width:thin;scrollbar-color:#c1c1c1 transparent}.sidebar{width:220px;background-color:#0d1f3c;color:#fff;display:flex;flex-direction:column;height:100vh;position:fixed;left:0;top:0;overflow:hidden;z-index:200}.mobile-nav-toggle,.sidebar-backdrop{display:none}.sidebar-logo,.sidebar-footer{flex-shrink:0}.sidebar .ant-menu{flex:1;overflow-y:overlay;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent}.sidebar .ant-menu::-webkit-scrollbar{width:5px}.sidebar .ant-menu::-webkit-scrollbar-track{background:transparent}.sidebar .ant-menu::-webkit-scrollbar-thumb{background-color:#ffffff40;border-radius:10px}.sidebar .ant-menu::-webkit-scrollbar-thumb:hover{background-color:#fff6}.sidebar-logo{padding:16px 20px;font-size:16px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:16px}.sidebar-nav{flex:1;overflow-y:auto}.ant-menu{background:transparent!important;color:#fff!important}.ant-menu-item,.ant-menu-submenu-title{color:#fff!important}.ant-menu-item:hover,.ant-menu-submenu-title:hover{background-color:#00838f38!important}.ant-menu-item-selected{background-color:#00838f59!important}.ant-menu-submenu-selected>.ant-menu-submenu-title{background-color:#00838f38!important}.ant-menu-inline .ant-menu-submenu-title,.ant-menu-inline .ant-menu-item{height:40px!important;line-height:40px!important}.nav-item{display:block;padding:12px 20px;color:#fff;text-decoration:none;font-size:14px;font-weight:500;transition:background-color .2s}.nav-item:hover{background-color:#00838f38}.nav-item.active{background-color:#00838f59;border-left:3px solid #00838F}.sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.08)}.top-bar{height:48px;background-color:#0d1f3c;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:fixed;top:0;left:220px;right:0;z-index:100}.main-content{margin-left:220px;margin-top:48px;padding:24px;min-height:calc(100vh - 48px)}.page-title{font-size:22px;font-weight:600;margin-bottom:24px}.card{background-color:#fff;border-radius:6px;padding:24px;border:1px solid #D9D9D9}.dashboard-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.dashboard-stat-grid{display:grid;gap:16px;margin-bottom:20px}.dashboard-stat-grid-3{grid-template-columns:repeat(3,1fr)}.dashboard-stat-grid-4{grid-template-columns:repeat(4,1fr)}.dashboard-charts-grid{display:grid;grid-template-columns:1fr 340px;gap:16px;margin-bottom:20px}.table-search{margin-bottom:16px;display:flex;gap:12px}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-in-stock{background-color:#f6ffed;color:#52c41a;border:1px solid #52C41A}.status-low-stock{background-color:#fffbe6;color:#faad14;border:1px solid #FAAD14}.status-out-of-stock{background-color:#fff2f0;color:#ff4d4f;border:1px solid #FF4D4F}.currency{font-family:monospace;font-weight:600}.auth-page{display:flex;height:100vh;overflow:hidden}.auth-brand-panel{width:42%;flex-shrink:0;background:linear-gradient(155deg,#0d1f3c,#006064);display:flex;align-items:center;justify-content:center;padding:48px 40px;position:relative;overflow:hidden}.auth-brand-panel:before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;background:#ffffff0a;top:-100px;right:-100px;pointer-events:none}.auth-brand-panel:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:#ffffff0a;bottom:-70px;left:-70px;pointer-events:none}.auth-brand-inner{position:relative;z-index:1;color:#fff;text-align:center;max-width:300px;width:100%}.auth-brand-logo{width:110px;margin-bottom:24px;filter:drop-shadow(0 4px 16px rgba(0,0,0,.35))}.auth-brand-title{font-size:21px;font-weight:700;color:#fff;margin-bottom:8px;letter-spacing:.2px}.auth-brand-tagline{font-size:13.5px;color:#ffffffa6;line-height:1.6;margin-bottom:36px}.auth-brand-features{list-style:none;padding:0;margin:0;text-align:left}.auth-brand-features li{display:flex;align-items:center;gap:12px;font-size:13px;color:#ffffffd1;margin-bottom:14px}.auth-brand-features li:last-child{margin-bottom:0}.auth-feature-dot{width:22px;height:22px;border-radius:50%;background:#ffffff24;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;color:#fff;border:1px solid rgba(255,255,255,.2)}.auth-form-panel{flex:1;background:#fff;display:flex;flex-direction:column;overflow-y:auto}.auth-form-inner{flex:1;display:flex;align-items:center;justify-content:center;padding:48px 56px}.auth-form-body{width:100%;max-width:380px}.auth-form-heading{font-size:22px;font-weight:700;color:#1c1c1c;margin-bottom:6px}.auth-form-subheading{font-size:13.5px;color:#888;margin-bottom:28px;line-height:1.55}.auth-form-footer{padding:16px 56px;text-align:center;border-top:1px solid #f0f0f0;flex-shrink:0}.setup-choice-card{display:flex;align-items:flex-start;gap:16px;padding:18px 20px;border:1px solid #D9D9D9;border-radius:8px;cursor:pointer;margin-bottom:14px;transition:border-color .15s,box-shadow .15s}.setup-choice-card:hover,.setup-choice-card:focus-visible{border-color:#006064;box-shadow:0 2px 8px #00000014;outline:none}.setup-choice-icon{font-size:28px;line-height:1;flex-shrink:0}.setup-choice-title{font-size:15px;font-weight:600;color:#1c1c1c;margin-bottom:4px}.setup-choice-desc{font-size:13px;color:#888;line-height:1.5}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background-color:#f2f2f2}.login-box{width:400px;background-color:#fff;padding:40px;border-radius:8px;border:1px solid #D9D9D9;box-shadow:0 2px 8px #0000001a}.login-title{font-size:24px;font-weight:600;text-align:center;margin-bottom:32px}.form-group{margin-bottom:16px}.form-label{display:block;margin-bottom:8px;font-size:14px;color:#6b6b6b}.form-input{width:100%;padding:10px 12px;border:1px solid #D9D9D9;border-radius:6px;font-size:14px}.form-input:focus{outline:none;border-color:#006064}.btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:background-color .2s}.btn-primary{background-color:#006064;color:#fff}.btn-primary:hover{background-color:#00838f}.btn-secondary{background-color:#fff;color:#4a4a4a;border:1px solid #D9D9D9}.btn-secondary:hover{background-color:#fafafa}.btn-danger{background-color:#ff4d4f;color:#fff}.btn-danger:hover{background-color:#ff7875}.btn-block{width:100%}.pos-layout{display:grid;grid-template-columns:1fr 380px;gap:24px;height:calc(100vh - 96px)}.pos-products{display:flex;flex-direction:column;overflow:hidden}.pos-search{margin-bottom:16px}.pos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;overflow-y:auto;padding-right:8px}.pos-product-card{position:relative;background-color:#fff;border:1px solid #D9D9D9;border-radius:6px;padding:12px;cursor:pointer;transition:all .2s;text-align:center}.discount-badge{position:absolute;top:4px;right:4px;background-color:#f5222d;color:#fff;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:700;z-index:1}.pos-product-card:hover{border-color:#006064;box-shadow:0 2px 8px #0000001a}.pos-product-card.out-of-stock{opacity:.5;cursor:not-allowed}.pos-cart{background-color:#fff;border:1px solid #D9D9D9;border-radius:6px;display:flex;flex-direction:column;overflow:hidden}.pos-cart-header{padding:16px;border-bottom:1px solid #D9D9D9;font-weight:600}.pos-cart-items{flex:1;overflow-y:auto;padding:8px}.pos-cart-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid #F2F2F2}.pos-cart-item:last-child{border-bottom:none}.pos-cart-item-info{flex:1}.pos-cart-item-name{font-size:14px;font-weight:500}.pos-cart-item-price{font-size:12px;color:#6b6b6b}.pos-cart-item-qty{display:flex;align-items:center;gap:8px}.pos-cart-footer{padding:16px;border-top:1px solid #D9D9D9;background-color:#fafafa}.pos-cart-total{display:flex;justify-content:space-between;font-size:18px;font-weight:600;margin-bottom:16px}.scanner-pulse{position:fixed;top:0;left:220px;right:0;height:4px;background-color:#52c41a;animation:pulse .3s ease-out}@keyframes pulse{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.scanner-status{display:flex;align-items:center;gap:8px;font-size:12px;color:#6b6b6b;margin-top:8px}.scanner-dot{width:8px;height:8px;border-radius:50%}.scanner-dot.active{background-color:#52c41a}.scanner-dot.idle{background-color:#d9d9d9}.ant-modal-content{display:flex;flex-direction:column;max-height:80vh}.ant-modal-header{flex-shrink:0;padding:16px 24px;border-bottom:1px solid #f0f0f0}.ant-modal-body{flex:1;overflow-y:auto;padding:24px}.ant-modal-footer{flex-shrink:0;padding:16px 24px;border-top:1px solid #f0f0f0}.setup-wizard-overlay{min-height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);display:flex;align-items:center;justify-content:center;padding:24px}.setup-wizard-shell{background:#fff;border-radius:16px;width:100%;max-width:860px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 32px 80px #0006;overflow:hidden}.setup-header{display:flex;align-items:center;gap:14px;padding:24px 32px 20px;border-bottom:1px solid #f0f0f0;background:linear-gradient(90deg,#0d1f3c,#006064);color:#fff;flex-shrink:0}.setup-logo{width:40px;height:40px;object-fit:contain}.setup-header-text h1{font-size:18px;font-weight:700;color:#fff;margin:0}.setup-header-text p{font-size:13px;color:#aaa;margin:0}.setup-progress{display:flex;align-items:center;justify-content:center;padding:20px 32px 4px;flex-shrink:0}.setup-step-dot{width:32px;height:32px;border-radius:50%;background:#e8e8e8;color:#aaa;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;transition:all .25s}.setup-step-dot.active{background:#006064;color:#fff}.setup-step-dot.done{background:#52c41a;color:#fff}.setup-step-line{flex:1;height:2px;background:#e8e8e8;margin:0 6px;transition:background .25s}.setup-step-line.done{background:#52c41a}.setup-step-labels{display:flex;justify-content:space-between;padding:6px 32px 12px;flex-shrink:0}.setup-step-label{font-size:11px;color:#aaa;text-align:center;flex:1}.setup-step-label.active{color:#006064;font-weight:600}.setup-body{flex:1;overflow-y:auto;padding:0 32px 16px}.setup-step-content{padding-top:8px}.setup-step-title{font-size:20px;font-weight:700;color:#1c1c1c;margin-bottom:6px}.setup-step-subtitle{font-size:13px;color:#6b6b6b;margin-bottom:20px;line-height:1.6}.industry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}.industry-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:18px 12px 14px;border:2px solid #e8e8e8;border-radius:12px;background:#fafafa;cursor:pointer;text-align:center;transition:all .18s}.industry-card:hover{border-color:#006064;background:#f0f0f0;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.industry-card.selected{border-color:#006064;background:#006064}.industry-card.selected .industry-label,.industry-card.selected .industry-desc{color:#fff}.industry-icon{font-size:28px;line-height:1}.industry-label{font-size:13px;font-weight:600;color:#1c1c1c;line-height:1.3}.industry-desc{font-size:11px;color:#888;line-height:1.4}.industry-check{position:absolute;top:8px;right:10px;font-size:14px;color:#52c41a;font-weight:700}.module-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.module-card{border:2px solid #e8e8e8;border-radius:10px;padding:14px;cursor:pointer;transition:all .18s;background:#fafafa}.module-card:hover:not(.required){border-color:#bbb;background:#f5f5f5}.module-card.enabled{border-color:#006064;background:#f8f8f8}.module-card.required{border-color:#d9d9d9;cursor:default;opacity:.85}.module-card-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.module-icon{font-size:20px;flex-shrink:0}.module-info{flex:1;display:flex;flex-direction:column;gap:2px}.module-name{font-size:13px;font-weight:600;color:#1c1c1c}.module-required-badge{font-size:10px;color:#888;background:#f0f0f0;padding:1px 6px;border-radius:10px;width:fit-content}.module-description{font-size:12px;color:#6b6b6b;line-height:1.5;margin:0}.module-toggle{width:40px;height:22px;border-radius:11px;background:#d9d9d9;position:relative;flex-shrink:0;transition:background .2s}.module-toggle.on{background:#006064}.module-toggle-thumb{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #0003}.module-toggle.on .module-toggle-thumb{transform:translate(18px)}.permissions-list{display:flex;flex-direction:column;gap:10px}.permission-row{display:flex;align-items:center;gap:16px;padding:16px;border:2px solid #e8e8e8;border-radius:10px;cursor:pointer;background:#fafafa;transition:all .18s}.permission-row:hover{border-color:#bbb;background:#f5f5f5}.permission-row.enabled{border-color:#006064;background:#f8f8f8}.permission-text{flex:1;display:flex;flex-direction:column;gap:4px}.permission-label{font-size:14px;font-weight:600;color:#1c1c1c}.permission-desc{font-size:12px;color:#6b6b6b;line-height:1.4}.setup-form{display:flex;flex-direction:column;gap:16px;width:100%}.setup-form-group{display:flex;flex-direction:column;gap:6px}.setup-form-group label{font-size:13px;font-weight:600;color:#3a3a3a}.required-star{color:#ff4d4f}.optional-label{font-size:11px;color:#aaa;font-weight:400}.setup-input{width:100%;padding:10px 14px;border:1.5px solid #d9d9d9;border-radius:8px;font-size:14px;color:#1c1c1c;background:#fff;transition:border-color .18s;font-family:inherit}.setup-input:focus{outline:none;border-color:#006064;box-shadow:0 0 0 3px #00606414}.setup-summary{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:16px}.summary-check{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#52c41a,#73d13d);color:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;box-shadow:0 8px 24px #52c41a4d}.summary-card{width:100%;max-width:540px;border:1.5px solid #e8e8e8;border-radius:12px;overflow:hidden;text-align:left;margin-top:20px}.summary-row{display:flex;align-items:center;gap:16px;padding:12px 18px;border-bottom:1px solid #f0f0f0}.summary-row:last-child{border-bottom:none}.summary-row-top{align-items:flex-start}.summary-label{font-size:12px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;min-width:110px;flex-shrink:0}.summary-value{font-size:14px;color:#1c1c1c;font-weight:500}.summary-modules{display:flex;flex-wrap:wrap;gap:6px}.summary-module-tag{font-size:12px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:6px;padding:3px 10px;color:#3a3a3a}.setup-footer{display:flex;align-items:center;gap:12px;padding:16px 32px 20px;border-top:1px solid #f0f0f0;flex-shrink:0}.setup-btn-back{padding:10px 20px;border:1.5px solid #d9d9d9;border-radius:8px;background:#fff;font-size:14px;cursor:pointer;color:#555;transition:all .18s;font-family:inherit}.setup-btn-back:hover{border-color:#aaa;background:#fafafa}.setup-btn-next{padding:10px 28px;border:none;border-radius:8px;background:#006064;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .18s;font-family:inherit}.setup-btn-next:hover:not(:disabled){background:#1a1a1a;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.setup-btn-next:disabled{opacity:.4;cursor:not-allowed}.setup-btn-finish{padding:11px 32px;border:none;border-radius:8px;background:linear-gradient(135deg,#006064,#00838f);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:all .18s;font-family:inherit;letter-spacing:.3px}.setup-btn-finish:hover:not(:disabled){background:linear-gradient(135deg,#1a1a1a,#333);transform:translateY(-2px);box-shadow:0 6px 20px #00000040}.setup-btn-finish:disabled{opacity:.5;cursor:not-allowed}.module-settings-grid{display:flex;flex-direction:column;gap:10px;max-width:100%}.module-settings-card{border:1.5px solid #e8e8e8;border-radius:10px;padding:16px 18px;background:#fafafa;transition:all .18s}.module-settings-card.enabled{border-color:#006064;background:#fff}.module-settings-card.required{opacity:.8}.module-settings-header{display:flex;align-items:flex-start;gap:14px}.module-settings-icon{font-size:24px;flex-shrink:0;margin-top:2px}.module-settings-info{flex:1}.module-settings-name{font-size:14px;font-weight:600;color:#1c1c1c}.module-settings-desc{font-size:13px;color:#6b6b6b;margin:4px 0 0;line-height:1.5}.module-always-on-badge{font-size:10px;color:#888;background:#f0f0f0;padding:2px 8px;border-radius:10px;font-weight:500}.module-dependents-note{font-size:12px;color:#faad14;margin:6px 0 0;line-height:1.4}.disabled-toggle{opacity:.4;cursor:not-allowed!important}@media (max-width: 768px){.sidebar{transform:translate(-100%);transition:transform .25s ease;box-shadow:2px 0 16px #00000059}.sidebar.open{transform:translate(0)}.mobile-nav-toggle{display:inline-flex!important;align-items:center;justify-content:center}.sidebar-backdrop.open{display:block;position:fixed;inset:0;background:#00000073;z-index:190}.top-bar{left:0;padding:0 12px;gap:8px}.main-content{margin-left:0;padding:12px}.page-title{font-size:18px;margin-bottom:16px}.card{padding:16px}.ant-modal{max-width:calc(100vw - 24px)!important;margin:0 auto;top:16px}.ant-table-wrapper{overflow-x:auto}.auth-page{flex-direction:column;height:auto;min-height:100vh;overflow-y:auto}.auth-brand-panel{width:100%;flex-shrink:0;padding:28px 20px}.auth-brand-inner{max-width:100%}.auth-form-panel{flex:1;width:100%;overflow-y:visible}.auth-form-inner{padding:28px 20px}.dashboard-quick-actions{grid-template-columns:repeat(2,1fr)}.dashboard-stat-grid-3,.dashboard-stat-grid-4,.dashboard-charts-grid{grid-template-columns:1fr}.pos-layout{grid-template-columns:1fr;grid-template-rows:auto auto;height:auto}.pos-products{max-height:50vh}.pos-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.pos-cart{max-height:65vh}.scanner-pulse{left:0}.responsive-grid{grid-template-columns:1fr!important}.responsive-grid-header{display:none!important}}
