.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);z-index:var(--z-toast);pointer-events:none}.toast{display:flex;align-items:flex-start;gap:var(--space-3);min-width:320px;max-width:420px;padding:var(--space-4);background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-enter .2s ease}@keyframes toast-enter{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast-exit{animation:toast-exit .15s ease forwards}@keyframes toast-exit{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}.toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;border-radius:50%}.toast-default .toast-icon{color:var(--info);background-color:var(--info-light)}.toast-success .toast-icon{color:var(--success);background-color:var(--success-light)}.toast-error .toast-icon{color:var(--error);background-color:var(--error-light)}.toast-warning .toast-icon{color:var(--warning);background-color:var(--warning-light)}.toast-info .toast-icon{color:var(--info);background-color:var(--info-light)}.toast-content{flex:1;min-width:0}.toast-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.toast-message{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed)}.toast-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.toast-close:hover{color:var(--text-primary);background-color:var(--bg-hover)}@media (max-width: 480px){.toast-container{left:var(--space-4);right:var(--space-4);bottom:var(--space-4)}.toast{min-width:auto;max-width:none}}.logo{flex-shrink:0}.logo-with-text{display:flex;align-items:center;gap:var(--space-3);text-decoration:none;color:var(--text-primary)}.logo-text-container{display:flex;flex-direction:column;line-height:1.1}.logo-title{font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:.5px;color:var(--text-primary)}.logo-subtitle{font-size:10px;font-weight:var(--font-semibold);letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary)}.product-image-placeholder-logo{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--surface-elevated, #f5f5f5);border-radius:var(--radius-md, 8px)}@media (max-width: 768px){.logo-subtitle{display:none}}.layout-header{min-height:100vh;display:flex;flex-direction:column}.header{background-color:var(--bg-secondary)!important;border-bottom:1px solid var(--border-primary);position:sticky;top:0;z-index:100}.header-top,.header-nav{background-color:var(--bg-secondary)}.header-top{display:flex;align-items:center;justify-content:space-between;padding:1rem 3rem;border-bottom:1px solid var(--border-secondary)}.logo-link{display:flex;align-items:center;gap:1rem;text-decoration:none;color:var(--text-primary)}.logo-text{display:flex;flex-direction:column;line-height:1.2}.logo-name{font-size:1.375rem;font-weight:700;letter-spacing:1.5px;color:var(--text-primary)}.logo-subtitle{font-size:.6875rem;font-weight:400;letter-spacing:1.5px;color:var(--text-tertiary);text-transform:uppercase;margin-top:2px}.header-right{display:flex;align-items:center;gap:.5rem}.icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-hover);border:1px solid var(--border-primary);border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;position:relative}.icon-btn:hover{background-color:var(--bg-active);color:var(--text-primary)}.notification-btn{position:relative}.notification-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;font-size:.625rem;font-weight:600;color:#fff;background-color:var(--error);border-radius:9999px;display:flex;align-items:center;justify-content:center}.nav-badge{min-width:18px;height:18px;padding:0 5px;font-size:.625rem;font-weight:600;color:#fff;background-color:var(--warning-color, #f59e0b);border-radius:9999px;display:flex;align-items:center;justify-content:center;margin-left:.25rem}.status-pill{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background-color:var(--success-light);border:1px solid rgba(16,185,129,.3);border-radius:9999px;font-size:.8125rem;font-weight:500;color:var(--success)}.status-dot{width:8px;height:8px;border-radius:50%;background-color:var(--success)}.user-menu{display:flex;align-items:center;gap:.75rem;padding-left:.75rem;margin-left:.5rem;border-left:1px solid var(--border-primary)}.user-avatar{width:36px;height:36px;border-radius:8px;background-color:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600}.user-info{display:flex;flex-direction:column}.user-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.user-role{font-size:.6875rem;color:var(--text-tertiary)}.logout-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;border-radius:6px;transition:all .15s ease}.logout-btn:hover{color:var(--error);background-color:var(--error-light)}.header-nav{display:flex;align-items:center;gap:.25rem;padding:0 3rem;overflow:visible}.nav-tab,.nav-tab:link,.nav-tab:visited{display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-secondary);text-decoration:none;border-bottom:2px solid transparent;transition:all .15s ease;white-space:nowrap}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active,.nav-tab.active:link,.nav-tab.active:visited{color:var(--accent)!important;border-bottom-color:var(--accent)!important}.nav-tab svg{flex-shrink:0}.layout-header .main-content{flex:1;padding:1.5rem 3rem;background-color:var(--bg-primary);min-height:calc(100vh - 120px)}@media (max-width: 1024px){.header-top{padding:1rem 2rem}.header-nav{padding:0 2rem}.layout-header .main-content{padding:1.5rem 2rem}.nav-tab{padding:.75rem;font-size:.8125rem}.status-pill span:not(.status-dot){display:none}.status-pill{padding:.5rem;min-width:32px;justify-content:center}.user-info{display:none}}@media (max-width: 768px){.header-top{padding:.5rem 1rem}.header-nav{padding:0 .5rem;gap:0}.nav-tab{padding:.625rem .5rem;font-size:.75rem}.nav-tab span,.logo-subtitle{display:none}.layout-header .main-content{padding:1rem}}.nav-dropdown{position:relative}.nav-dropdown-trigger{cursor:pointer;background:transparent;border:none;display:flex;align-items:center;gap:.5rem;padding:.875rem 1rem;color:var(--text-secondary);font-size:.875rem;font-weight:500;border-bottom:2px solid transparent;transition:all .15s ease}.nav-dropdown-trigger:hover{color:var(--text-primary);background:var(--bg-hover)}.nav-dropdown-trigger.active{color:var(--accent);border-bottom-color:var(--accent)}.dropdown-arrow{margin-left:.25rem;transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:100%;left:0;min-width:160px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;z-index:200;padding:.5rem;margin-top:.25rem}.dropdown-item{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;color:var(--text-secondary);font-size:.8125rem;font-weight:500;text-decoration:none;border-radius:var(--radius-sm);transition:all .15s ease}.dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.dropdown-item.active{background:var(--accent-bg);color:var(--accent)}.dropdown-item svg{flex-shrink:0}.dropdown-badge{margin-left:auto;padding:.125rem .5rem;background:var(--error-color);color:#fff;font-size:.6875rem;font-weight:600;border-radius:var(--radius-pill)}@media (max-width: 768px){.nav-dropdown-trigger span,.dropdown-arrow{display:none}.nav-dropdown-menu{right:0;left:auto}}.notification-wrapper{position:relative}.notification-btn.active{background-color:var(--bg-active);color:var(--accent)}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-height:480px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0003;z-index:300;display:flex;flex-direction:column;overflow:hidden}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary)}.notification-header h4{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.notification-count{font-size:.75rem;color:var(--text-secondary);background:var(--bg-hover);padding:.25rem .5rem;border-radius:var(--radius-sm)}.notification-list{flex:1;overflow-y:auto;max-height:360px}.notification-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1rem;color:var(--text-secondary);text-align:center}.notification-empty svg{color:var(--success);margin-bottom:.75rem}.notification-empty p{font-size:.9375rem;font-weight:500;color:var(--text-primary);margin:0 0 .25rem}.notification-empty span{font-size:.8125rem;color:var(--text-tertiary)}.notification-item{display:block;width:100%;padding:.875rem 1rem;background:transparent;border:none;border-bottom:1px solid var(--border-secondary);text-align:left;cursor:pointer;transition:background-color .15s ease}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:var(--bg-hover)}.notification-item-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.notification-group{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#fff;padding:.125rem .375rem;border-radius:var(--radius-sm)}.notification-status{font-size:.6875rem;font-weight:500;padding:.125rem .5rem;border-radius:var(--radius-pill);margin-left:auto}.notification-content{font-size:.8125rem;line-height:1.4;color:var(--text-primary);margin:0 0 .5rem;word-break:break-word}.notification-meta{display:flex;align-items:center;gap:.75rem;font-size:.6875rem;color:var(--text-tertiary)}.notification-author{font-weight:500;color:var(--text-secondary)}.notification-replies{background:var(--bg-tertiary);padding:.125rem .375rem;border-radius:var(--radius-sm)}.notification-footer{padding:.75rem 1rem;border-top:1px solid var(--border-primary);background:var(--bg-tertiary)}.notification-view-all{display:block;width:100%;padding:.5rem;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-md);font-size:.8125rem;font-weight:500;color:var(--accent);cursor:pointer;text-align:center;transition:all .15s ease}.notification-view-all:hover{background:var(--accent);color:#fff;border-color:var(--accent)}@media (max-width: 480px){.notification-dropdown{width:300px;right:-50px}}.landing-page{min-height:100vh;background:var(--background-color, #1a1a1a)}.landing-nav{position:fixed;top:0;left:0;right:0;z-index:50;background:#1a1a1acc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color, #2a2a2a)}.nav-container{max-width:1280px;margin:0 auto;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.nav-logo{display:flex;align-items:center;gap:.75rem}.logo-text{display:flex;flex-direction:column;line-height:1.1}.logo-name{font-size:1.375rem;font-weight:700;letter-spacing:1.5px;color:var(--text-primary, #fff)}.logo-subtitle{font-size:.6875rem;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-tertiary, #666);margin-top:2px}.nav-actions{display:flex;align-items:center;gap:.75rem}.nav-link{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-color, #fff);background:transparent;border:none;cursor:pointer;transition:opacity .15s ease}.nav-link:hover{opacity:.8}.nav-btn-primary{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;color:#fff;background:var(--primary-color, #e07850);border:none;border-radius:.5rem;cursor:pointer;transition:all .15s ease}.nav-btn-primary:hover{opacity:.9;transform:translateY(-1px)}.hero-section{padding:8rem 1.5rem 5rem}.hero-container{max-width:1280px;margin:0 auto}.hero-grid{display:grid;grid-template-columns:1fr;gap:4rem;align-items:center}@media (min-width: 1024px){.hero-grid{grid-template-columns:1fr 1fr}}.hero-content{display:flex;flex-direction:column;gap:2rem}.hero-title{font-size:3rem;font-weight:700;line-height:1.1;color:var(--text-color, #fff)}@media (min-width: 1024px){.hero-title{font-size:3.75rem}}.hero-title-accent{display:block;color:var(--primary-color, #e07850)}.hero-description{font-size:1.25rem;line-height:1.6;color:var(--text-secondary, #888)}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem}.btn-hero-primary{padding:1rem 2rem;font-size:1rem;font-weight:500;color:#fff;background:var(--primary-color, #e07850);border:none;border-radius:.75rem;cursor:pointer;box-shadow:0 4px 14px #e0785066;transition:all .15s ease}.btn-hero-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #e0785080}.btn-hero-secondary{padding:1rem 2rem;font-size:1rem;font-weight:500;color:var(--text-color, #fff);background:var(--surface-color, #2a2a2a);border:1px solid var(--border-color, #3a3a3a);border-radius:.75rem;cursor:pointer;transition:all .15s ease}.btn-hero-secondary:hover{background:var(--hover-color, #333)}.hero-preview{position:relative}.preview-frame{border-radius:1rem;padding:3px;background:linear-gradient(135deg,var(--primary-color, #e07850),#764ba2);box-shadow:0 25px 50px -12px #0006}.preview-window{border-radius:.875rem;overflow:hidden;background:var(--surface-color, #222)}.preview-header{padding:.75rem 1rem;display:flex;align-items:center;gap:.5rem;border-bottom:1px solid var(--border-color, #333)}.preview-dots{display:flex;gap:.375rem}.preview-dots .dot{width:.75rem;height:.75rem;border-radius:50%}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27ca40}.preview-url{margin-left:1rem;font-size:.75rem;color:var(--text-secondary, #666)}.preview-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.preview-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.preview-stat{padding:.75rem;background:var(--background-color, #1a1a1a);border-radius:.5rem;display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.75rem;color:var(--text-secondary, #666)}.stat-value{font-size:1.125rem;font-weight:700;color:var(--text-color, #fff)}.stat-value.accent{color:var(--primary-color, #e07850)}.preview-table{background:var(--background-color, #1a1a1a);border-radius:.5rem;padding:1rem}.preview-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.875rem;font-weight:500;color:var(--text-color, #fff)}.view-all{font-size:.75rem;color:var(--text-secondary, #666)}.preview-table-row{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-top:1px solid var(--border-color, #333)}.preview-table-row:first-of-type{border-top:none}.row-icon{width:2rem;height:2rem;border-radius:.5rem;background:#e0785033}.row-content{flex:1;display:flex;flex-direction:column;gap:.125rem}.row-title{font-size:.875rem;color:var(--text-color, #fff)}.row-sub{font-size:.75rem;color:var(--text-secondary, #666)}.row-badge{padding:.25rem .5rem;font-size:.75rem;font-weight:500;border-radius:.25rem;background:#27ca4026;color:#27ca40}.row-badge.pending{background:#ffbd2e26;color:#ffbd2e}.floating-card{position:absolute;padding:1rem;background:var(--surface-color, #222);border:1px solid var(--border-color, #333);border-radius:.75rem;box-shadow:0 10px 30px #0000004d;display:flex;align-items:center;gap:.75rem}.floating-card.top-right{top:-1rem;right:-1rem}.floating-card.bottom-left{bottom:-1rem;left:-1rem}.floating-emoji{font-size:1.5rem}.floating-text{display:flex;flex-direction:column;gap:.125rem}.floating-title{font-size:.875rem;font-weight:500;color:var(--text-color, #fff)}.floating-title.success{color:#27ca40}.floating-sub{font-size:.75rem;color:var(--text-secondary, #666)}.features-section{padding:5rem 1.5rem;background:var(--surface-color, #222)}.features-container{max-width:1280px;margin:0 auto}.features-header{text-align:center;margin-bottom:4rem}.features-title{font-size:2rem;font-weight:700;color:var(--text-color, #fff);margin-bottom:1rem}@media (min-width: 1024px){.features-title{font-size:2.5rem}}.features-subtitle{font-size:1.125rem;color:var(--text-secondary, #888);max-width:40rem;margin:0 auto}.features-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media (min-width: 768px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.features-grid{grid-template-columns:repeat(3,1fr)}}.feature-card{padding:2rem;background:var(--background-color, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:1rem;transition:transform .2s ease}.feature-card:hover{transform:translateY(-4px)}.feature-icon{width:3rem;height:3rem;border-radius:.75rem;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.feature-icon.orange{background:#e0785026;color:#e07850}.feature-icon.purple{background:#764ba226;color:#9f7aea}.feature-icon.green{background:#27ca4026;color:#27ca40}.feature-icon.yellow{background:#ffbd2e26;color:#ffbd2e}.feature-icon.red{background:#ef444426;color:#ef4444}.feature-icon.blue{background:#3b82f626;color:#3b82f6}.feature-title{font-size:1.25rem;font-weight:600;color:var(--text-color, #fff);margin-bottom:.75rem}.feature-description{font-size:.9375rem;line-height:1.6;color:var(--text-secondary, #888)}.landing-footer{padding:3rem 1.5rem;background:var(--surface-color, #222);border-top:1px solid var(--border-color, #333)}.footer-container{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:1.5rem}@media (min-width: 768px){.footer-container{flex-direction:row;justify-content:space-between}}.footer-logo{display:flex;align-items:center;gap:.75rem}.footer-logo .logo-text{display:flex;flex-direction:column;line-height:1.1}.footer-logo .logo-name{font-size:1rem;font-weight:700;letter-spacing:1.5px}.footer-logo .logo-subtitle{font-size:.5625rem;margin-top:1px}.footer-copyright{font-size:.875rem;color:var(--text-secondary, #666)}.footer-links{display:flex;gap:1.5rem}.footer-links a{font-size:.875rem;color:var(--text-secondary, #666);text-decoration:none;transition:opacity .15s ease}.footer-links a:hover{opacity:.7}@media (max-width: 768px){.hero-title{font-size:2.25rem}.hero-description{font-size:1rem}.preview-stats{grid-template-columns:repeat(2,1fr)}.floating-card,.nav-link{display:none}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#2c3e50,#34495e)}.auth-card{width:100%;max-width:400px;background-color:var(--surface-color);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden}.auth-header{padding:2rem 2rem 1.5rem;text-align:center;background-color:var(--background-color);border-bottom:1px solid var(--border-color)}.auth-header h1{font-size:1.5rem;color:var(--primary-color);margin-bottom:.5rem}.auth-header p{color:var(--text-secondary);font-size:.875rem}.auth-form{padding:2rem}.auth-submit{width:100%;margin-top:.5rem}.auth-footer{padding:1.5rem 2rem;text-align:center;background-color:var(--background-color);border-top:1px solid var(--border-color)}.auth-footer p{color:var(--text-secondary);font-size:.875rem}.auth-footer a{color:var(--secondary-color);text-decoration:none;font-weight:500}.auth-footer a:hover{text-decoration:underline}.auth-divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0;color:var(--text-secondary);font-size:.8125rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background-color:var(--border-color)}.auth-mode-toggle{display:flex;gap:.5rem;padding:1rem 2rem 0}.auth-mode-toggle .mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:var(--surface-secondary, #f5f5f5);border:1px solid var(--border-primary, #e5e7eb);border-radius:var(--radius-sm, 4px);color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.auth-mode-toggle .mode-btn:hover{background:var(--surface-tertiary, #e5e7eb);color:var(--text-primary)}.auth-mode-toggle .mode-btn.active{background:var(--primary, #e85a4f);border-color:var(--primary, #e85a4f);color:#fff}.auth-mode-toggle .mode-btn svg{flex-shrink:0}.pin-input{letter-spacing:.5em;text-align:center;font-size:1.25rem;font-weight:600}.form-hint{margin-top:.5rem;font-size:.75rem;color:var(--text-tertiary)}.staff-hint{color:var(--text-tertiary);font-size:.8125rem}.drilldown-loading .spinner{width:32px;height:32px;border:3px solid var(--border-primary);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.line-chart-container{display:flex;gap:.5rem;background-color:var(--bg-tertiary);border-radius:var(--radius-lg);padding:1.5rem;position:relative}.chart-tooltip{position:absolute;background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:.625rem .875rem;box-shadow:var(--shadow-lg);z-index:100;pointer-events:none;min-width:140px}.chart-tooltip .tooltip-date{font-size:.75rem;font-weight:600;color:var(--text-primary);margin-bottom:.375rem;border-bottom:1px solid var(--border-primary);padding-bottom:.375rem}.chart-tooltip .tooltip-row{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary);padding:.25rem 0}.chart-tooltip .tooltip-row strong{color:var(--text-primary)}.chart-tooltip .tooltip-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.chart-tooltip .tooltip-dot.sales{background-color:#3b82f6}.chart-tooltip .tooltip-dot.stock{background-color:#22c55e}.line-chart-x-axis{display:flex;justify-content:space-between;padding-top:.5rem;font-size:.6875rem;color:var(--text-secondary)}.product-activity-log{background:var(--surface-color);border-radius:12px;padding:1.5rem;border:1px solid var(--border-color)}.product-activity-log.compact{padding:0;background:transparent;border:none}.activity-log-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.activity-log-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.activity-log-list{display:flex;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto}.activity-log-item{display:flex;gap:.75rem;padding:.75rem;background:var(--hover-color);border-radius:8px;transition:all .2s}.activity-log-item:hover{background:var(--border-color)}.activity-icon{flex-shrink:0;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center}.activity-content{flex:1;min-width:0}.activity-summary{color:var(--text-primary);font-size:.875rem;line-height:1.4;margin-bottom:.5rem}.activity-meta{display:flex;align-items:center;gap:1rem;font-size:.75rem;color:var(--text-secondary)}.activity-user,.activity-time,.activity-status{display:flex;align-items:center;gap:.25rem}.activity-status.failed{color:#ef4444}.activity-log-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:2rem;color:var(--text-secondary)}.activity-log-loading .spin{animation:spin 1s linear infinite}.activity-log-error{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;font-size:.875rem}.activity-log-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem;color:var(--text-secondary)}.activity-log-empty svg{opacity:.5}.activity-log-empty p{margin:0;font-size:.875rem}@media (max-width: 640px){.activity-meta{flex-wrap:wrap;gap:.5rem}}.activity-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1rem}.activity-stats .stat-card{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:.35rem 1rem;display:flex;flex-direction:row;align-items:center;gap:.65rem;transition:all .2s}.activity-stats .stat-card:hover{border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 2px 8px #ff6b351a}.activity-stats .stat-icon{flex-shrink:0;width:20px;height:20px;border-radius:4px;display:flex;align-items:center;justify-content:center}.activity-stats .stat-content{flex:1;min-width:0;display:flex;align-items:baseline;gap:.5rem}.activity-stats .stat-value{font-size:1.125rem;font-weight:700;color:var(--text-primary);line-height:1}.activity-stats .stat-label{font-size:.625rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}@media (max-width: 768px){.activity-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.activity-stats{grid-template-columns:1fr}.stat-value{font-size:1.125rem}}.dashboard{width:100%}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem}.dashboard-greeting h1{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.dashboard-subtitle{font-size:.9375rem;color:var(--text-secondary)}.dashboard-actions{display:flex;align-items:center;gap:1rem}.date-filter{display:flex;align-items:center;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.filter-btn{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .2s ease}.sync-btn{border-radius:var(--radius-sm)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}.stat-card{background-color:var(--surface-color);border:1px solid var(--stat-card-border);border-radius:var(--radius);padding:1.5rem;transition:all .2s ease;display:flex;flex-direction:column;align-items:flex-start;min-height:120px}.stat-card:hover{border-color:var(--primary-color)}.stat-label{font-size:.8125rem;font-weight:600;letter-spacing:.5px;color:var(--text-secondary);text-transform:uppercase;margin-bottom:.75rem}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:auto;line-height:1.1;padding-bottom:.75rem}.stat-value.warning{color:var(--warning-color)}.stat-change{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;margin-top:auto}.stat-change.positive{color:var(--success-color)}.stat-change.negative{color:var(--danger-color)}.stat-change.neutral{color:var(--text-secondary)}.stat-change svg{flex-shrink:0}.stat-value.top-product-name{font-size:1rem;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recent-section{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius);margin-top:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.section-header h2{font-size:1rem;font-weight:600;color:var(--text-primary)}.view-all-link{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:500;color:var(--primary-color);text-decoration:none;transition:opacity .2s ease}.view-all-link:hover{opacity:.8}.data-table{overflow-x:auto}.data-table table{width:100%;border-collapse:collapse}.data-table th{padding:.875rem 1.5rem;font-size:.6875rem;font-weight:600;letter-spacing:.5px;color:var(--text-secondary);text-transform:uppercase;text-align:left;background-color:var(--surface-elevated);border-bottom:1px solid var(--border-color)}.data-table td{padding:1rem 1.5rem;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover{background-color:var(--nav-hover-bg)}.data-table tr.clickable-row{cursor:pointer;transition:background-color .15s ease}.data-table tr.clickable-row:hover{background-color:var(--nav-hover-bg)}.id-cell{font-weight:500;color:var(--text-secondary)}.actions-cell{display:flex;gap:.5rem;justify-content:flex-end}.table-action-btn{padding:.375rem .75rem;font-size:.75rem;font-weight:500;color:var(--text-secondary);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;transition:all .2s ease}.table-action-btn:hover{color:var(--text-primary);background-color:var(--nav-hover-bg)}.table-action-btn.delete:hover{color:var(--danger-color);border-color:var(--danger-color);background-color:#ef44441a}.empty-state{text-align:center;padding:4rem 2rem}.empty-state-icon{color:var(--text-muted);margin-bottom:1rem}.empty-state h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.empty-state p{color:var(--text-secondary);margin-bottom:1.5rem;max-width:320px;margin-left:auto;margin-right:auto}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background-color:var(--surface-color);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:440px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h2{font-size:1.125rem;font-weight:600;margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:none;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s ease}.modal-close:hover{color:var(--text-primary);background-color:var(--nav-hover-bg)}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-color);background-color:var(--surface-elevated)}.section-header-right{display:flex;align-items:center;gap:1rem}.live-indicator{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:500;color:#10b981}.live-dot{width:8px;height:8px;border-radius:50%;background-color:#10b981;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.loading-state{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.loading-state p{margin-top:1rem}.orders-list{padding:.5rem}.order-card{background-color:var(--surface-elevated);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:.5rem;overflow:hidden;transition:border-color .2s ease}.order-card:hover{border-color:#fff3}.order-card:last-child{margin-bottom:0}.order-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;transition:background-color .15s ease}.order-header:hover{background-color:var(--nav-hover-bg)}.order-main{display:flex;flex-direction:column;gap:.25rem}.order-number{display:flex;align-items:center;gap:.5rem;font-weight:600;color:var(--text-primary);font-size:.9375rem}.order-number svg{color:var(--text-secondary)}.order-meta{display:flex;align-items:center;gap:.75rem;font-size:.8125rem;color:var(--text-secondary)}.order-time{color:var(--text-muted)}.order-right{display:flex;align-items:center;gap:1rem;text-align:right}.order-amount{font-weight:600;font-size:1rem;color:var(--text-primary)}.order-items-count{font-size:.75rem;color:var(--text-secondary)}.expand-icon{color:var(--text-secondary);transition:transform .2s ease}.expand-icon.expanded{transform:rotate(180deg)}.order-details{border-top:1px solid var(--border-color);background-color:var(--surface-color)}.order-items{padding:.75rem 1.25rem}.order-item{display:flex;align-items:center;gap:1rem;padding:.625rem 0;border-bottom:1px solid var(--border-color)}.order-item:last-child{border-bottom:none}.item-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.item-title{font-size:.875rem;color:var(--text-primary);font-weight:500}.item-variant{font-size:.75rem;color:var(--text-secondary)}.item-sku{font-size:.6875rem;color:var(--text-muted)}.item-qty{font-size:.8125rem;color:var(--text-secondary);font-weight:500;min-width:40px;text-align:center}.item-price{font-size:.875rem;font-weight:500;color:var(--text-primary);min-width:70px;text-align:right}.order-footer{display:flex;justify-content:flex-end;padding:.75rem 1.25rem;border-top:1px solid var(--border-color);background-color:var(--surface-elevated)}.order-status{display:inline-block;padding:.25rem .625rem;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.order-status.paid{background-color:#10b98126;color:#10b981}.order-status.pending{background-color:#f59e0b26;color:#f59e0b}.order-status.refunded{background-color:#ef444426;color:#ef4444}.order-status.authorized{background-color:#3b82f626;color:#3b82f6}.order-status.partially_paid,.order-status.partially_refunded{background-color:#8b5cf626;color:#8b5cf6}.sync-timestamp{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-muted)}.sync-timestamp svg{opacity:.7}.refresh-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.refresh-btn:hover:not(:disabled){color:var(--text-primary);background-color:var(--nav-hover-bg);border-color:var(--text-secondary)}.refresh-btn svg.spinning{animation:spin 1s linear infinite}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dashboard-header,.dashboard-actions{flex-direction:column;align-items:stretch}.date-filter{justify-content:center}.stats-grid{grid-template-columns:1fr}.data-table th,.data-table td{padding:.75rem 1rem}.actions-cell{flex-direction:column}}.top-products-table{margin-top:0}.top-products-table .photo-col{width:56px;padding:.5rem .75rem .5rem 1rem}.top-products-table .product-name-col{font-weight:500;padding-left:1rem}.top-products-table .sku-col{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-secondary)}.top-products-table .profit-col{color:var(--success-color);font-weight:500}.product-thumbnail-wrapper{position:relative;display:inline-block}.product-thumbnail{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-xs);background-color:var(--surface-secondary);cursor:pointer;transition:transform .15s ease}.product-thumbnail-placeholder{width:40px;height:40px;border-radius:var(--radius-xs);background-color:var(--surface-secondary);border:1px dashed var(--border-color)}.photo-col .product-image-placeholder-logo{width:40px;height:40px;border-radius:var(--radius-xs)}.product-thumbnail-expanded{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:8px;z-index:100;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;pointer-events:none}.product-thumbnail-expanded img{width:200px;height:200px;object-fit:cover;border-radius:var(--radius-sm);box-shadow:0 8px 24px #00000040;border:2px solid var(--surface-color)}.product-thumbnail-wrapper:hover .product-thumbnail-expanded{opacity:1;visibility:visible}.product-thumbnail-wrapper:hover .product-thumbnail{transform:scale(1.05)}.activity-log-section{margin-top:2rem}@media (max-width: 768px){.activity-log-section{margin-top:1.5rem}}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-family);font-weight:var(--font-medium);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);overflow:hidden;white-space:nowrap;text-decoration:none}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn:hover:not(:disabled):before{left:100%}.btn-sm{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}.btn-md{height:38px;padding:0 var(--space-4);font-size:var(--text-base)}.btn-lg{height:44px;padding:0 var(--space-6);font-size:var(--text-md)}.btn-primary{background-color:var(--accent);color:var(--text-inverse)}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-hover);border-color:var(--text-tertiary)}.btn-secondary:before{background:linear-gradient(90deg,transparent,rgba(0,0,0,.03),transparent)}.btn-ghost{background-color:transparent;color:var(--text-primary)}.btn-ghost:hover:not(:disabled){background-color:var(--bg-hover)}.btn-ghost:before{display:none}.btn-success{background-color:var(--success);color:var(--text-inverse)}.btn-success:hover:not(:disabled){background-color:#16a34a}.btn-error{background-color:var(--error);color:var(--text-inverse)}.btn-error:hover:not(:disabled){background-color:#dc2626}.btn-full{width:100%}.btn-loading .btn-text{opacity:0}.btn-spinner{position:absolute;width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-icon svg{width:16px;height:16px}.btn-lg .btn-icon svg{width:18px;height:18px}.btn-sm .btn-icon svg{width:14px;height:14px}.input-wrapper{display:flex;flex-direction:column;gap:var(--space-1)}.input-full{width:100%}.input-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.input-container{position:relative;display:flex;align-items:center}.input{width:100%;font-family:var(--font-family);font-size:var(--text-base);color:var(--text-primary);background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);transition:all var(--transition-base)}.input::placeholder{color:var(--text-tertiary)}.input:hover:not(:disabled){border-color:var(--text-tertiary)}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.input:disabled{opacity:.5;cursor:not-allowed;background-color:var(--bg-tertiary)}.input-sm{height:32px;padding:0 var(--space-3);font-size:var(--text-sm)}.input-md{height:40px;padding:0 var(--space-3)}.input-lg{height:48px;padding:0 var(--space-4);font-size:var(--text-md)}.input-error{border-color:var(--error)}.input-error:focus{border-color:var(--error);box-shadow:0 0 0 3px var(--error-light)}.input-with-icon-left{padding-left:40px}.input-with-icon-right{padding-right:40px}.input-icon{position:absolute;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);pointer-events:none}.input-icon svg{width:18px;height:18px}.input-icon-left{left:var(--space-3)}.input-icon-right{right:var(--space-3)}.input-helper{font-size:var(--text-xs);color:var(--text-secondary)}.input-helper-error{color:var(--error)}.card{background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);transition:all var(--transition-base)}.card-interactive{cursor:pointer}.card-interactive:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.card-hover:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.card-padding-none{padding:0}.card-padding-sm{padding:var(--space-3)}.card-padding-md{padding:var(--space-5)}.card-padding-lg{padding:var(--space-6)}.card-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-primary)}.card-body{padding:var(--space-5)}.card-body-no-padding{padding:0}.card-footer{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-primary);background-color:var(--bg-tertiary);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.stat-card{background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);padding:var(--space-5);transition:all var(--transition-base)}.stat-card:hover{border-color:var(--accent)}.stat-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-2)}.stat-card-label{font-size:11px;font-weight:var(--font-semibold);letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary)}.stat-card-icon{display:flex;align-items:center;justify-content:center;color:var(--text-tertiary)}.stat-card-icon svg{width:18px;height:18px}.stat-card-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:var(--leading-tight);margin-bottom:var(--space-2)}.stat-card-value-warning{color:var(--warning)}.stat-card-change{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-medium)}.stat-card-change svg{flex-shrink:0}.stat-card-change-positive{color:var(--success)}.stat-card-change-negative{color:var(--error)}.stat-card-change-neutral{color:var(--text-secondary)}.stat-card-change-warning{color:var(--warning)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);font-weight:var(--font-medium);border-radius:var(--radius-full);white-space:nowrap;transition:all var(--transition-fast)}.badge-sm{height:20px;padding:0 var(--space-2);font-size:11px}.badge-md{height:24px;padding:0 var(--space-3);font-size:var(--text-xs)}.badge-default{background-color:var(--bg-tertiary);color:var(--text-secondary)}.badge-success{background-color:var(--success-medium);color:var(--success)}.badge-warning{background-color:var(--warning-medium);color:var(--warning)}.badge-error{background-color:var(--error-medium);color:var(--error)}.badge-accent{background-color:var(--accent-light);color:var(--accent)}.badge-dot{width:6px;height:6px;border-radius:50%;background-color:currentColor}.badge-remove{display:flex;align-items:center;justify-content:center;margin-left:var(--space-1);margin-right:calc(var(--space-1) * -1);padding:2px;background:transparent;border:none;border-radius:50%;color:currentColor;cursor:pointer;opacity:.6;transition:opacity var(--transition-fast)}.badge-remove:hover{opacity:1}.badge-remove svg{width:12px;height:12px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background-color:#00000080;z-index:var(--z-modal);animation:modal-fade-in .2s ease}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}.modal{display:flex;flex-direction:column;max-height:calc(100vh - var(--space-8));background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);animation:modal-slide-in .2s ease;overflow:hidden}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-sm{width:100%;max-width:360px}.modal-md{width:100%;max-width:480px}.modal-lg{width:100%;max-width:640px}.modal-xl{width:100%;max-width:800px}.modal-full{width:calc(100vw - var(--space-8));height:calc(100vh - var(--space-8));max-width:none;max-height:none}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-primary);flex-shrink:0}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.modal-close:hover{background-color:var(--bg-hover);color:var(--text-primary)}.modal-body{flex:1;padding:var(--space-6);overflow-y:auto}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-primary);background-color:var(--bg-tertiary);flex-shrink:0}[data-theme=dark] .modal-overlay{background-color:#000000b3}.table-wrapper{width:100%;overflow-x:auto;background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl)}.table{width:100%;border-collapse:collapse;font-size:var(--text-base)}.table-head{background-color:var(--bg-tertiary)}.table-th{padding:var(--space-3) var(--space-5);font-size:11px;font-weight:var(--font-semibold);letter-spacing:.5px;text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-primary);white-space:nowrap}.table-th-left{text-align:left}.table-th-center{text-align:center}.table-th-right{text-align:right}.table-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast)}.table-th-sortable:hover{color:var(--text-primary)}.table-th-content{display:inline-flex;align-items:center;gap:var(--space-1)}.table-sort-icon{display:flex;align-items:center}.table-body .table-row:last-child .table-td{border-bottom:none}.table-td{padding:var(--space-4) var(--space-5);color:var(--text-primary);border-bottom:1px solid var(--border-primary)}.table-td-left{text-align:left}.table-td-center{text-align:center}.table-td-right{text-align:right}.table-hover .table-row:hover{background-color:var(--bg-hover)}.table-row-selected{background-color:var(--accent-light)}.table-hover .table-row-selected:hover{background-color:var(--accent-medium)}.table-striped .table-body .table-row:nth-child(2n){background-color:var(--bg-tertiary)}.table-compact .table-th{padding:var(--space-2) var(--space-4)}.table-compact .table-td{padding:var(--space-3) var(--space-4)}.table-sticky .table-head{position:sticky;top:0;z-index:10}.table-empty{padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-secondary)}.table-empty-icon{margin-bottom:var(--space-4);color:var(--text-tertiary)}.table-empty-title{font-size:var(--text-md);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.table-empty-description{font-size:var(--text-sm);color:var(--text-secondary)}.tabs{display:flex;flex-direction:column}.tab-list{display:flex;align-items:center;gap:var(--space-1)}.tabs-full .tab-list{width:100%}.tab{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-family);font-weight:var(--font-medium);color:var(--text-secondary);background:transparent;border:none;cursor:pointer;white-space:nowrap;transition:all var(--transition-base)}.tabs-full .tab{flex:1}.tab:hover:not(:disabled){color:var(--text-primary)}.tab-active{color:var(--accent)}.tab-disabled{opacity:.5;cursor:not-allowed}.tab-icon{display:flex;align-items:center;justify-content:center}.tab-icon svg{width:16px;height:16px}.tabs-sm .tab{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.tabs-md .tab{padding:var(--space-3) var(--space-4);font-size:var(--text-base)}.tabs-lg .tab{padding:var(--space-4) var(--space-5);font-size:var(--text-md)}.tabs-underline .tab-list{border-bottom:1px solid var(--border-primary);gap:0}.tabs-underline .tab{margin-bottom:-1px;border-bottom:2px solid transparent;border-radius:0}.tabs-underline .tab-active{border-bottom-color:var(--accent)}.tabs-underline .tab:hover:not(:disabled):not(.tab-active){border-bottom-color:var(--border-primary)}.tabs-pills .tab-list{background-color:var(--bg-tertiary);padding:var(--space-1);border-radius:var(--radius-lg)}.tabs-pills .tab{border-radius:var(--radius-md)}.tabs-pills .tab-active{background-color:var(--bg-secondary);color:var(--text-primary);box-shadow:var(--shadow-sm)}.tabs-enclosed .tab-list{border-bottom:1px solid var(--border-primary)}.tabs-enclosed .tab{border:1px solid transparent;border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;margin-bottom:-1px}.tabs-enclosed .tab-active{background-color:var(--bg-secondary);border-color:var(--border-primary);color:var(--text-primary)}.tab-panels{margin-top:var(--space-4)}.tab-panel{animation:tab-panel-enter .2s ease}@keyframes tab-panel-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3)}.loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background-color:rgba(var(--bg-primary),.8);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50}[data-theme=dark] .loading-overlay{background-color:#0a0a0acc}[data-theme=light] .loading-overlay{background-color:#fafafacc}.loading-spinner{border:2px solid var(--border-primary);border-top-color:var(--accent);border-radius:50%;animation:loading-spin .7s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}.loading-spinner-sm{width:16px;height:16px;border-width:2px}.loading-spinner-md{width:24px;height:24px;border-width:2px}.loading-spinner-lg{width:36px;height:36px;border-width:3px}.loading-spinner-xl{width:48px;height:48px;border-width:3px}.loading-text{font-size:var(--text-sm);color:var(--text-secondary)}.loading-dots{display:flex;align-items:center;gap:var(--space-1)}.loading-dot{background-color:var(--accent);border-radius:50%;animation:loading-dot-bounce 1.4s ease-in-out infinite both}.loading-dot:nth-child(1){animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}@keyframes loading-dot-bounce{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.loading-dots-sm .loading-dot{width:4px;height:4px}.loading-dots-md .loading-dot{width:6px;height:6px}.loading-dots-lg .loading-dot{width:8px;height:8px}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-hover) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{border-radius:var(--radius-sm)}.skeleton-circular{border-radius:50%}.skeleton-rectangular{border-radius:var(--radius-md)}.planogram-editor{display:flex;flex-direction:column;height:calc(100vh - 120px);margin:-1.5rem -3rem;background-color:var(--bg-primary);--grid-line: rgba(0, 0, 0, .05);--grid-line-major: rgba(0, 0, 0, .1)}[data-theme=dark] .planogram-editor{--grid-line: rgba(255, 255, 255, .05);--grid-line-major: rgba(255, 255, 255, .1)}.editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-primary);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-primary);gap:1rem;flex-shrink:0}.toolbar-left,.toolbar-center,.toolbar-right{display:flex;align-items:center;gap:.75rem}.store-name-input{font-size:1rem;font-weight:600;border:none;background:transparent;padding:.5rem .75rem;color:var(--text-primary);min-width:180px;border-radius:var(--radius-md)}.store-name-input:hover{background-color:var(--bg-hover)}.store-name-input:focus{outline:none;background-color:var(--bg-tertiary)}.tool-toggle{display:flex;align-items:center;background-color:var(--bg-tertiary);border-radius:var(--radius-md);padding:.125rem;gap:.125rem}.tool-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.tool-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.tool-btn.active{background-color:var(--accent);color:#fff}.tool-btn svg{flex-shrink:0}.scale-controls{display:flex;align-items:center;gap:.25rem;background-color:var(--bg-tertiary);border-radius:var(--radius-md);padding:.25rem}.scale-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-secondary);font-size:1rem;font-weight:600;border-radius:var(--radius-sm);cursor:pointer}.scale-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.scale-display{font-size:.75rem;font-weight:500;color:var(--text-secondary);min-width:30px;text-align:center}.toolbar-info{font-size:.75rem;color:var(--text-tertiary)}.date-filter .filter-btn{padding:.25rem .5rem;font-size:.6875rem;font-weight:600;border:none;border-radius:var(--radius-sm);background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.date-filter .filter-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.date-filter .filter-btn.active{background-color:var(--accent);color:#fff}.feedback-toast{position:fixed;top:80px;left:50%;transform:translate(-50%);background-color:var(--bg-elevated);color:var(--text-primary);padding:.75rem 1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;font-weight:500;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.editor-main{display:flex;flex:1;overflow:hidden}.editor-sidebar{width:280px;background-color:var(--bg-secondary);border-right:1px solid var(--border-primary);display:flex;flex-direction:column;flex-shrink:0}.sidebar-tabs{display:flex;border-bottom:1px solid var(--border-primary)}.sidebar-tab{flex:1;padding:.75rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;position:relative}.sidebar-tab:hover{color:var(--text-primary);background-color:var(--bg-hover)}.sidebar-tab.active{color:var(--accent)}.sidebar-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background-color:var(--accent)}.sidebar-content{flex:1;overflow-y:auto}.panel-content{padding:1rem}.panel-content h4{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.fixture-buttons{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.fixture-add-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:var(--bg-tertiary);border:none;border-left:3px solid;border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--text-primary);font-size:.875rem;transition:all .15s ease}.fixture-add-btn:hover{background-color:var(--bg-hover);transform:translate(2px)}.fixture-color{width:16px;height:16px;border-radius:4px;flex-shrink:0}.selected-info{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-primary)}.info-card{background-color:var(--bg-tertiary);border-radius:var(--radius-md);padding:.75rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.8125rem}.info-row span:first-child{color:var(--text-secondary)}.info-row span:last-child{color:var(--text-primary);font-weight:500}.info-row input{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:.25rem .5rem;color:var(--text-primary);font-size:.8125rem;width:140px}.info-row input:focus{outline:none;border-color:var(--accent)}.rotation-controls{display:flex;align-items:center;gap:.5rem}.rotate-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:1rem;cursor:pointer;transition:all .15s ease}.rotate-btn:hover{background-color:var(--accent);color:#fff;border-color:var(--accent)}.rotation-value{font-size:.8125rem;font-weight:500;color:var(--text-primary);min-width:36px;text-align:center}.button-row{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-secondary)}.button-row .btn{flex:1}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.add-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;cursor:pointer}.add-btn:hover{background-color:var(--accent-hover)}.sections-list{display:flex;flex-direction:column;gap:.5rem}.section-card{background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:.75rem;cursor:pointer;transition:all .15s ease}.section-card:hover{border-color:var(--accent)}.section-card.selected{border-color:var(--accent);background-color:var(--accent-light)}.section-card-header{display:flex;justify-content:space-between;align-items:center}.section-name{font-weight:500;color:var(--text-primary)}.delete-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-tertiary);font-size:1rem;cursor:pointer;border-radius:var(--radius-sm)}.delete-btn:hover{background-color:var(--error-light);color:var(--error)}.section-dims{font-size:.6875rem;color:var(--text-tertiary);margin-top:.25rem}.section-dims-inputs{display:flex;align-items:center;gap:.25rem;margin-top:.5rem}.dim-group{display:flex;align-items:center;gap:.125rem}.dim-group input{width:40px;padding:.25rem;background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.6875rem;text-align:center}.dim-group input:focus{outline:none;border-color:var(--accent)}.dim-group span{font-size:.625rem;color:var(--text-tertiary);font-weight:500}.dim-separator{font-size:.625rem;color:var(--text-tertiary)}.section-name-input{background:transparent;border:none;font-weight:500;color:var(--text-primary);font-size:.875rem;width:100%;padding:.125rem 0;cursor:pointer}.section-name-input:hover{background-color:var(--bg-hover);border-radius:var(--radius-sm);padding:.125rem .25rem;margin:0 -.25rem;width:calc(100% + .5rem)}.section-name-input:focus{outline:none;background-color:var(--bg-secondary);border-radius:var(--radius-sm);padding:.125rem .25rem;margin:0 -.25rem;width:calc(100% + .5rem)}.dimensions-row .dimension-input{display:flex;align-items:center;gap:.25rem}.dimensions-row .dimension-input input{width:60px;padding:.25rem .5rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.8125rem;text-align:right}.dimensions-row .dimension-input input:focus{outline:none;border-color:var(--accent)}.dimensions-row .dimension-input .unit{font-size:.75rem;color:var(--text-secondary)}.rows-container{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-secondary)}.rows-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.6875rem;color:var(--text-secondary);text-transform:uppercase}.add-btn-small{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.75rem;cursor:pointer;color:var(--text-secondary)}.add-btn-small:hover{background-color:var(--accent);border-color:var(--accent);color:#fff}.row-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background-color:var(--bg-secondary);border-radius:var(--radius-sm);margin-bottom:.25rem;cursor:pointer;font-size:.75rem}.row-item:hover{background-color:var(--bg-hover)}.row-item.selected{background-color:var(--accent);color:#fff}.row-item.selected .row-count{color:#fffc}.row-name{flex:1;font-weight:500}.row-count{color:var(--text-tertiary)}.delete-btn-small{width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-tertiary);font-size:.875rem;cursor:pointer;border-radius:2px;opacity:0}.row-item:hover .delete-btn-small{opacity:1}.row-item.selected .delete-btn-small{color:#fffc}.delete-btn-small:hover{background-color:var(--error-light);color:var(--error)}.empty-state{text-align:center;padding:2rem 1rem;color:var(--text-secondary)}.empty-state p{font-size:.875rem;margin-bottom:1rem}.scan-form{display:flex;gap:.5rem;margin-bottom:1rem}.scan-input{flex:1;padding:.75rem;background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem}.scan-input:focus{outline:none;border-color:var(--accent)}.scan-target{display:flex;align-items:center;gap:.5rem;padding:.75rem;background-color:var(--bg-tertiary);border-radius:var(--radius-md);margin-bottom:1rem}.scan-target .label{font-size:.75rem;color:var(--text-secondary)}.target-info{font-size:.8125rem;font-weight:500;color:var(--accent)}.no-target{font-size:.8125rem;color:var(--text-tertiary);font-style:italic}.sticky-mode{margin-bottom:1rem}.sticky-mode label{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-primary);cursor:pointer}.sticky-mode input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.sticky-mode .hint{font-size:.6875rem;color:var(--text-tertiary);margin-top:.25rem;margin-left:1.5rem}.quick-rows{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.quick-rows .label{font-size:.6875rem;color:var(--text-secondary);width:100%;margin-bottom:.25rem}.quick-row-btn{padding:.5rem .75rem;background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.75rem;color:var(--text-secondary);cursor:pointer}.quick-row-btn:hover{border-color:var(--accent);color:var(--text-primary)}.quick-row-btn.active{background-color:var(--accent);border-color:var(--accent);color:#fff}.canvas-container{flex:1;overflow:auto;background-color:var(--bg-tertiary);padding:1rem;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.canvas-container.hand-mode{cursor:grab}.canvas-container.panning{cursor:grabbing;-webkit-user-select:none;user-select:none}.canvas-container.selecting{cursor:crosshair;-webkit-user-select:none;user-select:none}.selection-box{position:absolute;background-color:#e85a4f1a;border:2px dashed var(--accent);pointer-events:none;z-index:1000}.planogram-canvas{position:relative;background-color:var(--bg-primary);box-shadow:var(--shadow-lg);border-radius:var(--radius-md)}.canvas-grid{position:absolute;top:0;left:0;pointer-events:none}.canvas-fixture{position:absolute;border-radius:8px;cursor:move;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 8px #00000026;transition:box-shadow .15s ease}.canvas-fixture:hover{box-shadow:0 4px 16px #0003}.canvas-fixture.selected{box-shadow:0 0 0 2px var(--accent),var(--shadow-md)}.canvas-fixture.dragging{opacity:.9;cursor:grabbing;z-index:100}.fixture-content{display:block;overflow:hidden;width:100%;height:100%}.fixture-header{display:inline-block;background-color:#0009;border-radius:4px;color:#fff;font-size:11px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.4);letter-spacing:.2px;white-space:nowrap;max-width:calc(100% - 8px)}.fixture-body{flex:1;padding:4px 2px 2px;display:flex;flex-direction:column;gap:2px;overflow:hidden}.fixture-section{background-color:#ffffff26;border-radius:4px;padding:4px;cursor:pointer;min-height:40px}.fixture-section:hover{background-color:#ffffff40}.fixture-section.selected{background-color:#e85a4f4d;box-shadow:inset 0 0 0 1px var(--accent)}.section-label{font-size:.5625rem;font-weight:600;color:#fff;opacity:.9;margin-bottom:2px}.section-rows{display:flex;flex-direction:column;gap:2px}.section-row{display:flex;align-items:center;gap:4px;padding:2px 4px;background-color:#ffffff1a;border-radius:2px;cursor:pointer}.section-row:hover{background-color:#fff3}.section-row.selected{background-color:var(--accent)}.row-label{font-size:.5rem;color:#fff;opacity:.8}.row-products{display:flex;gap:2px;align-items:center}.product-dot{width:6px;height:6px;background-color:#fff9;border-radius:50%}.row-products .more{font-size:.4375rem;color:#fff;opacity:.7}.no-sections{display:flex;align-items:center;justify-content:center;flex:1}.no-sections button{padding:.5rem .75rem;background-color:#fff3;border:1px dashed rgba(255,255,255,.4);border-radius:var(--radius-sm);color:#fff;font-size:.625rem;cursor:pointer}.no-sections button:hover{background-color:#ffffff4d}.fixture-profit{display:flex;align-items:baseline;justify-content:center;height:100%;gap:2px}.fixture-profit .profit-value{font-size:16px;font-weight:700;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5);line-height:1}.fixture-profit .profit-label{font-size:10px;color:#ffffffe6;font-weight:500;text-shadow:0 1px 2px rgba(0,0,0,.4)}.resize-handle{position:absolute;width:10px;height:10px;background-color:var(--accent);border:2px solid white;border-radius:2px}.resize-handle.nw{top:-5px;left:-5px;cursor:nwse-resize}.resize-handle.ne{top:-5px;right:-5px;cursor:nesw-resize}.resize-handle.sw{bottom:-5px;left:-5px;cursor:nesw-resize}.resize-handle.se{bottom:-5px;right:-5px;cursor:nwse-resize}.canvas-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--text-tertiary)}.canvas-empty p{font-size:.875rem}.editor-footer{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background-color:var(--bg-secondary);border-top:1px solid var(--border-primary);font-size:.6875rem;color:var(--text-tertiary);flex-shrink:0}@media (max-width: 1024px){.editor-sidebar{width:240px}}@media (max-width: 768px){.planogram-editor{height:calc(100vh - 56px - 2rem);margin:-1rem}.editor-sidebar{width:200px}.toolbar-info{display:none}}.products-page{width:100%}.products-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.products-header h1{margin-bottom:.25rem}.products-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.products-search{width:100%;max-width:300px}.cache-info{display:flex;align-items:center;gap:.75rem}.cache-label{font-size:.8125rem;color:var(--text-secondary)}.refresh-btn{padding:.375rem .75rem;font-size:.75rem;font-weight:500;background-color:transparent;color:var(--text-tertiary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.refresh-btn:hover:not(:disabled){background-color:var(--bg-hover);color:var(--text-primary)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem}.product-card{display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.product-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.product-image{aspect-ratio:1;overflow:hidden;background-color:var(--background-color)}.product-image img{width:100%;height:100%;object-fit:cover}.product-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);font-size:.875rem}.product-card .card-body{flex:1;display:flex;flex-direction:column}.product-title{font-size:.9375rem;font-weight:500;margin-bottom:.25rem;color:var(--text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-vendor{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.75rem}.product-meta{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.product-price{font-weight:600;color:var(--text-primary)}.product-stock{font-size:.75rem;padding:.25rem .5rem;border-radius:var(--radius-sm)}.product-stock.in-stock{background-color:#e8f8ef;color:var(--success-color)}.product-stock.out-of-stock{background-color:#fdeaea;color:var(--danger-color)}.product-variants{font-size:.75rem;color:var(--text-secondary);margin-top:.5rem}.products-page .empty-state{text-align:center;padding:4rem 2rem;background-color:var(--surface-color);border-radius:var(--radius);box-shadow:var(--shadow)}.products-page .empty-state-icon{font-size:3rem;margin-bottom:1rem}.products-page .empty-state h2{margin-bottom:.5rem;color:var(--text-primary)}.products-page .empty-state p{color:var(--text-secondary)}.product-drilldown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.product-drilldown{background-color:var(--bg-secondary);border-radius:var(--radius-xl);width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.drilldown-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-primary);position:sticky;top:0;background-color:var(--bg-secondary);z-index:10}.drilldown-product-info{display:flex;align-items:center;gap:1rem}.drilldown-image{width:48px;height:48px;border-radius:var(--radius-md);overflow:hidden;background-color:var(--bg-tertiary);flex-shrink:0}.drilldown-image img{width:100%;height:100%;object-fit:cover}.drilldown-header h2{font-size:1.125rem;font-weight:600;margin:0;color:var(--text-primary)}.drilldown-vendor{font-size:.875rem;color:var(--text-secondary);margin:.25rem 0 0}.drilldown-close{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-md);transition:all .15s ease}.drilldown-close:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.drilldown-filters{padding:1rem 1.5rem;border-bottom:1px solid var(--border-primary)}.date-range-selector{display:flex;gap:.5rem}.date-range-selector button{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.date-range-selector button:hover{color:var(--text-primary);border-color:var(--text-secondary)}.date-range-selector button.active{background-color:var(--accent);color:#fff;border-color:var(--accent)}.drilldown-loading,.drilldown-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text-secondary)}.drilldown-error button{margin-top:1rem;padding:.5rem 1rem;background-color:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer}.drilldown-content{padding:1.5rem}.drilldown-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background-color:var(--bg-tertiary);border-radius:var(--radius-lg);padding:1rem;text-align:center}.stat-label{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:.5rem}.stat-value{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.drilldown-chart-section{margin-bottom:2rem}.drilldown-chart-section h3{font-size:.9375rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.sales-chart{display:flex;gap:.5rem;background-color:var(--bg-tertiary);border-radius:var(--radius-lg);padding:1.5rem}.chart-y-axis{display:flex;flex-direction:column;justify-content:space-between;padding-right:.5rem;font-size:.6875rem;color:var(--text-secondary);text-align:right;min-width:50px}.chart-container{flex:1;display:flex;flex-direction:column}.chart-bars{display:flex;align-items:flex-end;gap:2px;height:150px;border-bottom:1px solid var(--border-primary)}.chart-bar-wrapper{flex:1;height:100%;display:flex;align-items:flex-end;cursor:pointer}.chart-bar{width:100%;background-color:var(--accent);border-radius:2px 2px 0 0;min-height:2px;transition:background-color .15s ease}.chart-bar-wrapper:hover .chart-bar{background-color:var(--accent-hover)}.chart-legend{display:flex;gap:1.5rem;margin-bottom:1rem;font-size:.8125rem}.legend-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.legend-line{width:20px;height:3px;border-radius:2px}.legend-stock .legend-line{background-color:#22c55e}.legend-sales .legend-line{background-color:#3b82f6}.line-chart-container{display:flex;gap:.5rem;background-color:var(--bg-tertiary);border-radius:var(--radius-lg);padding:1.5rem}.line-chart-y-axis{display:flex;flex-direction:column;justify-content:space-between;font-size:.6875rem;color:var(--text-secondary);min-width:40px;padding:5px 0}.line-chart-y-axis.left-axis{text-align:right;padding-right:.5rem;color:#22c55e}.line-chart-y-axis.right-axis{text-align:left;padding-left:.5rem;color:#3b82f6}.line-chart-main{flex:1;display:flex;flex-direction:column}.line-chart-svg{width:100%;height:150px;border-bottom:1px solid var(--border-primary)}.line-stock,.line-sales{vector-effect:non-scaling-stroke}.data-point{cursor:pointer;transition:r .15s ease}.data-point:hover{r:5}.line-chart-x-axis,.chart-x-axis{display:flex;justify-content:space-between;padding-top:.5rem;font-size:.6875rem;color:var(--text-secondary)}.no-data{text-align:center;padding:3rem 2rem;color:var(--text-secondary);background-color:var(--bg-tertiary);border-radius:var(--radius-lg)}.drilldown-variants-section h3{font-size:.9375rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.variants-table{width:100%;border-collapse:collapse;background-color:var(--bg-tertiary);border-radius:var(--radius-lg);overflow:hidden}.variants-table th,.variants-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-primary)}.variants-table th{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background-color:var(--bg-primary)}.variants-table td{font-size:.875rem;color:var(--text-primary)}.variants-table tbody tr:last-child td{border-bottom:none}.variants-table code{font-size:.75rem;background-color:var(--bg-secondary);padding:.125rem .375rem;border-radius:var(--radius-sm)}.stock-badge{display:inline-block;padding:.25rem .5rem;font-size:.75rem;font-weight:500;border-radius:var(--radius-sm)}.stock-badge.in-stock{background-color:#e8f8ef;color:var(--success-color)}.stock-badge.out-of-stock{background-color:#fdeaea;color:var(--danger-color)}.product-card{cursor:pointer}.analytics-page{width:100%}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem}.analytics-header h1{margin-bottom:.25rem}.analytics-controls{display:flex;align-items:center;gap:.75rem;flex-shrink:0;flex-wrap:nowrap}.analytics-controls .form-input{width:160px;flex-shrink:0}.analytics-controls .btn{flex-shrink:0;white-space:nowrap;display:flex;align-items:center;gap:.5rem}.date-filter{display:flex;align-items:center;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:visible;flex-shrink:0}.filter-btn{padding:.5rem .75rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.filter-btn:hover{color:var(--text-primary);background-color:var(--nav-hover-bg)}.filter-btn.active{color:#fff;background-color:var(--primary-color)}.summary-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:2rem}@media (max-width: 1200px){.summary-cards{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.summary-cards{grid-template-columns:repeat(2,1fr)}}.summary-card{padding:1rem}.summary-label{font-size:.75rem;color:var(--text-secondary);margin-bottom:.375rem}.summary-value{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.375rem}.analytics-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;margin-bottom:2rem}.chart-container .card-header h2{font-size:1rem;margin:0}.chart-container .card-body{padding:1rem .5rem .5rem}.analytics-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:1.5rem;margin-top:1.5rem;margin-bottom:2rem}.table-container .card-header h2{font-size:1rem;margin:0}.table-container .card-body{padding:0}.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap}.data-table th{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);font-weight:600}.data-table td{font-size:.875rem}.data-table td:first-child{white-space:normal;min-width:150px;max-width:250px}.data-table th:nth-child(3),.data-table th:nth-child(4),.data-table th:nth-child(5),.data-table td:nth-child(3),.data-table td:nth-child(4),.data-table td:nth-child(5){text-align:right;min-width:70px}.data-table tbody tr:hover{background-color:var(--background-color)}.analytics-note{text-align:center;padding:1rem}.velocity-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.velocity-badge.high{background-color:#10b98126;color:#10b981}.velocity-badge.medium{background-color:#f59e0b26;color:#f59e0b}.velocity-badge.low,.status-badge.critical{background-color:#ef444426;color:#ef4444}.empty-chart{display:flex;align-items:center;justify-content:center;height:300px;color:var(--text-secondary);font-size:.875rem}.empty-state-small{padding:2rem;text-align:center;color:var(--text-secondary)}@media (max-width: 1100px){.analytics-header{flex-direction:column;align-items:flex-start}}@media (max-width: 600px){.analytics-controls{flex-wrap:wrap;width:100%}.analytics-controls .form-input{width:100%}}@media (max-width: 768px){.analytics-charts,.analytics-tables{grid-template-columns:1fr}}.environmental-insights{margin-bottom:1.5rem}.environmental-insights .card-header h2{font-size:1rem;margin:0}.env-factors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.env-factor-card{background-color:var(--background-color);border-radius:var(--radius-md);padding:1rem}.env-factor-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.env-icon{font-size:1.25rem}.env-title{font-weight:600;font-size:.875rem;color:var(--text-primary)}.env-factor-items{display:flex;flex-direction:column;gap:.5rem}.env-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary)}.env-item.impact-critical{color:var(--primary-color)}.env-item.impact-high{color:var(--warning-color)}.env-item-icon{font-size:1rem}.env-item-name{flex:1}.env-item-date{font-size:.75rem;color:var(--text-secondary)}.env-item-more{font-size:.75rem;color:var(--text-secondary);padding-top:.25rem}.impact-badge{display:inline-block;padding:.125rem .375rem;border-radius:var(--radius-sm);font-size:.625rem;font-weight:600;text-transform:uppercase}.impact-badge.critical{background-color:#e85a4f26;color:var(--primary-color)}.impact-badge.high{background-color:#f59e0b26;color:#f59e0b}.env-stat{display:flex;align-items:baseline;gap:.5rem}.env-stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.env-stat-label{font-size:.75rem;color:var(--text-secondary)}.env-note{font-size:.75rem;color:var(--text-secondary);margin:.5rem 0 0;font-style:italic}.weather-stats{display:flex;gap:1rem;flex-wrap:wrap}.weather-stat{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:var(--text-primary)}.weather-icon{font-size:1.125rem}.env-show-btn{margin-bottom:1rem}.chart-hint{font-size:.75rem;color:var(--text-secondary);font-weight:400}.custom-tooltip{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.75rem;box-shadow:0 4px 12px #0000004d}.tooltip-date{font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem}.tooltip-revenue{font-size:1rem;font-weight:600;color:var(--text-primary)}.tooltip-orders{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.5rem}.tooltip-factors{border-top:1px solid var(--border-color);padding-top:.5rem;margin-top:.25rem}.tooltip-factor{font-size:.75rem;color:var(--warning-color);padding:.125rem 0}.tooltip-weather{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.chart-legend-env{display:flex;justify-content:center;gap:1.5rem;padding-top:.75rem;border-top:1px solid var(--border-color);margin-top:.5rem}.legend-env-item{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:50%}.legend-dot.holiday{background-color:#f39c12}.legend-dot.payday{background-color:#27ae60}.legend-dot.weather{background-color:#3b82f6}@media (max-width: 600px){.env-factors-grid{grid-template-columns:1fr}}.accuracy-table{width:100%;border-collapse:collapse;font-size:.875rem}.accuracy-table th{text-align:left;padding:.625rem .75rem;color:var(--text-secondary);font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}.accuracy-table td{padding:.625rem .75rem;color:var(--text-primary);border-bottom:1px solid rgba(255,255,255,.05)}.accuracy-table tr:last-child td{border-bottom:none}.accuracy-table td.positive{color:#27ae60}.accuracy-table td.negative{color:#e85a4f}.accuracy-badge{display:inline-block;padding:.2rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.accuracy-badge.high{background:#27ae6026;color:#27ae60}.accuracy-badge.medium{background:#f39c1226;color:#f39c12}.accuracy-badge.low{background:#e85a4f26;color:#e85a4f}.forecasting-page{width:100%}.forecasting-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.forecasting-header h1{margin-bottom:.25rem}.forecasting-controls{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.mode-toggle{display:flex;background:var(--surface-elevated);border-radius:6px;padding:3px;border:1px solid var(--border-color)}.mode-btn{padding:.5rem 1rem;border:none;background:transparent;color:var(--text-secondary);font-size:.8125rem;font-weight:500;cursor:pointer;border-radius:4px;transition:all .15s ease}.mode-btn:hover{color:var(--text-primary)}.mode-btn.active{background:var(--primary-color);color:#fff}.budget-input{width:80px!important}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;margin-bottom:2rem}.summary-card{padding:1.25rem}.summary-card.clickable:hover{background:var(--surface-elevated);border-color:var(--primary-color)}.summary-label{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.5rem}.summary-value{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.summary-change{font-size:.8125rem;color:var(--text-secondary)}.summary-change.positive{color:var(--success-color)}.summary-change.negative{color:var(--danger-color)}.summary-change.warning{color:#f59e0b}.summary-change.neutral{color:var(--text-secondary)}.table-section{margin-bottom:1.5rem}.table-section .card-header{display:flex;flex-direction:column;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);gap:.75rem}.table-section .card-header h2{font-size:1rem;font-weight:600;margin:0 0 .25rem}.header-top-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%}.header-actions{display:flex;gap:.75rem;align-items:center;flex-shrink:0}.filter-row{display:flex;gap:.75rem;align-items:center;width:100%}.filter-row .search-input{flex:1;min-width:200px;height:38px}.filter-row .vendor-select{min-width:220px;flex-shrink:0;height:38px}.table-filters{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.search-input{min-width:200px}.filter-select{min-width:150px}.vendor-select{min-width:220px}.param-inputs{display:flex;gap:.75rem;align-items:center}.param-inputs label{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.param-input{width:60px!important;min-width:unset!important;text-align:center;padding:.375rem .5rem!important}.table-wrapper{overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 380px)}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.75rem .875rem;text-align:left;border-bottom:1px solid var(--border-color)}.data-table th{font-size:.6875rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-weight:600;background-color:var(--surface-elevated);position:sticky;top:0;z-index:10;box-shadow:0 1px 0 var(--border-color)}.data-table td{font-size:.8125rem;color:var(--text-primary)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background-color:var(--nav-hover-bg)}.data-table tbody tr.clickable-row{cursor:pointer}.data-table tbody tr.clickable-row:hover{background-color:var(--nav-hover-bg)}.data-table tbody tr.needs-reorder{background-color:#ef44440d}.data-table tbody tr.needs-reorder:hover{background-color:#ef44441a}.text-right{text-align:right!important}.text-center{text-align:center!important}.text-danger{color:#ef4444!important;font-weight:600}.text-warning{color:#f59e0b!important}.text-primary{color:#e85a4f!important;font-weight:600}.inventory-table{table-layout:fixed;width:100%}.inventory-table .col-product{width:24%;text-align:left}.inventory-table .col-brand,.inventory-table .col-vendor{width:10%}.inventory-table .col-stock{width:7%}.inventory-table .col-velocity{width:9%}.inventory-table .col-days{width:7%}.inventory-table .col-trend{width:6%}.inventory-table .col-reorder,.inventory-table .col-cost,.inventory-table .col-status{width:9%}.product-info{display:flex;flex-direction:column;gap:.125rem;text-align:left}.product-title{font-weight:500;color:var(--text-primary);line-height:1.3;text-align:left;word-wrap:break-word;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inventory-table .col-product,.inventory-table td.col-product{text-align:left}.product-sku{font-size:.6875rem;color:var(--text-secondary);font-family:monospace}.inventory-table .col-brand{color:var(--text-primary);font-size:.75rem;font-weight:500}.inventory-table .col-vendor{color:var(--text-secondary);font-size:.75rem}.trend-indicator{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;font-size:.875rem;font-weight:600}.trend-indicator.increasing{background-color:#10b98126;color:#10b981}.trend-indicator.decreasing{background-color:#ef444426;color:#ef4444}.trend-indicator.stable{background-color:#94a3b826;color:var(--text-secondary)}.trend-indicator.was_oos{background-color:#8b5cf626;color:#8b5cf6}.reorder-qty{display:inline-block;padding:.25rem .5rem;background-color:#e85a4f26;color:#e85a4f;border-radius:4px;font-weight:600;font-size:.8125rem}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.critical{background-color:#ef444426;color:#ef4444}.status-badge.warning{background-color:#f59e0b26;color:#f59e0b}.status-badge.reorder{background-color:#e85a4f26;color:#e85a4f}.status-badge.healthy{background-color:#10b98126;color:#10b981}.empty-state-small{padding:3rem 2rem;text-align:center;color:var(--text-secondary)}.empty-state-small h3{margin:0 0 .5rem;color:var(--text-primary)}.empty-state-small p{margin:0;font-size:.875rem}.loading-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;gap:1rem;color:var(--text-secondary)}@media (max-width: 1200px){.inventory-table .col-product{width:35%}.inventory-table .col-vendor{width:10%}}@media (max-width: 768px){.forecasting-header{flex-direction:column}.forecasting-controls{flex-direction:column;width:100%;align-items:stretch}.header-top-row{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}.filter-row{flex-direction:column}.filter-row .search-input,.filter-row .vendor-select{width:100%;min-width:unset}.table-filters{width:100%;flex-direction:column;align-items:stretch}.search-input,.filter-select,.vendor-select{width:100%;min-width:unset}.param-inputs{width:100%;justify-content:space-between}.data-table{font-size:.75rem}.data-table th,.data-table td{padding:.5rem .375rem}.inventory-table .col-brand,.inventory-table .col-trend,.inventory-table .col-cost{display:none}.inventory-table .col-product{width:35%}.inventory-table .col-vendor{width:15%}}.custom-dropdown{position:relative;min-width:220px}.custom-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:.5rem .75rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem;cursor:pointer;height:38px;text-align:left}.custom-dropdown-trigger:hover{border-color:var(--text-secondary)}.dropdown-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-chevron{flex-shrink:0;transition:transform .2s ease;color:var(--text-secondary)}.dropdown-chevron.open{transform:rotate(180deg)}.custom-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:280px;overflow-y:auto;background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;z-index:100}.custom-dropdown-item{padding:.625rem .75rem;font-size:.875rem;color:var(--text-primary);cursor:pointer;transition:background-color .15s ease}.custom-dropdown-item:hover{background:var(--nav-hover-bg)}.custom-dropdown-item.active{background:#e85a4f1a;color:var(--primary-color);font-weight:500}.sortable-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease}.sortable-table th.sortable:hover{background-color:var(--nav-hover-bg)}.sortable-table th.sortable{display:table-cell}.sortable-table th.sortable>span{display:inline}.sortable-table th.sortable svg{display:inline-block;vertical-align:middle;margin-left:.25rem}.sortable-table th.sortable .sort-inactive{opacity:.3}.sortable-table th.sortable:hover .sort-inactive{opacity:.6}.sections-page{display:flex;flex-direction:column;gap:1.5rem}.sections-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;gap:1rem;color:var(--text-secondary)}.sections-loading .loading-spinner{width:40px;height:40px;border:3px solid var(--border-primary);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}.page-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.page-header h1{font-size:1.5rem;font-weight:600;margin-bottom:.25rem}.page-header p{color:var(--text-secondary);font-size:.875rem}.header-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.filter-group{display:flex;align-items:center}.filter-select{padding:.5rem 2rem .5rem .75rem;font-size:.875rem;border:1px solid var(--border-primary);border-radius:var(--radius-md);background-color:var(--bg-secondary);color:var(--text-primary);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.filter-select:hover{border-color:var(--accent)}.filter-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.date-filter{display:flex;background-color:var(--bg-tertiary);border-radius:var(--radius-md);padding:.125rem;gap:.125rem}.filter-btn{padding:.375rem .75rem;font-size:.8125rem;font-weight:500;border:none;border-radius:var(--radius-sm);background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.filter-btn:hover{background-color:var(--bg-hover);color:var(--text-primary)}.filter-btn.active{background-color:var(--accent);color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.stats-grid{grid-template-columns:1fr}}.comparison-card{border-color:var(--accent)}.comparison-card .card-header{display:flex;justify-content:space-between;align-items:center}.comparison-card .card-header h3{font-size:1rem;font-weight:600}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.comparison-item{background-color:var(--bg-secondary);border-radius:var(--radius-md);overflow:hidden}.comparison-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--bg-tertiary);border-left:3px solid}.comparison-name{font-weight:600;font-size:.875rem}.remove-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-tertiary);font-size:1rem;cursor:pointer;border-radius:var(--radius-sm)}.remove-btn:hover{background-color:var(--error-light);color:var(--error)}.comparison-stats{padding:.75rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.comp-stat{display:flex;flex-direction:column;gap:.125rem}.comp-stat.highlight{grid-column:span 2;background-color:var(--accent-light);padding:.5rem;border-radius:var(--radius-sm);text-align:center}.comp-label{font-size:.625rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.comp-value{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.comp-stat.highlight .comp-value{font-size:1rem;color:var(--accent)}.comparison-footer{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-top:1px solid var(--border-secondary);font-size:.6875rem}.planogram-ref{color:var(--text-tertiary)}.sections-table-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);overflow:hidden}.sections-table-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-primary)}.sections-table-header h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.search-box{width:240px}.sections-table-wrapper{max-height:600px;overflow:auto}.sections-table{width:100%;border-collapse:collapse}.sections-table thead{background:var(--bg-tertiary);position:sticky;top:0;z-index:10}.sections-table th{padding:.875rem 1.5rem;font-size:.75rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--text-tertiary);text-align:left;border-bottom:1px solid var(--border-primary);white-space:nowrap}.sections-table th.align-right{text-align:right}.sections-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}.sections-table th.sortable:hover{color:var(--text-primary)}.sections-table th.sorted{color:var(--accent)}.sort-arrow{margin-left:.375rem;font-size:.75rem}.sections-table tbody tr{border-bottom:1px solid var(--border-secondary);transition:background-color .15s ease}.sections-table tbody tr:last-child{border-bottom:none}.sections-table tbody tr:hover{background:var(--bg-hover)}.sections-table td{padding:1rem 1.5rem;color:var(--text-primary);vertical-align:middle}.sections-table td.align-right{text-align:right}.section-cell{display:flex;align-items:center;gap:.875rem}.section-color{width:10px;height:10px;border-radius:3px;flex-shrink:0}.section-details{display:flex;flex-direction:column;gap:.125rem}.section-title{font-size:1rem;font-weight:500;color:var(--text-primary)}.section-subtitle{font-size:.8125rem;color:var(--text-tertiary)}.fixture-name{font-size:.9375rem;color:var(--text-secondary)}.size-value,.products-count,.revenue-value{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.performance-badge{display:inline-block;padding:.375rem .75rem;font-size:.8125rem;font-weight:600;border-radius:9999px;background:var(--bg-tertiary);color:var(--text-secondary)}.performance-badge.above{background:var(--success-light, rgba(34, 197, 94, .1));color:var(--success, #22c55e)}.performance-badge.below{background:var(--bg-tertiary);color:var(--text-secondary)}.sections-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.sections-empty .empty-icon{color:var(--text-tertiary);margin-bottom:1rem;opacity:.5}.sections-empty .empty-title{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0 0 .5rem}.sections-empty .empty-hint{font-size:.875rem;color:var(--text-tertiary);margin:0}.sections-table tbody tr.clickable-row{cursor:pointer}.sections-table tbody tr.clickable-row:hover{background:var(--accent-light, rgba(232, 90, 79, .08))}.section-drilldown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.section-drilldown{background:var(--bg-secondary);border-radius:var(--radius-xl);border:1px solid var(--border-primary);width:100%;max-width:900px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;position:relative}.drilldown-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--border-primary);position:sticky;top:0;background:var(--bg-secondary);z-index:10}.drilldown-title{display:flex;align-items:center;gap:1rem}.drilldown-color{width:16px;height:16px;border-radius:4px;flex-shrink:0}.drilldown-title h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.drilldown-title p{font-size:.875rem;color:var(--text-tertiary);margin:0}.drilldown-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.drilldown-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.drilldown-stats{display:flex;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-primary);flex-wrap:wrap}.drilldown-stat{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem;background:var(--bg-tertiary);border-radius:var(--radius-md);min-width:100px}.drilldown-stat.warning{background:#ef44441a}.drilldown-stat.warning .stat-value{color:var(--error, #ef4444)}.drilldown-stat .stat-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.drilldown-stat .stat-label{font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.heatmap-controls{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border-primary);flex-wrap:wrap}.controls-label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.metric-toggle{display:flex;background:var(--bg-tertiary);border-radius:var(--radius-md);padding:3px}.metric-toggle button{padding:.5rem 1rem;font-size:.8125rem;font-weight:500;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.metric-toggle button:hover{color:var(--text-primary)}.metric-toggle button.active{background:var(--accent);color:#fff}.heatmap-legend{display:flex;align-items:center;gap:.5rem;margin-left:auto}.legend-label{font-size:.75rem;color:var(--text-tertiary)}.legend-gradient{width:100px;height:12px;border-radius:6px;background:linear-gradient(to right,#ef4444,#eab308,#22c55e)}.legend-gradient[data-metric=velocity]{background:linear-gradient(to right,#3b82f633,#3b82f6e6)}.legend-gradient[data-metric=stock]{background:linear-gradient(to right,#ef4444,#eab308,#22c55e)}.heatmap-container{padding:1.5rem}.heatmap-label{font-size:.75rem;color:var(--text-tertiary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.5px}.heatmap-row{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.row-label{width:60px;font-size:.8125rem;font-weight:500;color:var(--text-secondary);flex-shrink:0}.heatmap-gradient-wrapper{flex:1;position:relative;height:40px;border-radius:20px;overflow:hidden}.heatmap-gradient-bar{position:absolute;top:0;left:0;right:0;bottom:0;border-radius:20px}.heatmap-segments{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;border-radius:20px}.heatmap-segment{height:100%;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.heatmap-segment:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:transparent;transition:background .15s ease;pointer-events:none}.heatmap-segment:hover:after,.heatmap-segment.hovered:after{background:#ffffff4d}.segment-position{font-size:.6875rem;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.5);opacity:.8;z-index:1;transition:opacity .15s ease}.heatmap-segment:hover .segment-position,.heatmap-segment.hovered .segment-position{opacity:1}.product-tooltip-container{margin:0 1.5rem 1rem}.product-tooltip{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:1rem 1.5rem;border:1px solid var(--border-primary)}.product-tooltip-placeholder{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:1rem 1.5rem;border:1px solid var(--border-secondary);color:var(--text-tertiary);font-size:.875rem;text-align:center}.tooltip-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.tooltip-header strong{font-size:.9375rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%}.tooltip-position{font-size:.75rem;color:var(--text-tertiary);background:var(--bg-secondary);padding:.25rem .5rem;border-radius:var(--radius-sm)}.tooltip-stats{display:flex;gap:1.5rem;flex-wrap:wrap}.tooltip-stat{display:flex;flex-direction:column;gap:.125rem}.tooltip-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary)}.tooltip-value{font-size:.875rem;font-weight:600;color:var(--text-primary)}.tooltip-value.low-stock{color:var(--error, #ef4444)}@media (max-width: 640px){.section-drilldown-overlay{padding:1rem}.drilldown-stats{gap:.5rem}.drilldown-stat{min-width:calc(50% - .5rem);flex:1}.heatmap-controls{flex-direction:column;align-items:flex-start}.heatmap-legend{margin-left:0;margin-top:.5rem}.heatmap-cell{width:36px;height:36px}}.sections-nav{display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.25rem;background:var(--bg-tertiary);border-radius:var(--radius-lg);width:fit-content}.sections-nav-tab{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.sections-nav-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.sections-nav-tab.active{color:var(--text-primary);background:var(--bg-secondary);box-shadow:0 1px 3px #0000001a}.sections-nav-tab svg{flex-shrink:0}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 .375rem;font-size:.6875rem;font-weight:600;color:#fff;background:var(--error, #ef4444);border-radius:9999px}.align-bad-stock{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xl);overflow:hidden}.align-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-primary);flex-wrap:wrap;gap:1rem}.align-tabs{display:flex;gap:.25rem;padding:.25rem;background:var(--bg-tertiary);border-radius:var(--radius-md)}.align-tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.align-tab:hover{color:var(--text-primary)}.align-tab.active{color:var(--text-primary);background:var(--bg-secondary)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 .375rem;font-size:.6875rem;font-weight:600;color:#fff;background:var(--error, #ef4444);border-radius:9999px}.tab-badge.resolved{background:var(--success, #22c55e)}.align-actions{display:flex;align-items:center;gap:.75rem}.align-search{width:220px}.unmatched-list,.resolved-list{max-height:600px;overflow:auto}.product-cell{display:flex;align-items:center;gap:.75rem}.product-title{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.upc-cell{display:flex;align-items:center;gap:.5rem}.upc-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;font-size:.8125rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:var(--radius-sm);color:var(--text-primary)}.copy-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}.copy-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-hover)}.section-name,.planogram-name{font-size:.875rem;color:var(--text-secondary)}.shopify-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:500;color:#fff;background:#96bf48;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.shopify-btn:hover{background:#7aa93c}.resolved-row{background:#22c55e0d}.resolved-date{font-size:.8125rem;color:var(--text-tertiary)}.align-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.align-empty .empty-icon{color:var(--success, #22c55e);margin-bottom:1rem}.align-empty .empty-title{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0 0 .5rem}.align-empty .empty-hint{font-size:.875rem;color:var(--text-tertiary);margin:0}@media (max-width: 768px){.align-header{flex-direction:column;align-items:stretch}.align-actions{flex-direction:column}.align-search{width:100%}}.settings-container{width:100%}.settings-header{margin-bottom:2rem}.settings-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.settings-header p{color:var(--text-secondary)}.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.access-denied svg{color:var(--danger-color);margin-bottom:1.5rem}.access-denied h2{font-size:1.5rem;margin-bottom:.5rem}.access-denied p{color:var(--text-secondary)}.settings-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-color);padding-bottom:0}.settings-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:transparent;border:none;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}.settings-tab:hover{color:var(--text-primary)}.settings-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.settings-section{background:var(--surface-color);border-radius:var(--radius);padding:1.5rem;border:1px solid var(--border-color)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{font-size:1.125rem;font-weight:600}.add-user-form{background:var(--background-color);border:1px solid var(--border-color);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.form-header h3{font-size:1rem;font-weight:600}.btn-close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm)}.btn-close:hover{color:var(--text-primary);background:var(--border-color)}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.users-table{overflow-x:auto}.users-table table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.users-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--background-color)}.users-table tbody tr:hover{background:var(--background-color)}.user-cell{display:flex;align-items:center;gap:.75rem}.user-avatar-sm{width:32px;height:32px;border-radius:50%;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600}.badge{font-size:.625rem;padding:.125rem .5rem;border-radius:9999px;font-weight:600;text-transform:uppercase}.badge-you{background:var(--primary-color);color:#fff}.role-select{padding:.375rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-color);color:var(--text-primary);font-size:.875rem;cursor:pointer}.role-select:disabled{opacity:.6;cursor:not-allowed}.btn-icon{padding:.5rem;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);transition:all .2s}.btn-icon:hover{background:var(--background-color)}.btn-icon.btn-danger:hover{color:var(--danger-color);background:#ef44441a}.btn-icon-sm{padding:.25rem;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);transition:all .2s;opacity:0;margin-left:.5rem}.email-cell{display:flex;align-items:center}.email-cell:hover .btn-icon-sm{opacity:1}.btn-icon-sm:hover{color:var(--primary-color);background:var(--background-color)}.form-description{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.form-description strong{color:var(--text-primary)}.empty-state{text-align:center;color:var(--text-secondary);padding:2rem!important}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-secondary)}.loading-state .spinner{margin-bottom:1rem}.roles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.role-card{background:var(--background-color);border:1px solid var(--border-color);border-radius:var(--radius);padding:1.5rem}.role-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.role-header h3{font-size:1.125rem;font-weight:600}.role-badge{font-size:.625rem;padding:.25rem .5rem;border-radius:var(--radius-sm);font-weight:600;text-transform:uppercase;font-family:monospace}.role-badge.role-admin{background:#ef44441a;color:#ef4444}.role-badge.role-retail_associate{background:#3b82f61a;color:#3b82f6}.role-badge.role-inventory_manager{background:#10b9811a;color:#10b981}.role-description{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem}.role-permissions h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.75rem}.role-permissions ul{list-style:none;padding:0;margin:0}.role-permissions li{display:flex;align-items:center;gap:.5rem;font-size:.875rem;padding:.375rem 0}.role-permissions li:before{content:"";width:16px;height:16px;border-radius:50%;flex-shrink:0}.permission-granted:before{background:#10b98133;border:2px solid #10b981}.permission-denied:before{background:#ef44441a;border:2px solid var(--border-color)}.permission-denied{color:var(--text-secondary)}.alert{padding:.75rem 1rem;border-radius:var(--radius);margin-bottom:1rem;font-size:.875rem}.alert-error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.alert-success{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.form-select{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-color);color:var(--text-primary);font-size:.875rem}.form-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.action-buttons{display:flex;gap:.5rem}.security-content{max-width:500px}.security-description{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem;line-height:1.5}.password-change-form{background:var(--background-color);border:1px solid var(--border-color);border-radius:var(--radius);padding:1.5rem}.password-change-form .form-group{margin-bottom:1rem}.password-change-form .form-group:last-of-type{margin-bottom:0}.password-change-form .form-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.section-description{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem;line-height:1.5}.pin-input-group{display:flex;gap:.5rem}.pin-input-group .form-input{flex:1}.pin-input-group .btn{flex-shrink:0}.barcode-scanner{background:var(--surface-primary);border-radius:var(--radius-md);padding:1.5rem;border:1px solid var(--border-primary)}.barcode-scanner.disabled{opacity:.6;pointer-events:none}.scanner-mode-toggle{display:flex;gap:.5rem;margin-bottom:1rem}.mode-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.mode-btn:hover:not(:disabled){background:var(--surface-tertiary);color:var(--text-primary)}.mode-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.mode-btn:disabled{cursor:not-allowed}.keyboard-mode{display:flex;flex-direction:column;gap:.75rem}.barcode-input-form{display:flex;gap:.5rem}.input-wrapper{flex:1;display:flex;align-items:center;gap:.75rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:0 1rem;transition:border-color .15s ease}.input-wrapper:focus-within{border-color:var(--primary)}.input-wrapper svg{color:var(--text-tertiary);flex-shrink:0}.input-wrapper input{flex:1;background:transparent;border:none;outline:none;padding:.875rem 0;font-size:1rem;color:var(--text-primary)}.input-wrapper input::placeholder{color:var(--text-tertiary)}.barcode-input-form button{padding:.875rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer;transition:background .15s ease}.barcode-input-form button:hover:not(:disabled){background:var(--primary-hover)}.barcode-input-form button:disabled{background:var(--surface-tertiary);color:var(--text-tertiary);cursor:not-allowed}.scanner-hint{font-size:.8125rem;color:var(--text-tertiary);text-align:center;margin:0}.camera-mode{display:flex;flex-direction:column;gap:.75rem}.camera-container{position:relative;width:100%;max-width:400px;margin:0 auto;aspect-ratio:4/3;background:#000;border-radius:var(--radius-sm);overflow:hidden}.camera-container video{width:100%;height:100%;object-fit:cover}.scan-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.scan-frame{width:70%;height:40%;border:2px solid rgba(255,255,255,.5);border-radius:var(--radius-sm);box-shadow:0 0 0 9999px #0000004d}.scan-frame:before,.scan-frame:after{content:"";position:absolute;width:20px;height:20px;border:3px solid var(--primary)}.scan-frame:before{top:-3px;left:-3px;border-right:none;border-bottom:none;border-radius:var(--radius-xs) 0 0 0}.scan-frame:after{bottom:-3px;right:-3px;border-left:none;border-top:none;border-radius:0 0 var(--radius-xs) 0}.scanning-indicator{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#000000b3;border-radius:var(--radius-pill);color:#fff;font-size:.8125rem;font-weight:500}.scanning-indicator .pulse{width:8px;height:8px;background:var(--success-color);border-radius:50%;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.camera-error{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;text-align:center;color:var(--text-secondary)}.camera-error svg{color:var(--warning-color)}.camera-error p{margin:0;max-width:300px}.fallback-btn{padding:.75rem 1.5rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-weight:500;cursor:pointer;transition:all .15s ease}.fallback-btn:hover{background:var(--surface-tertiary)}.product-submission-form{background:var(--surface-primary);border-radius:var(--radius-md);border:1px solid var(--border-primary)}.form-header{padding:1.5rem;border-bottom:1px solid var(--border-primary)}.form-header h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.form-header p{margin:0;font-size:.875rem;color:var(--text-secondary)}.form-section{padding:1.5rem;border-bottom:1px solid var(--border-primary)}.form-section:last-of-type{border-bottom:none}.form-section h4{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 600px){.form-row{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-group .required{color:var(--error-color)}.form-group input,.form-group select{padding:.75rem 1rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.9375rem;color:var(--text-primary);transition:border-color .15s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary)}.form-group input.error,.form-group select.error{border-color:var(--error-color)}.form-group input::placeholder{color:var(--text-tertiary)}.error-message{font-size:.8125rem;color:var(--error-color)}.add-variant-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.variants-header{display:grid;grid-template-columns:1fr 1fr 55px 1fr 1.2fr 80px 80px 40px;gap:.5rem;padding:.75rem 1rem;background:var(--surface-secondary);font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.variant-row{display:grid;grid-template-columns:1fr 1fr 55px 1fr 1.2fr 80px 80px 40px;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--border-primary);align-items:center}.variant-row:first-of-type{border-top:none}.variant-row input{padding:.5rem .75rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);font-size:.875rem;color:var(--text-primary);min-width:0}.remove-variant-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}@media (max-width: 768px){.variants-header{display:none}.variant-row{display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem}.variant-row input{flex:1;min-width:100px}.variant-row input:first-child,.variant-row input:nth-child(2){flex:1 1 45%}.variant-row input:nth-child(4){flex:1 1 100%}.remove-variant-btn{margin-left:auto}}.form-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;background:var(--surface-secondary);border-radius:0 0 var(--radius-md) var(--radius-md)}.btn-primary,.btn-secondary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-sm);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-primary{background:var(--primary);border:none;color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-primary:disabled{background:var(--surface-tertiary);color:var(--text-tertiary);cursor:not-allowed}.btn-secondary{background:var(--surface-primary);border:1px solid var(--border-primary);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--surface-secondary)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.existing-product-section{margin-top:1rem}.existing-product-select{width:100%}.loading-indicator{color:var(--primary);font-weight:400;font-size:.8125rem}.help-text{font-size:.8125rem;color:var(--text-tertiary);margin-top:.25rem}.existing-variants-info{margin-top:1rem;padding:1rem;background:var(--primary-bg);border:1px solid var(--primary);border-radius:var(--radius-sm)}.existing-variants-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.existing-variants-header strong{color:var(--text-primary);font-size:.9375rem}.variant-count{font-size:.8125rem;color:var(--text-secondary);background:var(--surface-secondary);padding:.25rem .75rem;border-radius:var(--radius-pill)}.existing-variants-list{margin-bottom:.75rem}.list-label{display:block;font-size:.75rem;color:var(--text-tertiary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.03em}.variant-chips{display:flex;flex-wrap:wrap;gap:.375rem}.variant-chip{display:inline-block;padding:.25rem .625rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);font-size:.75rem;color:var(--text-secondary)}.variant-chip.more{background:var(--surface-secondary);color:var(--text-tertiary);font-style:italic}.add-variant-hint{margin:0;font-size:.8125rem;color:var(--text-secondary)}.market-pricing-info{margin:1rem 1.5rem;padding:1rem;background:linear-gradient(135deg,var(--success-bg) 0%,var(--surface-secondary) 100%);border:1px solid var(--success);border-radius:var(--radius-sm)}.pricing-header{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--success);margin-bottom:.5rem}.pricing-values{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.price-range{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.suggested-price{font-size:.875rem;color:var(--text-secondary)}.suggested-price strong{color:var(--primary)}.pricing-source{display:block;margin-top:.5rem;font-size:.6875rem;color:var(--text-tertiary)}.new-vendor-input{display:flex;gap:.5rem}.new-vendor-input input{flex:1;padding:.75rem 1rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.9375rem;color:var(--text-primary)}.new-vendor-input input:focus{outline:none;border-color:var(--primary)}.cancel-new-vendor{display:flex;align-items:center;justify-content:center;width:42px;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}.cancel-new-vendor:hover{border-color:var(--error);color:var(--error);background:var(--error-bg)}.tags-input-container{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);min-height:48px;align-items:center}.tags-list{display:flex;flex-wrap:wrap;gap:.375rem}.tag-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;background:var(--primary);color:#fff;border-radius:var(--radius-xs);font-size:.8125rem}.tag-chip button{display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:#ffffffb3;cursor:pointer;transition:color .15s ease}.tag-chip button:hover{color:#fff}.tags-input-container input{flex:1;min-width:150px;padding:.25rem .5rem;background:transparent;border:none;font-size:.875rem;color:var(--text-primary)}.tags-input-container input:focus{outline:none}.tags-input-container input::placeholder{color:var(--text-tertiary)}.margin-display{display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:500;color:var(--text-secondary);padding:.25rem .5rem;border-radius:var(--radius-xs);background:var(--surface-secondary)}.margin-display.low{color:var(--error);background:var(--error-bg)}.margin-display.high{color:var(--success);background:var(--success-bg)}.variant-option-cell{display:flex;flex-direction:column;gap:.25rem;min-width:0}.variant-option-cell select{padding:.5rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);font-size:.8125rem;color:var(--text-primary);min-width:0;cursor:pointer}.variant-option-cell select:focus{outline:none;border-color:var(--primary)}.variant-option-cell .custom-option-input{padding:.375rem .5rem;font-size:.75rem;background:var(--surface-secondary);border:1px dashed var(--primary)}.variant-option-cell input{padding:.5rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);font-size:.8125rem;color:var(--text-primary);min-width:0}.variant-option-cell input:focus{outline:none;border-color:var(--primary)}.variants-header{display:grid;grid-template-columns:1fr 1fr 55px 1fr 1.2fr 80px 80px 60px 40px;gap:.5rem;padding:.75rem 1rem;background:var(--surface-secondary);font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.variant-row{display:grid;grid-template-columns:1fr 1fr 55px 1fr 1.2fr 80px 80px 60px 40px;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--border-primary);align-items:center}.vendor-autocomplete-container{position:relative}.vendor-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;z-index:100;background:var(--surface-primary);border:1px solid var(--primary);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;margin-top:4px;max-height:280px;overflow-y:auto}.new-vendor-hint{display:flex;align-items:center;gap:.375rem;color:var(--warning);background:var(--warning-bg);padding:.5rem .75rem;border-radius:var(--radius-xs);margin-top:.5rem}.new-vendor-hint svg{flex-shrink:0}.title-autocomplete-container{position:relative}.title-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;z-index:100;background:var(--surface-primary);border:1px solid var(--primary);border-radius:var(--radius-sm);box-shadow:0 4px 12px #00000026;margin-top:4px;max-height:300px;overflow-y:auto}.suggestions-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--primary-bg);color:var(--primary);font-size:.75rem;font-weight:600;border-bottom:1px solid var(--border-primary)}.suggestion-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid var(--border-primary);transition:background-color .15s ease}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background:var(--surface-secondary)}.suggestion-title{font-size:.9375rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.suggestion-meta{display:flex;gap:1rem;font-size:.75rem;color:var(--text-tertiary)}.suggestion-vendor{color:var(--text-secondary)}.suggestion-variants{color:var(--primary)}.inventory-submit-page{width:100%}.page-header{margin-bottom:2rem}.page-header h1{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.page-header p{margin:0;font-size:1rem;color:var(--text-secondary)}.inventory-content{display:grid;grid-template-columns:1fr 380px;gap:2rem;align-items:start}@media (max-width: 1024px){.inventory-content{grid-template-columns:1fr}}.scanner-section{display:flex;flex-direction:column;gap:1.5rem}.checking-indicator{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.5rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-size:.9375rem}.spinner{width:20px;height:20px;border:2px solid var(--border-primary);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite}.scan-result{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.scan-result.shopify{border-color:var(--success-color);background:var(--success-color-bg)}.scan-result.pending_submission{border-color:var(--warning-color);background:var(--warning-color-bg)}.scan-result.not_found{border-color:var(--primary);background:var(--primary-bg)}.scan-result.external_found{border-color:#8b5cf6;background:#8b5cf61a}.result-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-sm);flex-shrink:0}.result-icon.success{background:var(--success-color);color:#fff}.result-icon.warning{background:var(--warning-color);color:#fff}.result-icon.info{background:var(--primary);color:#fff}.result-icon.external{background:#8b5cf6;color:#fff}.external-note{margin-top:.5rem;font-size:.75rem;color:var(--text-tertiary);font-style:italic}.result-content{flex:1;min-width:0}.result-content h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.result-content p{margin:0;font-size:.875rem;color:var(--text-secondary)}.product-title{font-weight:500;color:var(--text-primary)!important;margin-bottom:.75rem!important}.product-details{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:.75rem;font-size:.8125rem;color:var(--text-secondary)}.product-details strong{color:var(--text-primary)}.product-image{width:80px;height:80px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.scan-another-btn{padding:.75rem 1.25rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap;align-self:flex-start}.scan-another-btn:hover{background:var(--surface-tertiary)}.submissions-section{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.submissions-section h3{margin:0;padding:1rem 1.25rem;font-size:.9375rem;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-primary);background:var(--surface-secondary)}.loading-submissions,.empty-submissions{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-tertiary)}.empty-submissions svg{margin-bottom:1rem;opacity:.5}.empty-submissions p{margin:0 0 .25rem;font-size:.9375rem;color:var(--text-secondary)}.empty-submissions span{font-size:.8125rem}.submissions-list{max-height:500px;overflow-y:auto}.submission-card{padding:1rem 1.25rem;border-bottom:1px solid var(--border-primary)}.submission-card:last-child{border-bottom:none}.submission-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.submission-title{font-weight:500;color:var(--text-primary);font-size:.9375rem}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em}.submission-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.8125rem;color:var(--text-tertiary)}.submission-notes{margin-top:.75rem;padding:.75rem;background:var(--surface-secondary);border-radius:var(--radius-xs);font-size:.8125rem;color:var(--text-secondary)}.submission-notes strong{color:var(--text-primary)}.shopify-found-hint{margin-top:1rem!important;padding:.75rem;background:#ffffff1a;border-radius:var(--radius-xs);font-size:.8125rem;color:var(--text-secondary)!important}.update-quantity-btn{margin-top:1rem;padding:.75rem 1.5rem;background:var(--success-color);border:none;border-radius:var(--radius-sm);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.update-quantity-btn:hover{filter:brightness(1.1)}.quantity-adjustment-form{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:1.5rem}.quantity-adjustment-form .form-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary)}.quantity-adjustment-form .form-header h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.quantity-adjustment-form .product-name{margin:0;font-size:.9375rem;font-weight:500;color:var(--text-primary)}.quantity-adjustment-form .variant-name{margin:.25rem 0 0;font-size:.8125rem;color:var(--text-secondary)}.quantity-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface-secondary);border-radius:var(--radius-sm)}.quantity-info{display:flex;flex-direction:column;align-items:center;gap:.5rem}.quantity-info label{font-size:.75rem;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.quantity-info .current-qty{font-size:1.5rem;font-weight:600;color:var(--text-secondary)}.quantity-info .new-qty{font-size:1.5rem;font-weight:600;color:var(--success-color)}.quantity-add{display:flex;flex-direction:column;align-items:center;gap:.5rem}.quantity-add label{font-size:.75rem;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.quantity-add input{width:80px;padding:.75rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:1.25rem;font-weight:600;text-align:center;color:var(--text-primary)}.quantity-add input:focus{outline:none;border-color:var(--primary)}.quantity-adjustment-form .form-group{margin-bottom:1.5rem}.quantity-adjustment-form .form-group label{display:block;margin-bottom:.5rem;font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.quantity-adjustment-form textarea{width:100%;padding:.75rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.875rem;color:var(--text-primary);resize:vertical}.quantity-adjustment-form textarea:focus{outline:none;border-color:var(--primary)}.quantity-adjustment-form .form-actions{display:flex;justify-content:flex-end;gap:.75rem}.quantity-adjustment-form .cancel-btn{padding:.75rem 1.25rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.quantity-adjustment-form .cancel-btn:hover{background:var(--surface-tertiary)}.quantity-adjustment-form .submit-btn{padding:.75rem 1.5rem;background:var(--primary);border:none;border-radius:var(--radius-sm);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.quantity-adjustment-form .submit-btn:hover:not(:disabled){background:var(--primary-hover)}.quantity-adjustment-form .submit-btn:disabled{opacity:.5;cursor:not-allowed}.potential-matches-section{background:var(--surface-primary);border:1px solid var(--warning-color);border-radius:var(--radius-md);padding:1.5rem}.matches-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;color:var(--warning-color)}.matches-header h4{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.matches-description{margin:0 0 1.25rem;font-size:.875rem;color:var(--text-secondary)}.matches-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.match-card{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm)}.match-info{display:flex;flex-direction:column;gap:.25rem}.match-title{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.match-vendor{font-size:.8125rem;color:var(--text-secondary)}.match-variants{display:flex;flex-wrap:wrap;gap:.375rem}.match-variants .variant-chip{display:inline-block;padding:.25rem .5rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);font-size:.75rem;color:var(--text-secondary)}.match-variants .variant-chip.more{background:var(--surface-tertiary);color:var(--text-tertiary);font-style:italic}.add-to-existing-btn{padding:.625rem 1rem;background:var(--primary);border:none;border-radius:var(--radius-sm);color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.add-to-existing-btn:hover{background:var(--primary-hover)}.matches-actions{padding-top:1rem;border-top:1px solid var(--border-primary)}.create-new-btn{width:100%;padding:.75rem 1.5rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.create-new-btn:hover{background:var(--surface-tertiary);border-color:var(--text-tertiary)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.review-modal{width:100%;max-width:800px;max-height:90vh;background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-primary);background:var(--surface-secondary)}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}.close-btn:hover{background:var(--surface-tertiary);color:var(--text-primary)}.modal-body{flex:1;overflow-y:auto;padding:1.5rem}.submission-info{display:flex;gap:2rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface-secondary);border-radius:var(--radius-sm);font-size:.875rem;color:var(--text-secondary)}.submission-info strong{color:var(--text-primary)}.form-section{margin-bottom:1.5rem}.form-section h4{margin:0 0 1rem;font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.section-header h4{margin:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-group label{font-size:.8125rem;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select,.form-section textarea{padding:.625rem .875rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.875rem;color:var(--text-primary);transition:border-color .15s ease}.form-group input:focus,.form-group select:focus,.form-section textarea:focus{outline:none;border-color:var(--primary)}.form-section textarea{width:100%;resize:vertical;min-height:80px}.add-variant-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);color:var(--text-primary);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease}.add-variant-btn:hover{background:var(--surface-tertiary);border-color:var(--primary);color:var(--primary)}.variants-table{border:1px solid var(--border-primary);border-radius:var(--radius-sm);overflow:hidden}.variants-header{display:grid;grid-template-columns:1fr 1fr 60px 1.2fr 80px 80px 36px;gap:.5rem;padding:.625rem .75rem;background:var(--surface-secondary);font-size:.6875rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.variant-row{display:grid;grid-template-columns:1fr 1fr 60px 1.2fr 80px 80px 36px;gap:.5rem;padding:.5rem .75rem;border-top:1px solid var(--border-primary);align-items:center}.variant-row input{padding:.5rem .625rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-xs);font-size:.8125rem;color:var(--text-primary);min-width:0}.variant-row input:focus{outline:none;border-color:var(--primary)}.variant-row input[type=number]{-moz-appearance:textfield}.variant-row input[type=number]::-webkit-outer-spin-button,.variant-row input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.remove-variant-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:none;border-radius:var(--radius-xs);color:var(--text-tertiary);cursor:pointer;transition:all .15s ease}.remove-variant-btn:hover:not(:disabled){background:var(--error-color-bg);color:var(--error-color)}.remove-variant-btn:disabled{opacity:.3;cursor:not-allowed}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.25rem 1.5rem;background:var(--surface-secondary);border-top:1px solid var(--border-primary)}.btn-reject,.btn-approve{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-reject{background:var(--surface-primary);border:1px solid var(--border-primary);color:var(--error-color)}.btn-reject:hover:not(:disabled){background:var(--error-color-bg);border-color:var(--error-color)}.btn-approve{background:var(--success-color);border:none;color:#fff}.btn-approve:hover:not(:disabled){background:var(--success-color-hover)}.btn-reject:disabled,.btn-approve:disabled{opacity:.6;cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .6s linear infinite}@media (max-width: 600px){.form-row{grid-template-columns:1fr}.variants-header{display:none}.variant-row{display:flex;flex-wrap:wrap;gap:.5rem}.variant-row input{flex:1 1 45%;min-width:80px}.submission-info{flex-direction:column;gap:.5rem}}.product-review-page{width:100%}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:2rem}.header-content h1{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.header-content p{margin:0;font-size:1rem;color:var(--text-secondary)}.header-actions{display:flex;gap:1rem;flex-shrink:0}.status-filter{padding:.625rem 1rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.875rem;color:var(--text-primary);cursor:pointer}.status-filter:focus{outline:none;border-color:var(--primary)}.submissions-container{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-tertiary)}.loading-state .spinner{width:24px;height:24px;border:2px solid var(--border-primary);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite;margin-bottom:1rem}.empty-state svg{margin-bottom:1rem;opacity:.5}.empty-state h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text-secondary)}.empty-state p{margin:0;font-size:.9375rem}.submissions-count{padding:.75rem 1.25rem;background:var(--surface-secondary);font-size:.8125rem;color:var(--text-secondary);border-bottom:1px solid var(--border-primary)}.submissions-table{overflow-x:auto}.table-header{display:grid;grid-template-columns:2fr 1fr 1.5fr 100px 80px 100px 80px;gap:1rem;padding:.875rem 1.25rem;background:var(--surface-secondary);font-size:.75rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-primary)}.table-row{display:grid;grid-template-columns:2fr 1fr 1.5fr 100px 80px 100px 80px;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border-primary);align-items:center;transition:background .15s ease}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--surface-secondary)}.product-cell{display:flex;flex-direction:column;gap:.25rem;min-width:0}.product-name{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-location{font-size:.75rem;color:var(--text-tertiary)}.type-cell{font-size:.875rem;color:var(--text-secondary)}.submitter-cell{display:flex;flex-direction:column;gap:.125rem;min-width:0}.submitter-name{font-size:.875rem;color:var(--text-primary)}.submitter-email{font-size:.75rem;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.date-cell{font-size:.875rem;color:var(--text-secondary)}.variants-cell{font-size:.875rem;color:var(--text-secondary);text-align:center}.status-cell{display:flex}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-pill);font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.status-badge.pending{background:var(--warning-color-bg);color:var(--warning-color)}.status-badge.success{background:var(--success-color-bg);color:var(--success-color)}.status-badge.error{background:var(--error-color-bg);color:var(--error-color)}.actions-cell{display:flex;justify-content:flex-end}.review-btn{padding:.5rem 1rem;background:var(--primary);border:none;border-radius:var(--radius-sm);color:#fff;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background .15s ease}.review-btn:hover{background:var(--primary-hover)}@media (max-width: 1024px){.page-header{flex-direction:column;gap:1rem}.table-header{display:none}.table-row{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem}.product-cell{order:1}.status-cell{order:2;align-self:flex-start}.type-cell,.submitter-cell,.date-cell,.variants-cell{font-size:.8125rem}.actions-cell{order:10;width:100%;padding-top:.75rem;border-top:1px solid var(--border-primary)}.review-btn{width:100%;padding:.75rem}}.inventory-reports{width:100%}.reports-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.header-left h1{margin:0 0 .25rem;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.header-left p{margin:0;font-size:.875rem;color:var(--text-secondary)}.header-actions{display:flex;gap:.75rem}.btn-export{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-export.csv{background:var(--surface-secondary);border:1px solid var(--border-primary);color:var(--text-primary)}.btn-export.csv:hover{background:var(--surface-tertiary);border-color:var(--primary)}.btn-export.pdf{background:var(--primary);border:1px solid var(--primary);color:#fff}.btn-export.pdf:hover{background:var(--primary-hover)}.reports-filters{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary)}.tabs{display:flex;gap:.5rem}.tab{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.tab:hover{background:var(--surface-secondary);color:var(--text-primary)}.tab.active{background:var(--primary-bg);border-color:var(--primary);color:var(--primary)}.tab .count{padding:.125rem .5rem;background:var(--surface-tertiary);border-radius:var(--radius-pill);font-size:.75rem}.tab.active .count{background:var(--primary);color:#fff}.filter-controls{display:flex;gap:.75rem}.filter-controls select{padding:.625rem 2rem .625rem .875rem;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.875rem;color:var(--text-primary);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.filter-controls select:focus{outline:none;border-color:var(--primary)}.reports-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.summary-card{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.25rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.summary-card .label{font-size:.75rem;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.summary-card .value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.summary-card .value.pending{color:var(--warning-color)}.summary-card .value.approved{color:var(--success-color)}.summary-card .value.rejected{color:var(--error-color)}.reports-table-container{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.reports-table{width:100%;border-collapse:collapse}.reports-table th{padding:.875rem 1rem;background:var(--surface-secondary);font-size:.75rem;font-weight:600;color:var(--text-secondary);text-align:left;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-primary)}.reports-table td{padding:.875rem 1rem;font-size:.875rem;color:var(--text-primary);border-bottom:1px solid var(--border-primary)}.reports-table tbody tr:last-child td{border-bottom:none}.reports-table tbody tr:hover{background:var(--surface-secondary)}.variant-info{color:var(--text-tertiary);font-size:.8125rem}.qty-added{font-weight:600;color:var(--success-color)}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:var(--radius-pill);font-size:.75rem;font-weight:500;text-transform:capitalize}.status-badge.pending_review{background:var(--warning-bg);color:var(--warning-color)}.status-badge.pushed_to_shopify,.status-badge.approved{background:var(--success-bg);color:var(--success-color)}.status-badge.rejected{background:var(--error-bg);color:var(--error-color)}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);text-align:center}.loading-state .spinner{width:32px;height:32px;border:3px solid var(--border-primary);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.loading-state p,.empty-state p{margin:0;color:var(--text-secondary);font-size:.875rem}.empty-state svg{color:var(--text-tertiary);margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:var(--text-primary)}@media (max-width: 768px){.reports-header{flex-direction:column}.reports-filters{flex-direction:column;align-items:stretch}.tabs{overflow-x:auto}.filter-controls{flex-wrap:wrap}.reports-summary{grid-template-columns:repeat(2,1fr)}.reports-table-container{overflow-x:auto}.reports-table{min-width:600px}}.calendar-layout{display:flex;gap:var(--space-4);height:calc(100vh - 380px);min-height:350px}.calendar-layout.expanded{height:calc(100vh - 80px);flex:1}.calendar-layout.expanded .staff-sidebar{width:180px}.calendar-layout.expanded .staff-chip{padding:var(--space-3) var(--space-4)}.calendar-layout.expanded .chip-name{font-size:var(--text-base)}.calendar-layout.expanded .chip-rate{font-size:var(--text-sm)}.staff-sidebar{width:140px;flex-shrink:0;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.sidebar-header{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);text-align:center;padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.staff-chips{display:flex;flex-direction:column;gap:var(--space-2);flex:1;overflow-y:auto}.staff-chip{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:#fff;cursor:grab;-webkit-user-select:none;user-select:none;transition:transform .15s,box-shadow .15s,opacity .15s;display:flex;flex-direction:column;gap:2px}.staff-chip:hover{transform:scale(1.02);box-shadow:var(--shadow-md)}.staff-chip:active,.staff-chip.dragging{cursor:grabbing;transform:scale(1.05);box-shadow:var(--shadow-lg);opacity:.8}.chip-name{font-size:var(--text-sm);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-rate{font-size:10px;opacity:.85}.sidebar-hint{font-size:10px;color:var(--text-secondary);text-align:center;padding-top:var(--space-2);border-top:1px solid var(--border)}.time-slot.drop-target,.month-day.drop-target{background:var(--accent)!important;opacity:.3}.staffing-calendar{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:column;flex:1}.week-view .calendar-header{display:grid;grid-template-columns:60px repeat(7,1fr);border-bottom:1px solid var(--border);background:var(--surface-elevated)}.week-view .time-column-header{padding:var(--space-3)}.week-view .day-header{display:flex;flex-direction:column;align-items:center;padding:var(--space-3);border-left:1px solid var(--border)}.week-view .day-header.today{background:var(--accent-subtle)}.week-view .day-header .day-name{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase}.week-view .day-header .day-number{font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.week-view .day-header.today .day-number{background:var(--accent);color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center}.week-view .calendar-body{display:grid;grid-template-columns:60px repeat(7,1fr);flex:1;overflow-y:auto}.week-view .time-column{background:var(--surface-elevated);border-right:1px solid var(--border)}.week-view .time-slot-label{height:50px;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);color:var(--text-secondary);text-align:right}.week-view .day-column{position:relative;border-left:1px solid var(--border)}.week-view .day-column.today{background:var(--accent-subtle)}.week-view .time-slot{height:50px;border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background-color .15s}.week-view .time-slot:hover,.week-view .time-slot.hovered{background:var(--accent-subtle)}.week-view .shifts-container{position:absolute;top:0;left:4px;right:4px;pointer-events:none}.week-view .shift-block{position:absolute;border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);color:#fff;overflow:hidden;cursor:pointer;pointer-events:auto;transition:box-shadow .15s;min-height:24px;box-sizing:border-box;margin-right:2px}.week-view .shift-block:hover{box-shadow:var(--shadow-lg);z-index:10}.week-view .shift-block.dragging{opacity:.5;cursor:grabbing}.week-view .shift-block:active{cursor:grabbing}.week-view .shift-block.resizing{cursor:ns-resize}.resize-handle{position:absolute;left:0;right:0;height:8px;cursor:ns-resize;z-index:5}.resize-handle.resize-top{top:0;border-radius:var(--radius-md) var(--radius-md) 0 0}.resize-handle.resize-bottom{bottom:0;border-radius:0 0 var(--radius-md) var(--radius-md)}.resize-handle:hover{background:#fff3}.week-view .shift-content{display:flex;flex-direction:column;gap:2px;font-size:var(--text-xs)}.week-view .shift-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-view .shift-time{opacity:.9}.week-view .shift-cost{opacity:.8;font-size:10px}.month-view .calendar-header{display:grid;grid-template-columns:repeat(7,1fr);background:var(--surface-elevated);border-bottom:1px solid var(--border)}.month-view .day-header{padding:var(--space-2) var(--space-3);text-align:center;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.month-view .calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);flex:1;overflow-y:auto}.month-view .month-day{min-height:100px;padding:var(--space-2);border-right:1px solid var(--border);border-bottom:1px solid var(--border);cursor:pointer;transition:background-color .15s}.month-view .month-day:nth-child(7n){border-right:none}.month-view .month-day:hover{background:var(--surface-elevated)}.month-view .month-day.other-month{background:var(--surface-elevated);opacity:.5}.month-view .month-day.today{background:var(--accent-subtle)}.month-view .month-day .day-number{font-size:var(--text-sm);font-weight:500;color:var(--text-primary);margin-bottom:var(--space-1)}.month-view .month-day.today .day-number{background:var(--accent);color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center}.month-view .day-shifts{display:flex;flex-direction:column;gap:2px}.month-view .shift-pill{padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:transform .15s}.month-view .shift-pill:hover{transform:scale(1.02)}.month-view .more-shifts{font-size:10px;color:var(--text-secondary);padding:2px 0}.month-view .day-summary{display:flex;justify-content:space-between;margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--border-subtle);font-size:10px;color:var(--text-secondary)}body.resizing-shift{cursor:ns-resize!important;-webkit-user-select:none!important;user-select:none!important}body.resizing-shift *{cursor:ns-resize!important}.shift-header{display:flex;align-items:center;gap:4px}.shift-badge{display:flex;align-items:center;justify-content:center;flex-shrink:0}.template-badge svg{opacity:.7}.cancelled-badge svg{opacity:.9}.modified-badge svg{opacity:.9}.shift-reason{font-size:9px;opacity:.75;font-style:italic;text-transform:capitalize}.week-view .shift-block.from-template{border-left:3px solid rgba(255,255,255,.5)}.week-view .shift-block.override{border:2px dashed rgba(255,255,255,.6)}.week-view .shift-block.modified{border:2px dashed rgba(255,255,255,.6);background-image:repeating-linear-gradient(45deg,transparent,transparent 8px,rgba(255,255,255,.05) 8px,rgba(255,255,255,.05) 16px)}.week-view .shift-block.cancelled{opacity:.4;background-color:var(--text-secondary)!important}.week-view .shift-block.cancelled .shift-name{text-decoration:line-through}.week-view .shift-block.cancelled .shift-time{text-decoration:none;font-style:italic}.month-view .shift-pill.from-template{display:flex;align-items:center;gap:2px}.month-view .shift-pill .template-icon{opacity:.7;flex-shrink:0}.month-view .shift-pill.cancelled{text-decoration:line-through;opacity:.5}.staffing-scheduler{width:100%}.staffing-scheduler.expanded{position:fixed;top:0;left:0;right:0;bottom:0;max-width:none;z-index:100;background:var(--background);padding:var(--space-4);display:flex;flex-direction:column;overflow:hidden}.staffing-scheduler.expanded .staffing-header{margin-bottom:var(--space-3);flex-shrink:0;background:var(--background)}.staffing-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.staffing-header h1{font-size:var(--text-2xl);font-weight:600;color:var(--text-primary);margin:0}.header-left{display:flex;align-items:center;gap:var(--space-4)}.view-toggle{display:flex;background:var(--surface-elevated);border-radius:var(--radius-md);padding:2px;border:1px solid var(--border)}.toggle-btn{padding:var(--space-2) var(--space-4);border:none;background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;cursor:pointer;border-radius:var(--radius-sm);transition:all .15s}.toggle-btn.active{background:var(--accent);color:#fff}.toggle-btn:hover:not(.active){color:var(--text-primary)}.header-center{display:flex;align-items:center;gap:var(--space-2)}.nav-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .15s}.nav-btn:hover{background:var(--surface-elevated);color:var(--text-primary)}.current-period{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);min-width:200px;text-align:center}.today-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all .15s}.today-btn:hover{background:var(--surface-elevated);color:var(--text-primary)}.expand-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all .15s}.expand-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.header-right{display:flex;gap:var(--space-3);align-items:center}.budget-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.budget-card{padding:var(--space-4)}.budget-card.success{border-color:var(--success);background:var(--success-subtle)}.budget-card.warning{border-color:var(--warning);background:var(--warning-subtle)}.budget-card.error{border-color:var(--error);background:var(--error-subtle)}.budget-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-1);display:flex;align-items:center;gap:var(--space-2)}.edit-budget-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .15s}.edit-budget-btn:hover{opacity:1}.budget-value{font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--space-1)}.budget-subtitle{font-size:var(--text-xs);color:var(--text-secondary)}.staff-breakdown-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-2)}.staff-breakdown-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.staff-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.staff-breakdown-name{flex:1;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.staff-breakdown-hours{color:var(--text-secondary)}.staff-breakdown-cost{font-weight:500;color:var(--text-primary)}.loading-card{padding:var(--space-12);text-align:center;color:var(--text-secondary)}.staff-modal-content{display:flex;gap:var(--space-6);min-width:350px}.staff-modal-content:has(.staff-list){min-width:650px}.staff-modal-content:not(:has(.staff-list)) .staff-form{width:100%;max-width:400px;margin:0 auto}@media (max-width: 768px){.staff-modal-content{flex-direction:column;min-width:auto}.staff-modal-content:has(.staff-list){min-width:auto}}.staff-form h3,.staff-list h3{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-4);color:var(--text-primary)}.staff-form{display:flex;flex-direction:column;gap:var(--space-4);flex:1;min-width:280px}.color-picker label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-2)}.color-options{display:flex;gap:var(--space-2);flex-wrap:wrap}.color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s,border-color .15s}.color-option.selected{border-color:var(--text-primary)}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-4)}.staff-list{border-left:1px solid var(--border);padding-left:var(--space-6);flex:1;min-width:280px;max-height:400px;overflow-y:auto}.staff-list-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);transition:background-color .15s}.staff-list-item:hover{background:var(--surface-elevated)}.staff-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.staff-info{flex:1;display:flex;flex-direction:column;gap:2px}.staff-name{font-weight:500;color:var(--text-primary)}.staff-rate{font-size:var(--text-sm);color:var(--text-secondary)}.staff-actions{display:flex;gap:var(--space-2)}.staff-actions .icon-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all .15s}.staff-actions .icon-btn:hover{background:var(--surface-elevated);color:var(--text-primary);border-color:var(--text-secondary)}.staff-actions .icon-btn.danger{border-color:var(--error);color:var(--error);background:var(--error-subtle)}.staff-actions .icon-btn.danger:hover{background:var(--error);color:#fff}.shift-form{display:flex;flex-direction:column;gap:var(--space-4);min-width:350px}.shift-form .form-group{display:flex;flex-direction:column;gap:var(--space-2)}.shift-form .form-group label{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.shift-form select{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text-primary);font-size:var(--text-sm)}.time-inputs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.shift-cost-preview{display:flex;justify-content:space-between;padding:var(--space-3);background:var(--surface-elevated);border-radius:var(--radius-md);font-size:var(--text-sm)}.shift-cost-preview .cost{font-weight:600;color:var(--accent)}.budget-form{display:flex;flex-direction:column;gap:var(--space-4);min-width:300px}.budget-period{font-size:var(--text-lg);font-weight:600;color:var(--text-primary);text-align:center;margin-bottom:var(--space-2)}@media (max-width: 768px){.staffing-scheduler{padding:var(--space-4)}.staffing-header{flex-direction:column;align-items:flex-start}.header-left,.header-center{width:100%;justify-content:center}.header-right,.header-right button{width:100%}.budget-cards{grid-template-columns:1fr 1fr}.shift-form,.budget-form{min-width:auto}}body.staffing-expanded-mode .header{display:none!important}body.staffing-expanded-mode .layout-header .main-content{padding:0;min-height:auto}.template-status{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--success-subtle);color:var(--success);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500}.template-status.active{border:1px solid var(--success)}.template-form{min-width:350px}.template-info{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background:var(--surface-elevated);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.template-info-row{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm)}.template-info-label{color:var(--text-secondary)}.template-description{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-4);line-height:1.5}.template-activation-form{display:flex;flex-direction:column;gap:var(--space-4)}.template-help-text{font-size:var(--text-xs);color:var(--text-secondary);margin:0}.override-form{display:flex;flex-direction:column;gap:var(--space-4);min-width:380px}.override-shift-info{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--surface-elevated);border-radius:var(--radius-md);flex-wrap:wrap}.override-staff{display:flex;align-items:center;gap:var(--space-2);font-weight:600;padding-left:var(--space-2);border-left:3px solid}.override-date{font-size:var(--text-sm);color:var(--text-secondary)}.override-type-options{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.override-type-btn{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);border:2px solid var(--border);background:var(--surface);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);transition:all .15s}.override-type-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}.override-type-btn.active{border-color:var(--accent);background:var(--accent-subtle);color:var(--accent)}.override-help-text{font-size:var(--text-xs);color:var(--text-secondary);margin:0;padding:var(--space-3);background:var(--surface-elevated);border-radius:var(--radius-md)}.staff-management{height:100%;display:flex;flex-direction:column;overflow:hidden}.staff-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-shrink:0}.staff-header .header-left{display:flex;align-items:center;gap:.75rem}.staff-header h1{font-size:1.5rem;font-weight:600;margin:0;color:var(--text-primary)}.staff-header .header-right{display:flex;align-items:center;gap:1rem}.search-box{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md)}.search-box svg{color:var(--text-secondary)}.search-box input{border:none;background:transparent;color:var(--text-primary);font-size:.875rem;width:200px;outline:none}.search-box input::placeholder{color:var(--text-secondary)}.show-inactive{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary);cursor:pointer}.show-inactive input{accent-color:var(--primary-color)}.staff-content{display:grid;grid-template-columns:350px 1fr;gap:1.5rem;flex:1;overflow:hidden;min-height:0}.staff-list-panel{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column}.staff-list{flex:1;overflow-y:auto;padding:.5rem}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:var(--text-secondary);gap:1rem}.empty-state svg{opacity:.5}.staff-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;border:1px solid transparent}.staff-card:hover{background-color:var(--nav-hover-bg)}.staff-card.selected{background-color:var(--nav-hover-bg);border-color:var(--primary-color)}.staff-card.inactive{opacity:.6}.staff-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem;flex-shrink:0}.staff-info{flex:1;min-width:0}.staff-name{font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:.5rem;font-size:.875rem}.staff-meta{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem;margin-top:.125rem}.staff-meta .role{padding-right:.5rem;border-right:1px solid var(--border-color)}.hours-bar{position:relative;height:4px;background-color:var(--border-color);border-radius:2px;margin-top:.5rem;overflow:hidden}.hours-fill{position:absolute;left:0;top:0;height:100%;border-radius:2px;transition:width .3s ease}.hours-bar.over-limit .hours-fill{background-color:var(--danger-color)!important}.hours-text{position:absolute;right:0;top:-14px;font-size:.625rem;color:var(--text-secondary)}.staff-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .15s ease}.staff-card:hover .staff-actions{opacity:1}.staff-detail-panel{overflow-y:auto}.staff-detail-panel .card{height:fit-content}.detail-header{display:flex;align-items:center;gap:1rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color);margin-bottom:1.5rem}.detail-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.5rem;flex-shrink:0}.detail-title{flex:1}.detail-title h2{font-size:1.25rem;font-weight:600;margin:0;color:var(--text-primary)}.detail-title p{font-size:.875rem;color:var(--text-secondary);margin:.25rem 0 0}.detail-actions{display:flex;gap:.5rem}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.detail-section{display:flex;flex-direction:column;gap:.75rem}.detail-section.full-width{grid-column:1 / -1}.detail-section h3{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px;margin:0}.info-row{display:flex;justify-content:space-between;align-items:flex-start;padding:.5rem 0;border-bottom:1px solid var(--border-color)}.info-row:last-child{border-bottom:none}.info-row .label{font-size:.8125rem;color:var(--text-secondary)}.info-row .value{font-size:.8125rem;color:var(--text-primary);text-align:right;word-break:break-word;max-width:60%}.notes-text{font-size:.875rem;color:var(--text-primary);line-height:1.5;white-space:pre-wrap}.no-contracts{font-size:.875rem;color:var(--text-secondary);font-style:italic}.hours-summary{display:flex;gap:1.5rem}.hours-stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.stat-value.over{color:var(--danger-color)}.stat-label{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.pay-summary{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.pay-summary .stat-value{color:var(--success-color)}.contracts-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.contract-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background-color:var(--background-color);border-radius:var(--radius-sm)}.contract-item svg{color:var(--text-secondary);flex-shrink:0}.contract-info{flex:1;min-width:0;display:flex;flex-direction:column}.contract-name{font-size:.8125rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-meta{font-size:.6875rem;color:var(--text-secondary)}.staff-form{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;padding-bottom:0;max-height:calc(100vh - 180px);overflow-y:auto}.form-section{display:flex;flex-direction:column;gap:1rem}.form-section h3{font-size:.8125rem;font-weight:600;color:var(--text-primary);margin:0;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.form-group select,.form-group textarea{padding:.625rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--background-color);color:var(--text-primary);font-size:.875rem;font-family:inherit}.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group textarea{resize:vertical;min-height:60px}.color-picker{display:flex;flex-direction:column;gap:.375rem}.color-picker label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.color-options{display:flex;gap:.5rem;flex-wrap:wrap}.color-option.selected{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--surface-color)}.upload-area{display:flex;align-items:center;gap:1rem}.upload-hint{font-size:.75rem;color:var(--text-secondary)}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;border-top:1px solid var(--border-color);background-color:var(--surface-color);padding:1rem 1.5rem;margin:1.5rem -1.5rem 0;flex-shrink:0}.delete-confirm{display:flex;flex-direction:column;gap:1rem}.delete-confirm p{margin:0;font-size:.875rem;color:var(--text-primary)}.warning-text{color:var(--danger-color)!important;font-size:.8125rem!important}.confirm-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.icon-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .15s ease}.icon-btn:hover{background-color:var(--nav-hover-bg);color:var(--text-primary)}.icon-btn.danger:hover{color:var(--danger-color);background-color:#ef44441a}@media (max-width: 1024px){.staff-content{grid-template-columns:1fr}.staff-list-panel{max-height:300px}.form-grid{grid-template-columns:1fr}}.create-group-form{display:flex;flex-direction:column;gap:1rem}.create-group-form .form-error{background-color:#ef44441a;color:var(--danger-color);padding:.75rem;border-radius:var(--radius-sm);font-size:.875rem}.create-group-form .form-group{display:flex;flex-direction:column;gap:.375rem}.create-group-form label{font-size:.8125rem;font-weight:500;color:var(--text-primary)}.create-group-form .form-input{padding:.625rem .75rem;font-size:.875rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--surface-color);color:var(--text-primary);transition:border-color .15s ease}.create-group-form .form-input:focus{outline:none;border-color:var(--primary-color)}.create-group-form textarea.form-input{resize:vertical;min-height:60px}.color-picker{display:flex;gap:.5rem;flex-wrap:wrap}.color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .15s ease}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--background-color)}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.group-list{display:flex;flex-direction:column;height:100%}.group-list-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border-color)}.group-list-header h3{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px}.group-list-header .btn-icon{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.group-list-header .btn-icon:hover{background-color:var(--nav-hover-bg);color:var(--primary-color)}.group-list-items{flex:1;overflow-y:auto;padding:.5rem}.no-groups{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center;color:var(--text-secondary)}.no-groups p{margin:0 0 .25rem;font-weight:500}.no-groups span{font-size:.75rem}.group-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem;border:none;background:transparent;border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all .15s ease}.group-item:hover{background-color:var(--nav-hover-bg)}.group-item.active{background-color:var(--primary-color)}.group-item.active .group-name,.group-item.active .group-members{color:#fff}.group-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.group-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.group-name{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-members{font-size:.75rem;color:var(--text-secondary)}.unread-badge{background-color:var(--danger-color);color:#fff;font-size:.6875rem;font-weight:600;padding:.125rem .375rem;border-radius:9999px;min-width:18px;text-align:center}.group-item.active .unread-badge{background-color:#fff;color:var(--primary-color)}.message-composer{padding:1rem;border-top:1px solid var(--border-color);background-color:var(--surface-color)}.replying-to{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;margin-bottom:.75rem;background-color:var(--background-color);border-radius:var(--radius-sm);font-size:.8125rem;color:var(--text-secondary)}.replying-to strong{color:var(--text-primary)}.cancel-reply{width:20px;height:20px;border:none;background:transparent;color:var(--text-secondary);font-size:1.25rem;line-height:1;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center}.cancel-reply:hover{background-color:var(--border-color);color:var(--text-primary)}.composer-form{display:flex;flex-direction:column;gap:.75rem}.textarea-wrapper{position:relative}.composer-form textarea{width:100%;min-height:40px;max-height:150px;padding:.625rem .875rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--background-color);color:var(--text-primary);font-family:inherit;font-size:.875rem;line-height:1.5;resize:none;transition:border-color .15s ease}.composer-form textarea:focus{outline:none;border-color:var(--primary-color)}.composer-form textarea::placeholder{color:var(--text-secondary)}.composer-form textarea:disabled{opacity:.6;cursor:not-allowed}.composer-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem}.announcement-toggle{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.announcement-toggle input[type=checkbox]{display:none}.announcement-toggle:hover{color:var(--text-primary)}.announcement-toggle input:checked+svg{color:var(--primary-color)}.announcement-toggle input:checked~span{color:var(--primary-color);font-weight:500}.send-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;margin-left:auto}.send-btn:disabled{opacity:.5;cursor:not-allowed}.autocomplete-dropdown{position:absolute;bottom:100%;left:0;right:0;margin-bottom:.5rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;max-height:300px;overflow:hidden;z-index:100}.autocomplete-header{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary);background-color:var(--background-color);border-bottom:1px solid var(--border-color)}.autocomplete-list{max-height:250px;overflow-y:auto}.autocomplete-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem .75rem;border:none;background:transparent;text-align:left;cursor:pointer;transition:background-color .1s ease}.autocomplete-item:hover,.autocomplete-item.selected{background-color:var(--nav-hover-bg)}.autocomplete-item .product-info{flex:1;min-width:0;display:flex;flex-direction:column}.autocomplete-item .product-title{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-item .product-sku{font-size:.75rem;color:var(--text-secondary)}.autocomplete-item .product-vendor{font-size:.75rem;color:var(--text-secondary);flex-shrink:0}.autocomplete-item .member-avatar-small{width:28px;height:28px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.autocomplete-item .member-info{flex:1;min-width:0;display:flex;flex-direction:column}.autocomplete-item .member-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.autocomplete-item .member-email{font-size:.75rem;color:var(--text-secondary)}.attachment-preview{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:.5rem}.attachment-info{display:flex;align-items:center;gap:.5rem;min-width:0;color:var(--text-primary)}.attachment-info svg{flex-shrink:0;color:var(--primary-color)}.attachment-name{font-size:.8125rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.attachment-size{font-size:.75rem;color:var(--text-secondary);flex-shrink:0}.attachment-remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:50%;transition:all .15s ease}.attachment-remove:hover{background-color:var(--border-color);color:var(--danger-color)}.attachment-error{padding:.5rem .75rem;margin-bottom:.5rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);color:var(--danger-color);font-size:.8125rem}.composer-left-actions{display:flex;align-items:center;gap:.75rem}.attach-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all .15s ease}.attach-btn:hover{background-color:var(--nav-hover-bg);color:var(--primary-color)}.attach-btn:disabled{opacity:.5;cursor:not-allowed}.message-thread{margin-top:.5rem;padding-left:2.5rem}.thread-toggle{display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;border:none;background:transparent;color:var(--primary-color);font-size:.8125rem;font-weight:500;cursor:pointer;border-radius:var(--radius-sm);transition:background-color .15s ease}.thread-toggle:hover{background-color:var(--nav-hover-bg)}.thread-content{margin-top:.5rem;padding-left:.75rem;border-left:2px solid var(--border-color)}.thread-loading{padding:.75rem;color:var(--text-secondary);font-size:.8125rem}.replies-list{display:flex;flex-direction:column;gap:.75rem;padding:.5rem 0}.reply{display:flex;gap:.5rem}.reply-avatar{width:24px;height:24px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:600;flex-shrink:0}.reply-content{flex:1;min-width:0}.reply-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.125rem}.reply-author{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.reply-time{font-size:.6875rem;color:var(--text-secondary)}.reply-delete-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;margin-left:auto;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);opacity:0;transition:all .15s ease}.reply:hover .reply-delete-btn{opacity:1}.reply-delete-btn:hover{background-color:#ef44441a;color:#ef4444}.reply-delete-btn:disabled{opacity:.5;cursor:not-allowed}.reply-text{font-size:.8125rem;line-height:1.4;color:var(--text-primary);margin:0;white-space:pre-wrap;word-break:break-word}.thread-composer{margin-top:.75rem}.thread-composer .message-composer{padding:0;border-top:none;background:transparent}.add-reply-btn,.start-thread-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;margin-top:.5rem;border:none;background:transparent;color:var(--text-secondary);font-size:.8125rem;cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.add-reply-btn:hover,.start-thread-btn:hover{background-color:var(--nav-hover-bg);color:var(--text-primary)}.start-thread-btn{margin-top:0;margin-left:-.625rem}.message-feed{display:flex;flex-direction:column;height:100%}.message-feed-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--text-secondary)}.message-feed-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);background-color:var(--surface-color)}.message-feed-header .group-info{display:flex;align-items:center;gap:.75rem}.message-feed-header .group-color-dot{width:12px;height:12px;border-radius:50%}.message-feed-header h2{font-size:1rem;font-weight:600;margin:0;color:var(--text-primary)}.message-feed-header p{font-size:.75rem;color:var(--text-secondary);margin:.125rem 0 0}.message-feed-header .btn-icon{width:36px;height:36px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.message-feed-header .btn-icon:hover{background-color:var(--nav-hover-bg);color:var(--text-primary)}.header-actions{display:flex;align-items:center;gap:.5rem}.hide-resolved-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem!important;width:auto!important;height:auto!important;font-size:.75rem;border-radius:var(--radius-sm)!important;transition:all .15s ease}.hide-resolved-btn .btn-label{white-space:nowrap}.hide-resolved-btn.active{background-color:var(--nav-hover-bg);color:var(--text-primary)}.hide-resolved-btn:hover{background-color:var(--nav-hover-bg)}.messages-container{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.no-messages{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--text-secondary);text-align:center}.no-messages svg{opacity:.5}.no-messages p{margin:0;font-weight:500}.no-messages span{font-size:.8125rem}.pinned-section{display:flex;flex-direction:column;gap:.5rem;padding-bottom:1rem;margin-bottom:.5rem;border-bottom:1px solid var(--border-color)}.messages-list{display:flex;flex-direction:column;gap:.5rem}.message{background-color:var(--surface-color);border-radius:var(--radius-md);padding:.875rem 1rem;border:1px solid var(--border-color)}.message.pinned{background-color:#e85a4f0d;border-color:#e85a4f33}.pinned-label{display:flex;align-items:center;gap:.375rem;font-size:.6875rem;font-weight:600;color:var(--primary-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.message-header{display:flex;align-items:center;gap:.625rem;margin-bottom:.5rem}.message-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:600;flex-shrink:0}.message-meta{flex:1;min-width:0}.message-author{font-size:.875rem;font-weight:600;color:var(--text-primary);display:block}.message-time{font-size:.6875rem;color:var(--text-secondary)}.message-actions{display:flex;gap:.25rem;opacity:0;transition:opacity .15s ease}.message:hover .message-actions{opacity:1}.action-btn{display:flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border:none;background:transparent;color:var(--text-secondary);font-size:.75rem;cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.action-btn:hover{background-color:var(--nav-hover-bg);color:var(--text-primary)}.action-btn.danger:hover{color:var(--danger-color);background-color:#ef44441a}.message-content{font-size:.875rem;line-height:1.5;color:var(--text-primary);white-space:pre-wrap;word-break:break-word}.tag{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;vertical-align:baseline}.tag-icon{font-size:.75rem;opacity:.8}.tag-product{background-color:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.tag-product .tag-sku{margin-left:.25rem;padding-left:.25rem;border-left:1px solid rgba(59,130,246,.3);font-size:.6875rem;opacity:.8}.tag-member{background-color:#e85a4f1a;color:var(--primary-color);border:1px solid rgba(232,90,79,.2)}.tag.clickable{cursor:pointer;transition:all .15s ease}.tag.clickable:hover{filter:brightness(.95);transform:translateY(-1px)}.message-top-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.status-wrapper{position:relative;margin-left:auto}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border-radius:var(--radius-sm);border:1px solid;font-size:.6875rem;font-weight:600;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.3px}.status-badge:hover{filter:brightness(.95)}.status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-menu{position:absolute;top:100%;right:0;margin-top:.25rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;z-index:100;min-width:120px;overflow:hidden}.status-option{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem .75rem;border:none;background:transparent;color:var(--text-primary);font-size:.8125rem;cursor:pointer;transition:background-color .15s ease;text-align:left}.status-option:hover{background-color:var(--nav-hover-bg)}.status-option.active{background-color:var(--nav-hover-bg);font-weight:600}.message-attachment{display:flex;align-items:center;gap:.75rem;margin-top:.75rem;padding:.75rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--radius-md)}.message-attachment .attachment-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:var(--nav-hover-bg);border-radius:var(--radius-sm);color:var(--primary-color);flex-shrink:0}.message-attachment .attachment-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.message-attachment .attachment-filename{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-attachment .attachment-filesize{font-size:.75rem;color:var(--text-secondary)}.message-attachment .attachment-download{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background-color:var(--primary-color);color:#fff;cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease;flex-shrink:0}.message-attachment .attachment-download:hover{background-color:var(--primary-hover);transform:translateY(-1px)}.resolved-hidden-notice{display:flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:.75rem;color:var(--text-secondary);background-color:var(--background-color);border-radius:var(--radius-sm);margin-top:.5rem}.show-resolved-btn{margin-top:.75rem}.message-edit-form{margin-top:.5rem}.edit-textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--primary-color);border-radius:var(--radius-sm);background-color:var(--background-color);color:var(--text-primary);font-family:inherit;font-size:.875rem;line-height:1.5;resize:none;min-height:60px}.edit-textarea:focus{outline:none;box-shadow:0 0 0 2px #e85a4f33}.edit-actions{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.edit-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.edit-action-btn.save{background-color:var(--primary-color);color:#fff}.edit-action-btn.save:hover{background-color:var(--primary-hover)}.edit-action-btn.cancel{background-color:var(--nav-hover-bg);color:var(--text-secondary)}.edit-action-btn.cancel:hover{background-color:var(--border-color);color:var(--text-primary)}.edit-hint{font-size:.6875rem;color:var(--text-secondary);margin-left:auto}.edited-indicator{font-size:.6875rem;color:var(--text-secondary);font-style:italic;margin-left:.375rem}.group-settings{display:flex;flex-direction:column;height:100%;background-color:var(--surface-color)}.settings-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.settings-header .group-info{display:flex;align-items:flex-start;gap:.75rem}.group-color-dot.large{width:16px;height:16px;border-radius:50%;flex-shrink:0;margin-top:.25rem}.settings-header h3{font-size:1rem;font-weight:600;margin:0;color:var(--text-primary)}.group-description{font-size:.8125rem;color:var(--text-secondary);margin:.25rem 0 0}.close-btn{width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center}.close-btn:hover{background-color:var(--nav-hover-bg);color:var(--text-primary)}.members-section{flex:1;overflow-y:auto;padding:1rem 1.25rem}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.section-title{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.btn-sm{padding:.375rem .625rem;font-size:.75rem;display:flex;align-items:center;gap:.375rem}.add-member-panel{margin-bottom:1rem;padding:.75rem;background-color:var(--background-color);border-radius:var(--radius-md)}.add-member-panel .form-input{width:100%;margin-bottom:.5rem}.manual-add-form{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.manual-add-form .btn{align-self:flex-end}.divider-text{text-align:center;font-size:.75rem;color:var(--text-secondary);margin:.5rem 0;position:relative}.divider-text:before,.divider-text:after{content:"";position:absolute;top:50%;width:30%;height:1px;background-color:var(--border-color)}.divider-text:before{left:0}.divider-text:after{right:0}.user-list{max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem}.no-users{padding:1rem;text-align:center;color:var(--text-secondary);font-size:.8125rem}.user-item{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-sm);text-align:left;width:100%}.user-item:hover{background-color:var(--surface-color)}.user-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.user-info{flex:1;min-width:0;display:flex;flex-direction:column}.user-name{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.625rem;color:var(--primary-color);text-transform:capitalize;padding:.125rem .375rem;background-color:#e85a4f1a;border-radius:var(--radius-full);width:fit-content}.phone-badge{color:var(--text-secondary);flex-shrink:0}.loading-members{padding:2rem;text-align:center;color:var(--text-secondary);font-size:.875rem}.members-list{display:flex;flex-direction:column;gap:.25rem}.member-item{display:flex;align-items:center;gap:.625rem;padding:.625rem;border-radius:var(--radius-sm);transition:background-color .15s ease}.member-item:hover{background-color:var(--background-color)}.member-avatar{width:36px;height:36px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:600;flex-shrink:0}.member-info{flex:1;min-width:0;display:flex;flex-direction:column}.member-name{font-size:.875rem;font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:.375rem}.creator-badge{color:#f59e0b}.member-meta{font-size:.75rem;color:var(--text-secondary);display:flex;align-items:center;gap:.25rem}.remove-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;opacity:0;transition:all .15s ease}.member-item:hover .remove-btn{opacity:1}.remove-btn:hover{background-color:#ef44441a;color:var(--danger-color)}.danger-zone{padding:1rem 1.25rem;border-top:1px solid var(--border-color)}.danger-zone h4{font-size:.75rem;font-weight:600;color:var(--danger-color);text-transform:uppercase;margin:0 0 .75rem}.danger-zone .btn-danger{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem}.confirm-delete{display:flex;flex-direction:column;gap:.75rem}.warning-message{display:flex;align-items:flex-start;gap:.5rem;font-size:.8125rem;color:var(--danger-color);background-color:#ef44441a;padding:.75rem;border-radius:var(--radius-sm)}.warning-message svg{flex-shrink:0;margin-top:.125rem}.confirm-actions{display:flex;gap:.5rem}.confirm-actions .btn{flex:1}.notification-toggle{width:28px;height:28px;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.notification-toggle.enabled{color:var(--success-color, #10b981)}.notification-toggle.enabled:hover{background-color:#10b9811a}.notification-toggle.disabled{color:var(--text-secondary);opacity:.6}.notification-toggle.disabled:hover{background-color:var(--nav-hover-bg);opacity:1}.notification-toggle:disabled{cursor:not-allowed;opacity:.5}.toggle-loading{width:12px;height:12px;border:2px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin .6s linear infinite}.no-email-badge{color:var(--text-secondary);opacity:.4;display:flex;align-items:center;justify-content:center;width:28px;flex-shrink:0}.communications-page{display:flex;height:75vh;max-height:calc(100vh - 120px);gap:0;background-color:var(--background-color);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border-color)}.communications-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:75vh;gap:1rem;color:var(--text-secondary)}.communications-sidebar{width:280px;min-width:280px;background-color:var(--surface-color);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.communications-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background-color:var(--background-color)}.communications-settings{width:320px;min-width:320px;background-color:var(--surface-color);border-left:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.no-group-selected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--text-secondary);padding:2rem;text-align:center}.no-group-selected svg{opacity:.5}.no-group-selected h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0}.no-group-selected p{font-size:.875rem;margin:0;max-width:300px}@media (max-width: 1024px){.communications-settings{position:absolute;right:0;top:0;bottom:0;z-index:100;box-shadow:-4px 0 20px #0003}}@media (max-width: 768px){.communications-page{flex-direction:column;height:auto;min-height:75vh}.communications-sidebar{width:100%;min-width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--border-color)}.communications-main{min-height:400px}.communications-settings{width:100%;min-width:100%;position:fixed;left:0;right:0;bottom:0;top:50%;border-left:none;border-top:1px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0}}.product-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.product-preview-modal{background-color:var(--surface-color);border-radius:var(--radius-lg);box-shadow:0 20px 40px #0000004d;max-width:400px;width:100%;position:relative;overflow:hidden}.product-preview-modal .close-btn{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;border:none;background-color:var(--nav-hover-bg);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .15s ease}.product-preview-modal .close-btn:hover{background-color:var(--border-color);color:var(--text-primary)}.product-preview-loading,.product-preview-not-found,.product-preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;gap:.75rem;color:var(--text-secondary)}.product-preview-loading .spinner,.product-preview-not-found svg,.product-preview-error svg{opacity:.6}.product-preview-loading h3,.product-preview-not-found h3,.product-preview-error h3{color:var(--text-primary);font-size:1rem;margin:0}.product-preview-loading p,.product-preview-not-found p,.product-preview-error p{font-size:.875rem;margin:0}.product-preview-content{display:flex;flex-direction:column}.product-preview-image{width:100%;height:200px;background-color:var(--background-color);display:flex;align-items:center;justify-content:center;overflow:hidden}.product-preview-image img{max-width:100%;max-height:100%;object-fit:contain}.product-preview-details{padding:1.25rem}.product-preview-details h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;line-height:1.4}.product-preview-details .vendor{font-size:.8125rem;color:var(--text-secondary);margin:0 0 .75rem}.product-preview-details .variant-info{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:1rem}.product-preview-details .sku{font-size:.75rem;color:var(--text-secondary);font-family:monospace;background-color:var(--nav-hover-bg);padding:.25rem .5rem;border-radius:var(--radius-sm);margin:0}.product-preview-details .price{font-size:1rem;font-weight:600;color:var(--primary-color);margin:0}.product-preview-details .stock{font-size:.8125rem;color:var(--text-secondary);margin:0}.view-product-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background-color:var(--primary-color);color:#fff;border-radius:var(--radius-sm);text-decoration:none;font-size:.875rem;font-weight:500;transition:all .15s ease}.view-product-btn:hover{background-color:var(--primary-hover)}.document-uploader{display:flex;flex-direction:column;gap:1rem}.upload-zone{display:flex;align-items:center;justify-content:center;min-height:160px;padding:2rem;border:2px dashed var(--border-color);border-radius:var(--radius-lg);background-color:var(--surface-color);cursor:pointer;transition:all .2s ease}.upload-zone:hover{border-color:var(--primary-color);background-color:var(--nav-hover-bg)}.upload-zone.drag-active{border-color:var(--primary-color);background-color:#e85a4f1a}.upload-zone.has-file{cursor:default;border-style:solid}.upload-prompt{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.upload-icon{color:var(--text-secondary);margin-bottom:.5rem}.upload-text{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0}.upload-hint{font-size:.875rem;color:var(--text-secondary);margin:0}.upload-formats{font-size:.75rem;color:var(--text-secondary);margin:.5rem 0 0;opacity:.8}.selected-file{display:flex;align-items:center;gap:1rem;width:100%}.file-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background-color:var(--nav-hover-bg);border-radius:var(--radius-md);color:var(--primary-color)}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.file-name{font-size:.9375rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:.8125rem;color:var(--text-secondary)}.clear-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all .15s ease}.clear-btn:hover{background-color:var(--nav-hover-bg);color:var(--danger-color)}.upload-error{padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md);color:var(--danger-color);font-size:.875rem}.upload-options{display:flex;flex-direction:column;gap:.75rem}.notes-section{display:flex;flex-direction:column;gap:.375rem}.notes-section label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.notes-input{padding:.625rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);color:var(--text-primary);font-size:.875rem;font-family:inherit;resize:vertical;min-height:60px;transition:border-color .15s ease}.notes-input::placeholder{color:var(--text-secondary);opacity:.7}.notes-input:focus{outline:none;border-color:var(--primary-color)}.upload-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9375rem}.upload-btn .spinner{width:16px;height:16px;border-width:2px}.document-list{display:flex;flex-direction:column;gap:.5rem}.document-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:var(--text-secondary);text-align:center;gap:.75rem}.document-list-empty p{margin:0;font-size:.875rem}.document-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.document-item:hover{border-color:var(--primary-color);background-color:var(--nav-hover-bg)}.document-item.selected{border-color:var(--primary-color);background-color:#e85a4f1a}.document-item.has-error{border-color:#ef44444d}.doc-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:var(--nav-hover-bg);border-radius:var(--radius-sm);color:var(--text-secondary);flex-shrink:0}.document-item.selected .doc-icon{color:var(--primary-color)}.doc-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.doc-name{font-size:.875rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.3;word-break:break-word}.doc-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary)}.doc-meta span:not(:last-child):not(.doc-notes-badge):after{content:"·";margin-left:.5rem}.doc-notes-badge{display:flex;align-items:center;color:var(--primary-color);margin-left:.25rem}.doc-notes-badge:after{display:none!important}.doc-right{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;flex-shrink:0}.doc-status{display:flex;align-items:center;gap:.25rem;font-size:.75rem;padding:.125rem .5rem;border-radius:var(--radius-full);background-color:var(--nav-hover-bg)}.doc-status.processed{color:var(--success-color)}.doc-status.error{color:var(--danger-color)}.doc-status.processing{color:var(--warning-color)}.doc-status.pending{color:var(--text-secondary)}.status-icon.success{color:var(--success-color)}.status-icon.error{color:var(--danger-color)}.status-icon.processing{color:var(--warning-color);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.doc-amount{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.doc-delete{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);opacity:0;transition:all .15s ease}.document-item:hover .doc-delete{opacity:1}.doc-delete:hover{background-color:#ef44441a;color:var(--danger-color)}.line-items-table{display:flex;flex-direction:column;gap:1rem}.line-items-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:var(--text-secondary);gap:1rem}.line-items-empty p{margin:0;font-size:.875rem}.table-header{display:flex;align-items:center;justify-content:space-between}.items-count{font-size:.875rem;color:var(--text-secondary)}.table-actions{display:flex;gap:.5rem}.table-wrapper{overflow:auto;border:1px solid var(--border-color);border-radius:var(--radius-md);max-height:500px}table{width:100%;border-collapse:collapse;font-size:.8125rem}th,td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid var(--border-color)}th{font-weight:600;color:var(--text-secondary);background-color:var(--surface-color);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:10}td{color:var(--text-primary);background-color:var(--background-color)}tr:hover td{background-color:var(--nav-hover-bg)}tr.editing td{background-color:#e85a4f0d}.num{text-align:right}.amount{font-weight:600}.total-label{text-align:right;font-weight:600;color:var(--text-primary)}.total{font-size:.9375rem;color:var(--primary-color)}tfoot td{border-bottom:none;background-color:var(--surface-color)}.description{max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expense-type-badge{display:inline-block;padding:.125rem .5rem;font-size:.6875rem;font-weight:500;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.3px}.expense-type-badge.inventory{background-color:#3b82f626;color:#3b82f6}.expense-type-badge.supplies{background-color:#10b98126;color:#10b981}.expense-type-badge.utilities{background-color:#f59e0b26;color:#f59e0b}.expense-type-badge.services{background-color:#8b5cf626;color:#8b5cf6}.expense-type-badge.shipping{background-color:#ec489926;color:#ec4899}.expense-type-badge.equipment{background-color:#6b728026;color:#6b7280}.expense-type-badge.marketing{background-color:#ef444426;color:#ef4444}.expense-type-badge.rent{background-color:#14b8a626;color:#14b8a6}.expense-type-badge.payroll{background-color:#6366f126;color:#6366f1}.expense-type-badge.other{background-color:var(--nav-hover-bg);color:var(--text-secondary)}.actions{width:60px}.actions .icon-btn{width:26px;height:26px;padding:0;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.icon-btn.edit:hover{background-color:var(--nav-hover-bg);color:var(--primary-color)}.icon-btn.delete:hover{background-color:#ef44441a;color:var(--danger-color)}.icon-btn.save{color:var(--success-color)}.icon-btn.save:hover{background-color:#10b9811a}.icon-btn.cancel:hover{background-color:var(--nav-hover-bg);color:var(--text-primary)}tr.editing input,tr.editing select{width:100%;padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--background-color);color:var(--text-primary);font-size:.8125rem;font-family:inherit}tr.editing input:focus,tr.editing select:focus{outline:none;border-color:var(--primary-color)}tr.editing input[type=number]{width:80px}tr.editing input[type=date]{width:130px}tr.editing td.num input{text-align:right}.finance-page{height:100%;display:flex;flex-direction:column;overflow:hidden}.finance-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--text-secondary)}.finance-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-shrink:0}.finance-header .header-left{display:flex;align-items:center;gap:.75rem}.finance-header .header-icon{color:var(--primary-color)}.finance-header h1{font-size:1.5rem;font-weight:600;margin:0;color:var(--text-primary)}.finance-header .header-right{display:flex;align-items:center;gap:.75rem}.finance-content{display:grid;grid-template-columns:380px 1fr;gap:1.5rem;flex:1;overflow:hidden;min-height:0}.finance-content:has(.finance-top-row){display:flex;flex-direction:column;gap:1rem}.finance-top-row{display:flex;gap:1rem;flex-shrink:0;min-height:220px}.finance-top-row .finance-dashboard{flex:1;margin-bottom:0;padding:1rem;overflow:hidden}.finance-top-row .dashboard-cards{gap:.75rem}.finance-top-row .dashboard-card{padding:.75rem}.finance-top-row .dashboard-card .card-icon{width:40px;height:40px}.finance-top-row .dashboard-card .card-value{font-size:1.125rem}.finance-top-row .dashboard-header,.finance-top-row .dashboard-section,.finance-top-row .dashboard-section-title{margin-bottom:.5rem}.upload-sidebar{width:320px;flex-shrink:0}.upload-sidebar .card{height:100%;display:flex;flex-direction:column}.upload-sidebar .card-body{padding:1rem;flex:1;overflow-y:auto}.invoices-card{flex:1;min-height:300px;display:flex;flex-direction:column}.invoices-card .card-body{flex:1;overflow:auto;padding:.75rem}.invoices-card .invoices-table-wrapper{height:100%;overflow-y:auto}.line-items-card{flex-shrink:0;max-height:500px;overflow:hidden}.line-items-card .card-body{overflow-y:auto;max-height:450px}.finance-sidebar{display:flex;flex-direction:column;gap:1rem;overflow:hidden}.finance-sidebar .card:first-child{flex-shrink:0}.finance-sidebar .card:last-child{flex:1;overflow:hidden;display:flex;flex-direction:column}.documents-list-container{flex:1;overflow-y:auto}.finance-main{overflow:hidden;display:flex;flex-direction:column}.finance-main .card{flex:1;overflow:hidden;display:flex;flex-direction:column}.finance-main .card-body{flex:1;overflow-y:auto}.card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.card-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.card-header h2{font-size:.9375rem;font-weight:600;margin:0;color:var(--text-primary)}.no-document-selected,.document-error,.document-processing,.loading-items{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:var(--text-secondary);gap:1rem}.no-document-selected svg{opacity:.5}.no-document-selected h3{margin:0;font-size:1.125rem;color:var(--text-primary)}.no-document-selected p{margin:0;font-size:.875rem;max-width:300px}.document-error{color:var(--danger-color)}.document-error .error-message{font-size:.8125rem;opacity:.8}.filter-group{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.filter-select{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);color:var(--text-primary);font-size:.875rem;cursor:pointer}.card-header{display:flex;align-items:center;justify-content:space-between}.card-header-right{display:flex;align-items:center;gap:.75rem}.invoice-count{font-size:.8125rem;color:var(--text-secondary);font-weight:400}.invoices-table-wrapper{overflow-x:auto}.invoices-table{width:100%;border-collapse:separate;border-spacing:0 .75rem;font-size:.875rem}.invoices-table th,.invoices-table td{padding:1rem .75rem;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoices-table th{font-weight:600;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;background-color:var(--background-color);position:sticky;top:0;z-index:2;border-bottom:1px solid var(--border-color);padding-bottom:.75rem}.invoices-table tbody tr.main-row{cursor:pointer;transition:all .15s ease;background-color:var(--background-color)}.invoices-table tbody tr.main-row td{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.invoices-table tbody tr.main-row td:first-child{border-left:1px solid var(--border-color);border-radius:var(--radius-md) 0 0 var(--radius-md)}.invoices-table tbody tr.main-row td:last-child{border-right:1px solid var(--border-color);border-radius:0 var(--radius-md) var(--radius-md) 0;position:relative;overflow:visible}.invoices-table tbody tr.main-row.expanded td:first-child{border-radius:var(--radius-md) 0 0 0}.invoices-table tbody tr.main-row.expanded td:last-child{border-radius:0 var(--radius-md) 0 0}.invoices-table tbody tr.main-row.expanded,.invoices-table tbody tr.main-row.expanded td{border-bottom:none}.expand-cell{width:40px;padding:.5rem!important}.expand-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:.25rem;transition:all .2s ease}.expand-btn:hover{color:var(--primary-color)}.invoices-table tbody tr.expanded-row{background-color:var(--background-color)}.invoices-table tbody tr.expanded-row td.expanded-cell{border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);border-radius:0 0 var(--radius-md) var(--radius-md);padding:0;background-color:var(--surface-color)}.invoice-details{padding:1.25rem 1.5rem}.detail-section{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem 1.5rem}.detail-item{display:flex;flex-direction:column;gap:.375rem}.detail-item.full-width{grid-column:1 / -1}.detail-item label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.detail-item span{font-size:.875rem;color:var(--text-primary)}.detail-item .discount-amount{color:var(--success-color, #22c55e)}.detail-item select,.detail-item input[type=text],.detail-item input[type=date]{font-size:.875rem}.vendor-default-checkbox{grid-column:1 / -1;margin-top:.5rem;padding:.75rem 1rem;background-color:#3b82f614;border-radius:var(--radius-md);border:1px solid rgba(59,130,246,.2)}.vendor-default-checkbox .checkbox-label{display:flex;align-items:center;gap:.625rem;cursor:pointer;font-size:.875rem;color:var(--text-primary);font-weight:500}.vendor-default-checkbox .checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color);cursor:pointer}.vendor-default-checkbox .checkbox-label span{font-size:.875rem}.discrepancy-warning{grid-column:1 / -1;margin:.5rem 0}.discrepancy-alert{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background-color:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md);color:var(--warning-color, #f59e0b)}.discrepancy-alert svg{flex-shrink:0;margin-top:2px}.discrepancy-content{display:flex;flex-direction:column;gap:.25rem}.discrepancy-content strong{font-size:.875rem;font-weight:600}.discrepancy-content span{font-size:.8125rem;color:var(--text-secondary)}.discrepancy-hint{font-style:italic;opacity:.8}.notes-display{font-size:.875rem;color:var(--text-primary);padding:.5rem .75rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:var(--radius-sm);min-height:3rem;cursor:pointer;transition:all .15s ease}.notes-display:hover{border-color:var(--primary-color);background-color:var(--hover-color)}.notes-display .no-notes{color:var(--text-secondary);opacity:.7}.invoices-table th.actions-header{position:sticky;right:0;background-color:var(--background-color);z-index:3;text-align:center}.invoices-table td.actions-cell{position:sticky;right:0;background-color:inherit;z-index:1}.invoices-table tbody tr.main-row:hover{background-color:var(--hover-color)}.invoices-table tbody tr.main-row:hover td{border-color:var(--hover-color)}.invoices-table tbody tr.main-row.selected{background-color:#e85a4f1a}.invoices-table tbody tr.main-row.selected td{border-color:#e85a4f4d}.submitter-info{display:flex;flex-direction:column;gap:.125rem}.submitter-name{font-weight:500;color:var(--text-primary)}.submitter-role{font-size:.75rem;color:var(--text-secondary);text-transform:capitalize}.file-name-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-cell{padding:.25rem!important;width:60px;text-align:center}.preview-thumbnail{width:44px;height:44px;object-fit:cover;border-radius:var(--radius-sm);cursor:pointer;border:1px solid var(--border-color);transition:transform .15s ease}.preview-thumbnail:hover{transform:scale(1.1)}.preview-pdf{position:relative;width:44px;height:44px;border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;border:1px solid var(--border-color)}.preview-thumbnail-pdf{width:44px;height:44px;pointer-events:none}.preview-pdf-overlay{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer}.preview-pdf:hover{transform:scale(1.1);transition:transform .15s ease}.preview-logo{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background-color:var(--surface-color);border-radius:8px;border:1px solid var(--border-color);cursor:pointer;transition:transform .15s ease,background-color .15s ease}.preview-logo:hover{transform:scale(1.1);background-color:var(--hover-color)}.invoice-number-cell{font-family:SF Mono,Monaco,Courier New,monospace;font-size:.75rem;color:var(--text-secondary)}.vendor-cell{font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.description-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.description-edit-input{width:100%;padding:.25rem .5rem;font-size:.8rem;border:1px solid var(--primary-color);border-radius:var(--radius-sm);background-color:var(--surface-color);color:var(--text-primary);outline:none}.items-count-cell{text-align:center;color:var(--text-secondary)}.tax-cell{color:var(--text-secondary);font-size:.8125rem}.amount-cell{font-weight:500;color:var(--text-primary)}.amount-cell.total{font-weight:600}.category-select,.expense-type-select,.terms-select{padding:.25rem .375rem;border:1px solid transparent;border-radius:var(--radius-sm);background-color:transparent;color:var(--text-primary);font-size:.75rem;cursor:pointer;max-width:100px}.category-select:hover,.expense-type-select:hover,.terms-select:hover{background-color:var(--hover-color);border-color:var(--border-color)}.category-select:focus,.expense-type-select:focus,.terms-select:focus{outline:none;border-color:var(--primary-color);background-color:var(--surface-color)}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.status-processed{background-color:var(--success-color-light, rgba(34, 197, 94, .1));color:var(--success-color)}.status-processing{background-color:var(--warning-color-light, rgba(234, 179, 8, .1));color:var(--warning-color)}.status-error{background-color:var(--danger-color-light, rgba(239, 68, 68, .1));color:var(--danger-color)}.payment-select{padding:.375rem .5rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:500;cursor:pointer;border:1px solid transparent}.payment-unpaid{background-color:var(--warning-color-light, rgba(234, 179, 8, .1));color:var(--warning-color);border-color:var(--warning-color)}.payment-paid{background-color:var(--success-color-light, rgba(34, 197, 94, .1));color:var(--success-color);border-color:var(--success-color)}.payment-partial{background-color:var(--info-color-light, rgba(59, 130, 246, .1));color:var(--info-color);border-color:var(--info-color)}.due-date-input{padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--surface-color);color:var(--text-primary);font-size:.8125rem;cursor:pointer;width:130px}.due-date-input:focus{outline:none;border-color:var(--primary-color)}.due-date-input.overdue{background-color:var(--danger-color-light, rgba(239, 68, 68, .1));border-color:var(--danger-color);color:var(--danger-color)}.btn-sm{padding:.375rem .625rem;font-size:.75rem}.btn-danger{background-color:transparent;color:var(--danger-color);border:1px solid var(--danger-color)}.btn-danger:hover{background-color:var(--danger-color);color:#fff}.actions-cell{white-space:nowrap;text-align:center}.actions-cell .btn{display:inline-flex;align-items:center;justify-content:center;margin-right:.25rem;padding:.375rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.actions-cell .btn:last-child{margin-right:0}.actions-cell .btn-secondary{background-color:var(--surface-color);color:var(--text-secondary);border:1px solid var(--border-color)}.actions-cell .btn-secondary:hover{background-color:var(--hover-color);color:var(--text-primary)}.notes-cell{max-width:150px}.notes-indicator{display:flex;align-items:flex-start;gap:.375rem;color:var(--text-secondary)}.notes-indicator svg{flex-shrink:0;margin-top:.125rem;color:var(--primary-color)}.notes-preview{font-size:.8125rem;color:var(--text-secondary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.no-notes{color:var(--text-secondary);opacity:.5}.notes-indicator.editable{cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:background-color .15s ease}.notes-indicator.editable:hover{background-color:var(--hover-color)}.notes-add-icon{color:var(--text-secondary);opacity:.6}.notes-add-text{font-size:.75rem;color:var(--text-secondary);opacity:.6}.notes-indicator.editable:hover .notes-add-icon,.notes-indicator.editable:hover .notes-add-text{opacity:1;color:var(--primary-color)}.notes-edit-container{display:flex;flex-direction:column;gap:.375rem}.notes-edit-input{width:100%;min-width:150px;padding:.375rem .5rem;border:1px solid var(--primary-color);border-radius:var(--radius-sm);background-color:var(--surface-color);color:var(--text-primary);font-size:.8125rem;font-family:inherit;resize:none}.notes-edit-input:focus{outline:none;box-shadow:0 0 0 2px #e85a4f33}.notes-edit-actions{display:flex;gap:.25rem}.btn-xs{padding:.25rem .5rem;font-size:.6875rem}.finance-dashboard{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1rem;flex-shrink:0}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.dashboard-title{display:flex;align-items:center;gap:.5rem}.dashboard-title svg{color:var(--primary-color)}.dashboard-title h2{font-size:1rem;font-weight:600;margin:0;color:var(--text-primary)}.date-filter-group{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.date-preset-select{padding:.375rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);color:var(--text-primary);font-size:.8125rem;cursor:pointer}.custom-date-inputs{display:flex;align-items:center;gap:.5rem;font-size:.8125rem}.custom-date-inputs .date-input{padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background-color:var(--surface-color);color:var(--text-primary);font-size:.8125rem}.dashboard-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.dashboard-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background-color:var(--background-color);border-radius:var(--radius-md);border:1px solid var(--border-color)}.dashboard-card .card-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:var(--radius-md);flex-shrink:0}.dashboard-card.total .card-icon{background-color:#e85a4f1a;color:var(--primary-color)}.dashboard-card.paid .card-icon{background-color:var(--success-color-light, rgba(34, 197, 94, .1));color:var(--success-color)}.dashboard-card.unpaid .card-icon{background-color:var(--warning-color-light, rgba(234, 179, 8, .1));color:var(--warning-color)}.dashboard-card.partial .card-icon{background-color:var(--info-color-light, rgba(59, 130, 246, .1));color:var(--info-color)}.dashboard-card .card-content{display:flex;flex-direction:column;gap:.125rem}.dashboard-card .card-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.dashboard-card .card-value{font-size:1.375rem;font-weight:600;color:var(--text-primary)}.dashboard-card .card-subtext{font-size:.75rem;color:var(--text-secondary)}.dashboard-section{margin-bottom:1rem}.dashboard-section:last-child{margin-bottom:0}.dashboard-section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin:0 0 .75rem}.dashboard-card.revenue .card-icon{background-color:#22c55e1a;color:var(--success-color)}.dashboard-card.net-profit .card-icon{background-color:#8b5cf61a;color:#8b5cf6}.dashboard-card .card-value.positive{color:var(--success-color)}.dashboard-card .card-value.negative{color:var(--danger-color)}@media (max-width: 1280px){.dashboard-cards{grid-template-columns:repeat(2,1fr)}.detail-section{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.finance-content{grid-template-columns:1fr;overflow-y:auto}.finance-sidebar{overflow:visible}.finance-sidebar .card:last-child{max-height:300px}.invoices-table{font-size:.8125rem}.invoices-table th,.invoices-table td{padding:.75rem .5rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:.75rem}.date-filter-group{flex-wrap:wrap}.detail-section{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.dashboard-cards{grid-template-columns:1fr}.dashboard-card .card-icon{width:40px;height:40px}.dashboard-card .card-value{font-size:1.125rem}.detail-section{grid-template-columns:1fr}}.scan-page{min-height:100vh;min-height:100dvh;background-color:var(--background-color, #121212);color:var(--text-primary, #ffffff);display:flex;flex-direction:column}.scan-container{display:flex;flex-direction:column;flex:1;max-width:500px;margin:0 auto;width:100%}.scan-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background-color:var(--surface-color, #1e1e1e);border-bottom:1px solid var(--border-color, #333)}.scan-logo{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1rem;color:var(--primary-color, #e85a4f)}.scan-header-right{display:flex;align-items:center;gap:.75rem}.scan-count{font-size:.75rem;font-weight:600;color:var(--success-color, #22c55e);background-color:#22c55e1a;padding:.25rem .5rem;border-radius:10px}.scan-user{font-size:.8125rem;color:var(--text-secondary, #888);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scan-done-link{margin-top:1rem;font-size:.9375rem;color:var(--text-secondary, #888);text-decoration:underline}.pages-list{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center;width:100%;max-width:320px}.page-thumb{position:relative;width:56px;height:72px;border-radius:8px;overflow:hidden;border:2px solid var(--border-color, #333)}.page-thumb img{width:100%;height:100%;object-fit:cover}.page-remove{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background-color:var(--danger-color, #ef4444);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.page-number{position:absolute;bottom:2px;left:2px;font-size:.625rem;font-weight:700;background-color:#000000b3;color:#fff;padding:1px 4px;border-radius:4px}.process-btn{background-color:var(--success-color, #22c55e)!important;color:#fff!important;flex-direction:row!important;gap:.5rem!important;padding:1rem 1.5rem!important;width:100%;max-width:300px}.process-btn:hover{background-color:#16a34a!important}.camera-page-badge{position:absolute;top:1rem;right:1rem;background-color:var(--primary-color, #e85a4f);color:#fff;font-size:.75rem;font-weight:600;padding:.375rem .75rem;border-radius:12px;z-index:10}.scan-main{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.scan-options{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;gap:1.5rem}.scan-options h1{font-size:1.75rem;font-weight:600;margin:0}.scan-options p{font-size:.9375rem;color:var(--text-secondary, #888);margin:0}.scan-buttons{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:300px;margin-top:1rem}.scan-btn{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem;border:none;border-radius:16px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.scan-btn.primary{background-color:var(--primary-color, #e85a4f);color:#fff}.scan-btn.primary:hover,.scan-btn.primary:active{background-color:var(--primary-hover, #d14940);transform:scale(.98)}.scan-btn.secondary{background-color:var(--surface-color, #1e1e1e);color:var(--text-primary, #fff);border:1px solid var(--border-color, #333)}.scan-btn.secondary:hover,.scan-btn.secondary:active{background-color:var(--hover-color, #2a2a2a);transform:scale(.98)}.camera-view{flex:1;position:relative;display:flex;flex-direction:column;background-color:#000;min-height:0}.camera-video{width:100%;height:auto;min-height:300px;object-fit:cover;flex:1;display:block}.camera-overlay{position:absolute;top:0;left:0;right:0;bottom:80px;display:flex;align-items:center;justify-content:center;pointer-events:none}.scan-frame{width:85%;max-width:350px;aspect-ratio:8.5 / 11;border:2px solid rgba(255,255,255,.5);border-radius:8px;box-shadow:0 0 0 9999px #0006,inset 0 0 0 2px #ffffff1a}.camera-controls{display:flex;align-items:center;justify-content:space-around;padding:1.5rem;background-color:#000c}.control-btn{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:none;background-color:#ffffff1a;color:#fff;border-radius:50%;cursor:pointer;transition:all .15s ease}.control-btn:hover,.control-btn:active{background-color:#fff3}.capture-btn{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border:4px solid white;background-color:transparent;border-radius:50%;cursor:pointer;padding:0;transition:all .15s ease}.capture-btn:active{transform:scale(.95)}.capture-inner{width:56px;height:56px;background-color:#fff;border-radius:50%;transition:all .15s ease}.capture-btn:active .capture-inner{background-color:var(--primary-color, #e85a4f)}.preview-view{flex:1;display:flex;flex-direction:column}.preview-image-container{flex:1;display:flex;align-items:center;justify-content:center;padding:1rem;background-color:#000;overflow:hidden}.preview-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.preview-controls{display:flex;gap:1rem;padding:1.5rem;background-color:var(--surface-color, #1e1e1e);border-top:1px solid var(--border-color, #333)}.preview-controls .btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;font-size:1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:all .15s ease}.preview-controls .btn-secondary{background-color:var(--background-color, #121212);color:var(--text-primary, #fff);border:1px solid var(--border-color, #333)}.preview-controls .btn-primary{background-color:var(--primary-color, #e85a4f);color:#fff;border:none}.preview-controls .btn-primary:hover,.preview-controls .btn-primary:active{background-color:var(--primary-hover, #d14940)}.scan-message{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;gap:1rem}.scan-message h2{font-size:1.5rem;font-weight:600;margin:0}.scan-message p{font-size:.9375rem;color:var(--text-secondary, #888);margin:0}.scan-message svg{color:var(--text-secondary, #888)}.scan-message.success svg{color:var(--success-color, #22c55e)}.scan-message.error svg{color:var(--danger-color, #ef4444)}.result-summary{width:100%;max-width:350px;background-color:var(--surface-color, #1e1e1e);border:1px solid var(--border-color, #333);border-radius:12px;padding:1rem;margin-top:.5rem}.result-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border-color, #333)}.result-item:last-child{border-bottom:none}.item-desc{font-size:.875rem;color:var(--text-primary, #fff);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.item-amount{font-size:.875rem;font-weight:600;color:var(--text-primary, #fff)}.result-more{padding-top:.5rem;font-size:.8125rem;color:var(--text-secondary, #888)}.success-actions,.error-actions{display:flex;flex-direction:column;gap:.75rem;width:100%;max-width:300px;margin-top:1rem}.success-actions .btn,.error-actions .btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;font-size:1rem;font-weight:600;border-radius:12px;text-decoration:none;cursor:pointer;transition:all .15s ease}.success-actions .btn-primary,.error-actions .btn-primary{background-color:var(--primary-color, #e85a4f);color:#fff;border:none}.success-actions .btn-secondary{background-color:var(--surface-color, #1e1e1e);color:var(--text-primary, #fff);border:1px solid var(--border-color, #333)}.scan-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:var(--danger-color, #ef4444);font-size:.875rem;text-align:left;width:100%;max-width:300px}@supports (padding-bottom: env(safe-area-inset-bottom)){.scan-header{padding-top:max(1rem,env(safe-area-inset-top))}.camera-controls,.preview-controls{padding-bottom:max(1.5rem,env(safe-area-inset-bottom))}.success-actions,.error-actions{padding-bottom:env(safe-area-inset-bottom)}}.scan-login{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:2rem}.scan-login-header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.scan-login-header svg{color:var(--primary-color, #e85a4f)}.scan-login-header h2{font-size:1.5rem;font-weight:600;margin:0}.scan-login-header p{font-size:.9375rem;color:var(--text-secondary, #888);margin:0}.scan-login-form{width:100%;max-width:300px;display:flex;flex-direction:column;gap:1rem}.scan-login-field{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background-color:var(--surface-color, #1e1e1e);border:1px solid var(--border-color, #333);border-radius:12px}.scan-login-field svg{color:var(--text-secondary, #888);flex-shrink:0}.scan-login-field input{flex:1;border:none;background:none;color:var(--text-primary, #fff);font-size:1rem;outline:none}.scan-login-field input::placeholder{color:var(--text-secondary, #888)}.scan-login-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:var(--danger-color, #ef4444);font-size:.875rem}.scan-login-form .scan-btn{margin-top:.5rem;flex-direction:row;padding:1rem}.scan-login-form .scan-btn:disabled{opacity:.5;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@media (min-width: 768px){.scan-container{padding-top:2rem}.scan-options{padding:3rem}.scan-buttons{flex-direction:row;max-width:400px}.scan-btn{flex:1}.camera-view{max-height:80vh;margin:0 auto;border-radius:16px;overflow:hidden}}.product-location-page{min-height:100vh;background:#1a1a1a;display:flex;align-items:center;justify-content:center;padding:1rem}.pl-login{padding:2rem;display:flex;flex-direction:column;gap:2rem;min-height:50vh;justify-content:center}.pl-login-header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.pl-login-header h2{font-size:1.75rem;color:#fff;margin:0}.pl-login-header p{color:#b0b0b0;margin:0}.pl-login-form{display:flex;flex-direction:column;gap:1rem}.pl-login-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#ff6b351a;border:1px solid #ff6b35;border-radius:8px;color:#ff8c42;font-size:.875rem}.pl-login-field{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border:2px solid #4a4a4a;border-radius:12px;background:#1a1a1a;transition:all .2s}.pl-login-field:focus-within{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b3533}.pl-login-field svg{color:gray;flex-shrink:0}.pl-login-field input{flex:1;border:none;outline:none;font-size:1rem;color:#fff;background:transparent}.pl-login-field input::placeholder{color:#666}.product-location-container{width:100%;max-width:600px;background:#2d2d2d;border-radius:16px;box-shadow:0 20px 60px #00000080;overflow:hidden;display:flex;flex-direction:column;min-height:80vh;border:1px solid #3a3a3a}.pl-header{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 8px #0000004d}.pl-logo{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:600}.pl-user{font-size:.875rem;opacity:.95}.pl-main{flex:1;display:flex;flex-direction:column;overflow-y:auto}.pl-search{padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.pl-search h1{font-size:1.75rem;color:#fff;margin:0;text-align:center}.pl-search p{color:#b0b0b0;text-align:center;margin:0}.barcode-form{display:flex;flex-direction:column;gap:1rem}.barcode-input-group{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:2px solid #4a4a4a;border-radius:12px;background:#1a1a1a;transition:all .2s}.barcode-input-group:focus-within{border-color:#ff6b35;box-shadow:0 0 0 3px #ff6b3533}.barcode-input-group svg{color:gray;flex-shrink:0}.barcode-input-group input{flex:1;border:none;outline:none;font-size:1rem;color:#fff;background:transparent}.barcode-input-group input::placeholder{color:#666}.clear-btn{background:none;border:none;padding:.25rem;cursor:pointer;color:gray;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.clear-btn:hover{color:#b0b0b0;background:#ffffff0d}.pl-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.pl-btn:disabled{opacity:.5;cursor:not-allowed}.pl-btn.primary{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;box-shadow:0 4px 12px #ff6b354d}.pl-btn.primary:hover:not(:disabled){box-shadow:0 6px 20px #ff6b3566;transform:translateY(-2px)}.pl-btn.secondary{background:transparent;color:#ff6b35;border:2px solid #ff6b35}.pl-btn.secondary:hover{background:#ff6b351a}.pl-divider{display:flex;align-items:center;gap:1rem;color:gray;font-size:.875rem;margin:.5rem 0}.pl-divider:before,.pl-divider:after{content:"";flex:1;height:1px;background:#4a4a4a}.camera-view{position:relative;width:100%;height:100%;background:#000;display:flex;flex-direction:column}.camera-video{width:100%;height:100%;object-fit:cover}.camera-overlay{position:absolute;top:0;left:0;right:0;bottom:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;pointer-events:none}.barcode-frame{position:relative;width:80%;max-width:300px;height:120px;border:2px solid rgba(255,255,255,.5);border-radius:8px}.frame-corner{position:absolute;width:20px;height:20px;border:3px solid #ff6b35}.frame-corner.tl{top:-2px;left:-2px;border-right:none;border-bottom:none;border-top-left-radius:8px}.frame-corner.tr{top:-2px;right:-2px;border-left:none;border-bottom:none;border-top-right-radius:8px}.frame-corner.bl{bottom:-2px;left:-2px;border-right:none;border-top:none;border-bottom-left-radius:8px}.frame-corner.br{bottom:-2px;right:-2px;border-left:none;border-top:none;border-bottom-right-radius:8px}.camera-hint{color:#fff;font-size:.875rem;background:#0009;padding:.5rem 1rem;border-radius:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.camera-controls{position:absolute;bottom:0;left:0;right:0;height:80px;background:#000c;display:flex;align-items:center;justify-content:space-around;padding:0 2rem}.control-btn,.control-btn-placeholder{width:48px;height:48px;border-radius:50%;background:#fff3;border:2px solid white;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.control-btn:hover{background:#ffffff4d;transform:scale(1.1)}.control-btn-placeholder{opacity:0;pointer-events:none}.capture-btn{width:64px;height:64px;border-radius:50%;background:#fff;border:4px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.capture-btn:hover{transform:scale(1.05)}.capture-inner{width:52px;height:52px;border-radius:50%;background:#667eea}.pl-message{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;text-align:center}.pl-message svg{color:#ff6b35}.pl-message.error svg{color:#ff6b35}.pl-message h2{font-size:1.5rem;color:#fff;margin:0}.pl-message p{color:#b0b0b0;margin:0}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pl-result{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.product-info{display:flex;gap:1rem;padding:1rem;background:#1a1a1a;border-radius:12px;align-items:center;border:1px solid #3a3a3a}.product-image{width:80px;height:80px;object-fit:cover;border-radius:8px;background:#2d2d2d;border:1px solid #4a4a4a}.product-details{flex:1}.product-details h2{font-size:1.125rem;color:#fff;margin:0 0 .25rem}.variant-title{color:#b0b0b0;font-size:.875rem;margin:0 0 .5rem}.barcode-display{display:flex;align-items:center;gap:.5rem;color:gray;font-size:.875rem;font-family:monospace;margin:0}.location-card{background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #ff6b354d}.location-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.location-header h3{font-size:1.25rem;margin:0}.location-details{display:flex;flex-direction:column;gap:.75rem}.location-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#ffffff1a;border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.location-item .label{font-size:.875rem;opacity:.9}.location-item .value{font-weight:600;font-size:1rem}.location-notes{padding:.75rem;background:#ffffff1a;border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.location-notes .label{font-size:.875rem;opacity:.9;margin-bottom:.5rem;display:block}.location-notes p{margin:0;line-height:1.5}.location-map{background:#1a1a1a;border-radius:12px;padding:1.5rem;border:1px solid #3a3a3a}.location-map h4{font-size:1rem;color:#fff;margin:0 0 1rem;text-align:center}.map-row{display:flex;align-items:stretch;gap:.5rem}.neighbor-product{flex:1;display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#2d2d2d;border:2px solid #4a4a4a;border-radius:8px;font-size:.75rem;color:#fff}.neighbor-product.empty{opacity:.5;font-style:italic;color:gray}.neighbor-product.left{text-align:left}.neighbor-product.right{text-align:right}.neighbor-title{font-weight:600;margin-bottom:.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.neighbor-pos{font-size:.7rem;color:gray}.current-product{flex:1.2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:linear-gradient(135deg,#ff6b35,#ff8c42);color:#fff;border-radius:12px;box-shadow:0 4px 12px #ff6b3566}.current-label{font-size:.75rem;font-weight:600;letter-spacing:.5px}.current-pos{font-size:.7rem;opacity:.9}.no-location{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:#ff6b351a;border:2px dashed #ff6b35;border-radius:12px;text-align:center}.no-location svg{color:#ff6b35}.no-location h3{font-size:1.25rem;color:#ff8c42;margin:0}.no-location p{color:#b0b0b0;margin:0;line-height:1.6}.result-actions,.error-actions{display:flex;gap:1rem;margin-top:.5rem}.pl-error{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#ff6b351a;border:1px solid #ff6b35;border-radius:8px;color:#ff8c42}@media (max-width: 640px){.product-location-page{padding:0}.product-location-container{max-width:100%;min-height:100vh;border-radius:0;border:none}.pl-search{padding:1.5rem 1rem}.map-row{flex-direction:column}.neighbor-product,.current-product{flex:1}}:root{--accent: #e85a4f;--accent-hover: #d14a3f;--accent-light: rgba(232, 90, 79, .1);--accent-medium: rgba(232, 90, 79, .2);--primary: #e85a4f;--primary-hover: #d14a3f;--primary-bg: rgba(232, 90, 79, .1);--success: #22c55e;--success-light: rgba(34, 197, 94, .1);--success-medium: rgba(34, 197, 94, .15);--warning: #f59e0b;--warning-light: rgba(245, 158, 11, .1);--warning-medium: rgba(245, 158, 11, .15);--error: #ef4444;--error-light: rgba(239, 68, 68, .1);--error-medium: rgba(239, 68, 68, .15);--info: #3b82f6;--info-light: rgba(59, 130, 246, .1);--bg-primary: #fafafa;--bg-secondary: #ffffff;--bg-tertiary: #f5f5f5;--bg-elevated: #ffffff;--bg-hover: rgba(0, 0, 0, .04);--bg-active: rgba(0, 0, 0, .06);--surface-primary: #ffffff;--surface-secondary: #f5f5f5;--surface-tertiary: #e5e7eb;--text-primary: #1a1a1a;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--text-inverse: #ffffff;--border-primary: #e5e7eb;--border-secondary: #f3f4f6;--border-focus: var(--accent);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 100;--z-sticky: 200;--z-modal: 1000;--z-toast: 1100;--z-tooltip: 1200}[data-theme=light]{--bg-primary: #fafafa;--bg-secondary: #ffffff;--bg-tertiary: #f5f5f5;--bg-elevated: #ffffff;--bg-hover: rgba(0, 0, 0, .04);--bg-active: rgba(0, 0, 0, .06);--surface-primary: #ffffff;--surface-secondary: #f5f5f5;--surface-tertiary: #e5e7eb;--text-primary: #1a1a1a;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--text-inverse: #ffffff;--border-primary: #e5e7eb;--border-secondary: #f3f4f6;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04)}[data-theme=dark]{--bg-primary: #0a0a0a;--bg-secondary: #141414;--bg-tertiary: #1a1a1a;--bg-elevated: #1f1f1f;--bg-hover: rgba(255, 255, 255, .04);--bg-active: rgba(255, 255, 255, .06);--surface-primary: #141414;--surface-secondary: #1a1a1a;--surface-tertiary: #252525;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--text-inverse: #0a0a0a;--border-primary: #2d2d2d;--border-secondary: #252525;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 10px 10px -5px rgba(0, 0, 0, .4)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html,body,#root{height:100%;width:100%}body{font-family:var(--font-family);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}a:link,a:visited,a:hover,a:active{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background-color:var(--accent-medium);color:var(--text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}:root{--primary-color: var(--accent);--primary-light: #ff6b5b;--primary-dark: var(--accent-hover);--secondary-color: #3498db;--success-color: var(--success);--warning-color: var(--warning);--danger-color: var(--error);--background-color: var(--bg-primary);--surface-color: var(--bg-secondary);--surface-elevated: var(--bg-elevated);--text-muted: var(--text-tertiary);--border-color: var(--border-primary);--border-light: var(--border-secondary);--shadow: var(--shadow-sm);--radius: var(--radius-xl);--radius-sm: var(--radius-md);--radius-lg: var(--radius-2xl);--header-bg: var(--bg-secondary);--nav-active-bg: var(--accent-light);--nav-hover-bg: var(--bg-hover);--stat-card-border: var(--border-primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--accent-hover)}.btn-secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-hover)}.btn-danger{background-color:var(--error);color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-outline{background-color:transparent;border:1px solid var(--border-primary);color:var(--text-primary)}.btn-outline:hover:not(:disabled){background-color:var(--bg-hover)}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--border-primary);border-radius:var(--radius-md);background-color:var(--bg-secondary);color:var(--text-primary);transition:border-color .2s ease,box-shadow .2s ease}.form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.form-input::placeholder{color:var(--text-tertiary)}.form-error{color:var(--error);font-size:.8125rem;margin-top:.25rem}.card{background-color:var(--bg-secondary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border-primary)}.card-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border-primary)}.card-body{padding:1.25rem}.card-footer{padding:1rem 1.25rem;border-top:1px solid var(--border-primary);background-color:var(--bg-tertiary)}.alert{padding:.875rem 1rem;border-radius:var(--radius-md);font-size:.875rem;margin-bottom:1rem}.alert-error{background-color:var(--error-light);color:var(--error);border:1px solid var(--error-medium)}.alert-success{background-color:var(--success-light);color:var(--success);border:1px solid var(--success-medium)}.alert-warning{background-color:var(--warning-light);color:var(--warning);border:1px solid var(--warning-medium)}.spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--border-primary);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.spinner-lg{width:40px;height:40px;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.loading-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:200px;color:var(--text-secondary)}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:500;border-radius:9999px;text-transform:capitalize}.status-badge.pending{background-color:var(--warning-medium);color:var(--warning)}.status-badge.fulfilled,.status-badge.completed{background-color:var(--success-medium);color:var(--success)}.status-badge.cancelled,.status-badge.failed{background-color:var(--error-medium);color:var(--error)}.text-center{text-align:center}.text-right{text-align:right}.text-secondary{color:var(--text-secondary)}.text-success{color:var(--success)}.text-danger{color:var(--error)}.text-warning{color:var(--warning)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.5rem}.gap-2{gap:1rem}.gap-3{gap:1.5rem}
