.daypart-configuration{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a;margin:0 auto;max-width:1200px;padding:24px}.daypart-header{margin-bottom:32px;text-align:center}.daypart-header h3{color:#1f2937;font-size:2rem;font-weight:700;margin:0 0 8px}.daypart-header p{color:#6b7280;font-size:1.125rem;margin:0}.daypart-configuration.loading{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{gap:8px}.loading-spinner:before{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;content:"";height:20px;width:20px}.error-message{font-weight:500;margin-bottom:24px;padding:16px}.error-icon{font-size:1.25rem}.template-selector{margin-bottom:32px}.template-selector h4{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 16px}.template-buttons{gap:12px}.template-button{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:12px 20px;transition:all .2s ease}.template-button:hover{background:#f8fafc;border-color:#3b82f6}.template-button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.dayparts-editor{margin-bottom:32px}.dayparts-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.dayparts-header h4{color:#374151;font-size:1.25rem;font-weight:600;margin:0}.add-daypart-button{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:10px 16px;transition:background .2s ease}.add-daypart-button:hover{background:#059669}.dayparts-list{display:flex;flex-direction:column;gap:24px}.daypart-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:24px}.daypart-controls{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr auto;margin-bottom:16px}.daypart-basic{grid-gap:16px;align-items:end;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr 100px 100px auto}.form-group{gap:6px}.form-group input[type=color],.form-group input[type=text],.form-group input[type=time]{border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:10px 12px;transition:border-color .2s ease}.form-group input[type=text]:focus,.form-group input[type=time]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-group input[type=color]{cursor:pointer;height:40px;padding:4px;width:50px}.checkbox-group{gap:8px}.checkbox-group input[type=checkbox]{accent-color:#3b82f6;height:16px;width:16px}.daypart-actions{align-items:center;display:flex;gap:8px}.remove-button{align-items:center;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;height:40px;justify-content:center;padding:8px;transition:background .2s ease;width:40px}.remove-button:hover{background:#dc2626}.daypart-preview{display:flex;flex-direction:column;gap:8px;min-width:200px}.daypart-color-bar{border:2px solid #ffffff4d;border-radius:8px;color:#fff;font-weight:500;padding:12px 16px;text-align:center;text-shadow:1px 1px 2px #00000080}.daypart-time-range{font-size:.875rem;font-weight:600}.daypart-actions{margin:32px 0;text-align:center}.save-button{background:#3b82f6;border-radius:8px;font-size:1rem;min-width:200px;padding:14px 32px;transition:all .2s ease}.save-button:hover:not(:disabled){background:#2563eb;box-shadow:0 8px 16px -2px #3b82f64d;transform:translateY(-1px)}.save-button:disabled{background:#9ca3af;box-shadow:none;transform:none}.daypart-preview-timeline{border-top:1px solid #e5e7eb;margin-top:32px;padding-top:32px}.daypart-preview-timeline h4{color:#374151;font-size:1.25rem;font-weight:600;margin:0 0 16px;text-align:center}.timeline{border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;min-height:60px;overflow:hidden}.timeline-segment{align-items:center;cursor:pointer;display:flex;justify-content:center;padding:16px 8px;position:relative;transition:all .2s ease}.timeline-segment:hover{filter:brightness(1.1);transform:scale(1.02);z-index:1}.timeline-label{color:#fff;font-size:.875rem;font-weight:600;text-align:center;text-shadow:1px 1px 2px #00000080}@media (max-width:1024px){.daypart-basic{gap:12px;grid-template-columns:1fr}.daypart-controls{gap:16px;grid-template-columns:1fr}.daypart-preview{min-width:auto}}@media (max-width:768px){.daypart-configuration{padding:16px}.template-buttons{flex-direction:column}.template-button{text-align:center;width:100%}.dayparts-header{align-items:stretch;flex-direction:column;gap:16px}.timeline{flex-direction:column;min-height:auto}.timeline-segment{justify-content:flex-start;padding:12px 16px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.daypart-item{animation:fadeInUp .3s ease-out}.status-indicator{margin-right:8px}.status-indicator.status-active{background:#10b981}.status-indicator.status-inactive{background:#ef4444}.reason-codes-management{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:0 auto;max-width:1200px;padding:24px}.reason-codes-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.reason-codes-header h3{color:#1e293b;font-size:24px;margin:0}.add-button{background-color:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s}.add-button:hover:not(:disabled){background-color:#2563eb}.add-button:disabled{cursor:not-allowed;opacity:.6}.close-button{background-color:#f3f4f6;border-radius:6px;color:#6b7280;font-size:16px;padding:8px 16px;transition:background-color .2s}.close-button:hover{background-color:#e5e7eb}.reason-code-form{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;padding:20px}.reason-code-form h4{color:#1e293b;font-size:18px;margin:0 0 20px}.form-row{grid-gap:16px;gap:16px;grid-template-columns:1fr 2fr;margin-bottom:20px}.form-group input[type=text]{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:10px 12px;transition:border-color .2s}.form-group input[type=text]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.usage-areas-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-top:8px}.usage-area-option{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;gap:8px;padding:10px 14px;transition:all .2s;-webkit-user-select:none;user-select:none}.usage-area-option:hover{border-color:#3b82f6}.usage-area-option.selected{background-color:#eff6ff;border-color:#3b82f6}.usage-area-option .checkbox{color:#3b82f6;font-size:18px}.usage-area-option .label{color:#374151;font-size:14px}.checkbox-group{margin-bottom:0}.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-actions{gap:12px;margin-top:24px}.save-button{background-color:#10b981;font-size:14px;font-weight:500;padding:10px 24px;transition:background-color .2s}.save-button:hover:not(:disabled){background-color:#059669}.save-button:disabled{opacity:.6}.cancel-button{background-color:#f3f4f6;border:none;border-radius:6px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:background-color .2s}.cancel-button:hover:not(:disabled){background-color:#e5e7eb}.reason-codes-list{margin-top:32px}.reason-codes-list h4{color:#1e293b;font-size:18px;margin:0 0 16px}.empty-state{padding:48px 24px}.empty-state p{margin:8px 0}.codes-table{overflow-x:auto}.codes-table table{border-collapse:collapse;width:100%}.codes-table th{background-color:#f9fafb;border-bottom:2px solid #e5e7eb;color:#6b7280;font-size:12px;font-weight:600;padding:12px;text-align:left;text-transform:uppercase}.codes-table td{border-bottom:1px solid #e5e7eb;padding:16px 12px}.codes-table tr:last-child td{border-bottom:none}.codes-table tr.inactive{opacity:.6}.code-cell{font-family:Courier New,monospace}.usage-area-tags{display:flex;flex-wrap:wrap;gap:6px}.usage-tag{background-color:#e0e7ff;border-radius:4px;color:#4f46e5;display:inline-block;font-size:12px;font-weight:500;padding:4px 8px}.options-cell{display:flex;flex-direction:column;gap:4px}.option-badge{border-radius:4px;display:inline-block;font-size:11px;font-weight:500;padding:4px 8px;text-transform:uppercase}.option-badge.approval{background-color:#fef3c7;color:#d97706}.option-badge.comment{background-color:#dbeafe;color:#2563eb}.status-badge.active{background-color:#d1fae5;color:#065f46}.status-badge.inactive{background-color:#fee2e2;color:#991b1b}.actions-cell{display:flex;gap:8px}.delete-button,.edit-button{border:none;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s}.edit-button{background-color:#f3f4f6;color:#374151}.edit-button:hover:not(:disabled){background-color:#e5e7eb}.delete-button{background-color:#fee2e2;color:#dc2626}.delete-button:hover:not(:disabled){background-color:#fecaca}.delete-button:disabled,.edit-button:disabled{cursor:not-allowed;opacity:.5}.reason-codes-management.loading{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{font-size:16px}.error-icon{font-size:20px}@media (max-width:768px){.form-row,.usage-areas-grid{grid-template-columns:1fr}.codes-table{font-size:14px}.codes-table td,.codes-table th{padding:8px}.usage-area-tags{align-items:flex-start}.actions-cell,.usage-area-tags{flex-direction:column}}.table-chart-manager{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;height:90vh;overflow:hidden}.table-chart-manager.loading{align-items:center;justify-content:center}.loading-spinner{font-size:18px}.manager-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:16px 24px}.header-left{align-items:center;display:flex;gap:24px}.manager-header h2{color:#1e293b;font-size:24px;margin:0}.layout-selector{align-items:center;display:flex;gap:12px}.layout-selector select{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px}.header-actions{gap:12px}.zoom-controls{align-items:center;background-color:#f3f4f6;border-radius:6px;display:flex;gap:8px;padding:4px 8px}.zoom-controls button{align-items:center;background-color:#fff;border:none;border-radius:4px;cursor:pointer;display:flex;font-weight:500;height:28px;justify-content:center;width:28px}.zoom-controls button:hover{background-color:#e5e7eb}.zoom-controls span{color:#6b7280;font-size:12px;min-width:40px;text-align:center}.manager-content{display:flex;flex:1 1;overflow:hidden}.sidebar{background-color:#f9fafb;border-right:1px solid #e5e7eb;height:100%;overflow-y:auto;padding:16px;width:300px}.sidebar-section{margin-bottom:32px}.sidebar-section h3{color:#1e293b;font-size:16px;margin:0 0 16px}.table-library{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding:4px}.table-library::-webkit-scrollbar{width:6px}.table-library::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.table-library::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.table-library::-webkit-scrollbar-thumb:hover{background:#9ca3af}.library-item{align-items:center;background-color:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:grab;display:flex;flex-direction:column;padding:12px;text-align:center;transition:all .2s}.library-item:hover{border-color:#3b82f6;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.library-item:active{cursor:grabbing}.library-preview{align-items:center;display:flex;height:40px;justify-content:center;margin-bottom:8px;width:40px}.preview-shape{background-color:#3b82f6;border:2px solid #2563eb}.preview-shape.square{border-radius:4px;height:32px;width:32px}.preview-shape.circle{border-radius:50%;height:32px;width:32px}.preview-shape.rectangle{border-radius:4px;height:24px;width:40px}.library-info{display:flex;flex-direction:column;gap:2px}.library-name{color:#374151;font-size:12px;font-weight:500}.library-capacity{color:#6b7280;font-size:11px}.areas-list{display:flex;flex-direction:column;gap:8px}.area-item{align-items:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;gap:12px;padding:8px 12px;transition:all .2s}.area-item.selected,.area-item:hover{border-color:#3b82f6}.area-item.selected{background-color:#eff6ff}.area-color{border:1px solid #d1d5db;border-radius:50%;height:16px;width:16px}.area-item span{color:#374151;font-size:14px}.table-properties{gap:16px}.property-group,.table-properties{display:flex;flex-direction:column}.property-group{gap:6px}.property-group label{color:#6b7280;font-size:12px;font-weight:500;text-transform:uppercase}.property-group input,.property-group select{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:8px 10px}.property-group input:focus,.property-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.canvas-container{background-color:#f3f4f6;flex:1 1;overflow:auto;position:relative}.canvas-container.multi-select-mode{cursor:crosshair}.table-canvas{cursor:grab;position:relative;transform-origin:top left;transition:transform .2s ease}.table-canvas:active{cursor:grabbing}.grid-overlay{left:0;opacity:.3;pointer-events:none;position:absolute;top:0}.table-item{align-items:center;border:3px solid;border-radius:12px;box-shadow:0 4px 12px #00000026;cursor:move;display:flex;justify-content:center;overflow:hidden;position:relative;transition:all .2s ease;-webkit-user-select:none;user-select:none}.table-item:before{background:linear-gradient(180deg,#ffffff4d,#0000);content:"";height:30%;left:0;pointer-events:none;position:absolute;right:0;top:0}.table-item:hover{box-shadow:0 8px 20px #0003;transform:scale(1.05) translateY(-2px)}.table-item:active{box-shadow:0 2px 8px #0003;transform:scale(1.02)}.table-item.selected{animation:pulse 2s infinite;border-color:#ef4444!important;box-shadow:0 0 0 4px #ef44444d}.table-item.circle{border-radius:50%}.table-item.square{aspect-ratio:1;border-radius:12px}.table-item.rectangle{border-radius:12px}.table-item.available{background-color:#d1fae5;border-color:#10b981}.table-item.occupied{background-color:#fecaca;border-color:#ef4444}.table-item.reserved{background-color:#fef3c7;border-color:#f59e0b}.table-item.maintenance{background-color:#e5e7eb;border-color:#6b7280}.table-content{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;position:relative;text-align:center;width:100%}.table-number{color:#1e293b;font-size:16px;font-weight:700;line-height:1}.table-capacity{color:#6b7280;font-size:12px;margin-top:4px}.join-indicator{background-color:#8b5cf6;border-radius:50%;color:#fff;font-size:10px;font-weight:700;height:20px;right:-8px;top:-8px;width:20px}.drop-zone,.join-indicator{align-items:center;display:flex;justify-content:center;position:absolute}.drop-zone{background-color:#3b82f61a;border:2px dashed #3b82f6;bottom:0;color:#3b82f6;font-size:18px;font-weight:500;left:0;pointer-events:none;right:0;top:0}.error-message{background-color:#fef2f2;gap:8px;margin:16px 24px}.error-icon{font-size:18px}.error-message button{align-items:center;background:none;border:none;color:#991b1b;cursor:pointer;display:flex;font-size:18px;height:20px;justify-content:center;margin-left:auto;padding:0;width:20px}.btn-primary{background-color:#3b82f6;font-size:14px;padding:8px 16px;transition:background-color .2s}.btn-primary:hover:not(:disabled){background-color:#2563eb}.btn-secondary{background-color:#f3f4f6;font-size:14px;padding:8px 16px;transition:all .2s}.btn-secondary:hover:not(:disabled){background-color:#e5e7eb;border-color:#9ca3af}.btn-secondary.active{background-color:#3b82f6!important;border-color:#3b82f6!important;color:#fff!important}.btn-warning{background-color:#f59e0b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.btn-warning:hover:not(:disabled){background-color:#d97706}.btn-danger{background-color:#ef4444;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.btn-danger:hover:not(:disabled){background-color:#dc2626}@media (max-width:1024px){.sidebar{width:250px}.table-library{grid-template-columns:1fr}}@media (max-width:768px){.manager-header{align-items:stretch;flex-direction:column;gap:16px}.header-actions,.header-left{justify-content:space-between}.manager-content{flex-direction:column}.sidebar{border-bottom:1px solid #e5e7eb;border-right:none;height:300px;width:100%}.canvas-container{height:400px}}.App{background-color:var(--surface-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:auto}.App,.sidebar{display:flex;min-height:100vh}.sidebar{background:var(--surface-primary);border-right:1px solid var(--border-primary);box-shadow:var(--shadow-md);flex-direction:column;overflow:visible;position:relative;width:280px}.sidebar:before{background:linear-gradient(135deg,var(--accent-primary) 0,var(--accent-primary) 100%);content:"";height:200px;left:0;opacity:.03;pointer-events:none;position:absolute;right:0;top:0}.sidebar-header{align-items:center;display:flex;justify-content:center;padding:2rem;position:relative;z-index:1}.sidebar-logo{height:108px;max-width:90%;object-fit:contain;width:auto}.sidebar-header h1{color:var(--text-primary);font-size:1.5rem;font-weight:700;letter-spacing:-.03em;margin:0}.sidebar-nav{flex:1 1;overflow-y:auto;padding:1.5rem 1rem;position:relative;z-index:1}.sidebar-nav ul{list-style:none;margin:0;padding:0}.sidebar-nav li{margin-bottom:.25rem}.nav-group{margin-bottom:.5rem}.nav-group-header{align-items:center;background:none;border:none;border-radius:10px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;letter-spacing:.05em;padding:.875rem 1.25rem;text-transform:uppercase;transition:var(--transition-base);width:100%}.nav-group-header:hover{background:var(--glass-bg-light);color:var(--text-primary)}.nav-group-title{flex:1 1;text-align:left}.nav-group-toggle{color:var(--text-muted);font-size:.75rem;margin-left:.5rem}.nav-group-items{margin-top:.25rem;padding-left:0}.nav-group-items li{margin-bottom:.125rem}.nav-group-items a{font-size:.875rem;padding-left:2.5rem}.sidebar-nav a{align-items:center;border-radius:10px;color:var(--text-secondary);display:flex;font-size:.9375rem;font-weight:500;overflow:hidden;padding:.875rem 1.25rem;position:relative;text-decoration:none;transition:var(--transition-base)}.sidebar-nav a:before{background:var(--accent-gradient);content:"";inset:0;opacity:0;position:absolute;transition:opacity .2s}.sidebar-nav a:hover{background:var(--glass-bg-light);color:var(--text-primary)}.sidebar-nav a.active{background:var(--accent);box-shadow:0 4px 15px 0 #6366f14d;color:#fff;font-weight:600}.sidebar-nav a.active:after{background:var(--accent);border-radius:0 3px 3px 0;content:"";height:24px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.sidebar-footer{border-top:1px solid var(--border-light);padding:1.5rem;position:relative;z-index:1}.profile-link{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid #0000;border-radius:12px;display:block;margin-bottom:1rem;padding:.75rem;text-decoration:none;transition:var(--transition-base)}.profile-link:hover{background:var(--glass-bg-light);border-color:var(--glass-border)}.profile-link.active{background:var(--accent-gradient);border-color:var(--glass-border)}.profile-link.active div{color:#fff!important}.sign-out-btn{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:12px;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;padding:.875rem;transition:var(--transition-base);width:100%}.sign-out-btn:hover{background:var(--glass-bg-light);box-shadow:0 8px 25px 0 #0000001f;color:var(--text-primary);transform:translateY(-1px)}.main-content{display:flex;flex:1 1;flex-direction:column;overflow:visible;width:100%}.main-header{align-items:center;backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border-bottom:1px solid var(--glass-border);box-shadow:var(--glass-shadow);display:flex;justify-content:space-between;padding:1.5rem 3rem}.main-header h2{color:var(--text-primary);font-size:1.75rem;font-weight:600;letter-spacing:-.025em;margin:0}.user-info{color:var(--text-secondary);font-size:.875rem;font-weight:500}.main-body{background:var(--surface-secondary);flex:1 1;min-height:calc(100vh - 200px);overflow-y:auto;padding:2rem 3rem;width:100%}.main-body:has(.menu-management){flex:none!important;height:auto!important;max-height:none!important;overflow-y:visible!important}.menu-management{height:auto!important;min-height:100vh!important;overflow:visible!important}body.menu-items-page .main-body{overflow-x:visible!important;overflow-y:visible!important}body.menu-items-page .main-body,body.menu-items-page .main-content{flex:none!important;height:auto!important;max-height:none!important;min-height:auto!important}body.menu-items-page .main-content{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important}body.menu-items-page .App{overflow:visible!important}body.menu-items-page,body.menu-items-page .App{height:auto!important;max-height:none!important;min-height:auto!important}body.menu-items-page{overflow-x:visible!important;overflow-y:auto!important}body.menu-items-page .main-body,body.menu-items-page .main-content,body.menu-items-page .menu-content,body.menu-items-page .menu-management{flex:none!important}body.menu-items-page .main-body,body.menu-items-page .main-content,body.menu-items-page .menu-content,body.menu-items-page .menu-items-grid,body.menu-items-page .menu-management{height:auto!important;max-height:none!important;max-width:none!important;min-height:auto!important;overflow:visible!important;width:100%!important}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:2rem}.dashboard-card{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);padding:1.75rem;position:relative;transition:var(--transition-smooth)}.dashboard-card:before{background:var(--accent-gradient);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s}.dashboard-card:hover{background:var(--glass-bg-light);box-shadow:0 12px 40px 0 #00000026;transform:translateY(-2px)}.dashboard-card:hover:before{transform:scaleX(1)}.dashboard-card h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.dashboard-card p{color:var(--text-secondary);line-height:1.6;margin:.5rem 0}.metrics-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.metric-card{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);padding:1.75rem;transition:var(--transition-smooth)}.metric-card:hover{background:var(--glass-bg-light);box-shadow:0 12px 40px 0 #00000026}.metric-value{color:var(--text-primary);font-size:2.5rem;letter-spacing:-.025em;line-height:1}.metric-label{color:var(--text-tertiary);font-size:.875rem;letter-spacing:.05em;margin-top:.5rem;text-transform:uppercase}.table-container{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);overflow:hidden;overflow-y:auto}.table{border-collapse:collapse;width:100%}.table thead{background:var(--surface-secondary)}.table th{color:var(--text-tertiary);font-size:.75rem;font-weight:600;letter-spacing:.05em;text-align:left;text-transform:uppercase}.table td,.table th{border-bottom:1px solid var(--border-light);padding:1rem 1.5rem}.table td{color:var(--text-primary)}.table tbody tr:hover{background:var(--surface-secondary)}.table tbody tr:last-child td{border-bottom:none}.btn{border-radius:10px;font-family:var(--font-sans);font-size:.875rem;justify-content:center;padding:.75rem 1.5rem;transition:var(--transition-base)}.btn-primary{background:var(--primary)}.btn-primary:hover{background:var(--primary-gradient);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--accent-gradient)}.btn-secondary:hover{box-shadow:0 10px 20px -5px #6366f159}.btn-outline{background:#0000;border:1px solid var(--border);color:var(--text-primary)}.btn-outline:hover{background:var(--surface-secondary);border-color:var(--text-tertiary)}.btn-modern{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:.875rem;font-weight:500;justify-content:center;overflow:hidden;padding:.75rem 1.5rem;position:relative;text-decoration:none;transition:var(--transition-base);white-space:nowrap}.btn-modern-primary{background:var(--primary);color:#fff}.btn-modern-primary:hover{background:var(--primary-gradient);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-modern-secondary{background:var(--surface);border:1px solid var(--border);color:var(--text-primary)}.btn-modern-secondary:hover{background:var(--surface-secondary);border-color:var(--text-tertiary);transform:translateY(-1px)}.btn-modern-accent{background:var(--accent-gradient);color:#fff}.btn-modern-accent:hover{box-shadow:0 10px 20px -5px #6366f159;transform:translateY(-1px)}.badge-modern-default{align-items:center;background:var(--surface-tertiary);border-radius:6px;color:var(--text-secondary);display:inline-flex;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.badge-modern-primary{background:#0a0a0a1a;color:var(--primary)}.badge-modern-accent{background:#6366f11a;color:var(--accent)}.badge-modern-success{background:#10b9811a;color:var(--success)}.badge-modern-danger{background:#ef44441a;color:var(--danger)}.modern-card{background:var(--surface);border:1px solid var(--border-light);border-radius:16px;overflow:hidden;padding:var(--space-xl);position:relative;transition:var(--transition-smooth)}.modern-card:hover{border-color:var(--border);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.modern-card-glass{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.grid-modern{grid-gap:var(--space-lg);display:grid;gap:var(--space-lg)}@media (max-width:1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(1,minmax(0,1fr))}}.form-group{margin-bottom:1.5rem}.form-label{font-size:.875rem;margin-bottom:.5rem}.form-control{border:1px solid var(--border);border-radius:10px;font-family:var(--font-sans);font-size:.875rem;padding:.75rem 1rem;transition:var(--transition-base)}.form-control,.form-control:focus{background:var(--surface);color:var(--text-primary)}.form-control:focus{border-color:var(--accent)}.form-control:disabled{background-color:var(--surface-secondary);cursor:not-allowed;opacity:.6}.form-control::placeholder,.form-control:disabled{color:var(--text-tertiary)}.select-modern{position:relative;width:100%}.select-modern select{-webkit-appearance:none;appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text-primary);cursor:pointer;font-size:.875rem;padding:.75rem 1rem;width:100%}@media (max-width:1024px){.sidebar{width:240px}.main-body,.main-header{padding-left:2rem;padding-right:2rem}}@media (max-width:768px){.App{flex-direction:column}.sidebar{border-bottom:1px solid var(--border-light);border-right:none;height:auto;width:100%}.main-body,.main-header{padding:1rem}.dashboard-grid,.metrics-grid{grid-template-columns:1fr}}.fade-in{animation:fadeIn .3s ease-out}.slide-in{animation:slideIn .3s ease-out}.skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,var(--surface-secondary) 25%,var(--surface-tertiary) 50%,var(--surface-secondary) 75%);background-size:200% 100%}.status-indicator{border-radius:50%;display:inline-block;height:8px;margin-right:.5rem;width:8px}.status-active{background:var(--success);box-shadow:0 0 0 3px #10b98133}.status-inactive{background:var(--text-tertiary)}.tooltip{position:relative}.tooltip-content{background:var(--primary);border-radius:6px;bottom:100%;color:#fff;font-size:.75rem;left:50%;margin-bottom:.5rem;opacity:0;padding:.5rem 1rem;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .2s;white-space:nowrap}.tooltip:hover .tooltip-content{opacity:1}.ai-chat-fab{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid #fff;border-radius:50%;bottom:2rem;box-shadow:0 4px 20px #667eea66;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:60px;justify-content:center;position:fixed;right:2rem;transition:all .3s ease;width:60px;z-index:9999}.ai-chat-fab:hover{box-shadow:0 6px 30px #667eea99;transform:scale(1.1) rotate(5deg)}.ai-chat-fab:active{transform:scale(1.05)}@media (max-width:768px){.ai-chat-fab{bottom:1rem;font-size:1.2rem;height:50px;right:1rem;width:50px}}.modal-overlay{animation:modalOverlayFadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;z-index:10000}.modal{animation:modalSlideUp .3s cubic-bezier(.4,0,.2,1);background:var(--surface);border-radius:12px;box-shadow:var(--shadow-xl);max-width:90vw;position:relative}.modal-header{background:var(--surface-secondary);padding:1.5rem 2rem;position:relative}.modal-header h3{color:var(--text-primary)}.modal-body{overflow:auto}@keyframes modalOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.items-management{display:flex;flex-direction:column;gap:1.5rem;height:100%;max-width:100%}.items-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:1rem}.add-item-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.add-item-btn:hover{background:#5a67d8;transform:translateY(-1px)}.items-filters{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:1rem;padding:1rem}.items-list{flex:1 1;overflow-y:auto}.empty-items{align-items:center;color:#718096;display:flex;flex-direction:column;gap:1rem;height:300px;justify-content:center;text-align:center}.empty-items h3{color:#4a5568;font-size:1.25rem;margin:0}.empty-items p{font-size:.9rem;margin:0}.add-first-item-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.add-first-item-btn:hover{background:#5a67d8;transform:translateY(-1px)}.items-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.item-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s ease}.item-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.item-name{font-size:1.1rem;margin:0}.category-badge{font-size:.75rem;white-space:nowrap}.category-badge.protein{background:#fed7d7;color:#742a2a}.category-badge.produce{background:#c6f6d5;color:#22543d}.category-badge.dairy{background:#bee3f8;color:#2a4365}.category-badge.dry_goods{background:#feebc8;color:#7b341e}.category-badge.beverages{background:#e9d8fd;color:#553c9a}.category-badge.supplies{background:#e2e8f0;color:#4a5568}.category-badge.spices{background:#fed7e2;color:#702459}.category-badge.oils{background:#fef5e7;color:#744210}.category-badge.frozen{background:#d7fafe;color:#0d4f5c}.category-badge.bakery{background:#ffd6cc;color:#7b2d26}.category-badge.prepared_foods{background:#e6fffa;color:#234e52}.item-description{color:#718096;line-height:1.4;margin:0 0 1rem}.item-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.allergen-tags{display:flex;flex-wrap:wrap;gap:.25rem}.allergen-tag{background:#fed7d7;border-radius:3px;color:#742a2a;font-size:.75rem;padding:.125rem .375rem;text-transform:capitalize}.item-actions{display:flex;gap:.5rem;margin-top:auto}.delete-btn,.edit-btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.delete-btn{background:#fed7d7;color:#742a2a}.delete-btn:hover{background:#feb2b2;color:#63171b}.form-modal{max-width:700px}.item-form{padding:2rem}.allergen-checkboxes{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.checkbox-label{color:#4a5568;font-size:.9rem}.nutrition-grid{grid-gap:1rem;gap:1rem}.nutrition-grid .form-group label{font-size:.85rem}.nutrition-grid .form-group input{font-size:.85rem;padding:.5rem}.items-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;height:200px;justify-content:center}@media (max-width:1024px){.items-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.form-modal{max-height:95vh;width:95vw}.form-row{grid-template-columns:1fr}.nutrition-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}}@media (max-width:768px){.items-header{align-items:stretch}.items-filters,.items-header{flex-direction:column;gap:1rem}.filter-select{min-width:auto}.items-grid{grid-template-columns:1fr}.item-header{align-items:flex-start;flex-direction:column;gap:.5rem}.allergen-checkboxes{grid-template-columns:1fr}.nutrition-grid{grid-template-columns:repeat(2,1fr)}.form-actions{flex-direction:column}.form-modal{border-radius:0;height:100vh;max-height:100vh;width:100vw}}.suppliers-management{display:flex;flex-direction:column;gap:1.5rem;height:100%;max-width:100%}.suppliers-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:1rem}.add-supplier-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.add-supplier-btn:hover{background:#5a67d8;transform:translateY(-1px)}.suppliers-filters{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:1rem;padding:1rem}.suppliers-list{flex:1 1;overflow-y:auto}.empty-suppliers{align-items:center;color:#718096;display:flex;flex-direction:column;gap:1rem;height:300px;justify-content:center;text-align:center}.empty-suppliers h3{color:#4a5568;font-size:1.25rem;margin:0}.empty-suppliers p{font-size:.9rem;margin:0}.add-first-supplier-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.add-first-supplier-btn:hover{background:#5a67d8;transform:translateY(-1px)}.suppliers-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.supplier-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s ease}.supplier-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.supplier-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.supplier-main-info{flex:1 1}.supplier-name{color:#2d3748;font-size:1.1rem;font-weight:600;line-height:1.3;margin:0 0 .25rem}.supplier-code{color:#718096;font-size:.8rem;font-weight:500}.type-badge{border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize;white-space:nowrap}.type-badge.vendor{background:#bee3f8;color:#2a4365}.type-badge.distributor{background:#c6f6d5;color:#22543d}.type-badge.manufacturer{background:#fed7d7;color:#742a2a}.supplier-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.detail-row{align-items:flex-start;gap:.5rem}.detail-row .label{color:#4a5568;font-size:.85rem;font-weight:500;min-width:80px}.detail-row .value{color:#2d3748;font-size:.85rem}.supplier-actions{display:flex;gap:.5rem;margin-top:auto}.edit-btn,.manage-items-btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.edit-btn{background:#edf2f7;color:#4a5568}.edit-btn:hover{background:#e2e8f0;color:#2d3748}.manage-items-btn{background:#e6fffa;color:#234e52}.manage-items-btn:hover{background:#b2f5ea;color:#1a202c}.form-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.form-modal{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:800px;overflow-y:auto;width:90vw}.form-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem 2rem 1rem}.form-header h3{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0}.supplier-form,.supplier-item-form{padding:2rem}.form-section{margin-bottom:2rem}.form-section h4{border-bottom:1px solid #e2e8f0;color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.delivery-days{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.day-checkbox{align-items:center;color:#4a5568;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.day-checkbox input[type=checkbox]{margin:0;width:auto}.cancel-btn,.save-btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.save-btn{background:#667eea}.save-btn:hover{background:#5a67d8;transform:translateY(-1px)}.suppliers-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;height:200px;justify-content:center}@media (max-width:1024px){.suppliers-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.form-modal{max-height:95vh;width:95vw}.form-row{grid-template-columns:1fr}.delivery-days{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.suppliers-header{align-items:stretch}.suppliers-filters,.suppliers-header{flex-direction:column;gap:1rem}.filter-select{min-width:auto}.suppliers-grid{grid-template-columns:1fr}.supplier-header{align-items:flex-start;gap:.5rem}.supplier-actions,.supplier-header{flex-direction:column}.delivery-days{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-modal{border-radius:0;height:100vh;max-height:100vh;width:100vw}}.vendor-management-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.vendor-management-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.vendor-management-modal{background:#fff;border-radius:12px;display:flex;flex-direction:column;height:90vh;max-width:1400px;overflow:hidden;width:95vw}.vendor-management-modal .modal-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem}.vendor-management-modal .modal-header h2{color:#1e293b;font-size:1.25rem;font-weight:600;margin:0}.vendor-management-modal .close-btn{background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:1.5rem;padding:.25rem;transition:all .2s ease}.vendor-management-modal .close-btn:hover{background:#e2e8f0;color:#334155}.vendor-management-modal .modal-content{flex:1 1;overflow:hidden}.vendor-management-modal .vendor-management{border-radius:0;height:100%}.vendor-management-modal .vendor-management-header{display:none}@media (max-width:768px){.header-actions{flex-direction:column;gap:.75rem;width:100%}.add-supplier-btn,.vendor-management-btn{justify-content:center;width:100%}.vendor-management-modal{border-radius:0;height:100vh;width:100vw}}.vendor-dashboard{background:#f8fafc;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh}.dashboard-header{border-bottom:1px solid #e2e8f0;padding:1.5rem 2rem}.dashboard-header h2{color:#1e293b;font-size:1.5rem;margin:0 0 1rem}.dashboard-content{overflow-y:auto;padding:2rem}.stats-grid{grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.stat-card{border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;gap:1rem;padding:1.5rem;transition:all .2s ease}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:1.5rem;height:60px;justify-content:center;width:60px}.stat-icon.vendors{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-icon.rating{background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-icon.integration{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-icon.alerts{background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-value{line-height:1;margin-bottom:.25rem}.stat-label{color:#374151;font-size:.875rem;margin-bottom:.125rem}.stat-subtitle{color:#6b7280;font-size:.75rem}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.dashboard-card{border:1px solid #e2e8f0;overflow:hidden}.card-header{border-bottom:1px solid #f3f4f6;padding:1.5rem 1.5rem 1rem}.card-header h3{font-size:1.1rem;margin:0 0 .25rem}.card-subtitle{color:#6b7280;font-size:.875rem}.vendor-rankings{max-height:400px;overflow-y:auto;padding:1rem 1.5rem 1.5rem}.vendor-rank-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;gap:1rem;padding:.75rem 0}.vendor-rank-item:last-child{border-bottom:none}.rank-number{align-items:center;background:#f3f4f6;border-radius:50%;color:#6b7280;display:flex;flex-shrink:0;font-size:.875rem;font-weight:600;height:2rem;justify-content:center;width:2rem}.vendor-info{flex:1 1}.vendor-name{color:#1f2937;font-size:.9rem;font-weight:600;margin-bottom:.25rem}.vendor-ratings{align-items:center;display:flex;gap:1rem}.overall-rating{font-size:.9rem}.vendor-distribution{padding:1rem 1.5rem 1.5rem}.distribution-item{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.distribution-item:last-child{margin-bottom:0}.distribution-label{color:#374151;font-size:.875rem;font-weight:500;min-width:100px}.distribution-bar{background:#f3f4f6;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.distribution-fill{border-radius:4px;height:100%;transition:width .3s ease}.distribution-count{color:#1f2937;font-size:.875rem;font-weight:600;min-width:2rem;text-align:right}.expiring-items{max-height:400px;overflow-y:auto;padding:1rem 1.5rem 1.5rem}.expiring-item{align-items:center;background:#f9fafb;border-left:4px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.75rem}.expiring-item.warning{background:#fffbeb;border-left-color:#f59e0b}.expiring-item.critical{background:#fef2f2;border-left-color:#ef4444}.item-info{flex:1 1}.item-title{color:#1f2937;font-size:.9rem;font-weight:600;margin-bottom:.125rem}.item-vendor{color:#6b7280;font-size:.8rem}.item-expiration{text-align:right}.days-left{color:#1f2937;font-size:.9rem;font-weight:600;margin-bottom:.125rem}.expiring-item.warning .days-left{color:#d97706}.expiring-item.critical .days-left{color:#dc2626}.expiration-date{color:#6b7280;font-size:.75rem}.empty-state{color:#9ca3af;font-size:.9rem;font-style:italic}@media (max-width:1200px){.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width:768px){.dashboard-content{padding:1rem}.stats-grid{gap:1rem;grid-template-columns:1fr}.stat-card{padding:1rem}.stat-icon{font-size:1.25rem;height:50px;width:50px}.stat-value{font-size:1.5rem}.dashboard-grid{gap:1rem}.card-header,.expiring-items,.vendor-distribution,.vendor-rankings{padding:1rem}}.data-source-indicator{display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative}.data-source-indicator--small{font-size:10px}.data-source-indicator--medium{font-size:12px}.data-source-indicator--large{font-size:14px}.data-source-indicator--top-right{position:absolute;right:8px;top:8px;z-index:10}.data-source-indicator--top-left{left:8px;position:absolute;top:8px;z-index:10}.data-source-indicator--bottom-right{bottom:8px;position:absolute;right:8px;z-index:10}.data-source-indicator--bottom-left{bottom:8px;left:8px;position:absolute;z-index:10}.data-source-indicator--inline{margin-left:8px;position:relative;vertical-align:middle}.data-source-indicator__badge{align-items:center;border-radius:12px;cursor:help;display:flex;font-weight:600;gap:4px;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase;transition:all .2s ease;white-space:nowrap}.data-source-indicator--demo .data-source-indicator__badge{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.data-source-indicator--demo:hover .data-source-indicator__badge{background-color:#ffeaa7;transform:scale(1.05)}.data-source-indicator--live .data-source-indicator__badge{background-color:#d1f2eb;border:1px solid #7dda58;color:#0c5460}.data-source-indicator--live:hover .data-source-indicator__badge{background-color:#7dda58;transform:scale(1.05)}.data-source-indicator__icon{font-size:12px;line-height:1}.data-source-indicator__tooltip{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:8px;min-width:300px;opacity:0;padding:16px;position:absolute;right:0;top:100%;transform:translateY(-8px);transition:all .2s ease;visibility:hidden;z-index:1000}.data-source-indicator:hover .data-source-indicator__tooltip{opacity:1;transform:translateY(0);visibility:visible}.data-source-indicator__tooltip-content{font-size:14px;line-height:1.4}.data-source-indicator__tooltip-content h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.data-source-indicator__tooltip-content p{color:#666;margin:8px 0}.data-source-indicator__tooltip-content strong{color:#333;font-weight:600}.data-source-indicator__additional-info{border-top:1px solid #f0f0f0;margin-top:12px;padding-top:12px}.data-source-indicator__warning{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:12px;padding:12px}.data-source-indicator__warning p{color:#856404;font-size:13px;margin:0}@media (max-width:768px){.data-source-indicator__tooltip{left:50%;max-height:80vh;max-width:90vw;overflow-y:auto;position:fixed;right:auto;top:50%;transform:translate(-50%,-50%)}.data-source-indicator:hover .data-source-indicator__tooltip{transform:translate(-50%,-50%)}}@media (prefers-contrast:high){.data-source-indicator--demo .data-source-indicator__badge{background-color:#000;border:2px solid #ff0;color:#fff}.data-source-indicator--live .data-source-indicator__badge{background-color:#000;border:2px solid #0f0;color:#fff}}@media (prefers-reduced-motion:reduce){.data-source-indicator__badge,.data-source-indicator__tooltip{transition:none}.data-source-indicator--demo:hover .data-source-indicator__badge,.data-source-indicator--live:hover .data-source-indicator__badge{transform:none}}.vendor-catalog{background:#f8fafc;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh}.catalog-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;padding:1.5rem 2rem}.catalog-header h2{color:#1e293b;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.catalog-controls,.search-filter-row{align-items:center;display:flex;gap:1rem}.filter-select,.search-input{padding:.5rem 1rem}.filter-select{font-size:.875rem}.catalog-content{grid-gap:0;display:grid;flex:1 1;gap:0;grid-template-columns:400px 1fr auto;overflow:hidden}.vendors-panel{background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column}.vendors-panel h3{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#374151;font-size:1rem;font-weight:500;margin:0;padding:1rem 1.5rem}.vendors-list{flex:1 1;overflow-y:auto;padding:.5rem}.vendor-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;margin-bottom:.5rem;padding:1rem;transition:all .2s ease}.vendor-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #0000001a}.vendor-card.selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626}.vendor-header{align-items:flex-start;display:flex;justify-content:between;margin-bottom:.75rem}.vendor-name h4{color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 .25rem}.vendor-code{color:#6b7280;font-size:.75rem;font-weight:500}.vendor-status{align-items:flex-end;display:flex;flex-direction:column;gap:.25rem}.status-badge{padding:.125rem .5rem}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#fee2e2;color:#dc2626}.integration-badge{border-radius:12px;font-size:.75rem;font-weight:500;padding:.125rem .5rem;text-transform:uppercase}.integration-badge.api{background:#dbeafe;color:#1d4ed8}.integration-badge.edi{background:#fef3c7;color:#d97706}.integration-badge.manual{background:#f3f4f6;color:#374151}.vendor-metrics{margin-bottom:.75rem}.rating-summary{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.overall-rating{font-size:1rem;font-weight:600}.rating-breakdown{color:#6b7280;display:flex;font-size:.75rem;gap:.5rem}.performance-metrics{display:flex;justify-content:space-between}.metric{flex-direction:column}.metric-label{font-size:.75rem}.metric-value{font-size:.875rem;font-weight:600}.vendor-contact{align-items:flex-end;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;padding-top:.75rem}.contact-info{color:#6b7280;display:flex;flex-direction:column;font-size:.75rem;gap:.125rem}.last-sync{color:#9ca3af;font-size:.75rem}.vendor-details-panel{background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;min-width:600px}.vendor-details-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem 1.5rem}.vendor-details-header h3{color:#374151;font-size:1rem;font-weight:500;margin:0}.vendor-actions{display:flex;gap:.5rem}.btn-manage,.btn-sync{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s ease}.btn-manage:hover,.btn-sync:hover{background:#f9fafb;border-color:#9ca3af}.supplier-items-grid{grid-gap:1rem;align-content:flex-start;display:grid;flex:1 1;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));overflow-y:auto;padding:1rem}.supplier-item-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;overflow:hidden;transition:all .2s ease}.supplier-item-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a}.supplier-item-card.selected{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633}.item-image{align-items:center;background:#f3f4f6;display:flex;height:120px;justify-content:center}.item-image img{max-height:100%;max-width:100%}.no-image{color:#9ca3af;font-size:.875rem}.item-details{padding:1rem}.item-name{color:#1f2937;font-size:.9rem;margin:0 0 .5rem}.item-codes{color:#6b7280;display:flex;font-size:.75rem;justify-content:space-between;margin-bottom:.5rem}.item-brand{color:#3b82f6;font-size:.8rem;font-weight:500;margin-bottom:.75rem}.item-pricing{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;margin-bottom:.75rem;padding:.5rem}.price-row{display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.25rem}.price-row:last-child{margin-bottom:0}.price{color:#059669;font-weight:600}.item-specs{color:#6b7280;font-size:.75rem;margin-bottom:.75rem}.item-specs,.item-status{display:flex;justify-content:space-between}.item-status{align-items:center}.availability-status{border-radius:12px;font-size:.75rem;font-weight:500;padding:.125rem .5rem}.availability-status.available{background:#dcfce7;color:#166534}.availability-status.limited{background:#fef3c7;color:#d97706}.availability-status.backorder{background:#fee2e2;color:#dc2626}.availability-status.discontinued{background:#f3f4f6;color:#6b7280}.last-updated{color:#9ca3af;font-size:.75rem}.item-details-panel{background:#fff;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;width:400px}.item-details-header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem 1.5rem}.item-details-header h3{color:#374151;font-size:1rem;font-weight:500;margin:0}.close-btn{color:#6b7280}.close-btn:hover{color:#374151}.item-details-content{flex:1 1;overflow-y:auto;padding:1rem 1.5rem}.details-section{margin-bottom:2rem}.details-section h4{border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.details-grid{grid-gap:.75rem;display:grid;gap:.75rem}.detail-item{border-bottom:1px solid #f3f4f6;padding:.5rem 0}.detail-item label{color:#6b7280;font-size:.875rem}.detail-item span{color:#1f2937;font-size:.875rem;text-align:right}.price-highlight{color:#059669!important;font-weight:600!important}.allergen-panel,.nutrition-panel{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:1rem}.nutrition-item{color:#374151;font-size:.875rem;margin-bottom:.5rem}.allergen-group{font-size:.875rem;margin-bottom:.75rem}.allergen-group strong{color:#dc2626;display:block;margin-bottom:.25rem}.image-gallery{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.gallery-image{border:1px solid #e5e7eb;border-radius:6px;overflow:hidden;position:relative}.gallery-image img{height:120px;object-fit:cover;width:100%}.gallery-image.primary-image{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f633}.image-type{background:#000000b3;bottom:0;color:#fff;font-size:.75rem;left:0;padding:.25rem;position:absolute;right:0;text-align:center}.loading-spinner{align-items:center;color:#6b7280;display:flex;font-size:1.1rem;height:200px;justify-content:center}@media (max-width:1200px){.catalog-content{grid-template-columns:350px 1fr auto}.supplier-items-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.item-details-panel{width:350px}}@media (max-width:768px){.catalog-content{grid-template-columns:1fr;grid-template-rows:auto 1fr}.vendors-panel{border-bottom:1px solid #e2e8f0;border-right:none;max-height:300px}.vendor-details-panel{border-right:none;min-width:0;min-width:auto}.item-details-panel{bottom:0;position:fixed;right:0;top:0;width:100vw;z-index:1000}}.vendor-management{background:#f8fafc;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100vh}.vendor-management-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;padding:1.5rem 2rem}.vendor-management-header h1{color:#1e293b;font-size:1.75rem;font-weight:700;margin:0}.tab-navigation{gap:.5rem}.tab-button{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;display:flex;gap:.5rem;transition:all .2s ease}.tab-button:hover{background:#f8fafc;border-color:#cbd5e1}.tab-button.active{background:#3b82f6;border-color:#3b82f6}.tab-icon{font-size:1rem}.vendor-management-content{flex:1 1;overflow:hidden}.vendor-management-content>div{height:100%}@media (max-width:768px){.vendor-management-header{align-items:flex-start;flex-direction:column;gap:1rem}.tab-navigation{justify-content:center;width:100%}.tab-button{flex:1 1;justify-content:center;padding:.75rem 1rem}}.inventory-receiving{display:flex;flex-direction:column;gap:1.5rem;height:100%;max-width:100%}.receiving-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:1rem}.header-info h2{margin:0 0 .5rem}.header-info p{color:#718096;font-size:.9rem;margin:0}.back-btn,.complete-btn,.create-order-btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease;white-space:nowrap}.create-order-btn{background:#667eea;color:#fff}.create-order-btn:hover{background:#5a67d8;transform:translateY(-1px)}.back-btn{background:#edf2f7;color:#4a5568}.back-btn:hover{background:#e2e8f0;color:#2d3748}.complete-btn{background:#48bb78;color:#fff}.complete-btn:hover:not(:disabled){background:#38a169;transform:translateY(-1px)}.complete-btn:disabled{background:#a0aec0;cursor:not-allowed}.receiving-filters{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:1rem;padding:1rem}.filter-select{min-width:180px}.receiving-orders{flex:1 1;overflow-y:auto}.empty-receiving{align-items:center;color:#718096;display:flex;flex-direction:column;gap:1rem;height:300px;justify-content:center;text-align:center}.empty-receiving h3{color:#4a5568;font-size:1.25rem;margin:0}.empty-receiving p{font-size:.9rem;margin:0}.create-first-order-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.create-first-order-btn:hover{background:#5a67d8;transform:translateY(-1px)}.orders-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.order-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s ease}.order-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.order-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.order-info h3{color:#2d3748;font-size:1.1rem;font-weight:600;margin:0 0 .25rem}.order-info p{color:#718096;font-size:.9rem;margin:0}.order-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.detail-row{font-size:.85rem}.detail-row span:first-child{color:#4a5568;font-weight:500}.detail-row span:last-child{color:#2d3748}.order-actions{display:flex;gap:.5rem}.continue-btn,.start-btn,.view-btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.start-btn{background:#48bb78;color:#fff}.start-btn:hover{background:#38a169}.continue-btn{background:#3182ce;color:#fff}.continue-btn:hover{background:#2c5282}.view-btn{background:#edf2f7;color:#4a5568}.view-btn:hover{background:#e2e8f0;color:#2d3748}.receiving-items h3{color:#2d3748;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.items-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.receiving-item-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;transition:all .2s ease}.receiving-item-card.received{background:#f0fff4;border-color:#48bb78}.receiving-item-card:hover{box-shadow:0 4px 12px #0000001a}.item-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.item-header h4{color:#2d3748;font-size:1rem;font-weight:600;margin:0}.supplier-sku{color:#718096;font-size:.8rem;padding:.25rem .5rem}.item-expected,.supplier-sku{background:#f7fafc;border-radius:4px}.item-expected{color:#4a5568;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:1rem;padding:.5rem}.receiving-form{display:flex;flex-direction:column;gap:1rem}.form-group.discrepancy{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;grid-column:1/-1;padding:1rem}.form-group label{color:#4a5568;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #cbd5e0;font-size:.9rem;padding:.75rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{min-height:60px}.receive-btn{background:#48bb78;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;margin-top:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.receive-btn:hover{background:#38a169;transform:translateY(-1px)}.modal{box-shadow:0 20px 25px -5px #0000001a}.modal-header{border-bottom:1px solid #e2e8f0;padding:1.5rem 2rem 1rem}.modal-header h3{color:#2d3748;font-size:1.25rem}.close-btn{color:#718096;font-size:1.5rem;line-height:1;padding:.25rem}.close-btn:hover{color:#4a5568}.receiving-order-form{padding:2rem}.form-actions{border-top:1px solid #e2e8f0}.cancel-btn,.create-btn{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.cancel-btn{background:#edf2f7;color:#4a5568}.cancel-btn:hover{background:#e2e8f0;color:#2d3748}.create-btn{background:#667eea;color:#fff}.create-btn:hover{background:#5a67d8;transform:translateY(-1px)}.receiving-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;height:200px;justify-content:center}@media (max-width:1024px){.items-grid,.orders-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.modal{max-height:95vh;width:95vw}.form-row{grid-template-columns:1fr}}@media (max-width:768px){.receiving-header{align-items:stretch;gap:1rem}.header-actions,.receiving-filters,.receiving-header{flex-direction:column}.receiving-filters{gap:1rem}.filter-select{min-width:auto}.items-grid,.orders-grid{grid-template-columns:1fr}.order-header{align-items:flex-start;gap:.5rem}.form-actions,.order-actions,.order-header{flex-direction:column}.modal{border-radius:0;height:100vh;max-height:100vh;width:100vw}}.stock-levels{display:flex;flex-direction:column;gap:1.5rem;max-width:100%}.stock-header{align-items:flex-start;display:flex;gap:2rem;justify-content:space-between;margin-bottom:1rem}.header-info h2{color:#2d3748;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.stock-summary{display:flex;gap:2rem}.summary-item{flex-direction:column;gap:.25rem}.summary-label{color:#718096;font-size:.85rem}.summary-value{color:#2d3748;font-size:1.25rem;font-weight:600}.refresh-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.refresh-btn:hover{background:#5a67d8;transform:translateY(-1px)}.stock-filters{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.search-input{background:#fff;border:1px solid #cbd5e0;font-size:.9rem}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.filter-group{flex-wrap:wrap;gap:1rem}.filter-select{border:1px solid #cbd5e0;font-size:.9rem;min-width:150px;padding:.75rem 1rem}.filter-select:focus{border-color:#667eea}.inventory-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.inventory-table{border-collapse:collapse;font-size:.9rem;width:100%}.inventory-table th{background:#f7fafc;border-bottom:1px solid #e2e8f0;color:#4a5568;font-weight:600;padding:1rem .75rem;text-align:left;white-space:nowrap}.inventory-table td{border-bottom:1px solid #f1f5f9;padding:1rem .75rem;vertical-align:top}.inventory-row:hover{background-color:#f7fafc}.inventory-row.critical{background-color:#fed7d7}.inventory-row.warning{background-color:#feebc8}.inventory-row.expired{background-color:#feb2b2}.item-info{display:flex;flex-direction:column;gap:.25rem}.item-name{color:#2d3748}.item-lot,.item-sku{color:#718096;font-size:.8rem}.category-badge{background:#edf2f7;border-radius:4px;color:#4a5568;font-size:.8rem;font-weight:500;padding:.25rem .5rem;text-transform:capitalize}.quantity-info{display:flex;flex-direction:column;gap:.25rem}.quantity-main{color:#2d3748;font-weight:600}.quantity-reserved{color:#e53e3e;font-size:.8rem;font-style:italic}.expiration-info{display:flex;flex-direction:column;gap:.25rem}.expiration-info.critical{color:#e53e3e;font-weight:600}.expiration-info.warning{color:#d69e2e;font-weight:600}.expiration-info.expired{color:#c53030;font-weight:700}.days-until{font-size:.8rem;font-weight:500}.status-badge{padding:.25rem .5rem}.status-badge.available{background:#c6f6d5;color:#22543d}.status-badge.reserved{background:#bee3f8;color:#2a4365}.status-badge.expired{background:#fed7d7;color:#742a2a}.status-badge.damaged{background:#fbb6ce;color:#702459}.stock-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;height:200px;justify-content:center}.loading-spinner{border:3px solid #e2e8f0;border-top-color:#667eea;height:32px;width:32px}.empty-inventory{align-items:center;color:#718096;display:flex;flex-direction:column;gap:.5rem;height:200px;justify-content:center;text-align:center}.empty-inventory h3{color:#4a5568;font-size:1.1rem;margin:0}.empty-inventory p{font-size:.9rem;margin:0}@media (max-width:1024px){.stock-filters{padding:1rem}.filter-group{flex-direction:column}.filter-select{min-width:auto}.stock-header{flex-direction:column;gap:1rem}.stock-summary{flex-direction:row;gap:1rem}}@media (max-width:768px){.inventory-table{font-size:.8rem}.inventory-table td,.inventory-table th{padding:.75rem .5rem}.stock-summary{flex-direction:column;gap:.5rem}.summary-item{align-items:center;text-align:center}}.recipe-management{background:#f8fafc;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;height:100%}.recipe-header{background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;padding:1.5rem 2rem}.header-controls{gap:2rem;justify-content:space-between}.view-toggle{display:flex;gap:.5rem}.toggle-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.toggle-btn:hover{background:#f9fafb;border-color:#9ca3af}.toggle-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.search-controls{align-items:center;display:flex;gap:1rem}.search-input{border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;min-width:300px;padding:.75rem 1rem}.search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn-danger,.btn-secondary{padding:.5rem 1rem}.btn-danger{background:#ef4444;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s ease}.btn-danger:hover{background:#dc2626}.btn-sm{background:#fff;border:1px solid #d1d5db;border-radius:4px;color:#374151;cursor:pointer;font-size:.75rem;transition:all .2s ease}.btn-sm:hover{background:#f9fafb}.recipe-content{flex:1 1;overflow:hidden;padding:2rem}.loading-state{align-items:center;color:#6b7280;display:flex;flex-direction:column;height:300px;justify-content:center}.loading-spinner{height:2rem;width:2rem}.recipes-view{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr auto;height:100%}.recipes-list{overflow-y:auto}.empty-state h3{color:#374151;font-size:1.25rem;margin:0 0 .5rem}.empty-state p{font-size:.875rem;margin:0 0 1.5rem}.recipes-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.recipe-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;padding:1.5rem;transition:all .2s ease}.recipe-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #0000001a}.recipe-card.selected{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.recipe-card .recipe-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.recipe-card .recipe-header h3{color:#1f2937;font-size:1rem;font-weight:600;line-height:1.4;margin:0}.status{border-radius:12px;font-size:.75rem;padding:.25rem .75rem}.status.active{background:#dcfce7;color:#166534}.status.inactive{color:#dc2626}.recipe-meta{color:#6b7280;display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.75rem}.category{color:#3b82f6}.recipe-timing{background:#f9fafb;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:.75rem;padding:.75rem}.time-item{align-items:center;display:flex;flex-direction:column;font-size:.75rem;gap:.25rem}.time-item .label{color:#6b7280;font-weight:500}.time-item .value{color:#1f2937;font-weight:600}.recipe-cost{align-items:center;display:flex;font-size:.875rem;justify-content:space-between;margin-bottom:.75rem}.recipe-cost .label{color:#6b7280}.recipe-cost .value{color:#059669;font-weight:600}.ingredients-count{color:#6b7280;font-size:.875rem}.recipe-details{background:#fff;border:1px solid #e5e7eb;border-radius:12px;max-height:calc(100vh - 200px);overflow-y:auto;width:500px}.details-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1.5rem}.details-header h2{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0}.details-actions{display:flex;gap:.5rem}.recipe-info{padding:1.5rem}.info-section{margin-bottom:1.5rem}.info-section h4{color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 .75rem}.info-section p{color:#6b7280;line-height:1.6;margin:0}.info-grid{grid-gap:.75rem;gap:.75rem;grid-template-columns:1fr 1fr}.info-item{gap:.25rem}.info-item label{font-size:.75rem;font-weight:500}.info-item span{font-size:.875rem;font-weight:500}.ingredients-section{padding:0 1.5rem 1.5rem}.ingredients-section h4{color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 1rem}.ingredients-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.ingredients-table .table-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.ingredients-table .table-header,.ingredients-table .table-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1fr 1fr;padding:.75rem 1rem}.ingredients-table .table-row{border-bottom:1px solid #f3f4f6;font-size:.875rem}.ingredients-table .table-row:last-child{border-bottom:none}.ingredients-table .table-footer{grid-gap:1rem;background:#f9fafb;border-top:1px solid #e5e7eb;display:grid;font-weight:600;gap:1rem;grid-template-columns:2fr 1fr 1fr 1fr;padding:.75rem 1rem}.ingredients-table .total-label{color:#374151;grid-column:1/4;text-align:right}.ingredients-table .total-cost{color:#059669}.instructions-section{padding:0 1.5rem 1.5rem}.instructions-section h4{color:#1f2937;font-size:.9rem;font-weight:600;margin:0 0 1rem}.instructions-content{display:flex;flex-direction:column;gap:.75rem}.instruction-step{align-items:flex-start;display:flex;gap:.75rem}.step-number{align-items:center;background:#3b82f6;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:600;height:1.5rem;justify-content:center;width:1.5rem}.step-text{color:#374151;font-size:.875rem;line-height:1.6}.menu-items-view{display:flex;flex-direction:column;gap:2rem}.menu-summary{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.summary-cards{grid-gap:1.5rem;gap:1.5rem}.card-header{margin-bottom:.5rem}.card-title{color:#6b7280;font-size:.875rem;font-weight:500}.card-icon{font-size:1.25rem}.card-value{font-size:2rem}.menu-items-list{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.menu-items-table{display:flex;flex-direction:column}.menu-items-table .table-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#374151;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.menu-items-table .table-header,.menu-items-table .table-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:2fr 1fr 1.5fr 1fr 1fr 1fr;padding:1rem 1.5rem}.menu-items-table .table-row{align-items:center;border-bottom:1px solid #f3f4f6;font-size:.875rem}.menu-items-table .table-row:last-child{border-bottom:none}.menu-items-table .actions{display:flex;gap:.5rem}@media (max-width:1200px){.recipes-view{grid-template-columns:1fr}.recipe-details{max-height:400px;width:100%}.recipes-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.header-controls{align-items:stretch;flex-direction:column;gap:1rem}.search-controls{justify-content:space-between}.search-input{flex:1 1;min-width:auto}.info-grid,.recipes-grid,.summary-cards{grid-template-columns:1fr}.menu-items-table .table-header,.menu-items-table .table-row{gap:.5rem;grid-template-columns:1fr;text-align:left}}.menu-item-image-upload{margin-bottom:32px}.menu-item-image-upload h3{color:#212529;font-size:18px;font-weight:600;margin:0 0 8px}.section-description{color:#6c757d;font-size:14px;margin:0 0 24px}.image-upload-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:1fr 1fr 1fr;margin-bottom:24px}.image-upload-column{display:flex;flex-direction:column}.image-upload-column.quality-control{grid-column:span 3}.image-upload-column h4{color:#212529;font-size:16px;font-weight:600;margin:0 0 8px}.image-description{color:#6c757d;font-size:12px;line-height:1.4;margin:8px 0 0}.quality-control-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-top:16px}.quality-control-item{display:flex;flex-direction:column}.image-upload-container{width:100%}.image-upload-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.image-upload-label{color:#212529;font-size:14px;font-weight:600;margin:0}.use-for-all-btn{align-items:center;background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:4px;padding:4px 8px;transition:background-color .2s}.use-for-all-btn:hover{background:#0056b3}.image-upload-area{align-items:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;cursor:pointer;display:flex;justify-content:center;min-height:120px;padding:16px;position:relative;text-align:center;transition:all .2s ease}.image-upload-area.drag-over,.image-upload-area:hover{background:#e7f3ff;border-color:#007bff}.image-upload-area.drag-over{transform:scale(1.02)}.image-upload-area.uploading{background:#fff8e1;border-color:#ffc107;cursor:not-allowed}.image-preview{align-items:center;display:flex;height:100%;justify-content:center;position:relative;width:100%}.image-preview img{border-radius:4px;max-height:100px;max-width:100%;object-fit:cover}.remove-image{align-items:center;background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;transition:background-color .2s;width:24px}.remove-image:hover{background:#c82333}.upload-placeholder{align-items:center;color:#6c757d;display:flex;flex-direction:column;gap:8px}.upload-icon{color:#6c757d;margin-bottom:4px}.upload-text{align-items:center;display:flex;flex-direction:column;gap:4px}.upload-text p{font-size:14px;margin:0}.upload-hint{color:#adb5bd;font-size:12px}.upload-progress{align-items:center;bottom:8px;color:#6c757d;display:flex;font-size:12px;gap:8px;left:8px;position:absolute;right:8px}.progress-bar{border-radius:2px;height:4px}.progress-fill{animation:progress-animation 1s ease-in-out infinite;background:#007bff;border-radius:2px}@keyframes progress-animation{0%{width:0}50%{width:100%}to{width:0}}.upload-error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.upload-error,.upload-success{align-items:center;display:flex;font-size:12px;gap:8px;margin-top:8px;padding:8px 12px}.upload-success{background:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724}@media (max-width:1024px){.image-upload-grid{grid-template-columns:1fr 1fr}.image-upload-column.quality-control{grid-column:span 2}.quality-control-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.image-upload-grid{gap:24px;grid-template-columns:1fr}.image-upload-column.quality-control{grid-column:span 1}.quality-control-grid{gap:12px;grid-template-columns:repeat(2,1fr)}.image-upload-area{min-height:100px;padding:12px}.image-preview img{max-height:80px}}@media (max-width:480px){.quality-control-grid{grid-template-columns:1fr}.image-upload-header{align-items:flex-start;flex-direction:column;gap:8px}.use-for-all-btn{align-self:flex-start}}.menu-item-form-modal.modal-overlay{-webkit-overflow-scrolling:touch;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#00000080;bottom:0;box-sizing:border-box;left:0;overflow-x:hidden;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:1050}.menu-item-form-modal .modal-container{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;margin:0 auto;max-width:800px;min-height:auto;position:relative;width:100%}.menu-item-form-modal .modal-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:1.5rem 2rem}.modal-close{align-items:center;border-radius:6px;display:flex;height:32px;justify-content:center;padding:.5rem;width:32px}.modal-close:hover{background:#f3f4f6;color:#374151}.menu-item-form-modal .modal-content{background:#fff;flex:1 1;overflow:visible;padding:2rem}.menu-item-form{gap:2rem}.form-section,.menu-item-form{display:flex;flex-direction:column}.form-section{gap:1rem}.form-section h3{border-bottom:1px solid #f3f4f6;color:#111827;font-size:1.125rem;margin:0;padding-bottom:.5rem}.form-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-input,.form-select,.form-textarea{color:#111827;transition:all .2s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a,0 1px 2px #0000000d;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;cursor:pointer;padding-right:2.5rem}.form-select:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed;opacity:.7}.form-textarea{min-height:80px}.checkbox-group{flex-wrap:wrap;gap:1.5rem}.checkbox-label{color:#374151}.form-checkbox{background-color:#fff;border:2px solid #d1d5db;border-radius:4px;cursor:pointer;height:1.25rem;position:relative;transition:all .2s ease;width:1.25rem}.form-checkbox:checked{background-color:#6366f1;border-color:#6366f1}.form-checkbox:checked:after{color:#fff;content:"✓";font-size:.875rem;font-weight:700;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.form-checkbox:focus{box-shadow:0 0 0 3px #6366f11a;outline:none}.menu-item-form-modal .modal-footer{background:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:1rem;justify-content:flex-end;padding:1.5rem 2rem}.btn-cancel{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:#374151;cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.btn-cancel:hover{background:#f9fafb;border-color:#9ca3af}.btn-submit{background:#6366f1;border:none;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.btn-submit:hover:not(:disabled){background:#4f46e5;box-shadow:0 4px 12px #6366f166;transform:translateY(-1px)}.btn-submit:disabled{background:#9ca3af;box-shadow:0 1px 2px #0000000d;cursor:not-allowed;transform:none}@media (max-width:768px){.menu-item-form-modal{padding:10px}.menu-item-form-modal .modal-container{border-radius:8px;margin:0 auto;max-width:100%;width:100%}.menu-item-form-modal .modal-header{border-radius:8px 8px 0 0;padding:1rem 1.5rem}.menu-item-form-modal .modal-content{padding:1.5rem}.menu-item-form-modal .modal-footer{border-radius:0 0 8px 8px;flex-direction:column;padding:1rem 1.5rem}.form-grid{grid-template-columns:1fr}.checkbox-group{flex-direction:column;gap:1rem}}.form-input:invalid,.form-select:invalid{border-color:#ef4444}.form-input:invalid:focus,.form-select:invalid:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.form-select:disabled:after{animation:spin 1s linear infinite;border:2px solid #d1d5db;border-radius:50%;border-top-color:#6366f1;content:"";height:1rem;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:1rem}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.input-with-button{display:flex;flex-direction:column;gap:.5rem}.btn-ai-generate{align-items:center;background:linear-gradient(135deg,#8b5cf6,#a855f7);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;min-height:2.5rem;padding:.75rem 1rem;transition:all .2s ease;white-space:nowrap}.btn-ai-generate:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#9333ea);box-shadow:0 4px 12px #8b5cf64d;transform:translateY(-1px)}.btn-ai-generate:active:not(:disabled){box-shadow:0 2px 8px #8b5cf64d;transform:translateY(0)}.btn-ai-generate:disabled{background:#d1d5db;box-shadow:none;color:#6b7280;cursor:not-allowed;transform:none}.btn-ai-generate .spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:1rem;width:1rem}@media (min-width:640px){.input-with-button{align-items:flex-end;flex-direction:row}.input-with-button .form-input{flex:1 1}.btn-ai-generate{flex-shrink:0;margin-left:.5rem}}.description-field-container{display:flex;flex-direction:column;gap:.5rem}.btn-ai-description{align-items:center;align-self:flex-start;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;min-height:2.5rem;padding:.75rem 1rem;transition:all .2s ease;white-space:nowrap}.btn-ai-description:hover:not(:disabled){background:linear-gradient(135deg,#047857,#065f46);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-ai-description:active:not(:disabled){box-shadow:0 2px 8px #10b9814d;transform:translateY(0)}.btn-ai-description:disabled{background:#d1d5db;box-shadow:none;color:#6b7280;cursor:not-allowed;transform:none}.btn-ai-description .loading-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:1rem;width:1rem}.btn-ai-description .ai-icon{font-size:1rem}@media (min-width:640px){.description-field-container{align-items:flex-end;flex-direction:row;gap:.75rem}.description-field-container .form-textarea{flex:1 1}.btn-ai-description{flex-shrink:0}}.form-hint{color:#6b7280;font-size:.75rem;line-height:1.3;margin-top:.25rem}.video-upload-section{display:flex;flex-direction:column;gap:.75rem}.video-upload-controls{align-items:center;display:flex;gap:1rem}.upload-video-btn{align-items:center;background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;min-width:140px;padding:.75rem 1rem;transition:all .2s ease}.upload-video-btn:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-2px)}.upload-video-btn:disabled{background:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.video-upload-progress{align-items:center;display:flex;flex:1 1;gap:.75rem;min-width:150px}.progress-bar{background:#e5e7eb;flex:1 1}.progress-fill{background:linear-gradient(135deg,#059669,#10b981);border-radius:4px}.video-upload-progress span{color:#059669;font-size:.75rem;font-weight:600;min-width:35px;text-align:right}.menu-management{background:var(--surface-secondary);display:block!important;height:auto;margin:-2rem -3rem;max-height:none!important;max-width:none!important;min-height:100vh;overflow:visible;padding:0;position:relative;width:100%;z-index:1}.ingestion-banner{background:linear-gradient(135deg,#3b82f6,#8b5cf6);border-bottom:1px solid #ffffff1a;color:#fff;padding:1rem 4rem}.banner-content{align-items:center;display:flex;gap:1rem;margin:0 auto;max-width:1200px}.banner-icon{animation:pulse 2s infinite;font-size:1.5rem}.banner-text{flex:1 1;font-size:.9rem;line-height:1.4}.banner-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #ffffff4d;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.banner-button:hover{background:#ffffff4d;transform:translateY(-1px)}.modal-content{max-width:90vw}.menu-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d;display:flex;justify-content:space-between;margin-bottom:0;padding:2rem 4rem}.menu-header h1{color:var(--text-primary);font-size:1.875rem;font-weight:700;letter-spacing:-.025em;margin:0}.menu-header p{color:var(--text-secondary);font-size:.875rem;margin:.5rem 0 0}.header-buttons{align-items:center;display:flex;gap:1rem}.btn-bulk-import{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-bulk-import:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 8px -1px #00000026,0 4px 6px -1px #0000001a;transform:translateY(-1px)}.btn-bulk-import:active{transform:translateY(0)}.btn-ingestion{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;color:#fff;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-ingestion:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 6px 8px -1px #00000026,0 4px 6px -1px #0000001a;transform:translateY(-1px)}.btn-ingestion:active{transform:translateY(0)}.menu-toolbar{align-items:end;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d;display:flex;flex-wrap:wrap;gap:1.5rem;padding:1.5rem 4rem}.menu-toolbar .filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.menu-toolbar .filter-group label{color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.menu-content{flex-shrink:0;flex:none;height:auto;max-height:none;max-width:none;min-height:auto;overflow:visible;padding:2rem 4rem;width:100%}.input-professional{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:var(--text-primary);font-size:.875rem;font-weight:400;min-width:200px;padding:.75rem 1rem;transition:var(--transition-base)}.input-professional:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f11a,0 1px 2px #0000000d;outline:none}.input-professional::placeholder{color:#9ca3af}.select-professional:hover{border-color:#9ca3af}.btn-clear{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1rem;transition:var(--transition-base)}.btn-clear:hover{background:#f9fafb;border-color:#9ca3af;color:var(--text-primary)}.menu-items-grid{grid-gap:1.5rem;gap:1.5rem;grid-auto-rows:auto;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));height:auto;max-height:none;max-width:none;min-height:auto;overflow:visible;width:100%}.menu-item-card{background:linear-gradient(135deg,#667eea,#764ba2);border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #00000026;display:flex!important;flex-direction:column!important;height:450px!important;max-height:450px!important;min-height:450px!important;padding:0;position:relative;transition:var(--transition-smooth)}.menu-item-card:hover{border-color:#d0d0d0;box-shadow:0 8px 24px #00000026}.menu-item-image{background:#f0f0f0!important;border-radius:12px 12px 0 0!important;box-sizing:border-box!important;display:block!important;flex-shrink:0!important;height:200px!important;max-height:200px!important;max-width:100%!important;min-height:200px!important;min-width:100%!important;object-fit:cover!important;object-position:center!important;width:100%!important}.menu-item-content{flex:1 1;justify-content:flex-start;padding:1.25rem;position:relative}.menu-item-title{color:#fff;font-size:1.1rem;font-weight:600;line-height:1.3;margin:0 0 .75rem;text-shadow:0 1px 3px #00000080}.menu-item-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#f0f0f0;display:-webkit-box;font-size:.875rem;line-height:1.4;margin:0 0 1rem;min-height:3.5rem;overflow:hidden;text-shadow:0 1px 2px #00000080}.menu-item-price-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.menu-item-price{color:#10b981;font-size:1rem;font-weight:700;text-shadow:0 1px 2px #00000080}.menu-item-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.badge{border-radius:3px;font-size:.625rem;padding:.1rem .4rem}.badge-category{background:#f3f4f6e6;border:1px solid #e5e7ebcc;color:#374151}.badge-unavailable{background:#fef3c7;border:1px solid #fde68a;color:#d97706}.badge-modifier{background:#ede9fe;border:1px solid #c4b5fd;color:var(--accent)}.menu-item-allergens{display:none}.menu-item-footer{align-items:center;border-top:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-top:auto;padding-top:.5rem;position:relative;z-index:3}.menu-item-time{color:#e0e0e0;font-size:.75rem;font-weight:500;text-shadow:0 1px 2px #00000080}.menu-item-actions{display:flex;gap:.5rem}.menu-item-actions .btn-small{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #ffffff4d;border-radius:4px;box-shadow:0 1px 2px #0000001a;color:#374151;cursor:pointer;font-size:.75rem;font-weight:500;padding:.25rem .5rem;transition:all .2s ease}.menu-item-actions .btn-small:hover{background:#fff;border-color:#ffffff80;box-shadow:0 2px 4px #0003;transform:translateY(-1px)}.menu-item-actions .btn-small:active{box-shadow:0 1px 2px #0000000d;transform:translateY(0)}.btn-small{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:#374151;cursor:pointer;font-size:.8125rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.btn-small:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.empty-state,.loading-state{border-radius:12px;box-shadow:0 1px 2px #0000000d;padding:3rem 2rem}.loading-state{background:#fff;border:1px solid #e5e7eb;text-align:center}@media (max-width:768px){.menu-management{margin:-1rem}.menu-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1.5rem}.menu-toolbar{align-items:stretch;flex-direction:column;padding:1rem 1.5rem}.menu-toolbar .filter-group{min-width:auto}.menu-content{padding:1.5rem}.ingestion-banner{padding:1rem 1.5rem}.menu-items-grid{grid-template-columns:1fr}.menu-item-footer{align-items:flex-start;flex-direction:column;gap:1rem}}.category-management{background:var(--surface-secondary);display:flex;flex-direction:column;margin:-2rem -3rem;max-width:100%;min-height:calc(100vh - 4rem);overflow:visible;padding:0}.category-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d;display:flex;justify-content:space-between;margin-bottom:0;padding:2rem 3rem}.category-header h1{color:var(--text-primary);font-size:1.875rem;font-weight:700;letter-spacing:-.025em;margin:0}.category-header p{color:var(--text-secondary);font-size:.875rem;margin:.5rem 0 0}.category-toolbar{align-items:end;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 2px #0000000d;display:flex;flex-wrap:wrap;gap:1.5rem;padding:1.5rem 3rem}.category-toolbar .filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:200px}.category-toolbar .filter-group label{color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.025em;text-transform:uppercase}.category-content{flex:1 1;height:auto;min-height:0;overflow:visible;padding:2rem 3rem}.categories-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.categories-tree{display:flex;flex-direction:column;gap:.5rem}.category-card-wrapper{position:relative}.category-card-wrapper.subcategory,.subcategories{margin-top:.5rem}.subcategories{border-left:2px solid #e5e7eb;margin-left:1rem;padding-left:0}.expand-toggle{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:.75rem;height:24px;justify-content:center;padding:.25rem;transition:background-color .2s ease;width:24px}.expand-toggle:hover{background-color:#f3f4f6;color:#374151}.subcategory-badge{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:.625rem;font-weight:500;letter-spacing:.025em;margin-left:.5rem;padding:.125rem .5rem;text-transform:uppercase}.category-card{border:1px solid var(--border-light);border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem;transition:var(--transition-smooth)}.category-card:hover{border-color:var(--border);box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.category-card.inactive{background:#f9fafb;opacity:.6}.category-header-card{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.category-color-indicator{border-radius:6px;flex-shrink:0;height:48px;width:12px}.category-info{flex:1 1}.category-info h3{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 .25rem}.category-info p{color:var(--text-secondary);font-size:.875rem;line-height:1.4;margin:0}.category-meta{align-items:center;border-top:1px solid #f3f4f6;display:flex;gap:.75rem;margin-bottom:1rem;padding-top:1rem}.sort-order{color:#6b7280;font-size:.75rem;font-weight:500}.badge{border-radius:4px;font-size:.6875rem;font-weight:500;letter-spacing:.025em;padding:.2rem .6rem}.badge-inactive{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.category-actions{display:flex;gap:.5rem}.category-actions .btn-small{background:#fff;border:1px solid #d1d5db;border-radius:6px;box-shadow:0 1px 2px #0000000d;color:#374151;cursor:pointer;font-size:.8125rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease}.category-actions .btn-small:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.category-form{padding:1.5rem}.form-row{grid-gap:1rem;gap:1rem}.form-group{gap:.5rem}.form-group label,.form-input,.form-select,.form-textarea{color:var(--text-primary);font-size:.875rem}.form-input,.form-select,.form-textarea{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 2px #0000000d;font-weight:400;padding:.75rem 1rem;transition:var(--transition-base);width:100%}.form-input:focus,.form-textarea:focus{box-shadow:0 0 0 3px #6366f11a,0 1px 2px #0000000d}.form-color{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;height:40px;padding:0;width:60px}.checkbox-label{font-size:.875rem;gap:.5rem;margin-top:1.5rem}.checkbox-label input[type=checkbox]{height:16px;width:16px}.form-actions{border-top:1px solid #e5e7eb;gap:1rem;margin-top:2rem;padding-top:1.5rem}.modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{animation:modalSlideIn .3s ease-out;box-shadow:0 25px 50px -12px #00000040;margin:1rem}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:1.5rem}.modal-header h2{color:#111827;font-size:1.25rem}.btn-close{border-radius:4px;color:#6b7280;font-size:1.5rem;line-height:1;padding:.25rem;transition:all .2s ease}.btn-close:hover{background:#f3f4f6;color:#374151}.btn-primary{background:#6366f1;border-radius:8px;box-shadow:0 1px 2px #0000000d;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.btn-primary:hover{background:#4f46e5;box-shadow:0 4px 12px #6366f166}.btn-primary:disabled{background:#d1d5db;box-shadow:0 1px 2px #0000000d;color:#6b7280;transform:none}.btn-secondary{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:#374151;font-size:.875rem;padding:.75rem 1.5rem;transition:all .2s ease}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.select-professional{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 1px 2px #0000000d;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:400;min-width:200px;padding:.75rem 2.5rem .75rem 1rem;transition:var(--transition-base)}.select-professional:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f11a,0 1px 2px #0000000d;outline:none}.readonly-input{background:#f9fafb!important;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:not-allowed;font-size:.875rem;min-width:200px;opacity:.7;padding:.75rem 1rem}.empty-state,.loading-state{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 2px #0000000d;padding:3rem 2rem;text-align:center}.loading-skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,var(--surface-secondary) 25%,var(--surface-tertiary) 50%,var(--surface-secondary) 75%);background-size:200% 100%;border-radius:8px;height:200px;margin-bottom:1rem}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state h3{color:var(--text-secondary);font-size:1.125rem;font-weight:500;margin-bottom:1rem}@media (max-width:768px){.category-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1.5rem}.category-toolbar{align-items:stretch;flex-direction:column;padding:1rem 1.5rem}.category-toolbar .filter-group{min-width:auto}.category-content{padding:1.5rem}.categories-grid,.form-row{grid-template-columns:1fr}.modal-content{margin:.5rem;max-width:none}}.hierarchical-pricing-management{padding:2rem}.pricing-controls{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.form-actions{align-items:end}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.pricing-preview{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.pricing-hierarchy{margin-top:1rem}.pricing-level{font-size:1.1rem;padding:.5rem 0}.store-pricing-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1rem}.store-price-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.store-name{font-weight:600;margin-bottom:.5rem}.store-price{color:#10b981;font-size:1.25rem;margin-bottom:.5rem}.btn-sm{font-size:.875rem;padding:.25rem .75rem}.location-options{margin:0 auto;max-width:1200px;padding:20px}.location-options-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.location-options-header h1{color:#333;margin:0}.store-selector{gap:10px}.store-selector label{color:#555}.store-selector select{border-radius:4px}.config-tabs{border-bottom:1px solid #ddd;display:flex;gap:0;margin-bottom:20px}.config-tabs button{background:#f5f5f5;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-weight:500;padding:12px 20px;transition:all .3s ease}.config-tabs button:hover{background:#e9e9e9;color:#333}.config-tabs button.active{background:#fff;border-bottom-color:#007bff;color:#007bff}.config-content{background:#fff;border:1px solid #ddd;border-radius:8px;min-height:500px;padding:30px}.config-section h3{border-bottom:1px solid #eee;color:#333;font-size:18px;margin:0 0 20px;padding-bottom:10px}.form-group label{color:#555}.form-group input,.form-group select{transition:border-color .3s ease}.form-group input:disabled,.form-group select:disabled{background-color:#f8f9fa;color:#6c757d;cursor:not-allowed}.form-group small{color:#666;font-style:italic}.checkbox-group{flex-direction:row!important}.checkbox-group label{font-weight:400}.hours-row{border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:15px 0}.hours-row:last-child{border-bottom:none}.day-name{min-width:100px;text-transform:capitalize}.hours-controls{align-items:center;display:flex;gap:15px}.hours-controls input[type=time]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:6px 8px}.hours-controls span{color:#666;font-weight:500}.logo-preview{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin-top:15px;padding:15px;text-align:center}.logo-preview img{border-radius:4px;box-shadow:0 2px 4px #0000001a}.config-actions{border-top:1px solid #ddd;margin-top:30px;padding-top:20px;text-align:center}.save-button{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:150px;padding:12px 30px;transition:background-color .3s ease}.save-button:hover:not(:disabled){background:#218838}.save-button:disabled{background:#6c757d;cursor:not-allowed}.access-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404;margin-top:20px;padding:15px}.access-notice p{font-size:14px;margin:0}.loading{padding:50px}@media (max-width:768px){.location-options-header{align-items:flex-start;flex-direction:column;gap:15px}.config-tabs{flex-wrap:wrap}.config-tabs button{flex:1 1;min-width:120px}.hours-row{align-items:flex-start;flex-direction:column;gap:10px}.hours-controls{justify-content:space-between;width:100%}}.support-chat{margin:0 auto;max-width:1400px;padding:1.5rem}.chat-container{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px 0 #0000001a}.chat-messages{background:#f9fafb;border-radius:.5rem;display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem;padding:1rem}.message{display:flex;width:100%}.user-message{justify-content:flex-end}.assistant-message{justify-content:flex-start}.message-content{border-radius:1rem;max-width:80%;padding:.75rem 1rem;position:relative}.user-message .message-content{background:#3b82f6;border-bottom-right-radius:.25rem;color:#fff}.assistant-message .message-content{background:#fff;border:1px solid #e5e7eb;border-bottom-left-radius:.25rem;color:#374151}.message-text{word-wrap:break-word;line-height:1.5;white-space:pre-wrap}.message-time{font-size:.75rem;margin-top:.5rem;opacity:.7;text-align:right}.user-message .message-time{color:#fffc}.assistant-message .message-time{color:#6b7280}.typing-indicator{align-items:center;display:flex;gap:.25rem;padding:.5rem 0}.typing-dot{animation:typing 1.4s ease-in-out infinite;background:#6b7280;border-radius:50%;height:.5rem;width:.5rem}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.chat-input-container{background:#fff;border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem;border-top:1px solid #e5e7eb;padding:1rem}.error-message{background:#fef2f2;border-radius:.5rem;font-size:.875rem;padding:.75rem 1rem}.doc-card{cursor:pointer;transition:all .2s ease-in-out}.doc-card:hover{box-shadow:0 4px 12px 0 #00000026;transform:translateY(-2px)}.doc-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;color:#6b7280;font-size:.875rem;line-height:1.5;max-height:120px;overflow:hidden;padding:.75rem;position:relative}.doc-preview:after{background:linear-gradient(#0000,#f9fafb);bottom:0;content:"";height:2rem;left:0;position:absolute;right:0}.status-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px 0 #0000001a;padding:1.5rem}.badge-success{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.badge-danger{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.badge-secondary{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.tabs-list{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;gap:.25rem;padding:.25rem}.tabs-trigger{background:#0000;border:none;border-radius:.375rem;color:#6b7280;font-weight:500;padding:.5rem 1rem;transition:all .2s ease-in-out}.tabs-trigger[data-state=active]{background:#fff;box-shadow:0 1px 3px 0 #0000001a;color:#374151}.tabs-trigger:hover:not([data-state=active]){background:#ffffff80;color:#374151}@media (max-width:768px){.support-chat{padding:1rem}.message-content{max-width:90%}.tabs-list{flex-direction:column}.chat-messages{height:300px!important}}.support-chat *{transition:all .2s ease-in-out}.chat-input-container button:focus,.chat-input-container input:focus{outline:2px solid #3b82f6;outline-offset:2px}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.health-dashboard{background-color:#f5f5f5;border-radius:8px;margin:20px 0;padding:20px}.health-dashboard.error,.health-dashboard.loading{padding:40px;text-align:center}.health-dashboard h3{color:#333;font-size:1.5rem;margin:0 0 20px}.health-summary{background:#fff;border-radius:6px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;margin-bottom:20px;padding:15px}.summary-item{align-items:center;gap:8px}.summary-label{color:#666;font-weight:500}.summary-value{font-size:1.2rem;font-weight:700}.summary-value.healthy{color:#4caf50}.summary-value.unhealthy{color:#f44336}.summary-value.cors-error,.summary-value.unknown{color:#ff9800}.health-card.unknown{background-color:#fff8e1;border-color:#ff9800}.health-table{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;overflow:hidden}.health-table table{border-collapse:collapse;width:100%}.health-table th{background-color:#f5f5f5;border-bottom:2px solid #e0e0e0;color:#333;font-size:.9rem;font-weight:600;padding:12px 8px;text-align:left}.health-table td{border-bottom:1px solid #e0e0e0;font-size:.85rem;padding:12px 8px;vertical-align:middle}.health-table tr:hover{background-color:#f9f9f9}.health-table tr:last-child td{border-bottom:none}.status-badge{border-radius:4px;font-size:.8rem}.status-badge.healthy{background-color:#e8f5e8;color:#4caf50}.status-badge.unhealthy{background-color:#ffebee;color:#f44336}.status-badge.cors-error,.status-badge.unknown{background-color:#fff8e1;color:#ff9800}.endpoint-cell{color:#666;font-family:monospace;max-width:150px}.endpoint-cell,.error-cell{font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.error-cell{color:#f44336;max-width:200px}.health-card{background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:16px;transition:all .3s ease}.health-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.health-card.healthy{border-color:#4caf50}.health-card.unhealthy{background-color:#ffebee;border-color:#f44336}.health-card.checking{background-color:#fff3e0;border-color:#ff9800}.service-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.service-name{font-size:1.1rem;text-transform:capitalize}.service-status{font-size:1.5rem}.service-metric{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;margin:8px 0}.metric-label{color:#666}.metric-value{color:#333;font-weight:500}.service-error{background-color:#ffebee;border-radius:4px;font-size:.85rem;margin:8px 0;padding:8px}.error-label{color:#c62828;font-weight:500}.error-message{color:#d32f2f;display:block;margin-top:4px}.service-updated{color:#999;font-size:.8rem;margin-top:12px;text-align:right}.health-footer{align-items:center;display:flex;justify-content:space-between;margin-top:20px}.refresh-button{background-color:#2196f3;border-radius:4px;font-size:.9rem;transition:background-color .3s ease}.refresh-button:hover{background-color:#1976d2}.last-updated{font-size:.85rem}.health-dashboard.compact{margin:10px 0;padding:10px 15px}.health-dashboard.compact .health-summary{background:#0000;box-shadow:none;gap:10px;margin:0;padding:0}.health-dashboard.compact .health-label{color:#666;font-size:.9rem}.health-dashboard.compact .health-stats{color:#333;font-weight:600}.health-dashboard.compact .health-warning{color:#f44336;font-weight:600}.health-dashboard.compact .health-cors-warning{color:#ff9800;font-weight:600}.health-grid-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;overflow:hidden}.health-grid{display:flex;flex-direction:column}.grid-header{grid-gap:0;background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#374151;display:grid;font-size:.875rem;font-weight:600;gap:0;grid-template-columns:2fr 1fr 1fr 2fr 2fr}.header-cell{border-right:1px solid #e5e7eb;letter-spacing:.05em;padding:1rem .75rem;text-transform:uppercase}.service-grid-row{grid-gap:0;border-bottom:1px solid #e5e7eb;display:grid;gap:0;grid-template-columns:2fr 1fr 1fr 2fr 2fr;transition:background-color .2s}.service-grid-row:hover{background:#f8fafc}.service-grid-row.healthy{border-left:4px solid #4caf50}.service-grid-row.unhealthy{border-left:4px solid #f44336}.service-grid-row.cors-error{background:#fefbf3;border-left:4px solid #ff9800}.service-grid-row.unknown{border-left:4px solid #9e9e9e}.grid-cell{border-right:1px solid #e5e7eb;color:#6b7280;font-size:.875rem;padding:.75rem}.grid-cell:last-child{border-right:none}.service-name{color:#1f2937;font-weight:600}.response-time,.status-cell{justify-content:center}.response-time{color:#4b5563;font-weight:500}.endpoint{color:#6b7280;font-family:monospace}.endpoint,.issues{font-size:.8rem}.status-indicator{border-radius:.25rem;font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.status-indicator.healthy{background-color:#dcfce7;border:1px solid #22c55e;color:#166534}.status-indicator.unhealthy{background-color:#fee2e2;border:1px solid #ef4444;color:#991b1b}.status-indicator.cors-error{background-color:#fef3c7;border:1px solid #f59e0b;color:#92400e}.status-indicator.unknown{background-color:#f3f4f6;border:1px solid #9ca3af;color:#6b7280}.cors-warning{color:#ff9800;font-weight:500}.error-text{color:#f44336;font-weight:500}.success-text{color:#4caf50;font-weight:500}.unknown-text{color:#ff9800;font-weight:500}@media (max-width:1024px){.grid-header,.service-grid-row{grid-template-columns:1fr .8fr .8fr 1.5fr 1.5fr}.grid-cell{font-size:.8rem;padding:.5rem}.endpoint,.issues{font-size:.75rem}}@media (max-width:768px){.health-footer,.health-summary{flex-direction:column;gap:10px}.health-footer{align-items:flex-start}.health-grid-container{overflow-x:auto}.grid-header,.service-grid-row{grid-template-columns:2fr 1fr .8fr 1.2fr 1.5fr;min-width:600px}.grid-cell{font-size:.75rem;padding:.5rem .25rem}.service-name{font-size:.8rem}.endpoint,.issues{font-size:.7rem}.status-indicator{font-size:.65rem;padding:.2rem .4rem}}.support-dashboard{margin:0 auto;max-width:1400px;padding:24px}.dashboard-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.dashboard-card .card-header{border-bottom:1px solid #e5e7eb;margin-bottom:24px;padding-bottom:16px}.dashboard-card .card-title{color:#1a1a1a;font-size:24px;font-weight:600}.dashboard-card .tabs-list{margin-bottom:24px}.dashboard-card .tabs-trigger{font-weight:500;transition:all .2s ease}.dashboard-card .tabs-trigger[data-state=active]{background:#3b82f6;color:#fff}.dashboard-card .tabs-content{padding-top:24px}@media (max-width:768px){.support-dashboard{padding:16px}.dashboard-card .card-title{font-size:20px}}.ai-chat-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.ai-chat-container{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;display:flex;flex-direction:column;height:80vh;max-height:700px;max-width:500px;overflow:hidden;width:90vw}.ai-chat-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px 12px 0 0;color:#fff;justify-content:space-between;padding:1rem}.ai-chat-header,.ai-chat-title{align-items:center;display:flex}.ai-chat-title{gap:.5rem}.ai-chat-title h3{font-size:1.2rem;font-weight:600;margin:0}.ai-chat-icon{font-size:1.5rem}.ai-chat-controls{display:flex;gap:.5rem}.ai-chat-clear-btn,.ai-chat-close-btn{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:.5rem;transition:background-color .2s}.ai-chat-clear-btn:hover,.ai-chat-close-btn:hover{background:#fff3}.ai-chat-messages{background:#fafafa;flex:1 1;overflow-y:auto;padding:1rem;scroll-behavior:smooth}.ai-chat-message{display:flex;flex-direction:column;margin-bottom:1rem}.ai-chat-message.user{align-items:flex-end}.ai-chat-message.assistant{align-items:flex-start}.ai-chat-message-content{max-width:80%;position:relative}.ai-chat-message-text{word-wrap:break-word;border-radius:18px;line-height:1.4;padding:.75rem 1rem;white-space:pre-wrap}.ai-chat-message.user .ai-chat-message-text{background:linear-gradient(135deg,#667eea,#764ba2);border-bottom-right-radius:4px;color:#fff}.ai-chat-message.assistant .ai-chat-message-text{background:#fff;border:1px solid #e1e1e1;border-bottom-left-radius:4px;box-shadow:0 2px 4px #0000001a;color:#333}.ai-chat-message-time{color:#888;font-size:.75rem;margin-top:.25rem;padding:0 .5rem}.ai-chat-function-indicator{background:#e8f5e8;border:1px solid #4caf50;border-radius:12px;color:#2e7d32;font-size:.75rem;margin-top:.5rem;padding:.25rem .5rem}.ai-chat-typing{display:flex;gap:.25rem;padding:.75rem 1rem}.ai-chat-typing span{animation:typing 1.4s ease-in-out infinite;background:#ccc;border-radius:50%;height:8px;width:8px}.ai-chat-typing span:first-child{animation-delay:-.32s}.ai-chat-typing span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.ai-chat-error{background:#ffebee;border:1px solid #f44336;border-radius:8px;color:#c62828;font-size:.9rem;margin-bottom:1rem;padding:.75rem}.ai-chat-input-container{background:#fff;border-top:1px solid #e1e1e1;padding:1rem}.ai-chat-input-wrapper{align-items:flex-end;display:flex;gap:.5rem;margin-bottom:.75rem}.ai-chat-input{border:1px solid #ddd;border-radius:20px;flex:1 1;font-family:inherit;font-size:.9rem;max-height:100px;min-height:40px;outline:none;padding:.75rem 1rem;resize:none;transition:border-color .2s}.ai-chat-input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.ai-chat-send-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:40px;justify-content:center;transition:transform .2s,box-shadow .2s;width:40px}.ai-chat-send-btn:hover:not(:disabled){box-shadow:0 4px 12px #667eea4d;transform:scale(1.05)}.ai-chat-send-btn:disabled{cursor:not-allowed;opacity:.5}.ai-chat-suggestions{display:flex;flex-wrap:wrap;gap:.5rem}.ai-chat-suggestion{background:#f5f5f5;border:1px solid #ddd;border-radius:16px;color:#666;cursor:pointer;font-size:.8rem;padding:.375rem .75rem;transition:all .2s}.ai-chat-suggestion:hover{background:#667eea;border-color:#667eea;color:#fff;transform:translateY(-1px)}@media (max-width:768px){.ai-chat-container{height:90vh;width:95vw}.ai-chat-message-content{max-width:90%}.ai-chat-suggestions{justify-content:center}}.ai-chat-messages::-webkit-scrollbar{width:6px}.ai-chat-messages::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.ai-chat-messages::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.ai-chat-messages::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.qr-menu{background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-family:-apple-system,BlinkMacSystemFont,Inter,SF Pro Display,sans-serif;min-height:100vh}.qr-menu-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.loading-spinner{border:4px solid #e2e8f0;border-top-color:#6366f1;height:48px;margin-bottom:1rem;width:48px}.qr-menu-error{align-items:center;color:#ef4444;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.qr-menu-error h2{color:#dc2626;margin-bottom:1rem}.qr-menu-header{background:linear-gradient(135deg,#1e293b,#334155);box-shadow:0 4px 12px #00000026;color:#fff;padding:2rem 1rem;text-align:center}.store-info h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px #0000004d}.store-address,.store-hours,.store-phone{font-size:.9rem;margin:.25rem 0;opacity:.9}.menu-url{border-top:1px solid #ffffff1a;margin-top:1rem;padding-top:1rem}.url-label{font-size:.8rem;margin-bottom:.5rem;opacity:.8}.url-container{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:8px;display:flex;gap:.5rem;padding:.5rem}.menu-url-display{background:#0000;border:none;color:#fff;flex:1 1;font-size:.75rem;opacity:.9;word-break:break-all}.copy-url-btn{background:#fff3;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.9rem;padding:.5rem;transition:background .2s ease}.copy-url-btn:hover{background:#ffffff4d}.menu-title{border-top:1px solid #fff3;margin-top:1.5rem;padding-top:1.5rem}.menu-title h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.menu-title p{font-size:.9rem;opacity:.8}.category-nav{background:#fff;box-shadow:0 2px 8px #0000001a;padding:1rem 0 0;position:-webkit-sticky;position:sticky;top:0;z-index:10}.category-tabs{-ms-overflow-style:none;display:flex;gap:.5rem;overflow-x:auto;padding:0 1rem 1rem;scrollbar-width:none}.category-tabs::-webkit-scrollbar{display:none}.category-tab{background:#fff;border:2px solid #e2e8f0;border-radius:25px;color:#64748b;cursor:pointer;flex-shrink:0;font-size:.9rem;font-weight:500;padding:.75rem 1.25rem;transition:all .2s ease;white-space:nowrap}.category-tab:hover{background:#f8fafc;border-color:#cbd5e1}.category-tab.active{background:#6366f1;border-color:#6366f1;box-shadow:0 4px 12px #6366f14d;color:#fff}.menu-content{padding:1.5rem 1rem}.menu-items{grid-gap:1rem;display:grid;gap:1rem;margin:0 auto;max-width:800px}.menu-item-card{background:#fff;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 2px 12px #00000014;cursor:pointer;overflow:hidden;transition:all .3s ease}.menu-item-card:hover{border-color:#e2e8f0;box-shadow:0 8px 25px #0000001f;transform:translateY(-2px)}.menu-item-card:active{transform:translateY(0)}.item-image{background:#f8fafc;height:200px;overflow:hidden;width:100%}.item-image img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.menu-item-card:hover .item-image img{transform:scale(1.05)}.item-info{padding:1.25rem}.item-name{color:#1e293b;font-size:1.25rem;font-weight:600;line-height:1.3;margin-bottom:.5rem}.item-description{color:#64748b;font-size:.9rem;line-height:1.5;margin-bottom:1rem}.item-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.item-price{color:#059669;font-size:1.25rem;font-weight:700}.prep-time{background:#f1f5f9;border-radius:12px;color:#64748b;font-size:.8rem;padding:.25rem .5rem}.dietary-tags{display:flex;flex-wrap:wrap;gap:.5rem}.dietary-tag{background:#ecfdf5;border-radius:12px;color:#059669;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.item-action{padding:0 1.25rem 1.25rem}.tap-details{color:#6366f1;font-size:.8rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase}.item-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.item-modal{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}.modal-close{background:#0000001a;border-radius:50%;color:#fff;font-size:1.5rem;height:40px;right:1rem;top:1rem;transition:background .2s ease;width:40px;z-index:10}.modal-close:hover{background:#0000004d}.modal-image{border-radius:20px 20px 0 0;height:250px;overflow:hidden;width:100%}.modal-image img{height:100%;object-fit:cover;width:100%}.modal-content{padding:1.5rem}.modal-content h2{color:#1e293b;font-size:1.5rem;font-weight:700;margin-bottom:.75rem}.modal-description{color:#64748b;line-height:1.6;margin-bottom:1.5rem}.price-section{align-items:center;background:#f8fafc;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1rem}.modal-price{color:#059669;font-size:1.5rem;font-weight:700}.modal-prep-time{color:#64748b;font-size:.9rem}.allergen-section,.dietary-section,.nutrition-section{margin-bottom:2rem}.allergen-section h3,.dietary-section h3,.nutrition-section h3{align-items:center;color:#374151;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.nutrition-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.nutrition-item{background:#f8fafc;border-radius:8px;padding:.75rem;text-align:center}.nutrition-label{color:#64748b;display:block;font-size:.8rem;margin-bottom:.25rem}.nutrition-value{color:#1e293b;font-size:1.1rem;font-weight:600}.allergen-list,.dietary-list{display:flex;flex-wrap:wrap;gap:.5rem}.allergen-tag{background:#fef2f2;border:1px solid #fecaca;border-radius:16px;color:#dc2626}.allergen-tag,.dietary-tag-modal{font-size:.8rem;font-weight:500;padding:.5rem .75rem}.dietary-tag-modal{background:#ecfdf5;border:1px solid #a7f3d0;border-radius:16px;color:#059669}.qr-menu-footer{background:#f8fafc;border-top:1px solid #e2e8f0;color:#64748b;font-size:.8rem;padding:2rem 1rem;text-align:center}.qr-menu-footer p{margin:.25rem 0}@media (min-width:640px){.qr-menu-header{padding:3rem 2rem}.menu-content{padding:2rem}.menu-items{gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.category-tabs{justify-content:center;padding:0 2rem 1rem}}@media (min-width:768px){.store-info h1{font-size:2.5rem}.menu-title h2{font-size:1.75rem}.item-modal{max-width:600px}.modal-content{padding:2rem}.nutrition-grid{grid-template-columns:repeat(3,1fr)}}@media (prefers-color-scheme:dark){.qr-menu{background:linear-gradient(135deg,#0f172a,#1e293b)}.menu-item-card{background:#1e293b;border-color:#334155}.item-name{color:#f1f5f9}.item-description{color:#94a3b8}.category-nav{background:#1e293b}.category-tab{background:#334155;border-color:#475569;color:#94a3b8}.category-tab:hover{background:#475569;border-color:#64748b}.item-modal{background:#1e293b}.modal-content h2{color:#f1f5f9}.modal-description{color:#94a3b8}.nutrition-item,.price-section{background:#334155}.nutrition-value{color:#f1f5f9}}.qr-code-generator{padding:2rem}.generator-controls{margin-bottom:2rem;text-align:center}.stores-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-top:2rem}.store-qr-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.store-info h3{color:#1f2937;font-size:1.25rem;margin:0 0 .5rem}.store-info p{color:#6b7280;font-size:.9rem;margin:.25rem 0}.store-address{font-style:italic}.qr-actions{margin-top:1.5rem}.qr-display{text-align:center}.qr-image{margin-bottom:1rem}.qr-code-img{border:1px solid #e5e7eb;border-radius:8px;height:200px;width:200px}.menu-url{background:#f9fafb;border-radius:8px;margin-bottom:1rem;padding:1rem;text-align:left}.menu-url small{color:#6b7280;display:block;font-weight:600;margin-bottom:.5rem}.menu-url code{background:#fff;border:1px solid #e5e7eb;border-radius:4px;display:block;font-size:.8rem;padding:.5rem;word-break:break-all}.qr-buttons{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.qr-buttons .btn{align-items:center;display:inline-flex;font-size:.8rem;justify-content:center;padding:.5rem .75rem;text-decoration:none}.empty-state{color:#6b7280;padding:3rem}.alert{margin-bottom:1rem;padding:1rem}.alert-success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.alert-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}@media (max-width:640px){.stores-grid{grid-template-columns:1fr}.qr-buttons{grid-template-columns:repeat(2,1fr)}}.employee-management{margin:0 auto;max-width:1400px;padding:20px}.header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.header h2{color:#333;margin:0}.filters{align-items:center;background:#f8f9fa}.field-help-text{color:#666;font-size:12px;font-style:italic;margin-top:4px}.multi-select-container{background:#fff;border:1px solid #ddd;border-radius:4px;display:flex;flex-direction:column;gap:8px;max-height:150px;overflow-y:auto;padding:8px}.checkbox-label{font-size:14px;padding:4px 0}.checkbox-label:hover{background-color:#f8f9fa;border-radius:3px;margin:0 -8px;padding:4px 8px}.checkbox-text{color:#333;-webkit-user-select:none;user-select:none}.search-box{flex:1 1}.search-input{border-radius:4px;padding:8px 12px}.employee-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 400px}.employee-list{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.employee-table{width:100%}.table-header{grid-template-columns:2fr 1.5fr 1fr 1fr 1fr 1.5fr}.header-cell{position:relative}.header-cell.sortable{cursor:pointer;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.header-cell.sortable:hover{background-color:#e9ecef}.header-cell.sorted{background-color:#dee2e6;color:#007bff}.sort-indicator{color:#007bff;font-size:12px;margin-left:5px}.table-row{grid-template-columns:2fr 1.5fr 1fr 1fr 1fr 1.5fr}.sortable-grid .table-row:hover{background-color:#f8f9fa;box-shadow:0 2px 4px #0000001a}.employee-avatar{flex-shrink:0}.avatar-image{background-color:#f8f9fa;border:2px solid #e9ecef;border-radius:50%;height:40px;object-fit:cover;transition:border-color .2s ease;width:40px}.table-row:hover .avatar-image{border-color:#007bff}.employee-info .employee-details,.employee-info .employee-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.position-title{font-weight:500}.department{color:#666;font-size:12px}.status-active{background:#d4edda;color:#155724}.status-inactive{background:#f8d7da;color:#721c24}.status-terminated{background:#f5c6cb;color:#721c24}.status-on-leave{background:#fff3cd;color:#856404}.actions{flex-wrap:wrap;gap:6px}.status-select{border:1px solid #ddd;font-size:12px;padding:4px 6px}.pagination{align-items:center;background:#f8f9fa;border-top:1px solid #eee;display:flex;gap:15px;justify-content:center;padding:20px}.page-info{color:#555;font-weight:500}.employee-details-panel{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;height:-webkit-fit-content;height:fit-content;position:-webkit-sticky;position:sticky;top:20px}.panel-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.panel-header h3{color:#333;margin:0}.panel-content{padding:20px}.detail-section{margin-bottom:25px}.detail-section h4{border-bottom:1px solid #eee;color:#333;font-size:16px;margin:0 0 15px;padding-bottom:5px}.detail-item{gap:4px}.detail-item label{font-size:12px;text-transform:uppercase}.position-card{background:#f8f9fa;border-radius:6px;margin-bottom:10px;padding:15px}.position-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.position-title{color:#333;font-weight:600}.primary-badge{background:#007bff;border-radius:10px;color:#fff;font-size:10px;font-weight:500;padding:2px 6px;text-transform:uppercase}.position-details{color:#666;display:flex;flex-direction:column;font-size:14px;gap:4px}@media (max-width:1200px){.employee-grid{grid-template-columns:1fr}.employee-details-panel{position:static}}.employee-form{display:flex;flex-direction:column;gap:30px}.form-section{background-color:#fff}.form-section h4{border-bottom:2px solid #007bff;font-size:18px;padding-bottom:8px}.tabs{border-bottom:2px solid #e9ecef;margin-bottom:20px}.tab{transition:all .2s ease}.tab:hover{background-color:#f8f9fa;color:#007bff}.tab.active{background-color:#fff}.form-group input,.form-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px 12px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.form-group input.error,.form-group select.error{border-color:#dc3545;box-shadow:0 0 0 2px #dc354540}.error-text{color:#dc3545;display:block;font-size:12px;margin-top:2px}.form-group input[type=text]#pin{font-family:Courier New,monospace;font-size:16px;font-weight:700;letter-spacing:2px;text-align:center}.form-group input[type=text]#pin:focus{border-color:#28a745;box-shadow:0 0 0 2px #28a74540}.compliance-section{padding:20px}.compliance-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.compliance-card{background-color:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.employee-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.employee-header h4{color:#333;margin:0}.compliance-details{display:flex;flex-direction:column;gap:10px}.compliance-item{align-items:center;border-bottom:1px solid #f8f9fa;display:flex;justify-content:space-between;padding:8px 0}.compliance-item:last-child{border-bottom:none}.compliance-item label{color:#555;font-weight:500}.compliance-item .status{border-radius:12px;font-size:11px;font-weight:500;padding:4px 8px;text-transform:capitalize}.compliance-item .status.pending{background:#fff3cd;color:#856404}.compliance-item .status.cleared,.compliance-item .status.passed,.compliance-item .status.verified{background:#d4edda;color:#155724}.compliance-item .status.expired,.compliance-item .status.failed{background:#f8d7da;color:#721c24}.btn:disabled:hover{background:#0000 none repeat 0 0/auto auto padding-box border-box scroll;background:initial}@media (max-width:768px){.table-header,.table-row{gap:10px;grid-template-columns:1fr}.header-cell.sortable{cursor:default}.sort-indicator{display:none}.cell{border-bottom:1px solid #eee;border-right:none;padding:10px 12px}.cell:last-child{border-bottom:none}.header-cell{display:none}.detail-grid,.form-row{grid-template-columns:1fr}.modal{margin:10px;width:95%}}.selection-filters{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:20px;padding:15px}.selection-filters .filter-group{display:flex;flex-direction:column;gap:5px}.selection-filters .filter-group label{color:#333;font-size:14px;font-weight:500}.selection-filters .filter-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:200px;padding:8px 12px}.selection-filters .filter-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}@media (max-width:768px){.selection-filters{flex-direction:column;gap:15px}.selection-filters .filter-select{min-width:auto;width:100%}.compliance-grid{grid-template-columns:1fr}.tabs{flex-wrap:wrap}.tab{flex:1 1;min-width:120px}}.employee-info-content{align-items:center;display:flex;gap:12px}.employee-photo{flex-shrink:0}.employee-profile-photo{object-fit:cover}.employee-photo-placeholder,.employee-profile-photo{border:2px solid #e9ecef;border-radius:50%;height:40px;width:40px}.employee-photo-placeholder{align-items:center;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;display:flex;font-size:14px;font-weight:700;justify-content:center}.employee-text{flex:1 1;min-width:0}.employee-name{color:#333;font-weight:600}.employee-details,.employee-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.employee-details{color:#6c757d;font-size:12px}.schedule-calendar{margin:0 auto;max-width:1400px;padding:20px}.calendar-header{align-items:center;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.week-navigation{align-items:center;display:flex;gap:20px}.week-navigation h3{color:#333;font-size:18px;margin:0}.calendar-grid{box-shadow:0 2px 4px #0000001a}.calendar-header-row{background:#f8f9fa;border-bottom:2px solid #dee2e6;display:grid;grid-template-columns:repeat(7,1fr)}.day-header{flex-direction:column;gap:8px}.day-name{color:#495057;margin-bottom:5px}.day-date{color:#333;font-size:18px;font-weight:500}.day-weather{background:#ffffffe6;border:1px solid #e9ecef;gap:4px;padding:4px 6px}.weather-icon-small{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));font-size:16px}.temp-range-small{color:#333;font-size:11px;font-weight:600;white-space:nowrap}.precip-small{border-radius:3px;font-size:9px;padding:1px 4px}.calendar-body,.day-column{min-height:500px}.day-column{border-right:1px solid #dee2e6;gap:5px;padding:10px 5px}.day-column:last-child{border-right:none}.schedule-item{background:#e3f2fd;border:1px solid #bbdefb;border-radius:4px;cursor:pointer;font-size:12px;padding:8px;position:relative;transition:all .2s ease}.schedule-item:hover{box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.schedule-item.has-conflict{background:#fff3e0;border-color:#f57c00}.schedule-time{color:#1565c0;font-weight:600;margin-bottom:3px}.schedule-employee{color:#333;font-weight:500;margin-bottom:2px}.schedule-position{color:#666;font-size:11px}.conflict-indicator{font-size:10px;position:absolute;right:2px;top:2px}.status-scheduled{background:#e3f2fd;border-color:#bbdefb}.status-confirmed{background:#e8f5e8;border-color:#c8e6c9}.status-cancelled{background:#ffebee;border-color:#ffcdd2;opacity:.7}.status-completed{background:#f3e5f5;border-color:#e1bee7}.template-modal-overlay-unique{align-items:center!important;background-color:#000c!important;bottom:0!important;display:flex!important;justify-content:center!important;left:0!important;pointer-events:auto!important;position:fixed!important;right:0!important;top:0!important;z-index:99999999!important}.template-modal-unique{background-color:#fff!important;border-radius:12px!important;box-shadow:0 10px 50px #00000080!important;display:flex!important;flex-direction:column!important;position:relative!important;z-index:999999999!important}.modal-header{border-bottom:1px solid #dee2e6}.bulk-modal{max-height:90vh;max-width:800px;overflow-y:auto}.employee-selection{grid-gap:10px;display:grid;grid-template-columns:1fr 1fr;max-height:200px;overflow-y:auto}.days-selection,.employee-selection{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;gap:10px;padding:10px}.days-selection{display:flex;flex-wrap:wrap}.checkbox-label{padding:5px;transition:background-color .2s}.checkbox-label:hover{background-color:#e9ecef}.checkbox-label input[type=checkbox]{cursor:pointer}.schedule-details{display:flex;flex-direction:column;gap:15px}.detail-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:120px 1fr}.detail-row label{color:#495057;font-weight:500}.detail-row span{color:#333}.status-badge{display:inline-block;font-size:11px}.conflict-details{background:#fff3e0;border:1px solid #f57c00;border-radius:4px;margin-top:15px;padding:12px}.conflict-details label{color:#e65100;display:block;font-weight:600;margin-bottom:5px}.conflict-reason{color:#bf360c;font-size:14px}.status-select{background:#fff;border:1px solid #ced4da;border-radius:4px;font-size:14px;padding:8px 12px}@media (max-width:1200px){.calendar-header{align-items:stretch;flex-direction:column;gap:15px}.week-navigation{justify-content:center}}@media (max-width:768px){.schedule-calendar{padding:10px}.calendar-body,.calendar-header-row{display:block}.day-header{align-items:center;display:flex;justify-content:space-between}.day-column,.day-header{border-bottom:1px solid #dee2e6;border-right:none}.day-column{min-height:auto;padding:15px 10px}.form-grid{grid-template-columns:1fr}.week-navigation{flex-direction:column;gap:10px;text-align:center}.week-navigation h3{font-size:16px}}@media (max-width:480px){.schedule-item{font-size:11px;padding:6px}.modal{margin:10px;width:95%}.modal-content,.modal-header{padding:15px}}.schedule-template-manager{background:#f8f9fa;min-height:100vh;padding:20px}.template-header{margin-bottom:30px}.template-header h2{color:#333;font-size:28px;margin:0}.template-content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:300px 1fr;height:calc(100vh - 150px)}.template-sidebar{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-y:auto;padding:20px}.template-sidebar h3{color:#333;font-size:20px;margin:0 0 20px}.template-list{display:flex;flex-direction:column;gap:10px}.template-item{border:2px solid #e0e0e0;border-radius:6px;cursor:pointer;padding:15px;transition:all .2s}.template-item:hover{background:#f0f7ff;border-color:#007bff}.template-item.active{background:#e3f2fd;border-color:#007bff}.template-meta{display:flex;font-size:12px;gap:10px}.ai-badge{background:#4caf50}.active-badge,.ai-badge{border-radius:12px;color:#fff;padding:2px 8px}.active-badge{background:#2196f3}.template-main{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-y:auto;padding:30px}.template-details h3{color:#333;font-size:24px;margin:0 0 10px}.template-details p{color:#666;margin-bottom:20px}.ai-analysis,.template-actions{margin-bottom:30px}.ai-analysis{background:#e3f2fd;border:1px solid #2196f3;border-radius:6px;padding:20px}.ai-analysis h4{color:#1976d2;margin:0 0 15px}.analysis-summary p{color:#333;margin:5px 0}.par-levels-grid{margin-top:30px}.par-levels-header h4{color:#333;font-size:20px;margin:0 0 10px}.par-levels-description{color:#666;font-size:14px;margin:0 0 20px}.par-levels-table{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:20px;min-width:1000px;overflow-x:auto}.table-header{border-bottom:2px solid #007bff;color:#333;font-weight:600;grid-template-columns:220px repeat(7,1fr);min-width:1000px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.day-column,.job-column{border-right:1px solid #e0e0e0;font-size:14px;font-weight:600;padding:15px 12px;text-align:center}.job-column{background:#f0f7ff;border-right:2px solid #007bff;color:#1976d2;text-align:left}.day-column{align-items:center;background:#f8f9fa;display:flex;flex-direction:column;gap:4px}.day-name{font-size:14px}.day-weather{align-items:center;background:#fffc;border:1px solid #dee2e6;border-radius:4px;color:#666;display:flex;flex-direction:column;font-size:10px;gap:2px;padding:3px 6px}.weather-icon-small{font-size:14px;line-height:1}.temp-small{color:#333;font-weight:600;white-space:nowrap}.precip-small{background:#e3f2fd;border-radius:2px;color:#2196f3;font-weight:600;padding:1px 3px}.job-row{border-bottom:1px solid #e0e0e0;display:grid;grid-template-columns:220px repeat(7,1fr);min-width:1000px;transition:background-color .2s}.job-row:hover,.job-row:nth-child(2n){background:#fafafa}.job-info{background:#f0f7ff;border-right:2px solid #007bff;justify-content:center;padding:20px 15px}.day-cell,.job-info{display:flex;flex-direction:column}.day-cell{border-right:1px solid #e0e0e0;gap:8px;min-height:80px;padding:8px 6px}.time-slot-controls{background:#fff;border:1px solid #d0d0d0;border-radius:6px;box-shadow:0 1px 3px #0000001a;padding:8px 6px}.time-label{background:#f0f7ff;border-radius:3px;color:#555;font-size:10px;font-weight:600;margin-bottom:6px;padding:2px 4px;text-align:center}.staff-numbers{display:flex;flex-direction:column;gap:4px}.staff-input-group{align-items:center;display:flex;gap:4px}.staff-input-group label{color:#666;font-size:9px;font-weight:600;min-width:22px}.staff-input{background:#fff;border:1px solid #ccc;border-radius:4px;font-size:11px;font-weight:600;padding:3px 2px;text-align:center;width:32px}.staff-input:focus{border-color:#007bff;outline:none}.ideal-group{position:relative}.ideal-input{border-width:2px}.ai-suggestion-inline{background:#ff9800;border-radius:2px;color:#fff;cursor:help;font-size:8px;padding:1px 3px;position:absolute;right:-5px;top:-8px}.par-levels-actions{display:flex;gap:10px;margin-top:20px}.day-section{background:#fafafa;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:40px;padding:20px}.day-section h5{border-bottom:2px solid #007bff;color:#333;font-size:18px;margin:0 0 20px;padding-bottom:10px}.time-slot-section{margin-bottom:25px}.time-slot-header{color:#555;font-size:16px;font-weight:600;margin-bottom:15px}.positions-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.par-level-item{background:#fff;border:1px solid #ddd;border-radius:6px;padding:15px;position:relative}.position-name{margin-bottom:10px}.job-title{color:#1976d2;font-size:15px;font-weight:600;margin-bottom:4px}.job-department{background:#e3f2fd;border-radius:8px;color:#666;display:inline-block;font-size:11px;font-style:italic;padding:2px 6px}.staff-controls{grid-gap:5px;align-items:center;display:grid;gap:5px;grid-template-columns:40px 1fr}.staff-controls label{color:#666;font-size:12px}.staff-controls input{border:2px solid #ddd;border-radius:4px;font-weight:500;padding:5px;text-align:center;width:50px}.staff-controls input:focus{border-color:#007bff;outline:none}.ai-suggestion{align-items:center;display:flex;gap:5px;position:absolute;right:10px;top:10px}.suggestion-value{border-radius:12px;padding:2px 8px}.suggestion-reason,.suggestion-value{background:#ff9800;color:#fff;font-size:12px;font-weight:600}.suggestion-reason{align-items:center;border-radius:50%;cursor:help;display:flex;height:20px;justify-content:center;width:20px}.no-template-selected{color:#999;height:100%}.no-template-selected,.template-manager-loading{align-items:center;display:flex;font-size:18px;justify-content:center}.template-manager-loading{color:#666;height:100vh}.modal{max-width:1200px;width:95%}.btn-close{background:none;border:none;color:#999;cursor:pointer;font-size:24px;height:30px;padding:0;width:30px}.btn-close:hover{color:#333}.form-control{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.form-control:focus{border-color:#007bff;outline:none}textarea.form-control{resize:vertical}.checkbox-label{gap:10px}.btn{font-weight:600}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-success{background:#28a745;color:#fff}.btn-success:hover:not(:disabled){background:#218838}.weather-forecast-section{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:30px;padding:20px}.weather-forecast-section h4{align-items:center;color:#333;display:flex;font-size:18px;gap:8px;margin:0 0 10px}.weather-forecast-section h4:before{content:"🌤️";font-size:20px}.weather-description{color:#666;font-size:14px;line-height:1.4;margin:0 0 20px}.weather-forecast-strip{grid-gap:12px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;display:grid;gap:12px;grid-template-columns:repeat(10,1fr);overflow-x:auto;padding:10px}.weather-day{align-items:center;background:#fafafa;border:1px solid #e9ecef;border-radius:6px;display:flex;flex-direction:column;min-width:85px;padding:12px 8px;transition:all .2s}.weather-day:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.weather-day.today,.weather-day:hover{background:#e3f2fd;border-color:#2196f3}.weather-day.today{border-width:2px}.weather-date{margin-bottom:8px;text-align:center}.day-name{font-size:12px;font-weight:600;margin-bottom:2px}.date-number{color:#1976d2;font-size:14px;font-weight:700}.weather-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:24px;margin-bottom:8px}.weather-temps{margin-bottom:6px;text-align:center}.high-temp{color:#d32f2f;font-size:14px;font-weight:700;margin-bottom:2px}.low-temp{color:#1976d2;font-size:12px}.weather-condition{color:#666;font-size:10px;line-height:1.2;margin-bottom:4px;max-width:70px;overflow:hidden;text-align:center;text-overflow:ellipsis}.precipitation-chance{background:#2196f3;border-radius:10px;color:#fff;font-size:10px;font-weight:600;padding:2px 6px}@media (max-width:1024px){.weather-forecast-strip{gap:8px;grid-template-columns:repeat(5,1fr)}.weather-day{min-width:70px;padding:8px 4px}.weather-icon{font-size:20px}}@media (max-width:768px){.weather-forecast-strip{gap:6px;grid-template-columns:repeat(3,1fr)}.weather-day{min-width:60px;padding:6px 3px}.weather-icon{font-size:18px}.high-temp{font-size:12px}.low-temp{font-size:10px}.template-content{grid-template-columns:1fr}.template-sidebar{height:auto;max-height:200px}.par-levels-table{overflow-x:auto}.job-row,.table-header{grid-template-columns:180px repeat(7,90px);min-width:810px}.day-column,.job-column{padding:10px 5px}.day-cell{padding:5px 2px}.staff-input{font-size:10px;width:30px}.staff-input-group label{font-size:9px;min-width:20px}}.sales-forecasting-dashboard{margin:0 auto;max-width:1400px;padding:20px}.dashboard-header{border-bottom:2px solid #e1e5e9;padding-bottom:20px}.dashboard-header h2{color:#2c3e50;font-size:28px;font-weight:600}.week-selector{align-items:center;display:flex;gap:10px}.week-selector label{color:#5a6c7d;font-weight:500}.week-selector input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px}.error-message{background-color:#fee2e2;border-left:4px solid #dc2626;color:#dc2626;margin-bottom:20px}.tab-navigation{border-bottom:2px solid #e1e5e9;gap:2px;margin-bottom:30px}.tab{background:#f8fafc;border-radius:8px 8px 0 0;color:#64748b}.tab:hover{background:#e2e8f0;color:#475569}.tab.active{background:#3b82f6;color:#fff}.section-header{margin-bottom:25px}.section-header h3{color:#1e293b;font-size:24px;font-weight:600;margin:0}.section-actions{display:flex;gap:12px}.history-summary{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.summary-card{border-radius:12px;box-shadow:0 2px 8px #0000001a}.summary-card h4{color:#64748b;font-size:14px;font-weight:500;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.summary-card p{color:#1e293b;font-size:28px;font-weight:700;margin:0}.history-chart{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.history-chart h4{color:#1e293b;font-size:18px;font-weight:600;margin-bottom:20px}.chart-container{align-items:end;display:flex;gap:4px;height:200px;padding:20px 0}.hour-bar{flex-direction:column;min-width:50px}.bar-value,.hour-bar{align-items:center;display:flex}.bar-value{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:4px 4px 0 0;color:#fff;font-size:11px;font-weight:500;justify-content:center;min-height:20px;text-orientation:mixed;width:100%;writing-mode:vertical-rl}.bar-label{color:#64748b;font-size:12px;margin-top:8px;text-align:center}.forecasting-switches{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:25px;padding:25px}.forecasting-switches h4{color:#1e293b;font-size:18px;font-weight:600;margin-bottom:20px}.switches-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.switch-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.switch-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.switch-header h5{color:#1e293b;font-size:16px;font-weight:600;margin:0}.switch{display:inline-block;height:24px;position:relative;width:50px}.switch input{height:0;opacity:0;width:0}.slider{background-color:#cbd5e1;border-radius:24px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background-color:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}input:checked+.slider{background-color:#3b82f6}input:checked+.slider:before{transform:translateX(26px)}.switch-description{color:#64748b;font-size:14px;line-height:1.4;margin:0 0 15px}.switch-controls label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.switch-controls input[type=range]{-webkit-appearance:none;background:#d1d5db;border-radius:3px;height:6px;outline:none;width:100%}.switch-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#3b82f6;border-radius:50%;cursor:pointer;height:18px;width:18px}.switch-controls input[type=range]::-moz-range-thumb{background:#3b82f6;border:none;border-radius:50%;cursor:pointer;height:18px;width:18px}.forecast-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.forecast-day{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.day-header{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;justify-content:space-between;padding:15px 20px}.day-header h4{font-size:16px;font-weight:600;margin:0}.day-total{font-size:18px;font-weight:700}.hourly-forecasts{max-height:300px;overflow-y:auto;padding:20px}.forecast-hour{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:15px;padding:8px 0}.forecast-hour:last-child{border-bottom:none}.hour-label{color:#374151;font-weight:500;min-width:50px}.forecast-values{display:flex;flex:1 1;flex-direction:column;gap:4px}.ai-forecast{color:#64748b;font-size:12px}.adjusted-forecast{border:1px solid #d1d5db;border-radius:4px;font-size:14px;font-weight:600;padding:4px 8px;width:100px}.confidence{color:#9ca3af;font-size:11px}.optimization-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.optimization-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.card-header{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:15px 20px}.card-header h4{font-size:16px;font-weight:600}.shift-type{background:#fff3;border-radius:12px;font-size:12px;font-weight:500;padding:4px 8px;text-transform:uppercase}.staffing-recommendation{border-bottom:1px solid #f1f5f9;padding:20px}.staffing-recommendation h5{color:#1e293b;font-size:14px;font-weight:600;margin:0 0 12px}.staff-breakdown{display:flex;flex-direction:column;gap:8px}.staff-item{align-items:center;display:flex;justify-content:space-between;padding:6px 0}.staff-item span{color:#64748b;font-size:14px}.staff-item strong{color:#1e293b;font-size:16px;font-weight:700}.optimization-metrics{border-bottom:1px solid #f1f5f9;padding:20px}.metric{justify-content:space-between;padding:8px 0}.metric label{color:#64748b;font-size:14px;font-weight:500}.metric span{color:#1e293b;font-weight:600}.required-skills{border-bottom:1px solid #f1f5f9;padding:20px}.required-skills h5{color:#1e293b;font-size:14px;font-weight:600;margin:0 0 12px}.skills-tags{display:flex;flex-wrap:wrap;gap:6px}.skill-tag{background:#e0f2fe;border-radius:12px;color:#0891b2;font-size:12px;font-weight:500;padding:4px 8px}.optimization-actions{padding:20px}.btn{text-align:center}.btn-primary{background:#3b82f6}.btn-primary:hover{background:#2563eb}.btn-primary:disabled{background:#9ca3af}.btn-secondary{background:#6b7280}.btn-secondary:hover{background:#4b5563}.loading{color:#64748b}@media (max-width:768px){.sales-forecasting-dashboard{padding:15px}.dashboard-header{align-items:stretch;gap:15px}.dashboard-header,.tab-navigation{flex-direction:column}.forecast-grid,.optimization-grid{grid-template-columns:1fr}.chart-container{padding:10px 0}.switches-grid{grid-template-columns:1fr}}.employee-availability,.job-management,.shift-optimization,.shift-templates,.time-off-requests{background:#f5f7fa;height:100%;padding:20px}.jobs-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-top:20px}.job-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s ease}.job-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.job-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.job-header h3{color:#1f2937;font-size:18px;margin:0}.job-code{background:#f3f4f6;border-radius:4px;color:#6b7280;font-size:12px;font-weight:600;padding:4px 8px}.job-details{margin-bottom:15px}.job-details p{color:#4b5563;font-size:14px;margin:5px 0}.job-details strong{color:#374151}.job-status{display:flex;justify-content:flex-end}.status{border-radius:20px;font-size:12px;font-weight:500;padding:4px 12px}.status.active{background:#d1fae5;color:#065f46}.status.inactive{background:#fee2e2;color:#991b1b}.job-actions{border-top:1px solid #f3f4f6;display:flex;gap:8px;margin-top:15px;padding-top:15px}.job-actions .btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s ease}.btn.btn-sm{font-size:11px;padding:4px 8px}.btn.btn-secondary{background:#f3f4f6}.btn.btn-secondary:hover{background:#e5e7eb}.btn.btn-danger{background:#fee2e2;color:#991b1b}.btn.btn-danger:hover{background:#fecaca}.template-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:10px;margin:20px 0;padding-bottom:0}.template-tabs .tab{background:none;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.template-tabs .tab:hover{color:#374151}.template-tabs .tab.active{border-bottom-color:#2563eb;color:#2563eb}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));margin-top:20px}.template-card{background:#fff;border:1px solid #e5e7eb;padding:20px;transition:all .2s ease}.template-card:hover{box-shadow:0 4px 12px #00000014}.template-header{margin-bottom:15px}.template-header h3{color:#1f2937;font-size:18px}.default-badge{background:#fef3c7;border-radius:20px;color:#92400e;font-size:12px;font-weight:500;padding:4px 12px}.template-info{margin-bottom:15px}.template-info p{color:#6b7280;font-size:14px;margin:5px 0}.template-type{color:#374151;font-weight:500}.shift-count{color:#2563eb}.effective-date{font-size:13px}.template-shifts{background:#f9fafb;border-radius:6px;margin-bottom:15px;padding:15px}.template-shifts h4{color:#374151;font-size:14px;margin:0 0 10px}.shift-preview{align-items:center;display:flex;font-size:13px;gap:10px;padding:5px 0}.shift-day{color:#1f2937;font-weight:500;min-width:60px}.shift-time{color:#4b5563;flex:1 1}.shift-dept{background:#e5e7eb;border-radius:4px;font-size:11px;font-weight:500;padding:2px 8px}.more-shifts{color:#2563eb;font-size:13px;font-style:italic;margin:10px 0 0}.template-actions{display:flex;gap:10px}.template-actions .btn{flex:1 1;font-size:14px;padding:6px 12px}.template-form{display:flex;flex-direction:column;gap:30px}.shifts-section{background:#f9fafb;border-radius:8px;padding:20px}.shifts-section h4{color:#1f2937;margin:0 0 20px}.shift-form{background:#fff;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:20px;padding:15px}.added-shifts{margin-top:20px}.added-shifts h5{color:#374151;font-size:14px;margin:0 0 10px}.shifts-list{display:flex;flex-direction:column;gap:8px}.shift-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;padding:10px 15px}.shift-details,.shift-item{align-items:center;display:flex}.shift-details{flex:1 1;font-size:13px;gap:15px}.shift-name{color:#1f2937;font-weight:500}.shift-staff{color:#2563eb}.remove-shift{background:none;border:none;border-radius:4px;color:#ef4444;cursor:pointer;font-size:13px;padding:4px 8px;transition:all .2s ease}.remove-shift:hover{background:#fee2e2}.availability-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));margin-top:20px}.availability-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s ease}.availability-card:hover{box-shadow:0 4px 12px #00000014}.employee-info{border-bottom:1px solid #f3f4f6;margin-bottom:15px;padding-bottom:15px}.employee-info h3{color:#1f2937;font-size:18px;margin:0 0 5px}.employee-info .position{color:#374151;font-size:14px;font-weight:500;margin:0 0 3px}.employee-info .department{color:#6b7280;font-size:13px;margin:0}.availability-summary{margin-bottom:15px}.summary-item{display:flex;justify-content:space-between;padding:5px 0}.summary-item .label{color:#6b7280}.summary-item .value{color:#1f2937;font-weight:500}.summary-flags{display:flex;gap:8px;margin-top:10px}.flag{border-radius:4px;font-size:12px;font-weight:500;padding:3px 8px}.flag.weekends{background:#dbeafe;color:#1e40af}.flag.holidays{background:#fce7f3;color:#9d174d}.no-availability{color:#9ca3af;font-size:14px;font-style:italic;padding:20px 0;text-align:center}.card-actions{justify-content:center;padding-top:10px}.availability-form{display:flex;flex-direction:column;gap:30px}.hour-preferences h4,.special-availability h4,.weekly-availability h4{color:#1f2937;font-size:16px;margin:0 0 15px}.availability-slots{display:flex;flex-direction:column;gap:12px}.availability-slot{grid-gap:15px;align-items:center;background:#f9fafb;border-radius:6px;display:grid;gap:15px;grid-template-columns:120px 1fr auto;padding:10px}.slot-day label{color:#374151;cursor:pointer;font-weight:500;gap:8px}.slot-day label,.slot-times{align-items:center;display:flex;font-size:14px}.slot-times{gap:10px}.slot-times span{color:#6b7280}.slot-notes{border:1px solid #d1d5db;border-radius:4px;font-size:13px;padding:6px 10px;width:200px}.checkbox-group{display:flex;flex-direction:column}.checkbox-group label,.employee-filter{color:#374151;font-size:14px}.employee-filter{background:#fff;border:1px solid #d1d5db;border-radius:6px;min-width:200px;padding:8px 12px}.request-stats{display:flex;gap:20px}.request-stats .stat{background:#f3f4f6;border-radius:6px;color:#374151;font-size:14px;font-weight:500;padding:6px 12px}.requests-list{display:flex;flex-direction:column;gap:15px;margin-top:20px}.request-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:all .2s ease}.request-card:hover{box-shadow:0 4px 12px #00000014}.request-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.request-header h3{color:#1f2937;font-size:18px;margin:0}.status.pending{background:#fef3c7;color:#92400e}.status.approved{background:#d1fae5;color:#065f46}.status.denied{background:#fee2e2;color:#991b1b}.request-details{margin-bottom:15px}.request-details p{color:#4b5563;font-size:14px;margin:5px 0}.request-details strong{color:#374151}.request-actions{border-top:1px solid #f3f4f6;display:flex;gap:10px;padding-top:10px}.optimization-results{margin-top:20px}.results-header{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.results-header h3{color:#1f2937;margin:0}.total-savings{align-items:flex-end;display:flex;flex-direction:column}.total-savings .label{color:#6b7280;font-size:12px;letter-spacing:.5px;text-transform:uppercase}.total-savings .amount{color:#10b981;font-size:24px;font-weight:600}.recommendations{display:flex;flex-direction:column;gap:15px}.recommendation-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.rec-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.rec-header h4{color:#1f2937;font-size:16px;margin:0}.savings{background:#d1fae5;border-radius:20px;color:#065f46;font-size:14px;font-weight:500;padding:4px 12px}.rec-details{display:flex;flex-direction:column;gap:10px}.staffing-change{align-items:center;display:flex;font-size:14px;gap:10px}.staffing-change .current{color:#6b7280}.staffing-change .arrow{color:#9ca3af}.staffing-change .recommended{color:#2563eb;font-weight:500}.reason{color:#4b5563;font-size:14px;line-height:1.5;margin:0}.modal-overlay{z-index:9999}.modal{box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;overflow:hidden}.modal-header h3{font-size:20px}.modal-header button{border-radius:4px;line-height:1;transition:all .2s ease}.modal-header button:hover{background:#f3f4f6;color:#374151}.modal-actions{padding:20px}.modal.large{max-width:800px;width:90vw}.modal.large .modal-content{max-height:70vh;overflow-y:auto}.form-grid{grid-template-columns:repeat(2,1fr)}.form-group.full-width{grid-column:span 2}.form-group input,.form-group select,.form-group textarea{background:#fff;color:#1f2937;transition:all .2s ease}@media (max-width:768px){.availability-grid,.jobs-grid,.templates-grid{grid-template-columns:1fr}.template-actions{flex-direction:column}.availability-slot{gap:10px;grid-template-columns:1fr}.slot-notes{width:100%}.modal.large{border-radius:0;height:100%;max-width:100%;width:100%}.form-grid{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}}.scheduling-dashboard{height:100%;width:100%}.dashboard-header{border-bottom:1px solid #e0e0e0;padding-bottom:15px}.breadcrumb{align-items:center;display:flex;font-size:14px;gap:8px}.breadcrumb-link{background:none;border:none;color:#2563eb;cursor:pointer;padding:0;text-decoration:none}.breadcrumb-link:hover{text-decoration:underline}.breadcrumb-separator{color:#6b7280}.breadcrumb-current{color:#374151;font-weight:500}.dashboard-content{flex:1 1}.scheduling-overview{padding:20px}.overview-header{margin-bottom:40px;text-align:center}.overview-header h2{color:#1f2937;font-size:28px;margin-bottom:8px}.overview-header p{color:#6b7280;font-size:16px}.scheduling-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-bottom:40px}.scheduling-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:140px;padding:20px;transition:all .2s ease}.scheduling-card:hover{border-color:#2563eb;box-shadow:0 4px 12px #2563eb1a;transform:translateY(-1px)}.card-header{margin-bottom:12px}.card-header h3{color:#1f2937;font-size:18px;font-weight:600;margin:0}.card-content .description{color:#6b7280;font-size:14px;line-height:1.4;margin:0 0 8px}.card-content .shortcut{color:#9ca3af;font-size:13px;font-style:italic;margin:0}.card-action{margin-top:auto;padding-top:8px}.launch-text{color:#2563eb;font-size:14px;font-weight:500}.quick-actions{background:#f9fafb;border-radius:8px;padding:24px;text-align:center}.quick-actions h3{color:#1f2937;font-size:20px;margin-bottom:16px}.action-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.quick-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.quick-btn.primary{background:#2563eb;color:#fff}.quick-btn.primary:hover{background:#1d4ed8}.quick-btn.secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.quick-btn.secondary:hover{background:#f9fafb;border-color:#9ca3af}.page-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.page-header h2{color:#1f2937;font-size:24px;font-weight:600;margin:0}.btn{gap:6px}.btn.btn-primary{background:#2563eb;color:#fff}.btn.btn-primary:hover{background:#1d4ed8}.btn.btn-secondary{background:#fff;border:1px solid #d1d5db;color:#374151}.btn.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn.btn-success{background:#10b981;color:#fff}.btn.btn-success:hover{background:#059669}.btn.btn-danger{background:#ef4444;color:#fff}.btn.btn-danger:hover{background:#dc2626}.loading{align-items:center;color:#6b7280;display:flex;height:200px;justify-content:center}.empty-state{border:1px solid #e5e7eb}.empty-state h3{color:#1f2937;font-size:20px;margin-bottom:8px}.empty-state p{color:#6b7280;font-size:16px;margin-bottom:24px}.modal{width:90vw}.modal-header{padding:20px 24px}.modal-header h3{color:#1f2937;font-size:18px;font-weight:600}.modal-header button{color:#6b7280;height:32px;width:32px}.modal-content{padding:24px}.modal-actions{border-top:1px solid #e5e7eb;padding:16px 24px}.form-grid{grid-gap:16px;gap:16px}.form-group label{color:#374151}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;color:#374151}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}@media (max-width:768px){.scheduling-grid{gap:16px;grid-template-columns:1fr}.scheduling-card{height:auto;min-height:120px}.action-buttons{align-items:center;flex-direction:column}.quick-btn{max-width:250px;width:100%}.overview-header h2{font-size:24px}.form-grid{grid-template-columns:1fr}.page-header{align-items:flex-start;flex-direction:column;gap:12px}}.labor-rules-dashboard{margin:0 auto;max-width:1400px;padding:20px}.filters{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;margin-bottom:20px;padding:15px}.filter-group label{color:#555}.filter-select{border:1px solid #ddd;border-radius:4px;padding:6px 10px}.rules-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:20px}.rule-card{background:#fff;border-left:4px solid #007bff;border-radius:8px;box-shadow:0 2px 4px #0000001a;cursor:pointer;padding:20px;transition:all .2s ease}.rule-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.rule-card.inactive{border-left-color:#6c757d;opacity:.6}.rule-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.rule-type-badge{background:#007bff;border-radius:12px;color:#fff;font-size:11px;font-weight:500;padding:4px 8px;text-transform:uppercase}.rule-scope{align-items:center;color:#666;display:flex;font-size:12px;gap:4px}.rule-content .rule-name{color:#333;font-size:16px;margin:0 0 8px}.rule-description{color:#666;font-size:14px;line-height:1.4;margin-bottom:15px}.rule-details{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:15px}.detail-item{flex-direction:column;gap:2px}.detail-item .label{color:#666;font-size:11px;font-weight:500;text-transform:uppercase}.detail-item .value{color:#333;font-size:13px;font-weight:500}.rule-actions{border-top:1px solid #eee;display:flex;gap:8px;justify-content:flex-end;padding-top:15px}.empty-state{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.empty-state h3{color:#333;margin:0 0 10px}.empty-state p{color:#666;margin-bottom:20px}.form-grid{grid-gap:15px;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:20px}.form-input{padding:8px 12px;transition:border-color .2s ease}.form-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.json-input{font-family:Courier New,monospace;font-size:12px}.modal-actions{margin-top:20px}.templates-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.template-section h4{border-bottom:2px solid #007bff;color:#333;margin:0 0 15px;padding-bottom:5px}.template-card{border:1px solid #e9ecef;border-radius:6px;margin-bottom:10px}.template-card h5{color:#333;font-size:14px;margin:0 0 8px}.template-card p{color:#666;font-size:12px;line-height:1.3;margin-bottom:10px}.rule-details-view .detail-section{margin-bottom:25px}.rule-details-view .detail-section h4{border-bottom:1px solid #eee;color:#333;margin:0 0 15px;padding-bottom:5px}.config-display{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;font-size:12px;margin:0;overflow-x:auto;padding:15px}.test-results h4{color:#333;margin:20px 0 10px}.test-results pre{background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;font-size:12px;margin:0 0 15px;overflow-x:auto;padding:15px}.status-active,.status-inactive{font-weight:600}.btn-danger{background:#dc3545}.btn-danger:hover{background:#c82333}@media (max-width:1200px){.rules-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.dashboard-header{align-items:stretch;flex-direction:column;gap:15px}.header-actions{justify-content:center}}@media (max-width:768px){.labor-rules-dashboard{padding:10px}.rules-grid{grid-template-columns:1fr}.filters{flex-direction:column;gap:10px}.filter-group{justify-content:space-between}.detail-grid,.form-grid,.rule-details,.templates-grid{grid-template-columns:1fr}.modal{margin:10px;width:95%}}@media (max-width:480px){.header-actions,.rule-actions{flex-direction:column}.modal-content,.modal-header{padding:15px}}.overtime-analytics{margin:0 auto;max-width:1400px;padding:20px}.analytics-header{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.analytics-header h2{color:#333;margin:0}.report-controls{grid-gap:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:grid;gap:20px;grid-template-columns:auto 1fr;margin-bottom:20px;padding:20px}.summary-card{border-left:4px solid #007bff;box-shadow:0 2px 4px #0000001a}.summary-card.warning{border-left-color:#dc3545}.card-value{color:#333}.analytics-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.employee-summary-table{width:100%}.table-header{background:#f8f9fa;border-bottom:1px solid #ddd;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr 1fr}.header-cell{border-right:1px solid #eee;color:#555;font-size:14px;font-weight:600;padding:15px 12px}.header-cell:last-child{border-right:none}.table-row{border-bottom:1px solid #eee;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr 1fr 1fr;transition:background-color .2s ease}.table-row:hover{background-color:#f8f9fa}.cell{border-right:1px solid #eee;display:flex;flex-direction:column;justify-content:center;padding:15px 12px}.cell:last-child{border-right:none}.employee-info .employee-name{color:#333;font-weight:600;margin-bottom:4px}.employee-info .employee-details{color:#666;font-size:12px}.hours-value{color:#333;font-weight:500}.hours-value.overtime{color:#fd7e14;font-weight:600}.hours-value.double-time{color:#dc3545;font-weight:600}.cost-value{color:#28a745;font-weight:600}.status-indicators{display:flex;gap:5px}.indicator{cursor:help;font-size:14px}.indicator.cross-location{color:#17a2b8}.indicator.violation.low{color:#ffc107}.indicator.violation.medium{color:#fd7e14}.indicator.violation.high{color:#dc3545}.actions{align-items:center;display:flex}.violations-view{padding:20px}.violations-view h3{color:#333;margin:0 0 20px}.violation-card{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-bottom:15px;padding:15px}.violation-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.violation-header h4{color:#333;margin:0}.violation-count{border-radius:12px;font-size:11px;font-weight:500;padding:4px 8px}.violation-count.low{background:#fff3cd;color:#856404}.violation-count.medium{background:#fecba1;color:#d1580e}.violation-count.high{background:#f5c6cb;color:#721c24}.violation-list{display:flex;flex-direction:column;gap:8px}.violation-item{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:4px;display:flex;justify-content:space-between;padding:8px}.violation-error{color:#721c24;font-weight:500}.violation-id{color:#666;font-size:12px}.no-violations{color:#28a745;font-size:16px;padding:40px;text-align:center}.modal{max-height:80vh;max-width:600px}.modal.large{max-width:900px}.modal-header h3{color:#333;margin:0}.modal-content{padding:20px}.employee-overtime-details .detail-section{margin-bottom:25px}.employee-overtime-details .detail-section h4{border-bottom:1px solid #eee;color:#333;margin:0 0 15px;padding-bottom:5px}.detail-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.detail-item{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;justify-content:space-between;padding:8px}.detail-item label{color:#555;font-weight:500}.detail-item span{color:#333;font-weight:600}.detail-item span.overtime{color:#fd7e14}.detail-item span.double-time{color:#dc3545}.daily-breakdown,.location-breakdown{display:flex;flex-direction:column;gap:10px}.daily-item,.location-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:12px}.daily-date,.location-name{color:#333;font-weight:600;margin-bottom:5px}.location-state{color:#666;font-size:12px;margin-bottom:8px}.daily-hours,.location-hours{display:flex;font-size:14px;gap:15px}.daily-hours span,.location-hours span{color:#555}.daily-locations{color:#666;font-size:12px;margin-top:5px}@media (max-width:1200px){.report-controls{gap:15px;grid-template-columns:1fr}.filter-controls{justify-content:flex-start}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media (max-width:768px){.overtime-analytics{padding:10px}.analytics-header{flex-direction:column;gap:15px}.date-controls,.filter-controls{flex-direction:column;gap:10px}.table-header,.table-row{gap:10px;grid-template-columns:1fr}.cell{border-bottom:1px solid #eee;border-right:none;padding:10px 12px}.cell:last-child{border-bottom:none}.header-cell{display:none}.table-row{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:10px}.detail-grid{grid-template-columns:1fr}.modal{margin:10px;width:95%}}@media (max-width:480px){.summary-cards{grid-template-columns:1fr}.daily-hours,.location-hours{flex-direction:column;gap:5px}.header-actions{flex-direction:column}}.people-management{background:#f5f7fa;display:flex;flex-direction:column;min-height:100vh}.people-header{align-items:center;background:#fff;border-bottom:1px solid #e1e5e9;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;padding:20px 30px}.people-header h1{color:#2c3e50;font-size:28px;font-weight:600;margin:0}.context-info{align-items:center;display:flex;gap:10px}.selection-filters{align-items:center;display:flex;gap:20px}.filter-group{gap:10px}.filter-group label{font-size:14px}.filter-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#1f2937;cursor:pointer;font-size:14px;min-width:200px;padding:8px 12px}.filter-select:hover{border-color:#9ca3af}.filter-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.enterprise-badge,.store-badge{border-radius:16px;font-size:12px;font-weight:500;padding:6px 12px;text-transform:uppercase}.store-badge{background:#e3f2fd;border:1px solid #bbdefb;color:#1565c0}.enterprise-badge{background:#f3e5f5;border:1px solid #e1bee7;color:#7b1fa2}.people-navigation{background:#fff;border-bottom:1px solid #e1e5e9;position:-webkit-sticky;position:sticky;top:0;z-index:100}.nav-tabs{display:flex;margin:0 auto;max-width:1400px;padding:0 30px}.nav-tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#6c757d;cursor:pointer;display:flex;flex-direction:column;gap:5px;min-width:120px;padding:15px 20px;transition:all .2s ease}.nav-tab:hover:not(.disabled){background:#f8f9fa;color:#495057}.nav-tab.active{background:#f8f9fa;border-bottom-color:#007bff;color:#007bff}.nav-tab.disabled{cursor:not-allowed;opacity:.4}.tab-icon{font-size:20px}.tab-label{font-size:14px;font-weight:500}.people-content{background:#f5f7fa;flex:1 1;padding:0}.no-store-selected{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:20px;min-height:400px;text-align:center}.no-store-selected h3{color:#495057;margin:0 0 10px}.no-store-selected p{color:#6c757d;margin:0}.access-denied{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;justify-content:center;margin:20px;min-height:400px;text-align:center}.access-denied h3{color:#dc3545;margin:0 0 10px}.access-denied p{color:#6c757d;margin:0}.people-footer{background:#fff;border-top:1px solid #e1e5e9;margin-top:auto;padding:15px 30px}.footer-info{align-items:center;color:#6c757d;display:flex;font-size:12px;gap:10px;justify-content:center;margin:0 auto;max-width:1400px}.footer-info span{white-space:nowrap}@media (max-width:1200px){.people-header{padding:15px 20px}.nav-tabs{padding:0 20px}.people-footer{padding:15px 20px}}@media (max-width:768px){.people-header{align-items:stretch;flex-direction:column;gap:15px;text-align:center}.people-header h1{font-size:24px}.context-info{justify-content:center}.nav-tabs{-ms-overflow-style:none;overflow-x:auto;padding:0 10px;scrollbar-width:none}.nav-tabs::-webkit-scrollbar{display:none}.nav-tab{flex-shrink:0;min-width:100px;padding:12px 15px}.tab-icon{font-size:18px}.tab-label{font-size:12px}.footer-info{flex-direction:column;gap:5px;text-align:center}}@media (max-width:480px){.people-header{padding:10px 15px}.people-header h1{font-size:20px}.enterprise-badge,.store-badge{font-size:10px;padding:4px 8px}.nav-tab{min-width:80px;padding:10px 12px}.tab-icon{font-size:16px}.tab-label{font-size:11px}.people-footer{padding:10px 15px}}.people-content>*{animation:fadeIn .3s ease-in-out}.nav-tab:focus{outline:2px solid #007bff;outline-offset:-2px}.nav-tab:focus:not(:focus-visible){outline:none}@media (prefers-contrast:high){.people-header{border-bottom-width:2px}.nav-tab.active{border-bottom-width:4px}.people-navigation{border-bottom-width:2px}}@media (prefers-reduced-motion:reduce){.nav-tab{transition:none}.people-content>*{animation:none}}.user-profile-container{margin:0 auto;max-width:1200px;padding:24px}.user-profile-header{margin-bottom:32px}.user-profile-header h1{color:#2c3e50;font-size:32px;font-weight:600;margin-bottom:8px}.user-profile-header .subtitle{color:#7f8c8d;font-size:16px}.alert{font-size:14px;margin-bottom:24px}.alert-error{background-color:#fee;color:#c33}.alert-success{background-color:#efe;color:#3c3}.user-profile-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.profile-section{grid-gap:0;display:grid;gap:0;grid-template-columns:400px 1fr}.profile-photo-section{background-color:#fafbfc;border-right:1px solid #ecf0f1;padding:32px}.profile-photo-section h2{color:#2c3e50;font-size:20px;font-weight:600;margin-bottom:24px}.current-photo{display:flex;justify-content:center;margin-bottom:24px}.profile-image{object-fit:cover}.profile-image,.profile-image-placeholder{border:4px solid #fff;border-radius:50%;box-shadow:0 4px 12px #0000001a;height:200px;width:200px}.profile-image-placeholder{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center}.profile-image-placeholder span{color:#fff;font-size:72px;font-weight:600}.profile-info-section{padding:32px}.profile-info-section h2{color:#2c3e50;font-size:20px;font-weight:600;margin-bottom:24px}.info-grid{grid-gap:24px;gap:24px;grid-template-columns:repeat(2,1fr)}.info-item label{color:#7f8c8d;letter-spacing:.5px;margin-bottom:8px}.info-value{color:#2c3e50;font-size:16px;font-weight:500}.phone-edit{align-items:center;display:flex;gap:8px}.phone-input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;padding:8px 12px}.phone-display{align-items:center;display:flex;justify-content:space-between}.btn-cancel,.btn-edit,.btn-save{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:6px 16px;transition:all .2s}.btn-save{background-color:#3498db;color:#fff}.btn-save:hover:not(:disabled){background-color:#2980b9}.btn-save:disabled{cursor:not-allowed;opacity:.6}.btn-cancel{background-color:#ecf0f1;color:#7f8c8d}.btn-cancel:hover{background-color:#bdc3c7;color:#fff}.btn-edit{background-color:initial;border:1px solid #3498db;color:#3498db;padding:4px 12px}.btn-edit:hover{background-color:#3498db;color:#fff}.loading{color:#7f8c8d;padding:48px}@media (max-width:768px){.profile-section{grid-template-columns:1fr}.profile-photo-section{border-bottom:1px solid #ecf0f1;border-right:none}.info-grid{grid-template-columns:1fr}}.profile-photo-section .employee-image-upload h4{display:none}.profile-photo-section .employee-image-upload p{margin-bottom:16px;text-align:center}.performance-dashboard{margin:0 auto;max-width:1400px;padding:20px}.dashboard-header{align-items:center;background:#f8f9fa;margin-bottom:20px}.dashboard-header h2{color:#333;margin:0}.header-actions{gap:10px}.performance-controls{grid-gap:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:grid;gap:20px;grid-template-columns:auto 1fr;margin-bottom:20px;padding:20px}.date-controls,.filter-controls{align-items:end;display:flex;gap:15px}.filter-controls{justify-content:flex-end}.form-group{gap:5px}.form-group label{font-size:12px;text-transform:uppercase}.form-input{border:1px solid #ced4da;border-radius:4px;font-size:14px;min-width:120px;padding:6px 10px}.team-summary{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:20px}.team-summary h3{color:#333;margin:0 0 20px}.summary-cards{grid-gap:15px;gap:15px;grid-template-columns:2fr repeat(4,1fr)}.summary-card{background:#f8f9fa;border-radius:6px;padding:15px;text-align:center}.card-header{align-items:center;margin-bottom:5px}.card-header h4{color:#666;font-size:14px;font-weight:500;margin:0}.score-badge{border-radius:12px;color:#fff;font-size:16px;font-weight:700;min-width:40px;padding:4px 8px}.score-value{color:#333;font-size:18px;font-weight:600}.card-subtitle{color:#666;font-size:12px}.performance-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.overview-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.performance-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.performance-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.performance-card .card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:20px}.employee-info h4{color:#333;font-size:16px;margin:0 0 5px}.date-range{color:#666;font-size:12px}.overall-score{align-items:center;display:flex;flex-direction:column;gap:5px}.score-circle{color:#fff;font-size:16px;font-weight:700;height:40px;width:40px}.score-number{color:#333;font-size:14px;font-weight:600}.score-breakdown{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.score-item{grid-gap:10px;align-items:center;display:grid;gap:10px;grid-template-columns:80px 1fr 40px}.score-label{color:#666;font-size:12px}.score-bar{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden}.score-fill{border-radius:4px;height:100%;transition:width .3s ease}.score-item .score-value{color:#333;font-size:12px;font-weight:600;text-align:right}.card-footer{border-top:1px solid #e9ecef;justify-content:space-between;padding-top:15px}.card-footer,.trend{align-items:center;display:flex}.trend{gap:5px}.trend-icon{font-size:14px}.trend-text{color:#666;font-size:12px;text-transform:capitalize}.recommendations-count{color:#007bff;cursor:pointer;font-size:12px}.detailed-view{margin:0 auto;max-width:800px}.detailed-header{margin-bottom:30px;text-align:center}.detailed-header h3{color:#333;margin:0}.detailed-metrics{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-bottom:30px}.metrics-section{background:#f8f9fa;border-radius:8px;padding:20px}.metrics-section h4{border-bottom:2px solid #007bff;color:#333;margin:0 0 15px;padding-bottom:5px}.metrics-grid{display:flex;flex-direction:column}.metric-item{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:8px 0}.metric-item:last-child{border-bottom:none}.metric-item label{color:#555;font-size:14px;font-weight:500}.metric-item span{color:#333;font-weight:600}.recommendations-section{background:#f8f9fa;border-radius:8px;padding:20px}.recommendations-section h4{border-bottom:2px solid #007bff;color:#333;margin:0 0 20px;padding-bottom:5px}.recommendations-list{display:flex;flex-direction:column;gap:15px}.recommendation-item{background:#fff;border-left:4px solid #007bff;border-radius:6px;padding:15px}.recommendation-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.priority-badge{border-radius:10px;color:#fff;font-size:10px;font-weight:500;padding:2px 6px}.category{color:#666;font-size:11px}.recommendation-message{color:#333;font-size:14px;line-height:1.4;margin:0}.no-data{color:#666;padding:60px 20px;text-align:center}.no-data h3{color:#333;margin:0 0 10px}.no-data p{line-height:1.4;margin:0}.btn{display:inline-block;text-decoration:none}.btn-secondary:hover:not(:disabled){background:#545b62}.error{background:#f8d7da;border-radius:4px;color:#721c24;margin-bottom:20px;padding:15px}@media (max-width:1200px){.performance-controls{gap:15px;grid-template-columns:1fr}.filter-controls{justify-content:flex-start}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.overview-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.performance-dashboard{padding:10px}.dashboard-header{flex-direction:column;gap:15px}.date-controls,.filter-controls{flex-direction:column;gap:10px}.detailed-metrics,.overview-grid,.summary-cards{grid-template-columns:1fr}.detailed-metrics{gap:20px}.score-item{gap:8px;grid-template-columns:70px 1fr 35px}.performance-card .card-header{align-items:flex-start;flex-direction:column;gap:10px}.overall-score{align-self:flex-end;flex-direction:row;gap:10px}}@media (max-width:480px){.metrics-section,.performance-card,.recommendations-section{padding:15px}.recommendation-item{padding:12px}.score-item{gap:5px;grid-template-columns:1fr;text-align:center}.score-bar{order:2}.score-item .score-value{order:3;text-align:center}}.score-fill{animation:fillBar 1s ease-out}@keyframes fillBar{0%{width:0}to{width:var(--final-width)}}.performance-card:focus,.recommendations-count:focus{outline:2px solid #007bff;outline-offset:2px}@media (prefers-contrast:high){.performance-card{border-width:2px}.score-bar{border:1px solid #333}}@media (prefers-reduced-motion:reduce){.performance-card{transition:none}.score-fill{animation:none}}.device-health-dashboard{background-color:#f8fafc;min-height:100vh;padding:20px}.device-health-dashboard.error,.device-health-dashboard.loading{align-items:center;display:flex;justify-content:center;min-height:60vh}.spinner{border:3px solid #e2e8f0;border-top-color:#3b82f6;margin:0 auto 20px}.loading-spinner-small{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#3b82f6;display:inline-block;height:20px;margin-right:10px;width:20px}.error-message{background:#fff;box-shadow:0 1px 3px #0000001a;max-width:500px;padding:40px;text-align:center}.error-message h3{color:#ef4444;margin-bottom:16px}.retry-button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;margin-top:16px;padding:8px 16px}.retry-button:hover{background:#2563eb}.dashboard-header{align-items:flex-start;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:20px}.header-left h1{color:#1f2937;font-size:28px;font-weight:600;margin:0 0 8px}.last-updated{color:#6b7280;font-size:14px}.header-controls{gap:20px}.refresh-controls{align-items:center;display:flex;font-size:14px;gap:10px}.refresh-controls label{align-items:center;cursor:pointer;display:flex;gap:5px}.refresh-controls select{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:4px 8px}.refresh-button{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.refresh-button:hover:not(:disabled){background:#047857}.refresh-button:disabled{cursor:not-allowed;opacity:.6}.summary-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.summary-card{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;gap:16px;padding:20px;transition:transform .2s,box-shadow .2s}.summary-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.card-icon{align-items:center;background:#f3f4f6;border-radius:8px;display:flex;font-size:24px;height:48px;justify-content:center;width:48px}.summary-card.online .card-icon{background:#dcfce7}.summary-card.error .card-icon,.summary-card.offline .card-icon{background:#fef2f2}.summary-card.health .card-icon{background:#dcfce7}.summary-card.alerts .card-icon{background:#fef3c7}.card-content{flex:1 1}.card-value{color:#1f2937;font-size:24px;font-weight:700;margin-bottom:4px}.card-label{color:#6b7280;font-size:14px;font-weight:500}.view-tabs{background:#e5e7eb;border-radius:8px;display:flex;gap:1px;margin-bottom:20px;padding:4px}.tab{background:#0000;border-radius:6px;color:#6b7280;flex:1 1;font-size:14px;padding:12px 20px}.tab:hover:not(:disabled){background:#ffffff80}.tab.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#1f2937}.tab:disabled{cursor:not-allowed;opacity:.5}.dashboard-content{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.device-list{padding:20px}.filters-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.filters-toggle{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px}.filters-toggle:hover{background:#e5e7eb}.results-count{color:#6b7280;font-size:14px}.filters-panel{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:20px;padding:20px}.filter-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.filter-row:last-child{margin-bottom:0}.filter-group{gap:6px}.filter-group label{font-size:12px;letter-spacing:.05em;text-transform:uppercase}.filter-group input,.filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px}.filter-group input:focus,.filter-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.range-inputs{align-items:center;display:flex;gap:8px}.range-inputs input{flex:1 1}.range-inputs span{color:#6b7280;font-size:14px}.clear-filters-button{align-self:end;background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.clear-filters-button:hover{background:#dc2626}.devices-table-container{border:1px solid #e5e7eb;border-radius:8px;overflow-x:auto}.devices-table{background:#fff;border-collapse:collapse;width:100%}.devices-table td,.devices-table th{border-bottom:1px solid #e5e7eb;padding:12px 16px;text-align:left}.devices-table th{background:#f9fafb;color:#374151;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.devices-table th.sortable{cursor:pointer;position:relative;-webkit-user-select:none;user-select:none}.devices-table th.sortable:hover{background:#f3f4f6}.devices-table tbody tr{transition:background-color .2s}.devices-table tbody tr:hover{background:#f9fafb}.loading-row,.no-data-row{color:#6b7280;padding:40px;text-align:center}.loading-row{align-items:center;display:flex;gap:10px;justify-content:center}.device-row.offline{opacity:.7}.device-row.error{background:#ef444408}.device-info{display:flex;flex-direction:column;gap:4px}.device-name{color:#1f2937;font-weight:600}.device-id{color:#6b7280;font-family:monospace;font-size:12px}.device-type{align-items:center;color:#374151;display:flex;font-size:14px;gap:6px}.store-info{gap:4px}.store-name{color:#1f2937;font-weight:500}.enterprise-name{color:#6b7280;font-size:12px}.status-badge{align-items:center;display:inline-flex;gap:4px}.status-badge.large{border-radius:16px;font-size:14px;padding:8px 16px}.health-score{align-items:center;display:flex;flex-direction:column;gap:6px;min-width:80px}.health-score-bar{background:#e5e7eb;border-radius:4px;height:8px;overflow:hidden;position:relative;width:60px}.health-score-fill{border-radius:4px;height:100%;transition:width .3s ease}.health-score span{font-size:12px;font-weight:600}.key-metrics{display:flex;flex-direction:column;gap:2px}.metric{color:#374151;font-size:12px}.alerts-summary,.metric{align-items:center;display:flex;gap:4px}.alerts-summary{flex-direction:column}.alert-badge{align-items:center;border-radius:8px;color:#fff;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:2px 6px}.alert-badge.critical{background:#ef4444}.alert-badge.warning{background:#f97316}.alert-badge.none{background:#22c55e}.last-seen{color:#6b7280}.last-seen,.view-details-button{font-size:12px;white-space:nowrap}.view-details-button{background:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:6px 12px}.view-details-button:hover{background:#2563eb}.device-details{padding:20px}.device-details-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.back-button{align-items:center;background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px}.back-button:hover{background:#4b5563}.device-title h2{color:#1f2937;font-size:24px;font-weight:600;margin:0 0 8px}.device-subtitle{color:#6b7280;font-size:14px}.device-details-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.device-details-left,.device-details-right{display:flex;flex-direction:column;gap:20px}.info-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.info-section h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px}.info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{color:#6b7280;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.info-item span{color:#1f2937;font-size:14px}.metrics-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;text-align:center;transition:transform .2s,box-shadow .2s}.metric-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.metric-icon{font-size:20px;margin-bottom:8px}.metric-content{display:flex;flex-direction:column;gap:4px}.metric-value{color:#1f2937;font-size:18px}.metric-label{color:#6b7280;font-size:12px;font-weight:500}.command-buttons{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.command-button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .2s}.command-button:disabled{cursor:not-allowed;opacity:.6}.command-button.restart{background:#f97316;color:#fff}.command-button.restart:hover:not(:disabled){background:#ea580c}.command-button.diagnostic{background:#3b82f6;color:#fff}.command-button.diagnostic:hover:not(:disabled){background:#2563eb}.command-button.update{background:#059669;color:#fff}.command-button.update:hover:not(:disabled){background:#047857}.command-button.maintenance{background:#6b7280;color:#fff}.command-button.maintenance:hover:not(:disabled){background:#4b5563}.chart-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.chart-header{margin-bottom:20px}.chart-header h3{color:#1f2937;font-size:16px;font-weight:600}.period-selector select{background:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:6px 12px}.chart-error,.chart-loading{align-items:center;color:#6b7280;display:flex;gap:10px;height:200px;justify-content:center}.chart-no-data{color:#6b7280;padding:40px;text-align:center}.health-metrics-chart{width:100%}.metric-selector{margin-bottom:20px}.metric-tabs{background:#e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:4px;padding:4px}.metric-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;flex:1 1;font-size:12px;font-weight:500;gap:6px;justify-content:center;min-width:120px;padding:8px 12px;transition:all .2s}.metric-tab:hover{background:#ffffff80}.metric-tab.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#1f2937}.metric-icon{font-size:14px}.metric-name{white-space:nowrap}.chart-area{margin-bottom:20px}.chart-container{overflow-x:auto;width:100%}.metrics-chart{height:auto;width:100%}.chart-legend{align-items:center;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-top:16px;padding-top:16px}.legend-item{color:#374151;font-weight:500;gap:8px}.legend-stats{color:#6b7280;display:flex;font-size:12px;gap:16px}.chart-actions{display:flex;justify-content:flex-end}.export-button{align-items:center;background:#6b7280;border:none;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:6px;padding:6px 12px}.export-button:hover{background:#4b5563}.alerts-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.alerts-section h3{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 16px}.no-alerts{color:#6b7280;padding:20px;text-align:center}.alerts-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto}.alert-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;transition:all .2s}.alert-item.critical{border-left:4px solid #ef4444}.alert-item.warning{border-left:4px solid #f97316}.alert-item.info{border-left:4px solid #3b82f6}.alert-item.acknowledged{background:#f9fafb;opacity:.7}.alert-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:12px}.alert-type{align-items:center;display:flex;gap:6px}.alert-type-label{border-radius:4px;color:#fff;font-size:10px;font-weight:600;letter-spacing:.05em;padding:2px 6px;text-transform:uppercase}.alert-type-label.critical{background:#ef4444}.alert-type-label.warning{background:#f97316}.alert-type-label.info{background:#3b82f6}.alert-time{color:#6b7280;text-align:right}.alert-content{margin-bottom:12px}.alert-title{color:#1f2937;font-size:14px;font-weight:600;margin:0 0 8px}.alert-message{color:#374151;font-size:14px;line-height:1.5;margin:0}.alert-actions{display:flex;justify-content:flex-end}.acknowledge-button{background:#3b82f6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 12px}.acknowledge-button:hover:not(:disabled){background:#2563eb}.acknowledge-button:disabled{cursor:not-allowed;opacity:.6}.alert-acknowledged{color:#059669;font-size:12px;font-weight:500}.alerts-panel{padding:20px}.alert-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:30px}.stat-card{border:1px solid #e5e7eb;padding:16px}.stat-card:hover{box-shadow:0 4px 12px #0000001a}.stat-card.critical{border-left:4px solid #ef4444}.stat-card.warning{border-left:4px solid #f97316}.stat-card.info{border-left:4px solid #3b82f6}.stat-card.unacknowledged{border-left:4px solid #6b7280}.stat-value{color:#1f2937;margin-bottom:4px}.stat-label{font-weight:500;letter-spacing:.05em}.alerts-controls{align-items:flex-end;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.filter-controls{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.bulk-actions{margin-left:20px}.bulk-acknowledge-button{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;white-space:nowrap}.bulk-acknowledge-button:hover:not(:disabled){background:#047857}.bulk-acknowledge-button:disabled{cursor:not-allowed;opacity:.6}.results-summary{color:#6b7280;font-size:14px;font-weight:500;margin-bottom:20px}.alerts-list .no-alerts{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:60px 40px;text-align:center}.no-alerts-icon{font-size:48px;margin-bottom:16px}.no-alerts h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 12px}.no-alerts p{color:#6b7280;font-size:14px;margin:0}.alert-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:16px;padding:20px;transition:all .2s}.alert-card:hover{box-shadow:0 2px 8px #0000001a}.alert-card.critical{border-left:4px solid #ef4444}.alert-card.warning{border-left:4px solid #f97316}.alert-card.info{border-left:4px solid #3b82f6}.alert-card.acknowledged{background:#f9fafb;opacity:.7}.alert-card .alert-header{grid-gap:16px;align-items:flex-start;display:grid;gap:16px;grid-template-columns:auto 1fr auto;margin-bottom:16px}.alert-type-section{align-items:center;display:flex}.alert-type-badge{align-items:center;border-radius:12px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;gap:6px;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.alert-device-section{display:flex;flex-direction:column;gap:4px}.device-link{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:0;text-align:left;text-decoration:underline}.device-link:hover{color:#2563eb}.device-location{color:#6b7280;font-size:12px}.alert-time-section{text-align:right}.alert-time{color:#374151;font-size:12px;font-weight:500}.alert-timestamp{color:#6b7280;font-size:11px;margin-top:2px}.alert-acknowledged-status{align-items:center;color:#059669;display:flex;font-size:12px;font-weight:500;gap:6px}.resolved-time{color:#6b7280;font-weight:400}@media (max-width:1200px){.device-details-content{grid-template-columns:1fr}.device-details-right{order:-1}}@media (max-width:768px){.device-health-dashboard{padding:15px}.dashboard-header{align-items:stretch;flex-direction:column;gap:20px}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.view-tabs{flex-direction:column}.devices-table-container{font-size:14px}.devices-table td,.devices-table th{padding:8px 12px}.info-grid{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.command-buttons{grid-template-columns:1fr}.alerts-controls,.metric-tabs{flex-direction:column}.alerts-controls{align-items:stretch;gap:20px}.bulk-actions{margin-left:0}.alert-card .alert-header{gap:12px;grid-template-columns:1fr}.alert-time-section{text-align:left}}*{margin:0;padding:0}:root{--primary:#1a1a1a;--primary-light:#2a2a2a;--accent:#3b82f6;--accent-light:#60a5fa;--text-primary:#1a1a1a;--text-secondary:#6b7280;--text-muted:#9ca3af;--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-accent:#f1f5f9;--border:#e5e7eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--radius:12px;--radius-lg:16px;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--max-width:1200px;--section-padding:120px;--container-padding:24px}.landing{color:#1a1a1a;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);line-height:1.6;overflow-x:hidden}.container{margin:0 auto;max-width:1200px;max-width:var(--max-width);padding:0 24px;padding:0 var(--container-padding)}.header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe6;border-bottom:1px solid #0000;left:0;position:fixed;right:0;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000}.header-scrolled{border-bottom-color:#e5e7eb;border-bottom-color:var(--border);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm)}.header .container{align-items:center;display:flex;height:120px;justify-content:space-between}.logo{height:108px;transition:transform .3s ease;width:auto}.logo:hover{transform:scale(1.05)}.nav{align-items:center;display:flex;gap:40px}.nav a{color:#6b7280;color:var(--text-secondary);font-size:15px;font-weight:500;position:relative;text-decoration:none;transition:color .2s ease}.nav a:hover{color:#1a1a1a;color:var(--text-primary)}.nav a:after{background:#3b82f6;background:var(--accent);bottom:-8px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav a:hover:after{width:100%}.nav-cta{background:#1a1a1a;background:var(--primary);border-radius:12px;border-radius:var(--radius);color:#fff!important;font-weight:600;padding:12px 24px;transition:all .3s ease}.nav-cta:hover{background:#2a2a2a;background:var(--primary-light);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.nav-cta:after{display:none}.menu-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:4px;padding:8px}.menu-toggle span{background:#1a1a1a;background:var(--text-primary);border-radius:2px;height:2px;transition:all .3s ease;width:24px}.hero{align-items:center;display:flex;min-height:100vh;overflow:hidden;padding:200px 0 120px;padding:200px 0 var(--section-padding);position:relative}.hero-background{bottom:0;left:0;position:absolute;right:0;top:0;z-index:-2}.hero-bg-image{height:100%;object-fit:cover;object-position:center;width:100%}.hero-overlay{background:linear-gradient(135deg,#000c,#00000080);bottom:0;left:0;position:absolute;right:0;top:0;z-index:-1}.hero-content{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr;position:relative;z-index:1}.badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #3b82f64d;border-radius:50px;color:#3b82f6;color:var(--accent);display:inline-flex;font-size:13px;font-weight:600;letter-spacing:.5px;margin-bottom:32px;padding:8px 16px;text-transform:uppercase}.hero-title{color:#fff;font-size:64px;font-weight:700;letter-spacing:-.02em;line-height:1.1;margin-bottom:24px;text-shadow:2px 2px 8px #000c,1px 1px 4px #0009}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#60a5fa,#93c5fd);-webkit-background-clip:text;background-clip:text;filter:brightness(1.2)}.hero-description{color:#ffffffe6;font-size:20px;line-height:1.7;margin-bottom:40px;max-width:500px;text-shadow:1px 1px 4px #000c,2px 2px 6px #0009}.hero-actions{display:flex;gap:16px}.hero-visual{position:relative}.hero-image-wrapper{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a;box-shadow:var(--shadow-xl);overflow:hidden;position:relative;transform:perspective(1000px) rotateY(-5deg) rotateX(5deg);transition:transform .6s cubic-bezier(.4,0,.2,1)}.hero-image-wrapper:hover{transform:perspective(1000px) rotateY(0deg) rotateX(0deg) scale(1.02)}.hero-image{display:block;height:auto;width:100%}.floating-badge{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;border:1px solid #3b82f633;border-radius:50px;color:#3b82f6;color:var(--accent);display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;position:absolute;right:24px;top:24px}.pulse{animation:pulse 2s infinite;background:#3b82f6;background:var(--accent);border-radius:50%;height:8px;width:8px}.btn-primary,.btn-primary-large,.btn-secondary,.btn-secondary-large{align-items:center;border:none;border-radius:12px;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-family:inherit;font-size:16px;font-weight:600;justify-content:center;padding:16px 32px;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary-large,.btn-secondary-large{font-size:18px;padding:20px 40px}.btn-primary,.btn-primary-large{background:#1a1a1a;background:var(--primary);color:#fff}.btn-primary-large:hover,.btn-primary:hover{background:#2a2a2a;background:var(--primary-light);box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-secondary,.btn-secondary-large{background:#0000;border:2px solid #1a1a1a;border:2px solid var(--primary);color:#1a1a1a;color:var(--primary)}.btn-secondary-large:hover,.btn-secondary:hover{background:#1a1a1a;background:var(--primary);color:#fff;transform:translateY(-2px)}.platform{background:#fff;background:var(--bg-primary);padding:120px 0;padding:var(--section-padding) 0}.section-header{margin-bottom:80px;text-align:center}.section-header h2{font-size:48px;font-weight:700;line-height:1.2;margin-bottom:24px}.section-header p{color:#6b7280;color:var(--text-secondary);font-size:20px;margin:0 auto;max-width:600px}.platform-showcase{grid-gap:60px;align-items:flex-start;display:grid;gap:60px;grid-template-columns:1fr 2fr}.platform-tabs{display:flex;flex-direction:column;gap:16px}.platform-tab{background:#f8fafc;background:var(--bg-secondary);border:2px solid #e5e7eb;border:2px solid var(--border);border-radius:12px;border-radius:var(--radius);cursor:pointer;padding:32px;text-align:left;transition:all .3s ease}.platform-tab.active,.platform-tab:hover{background:#3b82f60d;border-color:#3b82f6;border-color:var(--accent);transform:translateX(8px)}.platform-tab h3{color:#1a1a1a;color:var(--text-primary);font-size:20px;font-weight:600;margin-bottom:8px}.platform-tab p{color:#6b7280;color:var(--text-secondary);font-size:16px;line-height:1.6}.platform-display{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a;box-shadow:var(--shadow-xl);overflow:hidden;position:-webkit-sticky;position:sticky;top:120px}.platform-image{display:block;height:auto;width:100%}.technology{background:#f8fafc;background:var(--bg-secondary);padding:120px 0;padding:var(--section-padding) 0}.tech-content{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr}.tech-text h2{font-size:42px;font-weight:700;line-height:1.2;margin-bottom:24px}.tech-text>p{color:#6b7280;color:var(--text-secondary);font-size:18px;line-height:1.7;margin-bottom:48px}.tech-features{display:flex;flex-direction:column;gap:32px}.tech-feature{align-items:flex-start;display:flex;gap:20px}.tech-icon{align-items:center;display:flex;font-size:32px;height:48px;justify-content:center;min-width:48px}.tech-feature h4{color:#1a1a1a;color:var(--text-primary);font-size:18px;font-weight:600;margin-bottom:8px}.tech-feature p{color:#6b7280;color:var(--text-secondary);line-height:1.6}.tech-images{height:500px;position:relative}.tech-image-main{border-radius:16px;border-radius:var(--radius-lg);height:400px;width:100%}.tech-image-main,.tech-image-secondary{box-shadow:0 20px 25px -5px #0000001a;box-shadow:var(--shadow-xl);object-fit:cover}.tech-image-secondary{border:4px solid #fff;border-radius:12px;border-radius:var(--radius);bottom:0;height:150px;position:absolute;right:-20px;width:200px}.enterprise{background:#fff;background:var(--bg-primary);padding:120px 0;padding:var(--section-padding) 0}.enterprise-content{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr}.enterprise-image{border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a;box-shadow:var(--shadow-xl);height:auto;width:100%}.enterprise-text h2{font-size:42px;font-weight:700;line-height:1.2;margin-bottom:24px}.enterprise-text>p{color:#6b7280;color:var(--text-secondary);font-size:18px;line-height:1.7;margin-bottom:48px}.enterprise-stats{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(3,1fr);margin-bottom:48px}.stat-value{color:#1a1a1a;color:var(--text-primary);font-size:24px}.stat-label{color:#6b7280;color:var(--text-secondary)}.cta{color:#fff;overflow:hidden;padding:120px 0;padding:var(--section-padding) 0;position:relative;text-align:center}.cta-background{bottom:0;left:0;position:absolute;right:0;top:0;z-index:-2}.cta-bg-image{height:100%;object-fit:cover;object-position:center;width:100%}.cta-overlay{background:linear-gradient(135deg,#1a1a1ae6,#2a2a2acc);bottom:0;left:0;position:absolute;right:0;top:0;z-index:-1}.cta-content h2{color:#fff;font-size:48px;font-weight:700;line-height:1.2;margin-bottom:24px;text-shadow:2px 2px 8px #000c,1px 1px 4px #0009}.cta-content p{color:#ffffffe6;font-size:20px;margin-bottom:48px;margin-left:auto;margin-right:auto;max-width:600px;text-shadow:1px 1px 4px #000c}.cta-actions{display:flex;gap:24px;justify-content:center}.cta .btn-primary-large{background:#fff;color:#1a1a1a;color:var(--primary)}.cta .btn-secondary-large{background:#0000;border-color:#ffffff80;color:#fff}.cta .btn-secondary-large:hover{background:#ffffff1a;border-color:#fff;color:#fff}.footer{background:#1a1a1a;background:var(--primary);color:#fff;padding:60px 0 40px}.footer-content{align-items:center;display:flex;justify-content:space-between;margin-bottom:40px}.footer-brand p{font-size:16px;margin-top:16px;opacity:.7}.footer-logo{filter:brightness(0) invert(1);height:96px}.footer-links{display:flex;gap:32px}.footer-links a{color:#ffffffb3;text-decoration:none;transition:color .2s ease}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid #ffffff1a;padding-top:32px;text-align:center}.footer-bottom p{font-size:14px;opacity:.7}@media (max-width:1024px){:root{--section-padding:80px;--container-padding:20px}.hero-title{font-size:48px}.section-header h2{font-size:36px}.enterprise-text h2,.tech-text h2{font-size:32px}}@media (max-width:768px){.menu-toggle{display:flex}.nav{background:#fff;box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg);flex-direction:column;left:0;opacity:0;padding:32px;position:fixed;right:0;top:120px;transform:translateY(-100%);transition:all .3s cubic-bezier(.4,0,.2,1);visibility:hidden}.nav-open{opacity:1;transform:translateY(0);visibility:visible}.hero{padding:120px 0 80px;text-align:center}.hero-content{gap:60px;grid-template-columns:1fr}.hero-title{font-size:36px}.hero-description{font-size:18px;max-width:none}.hero-actions{align-items:center;flex-direction:column}.hero-image-wrapper{transform:none}.platform-showcase{gap:40px;grid-template-columns:1fr}.platform-display{order:-1;position:static}.enterprise-content,.tech-content{gap:60px;grid-template-columns:1fr;text-align:center}.tech-images{height:350px}.tech-image-main{height:300px}.tech-image-secondary{height:120px;right:-10px;width:150px}.enterprise-stats{gap:24px;grid-template-columns:1fr}.cta-actions{align-items:center;flex-direction:column}.footer-content{flex-direction:column;gap:32px;text-align:center}.footer-links{flex-direction:column;gap:16px}}@media (max-width:480px){:root{--section-padding:60px;--container-padding:16px}.hero-title,.section-header h2{font-size:28px}.cta-content h2{font-size:32px}.btn-primary,.btn-secondary{font-size:14px;padding:14px 24px}.btn-primary-large,.btn-secondary-large{font-size:16px;padding:16px 32px}.platform-tab{padding:24px}}.modal-overlay{background:#000000b3;opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1);visibility:hidden;z-index:2000}.modal-overlay.active{opacity:1;visibility:visible}.modal-content{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a;box-shadow:var(--shadow-xl);max-width:500px;transform:scale(.9) translateY(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}.modal-overlay.active .modal-content{transform:scale(1) translateY(0)}.modal-header{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border);padding:32px 32px 24px}.modal-header h2{color:#1a1a1a;color:var(--text-primary);font-size:28px;font-weight:700;margin-bottom:8px}.modal-header p{font-size:16px}.modal-close,.modal-header p{color:#6b7280;color:var(--text-secondary)}.modal-close{border-radius:12px;border-radius:var(--radius);padding:8px;position:absolute;right:24px;top:24px;transition:all .2s ease}.modal-close:hover{background:#f8fafc;background:var(--bg-secondary);color:#1a1a1a;color:var(--text-primary)}.modal-body{padding:32px}.form-group{margin-bottom:24px}.form-label{color:#1a1a1a;color:var(--text-primary);display:block;font-size:14px;font-weight:600;margin-bottom:8px}.form-label span{color:#9ca3af;color:var(--text-muted);font-size:13px;font-weight:400}.form-input,.form-textarea{background:#fff;border:2px solid #e5e7eb;border:2px solid var(--border);border-radius:12px;border-radius:var(--radius);color:#1a1a1a;color:var(--text-primary);font-family:inherit;font-size:16px;padding:12px 16px;transition:all .2s ease;width:100%}.form-input:focus,.form-textarea:focus{border-color:#3b82f6;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-input.error,.form-textarea.error{border-color:#ef4444}.form-error{color:#ef4444;display:none;font-size:13px;margin-top:4px}.form-error.show{display:block}.form-textarea{min-height:120px;resize:vertical}.form-actions{gap:16px;margin-top:32px}.form-actions button{flex:1 1}.error-message,.success-message{align-items:center;border-radius:12px;border-radius:var(--radius);display:flex;font-size:15px;font-weight:500;gap:12px;margin-bottom:24px;padding:16px}.success-message{background:#10b981;color:#fff}.error-message{background:#ef4444;color:#fff}.error-icon,.success-icon{font-size:20px}.facebook-oauth{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin:0 auto;max-width:600px;padding:2rem}.oauth-header{align-items:flex-start;border-bottom:2px solid #f0f2f5;display:flex;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem}.platform-icon{font-size:3rem;line-height:1}.platform-info h3{color:#1877f2;font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.platform-info p{color:#65676b;line-height:1.5;margin:0}.error-message{align-items:center;background:#fee;border:1px solid #fcc;color:#c41e3a;display:flex;gap:.5rem;margin-bottom:1.5rem}.error-icon{font-size:1.2rem}.store-info{background:#f8f9fa;border-radius:8px;margin-bottom:2rem;padding:1rem}.store-info h4{color:#1c1e21;margin:0 0 .5rem}.store-id{color:#65676b;font-family:monospace;font-size:.875rem;margin:0}.loading-spinner{padding:3rem}.spinner{border:4px solid #f3f3f3;height:40px;margin:0 auto 1rem;width:40px}.connection-status{margin-bottom:2rem}.not-connected{border:2px dashed #e4e6ea;border-radius:12px;padding:2rem;text-align:center}.status-icon{font-size:3rem;margin-bottom:1rem}.not-connected h4{color:#1c1e21;margin:0 0 .5rem}.not-connected>p{color:#65676b;margin-bottom:2rem}.permissions-info{background:#f8f9fa;border-radius:8px;margin:0 auto 2rem;max-width:400px;padding:1.5rem;text-align:left}.permissions-info h5{color:#1c1e21;font-size:1rem;margin:0 0 1rem}.permissions-info ul{list-style:none;margin:0;padding-left:0}.permissions-info li{align-items:center;border-bottom:1px solid #e4e6ea;display:flex;gap:.5rem;padding:.5rem 0}.permissions-info li:last-child{border-bottom:none}.connect-facebook-btn{align-items:center;background:#1877f2;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;justify-content:center;margin:0 auto;min-width:200px;padding:12px 24px;transition:background-color .2s}.connect-facebook-btn:hover:not(:disabled){background:#166fe5}.connect-facebook-btn:disabled{cursor:not-allowed;opacity:.7}.btn-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.facebook-icon{font-size:1.2rem}.connected-accounts{padding:1rem}.connected-accounts h4{color:#1c1e21;margin:0 0 1.5rem;text-align:center}.account-card{align-items:center;background:#f8f9fa;border:1px solid #e4e6ea;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1.5rem}.account-info{flex:1 1;gap:1rem}.account-avatar{font-size:2rem}.account-details h5{color:#1c1e21;font-size:1.1rem;margin:0 0 .5rem}.account-meta{display:flex;gap:1rem;margin:0 0 .5rem}.category{background:#e3f2fd;color:#1976d2}.category,.fan-count{border-radius:4px;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.fan-count{background:#e8f5e8;color:#2e7d32}.connection-date{color:#65676b;font-size:.875rem;margin:0}.account-actions{align-items:center;gap:1rem}.status-badge{border-radius:20px;padding:.25rem .75rem}.status-badge.active{background:#e8f5e8;color:#2e7d32}.status-badge.inactive{background:#fff3e0;color:#f57c00}.disconnect-btn{background:#f02849;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.disconnect-btn:hover{background:#d02040}.connect-additional-btn{background:#42a5f5;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:.9rem;margin:1.5rem auto 0;padding:10px 20px;transition:background-color .2s}.connect-additional-btn:hover:not(:disabled){background:#1e88e5}.oauth-footer{border-top:1px solid #e4e6ea;padding-top:1.5rem;text-align:center}.security-note{margin-bottom:1rem}.help-links{font-size:.875rem}.help-links a{color:#1877f2;text-decoration:none}.help-links a:hover{text-decoration:underline}.separator{color:#bcc0c4;margin:0 .5rem}@media (max-width:768px){.facebook-oauth{margin:0 1rem;padding:1.5rem}.oauth-header{text-align:center}.account-card,.oauth-header{flex-direction:column;gap:1rem}.account-card{align-items:flex-start}.account-actions{align-self:stretch;justify-content:space-between}.permissions-info{text-align:left}}.social-media-configuration{margin:0 auto;max-width:1200px;padding:20px}.page-header{margin-bottom:30px;text-align:center}.page-header h1{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:8px}.page-header p{color:#666;font-size:1.1rem;margin:0 auto;max-width:600px}.error-banner{border-radius:8px}.error-banner button{align-items:center;display:flex;font-size:20px;height:24px;justify-content:center;width:24px}.store-selector{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:15px;margin-bottom:30px;padding:20px}.store-selector label{color:#333;font-weight:600;white-space:nowrap}.available-platforms-section,.connected-accounts-section{margin-bottom:40px}.available-platforms-section h2,.connected-accounts-section h2{color:#333;font-size:1.8rem;font-weight:600;margin-bottom:20px}.no-accounts{background:#f8f9fa;border-radius:12px;color:#666;font-style:italic;padding:40px;text-align:center}.accounts-grid,.platforms-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.account-card,.platform-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #0000001a;padding:20px;transition:all .3s ease}.account-card:hover,.platform-card:hover{box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.account-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:15px}.account-info{align-items:center;display:flex;gap:12px}.platform-icon{font-size:24px}.account-info h3{color:#333;font-size:1.2rem;font-weight:600;margin:0}.account-info p{color:#666;font-size:.9rem;margin:4px 0 0}.account-actions{display:flex;gap:8px}.toggle-autopost{background:#f8f9fa;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:.85rem;padding:6px 12px;transition:all .2s}.toggle-autopost.active{background:#28a745;border-color:#28a745;color:#fff}.disconnect-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:6px 10px;transition:background .2s}.disconnect-btn:hover{background:#c82333}.account-stats{display:flex;gap:20px;margin-bottom:15px}.stat{align-items:center;display:flex;flex-direction:column}.stat-label{font-size:.85rem;margin-bottom:4px}.stat-value{font-weight:600}.status-active{color:#28a745}.status-inactive{color:#dc3545}.account-hashtags{margin-bottom:12px}.hashtags-label{color:#666;display:block;font-size:.9rem;margin-bottom:6px}.hashtags{display:flex;flex-wrap:wrap;gap:6px}.tracking-info{border-top:1px solid #eee;color:#666;display:flex;font-size:.85rem;gap:15px;margin-top:12px;padding-top:12px}.platform-card.connected{background:#f8fff8;border:2px solid #28a745}.platform-header{align-items:center;display:flex;gap:12px;margin-bottom:12px;position:relative}.platform-header h3{color:#333;flex:1 1;font-size:1.3rem;font-weight:600;margin:0}.connected-badge{background:#28a745;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;padding:4px 8px}.platform-description{color:#666;line-height:1.5;margin-bottom:15px}.platform-features{margin-bottom:20px}.platform-features h4{color:#333;font-size:1rem;font-weight:600;margin:0 0 8px}.platform-features ul{color:#666;margin:0;padding-left:20px}.platform-features li{margin-bottom:4px}.connect-btn{border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 20px;transition:all .2s;width:100%}.connect-btn:hover{opacity:.9;transform:translateY(-1px)}.connect-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.connection-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:100%}.modal-header h2{font-size:1.5rem}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:background .2s;width:30px}.close-btn:hover{background:#f0f0f0;color:#666}.setup-instructions{background:#f8f9fa;border-radius:8px;margin-bottom:25px;padding:20px}.setup-instructions h3{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 15px}.setup-instructions ol{color:#666;line-height:1.6;margin:0;padding-left:20px}.setup-instructions li{margin-bottom:8px}.connection-form{gap:20px}.connection-form,.form-group{display:flex;flex-direction:column}.form-group label{font-size:.95rem}.form-group input{border:1px solid #ddd;border-radius:8px;font-size:16px;padding:12px 15px;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.form-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px}.form-section h3{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 15px}.checkbox-group{align-items:center;flex-direction:row;gap:10px}.checkbox-group label{align-items:center;color:#555;cursor:pointer;display:flex;font-weight:500;gap:8px;margin:0}.checkbox-group input[type=checkbox]{margin:0;padding:0;width:auto}.modal-actions{gap:12px}.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:background .2s}.btn-secondary:hover{background:#5a6268}.btn-primary{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:background .2s}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-primary:disabled{background:#6c757d;cursor:not-allowed}.social-media-loading{align-items:center;color:#666;display:flex;font-size:1.1rem;justify-content:center;padding:60px}@media (max-width:768px){.social-media-configuration{padding:15px}.page-header h1{font-size:2rem}.accounts-grid,.platforms-grid{gap:15px;grid-template-columns:1fr}.store-selector{align-items:stretch;flex-direction:column;gap:10px}.connection-modal{margin:10px;max-height:calc(100vh - 20px)}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.social-media-calendar{margin:0 auto;max-width:1400px;padding:20px}.calendar-header-controls{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.calendar-header-controls h1{color:#333;font-size:2rem;font-weight:700;margin:0}.header-controls{flex-wrap:wrap}.view-controls{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;display:flex;overflow:hidden}.view-btn{background:none;border:none;color:#666;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s}.view-btn:hover{background:#e9ecef}.view-btn.active{background:#007bff;color:#fff}.create-post-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .2s}.create-post-btn:hover{background:#218838}.calendar-navigation{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px}.calendar-navigation button{align-items:center;background:#007bff;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:40px;justify-content:center;transition:background .2s;width:40px}.calendar-navigation button:hover{background:#0056b3}.calendar-navigation h2{color:#333;font-size:1.5rem;font-weight:600;margin:0}.timezone-info{color:#666;font-size:14px;font-weight:500}.calendar-grid{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.calendar-header{background:#f8f9fa;border-bottom:1px solid #dee2e6;display:grid;grid-template-columns:repeat(7,1fr)}.day-header{border-right:1px solid #dee2e6;color:#495057;font-weight:600;padding:15px 10px;text-align:center}.day-header:last-child{border-right:none}.calendar-body{grid-gap:1px;background:#dee2e6;display:grid;gap:1px;grid-template-columns:repeat(7,1fr)}.calendar-day{background:#fff;cursor:pointer;display:flex;flex-direction:column;min-height:120px;padding:8px;position:relative;transition:background-color .2s}.calendar-day:hover{background:#f8f9fa}.calendar-day.today{background:#e3f2fd}.calendar-day.today:hover{background:#bbdefb}.calendar-day.other-month{background:#fafafa;color:#ccc}.calendar-day.weekend{background:#fcfcfc}.day-number{color:inherit;font-size:14px;font-weight:600;margin-bottom:5px}.day-events{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow:hidden}.calendar-event{align-items:center;background:#007bff;border-radius:3px;color:#fff;cursor:pointer;display:flex;font-size:11px;font-weight:500;justify-content:space-between;min-height:16px;padding:2px 6px;position:relative;transition:opacity .2s,transform .1s}.calendar-event:hover{opacity:.9;transform:translateY(-1px)}.event-title{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-time{font-size:10px;margin-left:4px;opacity:.8}.recurring-indicator{font-size:10px;margin-left:2px}.more-events{color:#666;font-size:10px;font-style:italic;padding:2px;text-align:center}.calendar-legend{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-top:20px;padding:15px}.calendar-legend h3{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 10px}.legend-items{display:flex;flex-wrap:wrap;gap:15px}.legend-item{color:#666;font-size:14px;gap:6px}.legend-color{border-radius:2px;height:12px;width:12px}.post-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:100%}.platform-checkboxes{display:flex;flex-wrap:wrap;gap:15px;margin-top:8px}.checkbox-label{gap:6px}.recurring-options{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-top:10px;padding:15px}.interval-label{color:#666;font-size:14px;margin-left:8px}.delete-btn{background:#dc3545!important;color:#fff!important}.delete-btn:hover{background:#c82333!important}.save-btn{background:#007bff!important;color:#fff!important}.save-btn:hover:not(:disabled){background:#0056b3!important}.save-btn:disabled{background:#6c757d!important}.calendar-loading{align-items:center;color:#666;display:flex;font-size:1.1rem;justify-content:center;padding:60px}@media (max-width:1200px){.calendar-day{min-height:100px}.calendar-event{font-size:10px}}@media (max-width:768px){.social-media-calendar{padding:15px}.calendar-header-controls{align-items:stretch;flex-direction:column}.header-controls{justify-content:space-between}.calendar-day{min-height:80px;padding:4px}.day-events{gap:1px}.calendar-event{font-size:9px;min-height:14px;padding:1px 4px}.event-time{display:none}.day-number{font-size:12px}.post-modal{margin:10px;max-height:calc(100vh - 20px)}.form-row{flex-direction:column;gap:10px}.platform-checkboxes{flex-direction:column;gap:8px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.legend-items{justify-content:center}}@media (max-width:480px){.calendar-day{min-height:60px;padding:2px}.day-number{font-size:11px}.calendar-event{font-size:8px;min-height:12px;padding:1px 3px}.recurring-indicator{display:none}}.social-media-post-manager{margin:0 auto;max-width:1400px;padding:20px}.manager-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.manager-header h1{color:#333;font-size:2rem;font-weight:700;margin:0}.post-now-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .2s}.post-now-btn:hover{background:#218838}.filter-group label{white-space:nowrap}.posts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.no-posts{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;grid-column:1/-1;padding:60px 20px;text-align:center}.no-posts p{color:#666;font-size:1.1rem;margin-bottom:20px}.no-posts button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px}.post-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:15px;padding:20px;transition:all .3s ease}.post-card:hover{box-shadow:0 4px 15px #00000026;transform:translateY(-2px)}.post-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.post-title{color:#333;flex:1 1;font-size:1.1rem;font-weight:600;line-height:1.3}.post-meta{align-items:center;display:flex;flex-shrink:0;gap:8px}.status-badge{text-transform:capitalize}.platform-icons{display:flex;gap:4px}.platform-icons span{cursor:help;font-size:16px}.post-content{flex:1 1}.post-content p{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#555;display:-webkit-box;line-height:1.5;margin:0 0 10px;overflow:hidden}.post-hashtags{display:flex;flex-wrap:wrap;gap:6px}.hashtag{background:#e9ecef;border-radius:12px;color:#495057;font-size:.8rem;font-weight:500;padding:4px 8px}.post-media{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));max-height:100px}.post-media img{border-radius:6px;cursor:pointer;height:80px;object-fit:cover;width:100%}.more-media{align-items:center;background:#f8f9fa;border-radius:6px;font-weight:600;height:80px;justify-content:center}.more-media,.post-details{color:#666;display:flex;font-size:.9rem}.post-details{flex-wrap:wrap;gap:12px}.boost-info,.offer-info,.schedule-info{align-items:center;display:flex;font-weight:500;gap:4px}.post-stats{grid-gap:10px;background:#f8f9fa;border-radius:6px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));padding:12px}.stat{text-align:center}.stat-label{display:block;font-size:.75rem;margin-bottom:2px}.stat-value{display:block;font-size:1.1rem}.failure-info{align-items:center;background:#ffe6e6;border-radius:6px;display:flex;gap:10px;justify-content:space-between;padding:10px}.failure-reason{color:#d00;flex:1 1;font-size:.9rem}.retry-btn{background:#ffc107;border-radius:4px;color:#333;font-size:.8rem;padding:6px 12px}.post-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:auto}.delete-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:6px 12px;transition:background .2s}.delete-btn:hover{background:#c82333}.post-manager-loading{align-items:center;color:#666;display:flex;font-size:1.1rem;justify-content:center;padding:60px}.post-now-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:100%}.template-section{border-bottom:1px solid #eee;margin-bottom:20px;padding-bottom:20px}.template-section label{color:#333;display:block;font-weight:600;margin-bottom:10px}.template-buttons{display:flex;flex-wrap:wrap;gap:8px}.template-btn{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s}.template-btn:hover{background:#e9ecef;border-color:#adb5bd}.selected-media{display:flex;flex-direction:column;gap:6px;margin-top:10px}.media-item{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;font-size:.9rem;justify-content:space-between;padding:8px 12px}.media-item button{background:#dc3545;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:12px;height:20px;width:20px}.post-btn{background:#28a745!important;color:#fff!important}.post-btn:hover:not(:disabled){background:#218838!important}.post-btn:disabled{background:#6c757d!important;cursor:not-allowed;opacity:.6}@media (max-width:768px){.social-media-post-manager{padding:15px}.manager-header{align-items:stretch;flex-direction:column}.posts-grid{gap:15px;grid-template-columns:1fr}.filters-section{align-items:stretch;flex-direction:column;gap:15px}.filter-group{justify-content:space-between}.results-count{margin-left:0;text-align:center}.post-now-modal{margin:10px;max-height:calc(100vh - 20px)}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.post-details{flex-direction:column;gap:8px}.post-stats{grid-template-columns:repeat(2,1fr)}}.discount-code-bank{margin:0 auto;max-width:1400px;padding:20px}.bank-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px}.bank-header h1{color:#333;font-size:2rem;font-weight:700;margin:0}.header-actions{flex-wrap:wrap;gap:15px}.store-selector select{background:#fff;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:200px;padding:8px 12px}.generate-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .2s}.generate-btn:hover{background:#0056b3}.export-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:10px 20px;transition:background .2s}.export-btn:hover:not(:disabled){background:#218838}.export-btn:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.error-banner,.filters-section{margin-bottom:20px}.filters-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;flex-wrap:wrap;gap:20px;padding:20px}.search-group{flex:1 1;min-width:250px}.search-input{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 15px;transition:border-color .2s,box-shadow .2s;width:100%}.search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.filter-group{align-items:center;gap:8px;white-space:nowrap}.filter-group label{color:#333;font-weight:600}.filter-group select{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:6px 10px}.results-count{color:#666;font-weight:500;margin-left:auto}.codes-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.no-codes{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;grid-column:1/-1;padding:60px 20px;text-align:center}.no-codes p{color:#666;font-size:1.1rem;margin-bottom:20px}.no-codes button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px}.code-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;gap:15px;padding:20px;transition:all .3s ease}.code-card:hover{box-shadow:0 4px 15px #00000026;transform:translateY(-2px)}.code-header{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.code-info{flex:1 1}.code-display{color:#333;font-family:Monaco,Menlo,Consolas,monospace;font-size:1.3rem;font-weight:700;letter-spacing:1px;margin-bottom:5px;word-break:break-all}.discount-info{color:#666;font-size:.9rem;font-weight:500}.status-badge{flex-shrink:0;padding:4px 8px}.status-badge.active{background-color:#28a745}.status-badge.inactive{background-color:#6c757d}.status-badge.used{background-color:#ffc107;color:#333}.status-badge.expired{background-color:#dc3545}.code-details{display:flex;flex-direction:column;gap:8px}.detail-row{align-items:center;display:flex;font-size:.9rem;justify-content:space-between}.detail-label{color:#666;font-weight:500}.detail-value{color:#333;flex:1 1;font-weight:600;margin-left:10px;text-align:right}.usage-progress{align-items:center;display:flex;flex:1 1;gap:8px;justify-content:flex-end}.progress-bar{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden;width:60px}.progress-fill{background:linear-gradient(90deg,#28a745,#ffc107 70%,#dc3545);height:100%;transition:width .3s ease}.usage-text{color:#666;font-size:.8rem;font-weight:600;white-space:nowrap}.code-actions{border-top:1px solid #f0f0f0;display:flex;gap:8px;justify-content:flex-end;margin-top:auto;padding-top:10px}.copy-btn,.deactivate-btn{background:none;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:6px 10px;transition:all .2s}.copy-btn:hover{background:#f8f9fa;border-color:#007bff}.deactivate-btn:hover{background:#f8d7da;border-color:#dc3545;color:#dc3545}.discount-bank-loading{align-items:center;color:#666;display:flex;font-size:1.1rem;justify-content:center;padding:60px}.generate-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:100%}.modal-header{padding:20px 25px}.modal-header h2{font-size:1.4rem}.modal-header button{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:background .2s;width:30px}.modal-header button:hover{background:#f0f0f0;color:#666}.modal-content{flex:1 1;padding:25px}.modal-actions{border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end;padding:20px 25px}.modal-actions button{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:background .2s}.modal-actions button:first-child{background:#6c757d;color:#fff}.modal-actions button:first-child:hover{background:#5a6268}.generate-action-btn{background:#007bff!important;color:#fff!important}.generate-action-btn:hover:not(:disabled){background:#0056b3!important}.generate-action-btn:disabled{background:#6c757d!important;cursor:not-allowed;opacity:.6}@media (max-width:768px){.discount-code-bank{padding:15px}.bank-header{align-items:stretch;flex-direction:column}.codes-grid{gap:15px;grid-template-columns:1fr}.filters-section{align-items:stretch;flex-direction:column;gap:15px}.filter-group{justify-content:space-between}.results-count{margin-left:0;text-align:center}.generate-modal{margin:10px;max-height:calc(100vh - 20px)}.form-row{flex-direction:column;gap:10px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.code-display{font-size:1.1rem;word-break:break-all}.detail-row{align-items:stretch;flex-direction:column;gap:4px}.detail-value{margin-left:0;text-align:left}.usage-progress{justify-content:flex-start}}.offer-distribution{margin:0 auto;max-width:1200px;padding:20px}.distribution-header{margin-bottom:30px;text-align:center}.distribution-header h1{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:8px}.distribution-header p{color:#666;font-size:1.1rem;margin:0 auto;max-width:600px}.error-banner,.success-banner{align-items:center;border-radius:6px;display:flex;justify-content:space-between;margin-bottom:20px;padding:12px 16px}.success-banner{background:#d4edda;border:1px solid #c3e6cb}.success-banner span{color:#155724;font-weight:500}.error-banner button,.success-banner button{background:none;border:none;cursor:pointer;font-size:18px;height:20px;padding:0;width:20px}.warning-banner{background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-bottom:20px;padding:12px 16px}.warning-banner span{color:#856404;font-weight:500}.distribution-form{display:flex;flex-direction:column;gap:30px}.form-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.form-section h2{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.3rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.form-group label{font-weight:600}.form-group input,.form-group select,.form-group textarea{border-radius:6px;padding:10px 12px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{box-shadow:0 0 0 2px #007bff40}.form-group textarea{min-height:100px}.form-row{display:flex}.form-row .form-group{flex:1 1}.checkbox-label{align-items:center;border-radius:4px;color:#555;cursor:pointer;display:flex;font-weight:500;gap:8px;padding:8px;transition:background .2s}.checkbox-label:hover{background:#f8f9fa}.checkbox-label input[type=checkbox]{margin:0;width:auto}.template-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.template-card{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;cursor:pointer;padding:15px;text-align:left;transition:all .2s}.template-card:hover{background:#e9ecef;border-color:#007bff;transform:translateY(-1px)}.template-name{color:#333;font-weight:600;margin-bottom:5px}.template-category{color:#666;font-size:.85rem;text-transform:capitalize}.platform-selection{display:flex;flex-direction:column;gap:8px;margin-top:8px}.platform-selection .checkbox-label{background:#fff;border:1px solid #e9ecef;border-radius:6px;justify-content:flex-start;margin:0;padding:12px}.platform-selection .checkbox-label:hover{background:#f8f9fa;border-color:#007bff}.platform-selection .checkbox-label span{font-size:16px}.offer-preview{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.offer-preview h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.3rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.preview-content{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:20px}.preview-title{color:#333;font-size:1.2rem;font-weight:700;margin-bottom:10px}.preview-text{color:#555;line-height:1.6;margin-bottom:15px;white-space:pre-line}.preview-media{margin-top:15px}.preview-media img{border-radius:6px;height:200px;max-width:300px;object-fit:cover}.distribution-actions{display:flex;justify-content:center;padding:30px}.distribute-btn{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:8px;box-shadow:0 4px 15px #007bff4d;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:15px 40px;transition:all .3s ease}.distribute-btn:hover:not(:disabled){box-shadow:0 6px 20px #007bff66;transform:translateY(-2px)}.distribute-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.offer-distribution{padding:15px}.distribution-header h1{font-size:2rem}.form-row{flex-direction:column;gap:15px}.template-grid{gap:10px;grid-template-columns:1fr}.form-section{padding:20px}.platform-selection .checkbox-label{padding:10px}.preview-media img{height:150px;max-width:100%}.distribute-btn{padding:15px 20px;width:100%}}@media (max-width:480px){.offer-distribution{padding:10px}.distribution-header{margin-bottom:20px}.distribution-header h1{font-size:1.8rem}.form-section{padding:15px}.form-section h2{font-size:1.1rem}.template-card{padding:12px}.offer-preview,.preview-content{padding:15px}}.google-business-container{margin:0 auto;max-width:1200px;padding:20px}.google-business-loading{align-items:center;color:#666;display:flex;font-size:1.1rem;justify-content:center;padding:80px}.alert{align-items:center;border-radius:8px;display:flex;gap:10px}.alert button{background:none;border:none;cursor:pointer;font-size:20px;height:20px;margin-left:auto;opacity:.7;padding:0;width:20px}.alert button:hover{opacity:1}.alert-error{background:#fee;border:1px solid #fcc;color:#c00}.alert-success{background:#efe;border:1px solid #cfc;color:#060}.google-business-header{margin-bottom:30px}.google-business-header h2{color:#333;font-size:1.8rem;margin:0 0 8px}.google-business-header p{color:#666;font-size:1rem;margin:0}.google-business-nav{background:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:4px;margin-bottom:20px;padding:4px}.google-business-nav .nav-btn{align-items:center;background:none;border:none;border-radius:6px;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.google-business-nav .nav-btn:hover{background:#f5f5f5;color:#333}.google-business-nav .nav-btn.active{background:#007bff;color:#fff}.google-business-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.pixels-section h3{color:#333;font-size:1.4rem;margin:0 0 10px}.section-description{color:#666;font-size:.95rem;margin-bottom:30px}.pixels-form{max-width:600px}.form-group label{color:#333;margin-bottom:6px}.form-group input,.form-group textarea{border:1px solid #ddd;border-radius:6px;font-size:14px;padding:10px 14px;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.form-group small{color:#888;display:block;font-size:12px;margin-top:4px}.form-actions{border-top:1px solid #eee;margin-top:30px;padding-top:20px}.save-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:background .2s}.save-btn:hover:not(:disabled){background:#0056b3}.save-btn:disabled{cursor:not-allowed;opacity:.6}.google-connect-prompt{padding:60px 20px;text-align:center}.google-icon{color:#4285f4;font-size:48px;margin-bottom:20px}.google-connect-prompt h4{color:#333;font-size:1.3rem;margin:0 0 10px}.google-connect-prompt p{color:#666;margin-bottom:30px;margin-left:auto;margin-right:auto;max-width:400px}.google-connect-btn{align-items:center;background:#4285f4;border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:500;gap:10px;padding:12px 30px;transition:background .2s}.google-connect-btn:hover{background:#3367d6}.connected-status{align-items:center;background:#e8f5e9;border:1px solid #c8e6c9;border-radius:6px;color:#2e7d32;display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin-bottom:30px;padding:10px 16px}.form-section{margin-bottom:40px}.form-section h4{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.1rem;margin:0 0 20px;padding-bottom:10px}.form-row{grid-gap:15px;gap:15px;grid-template-columns:2fr 1fr 1fr}.hours-grid{display:flex;flex-direction:column;gap:12px}.hours-row{grid-gap:10px;align-items:center;background:#f8f8f8;border-radius:6px;display:grid;gap:10px;grid-template-columns:100px auto 80px 20px 80px;padding:10px}.day-name{color:#333;font-weight:500}.closed-toggle{align-items:center;color:#666;cursor:pointer;display:flex;font-size:14px;gap:6px}.closed-toggle input[type=checkbox]{margin:0;width:auto}.hours-row input[type=time]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:6px 10px}.menu-items-grid{grid-gap:10px;background:#f8f8f8;border-radius:6px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));max-height:300px;overflow-y:auto;padding:10px}.menu-item-checkbox{align-items:center;background:#fff;border-radius:4px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px}.menu-item-checkbox:hover{background:#f0f0f0}.menu-item-checkbox input[type=checkbox]{margin:0;width:auto}.analytics-dashboard{margin-top:20px}.analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:40px}.analytics-card{align-items:center;background:#f8f9fa;border-radius:12px;display:flex;gap:20px;padding:25px;transition:transform .2s,box-shadow .2s}.analytics-card:hover{box-shadow:0 4px 15px #0000001a;transform:translateY(-2px)}.analytics-icon{align-items:center;background:#007bff;border-radius:10px;color:#fff;display:flex;flex-shrink:0;font-size:20px;height:50px;justify-content:center;width:50px}.analytics-content{flex:1 1}.analytics-value{color:#333;font-size:1.8rem;font-weight:700;line-height:1;margin-bottom:4px}.analytics-label{color:#666;font-size:.9rem;font-weight:600;margin-bottom:2px}.analytics-trend{color:#999;font-size:.8rem}.analytics-insights{margin-top:40px}.analytics-insights h4{color:#333;font-size:1.2rem;margin:0 0 20px}.insights-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.insight-card{background:#f8f9fa;border-radius:8px;display:flex;gap:15px;padding:20px}.insight-card i{color:#007bff;flex-shrink:0;font-size:24px}.insight-content h5{color:#333;font-size:1rem;margin:0 0 8px}.insight-content p{color:#666;font-size:.9rem;line-height:1.5;margin:0}.loading-analytics{color:#666;padding:60px;text-align:center}.loading-analytics i{color:#007bff;font-size:32px;margin-bottom:15px}@media (max-width:768px){.google-business-nav{flex-direction:column}.form-row{grid-template-columns:1fr}.hours-row{grid-template-areas:"day toggle" "day times";grid-template-columns:80px 1fr}.day-name{grid-area:day}.closed-toggle{grid-area:toggle}.hours-row input[type=time],.hours-row span{grid-area:times}.analytics-grid,.insights-grid{grid-template-columns:1fr}}.social-media-dashboard{background:#f8f9fa;min-height:100vh}.dashboard-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:40px 20px;text-align:center}.dashboard-header h1{font-size:2.5rem;font-weight:700;margin:0 0 10px}.dashboard-header p{font-size:1.1rem;margin:0 auto;max-width:600px;opacity:.9}.error-banner{align-items:center;background:#fee;border:1px solid #f88;border-radius:6px;display:flex;justify-content:space-between;margin:20px;padding:12px 16px}.error-banner span{color:#d00;font-weight:500}.error-banner button{background:none;border:none;color:#d00;cursor:pointer;font-size:18px;height:20px;padding:0;width:20px}.dashboard-nav{-ms-overflow-style:none;background:#fff;border-bottom:1px solid #e9ecef;display:flex;overflow-x:auto;padding:0 20px;scrollbar-width:none}.dashboard-nav::-webkit-scrollbar{display:none}.nav-btn{align-items:center;background:none;border-bottom:3px solid #0000;color:#666;display:flex;font-size:14px;font-weight:600;gap:8px;white-space:nowrap}.nav-btn:hover{color:#007bff}.nav-btn.active{border-bottom-color:#007bff;color:#007bff}.dashboard-content{padding:0}.overview-tab{margin:0 auto;max-width:1400px;padding:30px 20px}.store-selector-section{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:15px;margin-bottom:30px;padding:20px}.store-selector-section label{color:#333;font-weight:600;white-space:nowrap}.store-dropdown{background:#fff;border:1px solid #ddd;border-radius:8px;flex:1 1;font-size:16px;padding:10px 15px}.store-dropdown:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:40px}.stat-card{align-items:center;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:20px;overflow:hidden;padding:25px;position:relative;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 15px #00000026;transform:translateY(-2px)}.stat-card:before{content:"";height:4px;left:0;position:absolute;right:0;top:0}.stat-card.posts:before,.stat-card:before{background:linear-gradient(90deg,#667eea,#764ba2)}.stat-card.impressions:before{background:linear-gradient(90deg,#f093fb,#f5576c)}.stat-card.engagements:before{background:linear-gradient(90deg,#4facfe,#00f2fe)}.stat-card.clicks:before{background:linear-gradient(90deg,#43e97b,#38f9d7)}.stat-card.campaigns:before{background:linear-gradient(90deg,#fa709a,#fee140)}.stat-card.codes:before{background:linear-gradient(90deg,#a8edea,#fed6e3)}.stat-card.accounts:before{background:linear-gradient(90deg,#d299c2,#fef9d7)}.stat-card.revenue:before{background:linear-gradient(90deg,#89f7fe,#66a6ff)}.stat-icon{font-size:2.5rem;opacity:.8}.stat-content{flex:1 1}.stat-value{font-size:2rem}.stat-label{color:#666;font-size:1rem;font-weight:600;margin-bottom:3px}.stat-sub{color:#999;font-size:.85rem}.overview-sections{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.quick-actions-section,.recent-activity-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:25px}.quick-actions-section h3,.recent-activity-section h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.3rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.quick-actions{grid-gap:15px;display:grid;grid-template-columns:1fr 1fr}.quick-action-btn{align-items:center;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:8px;color:#495057;cursor:pointer;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:8px;padding:20px;text-align:center;transition:all .3s ease}.quick-action-btn:hover{border-color:#007bff;box-shadow:0 4px 12px #00000026;color:#007bff;transform:translateY(-2px)}.quick-action-btn.post{background:linear-gradient(135deg,#e3f2fd,#bbdefb)}.quick-action-btn.offer{background:linear-gradient(135deg,#fff3e0,#ffcc02)}.quick-action-btn.codes{background:linear-gradient(135deg,#f3e5f5,#e1bee7)}.quick-action-btn.calendar{background:linear-gradient(135deg,#e8f5e8,#c8e6c9)}.activity-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto}.no-activity{color:#666;font-style:italic;padding:40px 20px;text-align:center}.activity-item{align-items:flex-start;background:#f8f9fa;border-left:4px solid #dee2e6;border-radius:8px;display:flex;gap:15px;padding:15px;transition:all .2s ease}.activity-item:hover{background:#e9ecef;border-left-color:#007bff}.activity-icon{font-size:1.5rem;margin-top:2px;opacity:.8}.activity-content{flex:1 1}.activity-title{color:#333;font-weight:600;margin-bottom:5px}.activity-description{color:#666;font-size:.9rem;line-height:1.4;margin-bottom:8px}.activity-meta{align-items:center;color:#999;display:flex;font-size:.8rem;gap:10px}.activity-platform{align-items:center;display:flex;gap:4px;text-transform:capitalize}.social-icon{font-size:14px;text-align:center;width:16px}.activity-status{border-radius:12px;font-size:.75rem;font-weight:600;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.activity-status.published{background:#d4edda;color:#155724}.activity-status.scheduled{background:#fff3cd;color:#856404}.activity-status.active{background:#cce5ff;color:#004085}.activity-status.failed{background:#f8d7da;color:#721c24}.dashboard-loading{align-items:center;background:#f8f9fa;color:#666;display:flex;font-size:1.2rem;justify-content:center;min-height:100vh;padding:80px}@media (max-width:1024px){.overview-sections{gap:20px;grid-template-columns:1fr}.stats-grid{gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.quick-actions{grid-template-columns:1fr}}@media (max-width:768px){.dashboard-header{padding:30px 15px}.dashboard-header h1{font-size:2rem}.overview-tab{padding:20px 15px}.stats-grid{gap:15px;grid-template-columns:1fr}.stat-card{gap:15px;padding:20px}.stat-value{font-size:1.8rem}.stat-icon{font-size:2rem}.quick-actions-section,.recent-activity-section{padding:20px}.quick-action-btn{font-size:13px;padding:15px}.store-selector-section{align-items:stretch;flex-direction:column;gap:10px}.dashboard-nav{padding:0 15px}.nav-btn{font-size:13px;padding:12px 15px}.activity-item{gap:12px;padding:12px}.activity-icon{font-size:1.3rem}.activity-meta{align-items:flex-start;flex-direction:column;gap:5px}}@media (max-width:480px){.dashboard-header{padding:25px 10px}.dashboard-header h1{font-size:1.8rem}.overview-tab{padding:15px 10px}.stats-grid{gap:10px}.stat-card{gap:12px;padding:15px}.stat-value{font-size:1.5rem}.stat-icon{font-size:1.8rem}.quick-actions-section,.recent-activity-section{padding:15px}.activity-list{max-height:300px}.activity-item{gap:10px;padding:10px}}.hidden{display:none!important}.menu-board-configurator{background:var(--surface-primary);color:var(--text-primary);display:flex;flex-direction:column;height:100vh}.menu-board-configurator select option{background-color:#fff!important;color:#212529!important}.configurator-header{align-items:center;background:var(--surface-secondary);border-bottom:1px solid var(--border-primary);box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:1rem 2rem}.configurator-header h1{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.header-actions{gap:1rem}.header-actions select{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-primary);min-width:200px;padding:.5rem 1rem}.header-actions select option{background-color:#fff;color:#212529;padding:.5rem}.configurator-filters{background:var(--surface-secondary);border-bottom:1px solid var(--border-primary);padding:1rem}.filters-section{align-items:center;display:flex;gap:2rem}.filters-section label{align-items:center;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.5rem}.filters-section select{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-primary);cursor:pointer;min-width:200px;padding:.5rem 1rem}.filters-section select:focus,.filters-section select:hover{border-color:var(--accent-primary)}.filters-section select:focus{box-shadow:0 0 0 3px #3b82f61a;outline:none}.filters-section select option{background-color:#fff;color:#212529;padding:.5rem}.filters-section select option:hover{background-color:#f8f9fa}.filters-section select option:checked{background-color:#e9ecef;font-weight:600}.configurator-body{display:flex;flex:1 1;overflow:hidden}.configurator-sidebar{background:var(--surface-secondary);border-right:1px solid var(--border-primary);display:flex;flex-direction:column;overflow-y:auto;width:320px}.sidebar-section{border-bottom:1px solid var(--border-primary);padding:1.5rem}.sidebar-section:last-child{border-bottom:none}.sidebar-section h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;margin:0 0 1rem}.sidebar-filters{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.category-select,.search-input{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:6px;color:var(--text-primary);font-size:.9rem;padding:.5rem .75rem}.category-select:focus,.search-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #3b82f61a;outline:none}.menu-items-list{display:flex;flex-direction:column;gap:.5rem;max-height:400px;overflow-y:auto}.draggable-menu-item{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:8px;cursor:grab;display:flex;gap:.75rem;padding:.75rem;transition:all .2s ease}.draggable-menu-item:hover{background:var(--surface-tertiary);border-color:var(--accent-primary);box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.draggable-menu-item.dragging{cursor:grabbing;opacity:.5;transform:rotate(2deg)}.menu-item-image{align-items:center;background:var(--surface-tertiary);border-radius:6px;display:flex;height:48px;justify-content:center;overflow:hidden;width:48px}.menu-item-image img{height:100%;object-fit:cover;width:100%}.menu-item-placeholder{font-size:1.5rem;opacity:.6}.menu-item-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.menu-item-name{color:var(--text-primary);font-size:.9rem;font-weight:600;line-height:1.2}.menu-item-category{color:var(--text-secondary);font-size:.8rem}.menu-item-price{color:var(--accent-primary);font-size:.9rem;font-weight:600}.media-items{display:flex;flex-direction:column;gap:.5rem}.draggable-media-item{align-items:center;background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:8px;cursor:grab;display:flex;gap:.75rem;padding:.75rem;transition:all .2s ease}.draggable-media-item:hover{background:var(--surface-tertiary);border-color:var(--accent-primary)}.media-icon{font-size:1.5rem;text-align:center;width:32px}.media-label{color:var(--text-primary);font-size:.9rem;font-weight:500}.configurator-main{background:var(--surface-primary);overflow:auto;padding:2rem;position:relative}.board-info{margin-bottom:2rem}.board-info h2{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.board-details{align-items:center;display:flex;gap:1rem}.board-grid,.board-ratio,.board-type{background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:20px;color:var(--text-secondary);font-size:.8rem;font-weight:500;padding:.25rem .75rem}.grid-container{background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:12px;box-shadow:var(--shadow-lg);margin:0 auto;max-width:1200px;padding:1rem}.menu-board-grid{background:var(--surface-primary);border-radius:8px;display:grid;min-height:600px;overflow:hidden}.grid-cell{align-items:center;background:var(--surface-secondary);border:2px dashed var(--border-primary);border-radius:6px;cursor:pointer;display:flex;justify-content:center;min-height:120px;position:relative;transition:all .2s ease}.grid-cell.empty{background:var(--surface-tertiary);opacity:.8}.grid-cell.can-drop{background:#3b82f60d;border-color:var(--accent-primary)}.grid-cell.drag-over{background:#3b82f61a;border-color:var(--accent-primary);box-shadow:0 4px 16px #3b82f633;transform:scale(1.02)}.grid-cell.has-item{background:var(--surface-primary);border-color:var(--border-primary);border-style:solid}.grid-cell.has-item:hover{border-color:var(--accent-primary);box-shadow:0 2px 8px #0000001a}.cell-drop-zone{align-items:center;color:var(--text-tertiary);display:flex;font-size:.9rem;font-weight:500;height:100%;justify-content:center;text-align:center;width:100%}.drop-hint{opacity:0;transition:opacity .2s ease}.grid-cell.can-drop .drop-hint,.grid-cell.drag-over .drop-hint{opacity:1}.menu-item-content{display:flex;flex-direction:column;height:100%;justify-content:center;overflow:hidden;padding:.75rem;text-align:center;width:100%}.menu-item-content.name-only .item-name{color:var(--text-primary);font-size:1.1rem;font-weight:600}.menu-item-content.name-price{justify-content:space-between}.menu-item-content.name-price .item-name{color:var(--text-primary);font-size:1rem;font-weight:600}.menu-item-content.name-price .item-price{color:var(--accent-primary);font-size:1.2rem;font-weight:700}.menu-item-content.name-desc .item-name{color:var(--text-primary);font-size:1rem;font-weight:600;margin-bottom:.5rem}.menu-item-content.name-desc .item-description{color:var(--text-secondary);font-size:.8rem;line-height:1.3}.menu-item-content.name-desc-price{gap:.5rem;justify-content:space-between}.menu-item-content.name-desc-price .item-name{color:var(--text-primary);font-size:1rem;font-weight:600}.menu-item-content.name-desc-price .item-description{color:var(--text-secondary);flex:1 1;font-size:.8rem;line-height:1.3}.menu-item-content.name-desc-price .item-price{color:var(--accent-primary);font-size:1.1rem;font-weight:700}.menu-item-content.name-desc-price-photo{align-items:center;flex-direction:row;gap:.75rem}.menu-item-content.name-desc-price-photo .item-photo{border-radius:6px;flex-shrink:0;height:60px;overflow:hidden;width:60px}.menu-item-content.name-desc-price-photo .item-photo img{height:100%;object-fit:cover;width:100%}.menu-item-content.name-desc-price-photo .photo-placeholder{align-items:center;background:var(--surface-tertiary);display:flex;font-size:1.5rem;height:100%;justify-content:center;opacity:.6;width:100%}.menu-item-content.name-desc-price-photo .item-text{display:flex;flex:1 1;flex-direction:column;gap:.25rem;text-align:left}.menu-item-content.large-photo-price{padding:0;position:relative}.menu-item-content.large-photo-price .item-large-photo{border-radius:6px;height:100%;overflow:hidden;width:100%}.menu-item-content.large-photo-price .item-large-photo img{height:100%;object-fit:cover;width:100%}.menu-item-content.large-photo-price .photo-placeholder.large{align-items:center;background:var(--surface-tertiary);display:flex;font-size:3rem;height:100%;justify-content:center;opacity:.6;width:100%}.menu-item-content.large-photo-price .item-overlay{align-items:end;background:linear-gradient(#0000,#000c);bottom:0;color:#fff;display:flex;justify-content:space-between;left:0;padding:1rem .75rem .75rem;position:absolute;right:0}.menu-item-content.large-photo-price .item-overlay .item-name{font-size:1rem;font-weight:600}.menu-item-content.large-photo-price .item-overlay .item-price{color:gold;font-size:1.2rem;font-weight:700}.media-placeholder{align-items:center;color:var(--text-tertiary);display:flex;flex-direction:column;gap:.5rem;height:100%;justify-content:center;width:100%}.media-placeholder .media-icon{font-size:2rem;opacity:.6}.media-placeholder .media-text{font-size:.9rem;font-weight:500}.media-content{border-radius:6px;height:100%;overflow:hidden;width:100%}.media-content.image-content img,.media-content.video-content video{height:100%;object-fit:cover;width:100%}.text-placeholder{align-items:center;color:var(--text-tertiary);display:flex;flex-direction:column;gap:.5rem;height:100%;justify-content:center;width:100%}.text-placeholder .text-icon{font-size:2rem;opacity:.6}.text-placeholder .text-label{font-size:.9rem;font-weight:500}.text-content{align-items:center;border-radius:6px;display:flex;font-weight:600;height:100%;justify-content:center;line-height:1.3;padding:.75rem;width:100%}.context-menu{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 8px 32px #0000004d;min-width:200px;overflow:hidden;position:fixed;z-index:1000}.context-menu-header{background:var(--surface-secondary);border-bottom:1px solid var(--border-primary);font-weight:600}.context-menu-header,.context-menu-item{color:var(--text-primary);font-size:.9rem;padding:.75rem 1rem}.context-menu-item{align-items:center;cursor:pointer;display:flex;gap:.75rem;transition:background-color .2s ease}.context-menu-item:hover{background:var(--surface-secondary)}.context-menu-item.active{background:#3b82f61a;color:var(--accent-primary)}.context-menu-item.danger{color:var(--error-primary)}.context-menu-item.danger:hover{background:#ef44441a}.context-menu-icon{font-size:1rem;text-align:center;width:16px}.context-menu-separator{background:var(--border-primary);height:1px;margin:.25rem 0}.no-board-selected{align-items:center;display:flex;height:100%;justify-content:center}.empty-state{max-width:400px;padding:2rem}.empty-state h3{color:var(--text-primary);font-size:1.5rem;margin:0 0 1rem}.empty-state p{color:var(--text-secondary);line-height:1.5;margin:0 0 2rem}.order-confirmation-overlay{background:#000000e6;border:2px solid var(--accent-primary);border-radius:8px;color:#fff;font-family:monospace;padding:1rem;position:absolute;z-index:10}.order-confirmation-overlay.top-left{left:1rem;top:1rem}.order-confirmation-overlay.top-right{right:1rem;top:1rem}.order-confirmation-overlay.bottom-left{bottom:1rem;left:1rem}.order-confirmation-overlay.bottom-right{bottom:1rem;right:1rem}.order-confirmation-header{border-bottom:1px solid var(--accent-primary);color:var(--accent-primary);font-size:1.1rem;font-weight:700;margin-bottom:.75rem;padding-bottom:.5rem}.order-confirmation-content{display:flex;flex-direction:column;gap:.5rem}.order-item{display:flex;font-size:.9rem;justify-content:space-between}.order-total{border-top:1px solid #333;color:gold;font-size:1rem;font-weight:700;margin-top:.5rem;padding-top:.5rem}@media (max-width:1200px){.configurator-sidebar{width:280px}.grid-container{max-width:100%}}@media (max-width:768px){.configurator-body{flex-direction:column}.configurator-sidebar{height:300px;order:2;width:100%}.configurator-main{order:1;padding:1rem}.configurator-header{padding:1rem}.header-actions{flex-direction:column;gap:.5rem}}.item-loading{align-items:center;color:var(--text-tertiary);display:flex;font-size:.9rem;height:100%;justify-content:center;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.grid-cell.has-item{animation:fadeIn .3s ease}.btn{border-radius:6px;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.btn-primary{background:var(--accent-primary)}.btn-primary:hover{background:var(--accent-primary-hover);box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.btn:disabled{opacity:.5}.draggable-board-item{border-radius:6px;cursor:grab;height:100%;transition:all .2s ease;width:100%}.draggable-board-item:hover{box-shadow:0 4px 8px #00000026;transform:scale(1.02)}.draggable-board-item:active{cursor:grabbing}.draggable-board-item.dragging{box-shadow:0 8px 24px #0003;opacity:.5;transform:scale(1.05);z-index:1000}.image-placeholder{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:2px dashed var(--border-primary);border-radius:6px;transition:all .2s ease}.image-placeholder:hover{background:linear-gradient(135deg,#f1f5f9,#cbd5e1);border-color:var(--accent-primary)}@keyframes imageRetry{0%{opacity:.6;transform:scale(.98)}50%{opacity:.8;transform:scale(1.02)}to{opacity:.6;transform:scale(.98)}}.image-placeholder.retrying{animation:imageRetry 1.5s ease-in-out infinite}.configurator-sidebar{position:relative;transition:width .3s ease,min-width .3s ease}.configurator-sidebar.collapsed{min-width:60px;width:60px}.configurator-sidebar .sidebar-toggle{transition:right .3s ease}.configurator-sidebar.collapsed{overflow:hidden}.configurator-main{flex:1 1;transition:margin-left .3s ease}.media-items,.menu-items-list,.sidebar-filters,.sidebar-section{transition:opacity .2s ease}.facebook-callback{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.callback-container{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:500px;padding:3rem;text-align:center;width:100%}.callback-header{margin-bottom:2rem}.platform-icon{font-size:4rem;margin-bottom:1rem}.callback-header h1{color:#1877f2;font-size:2rem;font-weight:700;margin:0}.callback-content{margin-bottom:2rem}.processing-state{padding:2rem 0}.spinner-container{margin-bottom:2rem}.spinner{border:5px solid #f3f3f3;border-top-color:#1877f2;height:50px;margin:0 auto;width:50px}.processing-state h2{color:#1c1e21;font-size:1.5rem;margin:0 0 1rem}.processing-state p{color:#65676b;font-size:1rem;line-height:1.5}.success-state{padding:1rem 0}.success-icon{font-size:4rem;margin-bottom:1.5rem}.success-state h2{color:#2e7d32;font-size:1.75rem;font-weight:600;margin:0 0 1rem}.success-state>p{color:#1c1e21;font-size:1.1rem;margin-bottom:2rem}.connected-pages{background:#f8f9fa;border-radius:12px;margin:2rem 0;padding:1.5rem;text-align:left}.connected-pages h3{color:#1c1e21;font-size:1.1rem;margin:0 0 1rem;text-align:center}.connected-pages ul{list-style:none;margin:0;padding:0}.page-item{border-bottom:1px solid #e4e6ea;padding:.75rem 0}.page-item:last-child{border-bottom:none}.page-info{display:flex;flex-direction:column;gap:.25rem}.page-info strong{color:#1c1e21;font-size:1rem}.page-category{background:#e3f2fd;color:#1976d2}.page-category,.page-fans{align-self:flex-start;border-radius:12px;font-size:.75rem;font-weight:500;padding:.2rem .5rem}.page-fans{background:#e8f5e8;color:#2e7d32}.redirect-note{color:#65676b;font-size:.9rem;font-style:italic;margin-top:1.5rem}.error-state{padding:1rem 0}.error-icon{font-size:4rem;margin-bottom:1.5rem}.error-state h2{color:#d32f2f;font-size:1.75rem;font-weight:600;margin:0 0 1rem}.error-state>p{background:#fee;border:1px solid #fcc;border-radius:8px;color:#c41e3a;font-size:1rem;margin-bottom:2rem;padding:1rem}.error-actions{margin:2rem 0}.retry-btn{background:#1877f2;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:background-color .2s}.retry-btn:hover{background:#166fe5}.callback-footer{border-top:1px solid #e4e6ea;padding-top:1.5rem}.security-note{align-items:center;display:flex;gap:.5rem;justify-content:center}.shield-icon{color:#2e7d32;font-size:1.2rem}.security-note p{color:#65676b;font-size:.875rem;margin:0}@media (max-width:768px){.facebook-callback{padding:1rem}.callback-container{padding:2rem}.callback-header h1{font-size:1.5rem}.error-icon,.platform-icon,.success-icon{font-size:3rem}.connected-pages{padding:1rem}.page-info{align-items:flex-start}}.callback-content.error .error-state,.callback-content.success .success-state{animation:slideInUp .5s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.table-chart-display{background:var(--glass-bg-light);border-radius:16px;display:flex;flex-direction:column;height:100%;overflow:hidden}.table-chart-display.error,.table-chart-display.loading{align-items:center;display:flex;justify-content:center;min-height:400px}.loading-spinner{color:#ffffffb3;font-size:1.125rem}.error-message{color:var(--danger);font-size:1.125rem}.chart-header{align-items:center;-webkit-backdrop-filter:var(--glass-backdrop);backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;padding:var(--space-4)}.chart-header h3{color:#fffffff2;font-size:1.25rem;margin:0}.status-legend{display:flex;flex-wrap:wrap;gap:var(--space-4)}.legend-item{align-items:center;color:#fffc;display:flex;font-size:.875rem;gap:var(--space-2)}.legend-item span:not(.legend-color){color:#ffffffe6;font-weight:500}.legend-color{border:1px solid #fff3;border-radius:4px;height:16px;width:16px}.legend-color.available{background-color:#4caf50}.legend-color.occupied{background-color:#ff9800}.legend-color.reserved{background-color:#2196f3}.legend-color.dirty{background-color:#795548}.legend-color.maintenance{background-color:#9e9e9e}.chart-canvas{align-items:center;background:var(--glass-bg-light);display:flex;flex:1 1;justify-content:center;overflow:auto;padding:var(--space-4)}.chart-canvas svg{background:#ffffff05;border-radius:8px;height:auto;max-width:100%}.table-group{transition:all .3s ease}.table-group:hover .table-shape{stroke-width:3;filter:brightness(1.2)}.table-shape{transition:all .3s ease}.table-number,.table-status,.table-time{pointer-events:none;text-shadow:0 1px 2px #0000004d}.table-time{opacity:.9}.chart-footer{align-items:center;-webkit-backdrop-filter:var(--glass-backdrop);backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border-top:1px solid var(--glass-border);display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4)}.table-stats{color:#ffffffb3;display:flex;font-size:.875rem;gap:var(--space-4)}.table-stats span{align-items:center;display:flex;gap:var(--space-1)}.last-update{color:#ffffff80;font-size:.75rem;font-style:italic}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}.table-shape{animation:pulse 2s ease-in-out infinite;animation-play-state:paused}.table-group[data-status=occupied] .table-shape{animation-play-state:running}@media (max-width:768px){.chart-header{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.status-legend{width:100%}.chart-footer{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.table-stats{justify-content:space-between;width:100%}}.waitlist-management{background-color:#f5f5f5;min-height:100vh;padding:20px}.waitlist-header{background-color:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px;padding:24px}.header-content{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.waitlist-header h1{align-items:center;color:#333;display:flex;font-size:28px;font-weight:600;gap:12px;margin:0}.waitlist-header h1 .icon{color:#007bff}.header-actions{align-items:center;display:flex;gap:16px}.store-selector{background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#333;cursor:pointer;font-size:16px;padding:10px 16px;transition:border-color .2s}.store-selector:hover{border-color:#007bff}.store-selector:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.btn{align-items:center;border-radius:8px;display:inline-flex;font-size:16px;font-weight:500;gap:8px;padding:10px 20px}.btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-primary{background-color:#007bff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d}.btn-secondary:hover{background-color:#5a6268}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-sm{font-size:14px;padding:6px 12px}.summary-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-card{background-color:#f8f9fa;border:1px solid #e0e0e0}.stat-value{color:#007bff;margin-bottom:8px}.stat-label{color:#6c757d;font-size:14px;letter-spacing:.5px;text-transform:uppercase}.tab-navigation{border-bottom:2px solid #e0e0e0;display:flex;gap:8px}.tab{align-items:center;border-bottom:3px solid #0000;color:#6c757d;display:flex;font-size:16px;font-weight:500;gap:8px}.tab:hover{color:#495057}.tab-content{background-color:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;padding:24px}.waitlist-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.waitlist-card{background-color:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:20px;position:relative;transition:all .2s}.waitlist-card:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff26}.card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.party-info h3{color:#333;font-size:20px;font-weight:600;margin:0 0 8px}.party-size{color:#6c757d;font-size:14px;margin-right:12px}.priority{border-radius:20px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.priority-vip{background-color:gold;color:#333}.priority-regular{background-color:#007bff;color:#fff}.priority-walk-in{background-color:#6c757d;color:#fff}.position{color:#007bff;font-size:28px;font-weight:700}.card-body{margin-bottom:16px}.info-row{align-items:center;color:#495057;display:flex;font-size:14px;gap:8px;margin-bottom:8px}.info-row svg{color:#6c757d}.card-actions{border-top:1px solid #e0e0e0;display:flex;gap:8px;padding-top:16px}.card-actions .btn{flex:1 1}.tables-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.table-card{background-color:#fff;border:3px solid;border-radius:12px;cursor:pointer;padding:20px;transition:all .2s}.table-card:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-2px)}.table-card.status-available{background-color:#f0fdf4;border-color:#28a745}.table-card.status-occupied{background-color:#fffbeb;border-color:#ffc107}.table-card.status-dirty{background-color:#fef2f2;border-color:#dc3545}.table-card.status-reserved{background-color:#f8f9fa;border-color:#6c757d}.table-card.status-out_of_order{background-color:#e9ecef;border-color:#343a40;opacity:.7}.table-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.table-header h3{color:#333;font-size:24px;font-weight:600;margin:0}.seats{background-color:#fff;border:1px solid #e0e0e0;border-radius:20px;color:#6c757d;font-size:14px;padding:4px 12px}.table-status{margin-bottom:12px}.table-status p{color:#495057;font-size:14px;margin:4px 0}.table-status .party-size{color:#6c757d;font-size:12px}.table-status .progress{color:#007bff;font-weight:500}.table-status .status{font-size:18px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.table-section{background-color:#e9ecef;border-radius:20px;color:#495057;display:inline-block;font-size:12px;margin-bottom:12px;padding:4px 12px}.table-actions{border-top:1px solid #0000001a;display:flex;gap:8px;margin-top:12px;padding-top:12px}.analytics-content{align-items:center;display:flex;justify-content:center;min-height:400px}.analytics-placeholder{color:#6c757d;text-align:center}.analytics-placeholder svg{color:#dee2e6;margin-bottom:16px}.analytics-placeholder h3{color:#495057;font-size:24px;font-weight:600;margin-bottom:8px}.analytics-placeholder p,.loading{font-size:16px}.empty-state,.loading{color:#6c757d}.empty-state{padding:60px 20px}.empty-state svg{color:#dee2e6;margin-bottom:16px}.empty-state p{font-size:18px;margin:0}.modal-overlay{background-color:#00000080;padding:20px}.modal-content{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.modal-header{border-bottom:1px solid #e0e0e0;padding:24px}.modal-header h2{color:#333;font-size:24px;font-weight:600;margin:0}.close-button{background:none;border:none;border-radius:8px;color:#6c757d;cursor:pointer;padding:8px;transition:all .2s}.close-button:hover{background-color:#f5f5f5;color:#333}.modal-body{padding:24px}.form-group label{color:#495057;font-size:14px;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background-color:#fff;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;padding:10px 16px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-row{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}.form-group textarea{min-height:80px;resize:vertical}.modal-footer{background-color:#f8f9fa;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding:24px}@media (max-width:768px){.header-content{align-items:flex-start;flex-direction:column;gap:16px}.header-actions{flex-direction:column;width:100%}.store-selector{width:100%}.summary-stats{grid-template-columns:repeat(2,1fr)}.waitlist-grid{grid-template-columns:1fr}.tables-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.form-row{grid-template-columns:1fr}.tab-navigation{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab{white-space:nowrap}.card-actions{flex-direction:column}.card-actions .btn{width:100%}}@media (max-width:480px){.summary-stats,.tables-grid{grid-template-columns:1fr}.modal-content{margin:10px}}.table-chart-container{background:var(--glass-bg-light);border-radius:16px;height:calc(100vh - 250px);min-height:600px;overflow:hidden;position:relative}.table-chart-container .table-chart-manager{background:#0000;height:100%}.table-chart-container .tcm-header{-webkit-backdrop-filter:var(--glass-backdrop);backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border-bottom:1px solid var(--glass-border)}.table-chart-container .canvas-container{background:var(--glass-bg-light)}.table-chart-container .table-element.available{fill:#4caf50;stroke:#388e3c}.table-chart-container .table-element.occupied{fill:#ff9800;stroke:#f57c00}.table-chart-container .table-element.reserved{fill:#2196f3;stroke:#1976d2}.table-chart-container .table-element.maintenance{fill:#9e9e9e;stroke:#616161}.privacy-policy{color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.6;margin:0 auto;max-width:800px;padding:2rem}.privacy-header{border-bottom:2px solid #e0e0e0;margin-bottom:3rem;padding-bottom:2rem;text-align:center}.privacy-header h1{color:#2c5530;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.last-updated{color:#666;font-size:.9rem}.privacy-content{font-size:1rem}.privacy-content section{margin-bottom:2.5rem}.privacy-content h2{border-bottom:1px solid #e0e0e0;color:#2c5530;font-size:1.5rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.privacy-content h3{color:#4a7c59;font-size:1.2rem;font-weight:600;margin-bottom:.75rem;margin-top:1.5rem}.privacy-content p{margin-bottom:1rem;text-align:justify}.privacy-content ul{margin-bottom:1rem;padding-left:1.5rem}.privacy-content li{margin-bottom:.5rem}.privacy-content li strong{color:#2c5530}.contact-info{border-left:4px solid #2c5530;margin:1rem 0}.contact-info p{margin-bottom:.5rem}.contact-info a{color:#2c5530;font-weight:500;text-decoration:none}.contact-info a:hover{text-decoration:underline}@media (max-width:768px){.privacy-policy{padding:1rem}.privacy-header h1{font-size:2rem}.privacy-content h2{font-size:1.3rem}.privacy-content h3{font-size:1.1rem}}@media print{.privacy-policy{max-width:none;padding:0}.privacy-header{page-break-after:avoid}.privacy-content section{page-break-inside:avoid}}.terms-of-service{background-color:#f8f9fa;min-height:100vh;padding:3rem 1rem}.terms-container{background-color:#fff;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin:0 auto;max-width:900px;padding:3rem}.terms-of-service h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:1rem;text-align:center}.last-updated{color:#6c757d;font-size:.95rem;font-style:italic;margin-bottom:3rem;text-align:center}.terms-section{border-bottom:1px solid #e9ecef;margin-bottom:3rem;padding-bottom:2rem}.terms-section:last-child{border-bottom:none}.terms-section h2{color:#495057;font-size:1.75rem;font-weight:600;margin-bottom:1.25rem}.terms-section h3{color:#495057;font-size:1.3rem;font-weight:600;margin-bottom:1rem;margin-top:1.5rem}.terms-section p{color:#495057;font-size:1.05rem;line-height:1.8;margin-bottom:1rem}.terms-section ul{margin:1rem 0;padding-left:2rem}.terms-section ul li{color:#495057;font-size:1.05rem;line-height:1.8;margin-bottom:.5rem}.contact-info{background-color:#f8f9fa;border-radius:8px;margin-top:1rem;padding:1.5rem}.contact-info p{color:#495057;margin:.5rem 0}.contact-info strong{color:#2c3e50;font-size:1.1rem}.terms-section:nth-child(10),.terms-section:nth-child(12){background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin:2rem 0;padding:1.5rem}.terms-section:nth-child(10) p:first-of-type,.terms-section:nth-child(12) p:first-of-type{font-size:.95rem;font-weight:600;text-transform:uppercase}@media (max-width:768px){.terms-container{border-radius:0;padding:2rem 1.5rem}.terms-of-service h1{font-size:2rem}.terms-section h2{font-size:1.5rem}.terms-section h3{font-size:1.2rem}.terms-section p,.terms-section ul li{font-size:1rem}}@media (max-width:480px){.terms-of-service{padding:2rem .5rem}.terms-container{padding:1.5rem 1rem}.terms-of-service h1{font-size:1.75rem}}@media print{.terms-of-service{background-color:#fff;padding:0}.terms-container{box-shadow:none;max-width:100%;padding:0}.terms-section{page-break-inside:avoid}}.compliance-overview{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:20px}.overview-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.overview-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px;text-align:center}.overview-card h4{color:#495057;font-size:14px;font-weight:600;letter-spacing:.5px;margin:0 0 15px;text-transform:uppercase}.score-circle{align-items:center;border:4px solid #e9ecef;border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto;width:80px}.score-value{font-size:24px;font-weight:700}.score-value.green{border-color:#28a745;color:#28a745}.score-value.orange{border-color:#fd7e14;color:#fd7e14}.score-value.red{border-color:#dc3545;color:#dc3545}.metric-value{color:#495057;font-size:32px;font-weight:700}.metric-value.critical{color:#dc3545}.status-breakdown{display:flex;flex-direction:column;gap:5px}.status-item{border-radius:4px;font-size:14px;padding:5px 10px}.status-item.compliant{background:#d1ecf1;color:#0c5460}.status-item.pending{background:#fff3cd;color:#856404}.audit-nav{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;margin:20px 0;overflow:hidden}.nav-btn{background:#fff;border:none;border-right:1px solid #e9ecef;color:#6c757d;cursor:pointer;flex:1 1;font-weight:500;padding:15px 20px;transition:all .2s ease}.nav-btn:last-child{border-right:none}.nav-btn:hover{background:#f8f9fa;color:#495057}.nav-btn.active{background:#007bff;color:#fff}.overview-section{padding:20px 0}.overview-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 400px}.recent-audits h3{color:#495057;margin-bottom:20px}.audit-summary-list{display:flex;flex-direction:column;gap:15px}.audit-summary-card{background:#fff;border-left:4px solid #007bff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:20px}.audit-summary-header{align-items:center;display:flex;justify-content:between;margin-bottom:15px}.audit-summary-header h4{color:#495057;margin:0}.audit-summary-details{display:flex;flex-direction:column;gap:10px}.score-display{align-items:center;display:flex;justify-content:space-between}.score-label{font-weight:500}.requirement-status{display:flex;gap:15px}.requirement-status .compliant{color:#28a745;font-weight:500}.requirement-status .non-compliant{color:#dc3545;font-weight:500}.compliance-trends{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:25px}.compliance-trends h3{color:#495057;margin-bottom:20px}.health-indicators{display:flex;flex-direction:column;gap:15px}.health-item{align-items:center;display:flex;gap:15px}.health-label{color:#495057;flex:0 0 140px;font-size:14px;font-weight:500}.health-bar{background:#e9ecef;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.health-fill{border-radius:4px;height:100%;transition:width .5s ease}.health-fill.good{background:linear-gradient(90deg,#28a745,#20c997)}.health-fill.warning{background:linear-gradient(90deg,#fd7e14,#ffc107)}.health-fill.critical{background:linear-gradient(90deg,#dc3545,#e74c3c)}.health-value{color:#495057;flex:0 0 50px;font-weight:600;text-align:right}.requirements-section{padding:20px 0}.requirements-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:25px;padding-bottom:15px}.requirements-summary{display:flex;gap:20px}.summary-item{border-radius:20px;font-size:14px;font-weight:500;padding:8px 16px}.summary-item.compliant{background:#d4edda;color:#155724}.summary-item.in-progress{background:#d1ecf1;color:#0c5460}.summary-item.non-compliant{background:#f8d7da;color:#721c24}.requirements-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.requirement-card{background:#fff;border-left:4px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.requirement-card.completed{border-left-color:#28a745}.requirement-card.in_progress{border-left-color:#17a2b8}.requirement-card.non_compliant{border-left-color:#dc3545}.requirement-header{align-items:center;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:15px 20px}.req-id{color:#495057;font-size:16px;font-weight:700}.req-status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.req-status.completed{background:#d4edda;color:#155724}.req-status.in_progress{background:#d1ecf1;color:#0c5460}.req-status.non_compliant{background:#f8d7da;color:#721c24}.requirement-content{padding:20px}.requirement-notes{color:#495057;line-height:1.5;margin-bottom:15px}.evidence-section,.remediation-section{margin:15px 0}.evidence-section strong,.remediation-section strong{color:#495057;display:block;font-weight:600;margin-bottom:8px}.evidence-section ul{margin:0;padding-left:20px}.evidence-section li{color:#6c757d;margin-bottom:5px}.remediation-section p{background:#fff3cd;border-left:3px solid #ffc107;border-radius:4px;color:#856404;margin:0;padding:10px}.requirement-footer{background:#f8f9fa;border-top:1px solid #e9ecef;color:#6c757d;font-size:13px;padding:15px 20px}.compliance-score-display{align-items:center;background:#f8f9fa;border-radius:6px;display:flex;gap:15px;margin-bottom:15px;padding:15px}.score-circle-small{align-items:center;border:3px solid;border-radius:50%;display:flex;font-size:16px;font-weight:700;height:60px;justify-content:center;width:60px}.score-circle-small.green{background:#d4edda;border-color:#28a745;color:#155724}.score-circle-small.orange{background:#fff3cd;border-color:#ffc107;color:#856404}.score-circle-small.red{background:#f8d7da;border-color:#dc3545;color:#721c24}.score-details{flex:1 1}.score-label{color:#6c757d;display:block;font-size:14px;margin-bottom:5px}.requirement-counts{display:flex;gap:15px}.compliant-count{color:#28a745;font-weight:500}.non-compliant-count{color:#dc3545;font-weight:500}.events-section{padding:20px 0}.events-placeholder{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:40px;text-align:center}.events-placeholder h4{color:#495057;margin-bottom:15px}.events-placeholder ul{margin:20px auto;max-width:400px;text-align:left}.events-placeholder li{color:#6c757d;margin-bottom:8px}.quick-actions{display:flex;gap:15px;justify-content:center;margin-top:20px}.audits-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.audits-header h3{color:#495057;margin:0}.audit-actions{display:flex;gap:10px}.primary-button,.secondary-button{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:all .2s ease}.primary-button{background:#007bff;color:#fff}.primary-button:hover{background:#0056b3;transform:translateY(-1px)}.secondary-button{background:#6c757d;color:#fff}.secondary-button:hover{background:#5a6268;transform:translateY(-1px)}@media (max-width:768px){.overview-content{grid-template-columns:1fr}.compliance-trends{margin-top:20px}.requirements-grid{grid-template-columns:1fr}.audit-nav{flex-wrap:wrap}.nav-btn{flex:none;min-width:120px}}.empty-state,.loading-message{color:#6c757d;padding:40px;text-align:center}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;margin:20px 0;padding:15px}.status-badge{border-radius:12px;font-size:12px;font-weight:600;padding:4px 12px}.status-badge.green{background:#d4edda;color:#155724}.status-badge.blue{background:#d1ecf1;color:#0c5460}.status-badge.orange{background:#fff3cd;color:#856404}.status-badge.red{background:#f8d7da;color:#721c24}.coming-soon{background:#e2e3e5;border-radius:6px;color:#6c757d;font-style:italic;margin-top:20px;padding:15px}.documents-content{display:flex;flex-direction:column;gap:30px;padding:20px 0}.document-categories{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.category-card{background:#fff;border-left:4px solid #007bff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.category-card h4{background:#f8f9fa;border-bottom:1px solid #e9ecef;color:#495057;font-size:16px;margin:0;padding:20px}.document-types{padding:15px 20px}.document-type{align-items:center;border-bottom:1px solid #f1f3f4;display:flex;justify-content:space-between;padding:10px 0}.document-type:last-child{border-bottom:none}.type-name{color:#495057;font-weight:500}.doc-count{background:#e9ecef;border-radius:12px;color:#6c757d;font-size:12px;font-weight:600;padding:4px 10px}.document-upload-area{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:30px;text-align:center}.upload-zone{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;margin-bottom:20px;padding:40px}.upload-icon{font-size:48px;margin-bottom:20px}.upload-zone h4{color:#495057;margin:0 0 10px}.upload-zone p{color:#6c757d;margin:0 0 20px}.file-types{margin-bottom:20px}.file-types span{color:#6c757d;font-size:14px}.upload-button{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:12px 25px;transition:all .2s ease}.upload-button:hover:not(:disabled){background:#0056b3;box-shadow:0 4px 12px #007bff4d;transform:translateY(-2px)}.upload-button:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.upload-zone.dragover{background-color:#007bff0d;border-color:#007bff}.upload-progress{background:#f8f9fa;border-radius:6px;margin-top:15px;padding:15px}.upload-progress .progress-bar{background:#e9ecef;border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden;width:100%}.upload-progress .progress-fill{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:4px;height:100%;transition:width .3s ease}.upload-progress span{color:#007bff;font-size:14px;font-weight:600}.uploaded-files{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-top:20px;padding:15px}.uploaded-files h5{color:#495057;font-size:16px;font-weight:600;margin:0 0 15px}.uploaded-file{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:8px 0}.uploaded-file:last-child{border-bottom:none}.file-name{color:#495057;font-weight:500}.file-size{color:#6c757d;font-size:13px}.file-status{color:#28a745;font-size:13px;font-weight:500}.network-management{margin:0 auto;max-width:1200px;padding:20px}.header-section{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.header-controls{align-items:center;display:flex;gap:15px}.site-selector{background:#fff;border:1px solid #ddd;border-radius:4px;padding:8px 12px}.tabs{border-bottom:2px solid #eee;display:flex;margin-bottom:30px}.tab{background:none;border:none;border-bottom:2px solid #0000;cursor:pointer;padding:12px 24px;transition:all .2s}.tab:hover{background:#f5f5f5}.tab.active{border-bottom-color:#007bff;color:#007bff;font-weight:500}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:30px}.stat-card{background:#fff;border:1px solid #eee;border-radius:8px;padding:20px;text-align:center}.stat-card h3{color:#666;font-size:14px;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.stat-value{color:#333;font-size:32px;font-weight:700;margin-bottom:5px}.stat-label{color:#888;font-size:12px}.clients-table,.devices-table{background:#fff;border:1px solid #eee;border-radius:8px;overflow:hidden}.client-row,.device-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:15px 20px}.client-row:last-child,.device-row:last-child{border-bottom:none}.client-name,.device-name{font-weight:500;margin-bottom:4px}.client-mac,.device-model{color:#666;font-family:monospace;font-size:12px}.client-details,.device-details{color:#888;font-size:12px;margin-top:4px}.cameras-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.camera-card{align-items:center;background:#fff;border:1px solid #eee;border-radius:8px;display:flex;justify-content:space-between;padding:20px}.status.online{color:#28a745}.status.offline{color:#dc3545}.btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}.btn-small{font-size:12px;padding:6px 12px}.alert{border-radius:4px;margin-bottom:20px;padding:12px 16px}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:8px;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.modal-close{background:none;border:none;color:#999;cursor:pointer;font-size:24px}.modal-body{padding:20px}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.form-actions{gap:10px}.loading{color:#666;padding:40px;text-align:center}.section-header{margin-bottom:20px}.section-header input{border:1px solid #ddd;border-radius:4px;padding:8px 12px;width:300px}.weather-dashboard{margin:0 auto;max-width:1400px;padding:2rem}.weather-header{margin-bottom:2rem}.weather-header h2{color:#1f2937;font-size:1.75rem;font-weight:600;margin:0 0 .5rem}.weather-header p{color:#6b7280;font-size:1rem;margin:0}.weather-filters{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:2rem;padding:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{color:#374151;font-size:.875rem;font-weight:500}.filter-group select{background:#fff;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;font-size:.875rem;padding:.5rem .75rem}.filter-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.weather-tabs{border-bottom:1px solid #e5e7eb;display:flex;margin-bottom:2rem}.tab-button{background:none;border-bottom:2px solid #0000;color:#6b7280;font-size:.875rem;padding:.75rem 1.5rem;transition:all .2s}.tab-button:hover{color:#374151}.tab-button.active{border-bottom-color:#3b82f6;color:#3b82f6}.weather-content{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:.375rem;color:#991b1b;margin-bottom:1rem;padding:1rem}.loading-message{align-items:center;color:#6b7280;display:flex;gap:.75rem;justify-content:center;padding:3rem}.loading-spinner{border:2px solid #e5e7eb;border-top-color:#3b82f6;height:1.5rem;width:1.5rem}.data-summary{border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;padding-bottom:1rem}.data-summary h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.data-summary p{color:#6b7280;font-size:.875rem;margin:0}.weather-table{overflow-x:auto}.weather-table table{border-collapse:collapse;min-width:1000px;width:100%}.weather-table td,.weather-table th{border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;text-align:left}.weather-table th{background:#f9fafb;color:#374151;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.weather-table td{color:#6b7280;font-size:.875rem}.store-info{display:flex;flex-direction:column;gap:.25rem}.store-info strong{color:#1f2937;font-weight:600}.store-info small{color:#9ca3af;font-size:.75rem}.daypart-badge{border-radius:.25rem;display:inline-block;font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.daypart-badge.breakfast{background:#fef3c7;color:#92400e}.daypart-badge.lunch{background:#dcfce7;color:#166534}.daypart-badge.dinner{background:#dbeafe;color:#1e40af}.daypart-badge.late_night{background:#e0e7ff;color:#3730a3}.weather-info{align-items:center;display:flex;gap:.5rem}.weather-icon{font-size:1.25rem}.temperature{color:#1f2937;font-weight:600}.temp-range{color:#6b7280;font-size:.875rem}.precipitation{color:#3b82f6;font-weight:500}.trends-summary{border-bottom:1px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem}.trends-summary h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.trends-summary p{color:#6b7280;font-size:.875rem;margin:0}.trends-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.trend-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.trend-card h4{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 1rem}.weather-patterns{display:flex;flex-direction:column;gap:.75rem}.pattern-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;display:flex;gap:.75rem;padding:.5rem}.pattern-details{flex:1 1}.pattern-details strong{color:#1f2937;display:block;font-weight:600;text-transform:capitalize}.pattern-stats{color:#6b7280;font-size:.875rem}.precipitation-stats,.temperature-stats{display:flex;flex-direction:column;gap:.75rem}.stat-item{background:#fff;border:1px solid #e5e7eb;border-radius:.375rem;padding:.5rem}.stat-item label{color:#6b7280;font-size:.875rem}.stat-item span{color:#1f2937;font-weight:600}.collect-info{max-width:800px}.collect-info h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.collect-info p{color:#6b7280;line-height:1.6;margin:0 0 2rem}.collection-details{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:2rem;padding:1.5rem}.collection-details h4{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 1rem}.collection-details ul{color:#6b7280;line-height:1.6;margin:0;padding-left:1.5rem}.collection-details li{margin-bottom:.5rem}.collection-details strong{color:#374151}.daypart-info{margin-bottom:2rem}.daypart-info h4{color:#1f2937;font-size:1rem;font-weight:600;margin:0 0 1rem}.daypart-schedule{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.daypart-item{background:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;font-size:.875rem;padding:.75rem}.daypart-item strong{color:#1f2937}.collect-button{background:#3b82f6;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-bottom:1.5rem;padding:.75rem 2rem;transition:background-color .2s}.collect-button:hover:not(:disabled){background:#2563eb}.collect-button:disabled{cursor:not-allowed;opacity:.6}.collection-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:.375rem;color:#1e40af;font-size:.875rem;line-height:1.6;padding:1rem}.collection-note p{margin:0}.collection-note strong{color:#1e3a8a}.forecast-display{background:#e3f2fd;border:1px solid #2196f3;border-radius:8px;margin:20px 0;padding:20px}.forecast-display h4{align-items:center;color:#1976d2;display:flex;gap:8px;margin:0 0 10px}.forecast-note{background:#ffffffe6;border-left:4px solid #2196f3;border-radius:6px;color:#333;font-size:14px;line-height:1.5;padding:15px}.forecast-note strong{color:#1976d2}.source-badge{border-radius:12px;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase;white-space:nowrap}.source-badge.accuweatherhistorical{background:#4caf50;color:#fff}.source-badge.historical{background:#ff9800;color:#fff}.source-badge.forecast{background:#2196f3;color:#fff}.precip-chance{color:#2196f3;display:block;font-size:9px;font-style:italic;margin-top:2px}@media (max-width:1024px){.trends-grid{grid-template-columns:1fr}.daypart-schedule{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.weather-dashboard{padding:1rem}.weather-filters{flex-direction:column;gap:1rem}.filter-group{min-width:auto}.weather-table{font-size:.75rem}.daypart-schedule{grid-template-columns:1fr}.collect-button{width:100%}}.payment-container{align-items:center;background:#f5f5f7;display:flex;flex-direction:column;min-height:100vh;padding:20px}.payment-header{margin-bottom:30px;text-align:center}.payment-header h1{color:#1d1d1f;font-size:32px;font-weight:600;margin-bottom:8px}.payment-header p{color:#86868b;font-size:16px}.payment-form{background:#fff;border-radius:18px;box-shadow:0 4px 20px #00000014;margin:0 auto;max-width:480px;padding:32px;width:100%}.order-summary{border-bottom:1px solid #e5e5e7;margin-bottom:32px;padding-bottom:24px}.order-summary h3{color:#1d1d1f;font-size:20px;font-weight:600;margin-bottom:16px}.summary-row{align-items:center;color:#1d1d1f;display:flex;font-size:16px;justify-content:space-between;padding:8px 0}.tip-row{color:#0071e3}.total-row{border-top:1px solid #e5e5e7;font-size:18px;font-weight:600;margin-top:12px;padding-top:12px}.tip-section{margin-bottom:32px}.tip-section h3{color:#1d1d1f;font-size:20px;font-weight:600;margin-bottom:16px}.tip-options{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr) 1.5fr}.tip-button{background:#fff;border:1px solid #e5e5e7;border-radius:8px;color:#1d1d1f;cursor:pointer;font-size:16px;font-weight:500;outline:none;padding:12px 16px;transition:all .2s ease}.tip-button:hover{background:#f5f5f7;border-color:#0071e3}.tip-button.active{background:#0071e3;border-color:#0071e3;color:#fff}.custom-tip{position:relative}.custom-tip-input{border:1px solid #e5e5e7;border-radius:8px;font-size:16px;outline:none;padding:12px 16px;transition:border-color .2s ease;width:100%}.custom-tip-input:focus{border-color:#0071e3}.custom-tip-input::placeholder{color:#86868b}.payment-request-section{margin-bottom:24px}.divider{margin:24px 0;position:relative;text-align:center}.divider span{background:#fff;color:#86868b;font-size:14px;font-weight:500;padding:0 16px;position:relative;z-index:1}.divider:before{background:#e5e5e7;content:"";height:1px;left:0;position:absolute;right:0;top:50%;transform:translateY(-50%)}.card-section h3{color:#1d1d1f;font-size:20px;font-weight:600;margin-bottom:16px}.customer-section{margin-bottom:32px}.customer-section h3{color:#1d1d1f;font-size:20px;font-weight:600;margin-bottom:16px}.customer-input{background:#fff;border:1px solid #e5e5e7;border-radius:8px;font-size:16px;outline:none;padding:16px;transition:border-color .2s ease;width:100%}.customer-input:focus{border-color:#0071e3}.card-form{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.card-input{background:#fff;border:1px solid #e5e5e7;border-radius:8px;font-size:16px;outline:none;padding:16px;transition:border-color .2s ease;width:100%}.card-input:focus{border-color:#0071e3}.card-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.card-input-small{width:100%}.pay-button{background:#0071e3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:18px;font-weight:600;outline:none;padding:16px 24px;transition:background-color .2s ease;width:100%}.pay-button:hover:not(:disabled){background:#0051d5}.pay-button:disabled{background:#86868b;cursor:not-allowed}.error-message{background:#fff1f1;border:1px solid #ff3b30;border-radius:8px;color:#ff3b30;font-size:14px;margin-bottom:16px;padding:12px 16px}.loading-spinner{padding:60px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:3px solid #e5e5e7;border-radius:50%;border-top-color:#0071e3;height:48px;margin:0 auto 16px;width:48px}.error-container,.success-container{background:#fff;border-radius:18px;box-shadow:0 4px 20px #00000014;max-width:480px;padding:48px 32px;text-align:center;width:100%}.success-icon{align-items:center;background:#34c759;border-radius:50%;color:#fff;display:flex;font-size:48px;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.success-container h2{color:#1d1d1f;font-size:28px;font-weight:600;margin-bottom:12px}.success-container p{color:#86868b;font-size:16px;margin-bottom:24px}.receipt-summary{background:#f5f5f7;border-radius:12px;margin-bottom:24px;padding:24px}.receipt-summary p{color:#1d1d1f;font-size:16px;margin:8px 0}.final-total{border-top:1px solid #e5e5e7;font-size:18px!important;font-weight:600;margin-top:12px!important;padding-top:12px}.server-info{color:#86868b;font-size:14px}@media (max-width:640px){.payment-container{padding:16px}.payment-form{border-radius:12px;padding:24px}.payment-header h1{font-size:28px}.tip-options{grid-template-columns:repeat(2,1fr)}.custom-tip{grid-column:span 2}.tip-button{padding:14px 12px}}.apple-pay-button{-apple-pay-button-type:buy;-apple-pay-button-style:#000;-webkit-appearance:-apple-pay-button;cursor:pointer;height:48px}#payment-request-button,.apple-pay-button{margin-bottom:16px;width:100%}.notification-management{margin:0 auto;max-width:1200px;padding:var(--space-6)}.notification-header{margin-bottom:var(--space-8)}.notification-header h1{color:#fffffff2;font-size:2rem;font-weight:700;margin-bottom:var(--space-2);text-shadow:0 2px 4px #0000004d}.notification-header p{color:#ffffffb3;font-size:1.1rem}.loading-container{align-items:center;color:#fffc;display:flex;flex-direction:column;justify-content:center;padding:var(--space-16)}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #fff3;border-radius:50%;border-top:3px solid var(--accent);height:40px;margin-bottom:var(--space-4);width:40px}.error-message{background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;color:#fca5a5;margin-bottom:var(--space-6);padding:var(--space-4)}.notification-tabs{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;display:flex;gap:var(--space-1);margin-bottom:var(--space-8);padding:var(--space-1)}.tab-button{background:#0000;border:none;border-radius:12px;color:#ffffffb3;cursor:pointer;flex:1 1;font-family:var(--font-sans);font-weight:500;padding:var(--space-3) var(--space-4);transition:var(--transition-base)}.tab-button:hover{background:var(--glass-bg-light);color:#ffffffe6}.tab-button.active{background:#6366f14d;box-shadow:0 4px 15px 0 #6366f14d;color:#fff}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-6)}.section-header h2{color:#fffffff2;font-size:1.5rem;font-weight:600;margin:0}.empty-state{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:16px;color:#fff9;padding:var(--space-16);text-align:center}.table-modern{color:#ffffffe6}.table-modern th{background:var(--glass-bg-light);color:#fffc}.table-modern td{border-bottom-color:var(--glass-border);color:#ffffffe6}.table-modern tr:hover{background:var(--glass-bg-light)}.status-badge{border-radius:6px;color:#fff;font-size:.75rem;font-weight:500;letter-spacing:.05em;padding:var(--space-1) var(--space-2);text-transform:uppercase}.templates-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(400px,1fr))}.template-card{padding:var(--space-6)}.template-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.template-header h3{color:#fffffff2;font-size:1.25rem;font-weight:600;margin:0}.template-details p{color:#fffc;font-size:.875rem;margin-bottom:var(--space-2)}.template-details strong{color:#ffffffe6}.template-body{margin-top:var(--space-4)}.body-preview{background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:8px;color:#ffffffb3;font-family:var(--font-mono);font-size:.875rem;margin-top:var(--space-2);padding:var(--space-3);white-space:pre-wrap}.template-form{margin-bottom:var(--space-8);padding:var(--space-6)}.template-form h3{color:#fffffff2;margin-bottom:var(--space-6)}.form-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:var(--space-6)}.form-group.full-width{grid-column:1/-1}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end}.settings-tab{display:flex;flex-direction:column;gap:var(--space-6)}.settings-section{padding:var(--space-6)}.settings-section h3{color:#fffffff2;font-size:1.25rem;font-weight:600;margin-bottom:var(--space-4)}.settings-section h4{color:#ffffffe6;font-size:1rem;font-weight:500;margin-bottom:var(--space-3)}.status-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.status-item{align-items:center;background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:8px;display:flex;justify-content:space-between;padding:var(--space-3)}.status-label{color:#ffffffb3;font-size:.875rem}.status-value{color:#fffffff2;font-weight:600}.verified-emails{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}.verified-email{align-items:center;background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:8px;color:#ffffffe6;display:flex;justify-content:space-between;padding:var(--space-3)}.form-group-inline{align-items:center;display:flex;gap:var(--space-3);margin-bottom:var(--space-3)}.form-group-inline .form-control{flex:1 1}.help-text{color:#fff9;font-size:.875rem;margin:0}.test-email-form{max-width:500px}.test-result{border:1px solid;border-radius:8px;margin-top:var(--space-4);padding:var(--space-3)}.test-result.success{background:#10b9811a;border-color:#10b9814d;color:#6ee7b7}.test-result.error{background:#ef44441a;border-color:#ef44444d;color:#fca5a5}.test-result p{font-size:.875rem;margin:0}.message-id{color:#fff9;font-family:var(--font-mono);font-size:.75rem;margin-top:var(--space-1)}.form-control{backdrop-filter:var(--glass-backdrop);-webkit-backdrop-filter:var(--glass-backdrop);background:var(--glass-bg);border:1px solid var(--glass-border);color:#ffffffe6}.form-control::placeholder{color:#ffffff80}.form-control:focus{background:var(--glass-bg-light);border-color:#6366f180;box-shadow:0 0 0 3px #6366f11a;color:#fff}.form-label{font-weight:500}.badge-modern-default,.badge-modern-success,.form-label{color:#ffffffe6}.badge-modern-success{background:#10b98133;border:1px solid #10b9814d}@media (max-width:768px){.notification-management{padding:var(--space-4)}.notification-tabs,.section-header{flex-direction:column}.section-header{align-items:flex-start;gap:var(--space-3)}.form-grid,.status-grid,.templates-grid{grid-template-columns:1fr}.form-group-inline{align-items:stretch}.form-actions,.form-group-inline{flex-direction:column}}.sms-tab{gap:var(--space-6)}.sms-tab,.test-sms-form{display:flex;flex-direction:column}.test-sms-form{gap:var(--space-4)}.test-sms-form .form-group{display:flex;flex-direction:column;gap:var(--space-2)}.test-sms-form label{color:#ffffffe6;font-size:.875rem;font-weight:500}.test-sms-form textarea{min-height:80px;resize:vertical}.template-list{list-style:none;margin:var(--space-2) 0;padding-left:var(--space-4)}.template-list li{color:#fffc;font-size:.875rem;padding:var(--space-1) 0;position:relative}.template-list li:before{color:var(--primary);content:"•";font-weight:700;left:-16px;position:absolute}.usage-stats{display:flex;flex-direction:column;gap:var(--space-3)}.stat-item{align-items:center;background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:8px;display:flex;justify-content:space-between;padding:var(--space-3)}.stat-item .label{color:#ffffffb3;font-size:.875rem}.stat-item .value{color:#fffffff2;font-size:1.125rem;font-weight:600}.settings-status .status-badge.active{background:#4caf5033;border:1px solid #4caf504d;border-radius:16px;color:#4caf50;display:inline-block;font-size:.875rem;font-weight:500;padding:var(--space-1) var(--space-3)}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*
! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com
*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;tab-size:4}body{line-height:inherit}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:-webkit-sticky;position:sticky}.inset-0{inset:0}.-bottom-4{bottom:-1rem}.-right-4{right:-1rem}.bottom-0{bottom:0}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-3{left:.75rem}.right-0{right:0}.top-0{top:0}.top-1\/2{top:50%}.z-50{z-index:50}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.ml-6{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-8{height:2rem}.h-auto{height:auto}.h-full{height:100%}.max-h-60{max-height:15rem}.max-h-96{max-height:24rem}.max-h-\[90vh\]{max-height:90vh}.max-h-screen{max-height:100vh}.min-h-screen{min-height:100vh}.w-0{width:0}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-auto{width:auto}.w-full{width:100%}.min-w-0{min-width:0}.min-w-48{min-width:12rem}.min-w-\[140px\]{min-width:140px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1}.flex-shrink-0{flex-shrink:0}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.rotate-180{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg}.scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.scale-105,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.appearance-none{-webkit-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-12{gap:3rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.-space-y-px>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(-1px*var(--tw-space-y-reverse));margin-top:calc(-1px*(1 - var(--tw-space-y-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.25rem*var(--tw-space-x-reverse))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.25rem*var(--tw-space-y-reverse));margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.75rem*var(--tw-space-y-reverse));margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1.5rem*var(--tw-space-y-reverse));margin-top:calc(1.5rem*(1 - var(--tw-space-y-reverse)))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(2rem*var(--tw-space-y-reverse));margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)))}.divide-x>:not([hidden])~:not([hidden]){--tw-divide-x-reverse:0;border-left-width:calc(1px*(1 - var(--tw-divide-x-reverse)));border-right-width:calc(1px*var(--tw-divide-x-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-bottom-width:calc(1px*var(--tw-divide-y-reverse));border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.overflow-auto{overflow:auto}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.125rem}.rounded-b-md{border-bottom-left-radius:.375rem;border-bottom-right-radius:.375rem}.rounded-t-md{border-top-left-radius:.375rem;border-top-right-radius:.375rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-t-2{border-top-width:2px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:#fde68a;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-blue-200{--tw-border-opacity:1;border-color:#bfdbfe;border-color:rgb(191 219 254/var(--tw-border-opacity,1))}.border-blue-300{--tw-border-opacity:1;border-color:#93c5fd;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.border-blue-500{--tw-border-opacity:1;border-color:#3b82f6;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.border-blue-600{--tw-border-opacity:1;border-color:#2563eb;border-color:rgb(37 99 235/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:#f3f4f6;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:#e5e7eb;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-600{--tw-border-opacity:1;border-color:#4b5563;border-color:rgb(75 85 99/var(--tw-border-opacity,1))}.border-gray-800{--tw-border-opacity:1;border-color:#1f2937;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.border-gray-900{--tw-border-opacity:1;border-color:#111827;border-color:rgb(17 24 39/var(--tw-border-opacity,1))}.border-green-200{--tw-border-opacity:1;border-color:#bbf7d0;border-color:rgb(187 247 208/var(--tw-border-opacity,1))}.border-green-300{--tw-border-opacity:1;border-color:#86efac;border-color:rgb(134 239 172/var(--tw-border-opacity,1))}.border-green-500{--tw-border-opacity:1;border-color:#22c55e;border-color:rgb(34 197 94/var(--tw-border-opacity,1))}.border-orange-200{--tw-border-opacity:1;border-color:#fed7aa;border-color:rgb(254 215 170/var(--tw-border-opacity,1))}.border-red-200{--tw-border-opacity:1;border-color:#fecaca;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-300{--tw-border-opacity:1;border-color:#fca5a5;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-red-500{--tw-border-opacity:1;border-color:#ef4444;border-color:rgb(239 68 68/var(--tw-border-opacity,1))}.border-red-600{--tw-border-opacity:1;border-color:#dc2626;border-color:rgb(220 38 38/var(--tw-border-opacity,1))}.border-transparent{border-color:#0000}.border-white{--tw-border-opacity:1;border-color:#fff;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-yellow-200{--tw-border-opacity:1;border-color:#fef08a;border-color:rgb(254 240 138/var(--tw-border-opacity,1))}.border-yellow-500{--tw-border-opacity:1;border-color:#eab308;border-color:rgb(234 179 8/var(--tw-border-opacity,1))}.border-t-transparent{border-top-color:#0000}.bg-amber-50{--tw-bg-opacity:1;background-color:#fffbeb;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:#000;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-blue-100{--tw-bg-opacity:1;background-color:#dbeafe;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-50{--tw-bg-opacity:1;background-color:#eff6ff;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500{--tw-bg-opacity:1;background-color:#3b82f6;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.bg-blue-600{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-current{background-color:currentColor}.bg-gray-100{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:#d1d5db;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-400{--tw-bg-opacity:1;background-color:#9ca3af;background-color:rgb(156 163 175/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-gray-500{--tw-bg-opacity:1;background-color:#6b7280;background-color:rgb(107 114 128/var(--tw-bg-opacity,1))}.bg-gray-900{--tw-bg-opacity:1;background-color:#111827;background-color:rgb(17 24 39/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:#dcfce7;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:#f0fdf4;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-green-500{--tw-bg-opacity:1;background-color:#22c55e;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-green-600{--tw-bg-opacity:1;background-color:#16a34a;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.bg-indigo-600{--tw-bg-opacity:1;background-color:#4f46e5;background-color:rgb(79 70 229/var(--tw-bg-opacity,1))}.bg-orange-100{--tw-bg-opacity:1;background-color:#ffedd5;background-color:rgb(255 237 213/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:#fff7ed;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-orange-500{--tw-bg-opacity:1;background-color:#f97316;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-purple-100{--tw-bg-opacity:1;background-color:#f3e8ff;background-color:rgb(243 232 255/var(--tw-bg-opacity,1))}.bg-purple-500{--tw-bg-opacity:1;background-color:#a855f7;background-color:rgb(168 85 247/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:#fee2e2;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-500{--tw-bg-opacity:1;background-color:#ef4444;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-600{--tw-bg-opacity:1;background-color:#dc2626;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.bg-transparent{background-color:initial}.bg-white{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-yellow-100{--tw-bg-opacity:1;background-color:#fef9c3;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-50{--tw-bg-opacity:1;background-color:#fefce8;background-color:rgb(254 252 232/var(--tw-bg-opacity,1))}.bg-yellow-500{--tw-bg-opacity:1;background-color:#eab308;background-color:rgb(234 179 8/var(--tw-bg-opacity,1))}.bg-yellow-600{--tw-bg-opacity:1;background-color:#ca8a04;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.bg-opacity-20{--tw-bg-opacity:0.2}.bg-opacity-50{--tw-bg-opacity:0.5}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from:#eff6ff var(--tw-gradient-from-position);--tw-gradient-to:#eff6ff00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-500{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:#3b82f600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-500{--tw-gradient-from:#22c55e var(--tw-gradient-from-position);--tw-gradient-to:#22c55e00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-orange-500{--tw-gradient-from:#f97316 var(--tw-gradient-from-position);--tw-gradient-to:#f9731600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-red-500{--tw-gradient-from:#ef4444 var(--tw-gradient-from-position);--tw-gradient-to:#ef444400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-yellow-500{--tw-gradient-from:#eab308 var(--tw-gradient-from-position);--tw-gradient-to:#eab30800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-blue-600{--tw-gradient-to:#2563eb var(--tw-gradient-to-position)}.to-green-600{--tw-gradient-to:#16a34a var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to:#eef2ff var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to:#ea580c var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to:#dc2626 var(--tw-gradient-to-position)}.to-yellow-600{--tw-gradient-to:#ca8a04 var(--tw-gradient-to-position)}.object-cover{object-fit:cover}.p-1{padding:.25rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-bottom:.125rem;padding-top:.125rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.py-12{padding-bottom:3rem;padding-top:3rem}.py-16{padding-bottom:4rem;padding-top:4rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-20{padding-bottom:5rem;padding-top:5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-4{padding-bottom:1rem;padding-top:1rem}.py-8{padding-bottom:2rem;padding-top:2rem}.pb-16{padding-bottom:4rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-10{padding-left:2.5rem}.pr-3{padding-right:.75rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-24{padding-top:6rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.pt-8{padding-top:2rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-6xl{font-size:3.75rem;line-height:1}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-light{font-weight:300}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tracking-wide{letter-spacing:.025em}.text-amber-600{--tw-text-opacity:1;color:#d97706;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:#b45309;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-blue-100{--tw-text-opacity:1;color:#dbeafe;color:rgb(219 234 254/var(--tw-text-opacity,1))}.text-blue-500{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:#1d4ed8;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-blue-800{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}.text-blue-900{--tw-text-opacity:1;color:#1e3a8a;color:rgb(30 58 138/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:#d1d5db;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:#9ca3af;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-gray-950{--tw-text-opacity:1;color:#030712;color:rgb(3 7 18/var(--tw-text-opacity,1))}.text-green-100{--tw-text-opacity:1;color:#dcfce7;color:rgb(220 252 231/var(--tw-text-opacity,1))}.text-green-400{--tw-text-opacity:1;color:#4ade80;color:rgb(74 222 128/var(--tw-text-opacity,1))}.text-green-500{--tw-text-opacity:1;color:#22c55e;color:rgb(34 197 94/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:#16a34a;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-700{--tw-text-opacity:1;color:#15803d;color:rgb(21 128 61/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:#166534;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-green-900{--tw-text-opacity:1;color:#14532d;color:rgb(20 83 45/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:#4f46e5;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-orange-100{--tw-text-opacity:1;color:#ffedd5;color:rgb(255 237 213/var(--tw-text-opacity,1))}.text-orange-600{--tw-text-opacity:1;color:#ea580c;color:rgb(234 88 12/var(--tw-text-opacity,1))}.text-orange-800{--tw-text-opacity:1;color:#9a3412;color:rgb(154 52 18/var(--tw-text-opacity,1))}.text-purple-800{--tw-text-opacity:1;color:#6b21a8;color:rgb(107 33 168/var(--tw-text-opacity,1))}.text-red-100{--tw-text-opacity:1;color:#fee2e2;color:rgb(254 226 226/var(--tw-text-opacity,1))}.text-red-400{--tw-text-opacity:1;color:#f87171;color:rgb(248 113 113/var(--tw-text-opacity,1))}.text-red-500{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:#b91c1c;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:#991b1b;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:#fff;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-yellow-100{--tw-text-opacity:1;color:#fef9c3;color:rgb(254 249 195/var(--tw-text-opacity,1))}.text-yellow-400{--tw-text-opacity:1;color:#facc15;color:rgb(250 204 21/var(--tw-text-opacity,1))}.text-yellow-600{--tw-text-opacity:1;color:#ca8a04;color:rgb(202 138 4/var(--tw-text-opacity,1))}.text-yellow-700{--tw-text-opacity:1;color:#a16207;color:rgb(161 98 7/var(--tw-text-opacity,1))}.text-yellow-800{--tw-text-opacity:1;color:#854d0e;color:rgb(133 77 14/var(--tw-text-opacity,1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity:1;color:#6b7280;color:rgb(107 114 128/var(--tw-placeholder-opacity,1))}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.shadow{--tw-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-sm,.shadow-xl{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color)}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-blue-500{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.ring-offset-white{--tw-ring-offset-color:#fff}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-text-decoration-color,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6,p{margin:0 0 1rem}button{font-family:inherit}a{color:#667eea;text-decoration:none}a:hover{text-decoration:underline}.hover\:border-blue-300:hover{--tw-border-opacity:1;border-color:#93c5fd;border-color:rgb(147 197 253/var(--tw-border-opacity,1))}.hover\:border-blue-400:hover{--tw-border-opacity:1;border-color:#60a5fa;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.hover\:border-gray-300:hover{--tw-border-opacity:1;border-color:#d1d5db;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.hover\:border-gray-400:hover{--tw-border-opacity:1;border-color:#9ca3af;border-color:rgb(156 163 175/var(--tw-border-opacity,1))}.hover\:bg-blue-200:hover{--tw-bg-opacity:1;background-color:#bfdbfe;background-color:rgb(191 219 254/var(--tw-bg-opacity,1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:#eff6ff;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-blue-600:hover{--tw-bg-opacity:1;background-color:#2563eb;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.hover\:bg-blue-700:hover{--tw-bg-opacity:1;background-color:#1d4ed8;background-color:rgb(29 78 216/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:#f3f4f6;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:#e5e7eb;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.hover\:bg-gray-300:hover{--tw-bg-opacity:1;background-color:#d1d5db;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:#f9fafb;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-gray-800:hover{--tw-bg-opacity:1;background-color:#1f2937;background-color:rgb(31 41 55/var(--tw-bg-opacity,1))}.hover\:bg-green-100:hover{--tw-bg-opacity:1;background-color:#dcfce7;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.hover\:bg-green-50:hover{--tw-bg-opacity:1;background-color:#f0fdf4;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.hover\:bg-green-600:hover{--tw-bg-opacity:1;background-color:#16a34a;background-color:rgb(22 163 74/var(--tw-bg-opacity,1))}.hover\:bg-green-700:hover{--tw-bg-opacity:1;background-color:#15803d;background-color:rgb(21 128 61/var(--tw-bg-opacity,1))}.hover\:bg-indigo-700:hover{--tw-bg-opacity:1;background-color:#4338ca;background-color:rgb(67 56 202/var(--tw-bg-opacity,1))}.hover\:bg-red-100:hover{--tw-bg-opacity:1;background-color:#fee2e2;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.hover\:bg-red-200:hover{--tw-bg-opacity:1;background-color:#fecaca;background-color:rgb(254 202 202/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:#fef2f2;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:bg-red-600:hover{--tw-bg-opacity:1;background-color:#dc2626;background-color:rgb(220 38 38/var(--tw-bg-opacity,1))}.hover\:bg-red-700:hover{--tw-bg-opacity:1;background-color:#b91c1c;background-color:rgb(185 28 28/var(--tw-bg-opacity,1))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:#fff;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-yellow-700:hover{--tw-bg-opacity:1;background-color:#a16207;background-color:rgb(161 98 7/var(--tw-bg-opacity,1))}.hover\:text-blue-500:hover{--tw-text-opacity:1;color:#3b82f6;color:rgb(59 130 246/var(--tw-text-opacity,1))}.hover\:text-blue-600:hover{--tw-text-opacity:1;color:#2563eb;color:rgb(37 99 235/var(--tw-text-opacity,1))}.hover\:text-blue-700:hover{--tw-text-opacity:1;color:#1d4ed8;color:rgb(29 78 216/var(--tw-text-opacity,1))}.hover\:text-blue-800:hover{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}.hover\:text-gray-600:hover{--tw-text-opacity:1;color:#4b5563;color:rgb(75 85 99/var(--tw-text-opacity,1))}.hover\:text-gray-700:hover{--tw-text-opacity:1;color:#374151;color:rgb(55 65 81/var(--tw-text-opacity,1))}.hover\:text-gray-800:hover{--tw-text-opacity:1;color:#1f2937;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\:text-gray-900:hover{--tw-text-opacity:1;color:#111827;color:rgb(17 24 39/var(--tw-text-opacity,1))}.hover\:text-green-600:hover{--tw-text-opacity:1;color:#16a34a;color:rgb(22 163 74/var(--tw-text-opacity,1))}.hover\:text-green-800:hover{--tw-text-opacity:1;color:#166534;color:rgb(22 101 52/var(--tw-text-opacity,1))}.hover\:text-indigo-500:hover{--tw-text-opacity:1;color:#6366f1;color:rgb(99 102 241/var(--tw-text-opacity,1))}.hover\:text-red-500:hover{--tw-text-opacity:1;color:#ef4444;color:rgb(239 68 68/var(--tw-text-opacity,1))}.hover\:text-red-600:hover{--tw-text-opacity:1;color:#dc2626;color:rgb(220 38 38/var(--tw-text-opacity,1))}.hover\:text-red-800:hover{--tw-text-opacity:1;color:#991b1b;color:rgb(153 27 27/var(--tw-text-opacity,1))}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-lg:hover,.hover\:shadow-md:hover{box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:0 0 #0000,0 0 #0000,var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:z-10:focus{z-index:10}.focus\:border-blue-500:focus{--tw-border-opacity:1;border-color:#3b82f6;border-color:rgb(59 130 246/var(--tw-border-opacity,1))}.focus\:border-indigo-500:focus{--tw-border-opacity:1;border-color:#6366f1;border-color:rgb(99 102 241/var(--tw-border-opacity,1))}.focus\:border-orange-500:focus{--tw-border-opacity:1;border-color:#f97316;border-color:rgb(249 115 22/var(--tw-border-opacity,1))}.focus\:border-yellow-500:focus{--tw-border-opacity:1;border-color:#eab308;border-color:rgb(234 179 8/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid #0000;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(59 130 246/var(--tw-ring-opacity,1))}.focus\:ring-indigo-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(99 102 241/var(--tw-ring-opacity,1))}.focus\:ring-orange-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(249 115 22/var(--tw-ring-opacity,1))}.focus\:ring-yellow-500:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(234 179 8/var(--tw-ring-opacity,1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px}.focus-visible\:outline-none:focus-visible{outline:2px solid #0000;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),0 0 #0000;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-gray-400:focus-visible{--tw-ring-opacity:1;--tw-ring-color:rgb(156 163 175/var(--tw-ring-opacity,1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-300:disabled{--tw-bg-opacity:1;background-color:#d1d5db;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:text-blue-800{--tw-text-opacity:1;color:#1e40af;color:rgb(30 64 175/var(--tw-text-opacity,1))}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-5xl{font-size:3rem;line-height:1}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:768px){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}}@media (min-width:1280px){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}:root{--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-300:#93c5fd;--primary-400:#60a5fa;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--primary-800:#1e40af;--primary-900:#1e3a8a;--neutral-50:#f9fafb;--neutral-100:#f3f4f6;--neutral-200:#e5e7eb;--neutral-300:#d1d5db;--neutral-400:#9ca3af;--neutral-500:#6b7280;--neutral-600:#4b5563;--neutral-700:#374151;--neutral-800:#1f2937;--neutral-900:#111827;--surface-primary:#fff;--surface-secondary:#f8f9fa;--surface-tertiary:#e9ecef;--surface-primary-dark:#1a1a1a;--surface-secondary-dark:#2d2d2d;--surface-tertiary-dark:#404040;--text-primary:#212529;--text-secondary:#6c757d;--text-tertiary:#adb5bd;--text-primary-dark:#f8f9fa;--text-secondary-dark:#adb5bd;--text-tertiary-dark:#6c757d;--border-primary:#dee2e6;--border-secondary:#e9ecef;--border-primary-dark:#495057;--border-secondary-dark:#343a40;--accent-primary:#007bff;--accent-primary-hover:#0056b3;--accent-secondary:#6c757d;--accent-success:#28a745;--accent-danger:#dc3545;--accent-warning:#ffc107;--accent-info:#17a2b8;--error-primary:#dc3545;--error-secondary:#c82333;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #0000001a;--shadow-xl:0 20px 25px #0000001a;--glass-bg:#fffc;--glass-bg-light:#ffffffe6;--glass-backdrop:blur(10px);--glass-border:#fff3;--glass-shadow:0 8px 32px #0000001a;--border-light:#f0f0f0;--border:#e5e5e5;--transition-base:all 0.2s ease;--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1);--accent:var(--accent-primary);--accent-gradient:linear-gradient(135deg,var(--accent-primary) 0%,var(--primary-600) 100%);--primary-gradient:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%);--primary:var(--primary-500);--text-muted:var(--text-tertiary);--surface:var(--surface-primary);--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--success:var(--accent-success);--danger:var(--accent-danger)}.dark{--surface-primary:var(--surface-primary-dark);--surface-secondary:var(--surface-secondary-dark);--surface-tertiary:var(--surface-tertiary-dark);--text-primary:var(--text-primary-dark);--text-secondary:var(--text-secondary-dark);--text-tertiary:var(--text-tertiary-dark);--border-primary:var(--border-primary-dark);--border-secondary:var(--border-secondary-dark)}*{box-sizing:border-box}html{font-size:16px}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;margin:0;min-height:100vh;padding:0}body,input,select,textarea{background-color:#fff!important;color:#212529!important}input,select,textarea{background-color:var(--surface-primary)!important;border-color:#dee2e6!important;border-color:var(--border-primary)!important;color:var(--text-primary)!important}input[type=email],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=url],select,textarea{background-color:#fff!important;border:1px solid #d1d5db!important;color:#111827!important}input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=url]:focus,select:focus,textarea:focus{background-color:#fff!important;border-color:#6366f1!important;box-shadow:0 0 0 3px #6366f11a!important;color:#111827!important}input::placeholder,textarea::placeholder{color:#6b7280!important;opacity:1!important}.placeholder-gray-500::placeholder,.text-gray-500{color:#6b7280!important}.border-gray-300{border-color:#d1d5db!important}:focus{outline:2px solid #007bff;outline:2px solid var(--accent-primary);outline-offset:2px}::selection{background-color:#007bff;background-color:var(--accent-primary);color:#fff}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f8f9fa;background:var(--surface-secondary)}::-webkit-scrollbar-thumb{background:#dee2e6;background:var(--border-primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#adb5bd;background:var(--text-tertiary)}.bg-white{background-color:#fff!important}.bg-gray-50{background-color:#f9fafb!important}.bg-gray-100{background-color:#f3f4f6!important}.text-gray-900{color:#111827!important}.text-gray-700{color:#374151!important}.text-gray-600{color:#4b5563!important}.text-black{color:#000!important}.App,.main-content{background-color:#f8f9fa!important}.sidebar{background-color:#fff!important;border-right:1px solid #e5e7eb!important}
/*# sourceMappingURL=main.66bada9b.css.map*/