@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}:root{--color-primary: #2563EB;--color-primary-hover: #1D4ED8;--color-primary-soft: #DBEAFE;--color-primary-dim: rgba(37,99,235,.1);--color-bg: #F3F4F6;--color-bg-secondary: #FFFFFF;--color-card: #FFFFFF;--color-card-hover: #F9FAFB;--color-border: #E5E7EB;--color-border-active: rgba(37,99,235,.4);--color-text: #111827;--color-text-secondary:#374151;--color-text-muted: #6B7280;--color-success: #16A34A;--color-success-dim: rgba(22,163,74,.1);--color-warning: #D97706;--color-warning-dim: rgba(217,119,6,.1);--color-danger: #DC2626;--color-danger-dim: rgba(220,38,38,.1);--color-info: #2563EB;--color-info-dim: rgba(37,99,235,.1);--sidebar-w: 240px;--sidebar-rail-w: 64px;--bottom-nav-h: 60px;--topbar-h: 56px;--radius: 10px;--radius-sm: 6px;--transition: .18s ease;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 10px 30px rgba(0,0,0,.1);--chart-grid: rgba(0,0,0,.06);--chart-tick: #6B7280;--chart-accent: #2563EB;--chart-green: #16A34A}.dark{--color-primary: #3B82F6;--color-primary-hover: #2563EB;--color-primary-soft: rgba(59,130,246,.15);--color-primary-dim: rgba(59,130,246,.12);--color-bg: #111827;--color-bg-secondary: #1F2937;--color-card: #1F2937;--color-card-hover: #283548;--color-border: #374151;--color-border-active: rgba(59,130,246,.5);--color-text: #F9FAFB;--color-text-secondary:#D1D5DB;--color-text-muted: #9CA3AF;--color-success: #22C55E;--color-success-dim: rgba(34,197,94,.15);--color-warning: #F59E0B;--color-warning-dim: rgba(245,158,11,.15);--color-danger: #EF4444;--color-danger-dim: rgba(239,68,68,.15);--color-info: #3B82F6;--color-info-dim: rgba(59,130,246,.15);--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-md: 0 4px 12px rgba(0,0,0,.4);--shadow-lg: 0 10px 30px rgba(0,0,0,.5);--chart-grid: rgba(255,255,255,.06);--chart-tick: #9CA3AF;--chart-accent: #3B82F6;--chart-green: #22C55E}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--color-bg);color:var(--color-text);min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased;transition:background var(--transition),color var(--transition)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.app-layout{display:flex;min-height:100vh;min-height:100dvh}.sidebar{width:var(--sidebar-w);height:100vh;height:100dvh;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);display:flex;flex-direction:column;position:fixed;top:0;left:0;z-index:200;transition:width .22s ease,transform .22s ease,background var(--transition);overflow:hidden}.sidebar--rail{width:var(--sidebar-rail-w)}.sidebar--rail .sidebar-logo-labels,.sidebar--rail .nav-label,.sidebar--rail .nav-section-label,.sidebar--rail .sidebar-user-info,.sidebar--rail .logout-btn{display:none}.sidebar--rail .sidebar-logo{padding:16px 0;justify-content:center}.sidebar--rail .nav-item{justify-content:center;padding:10px 0}.sidebar--rail .sidebar-footer{padding:10px 0}.sidebar--rail .sidebar-user{justify-content:center;background:none}.sidebar--hidden{transform:translate(-100%)}.sidebar--open{width:var(--sidebar-w);transform:translate(0);box-shadow:var(--shadow-lg)}.sidebar--open .sidebar-logo-labels,.sidebar--open .nav-label,.sidebar--open .nav-section-label,.sidebar--open .sidebar-user-info,.sidebar--open .logout-btn{display:revert}.sidebar--open .sidebar-logo{padding:18px 20px;justify-content:flex-start}.sidebar--open .nav-item{justify-content:flex-start;padding:8px 12px}.sidebar--open .sidebar-footer{padding:12px 10px}.sidebar--open .sidebar-user{justify-content:flex-start;background:var(--color-bg)}.sidebar-overlay{position:fixed;inset:0;background:#0006;z-index:199;animation:fadeIn .18s ease}.sidebar-toggle-btn{background:none;border:none;color:var(--color-text);cursor:pointer;font-size:20px;padding:6px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:var(--transition);flex-shrink:0;margin-right:8px}.sidebar-toggle-btn:hover{background:var(--color-card-hover)}.main-content{margin-left:var(--sidebar-w);flex:1;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;transition:margin-left .22s ease}.app-layout--tablet .main-content{margin-left:var(--sidebar-rail-w)}.app-layout--mobile .main-content{margin-left:0;padding-bottom:var(--bottom-nav-h);padding-bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom,0px))}.topbar{height:var(--topbar-h);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 16px;position:sticky;top:0;z-index:50;transition:background var(--transition);gap:8px}.page-content{padding:20px;flex:1}@media(min-width:1025px){.topbar{padding:0 24px}.page-content{padding:24px 28px}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:var(--bottom-nav-h);height:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--color-bg-secondary);border-top:1px solid var(--color-border);display:flex;align-items:center;z-index:150;box-shadow:0 -2px 10px #00000014}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 4px;text-decoration:none;color:var(--color-text-muted);font-size:11px;font-weight:500;background:none;border:none;cursor:pointer;transition:var(--transition);min-height:48px}.bottom-nav-item:hover,.bottom-nav-item.active{color:var(--color-primary)}.bottom-nav-icon{font-size:20px;line-height:1}.bottom-nav-label{font-size:10px;line-height:1}@media(max-width:767px){.app-layout--mobile .sidebar,.app-layout--mobile .sidebar--open{width:min(86vw,320px);max-width:calc(100vw - 16px)}.app-layout--mobile .sidebar--open{border-top-right-radius:18px;border-bottom-right-radius:18px}.app-layout--mobile .topbar{padding:0 12px}.app-layout--mobile .page-content{padding:14px 12px 18px}}.sidebar-logo{padding:18px 20px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:10px}.sidebar-logo-icon{width:36px;height:36px;background:var(--color-primary);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:17px;color:#fff}.sidebar-logo-text{font-size:15px;font-weight:700;color:var(--color-text)}.sidebar-logo-sub{font-size:10.5px;color:var(--color-text-muted);font-weight:500}.sidebar-nav{flex:1;padding:10px;overflow-y:auto}.nav-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);padding:10px 10px 4px}.nav-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;font-weight:500;color:var(--color-text-secondary);text-decoration:none;transition:var(--transition);margin:1px 0;position:relative}.nav-item:hover{background:var(--color-card-hover);color:var(--color-text)}.nav-item.active{background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.nav-item .nav-icon{font-size:17px;flex-shrink:0}.nav-badge{margin-left:auto;background:var(--color-danger);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px}.sidebar-footer{padding:12px 10px;border-top:1px solid var(--color-border)}.sidebar-user{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--color-bg)}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:#fff}.user-name{font-size:13px;font-weight:600}.user-role{font-size:11px;color:var(--color-text-muted);text-transform:capitalize}.logout-btn{margin-left:auto;background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:15px;padding:4px;border-radius:4px;transition:var(--transition)}.logout-btn:hover{color:var(--color-danger)}.card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-sm);transition:background var(--transition),border-color var(--transition)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title{font-size:14px;font-weight:600;color:var(--color-text);display:flex;align-items:center;gap:6px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.kpi-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:18px;display:flex;align-items:flex-start;gap:14px;box-shadow:var(--shadow-sm);transition:var(--transition);min-width:0;overflow:hidden}.kpi-card>div:last-child{min-width:0;flex:1}.kpi-card:hover{border-color:var(--color-border-active);box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-icon{width:42px;height:42px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0}.kpi-label{font-size:12px;color:var(--color-text-muted);margin-bottom:4px;font-weight:500}.kpi-value{font-size:22px;font-weight:700;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.badge-success{background:var(--color-success-dim);color:var(--color-success)}.badge-warning{background:var(--color-warning-dim);color:var(--color-warning)}.badge-danger{background:var(--color-danger-dim);color:var(--color-danger)}.badge-info{background:var(--color-info-dim);color:var(--color-info)}.badge-accent{background:var(--color-primary-dim);color:var(--color-primary)}.badge-neutral{background:#6b72801a;color:var(--color-text-secondary)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13.5px}thead th{text-align:left;padding:10px 14px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);background:transparent}tbody tr{border-bottom:1px solid var(--color-border);transition:var(--transition)}tbody tr:nth-child(2n){background:#6b728008}.dark tbody tr:nth-child(2n){background:#ffffff05}tbody tr:hover{background:var(--color-card-hover)}tbody td{padding:11px 14px;color:var(--color-text-secondary)}tbody td:first-child{color:var(--color-text);font-weight:500}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:var(--radius-sm);font-size:13.5px;font-weight:600;cursor:pointer;border:none;transition:var(--transition);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-md)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-ghost{background:var(--color-card);color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-ghost:hover:not(:disabled){background:var(--color-card-hover);color:var(--color-text);border-color:var(--color-primary)}.btn-sm{padding:5px 12px;font-size:12px}.form-group{margin-bottom:16px}.form-label{font-size:12.5px;font-weight:500;color:var(--color-text-secondary);margin-bottom:6px;display:block}.form-input,.form-select,.form-textarea{width:100%;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:9px 14px;color:var(--color-text);font-size:14px;font-family:inherit;transition:var(--transition);outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-dim)}.form-input::placeholder{color:var(--color-text-muted)}.form-textarea{resize:vertical;min-height:80px}.form-select option{background:var(--color-card)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.search-bar{display:flex;align-items:center;gap:8px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:7px 14px;width:260px}.search-bar input{background:none;border:none;outline:none;color:var(--color-text);font-size:14px;width:100%}.search-bar input::placeholder{color:var(--color-text-muted)}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-title{font-size:21px;font-weight:700;color:var(--color-text)}.page-subtitle{font-size:13px;color:var(--color-text-muted);margin-top:2px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-border);margin-bottom:20px}.tab-btn{padding:8px 16px;border:none;background:none;cursor:pointer;font-size:13.5px;font-weight:500;color:var(--color-text-muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:var(--transition);display:inline-flex;align-items:center;gap:6px}.tab-btn:hover{color:var(--color-text)}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600}.modal-overlay{position:fixed;inset:0;background:#00000059;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.dark .modal-overlay{background:#0009}.modal{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal-header{padding:20px 24px 0;display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-title{font-size:17px;font-weight:700;color:var(--color-text)}.modal-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:18px;padding:4px;border-radius:4px;transition:var(--transition)}.modal-close:hover{color:var(--color-danger)}.modal-body{padding:0 24px 24px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg) 0%,#DBEAFE 50%,var(--color-bg) 100%)}.dark .login-page{background:radial-gradient(ellipse at 50% 0%,rgba(59,130,246,.12) 0%,var(--color-bg) 70%)}.login-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius);padding:40px;width:100%;max-width:400px;box-shadow:var(--shadow-lg)}.login-logo{text-align:center;margin-bottom:32px}.login-logo-icon{width:52px;height:52px;background:var(--color-primary);border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:12px;color:#fff}.login-title{font-size:22px;font-weight:700;margin-bottom:4px;color:var(--color-text)}.login-sub{font-size:13px;color:var(--color-text-muted)}.login-error{background:var(--color-danger-dim);color:var(--color-danger);padding:10px 14px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:6px;border-left:3px solid var(--color-danger)}.stock-bar-wrap{display:flex;align-items:center;gap:8px}.stock-bar{height:5px;border-radius:3px;flex:1;background:var(--color-bg)}.stock-bar-fill{height:100%;border-radius:3px;transition:width .3s}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,var(--color-card) 0%,var(--color-card-hover) 50%,var(--color-card) 100%);background-size:800px 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px;margin-bottom:24px}.empty-state{text-align:center;padding:60px 20px;color:var(--color-text-muted)}.empty-state-icon{font-size:48px;margin-bottom:12px}.empty-state p{font-size:14px}.toast-wrap{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:999}.toast{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:12px 18px;font-size:13.5px;min-width:220px;box-shadow:var(--shadow-md);animation:slide-in .25s ease}.toast-success{border-left:3px solid var(--color-success)}.toast-error{border-left:3px solid var(--color-danger)}@keyframes slide-in{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.theme-toggle{background:none;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;padding:6px 8px;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;transition:var(--transition)}.theme-toggle:hover{background:var(--color-card-hover);color:var(--color-text);border-color:var(--color-primary)}body{overflow-x:hidden}@media(max-width:767px){.chart-grid,.form-grid,.form-grid-3{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:10px}.page-header{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:16px}.page-title{font-size:18px}.search-bar{width:100%;min-width:0}.kpi-value{font-size:18px}.card{padding:14px}.toast-wrap{bottom:calc(var(--bottom-nav-h) + env(safe-area-inset-bottom,0px) + 8px);right:12px;left:12px;align-items:stretch}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:0;padding-bottom:0}.tab-btn{flex-shrink:0}.table-wrap{-webkit-overflow-scrolling:touch}.modal{max-width:calc(100vw - 24px)}}.notifications-bell-container{position:relative;display:flex;align-items:center}.bell-btn{background:none;border:none;font-size:1.25rem;color:var(--color-text-muted);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;transition:background .2s,color .2s}.bell-btn:hover{background:var(--color-card-hover);color:var(--color-text)}.bell-badge{position:absolute;top:4px;right:4px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--color-bg-secondary)}.notifications-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 12px 40px #00000026;z-index:1000;display:flex;flex-direction:column;max-height:480px;overflow:hidden;animation:notifSlideDown .2s ease-out}@keyframes notifSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.notif-header{padding:16px 20px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.notif-header-title{display:flex;align-items:center;gap:8px}.notif-header-title h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-text)}.notif-count-badge{background:#3b82f626;color:#3b82f6;font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px}.notif-header-actions{display:flex;gap:8px}.notif-action-btn{background:none;border:none;font-size:12px;font-weight:500;color:#3b82f6;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.notif-action-btn:hover{background:var(--color-card-hover)}.notif-action-btn--danger{color:#ef4444}.notif-body{overflow-y:auto;flex:1;max-height:400px}.notif-empty{padding:40px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-muted)}.notif-empty-icon{margin-bottom:12px;opacity:.5;color:var(--color-text-muted)}.notif-empty p{margin:0 0 4px;font-weight:500;color:var(--color-text)}.notif-empty span{font-size:12px}.notif-list{display:flex;flex-direction:column}.notif-item{display:flex;gap:12px;padding:14px 20px;border-bottom:1px solid var(--color-border);cursor:pointer;position:relative;transition:background .2s}.notif-item:hover{background:var(--color-card-hover)}.notif-item--unread{background:#3b82f608}.notif-icon-wrapper{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}.notif-icon--blue{background:#3b82f61a;color:#3b82f6}.notif-icon--red{background:#ef44441a;color:#ef4444}.notif-icon--green{background:#22c55e1a;color:#22c55e}.notif-icon--gray{background:var(--color-card-hover);color:var(--color-text-muted)}.notif-content{flex:1;display:flex;flex-direction:column;gap:4px}.notif-title-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.notif-item-title{font-size:13px;font-weight:600;color:var(--color-text)}.notif-unread-dot{width:6px;height:6px;border-radius:50%;background:#3b82f6}.notif-message{margin:0;font-size:12px;color:var(--color-text-muted);line-height:1.4}.notif-time{font-size:11px;color:var(--color-text-muted);opacity:.8}.notif-delete-btn{position:absolute;top:12px;right:12px;background:none;border:none;font-size:18px;cursor:pointer;color:var(--color-text-muted);opacity:0;transition:opacity .2s,color .2s;padding:0 6px}.notif-item:hover .notif-delete-btn{opacity:1}.notif-delete-btn:hover{color:#ef4444}@media(max-width:480px){.notifications-dropdown{position:fixed;top:var(--topbar-h);left:0;right:0;bottom:var(--bottom-nav-h);width:100%;max-height:none;border-radius:0;border:none;border-bottom:1px solid var(--color-border)}.notif-body{max-height:none}}.platform-shell{--platform-bg-start: #f6fbff;--platform-bg-end: #eef5ff;--platform-glow: rgba(22, 163, 74, .14);--platform-surface: rgba(255, 255, 255, .82);--platform-surface-strong: rgba(255, 255, 255, .95);--platform-surface-soft: rgba(255, 255, 255, .72);--platform-surface-soft-strong: rgba(255, 255, 255, .9);--platform-border: rgba(148, 163, 184, .24);--platform-text: #0f172a;--platform-muted: #64748b;--platform-accent: #16a34a;--platform-accent-soft: rgba(22, 163, 74, .12);--platform-accent-border: rgba(22, 163, 74, .24);--platform-accent-strong: rgba(22, 163, 74, .08);--platform-danger: #dc2626;--platform-backdrop: rgba(15, 23, 42, .22);--platform-sidebar-bg: rgba(255, 255, 255, .72);--platform-topbar-bg: rgba(248, 250, 252, .86);--platform-row-bg: rgba(255, 255, 255, .7);--platform-detail-bg: rgba(255, 255, 255, .76);--platform-toggle-bg: rgba(255, 255, 255, .9);--platform-empty-bg: rgba(255, 255, 255, .58);--platform-table-divider: rgba(148, 163, 184, .18);--platform-hover: rgba(22, 163, 74, .08);--platform-inactive-dot: #94a3b8;--platform-chart-grid: rgba(148, 163, 184, .18);--platform-chart-tick: #64748b;--platform-tooltip-bg: #ffffff;--platform-tooltip-border: rgba(148, 163, 184, .24);--platform-tooltip-text: #0f172a;min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr);background:radial-gradient(circle at top right,var(--platform-glow),transparent 28%),linear-gradient(180deg,var(--platform-bg-start) 0%,var(--platform-bg-end) 100%);color:var(--platform-text);font-family:IBM Plex Sans,Inter,sans-serif}.dark .platform-shell{--platform-bg-start: #09111f;--platform-bg-end: #0b1220;--platform-glow: rgba(74, 222, 128, .1);--platform-surface: rgba(15, 23, 42, .82);--platform-surface-strong: rgba(15, 23, 42, .96);--platform-surface-soft: rgba(15, 23, 42, .7);--platform-surface-soft-strong: rgba(15, 23, 42, .9);--platform-border: rgba(148, 163, 184, .18);--platform-text: #e2e8f0;--platform-muted: #94a3b8;--platform-accent: #4ade80;--platform-accent-soft: rgba(74, 222, 128, .12);--platform-accent-border: rgba(74, 222, 128, .22);--platform-accent-strong: rgba(74, 222, 128, .08);--platform-danger: #f87171;--platform-backdrop: rgba(2, 6, 23, .58);--platform-sidebar-bg: rgba(2, 6, 23, .78);--platform-topbar-bg: rgba(9, 17, 31, .86);--platform-row-bg: rgba(15, 23, 42, .7);--platform-detail-bg: rgba(15, 23, 42, .72);--platform-toggle-bg: rgba(15, 23, 42, .9);--platform-empty-bg: rgba(15, 23, 42, .5);--platform-table-divider: rgba(148, 163, 184, .12);--platform-hover: rgba(74, 222, 128, .06);--platform-inactive-dot: #475569;--platform-chart-grid: rgba(148, 163, 184, .18);--platform-chart-tick: #94a3b8;--platform-tooltip-bg: #0f172a;--platform-tooltip-border: rgba(148, 163, 184, .22);--platform-tooltip-text: #e2e8f0}.platform-backdrop{position:fixed;inset:0;background:var(--platform-backdrop);z-index:50}.platform-sidebar{position:sticky;top:0;height:100vh;padding:22px 18px;border-right:1px solid var(--platform-border);background:var(--platform-sidebar-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:18px}.platform-brand{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--platform-border);border-radius:18px;background:var(--platform-surface)}.platform-brand-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#4ade8047,#22c55e24);color:var(--platform-accent);font-size:20px}.platform-brand-title{font-size:15px;font-weight:700}.platform-brand-subtitle{font-size:12px;color:var(--platform-muted)}.platform-nav{display:flex;flex-direction:column;gap:6px;flex:1;overflow-y:auto}.platform-nav-item{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;color:var(--platform-muted);text-decoration:none;transition:.18s ease;border:1px solid transparent}.platform-nav-item:hover,.platform-nav-item.active{background:var(--platform-accent-soft);color:var(--platform-text);border-color:var(--platform-accent-border)}.platform-sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:10px}.platform-profile-card,.platform-logout,.platform-menu{border:1px solid var(--platform-border);background:var(--platform-surface);color:var(--platform-text);border-radius:14px}.platform-profile-card{display:flex;align-items:center;gap:12px;padding:12px;text-align:left}.platform-profile-card span{display:flex;flex-direction:column}.platform-profile-card small{color:var(--platform-muted)}.platform-avatar{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#22c55e4d,#2dd4bf1a);font-weight:700}.platform-logout,.platform-menu{display:inline-flex;align-items:center;gap:8px;padding:10px 14px}.platform-main{min-width:0}.platform-topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px 18px;border-bottom:1px solid var(--platform-border);background:var(--platform-topbar-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.platform-topbar-left,.platform-topbar-right,.platform-inline-actions,.platform-inline-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.platform-title{font-size:17px;font-weight:700}.platform-subtitle{font-size:12px;color:var(--platform-muted)}.platform-status-pill,.platform-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--platform-surface);border:1px solid var(--platform-border);color:var(--platform-muted);font-size:12px}.platform-status-pill.is-live{color:var(--platform-accent)}.platform-content{padding:24px}.platform-page{display:flex;flex-direction:column;gap:18px}.platform-page-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.platform-page-header h1,.platform-panel-header h2{display:flex;align-items:center;gap:8px;font-size:24px;line-height:1.1}.platform-page-header p,.platform-panel-header p,.platform-event-row p,.platform-flag-card p,.platform-empty,.platform-policy-row,.platform-table td span{color:var(--platform-muted)}.platform-metric-grid,.platform-grid-two,.platform-grid-split{display:grid;gap:16px}.platform-metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.platform-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-grid-split{grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr)}.platform-panel,.platform-metric-card{background:var(--platform-surface);border:1px solid var(--platform-border);border-radius:22px;padding:18px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.platform-panel-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.platform-metric-card{display:flex;gap:14px;align-items:center}.platform-metric-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-size:18px;color:var(--platform-accent);background:var(--platform-accent-soft)}.platform-metric-label{color:var(--platform-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.platform-metric-value{font-size:24px;font-weight:700}.platform-chart-wrap{height:280px}.platform-event-feed,.platform-list,.platform-flag-list{display:flex;flex-direction:column;gap:10px}.platform-event-row,.platform-list-item,.platform-flag-card,.platform-policy-row{border:1px solid var(--platform-border);border-radius:16px;padding:12px 14px;background:var(--platform-row-bg)}.platform-event-row,.platform-flag-card{display:flex;justify-content:space-between;gap:12px}.platform-event-row time{font-family:IBM Plex Mono,monospace;color:var(--platform-muted);white-space:nowrap;font-size:11px}.platform-search{min-width:240px;display:inline-flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--platform-surface);border:1px solid var(--platform-border)}.platform-search input,.platform-form-grid input,.platform-form-grid select{width:100%;background:transparent;border:none;color:var(--platform-text);outline:none;font:inherit}.platform-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.platform-form-grid label{display:grid;gap:6px;padding:12px 14px;border-radius:16px;background:var(--platform-row-bg);border:1px solid var(--platform-border)}.platform-form-grid span{font-size:12px;color:var(--platform-muted)}.platform-table-wrap{overflow:auto}.platform-table{width:100%;border-collapse:collapse}.platform-table th,.platform-table td{padding:12px 10px;border-bottom:1px solid var(--platform-table-divider);text-align:left;vertical-align:top}.platform-table th{color:var(--platform-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.platform-table tbody tr{cursor:pointer}.platform-table tbody tr.is-selected,.platform-table tbody tr:hover{background:var(--platform-hover)}.platform-table td strong,.platform-list-item strong,.platform-flag-card strong,.platform-event-row strong{display:block}.platform-sidepanel{align-self:start;position:sticky;top:96px}.platform-detail-list{display:grid;gap:10px}.platform-detail-list div{display:flex;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid var(--platform-border);background:var(--platform-detail-bg)}.platform-detail-list span{color:var(--platform-muted)}.platform-divider{margin:16px 0;height:1px;background:var(--platform-border)}.platform-toggle{min-width:92px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid var(--platform-border);background:var(--platform-toggle-bg);color:var(--platform-muted)}.platform-toggle span{width:10px;height:10px;border-radius:999px;background:var(--platform-inactive-dot)}.platform-toggle.is-on{color:var(--platform-text);background:var(--platform-accent-soft);border-color:var(--platform-accent-border)}.platform-list-item{text-align:left;color:var(--platform-text)}.platform-list-item.active{border-color:var(--platform-accent-border);background:var(--platform-accent-strong)}.platform-empty,.platform-error{padding:16px;border-radius:16px;border:1px dashed var(--platform-border);background:var(--platform-empty-bg)}.platform-error{color:var(--platform-danger)}.platform-policy-list{display:flex;flex-direction:column;gap:10px}@media(max-width:1100px){.platform-shell{grid-template-columns:1fr}.platform-sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,320px);transform:translate(-100%);transition:transform .18s ease;z-index:60}.platform-sidebar.is-open{transform:translate(0)}.platform-grid-two,.platform-grid-split{grid-template-columns:1fr}.platform-sidepanel{position:static}}@media(max-width:720px){.platform-topbar,.platform-content{padding:16px}.platform-page-header{flex-direction:column}.platform-search{width:100%}}@media(max-width:480px){.platform-topbar{flex-wrap:wrap;height:auto;padding:12px;gap:8px}.platform-topbar-left{flex:1;min-width:0}.platform-topbar-right{gap:6px}.platform-status-pill{display:none}.platform-title{font-size:15px}.platform-subtitle{display:none}.platform-content{padding:12px}.platform-page-header h1,.platform-panel-header h2{font-size:18px}.platform-page-header p,.platform-panel-header p{font-size:12px}.platform-metric-grid{grid-template-columns:repeat(2,1fr)}.platform-metric-value{font-size:20px}.platform-chart-wrap{height:200px}.platform-inline-meta,.platform-inline-actions{flex-wrap:wrap}.platform-chip{font-size:11px;padding:5px 10px}.platform-table-wrap{-webkit-overflow-scrolling:touch}.platform-brand-subtitle{display:none}.platform-page-header{gap:10px}}.pulse-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 18px;border-radius:18px;border:1px solid var(--platform-border);background:var(--platform-surface);flex-wrap:wrap}.pulse-bar--healthy{border-color:var(--platform-accent-border);background:var(--platform-accent-soft)}.pulse-bar--danger{border-color:#dc262659;background:#dc262612}.pulse-bar--warn{border-color:#eab30859;background:#eab30812}.pulse-bar-left{display:flex;align-items:center;gap:10px}.pulse-dot{width:10px;height:10px;border-radius:50%;background:var(--platform-accent);animation:pulse-glow 1.8s ease-in-out infinite}.pulse-bar--danger .pulse-dot{background:var(--platform-danger)}.pulse-bar--warn .pulse-dot{background:#ca8a04}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.pulse-bar-label{font-size:13px;font-weight:600;color:var(--platform-text)}.pulse-bar-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pulse-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent;cursor:default}button.pulse-pill{cursor:pointer;transition:opacity .15s}button.pulse-pill:hover{opacity:.8}.pulse-pill--danger{background:#dc26261f;color:var(--platform-danger);border-color:#dc262640}.pulse-pill--warn{background:#eab3081f;color:#ca8a04;border-color:#eab30840}.pulse-pill--neutral{background:var(--platform-surface-soft);color:var(--platform-muted);border-color:var(--platform-border)}.pulse-pill--ok{background:var(--platform-accent-soft);color:var(--platform-accent);border-color:var(--platform-accent-border)}.pulse-pill--muted{color:var(--platform-muted)}.dark .pulse-bar--warn{background:#eab3081a}.dark .pulse-pill--warn{color:#fbbf24}.platform-table tbody tr.row-suspended{background:#dc26260f}.platform-table tbody tr.row-suspended td strong{color:var(--platform-danger)}.platform-table tbody tr.row-risk-high{box-shadow:inset 3px 0 #eab30899}.platform-table tbody tr.is-selected{background:var(--platform-hover);box-shadow:inset 3px 0 0 var(--platform-accent)}.plan-chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:600;background:var(--platform-accent-soft);color:var(--platform-accent);border:1px solid var(--platform-accent-border);text-transform:capitalize}.tx-cell{display:flex;flex-direction:column;gap:4px}.mini-bar{height:4px;width:72px;border-radius:4px;background:var(--platform-border);overflow:hidden}.mini-bar-fill{height:100%;border-radius:4px;transition:width .4s ease}.mini-bar-fill--ok{background:var(--platform-accent)}.mini-bar-fill--warn{background:#ca8a04}.mini-bar-fill--danger{background:var(--platform-danger)}.risk-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;white-space:nowrap}.risk-high{background:#dc26261f;color:var(--platform-danger);border:1px solid rgba(220,38,38,.25)}.risk-medium{background:#eab3081f;color:#ca8a04;border:1px solid rgba(234,179,8,.25)}.risk-low{background:var(--platform-accent-soft);color:var(--platform-accent);border:1px solid var(--platform-accent-border)}.dark .risk-medium{color:#fbbf24}.platform-search--active{border-color:var(--platform-accent-border);box-shadow:0 0 0 2px var(--platform-accent-soft)}.search-highlight{background:#facc1573;border-radius:3px;padding:0 2px;color:inherit}.dark .search-highlight{background:#facc154d}.search-clear{background:none;border:none;color:var(--platform-muted);cursor:pointer;padding:0;display:flex;align-items:center;font-size:14px}.search-clear:hover{color:var(--platform-text)}.platform-filter-select{padding:9px 12px;border-radius:14px;border:1px solid var(--platform-border);background:var(--platform-surface);color:var(--platform-text);font:inherit;font-size:13px;cursor:pointer;outline:none}.platform-filter-select:focus{border-color:var(--platform-accent-border)}.sidepanel-inner{display:flex;flex-direction:column;gap:0;transition:opacity .15s}.sidepanel-inner.is-loading{opacity:.6;pointer-events:none}.sidepanel-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.sidepanel-title{font-size:18px!important;font-weight:700;line-height:1.2}.sidepanel-sub{font-size:12px;color:var(--platform-muted);margin-top:2px}.sidepanel-section{padding:14px 0;border-top:1px solid var(--platform-border)}.sidepanel-section:first-child{border-top:none}.sidepanel-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--platform-muted);margin-bottom:10px}.risk-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:14px;font-size:13px;font-weight:600;margin-bottom:14px}.risk-banner--high{background:#dc26261a;color:var(--platform-danger);border:1px solid rgba(220,38,38,.25)}.risk-banner--medium{background:#eab3081a;color:#ca8a04;border:1px solid rgba(234,179,8,.25)}.dark .risk-banner--medium{color:#fbbf24}.usage-bar-cell{display:flex;align-items:center;gap:8px}.usage-bar{flex:1;height:5px;border-radius:4px;background:var(--platform-border);overflow:hidden;min-width:40px}.usage-bar-fill{height:100%;border-radius:4px;transition:width .4s ease}.usage-bar-fill--warn{background:#ca8a04}.usage-bar-fill--danger{background:var(--platform-danger)}.usage-pct{font-size:11px;color:var(--platform-muted);white-space:nowrap}.risk-indicator{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;border:1px solid var(--platform-border);background:var(--platform-detail-bg);font-size:13px}.risk-indicator span{flex:1;color:var(--platform-muted)}.risk-indicator strong{font-weight:600}.risk-indicator--active{border-color:#dc26264d;background:#dc262612;color:var(--platform-danger)}.risk-indicator--active span{color:var(--platform-danger);opacity:.85}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.control-btn{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 12px;border-radius:14px;font-size:13px;font-weight:600;border:1px solid var(--platform-border);cursor:pointer;transition:.15s ease;white-space:nowrap}.control-btn--primary{background:var(--platform-accent);color:#fff;border-color:var(--platform-accent)}.control-btn--primary:hover:not(:disabled){opacity:.88}.control-btn--danger{background:#dc26261a;color:var(--platform-danger);border-color:#dc26264d}.control-btn--danger:hover:not(:disabled){background:#dc26262e}.control-btn--ghost{background:var(--platform-surface-soft);color:var(--platform-text)}.control-btn--ghost:hover:not(:disabled){background:var(--platform-hover);border-color:var(--platform-accent-border)}.control-btn:disabled{opacity:.5;cursor:not-allowed}.activity-timeline{display:flex;flex-direction:column;gap:0;position:relative}.timeline-row{display:flex;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--platform-table-divider);position:relative}.timeline-row:last-child{border-bottom:none}.timeline-dot{width:8px;height:8px;border-radius:50%;background:var(--platform-accent);margin-top:5px;flex-shrink:0}.timeline-content{flex:1;min-width:0}.timeline-action{display:block;font-size:13px;font-weight:600;color:var(--platform-text)}.timeline-detail{display:block;font-size:11px;color:var(--platform-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-time{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--platform-muted);white-space:nowrap;flex-shrink:0}.sidepanel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;text-align:center;color:var(--platform-muted)}.sidepanel-empty-icon{font-size:32px;opacity:.3}.sidepanel-empty-actions{margin-top:4px}.empty-link{background:none;border:none;color:var(--platform-accent);cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.badge.badge-lg{padding:5px 14px;font-size:12px;border-radius:999px}.toast-stack{position:fixed;bottom:24px;right:24px;z-index:200;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast-item{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:16px;background:var(--platform-surface-strong);border:1px solid var(--platform-border);box-shadow:0 8px 32px #0000002e;font-size:13px;font-weight:600;max-width:340px;pointer-events:all;animation:toast-in .25s ease;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.toast-success{color:var(--platform-accent);border-color:var(--platform-accent-border)}.toast-danger{color:var(--platform-danger);border-color:#dc26264d}.toast-warning{color:#ca8a04;border-color:#eab3084d}.toast-item button{background:none;border:none;cursor:pointer;color:var(--platform-muted);margin-left:auto;display:flex;align-items:center;padding:0}@keyframes toast-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.modal-backdrop{position:fixed;inset:0;background:var(--platform-backdrop);z-index:100;display:grid;place-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-box{background:var(--platform-surface-strong);border:1px solid var(--platform-border);border-radius:24px;padding:28px;width:min(480px,92vw);box-shadow:0 24px 72px #00000047;animation:modal-in .2s ease}.modal-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;font-size:20px;color:var(--platform-danger)}.modal-header h3{font-size:18px;font-weight:700;color:var(--platform-text);margin:0}.modal-body{font-size:14px;color:var(--platform-muted);line-height:1.6;margin-bottom:24px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}@keyframes modal-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.impersonation-banner{display:flex;align-items:center;gap:12px;padding:10px 20px;background:#eab30824;border-bottom:1px solid rgba(234,179,8,.3);font-size:13px;font-weight:600;color:#92400e;position:sticky;top:0;z-index:30}.dark .impersonation-banner{color:#fbbf24;background:#eab3081a;border-color:#eab30840}.impersonation-banner-icon{font-size:16px}.impersonation-banner-text{flex:1}.impersonation-banner button{padding:6px 14px;border-radius:999px;border:1px solid rgba(234,179,8,.5);background:#eab30826;color:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:.15s}.impersonation-banner button:hover{background:#eab30840}.st-create-modal,.st-edit-modal{background:var(--platform-surface);border:1px solid var(--platform-border);border-radius:16px;width:min(800px,95vw);max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 80px #0006}.st-edit-modal{width:min(700px,95vw)}.st-cm-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 24px 16px;border-bottom:1px solid var(--platform-border)}.st-cm-title{font-size:1.2rem;font-weight:700;margin:0 0 2px}.st-cm-sub{font-size:.85rem;color:var(--platform-muted);margin:0}.st-cm-close{margin-top:-4px}.st-cm-steps{display:flex;align-items:center;gap:0;padding:14px 24px;border-bottom:1px solid var(--platform-border)}.st-cm-step{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:var(--platform-muted);background:none;border:none;cursor:pointer;padding:6px 10px;border-radius:8px;transition:color .15s}.st-cm-step.active{color:var(--platform-accent)}.st-cm-step.done{color:var(--platform-accent);cursor:pointer}.st-cm-step:disabled{cursor:not-allowed;opacity:.5}.st-cm-step-num{width:22px;height:22px;border-radius:50%;background:var(--platform-bg);border:1.5px solid currentColor;font-size:.75rem;display:flex;align-items:center;justify-content:center;font-weight:700}.st-cm-step.active .st-cm-step-num{background:var(--platform-accent);color:#fff;border-color:var(--platform-accent)}.st-cm-step-line{flex:1;height:1px;background:var(--platform-border);max-width:40px;margin:0 4px}.st-cm-body{padding:20px 24px;overflow-y:auto;flex:1}.st-cm-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:16px}@media(max-width:640px){.st-cm-grid{grid-template-columns:1fr}}.st-cm-section{display:flex;flex-direction:column;gap:0}.st-cm-section-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.st-cm-section-title{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--platform-muted);margin:0 0 12px}.st-cm-section-sub{font-size:.8rem;color:var(--platform-muted);margin:2px 0 0}.st-cm-fields{display:flex;flex-direction:column;gap:12px}.st-field{display:flex;flex-direction:column;gap:4px}.st-field-label{font-size:.78rem;font-weight:600;color:var(--platform-text)}.st-required{color:#ef4444;margin-left:2px}.st-hint{font-weight:400;color:var(--platform-muted);font-size:.75rem}.st-input{background:var(--platform-bg);border:1.5px solid var(--platform-border);border-radius:8px;padding:8px 12px;font-size:.875rem;color:var(--platform-text);transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box}.st-input:focus{border-color:var(--platform-accent);box-shadow:0 0 0 3px var(--platform-accent-glow, rgba(99,102,241,.15));outline:none}.st-input-sm{padding:6px 10px;font-size:.82rem}.st-input-addon{display:flex;align-items:stretch}.st-input-addon .st-input{border-radius:8px 0 0 8px}.st-addon-suffix{background:var(--platform-bg);border:1.5px solid var(--platform-border);border-left:none;border-radius:0 8px 8px 0;padding:8px 12px;font-size:.8rem;color:var(--platform-muted);white-space:nowrap}.st-plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.st-plan-card{background:var(--platform-bg);border:1.5px solid var(--platform-border);border-radius:10px;padding:10px 12px;text-align:left;cursor:pointer;transition:border-color .15s,background .15s;display:flex;flex-direction:column;gap:3px}.st-plan-card:hover{border-color:var(--platform-accent)}.st-plan-card.selected{border-color:var(--platform-accent);background:#6366f114}.st-plan-name{font-size:.85rem;font-weight:700;color:var(--platform-text)}.st-plan-desc{font-size:.73rem;color:var(--platform-muted);line-height:1.4}.st-branch-list{display:flex;flex-direction:column;gap:10px}.st-branch-row{display:flex;align-items:flex-end;gap:10px;padding:12px;background:var(--platform-bg);border:1px solid var(--platform-border);border-radius:10px}.st-branch-num{width:22px;height:22px;border-radius:50%;background:var(--platform-accent);color:#fff;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:2px}.st-branch-remove{color:#ef4444!important;flex-shrink:0}.st-branch-remove:disabled{opacity:.3;color:var(--platform-muted)!important}.st-cm-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:16px;border-top:1px solid var(--platform-border);margin-top:8px}.st-delete-modal{max-width:480px;text-align:center;padding:32px 28px 24px}.st-delete-icon{font-size:48px;margin-bottom:12px}.st-delete-title{font-size:1.1rem;font-weight:700;margin:0 0 10px;color:#ef4444}.st-delete-body{font-size:.88rem;color:var(--platform-text);line-height:1.6;margin:0 0 20px}.st-delete-confirm-wrap{text-align:left;margin-bottom:4px}.st-delete-label{font-size:.8rem;font-weight:600;color:var(--platform-text);display:block;margin-bottom:6px}.st-delete-input{width:100%;box-sizing:border-box;background:var(--platform-bg);border:1.5px solid #ef4444;border-radius:8px;padding:8px 12px;font-size:.875rem;color:var(--platform-text)}.st-delete-input:focus{outline:none;box-shadow:0 0 0 3px #ef444433}.st-panel-tabs{display:flex;gap:2px;padding:12px 16px 0;border-bottom:1px solid var(--platform-border);margin-bottom:0}.st-panel-tab{font-size:.78rem;font-weight:600;color:var(--platform-muted);background:none;border:none;border-bottom:2px solid transparent;padding:6px 12px 10px;cursor:pointer;transition:color .15s,border-color .15s;white-space:nowrap}.st-panel-tab:hover{color:var(--platform-text)}.st-panel-tab.active{color:var(--platform-accent);border-bottom-color:var(--platform-accent)}.st-panel-tab.danger{color:#ef4444}.st-panel-tab.danger.active{border-bottom-color:#ef4444}.st-branch-manager{display:flex;flex-direction:column;gap:10px}.st-bm-header{display:flex;justify-content:space-between;align-items:center;padding:0 0 8px;border-bottom:1px solid var(--platform-border);margin-bottom:2px}.st-bm-new-row{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--platform-bg);border:1.5px dashed var(--platform-accent);border-radius:10px}.st-bm-row{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--platform-bg);border:1px solid var(--platform-border);border-radius:8px}.st-bm-row-info{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.st-bm-row-name{font-size:.85rem;font-weight:600;color:var(--platform-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.st-bm-row-addr{font-size:.75rem;color:var(--platform-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.st-flags-list{display:flex;flex-direction:column;gap:10px}.st-flag-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--platform-bg);border:1px solid var(--platform-border);border-radius:8px}.st-flag-info{display:flex;flex-direction:column;gap:2px}.st-flag-key{font-size:.82rem;font-weight:600;color:var(--platform-text);text-transform:capitalize}.st-flag-note{font-size:.72rem;color:var(--platform-muted)}.platform-toggle{display:flex;align-items:center;gap:6px;background:var(--platform-bg);border:1.5px solid var(--platform-border);border-radius:20px;padding:4px 10px 4px 6px;font-size:.75rem;font-weight:600;color:var(--platform-muted);cursor:pointer;transition:all .15s;white-space:nowrap}.platform-toggle span{width:14px;height:14px;border-radius:50%;background:var(--platform-muted);transition:background .15s}.platform-toggle.is-on{border-color:var(--platform-accent);color:var(--platform-accent)}.platform-toggle.is-on span{background:var(--platform-accent)}.st-danger-zone{padding-top:16px!important}.st-dz-header{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#ef44440f;border:1px solid rgba(239,68,68,.2);border-radius:10px;margin-bottom:16px}.st-dz-icon{font-size:24px}.st-dz-title{font-size:.9rem;font-weight:700;color:#ef4444}.st-dz-sub{font-size:.78rem;color:var(--platform-muted);margin-top:2px}.st-dz-actions{display:flex;flex-direction:column;gap:12px}.st-dz-action{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--platform-bg);border:1px solid var(--platform-border);border-radius:10px}.st-dz-action strong{font-size:.85rem;display:block;margin-bottom:2px}.st-dz-action p{font-size:.78rem;color:var(--platform-muted);margin:0}.st-dz-action--destroy{border-color:#ef44444d;background:#ef44440a}.risk-indicators{display:flex;flex-direction:column;gap:8px}.risk-indicator{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--platform-bg);border:1px solid var(--platform-border);border-radius:8px;font-size:.82rem;color:var(--platform-muted)}.risk-indicator svg{flex-shrink:0;opacity:.4}.risk-indicator span{flex:1}.risk-indicator strong{color:var(--platform-text)}.risk-indicator--active{border-color:#ef444459}.risk-indicator--active svg{opacity:1;color:#ef4444}.risk-indicator--active strong{color:#ef4444}.usage-bar-cell{display:flex;align-items:center;gap:6px}.usage-bar{width:60px;height:4px;background:var(--platform-border);border-radius:2px;overflow:hidden}.usage-bar-fill{height:100%;border-radius:2px;transition:width .3s}.usage-bar-fill--ok{background:var(--platform-accent)}.usage-bar-fill--warn{background:#f59e0b}.usage-bar-fill--danger{background:#ef4444}.usage-pct{font-size:.75rem;color:var(--platform-muted)}.platform-shell .btn-sm{padding:5px 10px;font-size:.78rem}.platform-shell .btn-danger{background:#ef44441a;border:1.5px solid rgba(239,68,68,.4);color:#ef4444;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.platform-shell .btn-danger:hover:not(:disabled){background:#ef444433}.platform-shell .btn-danger:disabled{opacity:.4;cursor:not-allowed}.platform-shell .btn-primary{background:var(--platform-accent);border:1.5px solid var(--platform-accent);color:#fff;border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity .15s;display:flex;align-items:center;gap:6px}.platform-shell .btn-primary:hover:not(:disabled){opacity:.85}.platform-shell .btn-primary:disabled{opacity:.5;cursor:not-allowed}.platform-shell .btn-ghost{background:none;border:1.5px solid var(--platform-border);color:var(--platform-text);border-radius:8px;padding:8px 16px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s;display:flex;align-items:center;gap:6px}.btn-ghost:hover{background:var(--platform-bg)}.platform-error{padding:10px 14px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;font-size:.82rem;color:#ef4444}.st-biztype-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin-bottom:4px}.st-biztype-card{background:var(--platform-bg);border:1.5px solid var(--platform-border);border-radius:12px;padding:14px 10px 12px;text-align:center;cursor:pointer;transition:border-color .15s,background .15s,transform .1s;display:flex;flex-direction:column;align-items:center;gap:5px}.st-biztype-card:hover{border-color:var(--platform-accent);transform:translateY(-2px)}.st-biztype-card.selected{border-color:var(--platform-accent);background:#6366f11a;box-shadow:0 0 0 3px #6366f12e}.st-biztype-icon{font-size:1.8rem;line-height:1}.st-biztype-label{font-size:.78rem;font-weight:700;color:var(--platform-text)}.st-biztype-desc{font-size:.68rem;color:var(--platform-muted);line-height:1.3}.st-seed-notice{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#6366f112;border:1px solid rgba(99,102,241,.25);border-radius:8px;font-size:.82rem;color:var(--platform-text);margin-bottom:12px}.cashier-layout{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden;background:var(--color-bg)}.cashier-topbar{display:flex;align-items:center;justify-content:space-between;height:54px;padding:0 20px;background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-shrink:0;gap:16px;z-index:100}.cashier-topbar-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;min-width:160px}.cashier-brand-name{font-size:15px;font-weight:700;color:var(--color-text);letter-spacing:-.3px}.cashier-nav{display:flex;align-items:center;gap:3px;background:var(--color-bg);border-radius:10px;padding:4px;border:1px solid var(--color-border)}.cashier-nav-btn{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:7px;font-size:13px;font-weight:500;color:var(--color-text-muted);text-decoration:none;transition:all .15s ease;white-space:nowrap;line-height:1.4}.cashier-nav-btn:hover{color:var(--color-text);background:var(--color-border)}.cashier-nav-btn.active{color:var(--color-primary);background:var(--color-primary-fade, rgba(99, 102, 241, .1));font-weight:600}.cashier-topbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0;min-width:160px;justify-content:flex-end}.cashier-user{display:flex;align-items:center;gap:7px;padding:4px 8px 4px 4px;border-radius:8px;cursor:pointer;transition:background .15s}.cashier-user:hover{background:var(--color-bg)}.cashier-user-name{font-size:13px;font-weight:500;color:var(--color-text);max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cashier-content{flex:1;overflow:hidden;display:flex;flex-direction:column}@media(max-width:900px){.cashier-nav-btn{padding:6px 10px;font-size:12px}}@media(max-width:640px){.cashier-topbar{flex-wrap:wrap;height:auto;min-height:54px;padding:8px 12px;gap:6px}.cashier-topbar-brand{order:1;flex:1;min-width:0}.cashier-topbar-right{order:2;min-width:auto}.cashier-nav{order:3;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:3px;justify-content:flex-start;scrollbar-width:none}.cashier-nav::-webkit-scrollbar{display:none}.cashier-nav-btn{font-size:12px;padding:5px 12px;white-space:nowrap;flex-shrink:0}.cashier-brand-name{font-size:13px}.cashier-user-name{display:none}}.cashier-summary{padding:28px;max-width:960px;margin:0 auto;width:100%;overflow-y:auto;height:100%}.cashier-summary-heading{margin-bottom:24px}.cashier-summary-heading h2{font-size:20px;font-weight:700;margin:0 0 4px;color:var(--color-text)}.cashier-summary-heading p{font-size:13px;color:var(--color-text-muted);margin:0}.cashier-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:28px}.cashier-kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:18px 20px}.cashier-kpi-label{font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:8px}.cashier-kpi-value{font-size:28px;font-weight:700;color:var(--color-text);line-height:1;letter-spacing:-.5px}.cashier-kpi-accent{color:var(--color-primary)}.cashier-recent-header{font-size:13px;font-weight:600;color:var(--color-text);margin-bottom:10px;display:flex;align-items:center;gap:7px}.cashier-tx-table{width:100%;border-collapse:collapse}.cashier-tx-table th{text-align:left;font-size:11px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px;padding:8px 14px;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.cashier-tx-table td{padding:10px 14px;font-size:13px;color:var(--color-text);border-bottom:1px solid var(--color-border)}.cashier-tx-table tr:last-child td{border-bottom:none}.cashier-tx-table tbody tr:hover td{background:var(--color-bg)}@media(max-width:1024px){.cashier-topbar-brand{min-width:auto}.cashier-topbar{height:auto;padding:10px 16px;align-items:flex-start;flex-wrap:wrap}.cashier-nav{order:3;width:100%;overflow-x:auto;scrollbar-width:none}.cashier-nav::-webkit-scrollbar{display:none}.cashier-topbar-right{min-width:auto;margin-left:auto}.cashier-summary{padding:20px}}@media(max-width:640px){.cashier-topbar{padding:10px 12px;gap:8px}.cashier-brand-name{display:none}.cashier-topbar-brand{min-width:auto}.cashier-topbar-right{min-width:auto;gap:6px}.cashier-nav-btn{padding:6px 10px;font-size:12px}.cashier-nav{padding:4px}.cashier-user-name,.cashier-topbar-right .badge{display:none}.cashier-user{padding-right:4px}.cashier-summary{padding:14px}.cashier-kpi-value{font-size:22px}}@media(max-width:420px){.cashier-topbar{padding:10px}.cashier-nav-btn{padding:6px 9px;font-size:11.5px;gap:5px}}.agent-layout{display:flex;flex-direction:column;min-height:100vh;background-color:var(--color-bg-base, #f8fafc);color:var(--color-text-base, #1e293b);padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.agent-topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:var(--color-bg-surface, #ffffff);border-bottom:1px solid var(--color-border, #e2e8f0);position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #00000005}.agent-brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:16px}.agent-brand-logo{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background-color:var(--color-primary, #3b82f6);color:#fff;border-radius:6px;font-size:14px}.agent-topbar-actions{display:flex;align-items:center;gap:12px}.agent-content{flex:1;width:100%;max-width:600px;margin:0 auto;padding:16px}.agent-bottom-nav{position:fixed;bottom:0;left:0;transform:none;width:100%;max-width:none;height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background-color:var(--color-bg-surface, #ffffff);border-top:1px solid var(--color-border, #e2e8f0);display:flex;justify-content:space-around;align-items:center;box-shadow:0 -2px 10px #0000000d;z-index:1000}.agent-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;color:var(--color-text-muted, #64748b);font-size:10px;font-weight:500;height:100%;width:20%;transition:all .2s ease;gap:2px}.agent-nav-icon{font-size:18px;padding:2px 8px;border-radius:12px;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center}.agent-nav-item:hover{color:var(--color-primary, #3b82f6)}.agent-nav-item.active{color:var(--color-primary, #3b82f6);font-weight:600}.agent-nav-item.active .agent-nav-icon{background-color:#3b82f61a;transform:translateY(-2px)}.agent-user-avatar{width:24px;height:24px;border-radius:50%;background-color:var(--color-primary-light, #eff6ff);color:var(--color-primary, #3b82f6);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;border:1px solid var(--color-primary, #3b82f6)}@media(max-width:480px){.agent-brand span{display:none}.agent-topbar-actions{gap:8px}.agent-topbar-actions label select{min-width:100px!important;max-width:120px!important;height:30px!important;font-size:11px!important}.agent-topbar{padding:8px 12px}}@media(max-width:360px){.agent-topbar-actions{gap:4px}.agent-topbar-actions label select{min-width:80px!important;max-width:90px!important}}.barcode-scanner{margin-bottom:20px}.scanner-form{display:flex;gap:12px;align-items:center}.scanner-input-wrapper{flex:1;position:relative;display:flex;align-items:center}.scanner-icon{position:absolute;left:12px;color:var(--color-text-muted);pointer-events:none}.scanner-input{width:100%;padding:10px 12px 10px 40px;border:2px solid var(--color-border);border-radius:8px;font-size:14px;background:var(--color-bg-card);color:var(--color-text);transition:all .2s}.scanner-input:focus{outline:none;border-color:var(--color-primary)}.scanner-input.scanning{border-color:var(--color-success);animation:pulse 1s infinite}.scanning-indicator{position:absolute;right:12px;font-size:12px;color:var(--color-success);font-weight:600;animation:blink 1s infinite}@keyframes pulse{0%,to{border-color:var(--color-success)}50%{border-color:var(--color-primary)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.status-badge.clickable{cursor:pointer;transition:all .2s}.status-badge.clickable:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.status-success{background:#d4edda;color:#155724}.status-warning{background:#fff3cd;color:#856404}.status-danger{background:#f8d7da;color:#721c24}.status-info{background:#d1ecf1;color:#0c5460}.status-purple{background:#e7d6f5;color:#5a2a82}.status-gray{background:#e2e3e5;color:#383d41}[data-theme=dark] .status-success{background:#1e4620;color:#7dce82}[data-theme=dark] .status-warning{background:#4d3800;color:#ffc107}[data-theme=dark] .status-danger{background:#4a1c1c;color:#f28b82}[data-theme=dark] .status-info{background:#0d3a47;color:#64b5f6}[data-theme=dark] .status-purple{background:#3a1f52;color:#ce93d8}[data-theme=dark] .status-gray{background:#2d2d2d;color:#b0b0b0}.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:var(--color-card);border-radius:12px;max-width:700px;width:90%;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.modal-header{padding:20px 24px;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:20px;font-weight:600}.modal-close{background:none;border:none;font-size:28px;cursor:pointer;color:var(--color-text-muted);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close:hover{background:var(--color-card-hover);color:var(--color-text)}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-actions{padding:16px 24px;border-top:1px solid var(--color-border);display:flex;gap:12px;justify-content:flex-end}.detail-row{display:flex;padding:10px 0;border-bottom:1px solid var(--color-border)}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:600;color:var(--color-text-muted);min-width:140px;flex-shrink:0}.detail-value{color:var(--color-text);flex:1}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section-title{font-size:16px;font-weight:600;margin:0 0 12px;color:var(--color-text)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pos-slide-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes pos-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pos-add-flash{0%{background:var(--color-success-dim)}to{background:transparent}}@keyframes pos-card-pulse{0%{transform:scale(1)}40%{transform:scale(.94)}to{transform:scale(1)}}@keyframes pos-btn-glow{0%{box-shadow:0 4px 14px #2563eb59}50%{box-shadow:0 4px 28px #2563eba6}to{box-shadow:0 4px 14px #2563eb59}}@keyframes pos-toast-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}@keyframes pos-total-pop{0%{transform:scale(1)}35%{transform:scale(1.04)}to{transform:scale(1)}}.page-content .pos-root{margin:-24px -28px;height:calc(100vh - var(--topbar-h));height:calc(100dvh - var(--topbar-h))}.cashier-content .pos-root{height:100%}.pos-root{display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg)}.pos-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;height:46px;padding:0 18px;background:var(--color-card);border-bottom:1px solid var(--color-border);flex-shrink:0;z-index:10}.pos-operator-bar{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--color-text-muted);flex-wrap:nowrap;overflow:hidden}.pos-operator-sep{width:1px;height:12px;background:var(--color-border);flex-shrink:0}.pos-topbar-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.pos-body{display:flex;flex:1;overflow:hidden;gap:0}.pos-left{flex:1 1 auto;min-width:0;max-width:620px;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--color-border)}.pos-checkout-workspace{flex:1 1 620px;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) clamp(280px,24vw,340px);overflow:hidden;background:var(--color-card)}.pos-checkout-workspace.pos-checkout-workspace-compact{grid-template-columns:minmax(320px,1.2fr) minmax(260px,340px)}.pos-checkout-workspace.pos-checkout-workspace-expanded{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}.pos-checkout-workspace.pos-checkout-workspace-expanded .pos-right{border-right:none;border-bottom:1px solid var(--color-border)}.pos-checkout-workspace.pos-checkout-workspace-expanded .pos-payment-pane{max-height:clamp(220px,36vh,320px);border-top:1px solid var(--color-border);box-shadow:0 -10px 24px #0f172a0f}.pos-search-bar{display:flex;align-items:center;gap:10px;padding:10px 16px;background:var(--color-card);border-bottom:1px solid var(--color-border);flex-shrink:0}.pos-search-input{flex:1;border:none;background:transparent;font-size:15px;font-weight:500;color:var(--color-text);outline:none;font-family:inherit}.pos-search-input::placeholder{color:var(--color-text-muted);font-weight:400}.pos-search-clear{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:none;background:var(--color-border);color:var(--color-text-muted);cursor:pointer;flex-shrink:0;transition:background .12s}.pos-search-clear:hover{background:var(--color-danger-dim);color:var(--color-danger)}.pos-search-hint{font-size:11px;color:var(--color-text-muted);white-space:nowrap;border:1px solid var(--color-border);border-radius:4px;padding:2px 6px;flex-shrink:0}.pos-category-tabs{display:flex;gap:5px;padding:8px 14px;overflow-x:auto;scrollbar-width:none;flex-shrink:0;background:var(--color-card);border-bottom:1px solid var(--color-border)}.pos-category-tabs::-webkit-scrollbar{display:none}.pos-category-tab{padding:4px 13px;border-radius:16px;border:1.5px solid var(--color-border);background:transparent;font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap;transition:var(--transition);color:var(--color-text-secondary);flex-shrink:0}.pos-category-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.pos-category-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.pos-subcategory-tabs{display:flex;gap:4px;padding:6px 14px;overflow-x:auto;scrollbar-width:none;flex-shrink:0;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.pos-subcategory-tabs::-webkit-scrollbar{display:none}.pos-subcategory-tab{padding:3px 11px;border-radius:12px;border:1.5px solid var(--color-border);background:transparent;font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap;transition:var(--transition);color:var(--color-text-secondary);flex-shrink:0}.pos-subcategory-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.pos-subcategory-tab.active{background:rgba(var(--color-primary-rgb, 99 102 241),.15);border-color:var(--color-primary);color:var(--color-primary)}.pos-products-area{flex:1;overflow-y:auto;padding:12px 14px}.pos-products-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:220px;font-size:13.5px;color:var(--color-text-muted);text-align:center}.pos-product-list{display:flex;flex-direction:column;gap:2px}.pos-product-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:background .1s,border-color .1s;border:1.5px solid transparent;background:var(--color-card);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.pos-product-row:hover{background:var(--color-card-hover);border-color:var(--color-border)}.pos-product-row:active{background:var(--color-primary-dim);border-color:var(--color-primary)}.pos-product-row.pos-row-highlight{border-color:var(--color-primary);background:var(--color-primary-dim)}.pos-product-row.pos-row-oos{opacity:.45;cursor:not-allowed}.pos-product-row.pos-row-oos:hover{background:var(--color-card);border-color:transparent}.pos-product-row.pos-card-flash{background:var(--color-success-dim);border-color:var(--color-success);animation:pos-add-flash .5s ease-out forwards}.pos-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.pos-row-name{font-size:13.5px;font-weight:600;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-row-meta{font-size:11px;color:var(--color-text-muted)}.pos-row-badge{font-size:9px;font-weight:700;padding:2px 7px;border-radius:10px;text-transform:uppercase;letter-spacing:.06em;color:#fff;flex-shrink:0}.pos-row-badge.out{background:var(--color-danger)}.pos-row-badge.low{background:var(--color-warning)}.pos-row-price{font-size:14px;font-weight:800;color:var(--color-success);letter-spacing:-.02em;white-space:nowrap;flex-shrink:0}.pos-row-add{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-sm);border:1.5px solid var(--color-primary);background:var(--color-primary-dim);color:var(--color-primary);cursor:pointer;flex-shrink:0;transition:background .12s,transform .1s;font-size:16px;line-height:1}.pos-row-add:hover{background:var(--color-primary);color:#fff}.pos-row-add:active{transform:scale(.9)}.pos-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}@media(min-width:701px)and (max-width:959px){.pos-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.pos-product-card{background:var(--color-card);border:1.5px solid var(--color-border);border-radius:var(--radius);padding:11px;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.pos-product-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.pos-product-card:active{animation:pos-card-pulse .18s ease-out;transform:scale(.96)}.pos-product-card.pos-card-flash{border-color:var(--color-success)!important;box-shadow:0 0 0 3px var(--color-success-dim)!important}.pos-product-card.pos-card-oos{opacity:.45}.pos-product-card.pos-card-oos:hover{transform:none;border-color:var(--color-border);box-shadow:none;cursor:not-allowed}.pos-card-img{width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:calc(var(--radius) - 4px);background:var(--color-bg)}.pos-card-name{font-size:12px;font-weight:600;line-height:1.35;color:var(--color-text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:32px}.pos-card-price{font-size:14px;font-weight:800;color:var(--color-success);letter-spacing:-.02em}.pos-card-add-btn{width:100%;padding:8px 0;border:none;border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;font-size:12.5px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;transition:background .15s,transform .1s;min-height:36px;margin-top:auto}.pos-card-add-btn:hover{background:var(--color-primary-hover)}.pos-card-add-btn:active{transform:scale(.95)}.pos-card-badge{position:absolute;top:6px;right:6px;font-size:9px;font-weight:700;padding:2px 7px;border-radius:10px;text-transform:uppercase;letter-spacing:.05em;color:#fff;pointer-events:none}.pos-card-badge.out{background:var(--color-danger)}.pos-card-badge.low{background:var(--color-warning)}.pos-right{flex:1 1 320px;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-card);border-right:1px solid var(--color-border);transition:box-shadow .2s}.pos-right.pos-cart-active{box-shadow:-2px 0 12px #2563eb14}.pos-payment-pane{flex:1 1 auto;width:100%;height:100%;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-card);border-left:1px solid var(--color-border)}.pos-cart-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--color-border);flex-shrink:0}.pos-cart-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--color-text)}.pos-cart-header-actions{display:flex;align-items:center;gap:8px}.pos-cart-count{display:inline-flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;border-radius:10px;padding:1px 7px;font-size:11px;font-weight:700;min-width:22px}.pos-cart-items{flex:1;min-height:0;overflow-y:auto;padding:6px 0}.pos-cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:120px;color:var(--color-text-muted);font-size:13px}.pos-cart-item{display:grid;grid-template-columns:minmax(0,1fr) 108px 92px 24px;align-items:center;gap:10px;padding:7px 14px;border-bottom:1px solid var(--color-border);transition:background .1s}.pos-cart-item:last-child{border-bottom:none}.pos-cart-item.pos-cart-row-flash{animation:pos-add-flash .5s ease-out forwards}.pos-ci-info{min-width:0;display:flex;flex-direction:column;gap:1px;cursor:pointer}.pos-ci-info:hover .pos-ci-name{color:var(--color-primary)}.pos-ci-name{font-size:13px;font-weight:600;color:var(--color-text);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:6px}.pos-ci-unit{font-size:11px;color:var(--color-text-muted);font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-ci-amount-note{font-size:10.5px;color:var(--color-primary);font-weight:600}.pos-ci-price{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;line-height:1.15}.pos-ci-total{font-size:13.5px;font-weight:800;color:var(--color-text);white-space:nowrap}.pos-ci-unit-hint{font-size:10.5px;color:var(--color-text-muted);font-weight:500;white-space:nowrap}.pos-ci-remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;flex-shrink:0;transition:background .12s,color .12s;padding:0}.pos-ci-remove:hover{background:var(--color-danger-dim);color:var(--color-danger)}.pos-cart-close-btn{width:30px;height:30px;border-radius:999px;border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);flex-shrink:0}.pos-cart-close-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.pos-ci-qty{display:flex;align-items:center;justify-content:center;gap:2px;flex-shrink:0}.pos-ci-qbtn{width:24px;height:24px;border-radius:4px;border:1.5px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;transition:border-color .12s,background .12s;flex-shrink:0}.pos-ci-qbtn:hover{border-color:var(--color-primary);background:var(--color-primary-dim);color:var(--color-primary)}.pos-ci-qbtn:disabled{opacity:.35;cursor:not-allowed}.pos-ci-qinput{width:40px;text-align:center;border:1.5px solid var(--color-border);border-radius:4px;background:var(--color-bg);color:var(--color-text);font-size:13px;font-weight:700;padding:2px;font-family:inherit;-moz-appearance:textfield}.pos-ci-qinput::-webkit-outer-spin-button,.pos-ci-qinput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pos-ci-qinput:focus{outline:none;border-color:var(--color-primary)}.pos-payment-section{padding:12px 14px 14px;display:flex;flex-direction:column;gap:10px;flex:1 1 auto;min-height:0;overflow:hidden;background:var(--color-card)}.pos-right .pos-payment-section{border-top:2px solid var(--color-border)}.pos-payment-pane .pos-payment-section{flex:1 1 auto;min-height:0;overflow:hidden}.pos-payment-scrollable{display:flex;flex-direction:column;gap:8px;min-height:0;flex:1 1 auto;overflow:hidden}.pos-total-display{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 14px;display:flex;flex-direction:column;gap:2px}.pos-total-amount{font-size:32px;font-weight:800;color:var(--color-text);letter-spacing:-.03em;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-total-meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:11.5px;color:var(--color-text-muted);font-weight:500}.pos-total-meta .neg{color:var(--color-danger)}.pos-customer-selector{display:flex;align-items:center;gap:8px;width:100%;padding:7px 12px;border-radius:8px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font-size:13px;font-weight:600;cursor:pointer;text-align:left;transition:border-color .12s,background .12s}.pos-customer-selector:hover{border-color:var(--color-primary);background:var(--color-primary-dim)}.pos-customer-selector .pos-customer-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-customer-selector .pos-customer-caret{font-size:10px;color:var(--color-text-muted)}.pos-customer-clear{border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;padding:2px 4px;display:inline-flex;align-items:center;border-radius:4px}.pos-customer-clear:hover{background:var(--color-danger-dim);color:var(--color-danger)}.pos-adjustments-row{display:flex;gap:8px;align-items:stretch}.pos-adj-inline{flex:1;display:flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);min-width:0}.pos-adj-inline:focus-within{border-color:var(--color-primary)}.pos-adj-inline>span{font-size:11px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.pos-adj-inline>input{flex:1;min-width:0;border:none;background:transparent;font-size:13px;font-weight:700;color:var(--color-text);font-family:inherit;padding:4px 0;text-align:right;outline:none;-moz-appearance:textfield}.pos-adj-inline>input::-webkit-outer-spin-button,.pos-adj-inline>input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pos-adj-inline>.pos-adj-suffix{font-size:11.5px;color:var(--color-text-muted);font-weight:600}.pos-tendered-row{display:flex;align-items:center;gap:8px;padding:4px 10px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg)}.pos-tendered-row:focus-within{border-color:var(--color-primary)}.pos-tendered-row>label{font-size:11px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.pos-tendered-row>input{flex:1;min-width:0;border:none;background:transparent;font-size:14px;font-weight:700;color:var(--color-text);font-family:inherit;padding:4px 0;text-align:right;outline:none;-moz-appearance:textfield}.pos-tendered-row>input::-webkit-outer-spin-button,.pos-tendered-row>input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pos-tendered-change{font-size:12px;font-weight:700;color:var(--color-info);white-space:nowrap;flex-shrink:0}.pos-tendered-change.pos-tendered-short{color:var(--color-danger)}.pos-adjustments{display:grid;grid-template-columns:1fr 1fr;gap:7px}.pos-adj-field label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:3px}.pos-adj-field .form-input{padding:5px 8px;font-size:13px}.pos-complete-btn{width:100%;padding:15px 0;border:none;border-radius:var(--radius);background:var(--color-primary);color:#fff;font-size:15px;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;letter-spacing:-.01em;box-shadow:0 4px 14px #2563eb59;transition:background .15s,transform .12s,box-shadow .15s;animation:pos-btn-glow 2.5s ease-in-out infinite;margin-top:4px}.pos-complete-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 6px 22px #2563eb80}.pos-complete-btn:active:not(:disabled){transform:translateY(0) scale(.99)}.pos-complete-btn:disabled{opacity:.38;cursor:not-allowed;box-shadow:none;animation:none}.pos-complete-btn.pos-processing{animation:pos-btn-glow .6s ease-in-out infinite;background:var(--color-success)}.pos-pay-methods{display:flex;gap:6px;flex-shrink:0}.pos-pay-methods .pos-pay-btn{flex:1 1 0px;min-width:0}.pos-tendered-block{display:flex;flex-direction:column;gap:5px}.pos-tendered-input{font-size:16px;font-weight:700}.pos-payment-error{color:var(--color-danger);font-size:12px;text-align:center}.pos-pay-btn{flex:1;padding:8px 4px;border-radius:var(--radius-sm);border:1.5px solid var(--color-border);background:transparent;font-size:11px;font-weight:700;cursor:pointer;transition:var(--transition);display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--color-text-secondary)}.pos-pay-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.pos-pay-btn.active{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary)}.pos-discount-chips{display:flex;gap:5px;flex-wrap:wrap}.pos-discount-chip{padding:3px 10px;border-radius:14px;border:1.5px solid var(--color-border);background:transparent;font-size:11px;font-weight:600;cursor:pointer;transition:var(--transition);color:var(--color-text-secondary)}.pos-discount-chip:hover,.pos-discount-chip.active{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-dim)}.pos-change-row{margin-top:6px;padding:8px 12px;background:var(--color-info-dim);border-radius:var(--radius-sm);display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(37,99,235,.15);font-size:13px;font-weight:600}.pos-last-sale{padding-top:8px;border-top:1px solid var(--color-border);margin-top:6px;display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:var(--color-text-muted)}.pos-mode-toggle{display:flex;align-items:center;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:18px;padding:3px;gap:2px}.pos-mode-btn{display:flex;align-items:center;gap:5px;padding:4px 11px;border-radius:14px;border:none;background:transparent;font-size:11.5px;font-weight:600;cursor:pointer;transition:var(--transition);color:var(--color-text-muted)}.pos-mode-btn.active{background:var(--color-card);color:var(--color-text);box-shadow:var(--shadow-sm)}.pos-mode-btn-wholesale.active{background:#f59e0b;color:#fff;box-shadow:0 1px 4px #f59e0b59}.pos-mode-banner{display:flex;align-items:center;gap:8px;padding:6px 18px;font-size:12px;flex-shrink:0}.pos-mode-banner-wholesale{background:#f59e0b1f;color:#b45309;border-bottom:1px solid rgba(245,158,11,.25)}[data-theme=dark] .pos-mode-banner-wholesale{color:#fcd34d;background:#f59e0b14}.pos-quick-btn{display:flex;align-items:center;gap:5px;padding:5px 11px;border-radius:var(--radius-sm);border:1.5px solid var(--color-border);background:transparent;font-size:11.5px;font-weight:600;cursor:pointer;transition:var(--transition);color:var(--color-text-secondary);white-space:nowrap;position:relative}.pos-quick-badge{position:absolute;top:-5px;right:-5px;background:var(--color-warning);color:#fff;border-radius:50%;width:15px;height:15px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center}.pos-modal-overlay{position:fixed;inset:0;background:#00000073;z-index:9000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.pos-modal{background:var(--color-card);border-radius:var(--radius);padding:28px;max-width:400px;width:90%;box-shadow:var(--shadow-lg);animation:pos-slide-up .2s ease-out;border:1px solid var(--color-border)}.pos-held-row{animation:pos-slide-up .18s ease-out;padding:12px 0;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;gap:8px}.pos-held-row:last-child{border-bottom:none}.pos-toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:var(--color-danger);color:#fff;padding:11px 22px;border-radius:var(--radius);font-weight:600;font-size:13px;z-index:9999;animation:pos-toast-in .2s ease-out;white-space:nowrap;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:8px;pointer-events:none}.pos-low-dot{width:7px;height:7px;border-radius:50%;background:var(--color-warning);flex-shrink:0;display:inline-block}.pos-phone-switcher{display:none}.pos-phone-switch-btn{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-muted);font-size:12.5px;font-weight:700;cursor:pointer;transition:var(--transition)}.pos-phone-switch-btn.active{border-color:var(--color-primary);background:var(--color-primary-dim);color:var(--color-primary)}.pos-phone-switch-count{margin-left:auto;font-size:11px;color:var(--color-text-muted)}.pos-phone-switch-btn.active .pos-phone-switch-count{color:inherit}.pos-phone-switch-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}@media(max-width:700px){.pos-topbar{height:auto;padding:10px 12px;flex-direction:column;align-items:stretch;gap:10px}.pos-operator-bar{gap:8px;flex-wrap:wrap;justify-content:space-between}.pos-topbar-actions{flex-wrap:wrap;justify-content:space-between;gap:8px}.pos-quick-btn{flex:1 1 110px;justify-content:center;min-height:34px}.pos-phone-switcher{display:flex;gap:8px;padding:10px 12px;background:var(--color-card);border-bottom:1px solid var(--color-border)}.pos-phone .pos-body{min-height:0}.pos-phone .pos-left,.pos-phone .pos-right{flex:1 1 auto;min-height:0;border:none}.pos-phone .pos-pane-hidden{display:none}.pos-search-bar{padding:10px 12px;gap:8px}.pos-category-tabs{padding:8px 12px}.pos-products-area{padding:10px 12px 14px}.pos-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pos-product-card{padding:10px}.pos-card-name{font-size:11.5px;min-height:30px}.pos-cart-header{padding:10px 12px}.pos-cart-items{min-height:0}.pos-payment-section{padding:12px}.pos-total-amount{font-size:32px}.pos-pay-btn{min-height:52px}.pos-complete-btn{padding:14px 0;font-size:14px}.pos-toast,.pos-oos-toast{width:calc(100vw - 24px);max-width:420px;white-space:normal;padding:12px 14px}}@media(max-width:480px){.pos-topbar{padding:10px;gap:8px}.pos-meta-session,.pos-meta-time,.pos-operator-sep{display:none}.pos-operator-bar{font-size:11px;justify-content:flex-start}.pos-connection-pill{margin-left:auto}.pos-phone-switcher{padding:8px 10px}.pos-phone-switch-btn{padding:9px 10px;font-size:12px}.pos-products-area,.pos-payment-section{padding-left:10px;padding-right:10px}.pos-total-display{padding:12px}.pos-total-amount{font-size:28px}}.pos-quick-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-dim)}.pos-quick-btn:disabled{opacity:.4;cursor:not-allowed}.pos-quick-btn.danger:hover{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-dim)}.pos-hold-badge{position:absolute;top:-5px;right:-5px;background:var(--color-warning);color:#fff;border-radius:10px;font-size:9px;font-weight:800;padding:1px 5px;min-width:16px;text-align:center;pointer-events:none}.pos-last-sale{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--color-text-muted);margin-top:8px;padding:6px 10px;background:var(--color-success-dim);border-radius:var(--radius-sm);border:1px solid var(--color-success)}.pos-warning-bar{font-size:12px;color:var(--color-warning-text, #92400E);background:var(--color-warning-dim, #FEF3C7);border:1px solid var(--color-warning, #D97706);border-radius:var(--radius-sm);padding:6px 12px;display:flex;align-items:center;gap:7px;flex-shrink:0}.pos-held-panel{position:absolute;top:0;right:0;bottom:0;width:320px;background:var(--color-card);border-left:1px solid var(--color-border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:100;animation:pos-slide-panel .2s ease-out}@keyframes pos-slide-panel{0%{transform:translate(100%)}to{transform:translate(0)}}.pos-held-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--color-border);font-size:14px;font-weight:700;color:var(--color-text);flex-shrink:0}.pos-held-list{flex:1;overflow-y:auto;padding:8px 0}.pos-held-item{padding:12px 16px;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background .1s}.pos-held-item:last-child{border-bottom:none}.pos-held-item:hover{background:var(--color-primary-dim)}.pos-held-item-label{font-size:12.5px;font-weight:700;color:var(--color-text);margin-bottom:2px}.pos-held-item-meta{font-size:11px;color:var(--color-text-muted)}.pos-modal-overlay{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.pos-modal{background:var(--color-card);border-radius:var(--radius);padding:28px 24px;max-width:380px;width:100%;box-shadow:var(--shadow-xl);display:flex;flex-direction:column;gap:18px}.pos-modal-title{font-size:17px;font-weight:800;color:var(--color-text)}.pos-modal-body{font-size:14px;color:var(--color-text-secondary);line-height:1.5}.pos-modal-actions{display:flex;gap:10px;justify-content:flex-end}.pos-oos-toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:var(--color-danger);color:#fff;padding:12px 22px;border-radius:var(--radius);font-size:13.5px;font-weight:700;z-index:300;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:8px;animation:pos-toast-in .2s ease-out;white-space:nowrap}@keyframes pos-toast-in{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}@media(max-width:700px){.pos-body{flex-direction:column}.pos-left{flex:1 1 55%;border-right:none;border-bottom:1px solid var(--color-border)}.pos-right{flex:0 0 auto;min-height:320px}}.pos-cta-bar{flex-shrink:0;padding:0 14px 16px;background:var(--color-card)}.pos-cta-bar .pos-complete-btn{margin-top:0}.pos-payment-pane .pos-cta-bar{position:sticky;bottom:0;z-index:2;border-top:1px solid var(--color-border);padding-top:12px;box-shadow:0 -8px 18px #0f172a0a}.pos-payment-pane.pos-payment-pane-compact .pos-payment-section{padding:10px 12px;gap:8px}.pos-payment-pane.pos-payment-pane-compact .pos-payment-scrollable{gap:8px}.pos-payment-pane.pos-payment-pane-compact .pos-total-display{padding:10px 12px;margin-bottom:0;border-radius:10px}.pos-payment-pane.pos-payment-pane-compact .pos-total-breakdown{margin-top:6px}.pos-payment-pane.pos-payment-pane-compact .pos-total-label{font-size:9px;letter-spacing:.1em}.pos-payment-pane.pos-payment-pane-compact .pos-total-amount{font-size:30px}.pos-payment-pane.pos-payment-pane-compact .pos-total-sub-row{font-size:10.5px}.pos-payment-pane.pos-payment-pane-compact .pos-adjustments{gap:6px}.pos-payment-pane.pos-payment-pane-compact .pos-adj-field label{font-size:9.5px;margin-bottom:2px}.pos-payment-pane.pos-payment-pane-compact .pos-adj-field .form-input{padding:4px 7px;font-size:12px}.pos-payment-pane.pos-payment-pane-compact .pos-discount-chip{padding:3px 8px;font-size:10.5px}.pos-payment-pane.pos-payment-pane-compact .pos-pay-btn{min-height:46px;padding:6px 4px;font-size:10.5px;gap:2px}.pos-payment-pane.pos-payment-pane-compact .pos-tendered-input{font-size:14px}.pos-payment-pane.pos-payment-pane-compact .pos-last-sale{margin-top:0;padding:5px 8px;font-size:10.5px}.pos-payment-pane.pos-payment-pane-compact .pos-cta-bar{padding:8px 12px 12px}.pos-payment-pane.pos-payment-pane-compact .pos-complete-btn{padding:13px 0;font-size:14px}.pos-payment-pane.pos-payment-pane-footer .pos-total-amount{font-size:28px}.pos-sheet-handle{display:none;width:36px;height:4px;border-radius:2px;background:var(--color-border);margin:10px auto 2px;flex-shrink:0}@media(max-width:700px){.pos-phone .pos-sheet-handle{display:block}.pos-phone-sheet-backdrop{position:fixed;inset:0;z-index:120;background:#0f172a2e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;padding:0 8px calc(8px + env(safe-area-inset-bottom,0px))}.pos-phone .pos-phone-cart-sheet{width:min(100%,520px);height:min(84dvh,760px);max-height:min(84dvh,760px);display:flex;flex-direction:column;overflow:hidden;border-radius:18px 18px 0 0;box-shadow:0 -6px 28px #0000001f;border-top:1px solid var(--color-border);position:relative}.pos-phone .pos-phone-cart-sheet .pos-cart-items{overflow-y:auto;-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;padding-bottom:10px}.pos-phone .pos-phone-cart-sheet .pos-cart-header{position:sticky;top:0;z-index:5;background:var(--color-card);border-bottom:1px solid var(--color-border);padding-top:6px}.pos-phone .pos-phone-cart-sheet .pos-cta-bar{position:sticky;bottom:0;z-index:5;background:var(--color-card);padding:10px 12px calc(14px + env(safe-area-inset-bottom,0px));border-top:2px solid var(--color-border);box-shadow:0 -4px 16px #00000014}.pos-phone .pos-phone-cart-sheet .pos-cta-bar .pos-complete-btn{margin-top:0}.pos-phone .pos-phone-cart-sheet .pos-payment-section{padding:10px 12px 6px;border-top:none;flex-shrink:0}.pos-phone .pos-phone-cart-sheet .pos-total-display{padding:10px 12px;margin-bottom:8px;border-radius:10px}.pos-phone .pos-phone-cart-sheet .pos-total-label{font-size:9px;letter-spacing:.1em}.pos-phone .pos-phone-cart-sheet .pos-total-amount{font-size:30px}.pos-phone .pos-phone-cart-sheet .pos-total-sub-row{font-size:10.5px}.pos-phone .pos-phone-cart-sheet .pos-adjustments{gap:6px;margin-bottom:6px}.pos-phone .pos-phone-cart-sheet .pos-adj-field label{font-size:9.5px}.pos-phone .pos-phone-cart-sheet .pos-discount-chips{margin-bottom:7px!important}.pos-phone .pos-phone-cart-sheet .pos-discount-chip{padding:3px 8px;font-size:10.5px}.pos-phone .pos-phone-cart-sheet .pos-pay-methods{margin-bottom:7px!important}.pos-phone .pos-phone-cart-sheet .pos-pay-btn{min-height:46px;padding:6px 4px;font-size:10.5px}.pos-phone .pos-phone-cart-sheet .pos-ci-bottom{flex-wrap:wrap;row-gap:6px}.pos-phone .pos-phone-cart-sheet .pos-ci-unit{flex:1 1 100%;order:3}.pos-phone .pos-phone-cart-sheet .pos-ci-total{margin-left:auto}}@media(max-width:480px){.pos-phone-sheet-backdrop{padding-left:0;padding-right:0}.pos-phone .pos-phone-cart-sheet{width:100%;height:min(88dvh,760px);max-height:min(88dvh,760px);border-radius:18px 18px 0 0}.pos-phone .pos-phone-cart-sheet .pos-cart-header,.pos-phone .pos-phone-cart-sheet .pos-cart-item{padding-left:12px;padding-right:12px}}.pos-body{position:relative}.pos-main-search-wrapper{background:var(--color-card);border-bottom:1px solid var(--color-border);padding:10px 18px;flex-shrink:0;z-index:15}.pos-main-search-wrapper .pos-search-bar{border-bottom:none;padding:0;max-width:100%}.pos-main-search-wrapper .pos-search-input{font-size:16px}.pos-browse-btn{display:flex;align-items:center;gap:8px;background:var(--color-primary-dim);color:var(--color-primary);border:1px solid transparent;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.pos-browse-btn:hover,.pos-browse-btn.active{background:var(--color-primary);color:#fff}.pos-drawer-header{display:none}@media(min-width:701px){.pos-products-drawer{position:absolute;top:0;left:0;bottom:0;width:480px;background:var(--color-bg);border-right:1px solid var(--color-border);box-shadow:6px 0 24px #0f172a1f;z-index:100;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .2s}.pos-products-drawer.closed{transform:translate(-100%);opacity:0;pointer-events:none}.pos-products-drawer.open{transform:translate(0);opacity:1;pointer-events:auto}.pos-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--color-border);background:var(--color-card)}.pos-drawer-header span{font-size:13px;color:var(--color-text-secondary)}.pos-drawer-close{background:none;border:none;font-size:20px;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:6px;transition:background .2s,color .2s}.pos-drawer-close:hover{background:var(--color-card-hover);color:var(--color-text)}.pos-checkout-workspace{flex:1 1 100%;grid-template-columns:minmax(360px,1fr) minmax(360px,460px)}}.pos-approval-modal{max-width:420px!important;border-top:4px solid var(--color-danger, #ef4444)!important}.pos-approval-header{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:16px;text-align:center}.pos-approval-icon{color:var(--color-danger, #ef4444);filter:drop-shadow(0 4px 6px rgba(239,68,68,.25));animation:pos-pulse 2s infinite ease-in-out}.pos-approval-title{font-size:19px!important;font-weight:700!important;color:var(--color-text)!important;margin:0!important}.pos-approval-msg{font-size:13.5px!important;color:var(--color-text-secondary, #6b7280)!important;text-align:center!important;line-height:1.5!important;margin-bottom:22px!important}@keyframes pos-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.85}}.cat-page{max-width:960px;margin:0 auto;padding:24px}.cat-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.cat-title{font-size:1.4rem;font-weight:700;color:var(--color-text);margin:0 0 4px}.cat-sub{font-size:.85rem;color:var(--color-muted);margin:0}.cat-info-bar{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;background:#6366f112;border:1px solid rgba(99,102,241,.2);border-radius:8px;font-size:.82rem;color:var(--color-text);margin-bottom:20px}.cat-table-wrap{border:1px solid var(--color-border);border-radius:12px;overflow:hidden}.cat-table{width:100%;border-collapse:collapse;font-size:.875rem}.cat-table thead tr{background:var(--color-bg);border-bottom:1px solid var(--color-border)}.cat-table th{padding:10px 14px;text-align:left;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted)}.cat-table td{padding:10px 14px;border-bottom:1px solid var(--color-border);vertical-align:middle}.cat-table tr:last-child td{border-bottom:none}.cat-row-parent{background:var(--color-card)}.cat-row-child{background:var(--color-bg)}.cat-name-cell{display:flex;align-items:center;gap:8px}.cat-icon{font-size:1.1rem}.cat-name{font-weight:600;color:var(--color-text)}.cat-parent-name{font-size:.8rem;color:var(--color-muted)}.cat-badge-root{font-size:.68rem;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:4px;background:#6366f11f;color:#6366f1}.cat-badge-restricted{font-size:.68rem;font-weight:700;padding:2px 6px;border-radius:4px;background:#ef44441f;color:#ef4444}.cat-badge-inactive{font-size:.68rem;font-weight:600;padding:2px 6px;border-radius:4px;background:var(--color-bg);color:var(--color-muted);border:1px solid var(--color-border)}.cat-actions{display:flex;gap:6px;justify-content:flex-end}.cat-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer;border:1.5px solid transparent;transition:background .15s,opacity .15s}.cat-btn:disabled{opacity:.5;cursor:not-allowed}.cat-btn-primary{background:var(--color-primary, #6366f1);color:#fff;border-color:var(--color-primary, #6366f1)}.cat-btn-primary:hover:not(:disabled){opacity:.85}.cat-btn-ghost{background:none;border-color:var(--color-border);color:var(--color-text)}.cat-btn-ghost:hover{background:var(--color-bg)}.cat-btn-danger{background:#ef44441a;border-color:#ef444459;color:#ef4444}.cat-btn-danger:hover:not(:disabled){background:#ef444433}.cat-modal-backdrop{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:16px}.cat-modal{background:var(--color-card);border:1px solid var(--color-border);border-radius:14px;width:min(520px,95vw);box-shadow:0 20px 60px #00000059;display:flex;flex-direction:column;overflow:hidden}.cat-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 14px;border-bottom:1px solid var(--color-border)}.cat-modal-header h3{margin:0;font-size:1rem;font-weight:700}.cat-modal-body{padding:18px 20px;display:flex;flex-direction:column;gap:14px}.cat-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid var(--color-border)}.cat-field{display:flex;flex-direction:column;gap:5px;flex:1}.cat-field-sm{max-width:110px}.cat-field label{font-size:.78rem;font-weight:600;color:var(--color-text)}.cat-input{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:7px;padding:8px 10px;font-size:.875rem;color:var(--color-text);transition:border-color .15s;width:100%;box-sizing:border-box}.cat-input:focus{outline:none;border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 3px #6366f11f}.cat-field-row{display:flex;gap:12px}.cat-checkbox-label{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--color-text);cursor:pointer}.cat-error{padding:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:7px;font-size:.82rem;color:#ef4444}.cat-confirm-modal{text-align:center;padding:28px 24px 20px;max-width:380px}.cat-confirm-icon{font-size:40px;margin-bottom:10px}.cat-confirm-modal h3{margin:0 0 8px;font-size:1rem;font-weight:700}.cat-confirm-modal p{font-size:.85rem;color:var(--color-muted);margin:0 0 4px}.cat-toast-stack{position:fixed;bottom:24px;right:24px;z-index:300;display:flex;flex-direction:column;gap:8px}.cat-toast{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:.83rem;font-weight:600;background:var(--color-card);border:1px solid var(--color-border);box-shadow:0 4px 16px #0003;animation:cat-toast-in .2s ease;min-width:240px}.cat-toast button{margin-left:auto;background:none;border:none;cursor:pointer;font-size:1rem;color:var(--color-muted)}.cat-toast-success{border-color:#22c55e66;color:#16a34a}.cat-toast-danger{border-color:#ef444466;color:#ef4444}@keyframes cat-toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.cat-loading,.cat-empty{text-align:center;padding:48px;color:var(--color-muted)}.cat-empty p{margin:0 0 8px}.cat-empty button{margin-top:12px}
