.notification-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;max-width:420px;pointer-events:none;padding:0 10px}.notification{background:var(--surface, #ffffff);border-radius:var(--radius-md, 12px);box-shadow:var(--shadow-lg, 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1));border-left:4px solid;pointer-events:auto;animation:slideIn .35s cubic-bezier(.16,1,.3,1);overflow:hidden;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .2s ease,box-shadow .2s ease}.notification:hover{transform:translate(-4px);box-shadow:var(--shadow-xl, 0 25px 50px -12px rgba(0, 0, 0, .15))}.notification-success{border-left-color:var(--success, #059669);background:linear-gradient(to right,var(--success-light, #d1fae5) 0%,var(--surface, #ffffff) 8%)}.notification-error{border-left-color:var(--danger, #dc2626);background:linear-gradient(to right,var(--danger-light, #fee2e2) 0%,var(--surface, #ffffff) 8%)}.notification-warning{border-left-color:var(--warning, #d97706);background:linear-gradient(to right,var(--warning-light, #fef3c7) 0%,var(--surface, #ffffff) 8%)}.notification-info{border-left-color:var(--primary, #2563eb);background:linear-gradient(to right,var(--primary-light, #dbeafe) 0%,var(--surface, #ffffff) 8%)}.notification-content{display:flex;align-items:flex-start;padding:16px 18px;gap:14px}.notification-icon{flex-shrink:0;margin-top:2px}.notification-success .notification-icon{color:var(--success, #059669);flex-shrink:0}.notification-error .notification-icon{color:var(--danger, #dc2626);flex-shrink:0}.notification-warning .notification-icon{color:var(--warning, #d97706);flex-shrink:0}.notification-info .notification-icon{color:var(--primary, #2563eb);flex-shrink:0}.notification-body{flex:1;min-width:0}.notification-title{font-weight:600;font-size:15px;color:var(--text-primary, #0f172a);margin-bottom:6px;letter-spacing:-.01em}.notification-message{font-size:14px;color:var(--text-secondary, #64748b);line-height:1.5;word-wrap:break-word}.notification-close{background:none;border:none;font-size:22px;color:var(--text-tertiary, #94a3b8);cursor:pointer;padding:4px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 6px);transition:all .2s ease;flex-shrink:0;line-height:1}.notification-close:hover{background:var(--gray-100, #f3f4f6);color:var(--text-primary, #374151);transform:scale(1.1)}.notification-close:active{transform:scale(.95)}.notification-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#0000001a}.notification-progress-bar{height:100%;background:currentColor;width:100%;transform-origin:left;animation:progress linear}.notification-success .notification-progress-bar{background:var(--success, #059669)}.notification-error .notification-progress-bar{background:var(--danger, #dc2626)}.notification-warning .notification-progress-bar{background:var(--warning, #d97706)}.notification-info .notification-progress-bar{background:var(--primary, #2563eb)}@keyframes slideIn{0%{transform:translate(calc(100% + 20px));opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(calc(100% + 20px));opacity:0}}.notification.removing{animation:slideOut .25s cubic-bezier(.4,0,1,1) forwards}@keyframes progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (max-width: 640px){.notification-container{top:10px;right:10px;left:10px;max-width:none;padding:0}.notification{margin:0;border-radius:var(--radius, 12px)}.notification-content{padding:14px 16px}}@media (prefers-color-scheme: dark){.notification{background:#1f2937;color:#f9fafb}.notification-title{color:#f9fafb}.notification-message{color:#d1d5db}.notification-close{color:#9ca3af}.notification-close:hover{background:#374151;color:#f3f4f6}}.error-boundary{display:flex;align-items:center;justify-content:center;padding:2rem;background-color:var(--color-gray-50, #f9fafb);border-radius:8px;border:1px solid var(--color-border, #e5e7eb)}.error-boundary--page{min-height:100vh;border:none;border-radius:0}.error-boundary--feature{min-height:200px}.error-boundary__content{max-width:500px;text-align:center}.error-boundary__content--compact{max-width:300px}.error-boundary__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:1rem;color:var(--color-danger, #dc2626)}.error-boundary__icon svg{width:100%;height:100%}.error-boundary__icon--large{width:64px;height:64px}.error-boundary__title{margin:0 0 .75rem;font-size:1.25rem;font-weight:600;color:var(--color-text, #111827)}.error-boundary__title--large{font-size:1.5rem}.error-boundary__message{margin:0 0 1.5rem;font-size:.9375rem;color:var(--color-gray-600, #4b5563);line-height:1.6}.error-boundary__details{margin-bottom:1.5rem;text-align:left}.error-boundary__details summary{cursor:pointer;font-size:.875rem;color:var(--color-gray-500, #6b7280);margin-bottom:.5rem}.error-boundary__stack{padding:1rem;background-color:var(--color-gray-900, #111827);color:var(--color-gray-100, #f3f4f6);border-radius:6px;font-family:monospace;font-size:.75rem;overflow-x:auto;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}.error-boundary__actions{display:flex;gap:.75rem;justify-content:center}.error-boundary__button{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all .15s ease}.error-boundary__button--primary{background-color:var(--color-primary, #2563eb);color:#fff}.error-boundary__button--primary:hover{background-color:var(--color-primary-dark, #1d4ed8)}.error-boundary__button--secondary{background-color:#fff;color:var(--color-text, #374151);border:1px solid var(--color-border, #d1d5db)}.error-boundary__button--secondary:hover{background-color:var(--color-gray-50, #f9fafb)}.error-boundary__button--small{padding:.5rem 1rem;font-size:.8125rem}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.loading-content{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;align-items:center;gap:16px;min-width:200px}.loading-spinner{border:3px solid #f3f3f3;border-top:3px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:20px;height:20px;border-width:2px}.spinner-medium{width:32px;height:32px;border-width:3px}.spinner-large{width:48px;height:48px;border-width:4px}.loading-text{margin:0;color:#666;font-size:14px;font-weight:500}.btn-loading{position:relative;pointer-events:none}.btn-loading .btn-text{opacity:.7}.btn-loading .btn-spinner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.inline-loading{display:inline-flex;align-items:center;gap:8px}.inline-loading .spinner-small{width:16px;height:16px;border-width:2px}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}.skeleton-text{height:16px;margin:8px 0}.skeleton-text.short{width:60%}.skeleton-text.medium{width:80%}.skeleton-text.long{width:100%}.skeleton-avatar{width:40px;height:40px;border-radius:50%}.skeleton-card{height:120px;margin:16px 0}.feature-unavailable{display:flex;align-items:center;justify-content:center;min-height:400px;padding:2rem}.feature-unavailable-content{text-align:center;max-width:500px}.feature-unavailable-icon{color:#6b7280;margin-bottom:1.5rem;display:flex;justify-content:center}.feature-unavailable-title{font-size:1.5rem;font-weight:600;color:#111827;margin-bottom:.75rem}.feature-unavailable-message{font-size:1rem;color:#6b7280;margin-bottom:1.5rem;line-height:1.5}.feature-unavailable-button{display:inline-block;padding:.75rem 1.5rem;background-color:#3b82f6;color:#fff;text-decoration:none;border-radius:.5rem;font-weight:500;transition:background-color .2s}.feature-unavailable-button:hover{background-color:#2563eb}.feature-unavailable-button:active{background-color:#1d4ed8}.tour-control{position:relative;display:inline-block}.tour-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;transition:var(--transition);position:relative}.tour-button:hover{background:var(--primary-50);border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.tour-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tour-button:active{transform:translateY(0)}.tour-menu{position:absolute;top:calc(100% + .5rem);right:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:180px;z-index:1000;overflow:hidden;animation:slideDown .2s ease}.tour-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;text-align:left;font-size:.938rem;color:var(--text-primary);cursor:pointer;transition:var(--transition)}.tour-menu-item:hover{background:var(--gray-50);color:var(--primary)}.tour-menu-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.tour-menu-item svg{flex-shrink:0;color:var(--text-secondary)}.tour-menu-item:hover svg{color:var(--primary)}[data-theme=dark] .tour-button{background:var(--surface);border-color:var(--border)}[data-theme=dark] .tour-button:hover{background:var(--gray-200);border-color:var(--primary)}[data-theme=dark] .tour-menu{background:var(--surface);border-color:var(--border)}[data-theme=dark] .tour-menu-item:hover{background:var(--gray-200)}@media (max-width: 768px){.tour-menu{right:auto;left:0}}.industry-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:.375rem;border:1px solid;font-size:.75rem;font-weight:600;white-space:nowrap;line-height:1}.industry-badge-small{padding:.125rem .375rem;font-size:.625rem}.industry-badge-medium{padding:.25rem .5rem;font-size:.75rem}.industry-badge-large{padding:.375rem .75rem;font-size:.875rem}.industry-icon{font-size:1em;line-height:1}.industry-label{font-size:.875em;text-transform:capitalize}.keyboard-shortcuts-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.keyboard-shortcuts-modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:600px;width:90%;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease}.shortcuts-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.shortcuts-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.close-btn{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);transition:var(--transition)}.close-btn:hover{background:var(--gray-50);color:var(--text-primary)}.shortcuts-content{padding:1.5rem}.shortcuts-toggle{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.shortcuts-toggle label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.shortcuts-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer}.shortcuts-category{margin-bottom:2rem}.shortcuts-category:last-child{margin-bottom:0}.shortcuts-category h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.shortcuts-list{display:flex;flex-direction:column;gap:.75rem}.shortcut-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--gray-50);border-radius:var(--radius)}.shortcut-description{font-size:.938rem;color:var(--text-primary)}.shortcut-keys{display:flex;align-items:center;gap:.25rem}.shortcut-keys kbd{display:inline-block;padding:.25rem .5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;font-weight:600;color:var(--text-primary);box-shadow:0 1px 2px #0000001a}.shortcut-keys span{color:var(--text-secondary);font-size:.875rem;margin:0 .25rem}[data-theme=dark] .shortcut-item,[data-theme=dark] .shortcuts-toggle label,[data-theme=dark] .close-btn:hover{background:var(--gray-200)}.notification-bell-container{position:relative}.notification-bell-button{position:relative;background:none;border:none;cursor:pointer;padding:8px;color:inherit;display:flex;align-items:center;justify-content:center}.notification-badge{position:absolute;top:4px;right:4px;background:#ef4444;color:#fff;border-radius:10px;padding:2px 6px;font-size:11px;font-weight:700;min-width:18px;text-align:center}.notification-dropdown{position:absolute;top:100%;right:0;margin-top:8px;width:360px;max-height:500px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #0000001a;z-index:1000;display:flex;flex-direction:column}.notification-dropdown-header{padding:16px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.notification-dropdown-header h3{margin:0;font-size:18px;font-weight:600}.mark-all-read{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:14px;padding:4px 8px}.mark-all-read:hover{text-decoration:underline}.notification-list{overflow-y:auto;max-height:400px}.notification-item{padding:12px 16px;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;align-items:flex-start;gap:12px;transition:background-color .2s}.notification-item:hover{background-color:#f9fafb}.notification-item.unread{background-color:#eff6ff}.notification-title{font-weight:600;font-size:14px;margin-bottom:4px;color:#111827}.notification-message{font-size:13px;color:#6b7280;margin-bottom:4px;line-height:1.4}.notification-time{font-size:11px;color:#9ca3af}.notification-dot{width:8px;height:8px;border-radius:50%;background:#3b82f6;margin-top:6px;flex-shrink:0}.notification-empty{padding:32px;text-align:center;color:#9ca3af}.notification-footer{padding:12px 16px;border-top:1px solid #e5e7eb;text-align:center}.notification-footer a{color:#3b82f6;text-decoration:none;font-size:14px}.notification-footer a:hover{text-decoration:underline}.call-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.call-modal{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:2rem;min-width:400px;max-width:90vw;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.call-modal-header{text-align:center;color:#fff;margin-bottom:2rem}.call-avatar{width:80px;height:80px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:600;margin:0 auto 1rem;border:3px solid rgba(255,255,255,.3)}.call-avatar.large{width:120px;height:120px;font-size:3rem}.call-modal-header h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.call-type,.call-status{margin:0;font-size:1rem;opacity:.9}.call-modal-actions{display:flex;justify-content:center;gap:1rem}.call-btn{width:60px;height:60px;border-radius:50%;border:none;font-size:1.5rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d}.accept-btn{background:#10b981;color:#fff}.accept-btn:hover{background:#059669;transform:scale(1.1)}.reject-btn,.end-btn{background:#ef4444;color:#fff}.reject-btn:hover,.end-btn:hover{background:#dc2626;transform:scale(1.1)}.active-call{background:#1f2937;padding:0;min-width:800px;max-width:95vw;min-height:600px;display:flex;flex-direction:column}.call-video-container{flex:1;position:relative;background:#000;border-radius:20px 20px 0 0;overflow:hidden}.remote-video-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.remote-video{width:100%;height:100%;object-fit:contain}.call-audio-view{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#fff}.call-audio-view h2{margin-top:1rem;font-size:1.5rem}.local-video-wrapper{position:absolute;bottom:20px;right:20px;width:200px;height:150px;border-radius:12px;overflow:hidden;border:2px solid rgba(255,255,255,.3);box-shadow:0 4px 12px #00000080}.local-video{width:100%;height:100%;object-fit:cover}.call-info{padding:1rem;background:#ffffff0d;display:flex;justify-content:space-between;align-items:center;color:#fff}.call-duration{font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums}.call-status-indicators{display:flex;gap:1rem;font-size:.875rem;opacity:.8}.call-controls{display:flex;justify-content:center;gap:1rem;padding:1.5rem;background:#ffffff0d;border-radius:0 0 20px 20px}.call-control-btn{width:50px;height:50px;border-radius:50%;border:none;background:#ffffff1a;color:#fff;font-size:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.call-control-btn:hover{background:#fff3;transform:scale(1.1)}.call-control-btn.active{background:#3b82f64d}.call-control-btn.muted{background:#ef44444d}.end-call-btn{background:#ef4444}.end-call-btn:hover{background:#dc2626}@media (max-width: 768px){.call-modal{min-width:90vw;padding:1.5rem}.active-call{min-width:100vw;min-height:100vh;border-radius:0}.local-video-wrapper{width:120px;height:90px;bottom:80px;right:10px}}.chatbot-widget{position:fixed;bottom:24px;right:24px;z-index:9999;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.chatbot-toggle{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #667eea66;transition:all .3s ease}.chatbot-toggle:hover{transform:scale(1.05);box-shadow:0 6px 25px #667eea80}.chatbot-toggle.open{background:#ef4444}.chatbot-toggle svg{width:28px;height:28px;color:#fff}.chatbot-window{position:absolute;bottom:80px;right:0;width:380px;height:550px;background:#fff;border-radius:16px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease}.chatbot-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px 20px;display:flex;align-items:center;justify-content:space-between}.chatbot-header-info{display:flex;align-items:center;gap:12px}.chatbot-avatar{width:40px;height:40px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center}.chatbot-avatar svg{width:24px;height:24px}.chatbot-header h3{margin:0;font-size:16px;font-weight:600}.chatbot-status{font-size:12px;opacity:.9}.chatbot-status:before{content:"";display:inline-block;width:8px;height:8px;background:#4ade80;border-radius:50%;margin-right:6px}.chatbot-clear{background:#fff3;border:none;border-radius:8px;padding:8px;cursor:pointer;transition:background .2s}.chatbot-clear:hover{background:#ffffff4d}.chatbot-clear svg{width:20px;height:20px;color:#fff}.chatbot-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:#f8fafc}.chatbot-message{display:flex;gap:8px;max-width:85%}.chatbot-message.user{align-self:flex-end;flex-direction:row-reverse}.chatbot-message.bot{align-self:flex-start}.chatbot-message-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.chatbot-message-avatar svg{width:18px;height:18px;color:#fff}.chatbot-message-content{display:flex;flex-direction:column;gap:8px}.chatbot-message-text{padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.5}.chatbot-message.bot .chatbot-message-text{background:#fff;color:#1e293b;border-bottom-left-radius:4px;box-shadow:0 1px 3px #00000014}.chatbot-message.user .chatbot-message-text{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:4px}.chatbot-message-text ul{margin:8px 0;padding-left:20px}.chatbot-message-text li{margin:4px 0}.chatbot-message-text strong{font-weight:600}.chatbot-actions{display:flex;flex-wrap:wrap;gap:8px}.chatbot-action-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.chatbot-action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.chatbot-suggestions{display:flex;flex-wrap:wrap;gap:6px}.chatbot-suggestion{background:#fff;border:1px solid #e2e8f0;padding:6px 12px;border-radius:16px;font-size:12px;color:#64748b;cursor:pointer;transition:all .2s}.chatbot-suggestion:hover{background:#f1f5f9;border-color:#667eea;color:#667eea}.chatbot-typing{display:flex;gap:4px;padding:4px}.chatbot-typing span{width:8px;height:8px;background:#94a3b8;border-radius:50%;animation:typing 1.4s infinite}.chatbot-typing span:nth-child(2){animation-delay:.2s}.chatbot-typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.chatbot-input{display:flex;gap:8px;padding:16px;background:#fff;border-top:1px solid #e2e8f0}.chatbot-input input{flex:1;padding:12px 16px;border:1px solid #e2e8f0;border-radius:24px;font-size:14px;outline:none;transition:border-color .2s}.chatbot-input input:focus{border-color:#667eea}.chatbot-input input::placeholder{color:#94a3b8}.chatbot-input button{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.chatbot-input button:hover:not(:disabled){transform:scale(1.05)}.chatbot-input button:disabled{opacity:.5;cursor:not-allowed}.chatbot-input button svg{width:20px;height:20px;color:#fff}@media (max-width: 480px){.chatbot-window{width:calc(100vw - 32px);height:calc(100vh - 120px);bottom:70px;right:-8px}.chatbot-widget{bottom:16px;right:16px}}.layout{min-height:100vh;display:flex;background:var(--background)}.layout:has(.offline-indicator) .header{margin-top:0}.layout:has(.offline-indicator) .main-wrapper{margin-top:0}.sidebar{width:260px;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;height:100vh;z-index:1000;box-shadow:var(--shadow-sm);overflow:hidden}.sidebar-header{padding:2rem 1.25rem;border-bottom:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;align-items:center;background:var(--surface);min-height:100px;gap:.5rem}.sidebar-industry-badge{display:flex;justify-content:center;width:100%}.header-industry-badge{margin-left:.5rem;display:inline-flex;align-items:center}.logo{display:flex;align-items:center;justify-content:center;text-decoration:none;color:var(--primary);width:100%}.logo svg{width:28px;height:28px}.logo-image{max-width:100%;height:auto;max-height:80px;width:auto;object-fit:contain;filter:drop-shadow(0 1px 2px rgba(0,0,0,.05))}.sidebar-nav{flex:1;padding:1rem 0;display:flex;flex-direction:column;gap:.25rem;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}[data-theme=dark] .sidebar-nav::-webkit-scrollbar-thumb{background:#fff3}[data-theme=dark] .sidebar{background:var(--surface);border-right-color:var(--border)}[data-theme=dark] .sidebar-header{background:var(--surface);border-bottom-color:var(--border)}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#0000004d}.nav-item{display:flex;align-items:center;justify-content:flex-start;gap:.875rem;width:calc(100% - 1rem);min-height:44px;padding:.75rem 1rem;margin:0 .5rem;border-radius:var(--radius);color:var(--text-secondary);text-decoration:none;transition:var(--transition);position:relative;font-weight:var(--font-medium);font-size:var(--text-sm);box-sizing:border-box;font-family:var(--font-family);letter-spacing:0}.nav-item:hover{background:var(--nav-hover-bg);color:var(--primary);transform:translate(2px)}.nav-group-toggle:hover{background:var(--nav-hover-bg);color:var(--primary)}[data-theme=dark] .nav-item:hover,[data-theme=dark] .nav-group-toggle:hover{background:var(--nav-hover-bg)}.nav-item.active,.nav-group-toggle.active{background:var(--primary);color:#fff;font-weight:var(--font-semibold);box-shadow:var(--shadow-sm)}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:#fff;border-radius:0 3px 3px 0}.nav-item svg,.nav-item .nav-icon{width:20px;height:20px;flex-shrink:0;stroke-width:2;display:flex;align-items:center;justify-content:center}.nav-item.active svg,.nav-item.active .nav-icon{color:#fff;stroke:#fff}.nav-item:not(.active) svg,.nav-item:not(.active) .nav-icon{color:var(--text-primary);stroke:var(--text-primary)}.nav-label{color:inherit;flex:1;text-align:left;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-group{display:flex;flex-direction:column;width:100%}.nav-group-toggle{cursor:pointer;background:transparent;border:none;width:100%;display:flex;align-items:center;justify-content:flex-start;gap:.875rem;min-height:44px;padding:.75rem 1rem;margin:0 .5rem;border-radius:var(--radius);color:var(--text-secondary);text-decoration:none;transition:var(--transition);position:relative;font-weight:var(--font-medium);font-size:var(--text-sm);font-family:var(--font-family);letter-spacing:0;box-sizing:border-box}.nav-group-toggle .nav-icon{width:20px;height:20px;flex-shrink:0;stroke-width:2;display:flex;align-items:center;justify-content:center}.nav-group-toggle .nav-chevron{margin-left:auto;transition:transform .2s ease;flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.nav-group-toggle .nav-chevron.expanded{transform:rotate(180deg)}.nav-group.active-group>.nav-group-toggle{background:var(--primary);color:#fff;font-weight:var(--font-semibold)}.nav-group.active-group>.nav-group-toggle .nav-icon,.nav-group.active-group>.nav-group-toggle .nav-chevron{color:#fff;stroke:#fff}.nav-section-divider{margin-top:.5rem;margin-bottom:.5rem;padding:.5rem 1rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);opacity:.7;-webkit-user-select:none;user-select:none;pointer-events:none}.nav-submenu{display:flex;flex-direction:column;padding:.25rem .5rem .5rem 2.75rem;gap:.125rem;animation:slideDown .2s ease;width:100%;box-sizing:border-box}@keyframes slideDown{0%{opacity:0;max-height:0;transform:translateY(-10px)}to{opacity:1;max-height:500px;transform:translateY(0)}}.nav-subitem{display:flex;align-items:center;gap:.625rem;width:calc(100% - .5rem);min-height:38px;padding:.625rem .75rem;margin:0 .25rem;border-radius:var(--radius);color:var(--text-secondary);text-decoration:none;transition:var(--transition);font-weight:var(--font-medium);font-size:var(--text-sm);font-family:var(--font-family);letter-spacing:0;position:relative;box-sizing:border-box}.nav-subitem:hover{background:var(--nav-hover-bg);color:var(--primary)}.nav-subitem.active{background:var(--primary);color:#fff!important;font-weight:var(--font-semibold)}[data-theme=dark] .nav-subitem:hover{background:var(--nav-hover-bg)}[data-theme=dark] .nav-subitem.active{background:var(--primary);color:#fff!important}.nav-subitem.active .nav-icon,.nav-subitem.active svg{color:#fff;stroke:#fff}.nav-subitem .nav-icon{width:18px;height:18px}.sidebar-footer{padding:1rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:flex-start}[data-theme=dark] .sidebar-footer{border-top-color:var(--border)}.sidebar-version{font-size:.75rem;color:var(--text-secondary);font-weight:400}.user-profile{display:none}.user-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;margin-bottom:.5rem}.user-info{text-align:center}.user-name{font-weight:600;color:var(--text-primary);font-size:.875rem;margin-bottom:.25rem}.user-role{font-size:.75rem;color:var(--text-secondary)}.make-appointment-btn{width:100%;padding:.75rem 1rem;background:linear-gradient(135deg,var(--accent-blue) 0%,#2563eb 100%);color:#fff;border:none;border-radius:12px;font-size:.813rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #3b82f64d;position:relative;overflow:hidden;min-height:44px}.make-appointment-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.make-appointment-btn:hover:before{left:100%}.make-appointment-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 8px 16px #3b82f666}.make-appointment-btn:active{transform:translateY(0);box-shadow:0 4px 8px #3b82f64d}.main-wrapper{flex:1;margin-left:260px;display:flex;flex-direction:column;min-height:100vh;background:var(--background)}.header{background:var(--surface);border-bottom:1px solid var(--border);box-shadow:0 1px 3px #0000000d;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;transition:background-color .3s ease,border-color .3s ease}[data-theme=dark] .header{background:#1e293bf2;border-bottom-color:var(--border);box-shadow:0 1px 3px #0000004d}.header-content{padding:1.25rem 2.5rem;min-height:72px;display:flex;align-items:center;justify-content:space-between}.search-container,.search-input{display:none}.app-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:800;color:var(--text-primary)}.app-title-mark{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--primary-gradient);color:#fff;font-weight:var(--font-extrabold);font-size:var(--text-base);letter-spacing:.5px;box-shadow:var(--shadow-colored);transition:var(--transition)}.app-title-mark:hover{transform:scale(1.05);box-shadow:var(--shadow-lg)}.app-title-logo{width:auto;height:38px;max-width:140px;object-fit:contain;border-radius:var(--radius);transition:var(--transition);filter:drop-shadow(0 1px 2px rgba(0,0,0,.05))}.app-title-logo:hover{transform:scale(1.02);filter:drop-shadow(0 2px 4px rgba(0,0,0,.08))}.app-title-text{display:flex;flex-direction:column;line-height:1.1}.app-title-primary{color:var(--primary);font-weight:700}.app-title-secondary{font-size:.875rem;color:var(--text-secondary)}.header-right{display:flex;align-items:center;gap:1rem}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;transition:var(--transition)}.theme-toggle:hover{background:var(--gray-50);border-color:var(--primary);color:var(--primary)}.theme-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=dark] .theme-toggle{border-color:var(--border)}[data-theme=dark] .theme-toggle:hover{background:var(--gray-800);border-color:var(--primary)}.dropdown-container{position:relative}.dropdown-select{padding:.75rem 1rem;border:2px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000000d;min-height:44px}.dropdown-select:hover{border-color:var(--primary);box-shadow:0 4px 8px #f59e0b1a}.dropdown-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #f59e0b1a,0 4px 8px #f59e0b1a}.loading-spinner{color:#666;font-size:14px;padding:8px 16px}.loading-container{display:flex;justify-content:center;align-items:center;height:200px}.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.main-content{flex:1;padding:var(--spacing-2xl);background:var(--background);min-height:calc(100vh - 72px);overflow-y:auto}.user-menu{position:relative}.user-button{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:transparent;border:none;border-radius:var(--radius);cursor:pointer;transition:var(--transition)}.user-button:hover{background:var(--gray-100)}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:240px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;animation:fadeIn .2s ease}.dropdown-header{padding:1rem}.dropdown-user-info strong{display:block;color:var(--text-primary);margin-bottom:.25rem}.dropdown-user-info small{display:block;color:var(--text-secondary);font-size:.813rem}.user-roles{display:flex;gap:.25rem;margin-top:.5rem;flex-wrap:wrap}.role-badge{padding:.125rem .5rem;background:var(--gray-100);color:var(--text-secondary);font-size:.75rem;border-radius:var(--radius-sm)}.dropdown-divider{height:1px;background:var(--border)}.dropdown-item{width:100%;padding:.75rem 1rem;background:transparent;border:none;text-align:left;color:var(--text-primary);cursor:pointer;transition:var(--transition);font-size:.875rem}.dropdown-item:hover{background:var(--gray-50)}.mobile-menu-toggle{display:none;position:fixed;top:1rem;left:1rem;z-index:1001;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem;cursor:pointer;color:var(--text-primary);box-shadow:var(--shadow-md);min-width:44px;min-height:44px}.mobile-menu-toggle:hover{background:var(--gray-50);border-color:var(--primary)}.mobile-menu-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:opacity .3s ease}.sidebar-overlay.active{display:block}@media (max-width: 1024px){.mobile-menu-toggle{display:flex;align-items:center;justify-content:center}.sidebar{transform:translate(-100%);transition:transform .3s ease;z-index:999}.sidebar.open{transform:translate(0)}.main-wrapper{margin-left:0}.header-content{padding-left:4rem}}@media (max-width: 768px){.sidebar{width:280px}.nav-item{min-height:44px;padding:.875rem 1rem}.user-name{display:none}.main-content{padding:1rem}.header-content{padding:1rem 1rem 1rem 4rem;min-height:64px}.app-title{font-size:1rem}.app-title-mark{width:36px;height:36px;font-size:.875rem}.header-right{gap:.5rem}.theme-toggle{width:36px;height:36px}}@media (max-width: 640px){.sidebar{width:100%;max-width:320px}.main-content{padding:.75rem}.header-content{padding:.75rem .75rem .75rem 3.5rem}.app-title-text{display:none}.mobile-menu-toggle{top:.75rem;left:.75rem;padding:.625rem}}.layout.sidebar-collapsed .sidebar{width:72px}.layout.sidebar-collapsed .main-wrapper{margin-left:72px}.layout.sidebar-collapsed .nav-label,.layout.sidebar-collapsed .nav-section-divider,.layout.sidebar-collapsed .sidebar-version{display:none}.layout.sidebar-collapsed .nav-item,.layout.sidebar-collapsed .nav-group-toggle{justify-content:center;padding-left:0;padding-right:0}.layout.sidebar-collapsed .nav-submenu{display:none}.layout.sidebar-collapsed .sidebar-header{padding:1.25rem 0}.layout.sidebar-collapsed .logo-image{max-height:40px}.sidebar-toggle{position:fixed;top:1rem;left:1rem;z-index:1200;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .75rem;cursor:pointer;color:var(--text-primary);box-shadow:var(--shadow-md);min-width:40px;min-height:40px;transition:var(--transition)}.sidebar-toggle:hover{background:var(--nav-hover-bg);border-color:var(--primary)}.layout:not(.sidebar-collapsed) .sidebar-toggle{left:270px}.layout.sidebar-collapsed .sidebar-toggle{left:82px}@media (max-width: 1024px){.layout.sidebar-collapsed .main-wrapper{margin-left:72px}.layout:not(.sidebar-collapsed) .sidebar-toggle{left:1rem}}.mfa-setup{padding:20px;max-width:600px;margin:0 auto}.mfa-setup h3{margin-bottom:20px;color:var(--text-primary)}.mfa-status{padding:15px;border-radius:8px;margin-bottom:20px}.mfa-status.enabled{background-color:var(--success-light, #d4edda);border:1px solid var(--success, #28a745);color:var(--success-dark, #155724)}.mfa-method{margin:10px 0;font-weight:500}.mfa-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px}.mfa-method-card{padding:20px;border:1px solid var(--border-color, #ddd);border-radius:8px;background:var(--card-background, #fff)}.mfa-method-card h4{margin-top:0;color:var(--text-primary)}.mfa-method-card p{color:var(--text-secondary);margin-bottom:15px}.qr-code-container{text-align:center;margin:20px 0;padding:20px;background:var(--card-background, #fff);border-radius:8px}.qr-code-container img{max-width:250px;height:auto}.manual-entry{text-align:center;margin:15px 0;color:var(--text-secondary)}.manual-entry code{background:var(--code-background, #f4f4f4);padding:5px 10px;border-radius:4px;font-family:monospace;display:inline-block;margin-left:5px}.verification-step{margin-top:30px;padding:20px;border:1px solid var(--border-color, #ddd);border-radius:8px}.verification-step h4{margin-top:0;color:var(--text-primary)}.backup-codes{margin-top:30px;padding:20px;background:var(--warning-light, #fff3cd);border:1px solid var(--warning, #ffc107);border-radius:8px}.backup-codes h4{margin-top:0;color:var(--warning-dark, #856404)}.backup-codes .warning{color:var(--warning-dark, #856404);margin-bottom:15px}.codes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin:20px 0}.backup-code{padding:10px;background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:4px;text-align:center;font-family:monospace;font-size:14px;font-weight:600;color:var(--text-primary)}.btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.cm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:opacity .3s ease}.cm-open{opacity:1;pointer-events:auto}.cm-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#11182799;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cm-modal{position:relative;width:100%;max-width:420px;background:#fff;border-radius:16px;padding:24px;box-shadow:0 25px 50px #00000040;transform:scale(.95) translateY(16px);opacity:0;transition:all .3s ease}.cm-modal-open{transform:scale(1) translateY(0);opacity:1}.cm-header{display:flex;justify-content:space-between;align-items:flex-start}.cm-title-group{display:flex;align-items:center;gap:12px}.cm-icon{height:40px;width:40px;border-radius:50%;background:#e0e7ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;font-size:20px}.cm-title{font-size:20px;font-weight:700;color:#111827}.cm-close{border:none;background:transparent;font-size:18px;color:#9ca3af;cursor:pointer;padding:4px;border-radius:6px}.cm-close:hover{background:#f3f4f6;color:#374151}.cm-body{margin-top:16px;font-size:14px;color:#4b5563;line-height:1.6}.cm-footer{margin-top:24px;display:flex;flex-direction:column-reverse;gap:10px}@media (min-width: 640px){.cm-footer{flex-direction:row;justify-content:flex-end}}.cm-btn{padding:10px 18px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.cm-cancel{background:#fff;color:#374151;border:1px solid #d1d5db}.cm-cancel:hover{background:#f9fafb}.cm-confirm{background:#4f46e5;color:#fff}.cm-confirm:hover{background:#4338ca}.cm-confirm:active{transform:scale(.96)}.cm-icon svg{width:20px;height:20px}.cm-close svg{width:18px;height:18px}.pwa-prompts{position:fixed;bottom:0;left:0;right:0;z-index:10000;display:flex;flex-direction:column;gap:.5rem;padding:1rem;pointer-events:none}.pwa-update-banner,.pwa-offline-banner,.pwa-install-banner{background-color:#1976d2;color:#fff;border-radius:8px;padding:1rem;box-shadow:0 4px 12px #00000026;pointer-events:auto;animation:slideUp .3s ease-out}.pwa-offline-banner{background-color:#2e7d32}.pwa-install-banner{background-color:#1976d2}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.pwa-content{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pwa-icon{font-size:1.5rem;flex-shrink:0}.pwa-text{display:flex;flex-direction:column;gap:.25rem;flex:1}.pwa-title{font-weight:600;font-size:1rem}.pwa-message{font-size:.875rem;opacity:.9}.pwa-actions{display:flex;gap:.5rem;flex-shrink:0}.pwa-button{padding:.5rem 1rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.pwa-button-primary{background-color:#fff;color:#1976d2}.pwa-button-primary:hover{background-color:#f5f5f5}.pwa-button-secondary{background-color:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}.pwa-button-secondary:hover{background-color:#ffffff1a}@media (max-width: 640px){.pwa-content{flex-direction:column;align-items:flex-start}.pwa-actions{width:100%}.pwa-button{flex:1}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.login-container{width:100%;max-width:420px;background:var(--background);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:2.5rem;animation:fadeIn .4s ease;position:relative}.login-header-actions{position:absolute;top:1.25rem;right:1.25rem;z-index:10}.login-header{text-align:center;margin-bottom:2rem}.login-logo{color:var(--primary);margin-bottom:1rem}.login-logo-image{width:260px;height:95px;object-fit:contain;object-position:center;margin:0 auto 1.5rem;display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.05))}.login-header h1{font-size:1.75rem;margin-bottom:.5rem}.login-subtitle{font-size:1rem;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.5;max-width:500px;margin-left:auto;margin-right:auto}.login-header p{color:var(--text-secondary);font-size:.938rem}.login-form{margin-bottom:1.5rem}.btn-block{width:100%;margin-top:.5rem}.login-links{margin-top:1rem;text-align:center}.login-links a{color:#667eea!important;cursor:pointer!important;text-decoration:underline!important;font-size:.9rem!important;font-weight:500!important;display:inline-block!important}.login-links a:hover{color:#5568d3!important;text-decoration:underline!important}.login-footer{text-align:center;padding-top:1.5rem;border-top:1px solid var(--border)}.login-footer p{font-size:.813rem;color:var(--text-secondary);margin-bottom:.5rem}.login-footer code{display:inline-block;padding:.5rem 1rem;background:var(--gray-100);border-radius:var(--radius);font-size:.875rem;color:var(--text-primary)}.login-error-message{background:var(--error-bg);color:var(--error-text);padding:.75rem 1rem;border-radius:var(--radius);font-size:.875rem;margin-bottom:1.5rem}.info-message{background:#eff6ff;color:#2563eb;padding:.75rem 1rem;border-radius:var(--radius);font-size:.875rem;margin-top:1rem;border-left:3px solid #2563eb}.info-message p{margin:0;text-align:center}.demo-credentials{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}.credential-item{display:flex;flex-direction:column;align-items:center;padding:8px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.credential-item strong{color:#374151;font-size:.875rem;margin-bottom:4px}.credential-item code{background:#1f2937;color:#f9fafb;padding:4px 8px;border-radius:4px;font-size:.75rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.credential-note{margin-top:1rem;font-size:.9rem;color:var(--text-secondary);font-style:italic;grid-column:1 / -1;text-align:center}.password-wrapper{position:relative}.password-wrapper .form-input{width:100%;padding-right:40px}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;display:flex;align-items:center;color:#666}.password-toggle:hover{color:#000}@media (max-width: 768px){.demo-credentials{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.login-container{padding:2rem 1.5rem}.demo-credentials{grid-template-columns:1fr}}.skeleton-text{display:flex;flex-direction:column;gap:8px}.skeleton-card{padding:16px;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:12px}.skeleton-table{display:flex;flex-direction:column;gap:8px}.skeleton-table-row{display:flex;gap:16px;padding:12px 0;border-bottom:1px solid #f3f4f6}.skeleton-table-row>div{flex:1}.skeleton-table-row>div:first-child{flex:.5}.skeleton-table-row>div:last-child{flex:.5}.skeleton-list{display:flex;flex-direction:column;gap:12px}.skeleton-list-item{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e5e7eb;border-radius:8px}.skeleton-list-content{flex:1;display:flex;flex-direction:column;gap:8px}.skeleton-dashboard{display:flex;flex-direction:column;gap:20px}.skeleton-dashboard-header{display:flex;flex-direction:column;gap:8px}.skeleton-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.skeleton-dashboard-card{padding:20px;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-direction:column;gap:12px}.skeleton-detail{display:flex;flex-direction:column;gap:2rem}.skeleton-detail-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.skeleton-detail-content{display:flex;flex-direction:column;gap:2rem}.skeleton-detail-card{background:var(--surface);border-radius:var(--radius-lg);padding:2rem;border:1px solid var(--border)}.skeleton-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.skeleton-detail-item{display:flex;flex-direction:column;gap:.5rem}@media (max-width: 768px){.skeleton-dashboard-grid{grid-template-columns:1fr}.skeleton-table-row{flex-direction:column;gap:8px}.skeleton-table-row>div{flex:1}.skeleton-detail-grid{grid-template-columns:1fr}.skeleton-detail-card{padding:1.5rem}}.enhanced-kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--spacing-xl);position:relative;overflow:hidden;transition:var(--transition);cursor:pointer;box-shadow:var(--shadow-sm);height:100%;display:flex;flex-direction:column}.enhanced-kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--secondary));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.enhanced-kpi-card:hover:before{transform:scaleX(1)}.enhanced-kpi-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary)}.enhanced-kpi-card:hover .kpi-icon{transform:scale(1.1);box-shadow:var(--shadow-colored)}.enhanced-kpi-card.hovered{transform:translateY(-2px)}.enhanced-kpi-card.primary{background:linear-gradient(135deg,#3b82f60d,#93c5fd0d)}.enhanced-kpi-card.success{background:linear-gradient(135deg,#10b9810d,#6ee7b70d)}.enhanced-kpi-card.warning{background:linear-gradient(135deg,#f59e0b0d,#fbbf240d)}.enhanced-kpi-card.danger{background:linear-gradient(135deg,#ef44440d,#fca5a50d)}.enhanced-kpi-card.info{background:linear-gradient(135deg,#8b5cf60d,#c4b5fd0d)}.enhanced-kpi-card.large{padding:2rem}.enhanced-kpi-card.small{padding:1rem}.kpi-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.kpi-icon{width:3rem;height:3rem;border-radius:var(--radius);background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;box-shadow:var(--shadow-colored);transition:var(--transition);flex-shrink:0}.kpi-title{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.kpi-content{margin-bottom:1rem}.kpi-value{font-size:3rem;font-weight:var(--font-extrabold);color:var(--text-primary);line-height:1;margin-bottom:var(--spacing-sm);letter-spacing:-.02em}.kpi-subtitle{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem}.kpi-trend{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:6px;width:fit-content}.kpi-trend.up{background:#10b9811a;color:#059669}.kpi-trend.down{background:#ef44441a;color:#dc2626}.kpi-trend.neutral{background:#6b72801a;color:#6b7280}.trend-icon{font-size:.875rem}.trend-value{font-weight:600}.kpi-children{margin-bottom:1rem}.kpi-footer{display:flex;justify-content:flex-end}.kpi-action{font-size:.75rem;color:var(--primary);font-weight:600;opacity:0;transform:translate(-8px);transition:all .3s ease}.enhanced-kpi-card:hover .kpi-action{opacity:1;transform:translate(0)}.loading-skeleton{width:60%;height:2.5rem;background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-tertiary) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:4px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.kpi-link{text-decoration:none;color:inherit;display:block}.kpi-link:hover{text-decoration:none}@media (max-width: 768px){.enhanced-kpi-card{padding:1rem}.kpi-value{font-size:2rem}.kpi-icon{width:2rem;height:2rem;font-size:1rem}}[data-theme=dark] .enhanced-kpi-card{box-shadow:0 2px 8px #0003}[data-theme=dark] .enhanced-kpi-card:hover{box-shadow:0 8px 32px #0000004d}[data-theme=dark] .enhanced-kpi-card.primary{background:linear-gradient(135deg,#3b82f61a,#93c5fd1a)}[data-theme=dark] .enhanced-kpi-card.success{background:linear-gradient(135deg,#10b9811a,#6ee7b71a)}[data-theme=dark] .enhanced-kpi-card.warning{background:linear-gradient(135deg,#f59e0b1a,#fbbf241a)}[data-theme=dark] .enhanced-kpi-card.danger{background:linear-gradient(135deg,#ef44441a,#fca5a51a)}[data-theme=dark] .enhanced-kpi-card.info{background:linear-gradient(135deg,#8b5cf61a,#c4b5fd1a)}.dashboard{padding:0;max-width:100%;margin:0;background:#f8fafc;min-height:100vh}.dashboard-loading{display:flex;align-items:center;justify-content:center;min-height:60vh}.dashboard-welcome{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:3rem 2rem;margin-bottom:2rem;border-radius:0 0 24px 24px;box-shadow:0 4px 20px #667eea33}.welcome-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.welcome-text{flex:1;min-width:300px}.welcome-title{font-size:2.5rem;font-weight:800;margin:0 0 .75rem;letter-spacing:-.02em;line-height:1.2}.welcome-subtitle{font-size:1.25rem;margin:0;opacity:1;line-height:1.6;font-weight:500;color:#fffffffa;text-shadow:0 2px 4px rgba(0,0,0,.1)}.welcome-actions{display:flex;gap:1rem;align-items:center}.btn-refresh{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:10px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s}.btn-refresh:hover{background:#ffffff4d;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.btn-refresh svg{transition:transform .3s}.btn-refresh:hover svg{transform:rotate(180deg)}.kpi-row{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem;padding:0 1rem;max-width:1400px;margin-left:auto;margin-right:auto}@media (min-width: 641px){.kpi-row{grid-template-columns:repeat(2,1fr);gap:1.25rem;padding:0 1.5rem}}@media (min-width: 1025px){.kpi-row{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:2rem;padding:0 2rem}}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:1rem;padding:0 1rem 1rem}@media (min-width: 641px){.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;padding:0 1.5rem 1.5rem}}@media (min-width: 1025px){.dashboard-grid{grid-template-columns:repeat(12,1fr);gap:1.5rem;padding:0 2rem 2rem}}.dashboard-card{background:#fff;border-radius:16px;padding:1.75rem;box-shadow:0 2px 8px #0000000a;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative;overflow:hidden}.dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s}.dashboard-card:hover{box-shadow:0 8px 24px #00000014;transform:translateY(-2px);border-color:#c7d2fe}.dashboard-card:hover:before{transform:scaleX(1)}.chart-card,.list-card{grid-column:span 6;min-height:400px}.activity-card{grid-column:span 12;min-height:350px}.table-card{grid-column:span 12}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f3f4f6}.card-header h3{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0;letter-spacing:-.01em}.card-subtitle{font-size:.875rem;color:#6b7280;font-weight:500}.card-link{font-size:.875rem;color:#667eea;text-decoration:none;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:.25rem}.card-link:hover{color:#764ba2;gap:.5rem}.card-content{flex:1;display:flex;flex-direction:column}.chart-container{flex:1;min-height:300px;display:flex;align-items:center;justify-content:center}.chart-svg{width:100%;height:100%;shape-rendering:geometricPrecision}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;color:#9ca3af;flex:1}.empty-state p{font-size:1rem;margin:0;color:#6b7280}.btn-create{margin-top:1rem;padding:.75rem 1.5rem;background:#667eea;color:#fff;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s;display:inline-block}.btn-create:hover{background:#764ba2;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.status-distribution{display:flex;flex-direction:column;gap:.75rem}.status-item{display:flex;align-items:center;gap:1rem;padding:.875rem;background:#f9fafb;border-radius:10px;transition:all .2s}.status-item:hover{background:#f3f4f6;transform:translate(4px)}.status-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.status-info{flex:1;display:flex;justify-content:space-between;align-items:center}.status-name{font-weight:600;color:#1a202c;text-transform:capitalize}.status-count{font-weight:700;color:#667eea;font-size:1.125rem}.assignments-list{display:flex;flex-direction:column;gap:.75rem}.assignment-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f9fafb;border-radius:12px;text-decoration:none;color:inherit;transition:all .2s;border:2px solid transparent}.assignment-item:hover{background:#f3f4f6;border-color:#c7d2fe;transform:translate(4px);box-shadow:0 4px 12px #0000000d}.assignment-avatar{flex-shrink:0}.avatar-circle{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.125rem;box-shadow:0 2px 8px #667eea4d}.assignment-details{flex:1;min-width:0}.assignment-title{font-weight:700;color:#1a202c;margin-bottom:.25rem;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-meta{font-size:.875rem;color:#6b7280;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignment-date{font-size:.75rem;color:#9ca3af}.assignment-status{padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.assignment-status.active{background:#dcfce7;color:#166534}.assignment-status.inactive,.assignment-status.pending{background:#fef3c7;color:#92400e}.activity-feed{display:flex;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto;padding-right:.5rem}.activity-feed::-webkit-scrollbar{width:6px}.activity-feed::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.activity-feed::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.activity-feed::-webkit-scrollbar-thumb:hover{background:#94a3b8}.activity-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f9fafb;border-radius:12px;border-left:3px solid transparent;transition:all .2s}.activity-item:hover{background:#f3f4f6;border-left-color:#667eea;transform:translate(4px)}.activity-icon{font-size:1.5rem;flex-shrink:0;margin-top:2px}.activity-content{flex:1;min-width:0}.activity-action{font-weight:700;font-size:.95rem;color:#1a202c;margin-bottom:.25rem;text-transform:capitalize}.activity-meta{font-size:.85rem;color:#6b7280}.product-table-container{overflow-x:auto;border-radius:12px}.product-table{width:100%;border-collapse:collapse;font-size:.9rem}.product-table thead{background:#f9fafb}.product-table th{padding:1rem;text-align:left;font-weight:700;color:#1a202c;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e5e7eb}.product-table th.text-center{text-align:center}.product-table td{padding:1rem;border-bottom:1px solid #f3f4f6;color:#4a5568}.product-table td.text-center{text-align:center}.product-table tbody tr{transition:all .2s}.product-table tbody tr:hover{background:#f9fafb}.product-link{color:#667eea;text-decoration:none;font-weight:600;transition:color .2s}.product-link:hover{color:#764ba2}.product-name{font-weight:600;color:#1a202c;margin-bottom:.25rem}.product-code{font-size:.75rem;color:#9ca3af}.lifecycle-badge{display:inline-block;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.lifecycle-badge.released{background:#dcfce7;color:#166534}.lifecycle-badge.eol{background:#f3f4f6;color:#374151}.lifecycle-badge.pilot,.lifecycle-badge.design,.lifecycle-badge.concept{background:#fef3c7;color:#92400e}.badge-danger{color:#dc2626;font-weight:700}.badge-success{color:#16a34a;font-weight:600}.badge-warning{color:#d97706;font-weight:700;text-decoration:none}.badge-warning:hover{text-decoration:underline}.badge-muted{color:#9ca3af}.table-footer{padding:1rem;text-align:center;font-size:.875rem;color:#6b7280;border-top:1px solid #f3f4f6}.table-footer a{color:#667eea;text-decoration:none;font-weight:600;margin-left:.5rem}.table-footer a:hover{text-decoration:underline}.doc-health-breakdown{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #f3f4f6}.health-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.health-label{font-size:.875rem;color:#6b7280;font-weight:500}.health-value{font-size:.875rem;font-weight:700;padding:.25rem .75rem;border-radius:6px}.health-value.good{background:#10b9811a;color:#059669}.health-value.muted{background:#6b72801a;color:#6b7280}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fef2f2;border:2px solid #fecaca;border-radius:16px;max-width:600px;margin:2rem auto}.error-icon{font-size:4rem;margin-bottom:1.5rem}.error-state h3{color:#dc2626;margin-bottom:.75rem;font-size:1.5rem}.error-state p{color:#991b1b;margin-bottom:2rem;font-size:1rem}@media (max-width: 1400px){.chart-card,.list-card{grid-column:span 12}}@media (max-width: 1200px){.dashboard-grid{grid-template-columns:1fr}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.welcome-title{font-size:2rem}}@media (max-width: 768px){.dashboard-welcome{padding:2rem 1.5rem;border-radius:0 0 16px 16px}.welcome-title{font-size:1.75rem}.welcome-subtitle{font-size:1rem}.welcome-content{flex-direction:column;align-items:flex-start}.dashboard-grid{padding:0 1rem 1rem}.kpi-row{padding:0 1rem;grid-template-columns:1fr}.dashboard-card{padding:1.25rem}.card-header h3{font-size:1.125rem}.product-table{font-size:.8rem}.product-table th,.product-table td{padding:.75rem .5rem}}@media (max-width: 480px){.welcome-title{font-size:1.5rem}.kpi-row{gap:1rem}}.phone-wrapper{display:flex;flex-direction:column;gap:4px}.phone-container{display:flex;border:1px solid #d1d5db;border-radius:8px;overflow:hidden;background:#fff;transition:all .2s}.phone-container:focus-within{border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f614}.phone-container.error{border-color:#ef4444}.phone-container.disabled{opacity:.6;background:#f9fafb}.country-button{display:flex;align-items:center;gap:6px;padding:8px 10px;background:#f9fafb;border:none;border-right:1px solid #e5e7eb;cursor:pointer;font-size:14px}.country-button:hover:not(:disabled){background:#f3f4f6}.flag{font-size:18px}.code{font-weight:500;color:#374151}.arrow{font-size:10px;color:#9ca3af;transition:transform .2s}.arrow.open{transform:rotate(180deg)}.phone-input{flex:1;padding:10px 12px;border:none;outline:none;font-size:14px;color:#111827}.phone-input::placeholder{color:#9ca3af}.error-text{font-size:12px;color:#dc2626;margin-left:4px}.country-dropdown{position:fixed;z-index:9999;background:#fff;border-radius:10px;border:1px solid #e5e7eb;box-shadow:0 12px 32px #00000026;max-height:320px;display:flex;flex-direction:column;overflow:hidden}.dropdown-search{padding:10px;border-bottom:1px solid #e5e7eb;background:#f9fafb}.dropdown-search input{width:100%;padding:8px 10px;border:1px solid #e5e7eb;border-radius:6px;font-size:13px}.dropdown-list{overflow-y:auto}.country-item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:none;width:100%;cursor:pointer;text-align:left;font-size:14px}.country-item:hover{background:#f3f4f6}.country-item.selected{background:#eff6ff;color:#1d4ed8}.country-item .name{flex:1;font-weight:500}.country-item .phone{color:#9ca3af;font-size:12px}.country-select-wrapper{position:relative;width:100%}.country-select-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.625rem .75rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;font-size:.9rem;text-align:left}.country-select-button:hover:not(.disabled){border-color:#667eea}.country-select-button:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.country-select-button.error{border-color:#dc2626}.country-select-button.disabled{background:#f8f9fa;cursor:not-allowed;opacity:.6}.country-select-content{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.country-flag{font-size:1.2rem;line-height:1;flex-shrink:0}.country-name{color:#1a202c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.country-placeholder{color:#9ca3af}.dropdown-arrow{font-size:.7rem;color:#718096;margin-left:.5rem;flex-shrink:0}.country-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;margin-top:.25rem;max-height:300px;overflow:hidden;display:flex;flex-direction:column}.country-search{padding:.75rem;border-bottom:1px solid #e5e7eb}.country-search-input{width:100%;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.9rem}.country-search-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.country-list{overflow-y:auto;max-height:240px}.country-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;background:#fff;cursor:pointer;text-align:left;transition:background-color .2s;font-size:.9rem}.country-option:hover{background:#f8f9fa}.country-option.selected{background:#eef2ff;color:#667eea;font-weight:600}.country-option .country-flag{font-size:1.2rem;flex-shrink:0}.country-option .country-name{flex:1;color:#1a202c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.country-option.selected .country-name{color:#667eea}.country-option .country-code{color:#718096;font-size:.85rem;font-weight:500;flex-shrink:0}.country-no-results{padding:1rem;text-align:center;color:#718096;font-size:.9rem}.country-select-error{display:block;margin-top:.25rem;font-size:.875rem;color:#dc2626}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d,0 0 0 1px #0000000d;max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUpScale .3s cubic-bezier(.16,1,.3,1);border:1px solid rgba(0,0,0,.08)}.modal-content>*:not(.modal-header):not(.modal-actions){overflow-y:auto;overflow-x:hidden}.modal-large,.modal-content.large,.modal-content.large-modal{max-width:900px}.modal-header{padding:1.75rem 2rem;border-bottom:1px solid rgba(0,0,0,.08);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to bottom,#fff,#fafafa);flex-shrink:0}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em;line-height:1.3}.modal-header p{margin:.5rem 0 0;font-size:.875rem;color:#6b7280;font-weight:400}.modal-close{background:transparent;border:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#6b7280;padding:.5rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease;flex-shrink:0}.modal-close:hover{background:#0000000d;color:#1f2937}.modal-close:active{transform:scale(.95)}.modal-content form{padding:0;display:flex;flex-direction:column;flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.modal-body{padding:2rem;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;max-height:calc(90vh - 140px)}.modal-body::-webkit-scrollbar{width:10px}.modal-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px;border:2px solid #f1f5f9}.modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.modal-content form{overflow-y:auto;overflow-x:hidden;max-height:calc(90vh - 140px)}.modal-content form::-webkit-scrollbar{width:10px}.modal-content form::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.modal-content form::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px;border:2px solid #f1f5f9}.modal-content form::-webkit-scrollbar-thumb:hover{background:#94a3b8}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;padding:1.5rem 2rem;border-top:1px solid rgba(0,0,0,.08);background:#fafafa;flex-shrink:0}.modal-content input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not([type=button]),.modal-content textarea,.modal-content select,.modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not([type=button]),.modal-body textarea,.modal-body select{border:2px solid #d1d5db!important;padding:.75rem 1rem!important;border-radius:8px!important;font-size:.938rem!important;background:#fff!important;color:#1f2937!important;transition:all .2s ease!important;box-sizing:border-box!important}.modal-content input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not([type=button]):hover,.modal-content textarea:hover,.modal-content select:hover,.modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not([type=button]):hover,.modal-body textarea:hover,.modal-body select:hover{border-color:#9ca3af!important}.modal-content input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not([type=button]):focus,.modal-content textarea:focus,.modal-content select:focus,.modal-body input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not([type=button]):focus,.modal-body textarea:focus,.modal-body select:focus{outline:none!important;border-color:#4f46e5!important;box-shadow:0 0 0 3px #4f46e51a!important}.modal-content select:not([multiple]),.modal-body select:not([multiple]){-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 1rem center!important;background-size:12px!important;padding-right:2.5rem!important;cursor:pointer!important}.modal-content select:not([multiple]):focus,.modal-body select:not([multiple]):focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234f46e5' d='M6 9L1 4h10z'/%3E%3C/svg%3E")!important}.modal-content form .form-group{margin-bottom:1.5rem}.modal-content form .form-group:last-child{margin-bottom:0}.modal-content form .form-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#374151}.modal-content form .form-input,.modal-content form .form-textarea,.modal-content form .form-select,.modal-content .form-input,.modal-content .form-textarea,.modal-content .form-select,.modal-body .form-input,.modal-body .form-textarea,.modal-body .form-select,.modal-body input:not([type=checkbox]):not([type=radio]),.modal-body textarea,.modal-body select{width:100%;padding:.75rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:.938rem;transition:all .2s ease;background:#fff;color:#1f2937;font-family:inherit;box-sizing:border-box}.modal-content form .form-input:focus,.modal-content form .form-textarea:focus,.modal-content form .form-select:focus,.modal-content .form-input:focus,.modal-content .form-textarea:focus,.modal-content .form-select:focus,.modal-body .form-input:focus,.modal-body .form-textarea:focus,.modal-body .form-select:focus,.modal-body input:not([type=checkbox]):not([type=radio]):focus,.modal-body textarea:focus,.modal-body select:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.modal-content form .form-input:hover,.modal-content form .form-textarea:hover,.modal-content form .form-select:hover,.modal-content .form-input:hover,.modal-content .form-textarea:hover,.modal-content .form-select:hover,.modal-body .form-input:hover,.modal-body .form-textarea:hover,.modal-body .form-select:hover,.modal-body input:not([type=checkbox]):not([type=radio]):hover,.modal-body textarea:hover,.modal-body select:hover{border-color:#9ca3af}.modal-content form .form-textarea,.modal-content .form-textarea,.modal-body .form-textarea,.modal-body textarea{resize:vertical;min-height:100px;font-family:inherit}.modal-content form .form-select,.modal-content .form-select,.modal-body .form-select,.modal-body select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem;cursor:pointer}.modal-content form .form-select:focus,.modal-content .form-select:focus,.modal-body .form-select:focus,.modal-body select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234f46e5' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.modal-content form .form-select option,.modal-content .form-select option,.modal-body .form-select option,.modal-body select option{padding:.75rem 1rem;background:#fff;color:#1f2937}.modal-content form .form-select option:hover,.modal-content .form-select option:hover,.modal-body .form-select option:hover,.modal-body select option:hover{background:#f3f4f6}.modal-content .error-message{padding:.875rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.875rem;margin-bottom:1.5rem}.modal-content .success-message{padding:.875rem 1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534;font-size:.875rem;margin-bottom:1.5rem}@media (max-width: 640px){.modal-overlay{padding:.5rem}.modal-content{max-width:100%;max-height:95vh;border-radius:12px 12px 0 0;margin-top:auto}.modal-header{padding:1.25rem 1.5rem}.modal-header h2{font-size:1.25rem}.modal-body{padding:1.5rem}.modal-actions{flex-direction:column-reverse;padding:1.25rem 1.5rem;gap:.75rem}.modal-actions button{width:100%;margin:0}}.warning-box{display:flex;gap:.75rem;padding:1rem;background:#fef3c7;border:1px solid #fbbf24;border-radius:var(--radius);color:#92400e}.warning-box svg{flex-shrink:0;margin-top:.125rem;color:#f59e0b}.warning-box p{margin:0;font-size:.875rem;color:#92400e}.warning-box strong{font-weight:600}.permissions-preview{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.permission-tag-small{background:var(--primary-light);color:var(--primary);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.searchable-dropdown{position:relative;width:100%}.dropdown-trigger{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border:2px solid #d1d5db!important;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s ease;min-height:2.5rem;color:#1f2937;font-size:.938rem;box-sizing:border-box}.dropdown-trigger:hover:not(.disabled){border-color:#9ca3af}.dropdown-trigger.open{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.dropdown-trigger.disabled{background:#f5f5f5;cursor:not-allowed;color:#999}.selected-value{flex:1;text-align:left;color:var(--text-primary);font-size:.938rem}.dropdown-arrow{color:var(--text-secondary);font-size:.75rem;transition:transform .2s}.dropdown-trigger.open .dropdown-arrow{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #d1d5db;border-radius:8px;box-shadow:0 10px 40px #00000026,0 0 0 1px #0000000d;z-index:9999;margin-top:.5rem;max-height:300px;overflow:hidden;min-width:100%}.search-input-container{padding:.75rem;border-bottom:1px solid var(--border)}.search-input{width:100%;padding:.75rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:.938rem;outline:none;min-height:40px;background:#fff;color:#1f2937;box-sizing:border-box;transition:all .2s ease}.search-input:hover{border-color:#9ca3af}.search-input:focus{border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.dropdown-options{max-height:200px;overflow-y:auto}.dropdown-option{padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid #f1f5f9;font-size:.938rem;color:#1f2937}.dropdown-option:hover{background-color:#f3f4f6;color:#1f2937}.dropdown-option.selected{background-color:#eef2ff;color:#4f46e5;font-weight:500;border-left:3px solid #4f46e5}.dropdown-option:last-child{border-bottom:none}.dropdown-loading,.dropdown-no-results{padding:.75rem;text-align:center;color:var(--text-secondary);font-size:.875rem;font-style:italic}.dropdown-loading{color:var(--primary)}.action-buttons{display:flex!important;align-items:center;justify-content:center;gap:.5rem;flex-wrap:nowrap;visibility:visible!important;opacity:1!important}.action-buttons .btn-icon{min-width:40px!important;width:40px!important;height:40px!important;padding:0;display:flex!important;align-items:center;justify-content:center;border-radius:6px!important;background:#fff!important;border:1px solid #d1d5db!important;color:#6b7280!important;transition:var(--transition);cursor:pointer;visibility:visible!important;opacity:1!important;box-shadow:0 1px 2px #0000000d!important}.action-buttons .btn-icon:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.action-buttons .btn-icon-edit{color:#3b82f6!important;background:#fff!important;border-color:#d1d5db!important}.action-buttons .btn-icon-edit:hover{background:#eff6ff!important;border-color:#3b82f6!important;color:#3b82f6!important}.action-buttons .btn-icon-view{color:#06b6d4!important;background:#fff!important;border-color:#d1d5db!important}.action-buttons .btn-icon-view:hover{background:#cffafe!important;border-color:#06b6d4!important;color:#06b6d4!important}.action-buttons .btn-icon-danger{color:#ef4444!important;background:#fff!important;border-color:#d1d5db!important}.action-buttons .btn-icon-danger:hover{background:#fee2e2!important;border-color:#ef4444!important;color:#ef4444!important}.action-buttons .btn-icon.btn-sm{min-width:40px!important;width:40px!important;height:40px!important}.action-buttons .btn-icon.btn-sm svg{width:18px!important;height:18px!important;stroke-width:2!important;opacity:1!important;fill:none!important}.action-buttons .btn-icon.btn-md{min-width:36px;width:36px;height:36px}.action-buttons .btn-icon.btn-md svg{width:16px;height:16px}.action-buttons .btn-icon.btn-lg{min-width:40px;width:40px;height:40px}.action-buttons .btn-icon.btn-lg svg{width:18px;height:18px}.actions-cell{white-space:nowrap;text-align:center;vertical-align:middle}.action-buttons .btn-icon-primary{color:#3b82f6!important;background:#fff!important;border-color:#d1d5db!important}.action-buttons .btn-icon-primary:hover{background:#eff6ff!important;border-color:#3b82f6!important;color:#3b82f6!important}.action-buttons .btn-icon-success{color:var(--success)}.action-buttons .btn-icon-success:hover{background:var(--success-light);border-color:var(--success);color:var(--success)}.action-buttons .btn-icon-warning{color:var(--warning)}.action-buttons .btn-icon-warning:hover{background:var(--warning-light);border-color:var(--warning);color:var(--warning)}.users-table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.users-table,.enhanced-table{width:100%;border-collapse:collapse;background:var(--surface)}.users-table thead,.enhanced-table thead{background:var(--surface-alt, var(--surface));border-bottom:1px solid var(--border)}.users-table th,.enhanced-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.users-table td,.enhanced-table td{padding:1rem;border-top:1px solid var(--border);color:var(--text-primary)}.users-table tbody tr:nth-child(2n),.enhanced-table tbody tr:nth-child(2n){background:var(--gray-50)}.users-table tbody tr:hover,.enhanced-table tbody tr:hover{background:var(--primary-50)}.users-table tbody tr:nth-child(2n):hover,.enhanced-table tbody tr:nth-child(2n):hover{background:var(--primary-50)}.user-cell{display:flex;align-items:center;gap:.75rem}.user-avatar-small{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;flex-shrink:0}.user-name{font-weight:500;color:var(--text-primary)}.user-username{font-size:.813rem;color:var(--text-secondary)}.roles-cell{display:flex;flex-wrap:wrap;gap:.375rem}.role-badge{padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.role-admin{background:#fef3c7;color:#92400e}.role-hod{background:#dbeafe;color:#1e40af}.role-qc{background:#dcfce7;color:#166534}.role-inspector{background:#fce7f3;color:#9f1239}.role-pmc{background:#e0e7ff;color:#3730a3}.role-oem{background:#f3e8ff;color:#6b21a8}.role-user{background:var(--gray-200);color:var(--gray-700)}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.status-active{background:#d1fae5;color:#065f46}.status-inactive{background:#fee2e2;color:#991b1b}.btn-icon.btn-sm{width:32px;height:32px;padding:0}.btn-danger{border-color:var(--danger);color:var(--danger)}.btn-success{border-color:var(--success);color:var(--success)}.btn-success:hover{background:var(--success);color:#fff}@media (max-width: 1024px){.users-table-container{overflow-x:auto}.users-table{min-width:900px}}.data-grid-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border);height:auto;min-height:0;max-height:60vh;overflow-y:auto}.data-grid-table{width:100%;border-collapse:collapse;background:var(--surface)}.data-grid-table thead{background:var(--surface-alt, var(--surface));position:sticky;top:0;z-index:2}.data-grid-table th{padding:1rem;text-align:left;font-weight:var(--font-semibold);font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border);white-space:nowrap;vertical-align:middle}.data-grid-table th:last-child{text-align:center}.data-grid-table td{padding:1rem;border-top:1px solid var(--border);font-size:.938rem;color:var(--text-primary);vertical-align:middle;text-align:left;height:1px}.data-grid-table tbody tr{height:auto;min-height:60px}.data-grid-table td:last-child{text-align:center}.data-grid-table tbody tr{transition:var(--transition-fast)}.data-grid-table tbody tr:hover{background:var(--primary-50)}.data-grid-table tbody tr:nth-child(2n){background:var(--gray-50)}.data-grid-table tbody tr:nth-child(2n):hover{background:var(--primary-50)}.pagination button{margin:0 4px;padding:5px 10px;cursor:pointer}.pagination .active{background-color:#333;color:#fff}.common-form-group{display:flex;flex-direction:column;gap:4px}.common-full-width{grid-column:1 / -1}.common-form-label{font-size:14px;font-weight:500;color:#334155}.common-form-input,.common-form-textarea,select.common-form-input{width:100%;border:1px solid #cbd5f5;border-radius:8px;padding:8px 12px;font-size:14px;color:#0f172a;outline:none;transition:all .2s ease;background:#fff}.common-form-textarea{min-height:100px;resize:vertical}.common-form-input::placeholder,.common-form-textarea::placeholder{color:#94a3b8}.common-form-input:focus,.common-form-textarea:focus{border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a}.common-form-input.common-error{border-color:#ef4444;box-shadow:0 0 0 4px #ef444414}.common-form-error{font-size:12px;color:#dc2626;margin-top:2px}.common-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.common-modal{background:#fff;width:100%;max-width:900px;max-height:90vh;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px #00000040}.common-modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.common-modal-header h2{margin:0;font-size:20px;font-weight:700}.common-modal-header p{margin:4px 0 0;font-size:13px;color:#64748b}.common-close-btn{background:none;border:none;font-size:24px;cursor:pointer}.common-tabs{display:flex;border-bottom:1px solid #e5e7eb;background:#fff}.common-tab-icon{opacity:.8}.common-tab.active .common-tab-icon{opacity:1}.common-tab{padding:12px 16px;font-size:14px;border:none;background:none;cursor:pointer;color:#64748b;display:flex;align-items:center;gap:6px}.common-tab.active{color:#4f46e5;border-bottom:2px solid #4f46e5}.common-modal-body{padding:24px;overflow-y:auto;flex:1}.common-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.common-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:20px}.common-btn{padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:none}.common-btn.primary{background:#4f46e5;color:#fff}.common-btn.primary:hover{background:#4338ca}.common-btn.secondary{background:#e5e7eb;color:#374151}.common-btn.secondary:hover{background:#d1d5db}.common-error{background:#fee2e2;color:#b91c1c;padding:10px;border-radius:6px;margin-bottom:12px}.common-section{margin-top:20px}.common-section-title{font-size:14px;font-weight:600;margin-bottom:10px}.common-role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.common-role-card{border:1px solid #e5e7eb;padding:10px;border-radius:8px;cursor:pointer;background:#fff}.common-role-card.active{border-color:#4f46e5;background:#eef2ff}.permission-tree{max-height:500px;overflow-y:auto;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:1rem;background:var(--bg-secondary, #f8f9fa);box-shadow:inset 0 2px 4px #0000000d}.permission-category{margin-bottom:1rem;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.permission-category:last-child{margin-bottom:0}.permission-category-header{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--bg-primary, #ffffff);border-bottom:1px solid var(--border-color, #e0e0e0);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;font-weight:600}.permission-category-header:hover{background:var(--primary-light, rgba(74, 144, 226, .1));border-bottom-color:var(--primary-color, #4a90e2)}.permission-category-header.has-selection{background:var(--primary-light, rgba(74, 144, 226, .15));border-bottom-color:var(--primary-color, #4a90e2);color:var(--primary-color, #4a90e2)}.category-checkbox{width:22px;height:22px;border:2px solid var(--border-color, #d0d0d0);border-radius:5px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--bg-primary, #ffffff);transition:all .2s ease}.permission-category-header:hover .category-checkbox{border-color:var(--primary-color, #4a90e2);background:var(--primary-light, rgba(74, 144, 226, .1))}.permission-category-header.has-selection .category-checkbox{border-color:var(--primary-color, #4a90e2);background:var(--primary-color, #4a90e2)}.checkmark{color:var(--bg-primary, #ffffff);font-weight:700;font-size:14px;line-height:1}.checkmark-partial{color:var(--primary-color, #4a90e2);font-weight:700;font-size:16px;line-height:1}.category-checkbox{width:22px;height:22px;border:2px solid var(--primary-color, #4a90e2);background:var(--primary-color, #4a90e2);border-radius:5px;display:flex;align-items:center;justify-content:center}.category-count{margin-left:auto;color:var(--text-secondary, #666);font-size:.875rem;font-weight:400;background:var(--bg-secondary, #f0f0f0);padding:.25rem .5rem;border-radius:12px}.permission-category-header.has-selection .category-count{background:var(--primary-color, #4a90e2);color:var(--bg-primary, #ffffff)}.permission-items{padding:.75rem 1rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;background:var(--bg-secondary, #f8f9fa)}.permission-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;transition:all .2s ease;background:var(--bg-primary, #ffffff);border:1px solid transparent}.permission-item:hover{background:var(--primary-light, rgba(74, 144, 226, .05));border-color:var(--border-color, #e0e0e0);transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.permission-item input[type=checkbox]{margin-top:3px;cursor:pointer;flex-shrink:0;width:18px;height:18px;accent-color:var(--primary-color, #4a90e2)}.permission-item input[type=checkbox]:checked{accent-color:var(--primary-color, #4a90e2)}.permission-name{font-weight:500;color:var(--text-primary, #333);flex:1;font-size:.9rem;line-height:1.4}.permission-description{font-size:.8rem;color:var(--text-secondary, #666);margin-top:.25rem;display:block;line-height:1.4;font-style:italic}.loading-spinner-small{text-align:center;padding:2rem;color:var(--text-secondary, #666)}.permission-tree::-webkit-scrollbar{width:10px}.permission-tree::-webkit-scrollbar-track{background:var(--bg-secondary, #f8f9fa);border-radius:5px}.permission-tree::-webkit-scrollbar-thumb{background:var(--border-color, #d0d0d0);border-radius:5px;border:2px solid var(--bg-secondary, #f8f9fa)}.permission-tree::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.permission-item:has(input[type=checkbox]:checked){background:var(--primary-light, rgba(74, 144, 226, .1));border-color:var(--primary-color, #4a90e2)}.permission-item:has(input[type=checkbox]:checked) .permission-name{color:var(--primary-color, #4a90e2);font-weight:600}.role-management{padding:2rem;max-width:1400px;margin:0 auto}.roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:2rem}.role-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;transition:all .2s ease}.role-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.role-card.role-inactive{opacity:.7}.role-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.role-card-header h3{margin:0 0 .5rem;color:var(--text-primary);font-size:1.25rem;display:flex;align-items:center;gap:.5rem}.role-description{color:var(--text-secondary);font-size:.875rem;margin:0}.role-status{display:flex;align-items:center}.badge-system{background:var(--primary);color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.role-permissions{margin:1rem 0;padding:1rem;background:var(--surface-alt);border-radius:8px}.role-permissions strong{display:block;margin-bottom:.5rem;color:var(--text-primary);font-size:.875rem}.permissions-list{display:flex;flex-wrap:wrap;gap:.5rem}.permission-tag{background:var(--primary-light);color:var(--primary);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.permission-more{color:var(--text-secondary);font-size:.75rem;font-style:italic}.role-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.role-actions .btn{flex:1}.status-active{background:var(--success);color:#fff}.status-inactive{background:var(--text-secondary);color:#fff}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}@media (max-width: 768px){.roles-grid{grid-template-columns:1fr}}.tenant-management{padding:2rem}.page-header h1{margin:0 0 .5rem;font-size:1.75rem;color:var(--text-primary)}.page-header p{margin:0;color:var(--text-secondary);font-size:.9rem}.tenants-table-container{background:var(--bg-secondary);border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.enhanced-table{width:100%;border-collapse:collapse}.enhanced-table thead{background:var(--bg-tertiary)}.enhanced-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color)}.enhanced-table td{padding:1rem;border-bottom:1px solid var(--border-color)}.enhanced-table tbody tr:hover{background:var(--bg-hover)}.tenant-name{font-weight:500;color:var(--text-primary)}.subdomain-badge{background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px;font-family:monospace;font-size:.85rem;color:var(--text-primary)}.type-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.type-badge.type-saas{background:#e3f2fd;color:#1976d2}.type-badge.type-license{background:#fff3e0;color:#f57c00}.type-badge.type-on_premise{background:#f3e5f5;color:#7b1fa2}.plan-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.plan-badge.plan-free{background:#e8f5e9;color:#388e3c}.plan-badge.plan-starter{background:#e1f5fe;color:#0277bd}.plan-badge.plan-professional{background:#fff3e0;color:#ef6c00}.plan-badge.plan-enterprise{background:#fce4ec;color:#c2185b}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.status-badge.status-active{background:#e8f5e9;color:#388e3c}.status-badge.status-inactive{background:#ffebee;color:#c62828}.action-buttons{display:flex;gap:.5rem}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s}.btn-sm{padding:.25rem .75rem;font-size:.85rem}.btn-success{background:#4caf50;color:#fff}.btn-success:hover{background:#45a049}.btn-warning{background:#ff9800;color:#fff}.btn-warning:hover{background:#e68900}.modal-content{background:#fff;border-radius:8px;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem;background:var(--bg-secondary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color)}.input-with-button{display:flex;gap:.5rem}.input-with-button input{flex:1}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.sso-configuration{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:20px;margin-bottom:20px}.sso-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.sso-header h3{margin:0;color:var(--text-primary);font-size:18px}.sso-form{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:20px;margin-bottom:20px}.form-label{display:flex;align-items:center;gap:6px;margin-bottom:5px;font-weight:500;color:var(--text-primary);font-size:14px}.form-help-icon{cursor:help;font-size:14px;opacity:.6;transition:opacity .2s}.form-help-icon:hover{opacity:1}.form-help-text{font-size:12px;color:var(--text-secondary, #666);margin-top:4px;line-height:1.4}.form-section-header{margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--border-color, #e0e0e0)}.form-section-header h4{margin:0 0 4px;color:var(--text-primary);font-size:16px;font-weight:600}.provider-preset-info{background:var(--info-light, #e7f3ff);border:1px solid var(--info-border, #b3d9ff);border-radius:6px;padding:12px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.provider-preset-info p{margin:0;font-size:13px;color:var(--text-primary);flex:1}.btn-link{background:none;border:none;color:var(--primary, #007bff);cursor:pointer;font-size:13px;font-weight:500;text-decoration:underline;padding:0;margin-left:12px}.form-input{width:100%;padding:8px 12px;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:14px;font-family:inherit}.sso-list{display:flex;flex-direction:column;gap:12px}.sso-item{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:15px}.sso-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.sso-item-info{flex:1}.sso-provider-type{font-weight:600;color:var(--text-primary);font-size:16px;margin-bottom:4px}.sso-provider-name{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.sso-status{display:inline-block}.status-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-badge.enabled{background:var(--success-light, #d4edda);color:var(--success-dark, #155724)}.status-badge.disabled{background:var(--secondary-light, #e2e3e5);color:var(--text-secondary)}.sso-item-actions{display:flex;gap:8px}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.sso-item-meta{font-size:12px;color:var(--text-tertiary);padding-top:10px;border-top:1px solid var(--border-color, #ddd)}.loading-state,.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary);font-size:14px}.tenant-config-management{padding:2rem;max-width:1400px;margin:0 auto}.page-header h1{font-size:2rem;margin-bottom:.5rem;color:var(--text-primary, #333)}.page-header p{color:var(--text-secondary, #666)}.tenant-selector{margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.tenant-selector label{font-weight:600;color:var(--text-primary, #333)}.tenant-select{padding:.75rem 1rem;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:1rem;min-width:300px;background:#fff}.tenant-info-card{background:#fff;border:1px solid var(--border-color, #ddd);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.tenant-info-card h3{margin-top:0;margin-bottom:1rem;color:var(--text-primary, #333)}.tenant-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.tenant-info-grid div{padding:.5rem;background:var(--bg-secondary, #f5f5f5);border-radius:4px}.config-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--border-color, #ddd)}.config-tabs button{padding:.75rem 1.5rem;border:none;background:transparent;cursor:pointer;font-size:1rem;color:var(--text-secondary, #666);border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s}.config-tabs button:hover{color:var(--primary-color, #0066CC)}.config-tabs button.active{color:var(--primary-color, #0066CC);border-bottom-color:var(--primary-color, #0066CC);font-weight:600}.config-section{background:#fff;border:1px solid var(--border-color, #ddd);border-radius:8px;padding:2rem}.config-section h2{margin-top:0;color:var(--text-primary, #333)}.section-description{color:var(--text-secondary, #666);margin-bottom:1.5rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.feature-card{border:1px solid var(--border-color, #ddd);border-radius:8px;padding:1.5rem;background:var(--bg-secondary, #f9f9f9)}.feature-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.feature-header h4{margin:0;color:var(--text-primary, #333)}.feature-key{font-size:.875rem;color:var(--text-secondary, #666);margin:0;font-family:monospace}.toggle-switch{position:relative;display:inline-block;width:50px;height:24px}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.slider{background-color:var(--primary-color, #0066CC)}input:checked+.slider:before{transform:translate(26px)}.config-form{display:flex;flex-direction:column;gap:2rem}.config-group{border:1px solid var(--border-color, #ddd);border-radius:8px;padding:1.5rem;background:var(--bg-secondary, #f9f9f9)}.config-group h3{margin-top:0;margin-bottom:1rem;color:var(--text-primary, #333)}.config-item{margin-bottom:1rem}.config-item label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary, #333)}.config-item input[type=text],.config-item input[type=url],.config-item select{width:100%;padding:.75rem;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:1rem}.config-item input[type=color]{width:100px;height:40px;border:1px solid var(--border-color, #ddd);border-radius:6px;cursor:pointer}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.template-card{border:1px solid var(--border-color, #ddd);border-radius:8px;padding:1.5rem;text-align:center;background:var(--bg-secondary, #f9f9f9)}.template-card h4{margin-top:0;color:var(--text-primary, #333)}.template-card p{color:var(--text-secondary, #666);margin-bottom:1rem}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary, #666)}.access-denied{text-align:center;padding:3rem}.access-denied h2{color:#d32f2f;margin-bottom:1rem}.share-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease-out}.share-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d,0 0 0 1px #0000000d;width:90%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(0,0,0,.08);animation:slideUpScale .3s cubic-bezier(.16,1,.3,1)}.share-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.75rem 2rem;border-bottom:1px solid rgba(0,0,0,.08);background:linear-gradient(to bottom,#fff,#fafafa);flex-shrink:0}.share-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em}.share-modal-close{background:transparent;border:none;color:#6b7280;cursor:pointer;padding:.5rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease;flex-shrink:0}.share-modal-close:hover{background:#0000000d;color:#1f2937}.share-modal-close:active{transform:scale(.95)}.share-modal-content{padding:2rem;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0;max-height:calc(90vh - 140px)}.share-modal-content form{overflow-y:auto;overflow-x:hidden;max-height:calc(90vh - 200px)}.share-modal-content form::-webkit-scrollbar,.share-modal-content::-webkit-scrollbar{width:10px}.share-modal-content form::-webkit-scrollbar-track,.share-modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.share-modal-content form::-webkit-scrollbar-thumb,.share-modal-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px;border:2px solid #f1f5f9}.share-modal-content form::-webkit-scrollbar-thumb:hover,.share-modal-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.share-modal-content::-webkit-scrollbar{width:8px}.share-modal-content::-webkit-scrollbar-track{background:transparent}.share-modal-content::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}.share-modal-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.share-document-info{padding:.75rem;background:var(--gray-50);border-radius:var(--radius);margin-bottom:1.5rem;font-size:.938rem}.share-type-selector{display:flex;gap:1rem;margin-bottom:1.5rem}.share-type-selector label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.938rem}.share-type-selector input[type=radio]{width:18px;height:18px;cursor:pointer}.share-field{margin-bottom:1.25rem}.share-field label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-primary)}.share-field select,.share-field input[type=date],.share-field textarea{width:100%;padding:.75rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:.938rem;background:#fff;color:#1f2937;transition:all .2s ease;font-family:inherit;box-sizing:border-box}.share-field select:hover,.share-field input[type=date]:hover,.share-field textarea:hover{border-color:#9ca3af}.share-field select:focus,.share-field input:focus,.share-field textarea:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.share-field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem;cursor:pointer}.share-field select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234f46e5' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.user-select-wrapper{position:relative;width:100%}.user-select-input-wrapper{position:relative;display:flex;align-items:center}.user-select-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:.938rem;background:#fff;color:#1f2937;transition:all .2s ease;font-family:inherit;box-sizing:border-box}.user-select-input:hover{border-color:#9ca3af}.user-select-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.user-select-clear{position:absolute;right:.5rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:var(--transition)}.user-select-clear:hover{background:var(--gray-100);color:var(--text-primary)}.user-select-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:.5rem;background:#fff;border:2px solid #d1d5db;border-radius:8px;box-shadow:0 10px 40px #00000026,0 0 0 1px #0000000d;max-height:300px;overflow-y:auto;z-index:1000}.user-select-dropdown::-webkit-scrollbar{width:8px}.user-select-dropdown::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.user-select-dropdown::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.user-select-dropdown::-webkit-scrollbar-thumb:hover{background:#94a3b8}.user-select-option{padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;border-bottom:1px solid #f1f5f9;font-size:.938rem;color:#1f2937}.user-select-option:last-child{border-bottom:none}.user-select-option:hover{background:#f3f4f6;color:#1f2937}.user-select-option.selected{background:#eef2ff;color:#4f46e5;font-weight:500;border-left:3px solid #4f46e5}.user-select-option-name{font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.user-select-option-email{font-size:.875rem;color:var(--text-secondary)}.user-select-no-results{padding:1rem;text-align:center;color:var(--text-secondary);font-size:.875rem;font-style:italic}[data-theme=dark] .user-select-option:hover{background:var(--gray-200)}[data-theme=dark] .user-select-option.selected{background:var(--primary-900)}[data-theme=dark] .user-select-clear:hover{background:var(--gray-200)}.share-field textarea{resize:vertical;font-family:inherit}.share-link-result{margin-top:1.5rem;padding:1rem;background:var(--primary-50);border-radius:var(--radius)}.share-link-input-group{display:flex;gap:.5rem;margin-top:.5rem}.share-link-input-group input{flex:1;padding:.75rem 1rem;border:2px solid #d1d5db;border-radius:8px;background:#fff;color:#1f2937;font-size:.875rem;transition:all .2s ease;font-family:inherit;box-sizing:border-box}.share-link-input-group input:hover{border-color:#9ca3af}.share-link-input-group input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.btn-copy-link{padding:.75rem 1.25rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-copy-link:hover{background:var(--primary-600);transform:translateY(-1px)}.share-modal-footer{display:flex;gap:.75rem;padding:1.5rem 2rem;border-top:1px solid rgba(0,0,0,.08);background:#fafafa;justify-content:flex-end;flex-shrink:0}@media (max-width: 640px){.share-modal-overlay{padding:.5rem}.share-modal{max-width:100%;max-height:95vh;border-radius:12px 12px 0 0;margin-top:auto}.share-modal-header{padding:1.25rem 1.5rem}.share-modal-header h2{font-size:1.25rem}.share-modal-content{padding:1.5rem}.share-modal-footer{flex-direction:column-reverse;padding:1.25rem 1.5rem}.share-modal-footer button{width:100%}}.email-input-group{display:flex;gap:8px;margin-bottom:8px;align-items:center}.email-input{flex:1;padding:.75rem 1rem;border:2px solid #d1d5db;border-radius:8px;font-size:.938rem;background:#fff;color:#1f2937;transition:all .2s ease;font-family:inherit;box-sizing:border-box}.email-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.email-input:invalid:not(:placeholder-shown){border-color:#ef4444}.email-remove-btn{background:#fee2e2;color:#991b1b;border:none;border-radius:8px;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s;width:36px;height:36px;flex-shrink:0}.email-remove-btn:hover{background:#fecaca}.btn-add-email{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:8px;padding:.5rem .75rem;font-size:.875rem;cursor:pointer;transition:background-color .2s;margin-top:.5rem}.btn-add-email:hover{background:#e5e7eb}[data-theme=dark] .share-document-info{background:var(--gray-200)}[data-theme=dark] .share-link-result{background:var(--primary-900)}[data-theme=dark] .email-input{background:var(--gray-800);color:var(--text-primary);border-color:var(--gray-600)}[data-theme=dark] .email-remove-btn{background:var(--red-900);color:var(--red-100)}[data-theme=dark] .email-remove-btn:hover{background:var(--red-800)}[data-theme=dark] .btn-add-email{background:var(--gray-700);color:var(--text-primary);border-color:var(--gray-600)}[data-theme=dark] .btn-add-email:hover{background:var(--gray-600)}.btn-toggle-advanced{width:100%;padding:.75rem;background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-color, #ddd);border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.btn-toggle-advanced:hover{background:var(--bg-hover, #e8e8e8);border-color:var(--primary, #2563eb)}.advanced-share-options{padding:1rem;background:var(--bg-secondary, #f9f9f9);border-radius:8px;margin-bottom:1rem}.share-section{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #ddd)}.share-section:last-child{border-bottom:none;margin-bottom:0}.share-section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--text-primary, #333)}.field-hint{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-secondary, #666);font-style:italic}.share-history-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.share-history-modal{background:#fff;border-radius:8px;width:90%;max-width:1000px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a}.share-history-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.share-history-header h2{margin:0;font-size:24px;font-weight:600}.share-history-close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s}.share-history-close:hover{color:#000}.share-history-content{padding:20px;overflow-y:auto;flex:1}.share-history-loading,.share-history-empty{text-align:center;padding:40px;color:#666}.share-history-filters{display:flex;gap:20px;margin-bottom:20px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-size:12px;font-weight:500;color:#666}.filter-group select{padding:6px 10px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;cursor:pointer}.filter-group select:hover{border-color:#999}.share-history-list{overflow-x:auto}.share-history-table{width:100%;border-collapse:collapse;font-size:14px}.share-history-table thead{background:#f5f5f5}.share-history-table th{padding:12px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #ddd}.share-history-table td{padding:12px;border-bottom:1px solid #e0e0e0}.share-history-table tbody tr:hover{background:#f9f9f9}.share-history-table tbody tr.share-revoked{opacity:.6;background:#f5f5f5}.share-method-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:uppercase}.share-method-user{background:#e3f2fd;color:#1976d2}.share-method-chat{background:#f3e5f5;color:#7b1fa2}.share-method-email{background:#fff3e0;color:#e65100}.share-method-link{background:#e8f5e9;color:#2e7d32}.share-method-unknown{background:#f5f5f5;color:#666}.share-target{display:flex;align-items:center;gap:8px}.copy-link-btn{background:none;border:none;cursor:pointer;padding:2px 4px;font-size:14px;opacity:.6;transition:opacity .2s}.copy-link-btn:hover{opacity:1}.permission-select{padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:13px;background:#fff;cursor:pointer}.revoke-btn{padding:4px 12px;background:#f44336;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px;transition:background .2s}.revoke-btn:hover{background:#d32f2f}.revoked-label{color:#999;font-size:12px;font-style:italic}.copy-link-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;cursor:pointer}.copy-icon{opacity:.8}[data-theme=dark] .share-history-modal{background:#1e1e1e;color:#e0e0e0}[data-theme=dark] .share-history-header{border-bottom-color:#333}[data-theme=dark] .share-history-close{color:#999}[data-theme=dark] .share-history-close:hover{color:#fff}[data-theme=dark] .share-history-table thead{background:#2a2a2a}[data-theme=dark] .share-history-table th{color:#e0e0e0;border-bottom-color:#333}[data-theme=dark] .share-history-table td{border-bottom-color:#333}[data-theme=dark] .share-history-table tbody tr:hover{background:#2a2a2a}[data-theme=dark] .share-history-table tbody tr.share-revoked{background:#252525}[data-theme=dark] .filter-group select,[data-theme=dark] .permission-select{background:#2a2a2a;border-color:#444;color:#e0e0e0}[data-theme=dark] .filter-group select:hover,[data-theme=dark] .permission-select:hover{border-color:#666}@media (max-width: 768px){.share-history-modal{width:95%;max-height:95vh}.share-history-filters{flex-direction:column;gap:12px}.share-history-table{font-size:12px}.share-history-table th,.share-history-table td{padding:8px}}.document-access-management{padding:24px}.document-access-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.document-access-subtitle{color:var(--text-secondary);margin-top:6px}.document-access-mode{background:var(--bg-secondary);padding:10px 14px;border-radius:8px;font-size:14px}.document-access-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:16px}.document-access-search{flex:1;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary)}.document-access-table{background:var(--bg-primary);border-radius:10px;border:1px solid var(--border-color);overflow:hidden}.document-access-row{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;padding:12px 16px;gap:12px;border-bottom:1px solid var(--border-color);align-items:center}.document-access-header-row{font-weight:600;background:var(--bg-secondary)}.document-access-name{display:flex;flex-direction:column;gap:4px}.document-access-actions{display:flex;gap:8px}.btn-refresh{padding:8px 12px;border-radius:6px;border:1px solid transparent;cursor:pointer;background:#fff;border-color:#ddd}.document-access-empty{padding:20px;text-align:center;color:var(--text-secondary)}.muted{color:var(--text-secondary);font-size:12px}.metadata-panel{background:var(--bg-secondary, #ffffff);border-left:1px solid var(--border-color, #e0e0e0);height:100%;display:flex;flex-direction:column;overflow:hidden}.metadata-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--bg-primary, #f8f9fa)}.metadata-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #333)}.metadata-content{flex:1;overflow-y:auto;padding:8px}.metadata-loading{padding:24px;text-align:center;color:var(--text-secondary, #666)}.metadata-section{margin-bottom:8px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;background:var(--bg-secondary, #ffffff)}.metadata-section-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.metadata-section-header:hover{background:var(--bg-hover, #f5f5f5)}.metadata-section-header h4{margin:0;font-size:14px;font-weight:600;color:var(--text-primary, #333)}.section-toggle{font-size:12px;color:var(--text-secondary, #666);transition:transform .2s}.metadata-section-content{padding:12px 16px;border-top:1px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #ffffff)}.metadata-item{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--border-light, #f0f0f0)}.metadata-item:last-child{border-bottom:none}.metadata-label{font-weight:500;color:var(--text-secondary, #666);font-size:13px;min-width:120px;flex-shrink:0}.metadata-value{color:var(--text-primary, #333);font-size:13px;text-align:right;word-break:break-word;flex:1}.metadata-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.metadata-badge.status-active{background:#d4edda;color:#155724}.metadata-badge.status-inactive{background:#f8d7da;color:#721c24}.metadata-badge.status-pending{background:#fff3cd;color:#856404}.metadata-warning{color:#dc3545;font-weight:600}@media (max-width: 768px){.metadata-panel{position:fixed;top:0;right:0;width:100%;max-width:400px;z-index:1000;box-shadow:-2px 0 8px #0000001a}}.document-presence{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:12px;margin-bottom:20px;transition:all .2s ease}.document-presence.expanded{box-shadow:0 2px 8px #0000001a}.presence-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.presence-header:hover{opacity:.8}.presence-status{display:flex;align-items:center;gap:8px}.status-text,.presence-count{font-size:13px;color:var(--text-secondary);font-weight:500}.presence-toggle{background:none;border:none;color:var(--text-secondary, #666);font-size:12px;cursor:pointer;padding:4px 8px;transition:transform .2s}.presence-content{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color, #e0e0e0);animation:slideDown .2s ease}.presence-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.presence-item{display:flex;align-items:center;gap:10px;padding:8px;background:var(--background, #f9f9f9);border-radius:6px}.presence-avatar{width:36px;height:36px;border-radius:50%;background:var(--primary, #007bff);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0;box-shadow:0 2px 4px #0000001a}.presence-avatar.you{border:2px solid var(--primary, #007bff)}.presence-info{flex:1}.presence-name{font-size:14px;font-weight:500;color:var(--text-primary)}.presence-page{font-size:12px;color:var(--text-secondary)}.presence-you{display:flex;align-items:center;gap:10px;padding:8px;background:var(--primary-light, #e7f3ff);border-radius:6px;margin-top:8px}.presence-label{font-weight:600;color:var(--text-primary);font-size:14px}.presence-time{font-size:11px;color:var(--text-tertiary, #999);margin-top:2px}.presence-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500;margin-left:auto}.presence-badge.editing{background:#fff3cd;color:#856404}.presence-empty{text-align:center;padding:16px;color:var(--text-secondary, #666);font-size:13px;font-style:italic}.enhanced-pdf-viewer{display:flex;height:100%;width:100%;background:#525252;position:relative}.enhanced-pdf-viewer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-primary)}.loading-spinner{width:40px;height:40px;border:4px solid var(--bg-secondary);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.pdf-thumbnail-sidebar{width:200px;background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden;transition:width .3s ease}.thumbnail-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color)}.thumbnail-header h4{margin:0;font-size:.875rem;font-weight:600;color:var(--text-primary)}.thumbnail-container{flex:1;overflow-y:auto;padding:.5rem}.thumbnail-item{position:relative;margin-bottom:.5rem;cursor:pointer;border:2px solid transparent;border-radius:4px;overflow:hidden;transition:all .2s ease;background:#fff}.thumbnail-item:hover{border-color:var(--primary);transform:scale(1.02)}.thumbnail-item.active{border-color:var(--primary);box-shadow:0 0 0 2px #3b82f64d}.thumbnail-item img{width:100%;height:auto;display:block}.thumbnail-page-number{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;text-align:center;padding:.25rem;font-size:.75rem;font-weight:500}.thumbnail-more{text-align:center;padding:1rem;color:var(--text-secondary);font-size:.875rem}.pdf-viewer-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.pdf-page-controls{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.page-info{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-primary)}.page-input{width:60px;padding:.25rem .5rem;border:1px solid var(--border-color);border-radius:4px;text-align:center;font-size:.875rem}.page-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3b82f61a}.pdf-canvas-container{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:1rem;background:#525252}.pdf-canvas{max-width:100%;height:auto;box-shadow:0 4px 6px -1px #0000004d;background:#fff}.btn-icon-sm{background:none;border:none;cursor:pointer;padding:.25rem .5rem;color:var(--text-primary);font-size:1rem;transition:color .2s ease}.btn-icon-sm:hover{color:var(--primary)}.btn-icon-sm:disabled{opacity:.5;cursor:not-allowed}.document-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);animation:fadeIn .2s ease}.document-preview-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);width:100%;max-width:95vw;max-height:95vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.document-preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border);background:var(--surface-alt);flex-shrink:0}.preview-header-info{flex:1;min-width:0}.preview-header-info h2{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--spacing-xs) 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-file-size{font-size:var(--text-sm);color:var(--text-secondary)}.preview-header-actions{display:flex;gap:var(--spacing-sm);margin-left:var(--spacing-lg)}.document-preview-body{flex:1;display:flex;overflow:hidden;min-height:400px}.document-preview-content{flex:1;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;background:var(--gray-50);position:relative}.preview-presence-overlay{position:absolute;top:16px;right:16px;z-index:100;max-width:300px}.document-preview-body.with-metadata .document-preview-content{flex:1;min-width:0}.preview-metadata-sidebar{width:350px;flex-shrink:0;border-left:1px solid var(--border-color, #e0e0e0);display:flex;flex-direction:column;overflow:hidden}.preview-header-actions .btn-icon.active{background:var(--primary, #007bff);color:#fff}.preview-loading,.preview-error,.preview-unsupported{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);text-align:center}.preview-error-icon,.preview-unsupported-icon{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.preview-error h3,.preview-unsupported h3{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--spacing-md) 0}.preview-error p,.preview-unsupported p{color:var(--text-secondary);margin:0 0 var(--spacing-lg) 0}.preview-image-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);overflow:auto}.preview-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius);box-shadow:var(--shadow-lg)}.preview-iframe{width:100%;height:100%;border:none;min-height:600px}[data-theme=dark] .document-preview-overlay{background:#000000e6}[data-theme=dark] .document-preview-content{background:var(--gray-900)}@media (max-width: 768px){.document-preview-container{max-width:100vw;max-height:100vh;border-radius:0}.document-preview-header{padding:var(--spacing-md)}.preview-header-info h2{font-size:var(--text-lg)}.preview-header-actions{margin-left:var(--spacing-md)}.preview-iframe{min-height:400px}}.document-preview-overlay:focus{outline:none}.document-preview-container:focus{outline:2px solid var(--primary);outline-offset:2px}.approvals-page{max-width:1000px}.approval-stats{display:flex;gap:1rem}.stat-badge{padding:.5rem 1rem;background:var(--warning);color:#fff;border-radius:var(--radius);font-size:.875rem;font-weight:600}.requests-list{display:flex;flex-direction:column;gap:1.5rem}.request-card{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}.request-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem}.request-type{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.request-header h3{font-size:1.125rem;margin:.25rem 0 0}.badge-warning{background:#fef3c7;color:#92400e}.request-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface);border-radius:var(--radius)}.detail-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.detail-item svg{color:var(--gray-400)}.request-reason{margin-top:.5rem}.request-reason strong{display:block;margin-bottom:.5rem;color:var(--text-primary)}.request-reason p{margin:0;padding:.75rem;background:var(--background);border-left:3px solid var(--primary);border-radius:var(--radius);font-size:.875rem}.request-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap;align-items:center;min-height:40px}.request-actions .btn{display:inline-flex!important;align-items:center;gap:.5rem;white-space:nowrap;visibility:visible!important;opacity:1!important}.btn-danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.dynamic-fields-renderer{margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0}.dynamic-fields-header{margin-bottom:1.5rem}.dynamic-fields-header h4{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:#333}.dynamic-fields-description{margin:0;color:#666;font-size:.9rem}.dynamic-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.dynamic-field-group{display:flex;flex-direction:column}.dynamic-field-label{font-weight:500;margin-bottom:.5rem;color:#333;font-size:.9rem}.dynamic-field-label .required{color:#d32f2f}.dynamic-field-group input[type=text],.dynamic-field-group input[type=email],.dynamic-field-group input[type=number],.dynamic-field-group input[type=date],.dynamic-field-group textarea,.dynamic-field-group select{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem;transition:border-color .2s}.dynamic-field-group input[type=text]:focus,.dynamic-field-group input[type=email]:focus,.dynamic-field-group input[type=number]:focus,.dynamic-field-group input[type=date]:focus,.dynamic-field-group textarea:focus,.dynamic-field-group select:focus{outline:none;border-color:#1976d2}.dynamic-field-group input[type=text].error,.dynamic-field-group input[type=email].error,.dynamic-field-group input[type=number].error,.dynamic-field-group input[type=date].error,.dynamic-field-group textarea.error,.dynamic-field-group select.error{border-color:#d32f2f}.dynamic-field-group input:disabled,.dynamic-field-group textarea:disabled,.dynamic-field-group select:disabled{background-color:#f5f5f5;cursor:not-allowed}.checkbox-label,.radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;margin-bottom:.5rem}.checkbox-label input[type=checkbox],.radio-label input[type=radio]{margin:0;cursor:pointer}.radio-group{display:flex;flex-direction:column;gap:.5rem}.error-text{color:#d32f2f;font-size:.85rem;margin-top:.25rem}.dynamic-fields-loading{padding:1rem;text-align:center;color:#666}@media (max-width: 768px){.dynamic-fields-grid{grid-template-columns:1fr}}.customers-page{padding:1rem;max-width:1400px;margin:0 auto}@media (min-width: 641px){.customers-page{padding:1.5rem}}@media (min-width: 1025px){.customers-page{padding:2rem}}.customers-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 641px){.customers-header{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:2rem}}.customers-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0}.search-bar{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}@media (min-width: 641px){.search-bar{flex-direction:row;gap:.5rem}}.search-bar input{flex:2;min-width:0;width:100%;padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem}@media (min-width: 641px){.search-bar input{min-width:300px}}@media (min-width: 1025px){.search-bar input{min-width:420px}}.search-bar button{padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:500;width:100%;min-height:44px}@media (min-width: 641px){.search-bar button{width:auto}}.search-bar button:hover{background:var(--primary-dark)}.customers-table-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border)}.customers-table{width:100%;border-collapse:collapse;background:var(--surface)}.customers-table thead{background:var(--surface-alt, var(--surface))}.customers-table th{padding:1rem;text-align:left;font-weight:var(--font-semibold);font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border);white-space:nowrap;vertical-align:middle}.customers-table th:last-child{text-align:center}.customers-table th:has(+th:last-child),.customers-table th:last-child{text-align:center}.customers-table td{padding:1rem;border-top:1px solid var(--border);font-size:.938rem;color:var(--text-primary);vertical-align:middle;text-align:left;height:1px}.customers-table tbody tr{height:auto;min-height:60px}.customers-table td:last-child{text-align:center;visibility:visible!important}.customers-table tbody tr{transition:var(--transition-fast)}.customers-table tbody tr:hover{background:var(--primary-50)}.customers-table tbody tr:nth-child(2n){background:var(--gray-50)}.customers-table tbody tr:nth-child(2n):hover{background:var(--primary-50)}.status-badge{display:inline-flex;align-items:center;padding:.375rem .875rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.025em;white-space:nowrap}.status-badge.active{background:var(--success-light);color:var(--success);border:1px solid rgba(5,150,105,.2)}.status-badge.inactive{background:var(--gray-100);color:var(--gray-600);border:1px solid var(--border)}.actions-cell{white-space:nowrap;text-align:center;vertical-align:middle;padding:1rem}.actions-cell .actions-wrapper{display:flex!important;align-items:center;justify-content:center;gap:.75rem!important;flex-wrap:wrap;min-height:40px;width:100%}.actions-cell .actions-wrapper .action-buttons{display:inline-flex!important;align-items:center;gap:.5rem;visibility:visible!important}.actions-cell .actions-wrapper .action-buttons .btn-icon{display:flex!important;visibility:visible!important;opacity:1!important}.actions-cell .actions-wrapper button{margin:0;display:inline-flex!important;align-items:center;justify-content:center;height:32px;padding:.375rem .75rem;white-space:nowrap;visibility:visible!important;opacity:1!important}.actions-buttons{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:nowrap}.actions-buttons .btn-icon{min-width:36px;width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);transition:var(--transition)}.actions-buttons .btn-icon:hover{background:var(--primary-50);border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.actions-buttons .btn-icon-danger{color:var(--danger)}.actions-buttons .btn-icon-danger:hover{background:var(--danger-light);border-color:var(--danger);color:var(--danger)}.empty-value{color:var(--text-tertiary);font-style:normal;font-size:var(--text-base);letter-spacing:.1em}.customer-form{padding:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;margin-bottom:1rem}.form-group label{font-weight:500;margin-bottom:.5rem;font-size:.875rem;color:var(--text-secondary)}.form-group input,.form-group textarea{padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.large-modal{max-width:1000px;width:90vw}.user-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.users-table-container{overflow-x:auto;margin-top:1rem}.users-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.users-table th{background:var(--primary);color:#fff;padding:1rem;text-align:left;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.users-table td{padding:1rem;border-bottom:1px solid var(--border);vertical-align:middle}.users-table tbody tr:nth-child(2n){background:var(--gray-50)}.users-table tr:hover{background:var(--primary-50)}.users-table tbody tr:nth-child(2n):hover{background:var(--primary-50)}.role-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge.admin{background:#dc3545;color:#fff}.role-badge.viewer{background:#6c757d;color:#fff}.actions-cell .action-buttons{display:inline-flex;align-items:center;gap:.5rem}.actions-cell button{margin:0;vertical-align:middle;display:inline-flex;align-items:center;justify-content:center}@media (max-width: 768px){.large-modal{max-width:95vw;width:95vw}.users-table{font-size:.875rem}.users-table th,.users-table td{padding:.75rem .5rem}.actions-cell button{font-size:.75rem;padding:.25rem .5rem}}.delete-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2000}.delete-popup{@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}background:#fff;padding:20px 24px;border-radius:8px;width:350px;max-width:90%;box-shadow:0 4px 12px #00000026;animation:fadeIn .2s ease-out}.delete-popup .delete-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:2000}.delete-popup .delete-popup{background:#fff;padding:20px 24px;border-radius:8px;width:350px;max-width:90%;box-shadow:0 4px 12px #00000026;animation:fadeIn .2s ease-out}.delete-popup .delete-popup h3{margin:0 0 10px;font-size:18px}.delete-popup .delete-message{margin-bottom:20px;font-size:14px;color:#555}.delete-popup .delete-actions{display:flex;justify-content:flex-end;gap:10px}.delete-popup .btn-cancel{padding:8px 14px;background:#e5e5e5;border:none;border-radius:4px;cursor:pointer}.delete-popup .btn-confirm{padding:8px 14px;background:#d93025;color:#fff;border:none;border-radius:4px;cursor:pointer}.delete-popup .btn-cancel:hover{background:#d3d3d3}.delete-popup .btn-confirm:hover{background:#b7221b}.delete-popup h3{margin:0 0 10px;font-size:18px}.delete-message{margin-bottom:20px;font-size:14px;color:#555}.delete-actions{display:flex;justify-content:flex-end;gap:10px}.btn-cancel{padding:8px 14px;background:#e5e5e5;border:none;border-radius:4px;cursor:pointer}.btn-confirm{padding:8px 14px;background:#d93025;color:#fff;border:none;border-radius:4px;cursor:pointer}.btn-cancel:hover{background:#d3d3d3}.btn-confirm:hover{background:#b7221b}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.customer-detail-page{padding:2rem;max-width:1400px;margin:0 auto}.notes-content{background:var(--gray-50);padding:1rem;border-radius:var(--radius-md);border:1px solid var(--border)}.notes-content p{margin:0;color:var(--text-primary);white-space:pre-wrap;line-height:1.6}.products-page{padding:1rem;max-width:1400px;margin:0 auto}@media (min-width: 641px){.products-page{padding:1.5rem}}@media (min-width: 1025px){.products-page{padding:2rem}}.products-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 641px){.products-header{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:2rem}}.products-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0}.products-table-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto;overflow-y:visible;border:1px solid var(--border);-webkit-overflow-scrolling:touch}.products-table{width:100%;border-collapse:collapse;background:var(--surface)}.products-table thead{background:var(--surface-alt, var(--surface))}.products-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;border-bottom:1px solid var(--border)}.products-table td{padding:1rem;border-top:1px solid var(--border);font-size:.938rem;color:var(--text-primary)}.products-table tbody tr:hover{background:var(--gray-100)}.products-table tbody tr:nth-child(2n){background:var(--gray-50)}.products-table tbody tr:nth-child(2n):hover{background:var(--primary-50)}.product-form{padding:1.5rem}.product-detail-page{padding:2rem;max-width:1400px;margin:0 auto}.description-content,.specifications-content,.notes-content{background:var(--gray-50);padding:1rem;border-radius:var(--radius-md);border:1px solid var(--border)}.description-content p,.notes-content p{margin:0;color:var(--text-primary);white-space:pre-wrap;line-height:1.6}.specifications-content pre{margin:0;color:var(--text-primary);white-space:pre-wrap;line-height:1.6;font-family:inherit}.loading-overlay-subtle{position:relative;display:flex;justify-content:center;align-items:center;padding:1rem;min-height:60px}.error-banner .btn-link{color:var(--error);text-decoration:underline;background:none;border:none;cursor:pointer;padding:.25rem .5rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;min-height:400px}@media (max-width: 768px){.product-detail-page{padding:1rem}.info-grid{grid-template-columns:1fr}.header-content{flex-direction:column;align-items:flex-start}.detail-card{padding:1.5rem}.error-state,.empty-state{padding:2rem 1rem;min-height:300px}.error-actions{flex-direction:column;width:100%}.error-actions .btn{width:100%}}.health-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.dashboard-header h1{margin:0 0 .5rem;font-size:2rem;color:var(--text-primary)}.subtitle{color:var(--text-secondary);margin:0}.dashboard-controls{display:flex;gap:1rem;align-items:center}.dashboard-controls label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.dashboard-controls select{padding:.5rem;border:1px solid var(--border-color);border-radius:.25rem;background:var(--bg-primary);color:var(--text-primary)}.health-summary{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.summary-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;padding:1.5rem}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.summary-header h2{margin:0;font-size:1.25rem;color:var(--text-primary)}.health-score{text-align:center;margin:1.5rem 0}.score-value{font-size:3rem;font-weight:700;line-height:1}.score-label{font-size:.875rem;color:var(--text-secondary);margin-top:.5rem}.summary-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.5rem}.stat{text-align:center}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.alert-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.alert-item{text-align:center;padding:1rem;background:var(--bg-primary);border-radius:.25rem}.alert-item.total{background:var(--bg-primary);border:2px solid var(--primary-color)}.alert-value{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.alert-label{font-size:.75rem;color:var(--text-secondary);margin-top:.25rem}.alert-actions{margin-top:1rem;text-align:center}.integrations-grid{margin-top:2rem}.integrations-grid h2{margin-bottom:1rem;color:var(--text-primary)}.cards-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.integration-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.5rem;padding:1.5rem;transition:box-shadow .2s}.integration-card:hover{box-shadow:0 4px 6px #0000001a}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.card-header h3{margin:0 0 .25rem;font-size:1.125rem;color:var(--text-primary)}.integration-type{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase}.status-badge{padding:.25rem .75rem;border-radius:.25rem;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase}.card-body{margin-bottom:1rem}.health-score-mini{display:flex;justify-content:center;margin:1rem 0}.score-circle{position:relative;display:inline-block}.score-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1rem;font-weight:700;color:var(--text-primary)}.metrics-summary{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.metric{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem}.metric-label{color:var(--text-secondary)}.metric-value{font-weight:600;color:var(--text-primary)}.issues-list{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);font-size:.875rem}.issues-list strong{color:var(--text-primary);display:block;margin-bottom:.5rem}.issues-list ul{margin:0;padding-left:1.25rem;color:var(--text-secondary)}.issues-list li{margin-bottom:.25rem}.card-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.last-updated{text-align:center;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.875rem}@media (max-width: 768px){.health-summary{grid-template-columns:1fr}.summary-stats,.alert-stats{grid-template-columns:repeat(2,1fr)}.cards-container{grid-template-columns:1fr}.dashboard-header{flex-direction:column;gap:1rem}}.assignments-page{padding:1rem;max-width:1400px;margin:0 auto}@media (min-width: 641px){.assignments-page{padding:1.5rem}}@media (min-width: 1025px){.assignments-page{padding:2rem}}.assignments-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 641px){.assignments-header{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:2rem}}.assignments-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 641px){.assignments-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}}@media (min-width: 1025px){.assignments-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}}.assignment-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid var(--border)}.assignment-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--surface)}.assignment-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.assignment-card-header h3{margin:0;font-size:1.125rem;color:var(--text-primary)}.assignment-card-body{margin-bottom:1rem}.assignment-detail{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem}.assignment-detail .label{color:var(--text-secondary)}.assignment-detail .value{color:var(--text-primary);font-weight:500}.assignment-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border);font-size:.813rem;color:var(--text-secondary)}.doc-count{display:flex;align-items:center;gap:.5rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;color:var(--text-secondary);grid-column:1 / -1;min-height:400px}.empty-state .empty-icon{margin-bottom:1.5rem;color:var(--text-secondary);opacity:.6}.empty-state h3{font-size:1.5rem;color:var(--text-primary);margin:0 0 .5rem}.empty-state p{color:var(--text-secondary);margin-bottom:1.5rem;max-width:500px}.error-banner{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--error-light);color:var(--error);border-radius:var(--radius-md);margin-bottom:1.5rem;border-left:4px solid var(--error)}.error-banner .error-icon{font-size:1.25rem;flex-shrink:0}.error-banner .error-message{flex:1}.error-banner .btn-link{color:var(--error);text-decoration:underline;background:none;border:none;cursor:pointer;padding:.25rem .5rem;font-size:.875rem}.error-banner .btn-link:hover{opacity:.8}.loading-overlay-subtle{position:relative;display:flex;justify-content:center;align-items:center;padding:1rem;min-height:60px;margin:1rem 0}.assignment-form select{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem}@media (max-width: 768px){.assignments-page{padding:1rem}.assignments-header{flex-direction:column;align-items:flex-start;gap:1rem}.assignments-header .btn{width:100%}.assignments-grid{grid-template-columns:1fr}.assignment-card{padding:1.25rem}.search-bar{flex-direction:column}.search-bar input{width:100%;margin-bottom:.5rem}.empty-state,.error-banner{padding:2rem 1rem}.empty-state{min-height:300px}.error-banner{flex-direction:column;align-items:flex-start;gap:.75rem}.error-banner .btn-link{align-self:flex-start}}.ai-insights-panel{position:fixed;top:0;right:0;width:400px;height:100vh;background:#fff;box-shadow:-2px 0 10px #0000001a;z-index:1000;display:flex;flex-direction:column;overflow:hidden}.ai-insights-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #e0e0e0;background:#f5f5f5}.ai-insights-header h3{margin:0;font-size:1.25rem;color:#333}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-btn:hover{background:#e0e0e0;color:#333}.ai-insights-content{flex:1;overflow-y:auto;padding:1rem}.insight-section{margin-bottom:1.5rem;padding:1rem;background:#f9f9f9;border-radius:8px;border-left:4px solid #1976d2}.insight-section h4{margin:0 0 .75rem;color:#1976d2;font-size:1rem}.insight-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #e0e0e0}.insight-item:last-child{border-bottom:none}.insight-item .label{font-weight:600;color:#666;font-size:.9rem}.insight-item .value{color:#333;font-size:.9rem}.summary-text{background:#f9f9f9;padding:1rem;border-radius:4px;margin-bottom:.75rem;line-height:1.6;color:#333;font-size:.95rem;white-space:pre-wrap;word-wrap:break-word}.ocr-text{background:#fff;padding:1rem;border-radius:4px;border:1px solid #e0e0e0;max-height:200px;overflow-y:auto;font-family:Courier New,monospace;font-size:.85rem;line-height:1.5;color:#333;margin-bottom:.5rem}.insight-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.refresh-btn,.reprocess-btn,.process-btn,.retry-btn{flex:1;padding:.5rem 1rem;border:1px solid #1976d2;background:#fff;color:#1976d2;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.refresh-btn:hover,.reprocess-btn:hover,.process-btn:hover,.retry-btn:hover{background:#1976d2;color:#fff}.error-message{color:#d32f2f;padding:1rem;background:#ffebee;border-radius:4px;margin-bottom:1rem}.no-insights-message{text-align:center;padding:2rem 1rem;color:#666}.no-insights-message p{margin:.5rem 0}.no-insights-message .hint{font-size:.9rem;color:#999;font-style:italic}.toast-notification{position:fixed;top:20px;right:420px;min-width:320px;max-width:500px;padding:1rem 1.25rem;border-radius:12px;box-shadow:0 8px 24px #0003;display:flex;align-items:center;gap:.75rem;z-index:10000;animation:slideInRight .3s ease-out;font-size:.9rem;line-height:1.5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff;border-left:4px solid #2e7d32}.toast-error{background:linear-gradient(135deg,#f44336,#d32f2f);color:#fff;border-left:4px solid #c62828}.toast-info{background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;border-left:4px solid #1565c0}.toast-warning{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;border-left:4px solid #e65100}.toast-icon{font-size:1.25rem;flex-shrink:0}.toast-message{flex:1;font-weight:500}.toast-close{background:#fff3;border:none;color:#fff;font-size:1.25rem;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0;transition:background .2s}.toast-close:hover{background:#ffffff4d}@media (max-width: 768px){.ai-insights-panel{width:100%;height:100%}.toast-notification{right:20px;left:20px;min-width:auto;max-width:none}}.semantic-search-container{position:relative;width:100%;max-width:600px;margin:0 auto}.semantic-search-bar{position:relative;display:flex;align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:.5rem;transition:border-color .2s}.semantic-search-bar:focus-within{border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.semantic-search-input{flex:1;border:none;outline:none;padding:.5rem;font-size:1rem;background:transparent}.semantic-search-input::placeholder{color:#999}.search-spinner{padding:0 .5rem;display:flex;align-items:center}.clear-search-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#999;padding:0 .5rem;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:4px}.clear-search-btn:hover{background:#f0f0f0;color:#333}.semantic-search-results{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-top:.5rem;box-shadow:0 4px 12px #00000026;max-height:400px;overflow-y:auto;z-index:1000}.results-header{padding:.75rem;background:#f5f5f5;border-bottom:1px solid #e0e0e0;font-size:.9rem;color:#666;font-weight:600}.search-result-item{padding:1rem;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s}.search-result-item:hover{background:#f5f5f5}.search-result-item:last-child{border-bottom:none}.result-document-id{font-weight:600;color:#333}.result-similarity{color:#1976d2;font-size:.9rem;font-weight:600}.search-error{margin-top:.5rem;padding:.75rem;background:#ffebee;color:#d32f2f;border-radius:4px;font-size:.9rem}.no-results{margin-top:.5rem;padding:1rem;text-align:center;color:#999;font-size:.9rem}@media (max-width: 768px){.semantic-search-container{max-width:100%}.semantic-search-results{position:fixed;top:auto;bottom:0;left:0;right:0;max-height:50vh;border-radius:16px 16px 0 0}}.bulk-actions-toolbar{position:sticky;top:0;z-index:100;background:var(--primary);color:#fff;padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-md);border-radius:var(--radius) var(--radius) 0 0;animation:slideDown .2s ease}.bulk-actions-info{display:flex;align-items:center;gap:var(--spacing-md)}.bulk-actions-count{font-weight:var(--font-semibold);font-size:var(--text-base)}.bulk-actions-deselect{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:var(--transition)}.bulk-actions-deselect:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff80}.bulk-actions-deselect:disabled{opacity:.5;cursor:not-allowed}.bulk-actions-buttons{display:flex;gap:var(--spacing-sm);align-items:center}.bulk-actions-buttons .btn{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bulk-actions-buttons .btn:hover:not(:disabled){background:#ffffff40;border-color:#ffffff80}.bulk-actions-buttons .btn-danger{background:#dc2626e6;border-color:#dc2626}.bulk-actions-buttons .btn-danger:hover:not(:disabled){background:#dc2626}.bulk-actions-buttons .btn svg{margin-right:var(--spacing-xs)}[data-theme=dark] .bulk-actions-toolbar{background:var(--primary-dark)}@media (max-width: 768px){.bulk-actions-toolbar{flex-direction:column;gap:var(--spacing-md);align-items:stretch}.bulk-actions-info{justify-content:space-between}.bulk-actions-buttons{flex-direction:column;width:100%}.bulk-actions-buttons .btn{width:100%}}.bulk-actions-toolbar:focus-within{outline:2px solid white;outline-offset:-2px}.document-tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.document-tags.read-only{gap:.375rem}.tag{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;background-color:var(--primary);color:#fff;border-radius:16px;font-size:.875rem;font-weight:500;transition:all .2s ease}.tag:hover{opacity:.9;transform:translateY(-1px)}.tag-remove{background:none;border:none;color:#fff;cursor:pointer;font-size:1.125rem;line-height:1;padding:0;margin-left:.25rem;opacity:.8;transition:opacity .2s ease;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.tag-remove:hover{opacity:1;background:#fff3;border-radius:50%}.tag-add-btn{padding:.25rem .75rem;background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:16px;color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all .2s ease}.tag-add-btn:hover{background:var(--bg-hover);border-color:var(--primary);color:var(--primary)}.tag-input-container{position:relative}.tag-input{padding:.25rem .75rem;border:1px solid var(--primary);border-radius:16px;font-size:.875rem;min-width:150px;outline:none}.tag-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.tag-suggestions{position:absolute;top:100%;left:0;margin-top:.25rem;background:#fff;border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 6px -1px #0000001a;z-index:1000;max-height:200px;overflow-y:auto;min-width:200px}.tag-suggestion{padding:.5rem .75rem;cursor:pointer;border-left:3px solid transparent;transition:background-color .2s ease;display:flex;justify-content:space-between;align-items:center}.tag-suggestion:hover{background-color:var(--bg-hover)}.tag-suggestion.create-new{border-left-color:var(--primary);font-weight:500;color:var(--primary)}.tag-usage{font-size:.75rem;color:var(--text-secondary)}.no-tags{color:var(--text-secondary);font-size:.875rem;font-style:italic}.bulk-metadata-modal{max-width:600px;width:90%}.bulk-metadata-form{padding:var(--spacing-lg)}.bulk-metadata-form .form-group{margin-bottom:var(--spacing-lg)}.bulk-metadata-form .form-label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.bulk-metadata-form .form-input{width:100%;padding:var(--spacing-md);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-base);background:var(--surface);color:var(--text-primary);transition:var(--transition)}.bulk-metadata-form .form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.bulk-metadata-form .form-input:disabled{opacity:.6;cursor:not-allowed}.bulk-metadata-form .form-hint{display:block;margin-top:var(--spacing-xs);font-size:var(--text-sm);color:var(--text-secondary)}.bulk-metadata-modal .modal-actions{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border)}.bulk-metadata-form .form-input:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.bulk-tags-container{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-height:50px}.bulk-tags-container .tag{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;background-color:var(--primary);color:#fff;border-radius:16px;font-size:.875rem;font-weight:500}.bulk-tags-container .tag-remove{background:none;border:none;color:#fff;cursor:pointer;font-size:1.125rem;line-height:1;padding:0;margin-left:.25rem;opacity:.8;transition:opacity .2s ease;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.bulk-tags-container .tag-remove:hover{opacity:1;background:#fff3;border-radius:50%}.tag-input-inline{flex:1;min-width:200px;border:none;background:transparent;padding:.25rem .5rem}.tag-input-inline:focus{outline:none;border:none;box-shadow:none}.comment-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:flex-end;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.comment-panel{background:var(--surface);width:400px;max-width:90vw;height:100vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.comment-panel-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border)}.comment-panel-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.comment-panel-close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:var(--radius);transition:var(--transition)}.comment-panel-close:hover{background:var(--gray-50);color:var(--text-primary)}.comment-panel-content{flex:1;overflow-y:auto;padding:1.5rem}.comment-input-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.comment-input{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.938rem;font-family:inherit;resize:vertical;margin-bottom:.75rem;background:var(--surface);color:var(--text-primary)}.comment-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-50)}.btn-add-comment{padding:.625rem 1.25rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-add-comment:hover:not(:disabled){background:var(--primary-600);transform:translateY(-1px)}.btn-add-comment:disabled{opacity:.5;cursor:not-allowed}.no-comments{text-align:center;padding:2rem;color:var(--text-secondary);font-style:italic}.comment-item{padding:1rem;background:var(--gray-50);border-radius:var(--radius);border-left:3px solid var(--primary)}.comment-item.resolved{opacity:.7;border-left-color:var(--success)}.comment-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.comment-author{display:flex;flex-direction:column;gap:.25rem}.comment-author strong{font-size:.938rem;color:var(--text-primary)}.comment-date{font-size:.75rem;color:var(--text-secondary)}.resolved-badge{padding:.25rem .5rem;background:var(--success);color:#fff;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.comment-content{margin-bottom:.5rem;color:var(--text-primary);line-height:1.5}.comment-reference{font-size:.75rem;color:var(--text-secondary);font-style:italic;margin-bottom:.5rem}.comment-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn-resolve,.btn-delete-comment,.btn-reply{padding:.375rem .75rem;border:none;border-radius:var(--radius-sm);font-size:.75rem;cursor:pointer;transition:var(--transition)}.btn-resolve{background:var(--success);color:#fff}.btn-resolve:hover{background:var(--success-600)}.btn-delete-comment{background:var(--danger);color:#fff}.btn-delete-comment:hover{background:var(--danger-600)}.btn-reply{background:var(--gray-200);color:var(--text-primary)}.btn-reply:hover{background:var(--gray-300)}.reply-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.reply-input{width:100%;padding:.625rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.875rem;font-family:inherit;resize:vertical;margin-bottom:.5rem;background:var(--surface);color:var(--text-primary)}.reply-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-50)}.btn-post-reply{padding:.5rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.875rem;cursor:pointer;transition:var(--transition)}.btn-post-reply:hover:not(:disabled){background:var(--primary-600)}.btn-post-reply:disabled{opacity:.5;cursor:not-allowed}.replies-list{margin-top:.75rem;padding-left:1rem;border-left:2px solid var(--border);display:flex;flex-direction:column;gap:.75rem}.reply-item{padding:.75rem;background:var(--surface);border-radius:var(--radius)}[data-theme=dark] .comment-item{background:var(--gray-200)}[data-theme=dark] .reply-item{background:var(--gray-100)}.document-audit-trail{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;margin-top:2rem}.audit-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.audit-header h3{margin:0 0 .25rem;font-size:1.125rem}.timezone-info{font-size:.75rem;color:var(--text-secondary);margin:0;font-style:italic}.activity-count{font-size:.875rem;color:var(--text-secondary);background:var(--surface);padding:.375rem .75rem;border-radius:var(--radius)}.audit-timeline{position:relative;padding-left:2.5rem}.audit-timeline:before{content:"";position:absolute;left:10px;top:0;bottom:0;width:2px;background:var(--border)}.timeline-item{position:relative;margin-bottom:1.5rem}.timeline-item:last-child{margin-bottom:0}.timeline-icon{position:absolute;left:-2.5rem;top:0;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--background);border:2px solid var(--border)}.action-success{border-color:var(--success);color:var(--success);background:#d1fae5}.action-danger{border-color:var(--danger);color:var(--danger);background:#fee2e2}.action-info{border-color:var(--info);color:var(--info);background:#dbeafe}.action-primary{border-color:var(--primary);color:var(--primary);background:#e0e7ff}.action-default{border-color:var(--gray-300);color:var(--gray-500);background:var(--gray-100)}.timeline-content{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.timeline-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.timeline-action{font-weight:600;color:var(--text-primary);font-size:.938rem}.timeline-time-group{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.timeline-time-main{font-size:.75rem;color:var(--text-secondary);font-family:SF Mono,Monaco,Courier New,monospace}.timeline-time-relative{font-size:.688rem;color:var(--gray-400);font-style:italic}.timeline-details .detail-row{display:flex;align-items:center;gap:.5rem;font-size:.813rem;color:var(--text-secondary);border-bottom:none;padding:0}.timeline-details .detail-row svg{flex-shrink:0;color:var(--gray-400)}.timeline-details .detail-row strong{color:var(--text-primary);min-width:auto}.audit-loading,.audit-error,.no-activity{text-align:center;padding:2rem;color:var(--text-secondary)}.audit-loading .spinner{margin:0 auto 1rem}@media (max-width: 768px){.timeline-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.document-list-enhanced,.document-list-view{width:100%}.document-table{width:100%;border-collapse:collapse;background:var(--bg-primary);border-radius:8px;overflow:hidden}.document-table thead{background:var(--bg-secondary)}.document-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border)}.document-table tbody tr{border-bottom:1px solid var(--border);cursor:pointer;transition:background-color .2s}.document-table tbody tr:hover{background:var(--primary-50)}.document-table tbody tr.selected{background:var(--primary-light)}.document-table td{padding:.75rem 1rem;color:var(--text-primary)}.document-name-link{color:var(--primary);text-decoration:none}.document-name-link:hover{text-decoration:underline}.document-actions-inline{display:flex;gap:.25rem;flex-wrap:wrap}.document-toolbar{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-secondary);border-radius:8px;margin-bottom:1rem}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:.5rem}.toolbar-middle{flex:1;max-width:400px}.search-input,.filter-select,.sort-select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:.875rem}.search-input{width:100%}.filter-select,.sort-select{min-width:120px}.btn-icon{background:transparent;border:none;cursor:pointer;font-size:1.25rem;padding:.25rem;color:var(--text-primary)}.btn-icon:hover{opacity:.7}.selection-count{font-size:.875rem;color:var(--text-secondary)}.bulk-actions-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--primary-light);border-left:3px solid var(--primary);border-radius:6px;margin-bottom:1rem}.bulk-actions-bar>div{display:flex;gap:.5rem}.dropzone{border:2px dashed var(--border);border-radius:12px;padding:3rem 2rem;text-align:center;background:var(--bg-secondary);cursor:pointer;transition:all .2s;margin-bottom:1.5rem;position:relative}.dropzone-file-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:.01;cursor:pointer;z-index:2}.dropzone.dragging{border-color:var(--primary);background:var(--primary-light);transform:scale(1.02)}.dropzone label{display:flex;cursor:pointer;width:100%;height:100%;align-items:center;justify-content:center}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative;z-index:1}.dropzone-icon{font-size:3rem;opacity:.5}.dropzone p{margin:0;color:var(--text-secondary)}.document-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.document-card{background:var(--bg-secondary);border:2px solid var(--border);border-radius:12px;padding:1rem;cursor:pointer;transition:all .2s;position:relative}.document-card:hover{border-color:var(--primary);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.document-card.selected{border-color:var(--primary);background:var(--primary-light)}.card-checkbox{position:absolute;top:.5rem;right:.5rem;font-size:1.25rem;color:var(--primary)}.card-icon{font-size:3rem;text-align:center;margin:.5rem 0}.card-info{margin:.5rem 0}.card-name{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-card .card-info .card-name.card-name-link{color:var(--primary)!important;cursor:pointer!important;text-decoration:underline!important;text-decoration-color:var(--primary)!important;text-underline-offset:2px;transition:all .2s ease}.document-card .card-info .card-name.card-name-link:hover{color:var(--primary-dark)!important;text-decoration-thickness:2px!important;opacity:.9}.card-meta{font-size:.75rem;color:var(--text-secondary);margin:0}.card-date{font-size:.75rem;color:var(--text-secondary);margin:.25rem 0 0}.card-actions{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border);flex-wrap:wrap}.btn-icon-sm{background:transparent;border:none;cursor:pointer;font-size:1.125rem;padding:.375rem;border-radius:4px;transition:background .2s;display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;line-height:1;flex-shrink:0}.btn-icon-sm:hover{background:var(--bg-primary)}.empty-state{grid-column:1 / -1;text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-hint{font-size:.875rem;margin-top:.5rem}.preview-modal{max-width:90vw;max-height:90vh;display:flex;flex-direction:column}.preview-content{flex:1;display:flex;justify-content:center;align-items:center;overflow:auto;background:var(--bg-primary)}.preview-image{max-width:100%;max-height:80vh;object-fit:contain}.preview-iframe{width:100%;height:80vh;border:none;background:#fff}.preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.preview-icon{font-size:4rem;opacity:.5;margin-bottom:1rem}.version-list{max-height:60vh;overflow-y:auto;padding:1rem 0}.version-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border)}.version-item:last-child{border-bottom:none}.version-info{display:flex;gap:1rem;align-items:center}.version-number{font-weight:600;color:var(--primary);font-size:1.125rem}.version-date,.version-author{font-size:.875rem;color:var(--text-secondary)}.version-actions{display:flex;gap:.5rem}.btn-sm{padding:.375rem .75rem;font-size:.875rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);cursor:pointer}.btn-sm:hover{background:var(--bg-primary)}@media (max-width: 768px){.document-grid{grid-template-columns:1fr}.document-toolbar{flex-direction:column;gap:.75rem}.toolbar-middle{max-width:100%}.toolbar-left,.toolbar-right{width:100%;justify-content:space-between}.bulk-actions-bar{flex-direction:column;gap:.75rem;align-items:stretch}.bulk-actions-bar>div{flex-direction:column}.preview-modal{max-width:100vw;max-height:100vh}}.bulk-move-modal{max-width:500px;width:90%}.folder-select{width:100%;padding:.5rem;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:.875rem;background:#fff}.folder-select option{padding:.5rem}.loading-state,.empty-state{padding:2rem;text-align:center;color:var(--text-secondary, #666);font-size:.875rem}.assignment-document-audit-trail{padding:1.5rem}.audit-trail-header{margin-bottom:1.5rem}.audit-trail-header h2{margin:0 0 .5rem;font-size:1.5rem;color:var(--text-primary)}.audit-trail-header p{margin:0;color:var(--text-secondary);font-size:.875rem}.audit-layout{display:grid;grid-template-columns:350px 1fr;gap:1.5rem;height:calc(100vh - 300px);min-height:600px}.documents-panel,.activities-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;overflow:hidden}.panel-header{padding:1rem 1.25rem;border-bottom:1px solid var(--border);background:var(--gray-50)}.panel-header h3{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.search-controls{margin-top:.75rem}.search-controls input{width:100%}.documents-list{flex:1;overflow-y:auto;padding:.5rem}.document-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;margin-bottom:.5rem}.document-item:hover{background:var(--gray-100)}.document-item.selected{background:var(--primary-light);border:1px solid var(--primary)}.document-icon{font-size:1.5rem;flex-shrink:0}.document-name{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.25rem}.document-meta{font-size:.75rem;color:var(--text-secondary)}.selected-document{padding:.5rem;background:var(--primary-light);border-radius:var(--radius-sm);margin-top:.5rem}.selected-document strong{color:var(--primary)}.empty-state,.empty-state-center{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:var(--text-secondary);flex:1}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.loading-container{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.assignment-audit-trail-loading{display:flex;align-items:center;justify-content:center;min-height:400px}@media (max-width: 1024px){.audit-layout{grid-template-columns:1fr;height:auto}.documents-panel{max-height:300px}}.assignment-detail-page{padding:2rem;max-width:1400px;margin:0 auto}.assignment-detail-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.back-btn{background:var(--surface);border:none;padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;margin-bottom:1rem;font-size:.938rem}.assignment-info-card{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem;margin-bottom:2rem}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}@media (max-width: 1200px){.info-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.info-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.info-grid{grid-template-columns:1fr}}.info-item .label{font-size:.875rem;color:var(--text-secondary)}.info-item .value{font-size:1rem;color:var(--text-primary);font-weight:500}.info-item .value .status-badge{display:inline-flex;width:fit-content;white-space:nowrap}.documents-section{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem}.documents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.action-buttons{display:flex;gap:.75rem;align-items:center}.btn-new-folder{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.125rem;font-size:.938rem;font-weight:500;color:var(--primary);background:var(--surface);border:2px solid var(--primary);border-radius:var(--radius);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.btn-new-folder:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(37,99,235,.1),transparent);transition:left .5s ease}.btn-new-folder:hover:before{left:100%}.btn-new-folder:hover{background:var(--primary-50);border-color:var(--primary-dark);color:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-new-folder:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-new-folder:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-new-folder svg{flex-shrink:0;transition:transform .2s ease}.btn-new-folder:hover svg{transform:rotate(90deg)}.btn-upload-documents{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.938rem;font-weight:600;color:#fff;background:var(--primary-gradient);border:2px solid var(--primary-dark);border-radius:var(--radius);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.btn-upload-documents:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-upload-documents:hover:before{left:100%}.btn-upload-documents:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-upload-documents:active{transform:translateY(0);box-shadow:var(--shadow-md)}.btn-upload-documents:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-upload-documents svg{flex-shrink:0;transition:transform .2s ease}.btn-upload-documents:hover svg{transform:translateY(-2px)}[data-theme=dark] .btn-new-folder{background:var(--surface);border-color:var(--primary);color:var(--primary)}[data-theme=dark] .btn-new-folder:hover{background:var(--primary-light);border-color:var(--primary-dark)}[data-theme=dark] .btn-upload-documents{background:var(--primary-gradient);border-color:var(--primary-dark)}[data-theme=dark] .btn-upload-documents:hover{background:var(--primary-dark)}.btn-modal-cancel{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.125rem;font-size:.938rem;font-weight:500;color:var(--text-secondary);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-sm)}.btn-modal-cancel:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-300);color:var(--text-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-modal-cancel:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-modal-cancel:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-modal-cancel:disabled{opacity:.5;cursor:not-allowed}.btn-modal-cancel svg{flex-shrink:0}.btn-modal-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.938rem;font-weight:600;color:#fff;background:var(--primary-gradient);border:2px solid var(--primary-dark);border-radius:var(--radius);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.btn-modal-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-modal-primary:hover:not(:disabled):before{left:100%}.btn-modal-primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-modal-primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-md)}.btn-modal-primary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-modal-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-modal-primary svg{flex-shrink:0;transition:transform .2s ease}.btn-modal-primary:hover:not(:disabled) svg:not(.spinning){transform:translateY(-2px)}.btn-modal-primary .spinning{animation:spin 1s linear infinite}[data-theme=dark] .btn-modal-cancel{background:var(--surface);border-color:var(--border);color:var(--text-secondary)}[data-theme=dark] .btn-modal-cancel:hover:not(:disabled){background:var(--gray-200);border-color:var(--gray-300);color:var(--text-primary)}[data-theme=dark] .btn-modal-primary{background:var(--primary-gradient);border-color:var(--primary-dark)}[data-theme=dark] .btn-modal-primary:hover:not(:disabled){background:var(--primary-dark)}@media (max-width: 640px){.action-buttons{flex-direction:column;width:100%;gap:.5rem}.btn-new-folder,.btn-upload-documents{width:100%;justify-content:center;padding:.75rem 1.25rem}.btn-modal-cancel,.btn-modal-primary{width:100%;justify-content:center}}.folder-section{margin-bottom:2rem;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.folder-header{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--surface)}.folder-header h3{margin:0;font-size:1rem;flex:1}.documents-table table{width:100%;border-collapse:collapse}.documents-table th{padding:.75rem 1rem;text-align:left;font-size:.813rem;color:var(--text-secondary);background:var(--surface)}.documents-table td{padding:.75rem 1rem;border-top:1px solid var(--border);font-size:.875rem}.documents-table tbody tr:nth-child(2n){background:var(--gray-50)}.documents-table tbody tr:hover{background:var(--primary-50)}.documents-table tbody tr:nth-child(2n):hover{background:var(--primary-50)}.empty-folder{padding:2rem;text-align:center;color:var(--text-secondary)}.document-actions{display:flex;gap:.5rem;flex-wrap:wrap}.qr-code-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.qr-code-content{background:#fff;border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-lg);max-width:400px;width:100%;text-align:center}.qr-code-content h4{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.125rem}.qr-image{width:200px;height:200px;border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:1.5rem}.qr-actions{display:flex;gap:.75rem;justify-content:center}.selected-files{margin-top:1rem;padding:1rem;background:var(--surface);border-radius:var(--radius-md)}.selected-files ul{list-style:none;padding:0;margin:.5rem 0 0}.selected-files li{padding:.25rem 0;font-size:.875rem}.modal-content.small{max-width:500px}.qr-code-container{display:flex;gap:2rem;align-items:flex-start}.qr-image-section{display:flex;flex-direction:column;align-items:center;gap:1rem}.qr-image{width:200px;height:200px;border:1px solid #ddd;border-radius:8px;cursor:pointer;transition:transform .2s ease}.qr-image:hover{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.qr-image-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.qr-info{flex:1;display:flex;flex-direction:column;gap:1.5rem}.qr-details{background:#f8f9fa;padding:1rem;border-radius:8px;border:1px solid #e9ecef}.qr-details p{margin-bottom:.5rem;font-size:.9rem}.qr-details code{background:#e9ecef;padding:.2rem .4rem;border-radius:4px;font-family:monospace;font-size:.8rem}.url-section{background:#f8f9fa;padding:1rem;border-radius:8px;border:1px solid #e9ecef}.url-section p{margin-bottom:.5rem;font-size:.9rem}.url-container{display:flex;gap:.5rem;align-items:center;margin-bottom:.5rem}.url-input{flex:1;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-family:monospace;font-size:.875rem;background:#fff}.url-note{color:#6c757d;font-style:italic;margin:0}.public-notice{background:linear-gradient(135deg,var(--primary-light),var(--accent-blue-light));border:1px solid var(--primary);border-radius:var(--radius-md);padding:1rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.notice-content{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);font-weight:500}.notice-content svg{color:var(--primary);flex-shrink:0}.assignment-meta{display:flex;gap:1rem;margin-top:.5rem;font-size:.875rem;color:var(--text-secondary)}.so-number{font-weight:500;color:var(--primary)}.assignment-date{color:var(--text-secondary)}.status-badge{padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.status-badge.active{background:var(--success);color:#fff}.status-badge.inactive{background:var(--gray-300);color:var(--gray-600)}.document-count{background:var(--primary-light);color:var(--primary-dark);padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.spinner{width:40px;height:40px;border:4px solid var(--gray-200);border-top:4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@media (max-width: 768px){.qr-code-container{flex-direction:column;align-items:center;gap:1.5rem}.qr-image-section{width:100%}.qr-image{width:150px;height:150px}.qr-image-actions{width:100%;justify-content:center}.qr-info{width:100%}.header-actions{width:100%;justify-content:flex-start}.assignment-detail-header{flex-direction:column;align-items:flex-start;gap:1rem}.assignment-meta{flex-direction:column;gap:.5rem}.info-grid{grid-template-columns:1fr}}.assignment-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--border)}.tab-button{background:transparent;border:none;padding:.75rem 1.5rem;font-size:.938rem;font-weight:500;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s ease}.tab-button:hover{color:var(--text-primary);background:var(--gray-50)}.tab-button.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.audit-trail-section{padding:1.5rem 0}.sc-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px}.sc-modal-container{background:#fff;border-radius:24px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px #00000040}.sc-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid #e5e7eb;background:#f8fafc}.sc-title-wrapper{display:flex;gap:12px;align-items:center}.sc-title-icon{background:#4f46e5;color:#fff;padding:8px;border-radius:10px}.sc-title-with-status{display:flex;align-items:center;gap:10px}.sc-title{font-size:22px;font-weight:700;margin:0}.sc-close-btn{background:transparent;border:none;font-size:20px;cursor:pointer;color:#64748b}.sc-modal-body{padding:24px 32px;overflow-y:auto;display:flex;flex-direction:column;gap:32px}.icon{width:20px;height:20px}.sc-admin-simple{background:#f8fafc;border:1px solid #e5e7eb;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:20px}.sc-admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.sc-admin-col{display:flex;flex-direction:column;gap:6px}.sc-admin-col label{font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.06em}.sc-admin-inline{display:flex;align-items:center;gap:12px}.sc-admin-inline input,.sc-admin-inline select{padding:8px 10px;border-radius:10px;border:1px solid #e5e7eb;font-size:13px;outline:none;min-width:160px;background:#fff}.sc-admin-inline input:focus,.sc-admin-inline select:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.sc-admin-inline button{padding:8px 16px;border-radius:10px;border:none;background:#4f46e5;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease;white-space:nowrap}.sc-admin-inline button:hover{background:#4338ca}.sc-toggle-inline{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;font-weight:600;color:#334155;white-space:nowrap}.sc-toggle-inline input{display:none}.sc-toggle-slider{width:36px;height:20px;background:#e5e7eb;border-radius:999px;position:relative;transition:background .3s ease}.sc-toggle-slider:after{content:"";width:14px;height:14px;background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;transition:transform .3s ease}.sc-toggle-inline input:checked+.sc-toggle-slider{background:#10b981}.sc-toggle-inline input:checked+.sc-toggle-slider:after{transform:translate(16px)}.sc-toggle-text{margin-left:2px}.sc-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.sc-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.sc-section-header{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;text-transform:uppercase;margin-bottom:12px;letter-spacing:.08em}.sc-section-header.indigo{color:#4f46e5}.sc-section-header.emerald{color:#059669}.sc-section-header.amber{color:#d97706}.sc-section-header.blue{color:#2563eb}.sc-section-header.purple{color:#7c3aed}.sc-info-card{padding:16px;border-radius:12px;background:#f8fafc;border:1px solid #f1f5f9;display:flex;flex-direction:column;gap:4px}.sc-info-card.vertical{gap:8px}.sc-info-label{font-size:10px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}.sc-info-value{font-size:14px;font-weight:600;color:#334155}.sc-info-value.highlight{color:#4f46e5}.sc-info-card-box{background:#fff;padding:20px;border:1px solid #f1f5f9;border-radius:16px;box-shadow:0 1px 2px #0000000a}.sc-info-card-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.sc-info-card-header.blue{color:#2563eb}.sc-info-card-header.purple{color:#7c3aed}.sc-info-card-body{display:flex;flex-direction:column;gap:14px}.sc-info-row{display:flex;justify-content:space-between;align-items:center}.sc-info-row-label{font-size:13px;color:#64748b;font-weight:500}.sc-info-row-value{font-size:14px;font-weight:600;color:#0f172a}.sc-info-row-value.highlight{color:#4f46e5}.sc-hours-card{background:#f8fafc;border-radius:16px;padding:24px;border:1px solid #f1f5f9}.sc-hours-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.sc-hours-label{font-size:10px;color:#64748b;text-transform:uppercase;font-weight:600}.sc-hours-value{font-size:22px;font-weight:700;color:#0f172a}.sc-hours-value.green{color:#059669}.sc-hours-value.blue{color:#2563eb}.sc-hours-value.red{color:#dc2626}.sc-progress-bar{margin-top:16px;height:8px;background:#e5e7eb;border-radius:999px;overflow:hidden}.sc-progress-fill{height:100%;background:#10b981;border-radius:999px;transition:width .6s ease}.sc-modal-footer{padding:16px 32px;border-top:1px solid #e5e7eb;background:#f8fafc;display:flex;justify-content:space-between;font-size:10px;color:#94a3b8;text-transform:uppercase;letter-spacing:.1em}.sc-status-badge{padding:4px 12px;border-radius:14px;font-size:12px;font-weight:600;text-transform:capitalize;white-space:nowrap}.sc-status-badge.active{background:#dcfce7;color:#16a34a}.sc-status-badge.paused{background:#fef3c7;color:#d97706}.sc-status-badge.expired{background:#fee2e2;color:#dc2626}.sc-status-badge.exhausted{background:#e0e7ff;color:#4338ca}.sc-status-badge.extended{background:#dbeafe;color:#2563eb}.sc-status-badge.topup{background:#ccfbf1;color:#0f766e}.sc-status-badge.cancelled{background:#f3f4f6;color:#6b7280}.engineer-detail-page{padding:2rem;max-width:1400px;margin:0 auto}.header-content{display:flex;align-items:center;gap:1rem}@media (max-width: 768px){.info-grid{grid-template-columns:1fr}.header-content{flex-direction:column;align-items:flex-start}}.ip-whitelist-management{padding:20px}.ip-whitelist-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.ip-whitelist-header h3{margin:0;color:var(--text-primary)}.ip-whitelist-form{background:var(--card-background, #fff);padding:20px;border-radius:8px;border:1px solid var(--border-color, #ddd);margin-bottom:20px}.form-input{width:100%;padding:10px;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:14px;transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--primary, #007bff)}.form-input.error{border-color:var(--danger, #dc3545)}.error-message{display:block;color:var(--danger, #dc3545);font-size:12px;margin-top:5px}.form-actions{margin-top:20px}.ip-whitelist-list{background:var(--card-background, #fff);border-radius:8px;border:1px solid var(--border-color, #ddd);overflow:hidden}.empty-state{padding:40px;text-align:center;color:var(--text-secondary)}.whitelist-table{width:100%;border-collapse:collapse}.whitelist-table thead{background:var(--table-header-bg, #f8f9fa)}.whitelist-table th{padding:12px;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color, #ddd)}.whitelist-table td{padding:12px;border-bottom:1px solid var(--border-color, #ddd);color:var(--text-primary)}.whitelist-table tbody tr:hover{background:var(--table-row-hover, #f8f9fa)}.whitelist-table code{background:var(--code-background, #f4f4f4);padding:4px 8px;border-radius:4px;font-family:monospace;font-size:13px}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-badge.active{background-color:var(--success-light, #d4edda);color:var(--success-dark, #155724)}.status-badge.inactive{background-color:var(--secondary-light, #e2e3e5);color:var(--secondary-dark, #383d41)}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.btn-danger{background-color:var(--danger, #dc3545);color:#fff}.btn-danger:hover:not(:disabled){background-color:var(--danger-dark, #c82333)}.password-management{margin-top:1rem}.password-actions{margin-top:1rem;display:flex;gap:.5rem}.modal-content{background:#fff;border-radius:8px;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 6px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.modal-close{background:none;border:none;font-size:2rem;cursor:pointer;color:#666;line-height:1;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#000}.modal-content form{padding:1.5rem}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.form-group input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-group small{display:block;margin-top:.25rem;color:#666;font-size:.875rem}.modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem}.alert{padding:1rem;border-radius:4px;margin-bottom:1.5rem}.alert-warning{background-color:#fff3cd;border:1px solid #ffc107;color:#856404}.btn{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background-color .2s}.btn-warning{background-color:#ffc107;color:#000}.btn-warning:hover:not(:disabled){background-color:#e0a800}.user-detail-page{padding:2rem;max-width:1400px;margin:0 auto}.detail-header{margin-bottom:2rem}.back-btn{background:var(--surface);border:none;padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;margin-bottom:1rem;font-size:.938rem;color:var(--text-primary)}.back-btn:hover{background:var(--gray-200)}.header-content{display:flex;align-items:center;gap:1.5rem}.user-avatar-large{width:80px;height:80px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:600}.header-content>div:has(h1){flex:1}.header-content h1{margin:0;font-size:2rem;font-weight:600;color:var(--text-primary)}.username{margin:.25rem 0 0;color:var(--text-secondary);font-size:1rem}.detail-content{display:flex;flex-direction:column;gap:2rem}.detail-card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:2rem;border:1px solid var(--border)}.detail-card h2{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border);padding-bottom:.75rem}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-item.full-width{grid-column:1 / -1}.info-item .label{font-size:.875rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.info-item .value{font-size:1rem;color:var(--text-primary);font-weight:400}.info-item .value a{color:var(--primary);text-decoration:none}.info-item .value a:hover{text-decoration:underline}.roles-list{display:flex;flex-wrap:wrap;gap:.5rem}.role-badge{display:inline-flex;padding:.375rem .75rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;background:var(--gray-100);color:var(--text-primary)}.role-badge.role-admin{background:var(--error-light);color:var(--error)}.role-badge.role-hod{background:var(--warning-light);color:var(--warning)}.role-badge.role-pmc,.role-badge.role-qc,.role-badge.role-inspector{background:var(--info-light);color:var(--info)}.status-badge{display:inline-flex;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500}.status-badge.inactive{background:var(--error-light);color:var(--error)}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;min-height:400px}.error-state .error-icon{font-size:4rem;margin-bottom:1rem}.error-state h3{font-size:1.5rem;color:var(--text-primary);margin:0 0 .5rem}.error-state p{color:var(--text-secondary);margin-bottom:2rem;max-width:500px}.error-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}@media (max-width: 768px){.user-detail-page{padding:1rem}.info-grid{grid-template-columns:1fr}.header-content{flex-direction:column;align-items:flex-start}.detail-card{padding:1.5rem}.error-state{padding:2rem 1rem;min-height:300px}.error-actions{flex-direction:column;width:100%}.error-actions .btn{width:100%}.assignments-grid{grid-template-columns:1fr}.assignments-header{flex-direction:column;align-items:flex-start;gap:1rem}.assignments-header .btn{width:100%}}.customer-portal{padding:2rem;max-width:1200px;margin:0 auto}.portal-header{margin-bottom:2rem;text-align:center}.portal-header h1{color:var(--text-primary);margin-bottom:.5rem;font-size:2rem}.portal-header p{color:var(--text-secondary);font-size:1.1rem}.search-bar{display:flex;gap:1rem;margin-bottom:2rem;align-items:center}.search-bar input{flex:1;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem;background:#fff;color:var(--text-primary);transition:all .2s}.search-bar input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #667eea1a}.assignments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.assignment-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);transition:all .2s;cursor:pointer}.assignment-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--primary)}.assignment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.assignment-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600;flex:1;margin-right:1rem}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.status-badge.active{background:var(--success-light);color:var(--success)}.assignment-details{margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.875rem}.detail-row:last-child{margin-bottom:0}.detail-row .label{color:var(--text-secondary);font-weight:500}.detail-row .value{color:var(--text-primary);font-weight:400}.assignment-actions{display:flex;justify-content:flex-end}.empty-state{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--text-secondary)}.empty-state p{font-size:1.1rem;margin:0}.loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:1.1rem;color:var(--text-secondary)}.complaints-container{padding:1rem}@media (min-width: 641px){.complaints-container{padding:1.5rem}}@media (min-width: 1025px){.complaints-container{padding:2rem}}.complaints-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 641px){.complaints-header{flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:2rem}}.complaints-header h1{font-size:1.5rem;color:#333}@media (min-width: 641px){.complaints-header h1{font-size:1.75rem}}@media (min-width: 1025px){.complaints-header h1{font-size:2rem}}.header-actions{display:flex;flex-direction:column;gap:.75rem;width:100%}@media (min-width: 641px){.header-actions{flex-direction:row;width:auto}}.filter-select{padding:.5rem 1rem;border:1px solid #ddd;border-radius:8px;font-size:.95rem;background:#fff;cursor:pointer}.complaints-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 641px){.complaints-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}}@media (min-width: 1025px){.complaints-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}}.complaint-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem;transition:all .3s ease}.complaint-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.complaint-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.complaint-number{font-weight:600;color:#667eea;font-size:.9rem}.complaint-card h3{margin:.5rem 0;color:#333;font-size:1.1rem}.complaint-description{color:#666;margin:.75rem 0;line-height:1.5;display:-webkit-box;line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.complaint-details{margin:1rem 0;padding-top:1rem;border-top:1px solid #f0f0f0}.detail-item{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem}.detail-item .label{color:#888;font-weight:500}.detail-item .value{color:#333;font-weight:500}.complaint-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid #f0f0f0;display:flex;gap:.5rem}.ncr-status-badge{padding:.5rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.status-open{background:#fee2e2;color:#dc2626}.status-assigned{background:#e0f2fe;color:#0284c7}.status-acknowledged{background:#e0e7ff;color:#4f46e5}.status-progress{background:#dbeafe;color:#2563eb}.status-hold-customer{background:#fff7ed;color:#ea580c}.status-hold-tenant{background:#ffedd5;color:#c2410c}.status-testing{background:#fef9c3;color:#ca8a04}.status-approved{background:#ecfeff;color:#0891b2}.status-resolved{background:#dcfce7;color:#16a34a}.status-closed{background:#f3f4f6;color:#6b7280}.status-rejected{background:#fef3c7;color:#d97706}.severity-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.severity-low{background:#dcfce7;color:#16a34a}.severity-medium{background:#fef3c7;color:#d97706}.severity-high{background:#fed7aa;color:#ea580c}.severity-critical{background:#fee2e2;color:#dc2626}.sla-badge{padding:.4rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;white-space:nowrap}.sla-pending{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border:1px solid #93c5fd}.sla-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706;border:1px solid #fcd34d;animation:pulse-warning 2s infinite}.sla-breach{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;border:1px solid #f87171;animation:pulse-breach 1.5s infinite;font-weight:700}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.8}}@keyframes pulse-breach{0%,to{opacity:1;box-shadow:0 0 #dc262666}50%{opacity:.9;box-shadow:0 0 0 8px #dc262600}}.filter-row{background:#f8f9fa;border-bottom:2px solid #e9ecef}.customers-table thead tr.filter-row th{padding:.75rem 1rem;border-bottom:none;vertical-align:middle;text-align:left;font-weight:400;font-size:inherit;color:inherit;text-transform:none;letter-spacing:normal;white-space:normal;border-right:none;border-left:none}.customers-table thead tr.filter-row th:last-child{text-align:center}.customers-table thead tr:first-child th,.customers-table thead tr.filter-row th{width:auto;min-width:0}.customers-table thead tr.filter-row th{position:relative;overflow:visible}.column-filter{width:100%;min-width:0;max-width:100%;padding:.4rem .6rem;border:1px solid #dee2e6;border-radius:4px;font-size:.85rem;background:#fff;transition:all .2s ease;box-sizing:border-box;display:block;margin:0}.column-filter select,.column-filter input[type=date]{width:100%;max-width:100%;box-sizing:border-box}.column-filter:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.column-filter::placeholder{color:#6c757d;font-size:.8rem}@media (max-width: 768px){.filter-row{display:none}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;padding:2rem;border-radius:12px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-content.large{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e5e5e5}.modal-header h2{margin:0;color:#333;font-size:1.5rem}.modal-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s}.modal-close:hover{color:#000;transform:rotate(90deg)}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#333;font-size:.95rem}.form-input,.form-textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:8px;font-size:1rem;font-family:inherit;transition:all .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-input:disabled,.form-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e5e5}.btn-success{background:#10b981;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-success:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-warning{background:#f59e0b;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-warning:hover{background:#d97706;transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;color:#888}.complaint-detail-view{padding:1rem 0}.detail-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #f0f0f0}.detail-section:last-child{border-bottom:none}.detail-section h3{margin:0 0 1rem;color:#333;font-size:1.25rem}.detail-section h4{margin:0 0 .75rem;color:#666;font-size:1rem;font-weight:600}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.media-item img,.media-item video{width:100%;height:140px;object-fit:cover;border-radius:8px;border:1px solid #eee}.detail-section p{margin:0;color:#666;line-height:1.6}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.lifecycle-steps{display:flex;gap:.75rem;flex-wrap:wrap;margin:.5rem 0 1rem}.step-chip{padding:.35rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid #e5e7eb;background:#f9fafb}.step-chip.active{background:#dbeafe;color:#1e40af;border-color:#bfdbfe}.step-chip.done{background:#dcfce7;color:#166534;border-color:#bbf7d0}.step-chip.blocked{background:#fee2e2;color:#991b1b;border-color:#fecaca}.detail-label{font-weight:500;color:#888}.detail-value{color:#333;font-weight:500}.loading{text-align:center;padding:3rem;color:#666;font-size:1.1rem}.btn-sm{padding:.4rem .8rem;font-size:.875rem}.searchable-dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:.5rem}.dropdown-menu{background:var(--surface)}.search-input-container{margin-bottom:.75rem;display:block!important;visibility:visible!important;width:100%}.search-input{width:100%!important;padding:.5rem .75rem!important;border:1px solid #d1d5db!important;border-radius:6px!important;font-size:.875rem!important;box-sizing:border-box!important;display:block!important;visibility:visible!important;background-color:#fff!important;color:#1f2937!important;margin:0!important}.search-input:focus{outline:none!important;border-color:#2563eb!important;box-shadow:0 0 0 2px #2563eb1a!important}.search-input::placeholder{color:#9ca3af!important}.dropdown-options{max-height:200px;overflow-y:auto;min-height:40px}.dropdown-option{padding:.5rem .75rem;cursor:pointer;border-radius:var(--radius);font-size:var(--text-sm);transition:var(--transition-fast);display:block!important}.dropdown-option:hover{background:var(--primary-50);color:var(--primary)}.dropdown-no-results{padding:.75rem;text-align:center;color:var(--text-tertiary);font-size:var(--text-sm);font-style:italic;display:none}@media (max-width: 768px){.complaints-grid{grid-template-columns:1fr}.complaints-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-actions{width:100%;flex-direction:column}.header-actions select,.header-actions button{width:100%}}.complaint-comments{margin-top:2rem;padding:1.5rem;background:#f8f9fa;border-radius:8px}.complaint-comments h3{margin-bottom:1.5rem;color:#333;font-size:1.5rem}.comment-form{background:#fff;padding:1.5rem;border-radius:6px;margin-bottom:2rem;box-shadow:0 2px 4px #0000001a}.replying-to{margin-bottom:.75rem;padding:.5rem;background:#e3f2fd;border-left:3px solid #2196f3;border-radius:4px;display:flex;align-items:center;justify-content:space-between}.btn-cancel-reply{background:none;border:none;color:#666;cursor:pointer;font-size:1.2rem;padding:0 .5rem}.btn-cancel-reply:hover{color:#333}.comment-form textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;resize:vertical;min-height:100px}.comment-form textarea:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.form-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;gap:.5rem}.file-upload-label{margin:0}.btn-upload{padding:.5rem 1rem;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px}.btn-upload:hover:not(:disabled){background:#e0e0e0}.form-footer button[type=submit]{padding:.5rem 1.5rem;background:#2196f3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.form-footer button[type=submit]:hover:not(:disabled){background:#1976d2}.form-footer button[type=submit]:disabled{background:#ccc;cursor:not-allowed}.comments-list{display:flex;flex-direction:column;gap:1rem}.loading,.no-comments{text-align:center;padding:2rem;color:#999;background:#fff;border-radius:6px}.comment{background:#fff;padding:1rem;border-radius:6px;box-shadow:0 1px 3px #0000001a}.comment.reply{margin-left:2rem;margin-top:.5rem;border-left:3px solid #e0e0e0}.comment-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.comment-header strong{color:#333;font-size:.95rem}.comment-time{color:#999;font-size:.85rem}.edited-badge{color:#666;font-size:.8rem;font-style:italic}.comment-content{margin:.75rem 0;line-height:1.6;color:#333;white-space:pre-wrap;word-wrap:break-word}.comment-attachments{margin:.75rem 0;padding:.5rem;background:#f5f5f5;border-radius:4px}.attachment-item{padding:.25rem 0}.attachment-item a{color:#2196f3;text-decoration:none;font-size:.9rem}.attachment-item a:hover{text-decoration:underline}.comment-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #f0f0f0}.btn-action{padding:.25rem .75rem;background:none;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:.85rem;color:#666}.btn-action:hover{background:#f5f5f5;color:#333}.btn-delete{color:#d32f2f}.btn-delete:hover{background:#ffebee;border-color:#d32f2f}.comment-edit{margin:.75rem 0}.comment-edit textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;resize:vertical}.edit-actions{display:flex;gap:.5rem;margin-top:.5rem}.btn-save,.btn-cancel{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.btn-save{background:#4caf50;color:#fff}.btn-save:hover{background:#45a049}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover{background:#e0e0e0}.replies{margin-top:.5rem}@media (max-width: 768px){.complaint-comments{padding:1rem}.comment.reply{margin-left:1rem}.form-footer{flex-direction:column;align-items:stretch}.form-footer button{width:100%}}.ncr-assignment-card{background:#fff;margin-right:10px;border:1px solid #e5e7eb;border-radius:10px}.ncr-assignment-grid{padding:16px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.ncr-info-block{display:flex;flex-direction:column;gap:6px}.ncr-info-label{font-size:11px;font-weight:600;color:#6b7280;display:flex;align-items:center;gap:6px;text-transform:uppercase}.ncr-info-box{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between}.ncr-info-text{font-size:14px;color:#111827;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ncr-so-number{font-family:monospace;font-weight:600}.ncr-copy-btn{border:none;cursor:pointer;transition:.2s ease}.ncr-copy-btn:hover{color:#4f46e5}.ncr-desc-card{margin-right:10px;position:relative;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:24px;overflow:hidden}.ncr-desc-text{font-size:16px;color:#334155}.ncr-hours-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-right:10px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.ncr-hours-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:14px;text-align:center}.ncr-hours-label{display:block;font-size:11px;font-weight:600;text-transform:uppercase;color:#6b7280;margin-bottom:6px}.ncr-hours-value{font-size:20px;font-weight:700;color:#111827}.ncr-detail-title{padding-right:10px}.ncr-timeline-item{position:relative;padding-left:42px;padding-bottom:28px}.ncr-timeline-line{position:absolute;left:18px;top:36px;bottom:0;width:2px;background:#e5e7eb}.ncr-timeline-icon{position:absolute;left:4px;top:6px;width:32px;height:32px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center}.ncr-blue{background:#dbeafe;color:#2563eb;border-color:#bfdbfe}.ncr-purple{background:#ede9fe;color:#7c3aed;border-color:#ddd6fe}.ncr-amber{background:#fef3c7;color:#d97706;border-color:#fde68a}.ncr-emerald{background:#d1fae5;color:#059669;border-color:#a7f3d0}.ncr-green{background:#dcfce7;color:#16a34a;border-color:#bbf7d0}.ncr-gray{background:#f3f4f6;color:#4b5563;border-color:#e5e7eb}.ncr-timeline-card{background:#fff;border-radius:12px;padding:16px;border:1px solid #eee;width:90%;box-shadow:0 1px 3px #0000000d}.ncr-timeline-header{display:flex;justify-content:space-between;gap:12px}.ncr-timeline-left{display:flex;gap:12px;flex:1}.ncr-avatar{width:32px;height:32px;background:#f1f5f9;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.ncr-text-wrap{min-width:0}.ncr-tl-title{font-weight:600;font-size:16px}.ncr-tl-subtitle{font-size:12px;color:#666}.ncr-timeline-date{flex-shrink:0;font-size:11px;color:#888;white-space:nowrap}.ncr-details{margin-top:10px;font-size:13px}.ncr-details-box{background:#f9fafb;border-radius:6px;padding:8px}.ncr-detail-row{font-size:12px;margin-bottom:6px}.ncr-detail-row .ncr-label{color:#94a3b8;font-weight:600;margin-right:4px}.ncr-detail-row .ncr-value{color:#1f2937;font-weight:500}.ncr-detail-row span:first-child{font-weight:700;color:#94a3b8;margin-right:4px}.nb-wrapper{position:sticky;top:0;z-index:9999;width:100%;animation:nbSlideDown .3s ease-out}.nb-bar{background:#dc2626;padding:8px;border-radius:10px;box-shadow:0 4px 12px #00000026}.nb-container{max-width:auto;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.nb-left{display:flex;align-items:center;gap:12px}.nb-icon-circle{width:32px;height:32px;border-radius:50%;background:#ffffff40;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nb-alert-icon{width:20px;height:20px;color:#fff}.nb-text{color:#fff;font-size:14px;font-weight:500;margin:0;line-height:1.4}.nb-actions{display:flex;align-items:center;gap:16px}.nb-renew-btn{background:#fff;color:#dc2626;padding:6px 20px;border-radius:999px;border:none;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000001a;white-space:nowrap}.nb-renew-btn:hover{background:#fee2e2}.nb-renew-btn:active{transform:scale(.95)}.nb-close-btn{background:transparent;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center}.nb-close-icon{width:20px;height:20px;color:#fffc;transition:color .2s ease}.nb-close-btn:hover .nb-close-icon{color:#fff}.nb-pulse{height:2px;width:100%;background:#f8717180;animation:nbPulse 1.5s infinite}@keyframes nbSlideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes nbPulse{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}.qr-landing-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.qr-landing-card{background:#fff;border-radius:24px;box-shadow:0 20px 60px #0000004d;max-width:800px;width:100%;padding:3rem;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.qr-landing-header{text-align:center;margin-bottom:2rem}.qr-logo{display:flex;justify-content:center;margin-bottom:1rem;color:#667eea}.qr-landing-header h1{font-size:2rem;color:#333;margin:.5rem 0;font-weight:600}.welcome-text{color:#666;font-size:1.1rem;margin:.5rem 0}.assignment-info{background:#f8f9ff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;border:2px solid #e8ecff}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #e0e0e0}.info-row:last-child{border-bottom:none}.info-label{font-weight:600;color:#555;font-size:.95rem}.info-value{color:#333;font-weight:500;font-size:.95rem;text-align:right}.qr-options{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.qr-option-btn{background:#fff;border:2px solid #e0e0e0;border-radius:16px;padding:2rem;text-align:left;cursor:pointer;transition:all .3s ease;position:relative;display:flex;flex-direction:column;gap:.75rem}.qr-option-btn:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026;border-color:#667eea}.documents-btn{border-left:4px solid #4caf50}.documents-btn:hover{background:#f1f8f4;border-left-color:#2e7d32}.complaint-btn{border-left:4px solid #ff9800}.complaint-btn:hover{background:#fff8f0;border-left-color:#f57c00}.option-icon{color:#667eea;margin-bottom:.5rem}.qr-option-btn h3{margin:0;color:#333;font-size:1.3rem;font-weight:600}.qr-option-btn p{margin:0;color:#666;font-size:.95rem;line-height:1.5}.option-arrow{position:absolute;bottom:1.5rem;right:1.5rem;font-size:1.5rem;color:#667eea;opacity:.7;transition:all .3s ease}.qr-option-btn:hover .option-arrow{transform:translate(4px);opacity:1}.help-text{text-align:center;padding-top:1rem;border-top:1px solid #e0e0e0}.help-text p{color:#888;font-size:.9rem;margin:0}@media (max-width: 768px){.qr-landing-card{padding:2rem 1.5rem}.qr-options{grid-template-columns:1fr;gap:1rem}.qr-landing-header h1{font-size:1.6rem}.info-row{flex-direction:column;align-items:flex-start;gap:.25rem}.info-value{text-align:left;color:#667eea;font-weight:600}}.qr-scanner-container{padding:1.5rem;max-width:100%;height:calc(100vh - 100px);display:flex;flex-direction:column;background:var(--bg-primary)}.qr-scanner-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.qr-scanner-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary)}.status-banner{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500}.status-banner.online{background:var(--success-light);color:var(--success);border:1px solid var(--success)}.status-banner.offline{background:var(--warning-light);color:var(--warning);border:1px solid var(--warning)}.status-indicator{width:8px;height:8px;border-radius:50%;background:currentColor;animation:pulse 2s infinite}.offline-count{margin-left:.5rem}.syncing{margin-left:auto;font-size:.875rem}.offline-alert{padding:1rem;background:var(--warning-light);border:1px solid var(--warning);border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.offline-alert p{margin:0;color:var(--text-primary);font-size:.875rem}.qr-scanner-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem}.scanner-placeholder{text-align:center;padding:3rem}.scanner-icon{font-size:4rem;margin-bottom:1rem}.scanner-placeholder h2{font-size:1.5rem;color:var(--text-primary);margin-bottom:.5rem}.scanner-placeholder p{color:var(--text-secondary);margin-bottom:2rem}.btn-large{padding:1rem 2.5rem;font-size:1.125rem}.scanner-active{width:100%;max-width:600px;display:flex;flex-direction:column;gap:1.5rem;align-items:center}.scanner-frame{position:relative;width:100%;max-width:100%;border-radius:12px;overflow:hidden;background:#000;box-shadow:0 4px 20px #0003}.scanner-video{width:100%;height:auto;display:block}.scanner-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.scanning-corner{position:absolute;width:30px;height:30px;border:3px solid var(--primary);animation:scanningPulse 2s infinite}.scanning-corner.top-left{top:20px;left:20px;border-right:none;border-bottom:none;border-top-left-radius:8px}.scanning-corner.top-right{top:20px;right:20px;border-left:none;border-bottom:none;border-top-right-radius:8px}.scanning-corner.bottom-left{bottom:20px;left:20px;border-right:none;border-top:none;border-bottom-left-radius:8px}.scanning-corner.bottom-right{bottom:20px;right:20px;border-left:none;border-top:none;border-bottom-right-radius:8px}@keyframes scanningPulse{0%,to{opacity:1;box-shadow:0 0 #4f46e566}50%{opacity:.8;box-shadow:0 0 0 10px #4f46e500}}.scanner-controls{display:flex;gap:1rem;width:100%;max-width:600px}.scanner-controls .btn{flex:1}.manual-input-panel{position:fixed;bottom:0;left:0;right:0;background:var(--bg-secondary);border-top:1px solid var(--border);padding:1.5rem;box-shadow:0 -4px 20px #0000001a;z-index:1000;max-height:70vh;overflow-y:auto}.manual-input-panel h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.125rem}.manual-input{width:100%;padding:.875rem 1rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:1rem;margin-bottom:1rem}.manual-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #4f46e51a}.manual-input-actions{display:flex;gap:1rem}.manual-input-actions .btn{flex:1}.last-scan-info{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:1.5rem;width:100%;max-width:600px;margin-top:2rem}.last-scan-info h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.125rem}.last-scan-info p{margin:.5rem 0;color:var(--text-secondary);font-size:.875rem}.last-scan-info strong{color:var(--text-primary);font-weight:600}@media (max-width: 768px){.qr-scanner-container{padding:1rem;height:calc(100vh - 80px)}.scanner-placeholder{padding:2rem 1rem}.scanner-icon{font-size:3rem}.scanner-placeholder h2{font-size:1.25rem}.scanner-controls{flex-direction:column}.manual-input-panel{padding:1rem}.last-scan-info{margin-top:1rem}}@media (max-width: 768px) and (orientation: landscape){.scanner-frame{max-height:70vh}.scanner-video{max-height:100%;object-fit:contain}}.ai-cost-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.dashboard-header h1{margin:0;color:#333}.date-range-selector{display:flex;align-items:center;gap:.5rem}.date-input{padding:.5rem;border:1px solid #e0e0e0;border-radius:4px;font-size:.9rem}.month-btn{padding:.5rem 1rem;border:1px solid #1976d2;background:#fff;color:#1976d2;border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.month-btn:hover{background:#1976d2;color:#fff}.error-banner{padding:1rem;background:#ffebee;color:#d32f2f;border-radius:4px;margin-bottom:1rem}.cost-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.cost-card{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;border-left:4px solid #1976d2}.cost-card-header{font-size:.9rem;color:#666;margin-bottom:.5rem;font-weight:600}.cost-card-value{font-size:2rem;font-weight:700;color:#1976d2;margin-bottom:.5rem}.cost-card-subtitle{font-size:.85rem;color:#999}.cost-breakdown{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.cost-breakdown h2{margin:0 0 1rem;color:#333;font-size:1.25rem}.breakdown-list{display:flex;flex-direction:column;gap:1rem}.breakdown-item{display:flex;flex-direction:column;gap:.5rem}.breakdown-item>div{display:flex;justify-content:space-between;align-items:center}.breakdown-label{font-weight:600;color:#333}.breakdown-value{color:#1976d2;font-weight:600}.breakdown-bar{width:100%;height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden;margin-top:.25rem}.breakdown-fill{height:100%;background:linear-gradient(90deg,#1976d2,#42a5f5);transition:width .3s}.daily-costs{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 8px #0000001a}.daily-costs h2{margin:0 0 1rem;color:#333;font-size:1.25rem}.daily-costs-list{display:flex;flex-direction:column;gap:.75rem;max-height:400px;overflow-y:auto}.daily-cost-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9f9f9;border-radius:4px}.daily-date{color:#666;font-size:.9rem}.daily-cost{font-weight:600;color:#1976d2}.no-data{text-align:center;padding:3rem;color:#999}.no-data p{margin:.5rem 0}@media (max-width: 768px){.ai-cost-dashboard{padding:1rem}.cost-summary-cards{grid-template-columns:1fr}.dashboard-header{flex-direction:column;align-items:stretch}}.search-filters{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:20px}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--border-color, #e0e0e0)}.filters-header h4{margin:0;font-size:18px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:8px}.header-actions{display:flex;gap:8px;align-items:center}.clear-filters-btn,.presets-btn{padding:6px 12px;font-size:13px;background:var(--background, #f9f9f9);color:var(--text-secondary);border:1px solid var(--border-color, #ddd);border-radius:6px;cursor:pointer;transition:all .2s;font-weight:500}.clear-filters-btn:hover{background:var(--danger-light, #f8d7da);color:var(--danger-dark, #721c24);border-color:var(--danger, #dc3545)}.presets-btn:hover{background:var(--primary-light, #e7f3ff);color:var(--primary, #007bff);border-color:var(--primary, #007bff)}.presets-panel{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:16px;margin-bottom:16px}.presets-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.presets-header h5{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary);padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-btn:hover{background:var(--hover-background, #e9ecef);color:var(--text-primary)}.save-preset-section{display:flex;gap:8px;margin-bottom:12px}.preset-input{flex:1;padding:8px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:13px}.preset-input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.save-preset-btn{padding:8px 16px;background:var(--primary, #007bff);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.save-preset-btn:hover:not(:disabled){background:var(--primary-dark, #0056b3)}.save-preset-btn:disabled{opacity:.5;cursor:not-allowed}.presets-list{display:flex;flex-direction:column;gap:8px}.preset-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:6px;transition:all .2s}.preset-item:hover{border-color:var(--primary, #007bff);box-shadow:0 2px 4px #0000000d}.preset-info{flex:1;cursor:pointer}.preset-name{font-weight:500;color:var(--text-primary);font-size:13px;margin-bottom:4px}.preset-date{font-size:11px;color:var(--text-tertiary)}.delete-preset-btn{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 8px;border-radius:4px;transition:background .2s}.delete-preset-btn:hover{background:var(--danger-light, #f8d7da)}.presets-empty{text-align:center;padding:20px;color:var(--text-secondary)}.presets-empty p{margin:4px 0;font-size:13px}.presets-hint{font-size:11px;color:var(--text-tertiary)}.filters-content{display:flex;flex-direction:column;gap:16px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-label{font-size:13px;font-weight:500;color:var(--text-primary)}.filter-select,.filter-input{padding:10px 12px;font-size:14px;border:1px solid var(--border-color, #ddd);border-radius:6px;outline:none;transition:all .2s;background-color:var(--card-background, #fff);color:var(--text-primary)}.filter-select:focus,.filter-input:focus{border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.date-range-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px}.date-input-group{display:flex;flex-direction:column;gap:6px}.date-label{font-size:12px;color:var(--text-secondary);font-weight:500}.date-input,.filter-group .searchable-dropdown{width:100%}.toggle-advanced-btn{padding:12px;font-size:14px;background:var(--background, #f9f9f9);color:var(--text-primary);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;cursor:pointer;text-align:left;transition:all .2s;display:flex;align-items:center;gap:8px;font-weight:500}.toggle-advanced-btn:hover{background:var(--hover-background, #f0f0f0);border-color:var(--primary, #007bff)}.toggle-icon{font-size:12px;transition:transform .2s}.active-badge{margin-left:auto;background:var(--primary-light, #e7f3ff);color:var(--primary, #007bff);padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.advanced-filters{display:flex;flex-direction:column;gap:16px;padding:16px;background:var(--background, #f9f9f9);border-radius:6px;border:1px solid var(--border-color, #e0e0e0);margin-top:8px;animation:slideDown .2s ease-out}@media (max-width: 768px){.date-range-inputs{grid-template-columns:1fr}.header-actions{flex-direction:column;gap:6px}.save-preset-section{flex-direction:column}}.search-results{min-height:200px}.search-loading,.search-error,.no-results{padding:3rem;text-align:center}.search-loading{display:flex;flex-direction:column;align-items:center;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #4a90e2;border-radius:50%;animation:spin 1s linear infinite}.error-message{color:#d32f2f;font-size:1rem}.no-results{color:#666}.no-results .hint{font-size:.9rem;color:#999;margin-top:.5rem}.results-header{margin-bottom:1rem}.results-count{font-size:.9rem;color:#666}.results-list{display:flex;flex-direction:column;gap:1rem}.search-result-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s}.search-result-item:hover{border-color:#4a90e2;box-shadow:0 2px 8px #4a90e21a;transform:translateY(-2px)}.result-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.result-title-section{flex:1}.result-title{font-size:1.2rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.result-badges{display:flex;flex-wrap:wrap;gap:.5rem}.badge{padding:.25rem .75rem;font-size:.75rem;border-radius:12px;font-weight:500}.badge-type{background-color:#e3f2fd;color:#1976d2}.badge-status{background-color:#f3e5f5;color:#7b1fa2}.badge-drawing{background-color:#fff3e0;color:#e65100}.badge-revision{background-color:#e8f5e9;color:#388e3c}.result-scores{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.score-group{display:flex;align-items:center;gap:.5rem}.score-label{font-size:.75rem;color:#666}.score-value{padding:.25rem .6rem;border-radius:4px;font-size:.85rem;font-weight:600}.score-high{background-color:#4caf50;color:#fff}.score-medium{background-color:#ff9800;color:#fff}.score-low{background-color:#ffc107;color:#333}.score-very-low{background-color:#e0e0e0;color:#666}.score-semantic{background-color:#2196f3;color:#fff}.score-keyword{background-color:#9c27b0;color:#fff}.result-description{color:#666;font-size:.95rem;margin-bottom:.75rem}.result-snippet{background-color:#f9f9f9;border-left:3px solid #4a90e2;padding:.75rem 1rem;margin-bottom:1rem;border-radius:4px}.snippet-text{color:#555;font-size:.9rem;line-height:1.5;margin:0}.result-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #f0f0f0}.result-meta{display:flex;gap:1rem;font-size:.85rem;color:#999}.meta-item{display:flex;align-items:center;gap:.25rem}.view-document-btn{padding:.5rem 1rem;background-color:#4a90e2;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background-color .2s}.view-document-btn:hover{background-color:#357abd}.results-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0}.page-btn{padding:.6rem 1.2rem;background-color:#fff;color:#4a90e2;border:1px solid #4a90e2;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s}.page-btn:hover:not(:disabled){background-color:#4a90e2;color:#fff}.page-btn:disabled{opacity:.5;cursor:not-allowed}.page-info{font-size:.9rem;color:#666}@media (max-width: 768px){.result-header{flex-direction:column}.result-scores{align-items:flex-start}.result-footer{flex-direction:column;gap:1rem;align-items:flex-start}}.search-suggestions{position:absolute;top:100%;left:0;right:0;z-index:1000;margin-top:.25rem;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:300px;overflow-y:auto}.suggestions-list{padding:.5rem 0}.suggestion-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background-color .2s}.suggestion-item:hover{background-color:#f5f5f5}.suggestion-item.loading{cursor:default;color:#999;font-style:italic}.suggestion-icon{font-size:1rem}.suggestion-text{flex:1;font-size:.95rem;color:#333}.saved-searches{background:var(--card-background, #fff);border-radius:8px;padding:20px;margin-bottom:20px}.saved-searches-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.saved-searches-header h3{margin:0;color:var(--text-primary);font-size:18px}.saved-searches-list{display:flex;flex-direction:column;gap:10px}.saved-search-item{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--border-color, #ddd);border-radius:6px;background:var(--background, #f9f9f9);transition:all .2s}.saved-search-item:hover{background:var(--hover-background, #f0f0f0);border-color:var(--primary, #007bff)}.saved-search-content{flex:1;cursor:pointer}.saved-search-name{font-weight:600;color:var(--text-primary);margin-bottom:4px}.saved-search-query{color:var(--text-secondary);font-size:13px;margin-bottom:6px;font-style:italic}.saved-search-meta{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--text-secondary)}.alert-badge{background:var(--info-light, #d1ecf1);color:var(--info-dark, #0c5460);padding:2px 6px;border-radius:4px;font-weight:500}.match-count-badge{background:var(--success-light, #d4edda);color:var(--success-dark, #155724);padding:2px 6px;border-radius:4px;font-weight:500}.saved-search-date{color:var(--text-secondary)}.saved-search-actions{display:flex;gap:8px}.btn-icon{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 8px;border-radius:4px;transition:background .2s}.loading-state,.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-state-hint{font-size:13px;margin-top:8px;color:var(--text-tertiary)}.modal-content{background:#fff;border-radius:8px;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-color, #ddd)}.modal-header h3{margin:0;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:var(--text-primary)}.form-group{margin-bottom:15px}.form-label{display:block;margin-bottom:5px;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:10px;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:14px}.form-input:disabled{background:var(--disabled-background, #f5f5f5);color:var(--text-secondary)}.form-help{display:block;margin-top:5px;font-size:12px;color:var(--text-secondary)}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-sm{padding:6px 12px;font-size:12px}.search-history{background:var(--card-background, #fff);border-radius:8px;padding:20px;margin-bottom:20px}.search-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.search-history-header h3{margin:0;color:var(--text-primary);font-size:18px}.search-history-list{display:flex;flex-direction:column;gap:8px}.search-history-item{padding:10px;border:1px solid var(--border-color, #ddd);border-radius:6px;background:var(--background, #f9f9f9);cursor:pointer;transition:all .2s}.search-history-item:hover{background:var(--hover-background, #f0f0f0);border-color:var(--primary, #007bff)}.search-history-content{display:flex;flex-direction:column;gap:6px}.search-history-query{display:flex;align-items:center;gap:8px}.result-icon{font-size:14px;flex-shrink:0}.query-text{color:var(--text-primary);font-size:13px;font-style:italic;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-history-meta{display:flex;gap:12px;align-items:center;font-size:11px;color:var(--text-secondary)}.search-time{color:var(--text-secondary)}.result-count{color:var(--text-secondary);font-weight:500}.search-duration{color:var(--text-tertiary)}.loading-state,.empty-state{text-align:center;padding:30px 20px;color:var(--text-secondary)}.empty-state-hint{font-size:12px;margin-top:6px;color:var(--text-tertiary)}.voice-search{display:flex;flex-direction:column;gap:8px}.voice-search-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--surface-alt);border:2px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:.938rem}.voice-search-btn:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary)}.voice-search-btn:disabled{opacity:.6;cursor:not-allowed}.voice-search-btn.recording{background:var(--error-light);border-color:var(--error);animation:pulse-border 1.5s infinite}.voice-icon{font-size:1.25rem}.voice-icon.recording{animation:pulse 1s infinite}.voice-icon.loading{animation:spin 1s linear infinite}.voice-label{font-weight:500;color:var(--text-primary)}.recording-indicator{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--error-light);border-radius:6px;font-size:.875rem;color:var(--error)}.pulse{width:8px;height:8px;background:var(--error);border-radius:50%;animation:pulse-dot 1s infinite}.transcript-result{padding:12px;background:var(--success-light);border-radius:8px;font-size:.875rem;color:var(--success)}.transcript-result strong{display:block;margin-bottom:4px}.voice-error{padding:8px 12px;background:var(--error-bg);color:var(--error-text);border-radius:6px;font-size:.813rem}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.7}}@keyframes pulse-border{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 4px #ef444400}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-theme=dark] .voice-search-btn{background:var(--surface-alt);border-color:var(--border)}[data-theme=dark] .voice-search-btn:hover:not(:disabled){background:var(--primary-dark)}.image-search{background:var(--surface);border:2px solid var(--border);border-radius:12px;padding:20px}.image-search-header{margin-bottom:20px}.image-search-header h4{margin:0 0 8px;color:var(--text-primary);font-size:1.125rem}.image-search-description{margin:0;color:var(--text-secondary);font-size:.875rem}.image-upload-area{margin-bottom:16px}.image-drop-zone{border:2px dashed var(--border);border-radius:8px;padding:40px;text-align:center;cursor:pointer;transition:all .2s ease;background:var(--surface-alt)}.image-drop-zone:hover{border-color:var(--primary);background:var(--primary-50)}.image-drop-zone.drag-over{border-color:var(--primary);background:var(--primary-light);border-style:solid}.upload-icon{font-size:3rem;display:block;margin-bottom:12px}.image-drop-zone p{margin:8px 0;color:var(--text-primary)}.upload-hint{font-size:.813rem;color:var(--text-tertiary)}.image-preview-container{position:relative;border:2px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface-alt)}.image-preview{width:100%;max-height:300px;object-fit:contain;display:block}.image-preview-container .btn-link{position:absolute;top:8px;right:8px;background:#ffffffe6;padding:4px 8px;border-radius:4px}.image-actions{display:flex;gap:12px;margin-bottom:16px}.image-actions button{flex:1}.extracted-text{margin-top:20px;padding:16px;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.extracted-text h5{margin:0 0 12px;color:var(--text-primary);font-size:.938rem}.text-content{color:var(--text-primary);line-height:1.6;white-space:pre-wrap;word-wrap:break-word}[data-theme=dark] .image-drop-zone{background:var(--surface-alt);border-color:var(--border)}[data-theme=dark] .image-preview-container .btn-link{background:#000000b3;color:#fff}@media (max-width: 768px){.image-actions{flex-direction:column}.image-drop-zone{padding:24px}}.filter-chips{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.75rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.filter-chips-label{font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-right:.25rem}.filter-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:var(--primary);color:#fff;border-radius:16px;font-size:.875rem;font-weight:500}.filter-chip-remove{background:#fff3;border:none;color:#fff;cursor:pointer;font-size:1.125rem;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.filter-chip-remove:hover{background:#ffffff4d}.filter-chip-clear-all{padding:.375rem .75rem;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:16px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.filter-chip-clear-all:hover{background:var(--bg-hover);border-color:var(--primary);color:var(--primary)}.search-page{padding:2rem;max-width:1400px;margin:0 auto}.search-page-header{margin-bottom:2rem}.search-page-header h1{font-size:2rem;font-weight:600;color:#1a1a1a;margin-bottom:.5rem}.search-subtitle{color:#666;font-size:1rem}.search-bar-container{margin-bottom:1rem}.search-analytics-link{margin-bottom:1.5rem;text-align:right}.analytics-link-btn{display:inline-block;padding:8px 16px;background-color:#f0f0f0;color:#333;text-decoration:none;border-radius:6px;font-size:14px;transition:background-color .2s}.analytics-link-btn:hover{background-color:#e0e0e0}.search-form{position:relative}.search-input-wrapper{display:flex;flex-direction:column;gap:.5rem}.search-input-row{display:flex;gap:.5rem;align-items:center}.search-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.query-enhancement-notice{padding:8px 12px;background:var(--success-light, #d1fae5);color:var(--success, #059669);border-radius:6px;font-size:.813rem}.advanced-search-panel{margin-top:16px;padding-top:16px;border-top:2px solid var(--border-color, #e0e0e0)}.search-input{flex:1;padding:1rem 1.5rem;font-size:1.1rem;border:2px solid #e0e0e0;border-radius:8px;outline:none;transition:border-color .2s}.search-input:focus{border-color:#4a90e2}.search-button{padding:1rem 2rem;font-size:1.1rem;background-color:#4a90e2;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .2s}.search-button:hover:not(:disabled){background-color:#357abd}.search-button:disabled{opacity:.6;cursor:not-allowed}.search-layout{display:grid;grid-template-columns:280px 1fr;gap:2rem}.results-area{min-height:400px}.search-info{display:flex;gap:1rem;margin-bottom:1rem;padding:.75rem;background-color:#f5f5f5;border-radius:6px;font-size:.9rem}.search-time{color:#666}.total-results{color:#4a90e2;font-weight:500}@media (max-width: 968px){.search-layout{grid-template-columns:1fr}.filters-sidebar{order:2}.results-area{order:1}}@media (max-width: 768px){.search-page{padding:1rem}.search-page-header h1{font-size:1.5rem}}.ocr-search-toggle{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-color, #ddd);border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .2s ease}.ocr-search-toggle:hover{background:var(--bg-hover, #e8e8e8);border-color:var(--primary, #2563eb)}.ocr-search-toggle input[type=checkbox]{cursor:pointer}.ocr-search-toggle input[type=checkbox]:checked+span{color:var(--primary, #2563eb);font-weight:500}.search-analytics-dashboard{background:var(--card-background, #fff);border-radius:8px;padding:24px}.analytics-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:20px}.analytics-header h2{margin:0 0 8px;color:var(--text-primary);font-size:24px}.analytics-subtitle{margin:0;color:var(--text-secondary);font-size:14px}.time-range-selector{display:flex;align-items:center;gap:10px;flex-shrink:0}.time-range-selector label{font-weight:500;color:var(--text-primary);font-size:14px}.time-range-selector select{padding:8px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:14px;background:var(--card-background, #fff);color:var(--text-primary);cursor:pointer;transition:border-color .2s}.time-range-selector select:hover{border-color:var(--primary, #007bff)}.time-range-selector select:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:32px}.stat-card{background:linear-gradient(135deg,var(--card-background, #fff) 0%,var(--background, #f9f9f9) 100%);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:20px;display:flex;align-items:center;gap:16px;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card.stat-primary{border-left:4px solid var(--primary, #007bff)}.stat-card.stat-success{border-left:4px solid var(--success, #28a745)}.stat-card.stat-warning{border-left:4px solid var(--warning, #ffc107)}.stat-card.stat-info{border-left:4px solid var(--info, #17a2b8)}.stat-icon{font-size:32px;flex-shrink:0}.stat-label{font-size:12px;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.stat-value{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:4px;line-height:1.2}.stat-period{font-size:11px;color:var(--text-tertiary)}.analytics-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:24px;margin-bottom:32px}.analytics-section{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h3{margin:0;color:var(--text-primary);font-size:20px}.section-badge{background:var(--primary-light, #e7f3ff);color:var(--primary, #007bff);padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.section-badge.warning{background:var(--warning-light, #fff3cd);color:var(--warning-dark, #856404)}.section-description{font-size:13px;color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.queries-list{display:flex;flex-direction:column;gap:12px;max-height:600px;overflow-y:auto}.query-item{display:flex;gap:12px;padding:14px;background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:6px;transition:all .2s}.query-item:hover{border-color:var(--primary, #007bff);box-shadow:0 2px 8px #0000000d}.query-item.popular{border-left:3px solid var(--primary, #007bff)}.query-item.zero-result{border-left:3px solid var(--warning, #ffc107)}.query-rank{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;background:var(--primary-light, #e7f3ff);border-radius:6px;flex-shrink:0}.query-rank.warning{background:var(--warning-light, #fff3cd)}.rank-number{font-weight:700;color:var(--primary, #007bff);font-size:14px}.query-rank.warning .rank-number{color:var(--warning-dark, #856404)}.query-content{flex:1;min-width:0}.query-text{font-weight:500;color:var(--text-primary);margin-bottom:8px;font-size:14px;word-break:break-word}.query-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:12px}.meta-item{display:flex;align-items:center;gap:6px;color:var(--text-secondary)}.meta-item.warning{color:var(--warning-dark, #856404)}.meta-icon{font-size:14px}.loading-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.loading-state .spinner{width:40px;height:40px;border:4px solid var(--border-color, #ddd);border-top-color:var(--primary, #007bff);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.insights-section{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:24px;margin-top:24px}.insights-section h3{margin:0 0 20px;color:var(--text-primary);font-size:20px}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.insight-card{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:16px}.insight-label{font-size:12px;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.insight-value{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.insight-detail{font-size:12px;color:var(--text-tertiary)}@media (max-width: 768px){.analytics-content{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.analytics-header{flex-direction:column;align-items:stretch}.time-range-selector{width:100%}.time-range-selector select{flex:1}.queries-list{max-height:400px}}@media (max-width: 480px){.stats-grid,.insights-grid{grid-template-columns:1fr}}.search-analytics-page{padding:20px}.page-header h1{margin:0 0 10px;color:var(--text-primary)}.page-subtitle{color:var(--text-secondary);margin:0}.document-analytics-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.kpi-card{display:flex;gap:1rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition)}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-icon{font-size:2rem;flex-shrink:0}.kpi-value{font-size:2rem;font-weight:700;color:var(--primary);line-height:1;margin-bottom:.25rem}.kpi-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.25rem}.kpi-detail{font-size:.75rem;color:var(--text-secondary)}.analytics-section{margin-bottom:2rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.analytics-section h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.status-distribution{display:flex;flex-direction:column;gap:1rem}.status-item{display:flex;flex-direction:column;gap:.5rem}.status-header{display:flex;justify-content:space-between;align-items:center}.status-name{font-weight:500;color:var(--text-primary);text-transform:capitalize}.status-count{font-size:.875rem;color:var(--text-secondary)}.status-bar{height:8px;background:var(--gray-100);border-radius:var(--radius);overflow:hidden}.status-bar-fill{height:100%;background:var(--primary-gradient);transition:width .3s ease}.top-documents-list{display:flex;flex-direction:column;gap:.75rem}.document-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--gray-50);border-radius:var(--radius)}.document-rank{font-weight:700;color:var(--primary);min-width:30px}.document-name{flex:1;color:var(--text-primary)}.document-views{font-size:.875rem;color:var(--text-secondary)}[data-theme=dark] .document-item,[data-theme=dark] .status-bar{background:var(--gray-200)}.document-analytics-overview-page{padding:20px}.user-activity-analytics{padding:2rem;max-width:1400px;margin:0 auto}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.activity-header h2{margin:0;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.activity-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;transition:var(--transition)}.stat-value{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.activity-breakdown-section,.top-users-section,.activity-timeline-section,.feature-usage-section{margin-bottom:2rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.activity-breakdown-section h3,.top-users-section h3,.activity-timeline-section h3,.feature-usage-section h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--gray-50);border-radius:var(--radius)}.breakdown-type{font-weight:500;color:var(--text-primary);text-transform:capitalize}.breakdown-count{font-weight:700;color:var(--primary)}.user-list{display:flex;flex-direction:column;gap:.75rem}.user-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--gray-50);border-radius:var(--radius)}.user-rank{font-weight:700;color:var(--primary);min-width:30px}.user-name{flex:1;font-weight:500;color:var(--text-primary)}.user-count{color:var(--text-secondary);font-size:.875rem}.bar{width:100%;background:var(--primary-gradient);border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-height:4px;transition:var(--transition)}.feature-usage-grid{display:flex;flex-direction:column;gap:1rem}.feature-item{display:flex;flex-direction:column;gap:.5rem}.feature-header{display:flex;justify-content:space-between;align-items:center}.feature-name{font-weight:500;color:var(--text-primary);text-transform:capitalize}.feature-count{font-size:.875rem;color:var(--text-secondary)}.feature-bar{height:8px;background:var(--gray-100);border-radius:var(--radius);overflow:hidden}.feature-bar-fill{height:100%;background:var(--primary-gradient);transition:width .3s ease}.activity-loading,.activity-error{text-align:center;padding:4rem;color:var(--text-secondary)}.activity-error{color:var(--error)}[data-theme=dark] .breakdown-item,[data-theme=dark] .user-item,[data-theme=dark] .feature-bar{background:var(--gray-200)}.user-activity-analytics-page{padding:20px}.page-subtitle{margin:0;color:#666;font-size:14px}.tenant-analytics-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.time-range-selector{display:flex;align-items:center;gap:.75rem}.time-range-selector label{font-size:.938rem;color:var(--text-secondary)}.time-range-selector select{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem;cursor:pointer}.tenant-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-stats{margin-bottom:2rem}.summary-card{padding:2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center}.summary-value{font-size:3rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.summary-label{font-size:1rem;color:var(--text-secondary)}.tenants-list,.growth-trends-section{margin-bottom:2rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.tenants-list h3,.growth-trends-section h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.tenants-table{display:flex;flex-direction:column;gap:.5rem}.table-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius);font-weight:600;color:var(--text-primary)}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius);border:1px solid var(--border);transition:var(--transition)}.table-row:hover{background:var(--gray-100)}.col-tenant{font-weight:500;color:var(--text-primary)}.col-docs,.col-views,.col-downloads{color:var(--text-secondary)}.chart-container{overflow-x:auto}.bar-chart{display:flex;align-items:flex-end;gap:.5rem;height:200px;padding:1rem 0}.bar-item{flex:1;display:flex;flex-direction:column;align-items:center;min-width:40px;cursor:pointer}.bar{width:100%;border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-height:4px;transition:var(--transition)}.bar-item:hover .bar{opacity:.8}.bar-label{font-size:.75rem;color:var(--text-secondary);margin-top:.5rem;text-align:center}.bar-value{font-size:.75rem;font-weight:600;color:var(--text-primary);margin-top:.25rem}.date-range-info{padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;color:var(--text-secondary)}.analytics-loading,.analytics-error{text-align:center;padding:4rem;color:var(--text-secondary)}.analytics-error{color:var(--error)}[data-theme=dark] .table-header,[data-theme=dark] .table-row{background:var(--gray-200)}[data-theme=dark] .table-row:hover{background:var(--gray-300)}.tenant-analytics-page{padding:20px}.page-header{margin-bottom:24px}.page-header h1{margin:0 0 8px;color:#333;font-size:28px}.page-subtitle{margin:0 0 16px;color:#666;font-size:14px}.tenant-selector{display:flex;align-items:center;gap:10px;margin-top:16px}.tenant-selector label{font-weight:500;color:#666}.tenant-selector select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;cursor:pointer;min-width:200px}.similar-documents{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:20px}.similar-documents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.similar-documents-header h3{margin:0;color:var(--text-primary);font-size:18px;display:flex;align-items:center;gap:8px}.similar-count-badge{background:var(--primary-light, #e7f3ff);color:var(--primary, #007bff);padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.similar-docs-list{display:flex;flex-direction:column;gap:12px}.similar-doc-item{display:flex;gap:12px;padding:14px;background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;cursor:pointer;transition:all .2s;position:relative}.similar-doc-item:hover{background:var(--hover-background, #f0f0f0);border-color:var(--primary, #007bff);box-shadow:0 2px 8px #0000001a;transform:translate(4px)}.similarity-indicator{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;border-radius:6px;border-left:3px solid;flex-shrink:0}.similarity-icon{font-size:20px}.similar-doc-content{flex:1;min-width:0}.similar-doc-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.similar-doc-name{font-weight:600;color:var(--text-primary);font-size:14px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.similarity-badge{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;flex-shrink:0}.similarity-label{text-transform:uppercase;letter-spacing:.5px}.similarity-percent{font-weight:700}.similar-doc-description{font-size:12px;color:var(--text-secondary);margin-bottom:8px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.similar-doc-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:var(--text-secondary);margin-bottom:6px}.meta-item{display:flex;align-items:center;gap:4px}.meta-icon{font-size:12px}.similar-doc-folder{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-tertiary);margin-top:4px}.folder-icon{font-size:12px}.similar-doc-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.action-btn{background:none;border:none;cursor:pointer;font-size:18px;padding:6px;border-radius:4px;transition:background .2s;display:flex;align-items:center;justify-content:center}.action-btn:hover{background:var(--hover-background, #e9ecef)}.loading-state{display:flex;align-items:center;gap:12px;padding:30px 20px;justify-content:center;color:var(--text-secondary)}.expand-button{width:100%;padding:10px;margin-top:12px;background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;color:var(--primary, #007bff);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.expand-button:hover{background:var(--primary-light, #e7f3ff);border-color:var(--primary, #007bff)}@media (max-width: 768px){.similar-doc-header{flex-direction:column;align-items:flex-start}.similarity-badge{align-self:flex-end}.similar-doc-meta{flex-direction:column;gap:6px}}.document-annotations{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:20px;margin-bottom:20px}.annotations-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:12px}.annotations-header>div{flex:1}.annotations-header h3{margin:0 0 4px;color:var(--text-primary);font-size:18px;display:flex;align-items:center;gap:8px}.annotations-count{font-size:12px;color:var(--text-secondary);font-weight:400}.annotations-filters{display:flex;gap:8px;margin-bottom:16px}.filter-select{flex:1;padding:8px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:13px;background:var(--card-background, #fff);color:var(--text-primary)}.annotation-form{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:16px;margin-bottom:16px}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.form-header h4{margin:0;font-size:16px;color:var(--text-primary)}.btn-link{background:none;border:none;color:var(--primary, #007bff);cursor:pointer;font-size:13px;padding:4px 8px;text-decoration:underline}.btn-link:hover{color:var(--primary-dark, #0056b3)}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:14px;background:var(--card-background, #fff);color:var(--text-primary)}.color-picker-group{display:flex;flex-direction:column;gap:12px}.color-presets{display:flex;gap:8px;flex-wrap:wrap}.color-preset{width:36px;height:36px;border:2px solid transparent;border-radius:6px;cursor:pointer;transition:all .5s;transition:transform .2s}.color-preset:hover{transform:scale(1.1)}.color-preset.active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--primary-light, #e7f3ff)}.form-input-color{width:100%;height:48px;border:1px solid var(--border-color, #ddd);border-radius:6px;cursor:pointer}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--text-primary)}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.annotations-list{display:flex;flex-direction:column;gap:12px}.annotation-item{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:14px;transition:all .2s}.annotation-item:hover{border-color:var(--primary, #007bff);box-shadow:0 2px 8px #0000000d}.annotation-item.annotation-hidden{opacity:.6;background:var(--disabled-background, #f5f5f5)}.annotation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px;gap:12px}.annotation-type-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;border:2px solid}.type-icon{font-size:14px}.annotation-meta-header{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.annotation-author{font-size:12px;color:var(--text-secondary)}.annotation-date{font-size:11px;color:var(--text-tertiary)}.annotation-content{color:var(--text-primary);margin-bottom:10px;line-height:1.5;font-size:14px}.annotation-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.annotation-info{display:flex;gap:8px;align-items:center;font-size:12px}.page-badge{background:var(--info-light, #d1ecf1);color:var(--info-dark, #0c5460);padding:4px 8px;border-radius:4px;font-weight:500}.visibility-badge{background:var(--warning-light, #fff3cd);color:var(--warning-dark, #856404);padding:4px 8px;border-radius:4px;font-weight:500}.annotation-actions{display:flex;gap:4px;align-items:center}.btn-icon{background:none;border:none;cursor:pointer;font-size:16px;padding:6px;border-radius:4px;transition:background .2s;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:var(--hover-background, #e9ecef)}.btn-icon.btn-danger:hover{background:var(--danger-light, #f8d7da)}.empty-hint{font-size:12px;color:var(--text-tertiary);margin-top:4px}@media (max-width: 768px){.annotations-header,.annotation-header{flex-direction:column}.annotation-meta-header{align-items:flex-start}.annotation-footer{flex-direction:column;align-items:flex-start}.color-presets{justify-content:center}}.document-comments{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:20px;margin-bottom:20px}.comments-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:12px}.comments-header>div{flex:1}.comments-header h3{margin:0 0 4px;color:var(--text-primary);font-size:18px;display:flex;align-items:center;gap:8px}.header-icon{font-size:20px}.unresolved-badge{background:var(--warning-light, #fff3cd);color:var(--warning-dark, #856404);padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;margin-left:8px}.comments-filters{margin-bottom:16px}.filter-select{width:100%;padding:8px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:13px;background:var(--card-background, #fff);color:var(--text-primary)}.filter-select:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.comment-form{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:16px;margin-bottom:16px}.replying-to{background:var(--info-light, #d1ecf1);color:var(--info-dark, #0c5460);padding:10px 12px;border-radius:6px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:500}.textarea-wrapper{position:relative}.mentions-dropdown{position:absolute;bottom:100%;left:0;right:0;background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:6px;box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;z-index:1000;margin-bottom:4px}.mention-item{padding:10px 12px;cursor:pointer;transition:background .2s;border-bottom:1px solid var(--border-color, #e0e0e0)}.mention-item:last-child{border-bottom:none}.mention-item:hover{background:var(--hover-background, #f0f0f0)}.mention-item.no-results{color:var(--text-secondary);cursor:default}.mention-name{font-weight:500;color:var(--text-primary);font-size:13px}.mention-username{font-size:11px;color:var(--text-secondary);margin-top:2px}.form-label{display:block;margin-bottom:6px;font-weight:500;color:var(--text-primary);font-size:13px}.form-input{width:100%;padding:10px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:14px;font-family:inherit;background:var(--card-background, #fff);color:var(--text-primary);resize:vertical}.form-input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.form-hint{display:block;margin-top:4px;font-size:11px;color:var(--text-tertiary)}.form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.comments-list{display:flex;flex-direction:column;gap:16px}.comment-item{background:var(--background, #f9f9f9);border:1px solid var(--border-color, #ddd);border-radius:6px;padding:14px;transition:all .2s}.comment-item:hover{border-color:var(--primary, #007bff);box-shadow:0 2px 8px #0000000d}.comment-item.comment-reply{margin-left:32px;border-left:3px solid var(--primary, #007bff);background:var(--card-background, #fff)}.comment-item.comment-resolved{opacity:.7;background:var(--success-light, #d4edda)}.resolved-badge{background:var(--success, #28a745);color:#fff;padding:6px 10px;border-radius:4px;font-size:11px;font-weight:600;margin-bottom:10px;display:inline-block}.comment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px;gap:12px}.comment-author-info{flex:1}.comment-author{font-weight:600;color:var(--text-primary);font-size:14px;margin-bottom:4px}.comment-date{font-size:11px;color:var(--text-tertiary)}.btn-resolve{padding:6px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;background:var(--card-background, #fff);color:var(--text-secondary);transition:all .2s;flex-shrink:0}.btn-resolve:hover{background:var(--success-light, #d4edda);color:var(--success-dark, #155724);border-color:var(--success, #28a745)}.btn-resolve.resolved{background:var(--success, #28a745);color:#fff;border-color:var(--success-dark, #155724)}.btn-resolve.resolved:hover{background:var(--success-dark, #155724)}.comment-page-ref{font-size:12px;color:var(--text-secondary);margin-bottom:8px;font-style:italic;display:flex;align-items:center;gap:4px}.comment-content{color:var(--text-primary);margin-bottom:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.mention{background:var(--primary-light, #e7f3ff);color:var(--primary-dark, #0056b3);padding:2px 6px;border-radius:4px;font-weight:500;font-size:13px}.comment-actions{display:flex;gap:12px;align-items:center;padding-top:10px;border-top:1px solid var(--border-color, #e0e0e0);flex-wrap:wrap}.reply-count{font-size:12px;color:var(--text-secondary);margin-left:auto}.comment-replies{margin-top:16px;padding-left:20px;border-left:2px solid var(--primary-light, #e7f3ff)}.btn-link{background:none;border:none;color:var(--primary, #007bff);cursor:pointer;font-size:13px;padding:4px 8px;text-decoration:none;transition:color .2s;display:inline-flex;align-items:center;gap:4px}.btn-link:hover{color:var(--primary-dark, #0056b3);text-decoration:underline}.btn-link.btn-danger{color:var(--danger, #dc3545)}.btn-link.btn-danger:hover{color:var(--danger-dark, #c82333)}.loading-state{display:flex;align-items:center;gap:12px;padding:40px 20px;justify-content:center;color:var(--text-secondary)}.spinner-small{width:20px;height:20px;border:2px solid var(--border-color, #ddd);border-top-color:var(--primary, #007bff);border-radius:50%;animation:spin 1s linear infinite}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-icon{font-size:48px;margin-bottom:12px}.empty-state p{margin:8px 0;font-size:14px}.btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}@media (max-width: 768px){.comments-header{flex-direction:column;align-items:stretch}.comment-item.comment-reply{margin-left:16px}.comment-replies{padding-left:12px}.comment-header{flex-direction:column;gap:8px}.btn-resolve{align-self:flex-start}}.version-comparison{display:flex;flex-direction:column;height:100%;background:var(--bg-secondary, #ffffff)}.comparison-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--bg-primary, #f8f9fa);flex-shrink:0}.comparison-title h3{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary, #333)}.comparison-subtitle{font-size:13px;color:var(--text-secondary, #666)}.comparison-summary{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.summary-badge{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:500}.summary-badge.changes{background:var(--warning-light);color:var(--warning)}.summary-badge.text-diff{background:var(--info-light);color:var(--info)}.summary-badge.increase{background:var(--success-light);color:var(--success)}.summary-badge.decrease{background:var(--danger-light);color:var(--danger)}.comparison-metadata-diff{padding:16px;background:var(--surface-alt);border-bottom:2px solid var(--border)}.comparison-metadata-diff h4{margin-top:0;margin-bottom:12px;font-size:.938rem;color:var(--text-primary)}.metadata-changes-list{display:flex;flex-direction:column;gap:8px}.metadata-change-item{display:flex;align-items:center;gap:8px;font-size:.875rem}.metadata-change-item strong{min-width:120px;color:var(--text-primary)}.change-old{padding:2px 8px;background:var(--danger-light);color:var(--danger);border-radius:4px;text-decoration:line-through}.change-arrow{color:var(--text-secondary)}.change-new{padding:2px 8px;background:var(--success-light);color:var(--success);border-radius:4px;font-weight:500}.comparison-controls{display:flex;align-items:center;gap:16px}.sync-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-secondary, #666)}.sync-toggle input[type=checkbox]{cursor:pointer}.comparison-body{flex:1;display:flex;overflow:hidden;min-height:0}.comparison-pane{flex:1;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border-color, #e0e0e0)}.comparison-pane:last-child{border-right:none}.pane-header{padding:12px 16px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #ffffff);flex-shrink:0}.pane-title{display:flex;align-items:center;gap:8px;margin-bottom:4px}.pane-label{font-weight:600;font-size:14px;color:var(--text-primary, #333)}.pane-revision{font-size:12px;padding:2px 8px;background:var(--primary-light, #e7f3ff);color:var(--primary, #007bff);border-radius:4px;font-weight:500}.pane-meta{display:flex;gap:12px;font-size:12px;color:var(--text-secondary, #666)}.pane-content{flex:1;overflow:auto;background:var(--gray-50, #f5f5f5);position:relative}.comparison-iframe{width:100%;height:100%;border:none;min-height:600px}.pane-error{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary, #666);font-size:14px}.comparison-divider{display:flex;align-items:center;gap:8px;padding:16px;background:var(--bg-primary, #f8f9fa);flex-shrink:0;min-width:80px;justify-content:center}.divider-line{flex:1;height:1px;background:var(--border-color, #e0e0e0)}.divider-label{font-weight:600;font-size:12px;color:var(--text-secondary, #666);padding:4px 8px;background:var(--bg-secondary, #ffffff);border-radius:4px;border:1px solid var(--border-color, #e0e0e0)}.comparison-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary, #666);font-size:14px}@media (max-width: 1024px){.comparison-body{flex-direction:column}.comparison-pane{border-right:none;border-bottom:1px solid var(--border-color, #e0e0e0)}.comparison-divider{flex-direction:row;min-width:auto;min-height:40px}.divider-label{transform:rotate(90deg)}}.document-versioning{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.versioning-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #eee}.versioning-header h3{margin:0;color:#333;font-size:20px}.versioning-actions{display:flex;gap:10px}.btn-compare,.btn-refresh,.btn-upload{padding:8px 16px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:14px;transition:all .2s}.btn-compare{background:#1976d2;color:#fff;border-color:#1976d2}.btn-compare:hover{background:#1565c0}.btn-refresh:hover{background:#f5f5f5}.btn-upload{background:#2e7d32;color:#fff;border-color:#2e7d32}.btn-upload:hover{background:#1b5e20}.btn-upload:disabled{opacity:.6;cursor:not-allowed}.current-version{background:#e3f2fd;border:2px solid #1976d2;border-radius:8px;padding:16px;margin-bottom:20px;display:flex;align-items:center;gap:16px}.version-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.version-badge.current{background:#1976d2;color:#fff}.version-badge.latest{background:#4caf50;color:#fff;margin-left:8px}.version-info{flex:1}.version-number{font-weight:600;color:#333;margin-bottom:4px}.version-meta{display:flex;gap:16px;font-size:12px;color:#666}.no-revisions{padding:40px;text-align:center;color:#666;background:#f9f9f9;border-radius:8px}.revisions-list{display:flex;flex-direction:column;gap:8px}.revisions-header{display:grid;grid-template-columns:50px 1fr 150px 120px 100px 120px;gap:16px;padding:12px;background:#f9f9f9;border-radius:4px;font-weight:600;font-size:14px;color:#666}.revision-item{display:grid;grid-template-columns:50px 1fr 150px 120px 100px 120px;gap:16px;padding:12px;background:#fafafa;border:1px solid #eee;border-radius:4px;align-items:center;transition:all .2s}.revision-item:hover{background:#f5f5f5;border-color:#ddd}.col-select{display:flex;justify-content:center}.col-select input[type=checkbox]{cursor:pointer}.col-revision{display:flex;align-items:center;gap:8px}.revision-number{font-weight:500;color:#333}.col-uploader,.col-date,.col-size{color:#666;font-size:14px}.col-actions{display:flex;gap:8px}.btn-view,.btn-download,.btn-restore{padding:6px 10px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:16px;transition:all .2s}.btn-view:hover{background:#e8f5e9;border-color:#4caf50}.btn-download:hover{background:#e3f2fd;border-color:#1976d2}.btn-restore:hover{background:#fff3e0;border-color:#ff9800}.btn-restore:disabled{opacity:.5;cursor:not-allowed}.selection-info{margin-top:16px;padding:12px;background:#e3f2fd;border-radius:4px;text-align:center;color:#1976d2;font-size:14px}.versioning-loading{padding:40px;text-align:center;color:#666}.versioning-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem}.view-mode-toggle{display:flex;gap:.5rem;border:1px solid var(--border);border-radius:var(--radius);padding:.25rem;background:var(--gray-50)}.view-mode-btn{padding:.5rem 1rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.875rem;transition:var(--transition)}.view-mode-btn:hover{color:var(--text-primary);background:var(--gray-100)}.view-mode-btn.active{background:var(--primary);color:#fff}.version-timeline{position:relative;padding:1rem 0}.timeline-item{display:flex;gap:1rem;margin-bottom:2rem;position:relative}.timeline-marker{display:flex;flex-direction:column;align-items:center;position:relative}.timeline-dot{width:16px;height:16px;border-radius:50%;background:var(--primary);border:3px solid var(--surface);box-shadow:0 0 0 2px var(--primary);z-index:2}.timeline-line{width:2px;flex:1;background:var(--border);margin-top:.5rem;min-height:2rem}.timeline-content{flex:1;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.timeline-revision{display:flex;align-items:center;gap:.5rem}.timeline-actions{display:flex;gap:.5rem;align-items:center}.timeline-checkbox{cursor:pointer}.timeline-details{display:flex;flex-direction:column;gap:.5rem}.timeline-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem}.meta-item{color:var(--text-secondary)}.meta-item strong{color:var(--text-primary);margin-right:.25rem}[data-theme=dark] .view-mode-toggle{background:var(--gray-200);border-color:var(--border)}[data-theme=dark] .timeline-content{background:var(--surface);border-color:var(--border)}.activity-feed{background:var(--card-background, #fff);border:1px solid var(--border-color, #ddd);border-radius:8px;padding:12px;margin-bottom:20px;transition:all .2s ease}.activity-feed.expanded{box-shadow:0 2px 8px #0000001a}.activity-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;padding:4px 0}.activity-header:hover{opacity:.8}.activity-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:var(--text-primary, #333)}.activity-icon{font-size:16px}.activity-count{background:var(--primary, #007bff);color:#fff;border-radius:12px;padding:2px 8px;font-size:11px;font-weight:600;min-width:20px;text-align:center}.activity-status{display:flex;align-items:center;gap:8px}.status-indicator{width:8px;height:8px;border-radius:50%;background:var(--danger, #dc3545)}.status-indicator.connected{background:var(--success, #28a745);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.activity-toggle{background:none;border:none;color:var(--text-secondary, #666);font-size:12px;cursor:pointer;padding:4px 8px;transition:transform .2s}.activity-content{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color, #e0e0e0);animation:slideDown .2s ease;max-height:400px;overflow-y:auto}.activity-list{display:flex;flex-direction:column;gap:8px}.activity-item{display:flex;align-items:flex-start;gap:12px;padding:8px;background:var(--background, #f9f9f9);border-radius:6px;transition:background-color .2s}.activity-item:hover{background:var(--bg-hover, #f0f0f0)}.activity-icon-item{font-size:18px;flex-shrink:0}.activity-details{flex:1;min-width:0}.activity-text{font-size:13px;color:var(--text-primary, #333);margin-bottom:4px;line-height:1.4}.activity-time{font-size:11px;color:var(--text-tertiary, #999)}.activity-empty{text-align:center;padding:24px;color:var(--text-secondary, #666);font-size:13px;font-style:italic}.activity-content::-webkit-scrollbar{width:6px}.activity-content::-webkit-scrollbar-track{background:var(--bg-secondary, #f5f5f5);border-radius:3px}.activity-content::-webkit-scrollbar-thumb{background:var(--border-color, #ccc);border-radius:3px}.activity-content::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.signature-capture{background:var(--surface);border-radius:12px;padding:24px;box-shadow:var(--shadow-md);max-width:700px;margin:0 auto}.signature-capture-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--border)}.signature-capture-header h3{margin:0;color:var(--text-primary);font-size:1.25rem}.signature-type-selector{display:flex;gap:8px}.type-btn{padding:8px 16px;border:2px solid var(--border);background:var(--surface);border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);transition:all .2s ease}.type-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-50)}.type-btn.active{border-color:var(--primary);background:var(--primary);color:#fff}.signature-capture-body{margin-bottom:24px;min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center}.signature-draw-container{width:100%;display:flex;flex-direction:column;align-items:center}.signature-canvas{border:2px solid var(--border);border-radius:8px;cursor:crosshair;background:#fff;touch-action:none}.signature-type-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.signature-type-input{width:100%;max-width:400px}.signature-upload-container{width:100%;display:flex;flex-direction:column;align-items:center;gap:16px}.signature-file-input{padding:12px;border:2px dashed var(--border);border-radius:8px;cursor:pointer;width:100%;max-width:400px;text-align:center}.signature-file-input:hover{border-color:var(--primary);background:var(--primary-50)}.signature-preview{max-width:400px;border:2px solid var(--border);border-radius:8px;padding:16px;background:#fff}.signature-preview img{max-width:100%;height:auto;display:block}.signature-hint{margin-top:12px;color:var(--text-tertiary);font-size:.875rem;text-align:center}.signature-capture-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:2px solid var(--border)}.signature-actions{display:flex;gap:12px}[data-theme=dark] .signature-canvas,[data-theme=dark] .signature-preview{background:var(--surface);border-color:var(--border-strong)}[data-theme=dark] .signature-type-input,[data-theme=dark] .signature-file-input{background:var(--surface);color:var(--text-primary);border-color:var(--border)}@media (max-width: 768px){.signature-capture{padding:16px}.signature-capture-header{flex-direction:column;gap:16px;align-items:stretch}.signature-type-selector{width:100%}.type-btn{flex:1}.signature-canvas{width:100%;max-width:100%}.signature-capture-footer{flex-direction:column;gap:12px}.signature-actions{width:100%}.signature-actions button{flex:1}}.signature-modal{background:var(--surface);border-radius:16px;max-width:700px;width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.signature-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid var(--border)}.signature-modal-header h2{margin:0;color:var(--text-primary);font-size:1.5rem}.modal-close{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.modal-close:hover{background:var(--surface-alt);color:var(--text-primary)}.signature-modal-body{padding:24px;overflow-y:auto;flex:1}.signature-step{min-height:300px}.signature-step h3{margin-top:0;margin-bottom:24px;color:var(--text-primary)}.signature-step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.signature-document-info{margin-bottom:24px;padding:16px;background:var(--surface-alt);border-radius:8px}.signature-document-info h3{margin-top:0;margin-bottom:8px}.signature-preview-section{margin-bottom:24px}.signature-preview-section h4{margin-bottom:12px}.signature-preview-display{border:2px solid var(--border);border-radius:8px;padding:16px;background:#fff;margin-bottom:12px;display:flex;justify-content:center}.signature-preview-display img{max-width:100%;height:auto}.signature-reason-section{margin-top:24px}.signature-reason-section label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary)}.signature-reason-section textarea{width:100%;padding:12px;border:2px solid var(--border);border-radius:8px;font-family:inherit;font-size:.938rem;resize:vertical}.signers-list{display:flex;flex-direction:column;gap:16px}.signer-item{border:2px solid var(--border);border-radius:8px;padding:16px;background:var(--surface-alt)}.signer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.signer-order{font-weight:600;color:var(--text-primary)}.signer-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.empty-state{text-align:center;padding:48px 24px;color:var(--text-tertiary)}.step-indicator{display:flex;gap:8px;align-items:center}.step-indicator span{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--surface-alt);color:var(--text-secondary);font-weight:600;border:2px solid var(--border)}.step-indicator span.active{background:var(--primary);color:#fff;border-color:var(--primary)}.signature-modal-footer{padding:24px;border-top:2px solid var(--border);display:flex;justify-content:space-between;align-items:center}.footer-actions{display:flex;gap:12px}.error-message{background:var(--error-bg);color:var(--error-text);padding:12px 16px;border-radius:8px;margin-top:16px;border:1px solid var(--error-border)}[data-theme=dark] .signature-preview-display{background:var(--surface);border-color:var(--border-strong)}[data-theme=dark] .signature-reason-section textarea{background:var(--surface);color:var(--text-primary);border-color:var(--border)}[data-theme=dark] .signer-item{background:var(--surface-alt);border-color:var(--border)}@media (max-width: 768px){.signature-modal{width:95%;max-height:95vh}.signature-modal-header,.signature-modal-body,.signature-modal-footer{padding:16px}.signer-fields{grid-template-columns:1fr}.signature-modal-footer{flex-direction:column;gap:16px}.footer-actions{width:100%}.footer-actions button{flex:1}}.signature-status{background:var(--surface);border:2px solid var(--border);border-radius:12px;padding:20px;margin-top:24px}.signature-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.signature-status-header h4{margin:0;color:var(--text-primary);font-size:1.125rem}.signature-status-actions{display:flex;gap:8px}.signature-status-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-size:.875rem;font-weight:500;margin-bottom:16px}.signature-status-badge.signed{background:var(--success-light);color:var(--success)}.signature-status-badge.pending{background:var(--warning-light);color:var(--warning)}.signature-status-empty{text-align:center;padding:32px;color:var(--text-tertiary)}.signatures-list{margin-top:16px}.signatures-list h5{margin-bottom:12px;color:var(--text-primary);font-size:1rem}.signature-item{display:flex;align-items:center;gap:16px;padding:12px;border:1px solid var(--border);border-radius:8px;margin-bottom:8px;background:var(--surface-alt)}.signature-info{flex:1;display:flex;flex-direction:column;gap:4px}.signer-name{font-weight:500;color:var(--text-primary)}.signature-date{font-size:.813rem;color:var(--text-secondary)}.signature-preview-small{width:120px;height:60px;border:1px solid var(--border);border-radius:4px;display:flex;align-items:center;justify-content:center;background:#fff;overflow:hidden}.signature-preview-small img{max-width:100%;max-height:100%;object-fit:contain}.signature-verified{display:flex;align-items:center}.verified-badge{background:var(--success-light);color:var(--success);padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:500}.signature-request-info{margin-top:24px;padding-top:24px;border-top:2px solid var(--border)}.signature-request-info h5{margin-top:0;margin-bottom:12px;color:var(--text-primary)}.request-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:16px}.request-details p{margin:0;font-size:.875rem}.request-details strong{color:var(--text-primary);margin-right:8px}.signers-list{margin-top:16px}.signers-list h6{margin-bottom:8px;color:var(--text-secondary);font-size:.875rem;font-weight:600}.signer-status{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;margin-bottom:6px;background:var(--surface-alt)}.signer-status.signed{background:var(--success-light)}.signer-status.pending{background:var(--warning-light)}.signer-status .signer-name{flex:1;font-weight:500}.signer-status-badge{font-size:.813rem;font-weight:500}.signer-status.signed .signer-status-badge{color:var(--success)}.signer-status.pending .signer-status-badge{color:var(--warning)}.signer-date{font-size:.813rem;color:var(--text-secondary)}.signature-status-loading{padding:24px;text-align:center;color:var(--text-secondary)}[data-theme=dark] .signature-preview-small{background:var(--surface);border-color:var(--border-strong)}@media (max-width: 768px){.signature-status-header{flex-direction:column;align-items:stretch;gap:12px}.signature-status-actions{width:100%}.signature-status-actions button{flex:1}.signature-item{flex-direction:column;align-items:stretch}.signature-preview-small{width:100%;height:80px}.request-details{grid-template-columns:1fr}}.redaction-tool{background:var(--surface);border-radius:12px;padding:24px;box-shadow:var(--shadow-md)}.redaction-tool-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid var(--border)}.redaction-tool-header h3{margin:0;color:var(--text-primary)}.redaction-tool-body{display:grid;grid-template-columns:1fr 300px;gap:24px}.redaction-canvas-container{position:relative;border:2px solid var(--border);border-radius:8px;overflow:auto;background:var(--gray-100);min-height:600px;max-height:800px}.redaction-document-preview{max-width:100%;height:auto;display:block}.redaction-canvas{position:absolute;top:0;left:0;cursor:crosshair;pointer-events:auto}.redaction-sidebar{display:flex;flex-direction:column;gap:24px}.redaction-instructions{padding:16px;background:var(--surface-alt);border-radius:8px;border:1px solid var(--border)}.redaction-instructions h4{margin-top:0;margin-bottom:12px;color:var(--text-primary);font-size:1rem}.redaction-instructions p{margin:8px 0;font-size:.875rem;color:var(--text-secondary)}.redactions-list{display:flex;flex-direction:column;gap:16px}.redactions-list h4{margin:0;color:var(--text-primary);font-size:1rem}.redactions-section{display:flex;flex-direction:column;gap:12px}.redactions-section h5{margin:0;color:var(--text-secondary);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.redaction-item{padding:12px;border:2px solid var(--border);border-radius:8px;background:var(--surface-alt);cursor:pointer;transition:all .2s ease}.redaction-item:hover{border-color:var(--primary);background:var(--primary-50)}.redaction-item.selected{border-color:var(--primary);background:var(--primary-50);box-shadow:0 0 0 3px #2563eb1a}.redaction-item.applied{opacity:.7;cursor:default}.redaction-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.redaction-item-header span{font-weight:500;color:var(--text-primary)}.applied-badge{background:var(--success-light);color:var(--success);padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600}.redaction-reason{margin:8px 0;font-size:.875rem;color:var(--text-secondary);font-style:italic}.redaction-date{font-size:.813rem;color:var(--text-tertiary)}.redaction-reason-modal{background:var(--surface);border-radius:12px;padding:24px;max-width:500px;width:90%;box-shadow:var(--shadow-xl)}.redaction-reason-modal h3{margin-top:0;margin-bottom:12px;color:var(--text-primary)}.redaction-reason-modal p{margin-bottom:16px;color:var(--text-secondary)}.redaction-reason-modal textarea{width:100%;padding:12px;border:2px solid var(--border);border-radius:8px;font-family:inherit;font-size:.938rem;resize:vertical;margin-bottom:16px}.modal-actions{display:flex;justify-content:flex-end;gap:12px}.empty-state{text-align:center;padding:32px;color:var(--text-tertiary)}.error-message{background:var(--error-bg);color:var(--error-text);padding:12px 16px;border-radius:8px;margin-bottom:16px;border:1px solid var(--error-border)}[data-theme=dark] .redaction-canvas-container{background:var(--gray-900);border-color:var(--border-strong)}[data-theme=dark] .redaction-reason-modal textarea{background:var(--surface);color:var(--text-primary);border-color:var(--border)}@media (max-width: 1024px){.redaction-tool-body{grid-template-columns:1fr}.redaction-sidebar{order:-1}}@media (max-width: 768px){.redaction-tool{padding:16px}.redaction-tool-header{flex-direction:column;align-items:stretch;gap:12px}.redaction-canvas-container{min-height:400px;max-height:600px}}.document-qa{background:var(--surface);border:2px solid var(--border);border-radius:12px;padding:24px;display:flex;flex-direction:column;height:600px;max-height:80vh}.qa-header{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--border)}.qa-header h3{margin:0 0 8px;color:var(--text-primary);font-size:1.25rem}.qa-subtitle{margin:0;color:var(--text-secondary);font-size:.875rem}.qa-suggestions{margin-bottom:20px;padding:16px;background:var(--surface-alt);border-radius:8px}.suggestions-title{margin:0 0 12px;color:var(--text-secondary);font-size:.875rem;font-weight:500}.suggestions-list{display:flex;flex-wrap:wrap;gap:8px}.suggestion-chip{padding:6px 12px;background:var(--primary-50);color:var(--primary);border:1px solid var(--primary-light);border-radius:16px;font-size:.813rem;cursor:pointer;transition:all .2s ease}.suggestion-chip:hover{background:var(--primary-light);border-color:var(--primary)}.qa-messages{flex:1;overflow-y:auto;padding:16px 0;display:flex;flex-direction:column;gap:16px}.qa-message{display:flex;flex-direction:column}.qa-message.user{align-items:flex-end}.qa-message.ai,.qa-message.error{align-items:flex-start}.message-content{display:flex;gap:12px;max-width:80%;align-items:flex-start}.qa-message.user .message-content{flex-direction:row-reverse}.message-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.message-avatar.user{background:var(--primary);color:#fff}.message-avatar.ai{background:var(--success-light);color:var(--success)}.message-avatar.error{background:var(--error-light);color:var(--error)}.message-text{background:var(--surface-alt);padding:12px 16px;border-radius:12px;border:1px solid var(--border)}.qa-message.user .message-text{background:var(--primary-light);border-color:var(--primary)}.qa-message.error .message-text{background:var(--error-light);border-color:var(--error)}.message-text p{margin:0 0 8px;color:var(--text-primary);line-height:1.5}.confidence-badge{display:inline-block;padding:2px 8px;background:var(--success-light);color:var(--success);border-radius:8px;font-size:.75rem;font-weight:500;margin-right:8px}.message-time{display:block;font-size:.75rem;color:var(--text-tertiary);margin-top:4px}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-indicator span{width:8px;height:8px;border-radius:50%;background:var(--text-secondary);animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-10px);opacity:1}}.qa-error{background:var(--error-bg);color:var(--error-text);padding:12px 16px;border-radius:8px;margin-bottom:12px;border:1px solid var(--error-border);font-size:.875rem}.qa-input-form{margin-top:auto;padding-top:16px;border-top:2px solid var(--border)}.qa-input-wrapper{display:flex;gap:8px;margin-bottom:8px}.qa-input{flex:1;padding:12px 16px;border:2px solid var(--border);border-radius:8px;font-size:.938rem;font-family:inherit}.qa-input:focus{outline:none;border-color:var(--primary)}.qa-input:disabled{background:var(--surface-alt);cursor:not-allowed}.qa-send-btn{padding:12px 24px;background:var(--primary);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease}.qa-send-btn:hover:not(:disabled){background:var(--primary-dark)}.qa-send-btn:disabled{background:var(--gray-400);cursor:not-allowed}.qa-hint{margin:0;font-size:.75rem;color:var(--text-tertiary);text-align:center}[data-theme=dark] .qa-input{background:var(--surface);color:var(--text-primary);border-color:var(--border)}[data-theme=dark] .message-text{background:var(--surface-alt);border-color:var(--border)}[data-theme=dark] .qa-message.user .message-text{background:var(--primary-dark);border-color:var(--primary)}@media (max-width: 768px){.document-qa{height:500px;padding:16px}.message-content{max-width:90%}.suggestions-list{flex-direction:column}.suggestion-chip{width:100%;text-align:left}}.auto-tagging{background:var(--surface);border:2px solid var(--border);border-radius:12px;padding:20px}.tagging-header{margin-bottom:20px}.tagging-header h4{margin:0 0 8px;color:var(--text-primary);font-size:1.125rem}.tagging-description{margin:0;color:var(--text-secondary);font-size:.875rem}.tagging-controls{display:flex;gap:16px;align-items:flex-end;margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid var(--border)}.control-group{display:flex;flex-direction:column;gap:8px}.control-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.max-tags-input{width:80px;padding:8px 12px;border:2px solid var(--border);border-radius:6px;font-size:.938rem}.max-tags-input:focus{outline:none;border-color:var(--primary)}.existing-tags-section,.generated-tags-section{margin-bottom:20px}.existing-tags-section h5,.generated-tags-section h5{margin:0 0 12px;color:var(--text-primary);font-size:.938rem;font-weight:600}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:6px 12px;border-radius:16px;font-size:.813rem;font-weight:500;display:inline-block}.tag.existing{background:var(--gray-100);color:var(--text-primary);border:1px solid var(--border)}.tag.generated{background:var(--primary-light);color:var(--primary);border:1px solid var(--primary);cursor:pointer;transition:all .2s ease}.tag.generated:hover{background:var(--primary);color:#fff;transform:translateY(-2px);box-shadow:0 2px 4px #0000001a}.tagging-hint{margin:12px 0 0;font-size:.75rem;color:var(--text-tertiary);font-style:italic}.tagging-empty{text-align:center;padding:32px;color:var(--text-tertiary)}[data-theme=dark] .max-tags-input{background:var(--surface);color:var(--text-primary);border-color:var(--border)}[data-theme=dark] .tag.existing{background:var(--surface-alt);border-color:var(--border)}@media (max-width: 768px){.tagging-controls{flex-direction:column;align-items:stretch}.control-group,.max-tags-input{width:100%}}.document-detail-page{padding:var(--spacing-2xl);max-width:1400px;margin:0 auto}.document-detail-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--border)}.header-title{display:flex;justify-content:center;align-items:center}.document-detail-header h1{font-size:var(--text-3xl);font-weight:var(--font-extrabold);color:var(--text-primary);margin:0;text-align:center}.back-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:var(--text-base);cursor:pointer;transition:var(--transition)}.back-btn:hover{background:var(--primary-50);border-color:var(--primary);color:var(--primary)}.header-actions{display:flex;gap:var(--spacing-md);align-items:center}.document-detail-content{display:flex;flex-direction:column;gap:var(--spacing-xl)}.document-info-card{background:var(--surface);border-radius:var(--radius-md);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border)}.info-section h2{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--spacing-lg)}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs);align-items:flex-start}.info-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.info-value{font-size:var(--text-base);font-weight:var(--font-normal);color:var(--text-primary);word-break:break-word}.edit-input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border);border-radius:var(--radius);font-size:var(--text-base);font-weight:var(--font-normal);color:var(--text-primary);background:var(--surface);transition:var(--transition)}.edit-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-50)}.edit-input::placeholder{color:var(--text-tertiary)}.assignment-link{color:var(--primary);text-decoration:none;font-weight:var(--font-medium);display:inline-flex;align-items:center;gap:var(--spacing-xs);transition:var(--transition)}.assignment-link:hover{color:var(--primary-dark);text-decoration:underline}.link-icon{font-size:var(--text-base);transition:var(--transition)}.assignment-link:hover .link-icon{transform:translate(2px)}.so-number{color:var(--text-secondary);font-size:var(--text-sm);margin-left:var(--spacing-xs)}.status-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.5px;width:fit-content;white-space:nowrap}.status-active{background:var(--success-50);color:var(--success);border:1px solid var(--success)}.status-inactive,.status-deleted{background:var(--danger-50);color:var(--danger);border:1px solid var(--danger)}.document-tabs{display:flex;gap:var(--spacing-sm);border-bottom:2px solid var(--border)}.tab-btn{padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition);margin-bottom:-2px;display:block;visibility:visible;opacity:1}.tab-btn:hover{color:var(--primary);background:var(--primary-50)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:var(--font-semibold)}.tab-content{background:var(--surface);border-radius:var(--radius-md);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border);min-height:300px}.detail-section{margin-bottom:var(--spacing-xl)}.detail-section h3{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--spacing-md)}.detail-section p{color:var(--text-secondary);line-height:1.6}.metadata-json{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius);padding:var(--spacing-lg);overflow-x:auto;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-primary)}.extracted-text-content{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--radius);padding:var(--spacing-lg);max-height:500px;overflow-y:auto;line-height:1.8;white-space:pre-wrap;word-wrap:break-word}.extracted-text-content p{margin:0;color:var(--text-primary);font-family:var(--font-family);font-size:var(--text-base)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl);text-align:center;min-height:300px}.empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-lg);opacity:.5}.empty-state h3{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--spacing-md)}.empty-state-message{color:var(--text-secondary);font-size:var(--text-base);line-height:1.6}.loading-text{text-align:center;color:var(--text-secondary);padding:var(--spacing-3xl);font-style:italic}.error-container h2{color:var(--danger);margin-bottom:var(--spacing-md)}.error-container p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}@media (max-width: 768px){.document-detail-page{padding:var(--spacing-lg)}.document-detail-header{grid-template-columns:1fr;gap:var(--spacing-md)}.header-title{order:2}.document-detail-header h1{text-align:left}.header-actions{order:3;width:100%;justify-content:flex-end}.back-btn{order:1}.info-grid{grid-template-columns:repeat(2,1fr)}@media (max-width: 640px){.info-grid{grid-template-columns:1fr}}}.ai-insights-tab,.workflows-tab{padding:var(--spacing-lg)}.workflows-section{background:var(--surface);border-radius:var(--radius-lg);padding:var(--spacing-xl)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.section-header h3{margin:0;font-size:var(--text-xl);color:var(--text-primary)}.workflow-instances-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.workflow-instance-card{background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:var(--spacing-lg);transition:var(--transition)}.workflow-instance-card:hover{border-color:var(--primary);box-shadow:0 2px 8px #0000001a}.workflow-instance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.workflow-instance-header h4{margin:0;font-size:var(--text-lg);color:var(--text-primary)}.workflow-instance-info{display:flex;flex-direction:column;gap:var(--spacing-sm)}.workflow-instance-info p{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xl);border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:var(--text-2xl);color:var(--text-primary)}.modal-close{background:none;border:none;font-size:var(--text-2xl);color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);transition:var(--transition)}.modal-close:hover{background:var(--gray-100);color:var(--text-primary)}.modal-body{padding:var(--spacing-xl);overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-xl);border-top:1px solid var(--border)}.workflow-select-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.workflow-select-item{padding:var(--spacing-lg);border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition)}.workflow-select-item:hover{border-color:var(--primary);background:var(--primary-50)}.workflow-select-item.selected{border-color:var(--primary);background:var(--primary-100)}.workflow-select-item h4{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-lg);color:var(--text-primary)}.workflow-description{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.folder-tree-view{background:transparent;border-radius:var(--doc-radius-md, 8px);padding:.5rem 0;max-height:none;overflow-y:auto}.tree-container{display:flex;flex-direction:column;gap:.25rem}.folder-tree-node{margin:0}.folder-item,.document-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;border-radius:var(--doc-radius-md, 8px);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);margin:.125rem 0;-webkit-user-select:none;user-select:none;position:relative}.folder-item:hover,.document-item:hover{background:var(--doc-primary-light, #dbeafe);transform:translate(4px);box-shadow:var(--doc-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.folder-item.selected,.document-item.selected{background:linear-gradient(135deg,var(--doc-primary, #3b82f6) 0%,#6366f1 100%);color:#fff;box-shadow:var(--doc-shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));transform:translate(4px)}.folder-toggle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;border-radius:var(--doc-radius-sm, 6px);transition:background .2s}.folder-toggle:hover{background:#0000000d}.folder-item.selected .folder-toggle:hover{background:#fff3}.expand-icon{transition:transform .2s cubic-bezier(.4,0,.2,1);color:var(--doc-text-secondary, #64748b);flex-shrink:0;width:16px;height:16px}.folder-item.selected .expand-icon,.document-item.selected .expand-icon{color:#fff}.expand-icon.expanded{transform:rotate(90deg)}.expand-placeholder{width:16px;height:16px}.folder-icon{flex-shrink:0;color:var(--doc-text-secondary, #64748b);display:flex;align-items:center;font-size:1.125rem;transition:transform .2s}.folder-item:hover .folder-icon{transform:scale(1.1)}.folder-item.selected .folder-icon{color:#fff}.document-icon{flex-shrink:0;font-size:1.125rem}.folder-info,.document-info{flex:1;min-width:0}.folder-actions{display:flex;align-items:center;gap:.375rem;margin-left:auto;opacity:0;transition:opacity .2s ease}.folder-item:hover .folder-actions{opacity:1}.folder-action-button{width:28px;height:28px;border-radius:var(--doc-radius-sm, 6px);border:1.5px solid var(--doc-border, #e2e8f0);background:var(--doc-bg-primary, #ffffff);color:var(--doc-primary, #3b82f6);font-size:1.125rem;font-weight:600;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:var(--doc-shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05))}.folder-action-button:hover{background:var(--doc-primary, #3b82f6);color:#fff;border-color:var(--doc-primary, #3b82f6);transform:scale(1.1);box-shadow:var(--doc-shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1))}.folder-item.selected .folder-action-button{border-color:#fff9;color:#fff;background:#fff3}.folder-item.selected .folder-action-button:hover{background:#ffffff4d;border-color:#fff}.folder-name,.document-name{font-weight:600;font-size:.9375rem;color:var(--doc-text-primary, #0f172a);white-space:normal;overflow:visible;text-overflow:clip;line-height:1.4;word-break:break-word}.folder-item.selected .folder-name,.document-item.selected .document-name{color:#fff}.folder-meta,.document-meta{font-size:.8125rem;color:#475569;margin-top:.125rem;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.3;font-weight:500;word-break:break-word}.folder-item.selected .folder-meta,.document-item.selected .document-meta{color:#ffffffe6}.folder-children{margin-top:.25rem;margin-left:.5rem;border-left:2px solid var(--doc-border-light, #f1f5f9);padding-left:.75rem}.empty-tree{text-align:center;padding:3rem 1.5rem;color:var(--doc-text-tertiary, #94a3b8)}.empty-tree p{margin:0;font-size:.875rem;line-height:1.6}.folder-tree-view::-webkit-scrollbar{width:8px}.folder-tree-view::-webkit-scrollbar-track{background:var(--doc-bg-tertiary, #f1f5f9);border-radius:4px}.folder-tree-view::-webkit-scrollbar-thumb{background:var(--doc-border, #e2e8f0);border-radius:4px}.folder-tree-view::-webkit-scrollbar-thumb:hover{background:var(--doc-text-tertiary, #94a3b8)}.bulk-share-modal{max-width:600px;width:90%}.form-select,.form-input{width:100%;padding:.5rem;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:.875rem}.form-hint{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-secondary, #666)}.bulk-operations-bar{position:sticky;top:0;background:#fff;border-bottom:2px solid #1976d2;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;z-index:100;box-shadow:0 2px 4px #0000001a}.selection-info{font-size:14px;color:#666}.selection-info strong{color:#1976d2;font-weight:600}.bulk-actions{display:flex;gap:10px}.btn-bulk{padding:8px 16px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:14px;transition:all .2s}.btn-bulk:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.btn-bulk:disabled{opacity:.5;cursor:not-allowed}.btn-delete{color:#d32f2f;border-color:#d32f2f}.btn-delete:hover:not(:disabled){background:#ffebee}.btn-move{color:#1976d2;border-color:#1976d2}.btn-move:hover:not(:disabled){background:#e3f2fd}.btn-share{color:#388e3c;border-color:#388e3c}.btn-share:hover:not(:disabled){background:#e8f5e9}.bulk-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.bulk-modal{background:#fff;border-radius:8px;width:90%;max-width:500px;box-shadow:0 4px 12px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h3{margin:0;color:#333;font-size:20px}.btn-close{background:none;border:none;font-size:28px;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.btn-close:hover:not(:disabled){background:#f5f5f5}.modal-body{padding:20px}.operation-content{display:flex;flex-direction:column;gap:12px}.operation-content p{margin:0;color:#666}.warning-text{color:#d32f2f;font-weight:500}.folder-select{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;cursor:pointer}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #eee}.btn-cancel,.btn-confirm{padding:10px 20px;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-cancel{background:#fff;color:#666}.btn-cancel:hover:not(:disabled){background:#f5f5f5}.btn-confirm{color:#fff;border:none}.btn-confirm.btn-delete{background:#d32f2f}.btn-confirm.btn-delete:hover:not(:disabled){background:#c62828}.btn-confirm.btn-move{background:#1976d2}.btn-confirm.btn-move:hover:not(:disabled){background:#1565c0}.btn-confirm:disabled{opacity:.5;cursor:not-allowed}.smart-folder-rule-modal{max-width:700px;width:90%}.smart-folder-form{padding:1.5rem}.form-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color, #ddd)}.form-section h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary, #333)}.form-hint{font-size:.875rem;color:var(--text-secondary, #666);margin-bottom:1rem}.criteria-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #333);font-size:.875rem}.form-group input[type=text],.form-group input[type=date],.form-group select,.form-group textarea{width:100%;padding:.5rem;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:.875rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color, #ddd)}:root{--doc-bg-primary: #ffffff;--doc-bg-secondary: #f8fafc;--doc-bg-tertiary: #f1f5f9;--doc-border: #e2e8f0;--doc-border-light: #f1f5f9;--doc-text-primary: #0f172a;--doc-text-secondary: #64748b;--doc-text-tertiary: #94a3b8;--doc-primary: #3b82f6;--doc-primary-hover: #2563eb;--doc-primary-light: #dbeafe;--doc-success: #10b981;--doc-warning: #f59e0b;--doc-error: #ef4444;--doc-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--doc-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--doc-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--doc-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--doc-radius-sm: 6px;--doc-radius-md: 8px;--doc-radius-lg: 12px;--doc-radius-xl: 16px}.document-management{display:flex;flex-direction:column;height:100%;background:var(--doc-bg-secondary);overflow:hidden}.document-management-loading{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--doc-bg-secondary)}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:1rem;font-size:16px;color:var(--doc-text-secondary)}.loading-spinner:before{content:"";width:40px;height:40px;border:3px solid var(--doc-border);border-top-color:var(--doc-primary);border-radius:50%;animation:spin .8s linear infinite}.document-management-header{display:flex;flex-direction:column;gap:1rem;padding:1.5rem 2rem;background:var(--doc-bg-primary);border-bottom:1px solid var(--doc-border);box-shadow:var(--doc-shadow-sm);position:sticky;top:0;z-index:10}@media (min-width: 768px){.document-management-header{flex-direction:row;justify-content:space-between;align-items:center;padding:1.5rem 2rem}}.document-management-header h1{margin:0;font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,var(--doc-primary) 0%,#6366f1 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.header-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.btn{padding:.625rem 1.25rem;border:none;border-radius:var(--doc-radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;gap:.5rem;box-shadow:var(--doc-shadow-sm);height:40px}.view-mode-toggle{display:flex;gap:0;border:1.5px solid var(--doc-border);border-radius:var(--doc-radius-md);padding:.25rem;background:var(--doc-bg-primary);overflow:hidden;height:40px;align-items:center}.btn-icon{background:transparent;border:none;padding:.5rem .75rem;cursor:pointer;border-radius:var(--doc-radius-sm);font-size:1.125rem;color:var(--doc-text-secondary);transition:all .2s;min-width:36px;display:flex;align-items:center;justify-content:center;height:32px}.btn-icon:hover{background:var(--doc-bg-tertiary);color:var(--doc-primary)}.btn-icon.active{background:var(--doc-primary);color:#fff}.document-management-content{display:flex;flex:1;overflow:hidden;gap:0}.document-management-sidebar{width:100%;background:var(--doc-bg-primary);border-right:1px solid var(--doc-border);overflow-y:auto;padding:1.5rem;max-height:calc(100vh - 200px);box-shadow:var(--doc-shadow-sm)}@media (min-width: 1024px){.document-management-sidebar{width:320px;min-width:320px;max-height:none;padding:1.5rem}}.sidebar-section h3{margin:0 0 1rem;font-size:.75rem;font-weight:700;color:var(--doc-text-secondary);text-transform:uppercase;letter-spacing:1px}.sidebar-empty{font-size:.875rem;color:var(--doc-text-secondary);padding:.5rem;margin:0}.sidebar-document-item{display:flex;gap:.65rem;align-items:center;padding:.6rem .65rem;border-radius:var(--doc-radius-md);cursor:pointer;transition:background .2s ease,box-shadow .2s ease;border:1px solid transparent}.sidebar-document-item:hover{background:var(--doc-bg-tertiary);border-color:var(--doc-border);box-shadow:var(--doc-shadow-sm)}.sidebar-document-icon{width:28px;height:28px;border-radius:8px;background:var(--doc-primary-light);color:var(--doc-primary);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.favorite-document-item .sidebar-document-icon{background:#fff7ed;color:#f59e0b}.sidebar-document-content{min-width:0;flex:1}.sidebar-document-name{font-size:.875rem;font-weight:600;color:var(--doc-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-document-meta{font-size:.75rem;color:var(--doc-text-secondary);margin-top:.2rem}.folder-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.smart-rules-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.smart-rules-hint{font-size:.75rem;color:var(--doc-text-secondary);max-width:260px}.smart-rules-description{font-size:.75rem;color:var(--doc-text-secondary);margin-bottom:.5rem}.document-management-main{flex:1;overflow-y:auto;padding:2rem;background:var(--doc-bg-secondary);position:relative}.folder-breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;background:var(--doc-bg-primary);border-radius:var(--doc-radius-md);box-shadow:var(--doc-shadow-sm);flex-wrap:wrap}.breadcrumb-item{display:flex;align-items:center;gap:.5rem;color:var(--doc-text-secondary);font-size:.875rem;cursor:pointer;transition:color .2s}.breadcrumb-item:hover{color:var(--doc-primary)}.breadcrumb-item.active{color:var(--doc-text-primary);font-weight:600;cursor:default}.breadcrumb-separator{color:var(--doc-text-tertiary);font-size:.75rem}.folder-header{margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,var(--doc-bg-primary) 0%,var(--doc-bg-tertiary) 100%);border-radius:var(--doc-radius-lg);box-shadow:var(--doc-shadow-md);border:1px solid var(--doc-border-light)}.folder-header h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:700;color:var(--doc-text-primary);display:flex;align-items:center;gap:.75rem}.folder-header h2:before{content:"📁";font-size:1.75rem}.folder-description{margin:0 0 1rem;color:var(--doc-text-secondary);font-size:.9375rem;line-height:1.6}.folder-meta{display:flex;gap:1.5rem;font-size:.8125rem;color:var(--doc-text-tertiary);flex-wrap:wrap}.folder-meta span{display:flex;align-items:center;gap:.375rem}.folder-meta span:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--doc-primary)}.folder-children-panel{margin:1rem 0 1.25rem;padding:.75rem;border:1px solid var(--doc-border);border-radius:var(--doc-radius-md);background:var(--doc-bg-primary)}.folder-children-header{font-size:.75rem;font-weight:700;color:var(--doc-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:.25rem 0 .75rem}.folder-children-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.folder-children-item{display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem;border:1px solid var(--doc-border);border-radius:var(--doc-radius-md);background:var(--doc-bg-secondary);text-align:left;cursor:pointer;transition:all .2s ease}.folder-children-item:hover{background:var(--doc-bg-tertiary);border-color:var(--doc-primary);box-shadow:var(--doc-shadow-sm);transform:translateY(-1px)}.folder-children-icon{width:32px;height:32px;border-radius:8px;background:var(--doc-primary-light);color:var(--doc-primary);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.folder-children-content{min-width:0;flex:1}.folder-children-name{font-size:.875rem;font-weight:600;color:var(--doc-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folder-children-meta{font-size:.75rem;color:var(--doc-text-secondary);margin-top:.2rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:3rem 2rem;background:var(--doc-bg-primary);border-radius:var(--doc-radius-lg);box-shadow:var(--doc-shadow-sm);border:2px dashed var(--doc-border)}.empty-state-icon{font-size:5rem;margin-bottom:1.5rem;opacity:.6;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty-state h2{margin:0 0 .75rem;font-size:1.5rem;font-weight:700;color:var(--doc-text-primary)}.empty-state p{margin:0 0 2rem;color:var(--doc-text-secondary);font-size:1rem;max-width:400px;line-height:1.6}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172abf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{background:var(--doc-bg-primary);border-radius:var(--doc-radius-xl);box-shadow:var(--doc-shadow-xl);max-width:600px;width:90%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s cubic-bezier(.4,0,.2,1)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--doc-border);background:linear-gradient(135deg,var(--doc-bg-primary) 0%,var(--doc-bg-tertiary) 100%)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:700;color:var(--doc-text-primary)}.modal-close{background:var(--doc-bg-tertiary);border:none;font-size:1.5rem;cursor:pointer;color:var(--doc-text-secondary);padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--doc-radius-md);transition:all .2s;line-height:1}.modal-close:hover{background:var(--doc-error);color:#fff;transform:rotate(90deg)}.modal-body{padding:2rem;flex:1;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem 2rem;border-top:1px solid var(--doc-border);background:var(--doc-bg-tertiary)}.upload-section{margin-bottom:2rem;padding:3rem 2rem;border:2px dashed var(--doc-border);border-radius:var(--doc-radius-lg);background:var(--doc-bg-secondary);transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;text-align:center;position:relative;overflow:hidden}.upload-section:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(59,130,246,.1),transparent);transition:left .5s;pointer-events:none}.upload-section:hover:before{left:100%}.upload-section:hover{border-color:var(--doc-primary);background:var(--doc-primary-light);transform:translateY(-2px);box-shadow:var(--doc-shadow-md)}.upload-section.drag-active{border-color:var(--doc-primary);background:var(--doc-primary-light);transform:scale(1.02);box-shadow:var(--doc-shadow-lg)}.upload-section label{display:flex;flex-direction:column;align-items:center;width:100%;height:100%;cursor:pointer}.upload-label{display:block;margin-bottom:1rem;font-weight:600;color:var(--doc-text-primary);font-size:1rem;pointer-events:none}.file-input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:.01;cursor:pointer;z-index:2}.upload-hint{margin:0;color:var(--doc-text-secondary);font-size:.9375rem}.upload-files-list{margin-top:1rem;padding:1rem;background:var(--doc-bg-primary);border-radius:var(--doc-radius-md);max-height:250px;overflow-y:auto;text-align:left}.upload-file-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-bottom:1px solid var(--doc-border-light);border-radius:var(--doc-radius-sm);transition:background .2s}.upload-file-item:hover{background:var(--doc-bg-tertiary)}.upload-file-item:last-child{border-bottom:none}.file-size{color:var(--doc-text-secondary);font-size:.8125rem;font-weight:500}.upload-metadata{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--doc-border)}.upload-metadata h3{margin:0 0 1.25rem;font-size:1.125rem;font-weight:700;color:var(--doc-text-primary)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-size:.875rem;font-weight:600;color:var(--doc-text-primary)}.form-group input,.form-group textarea,.form-group select{padding:.75rem 1rem;border:1.5px solid var(--doc-border);border-radius:var(--doc-radius-md);font-size:.875rem;font-family:inherit;background:var(--doc-bg-primary);color:var(--doc-text-primary);transition:all .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--doc-primary);box-shadow:0 0 0 3px #3b82f61a}@media (max-width: 768px){.document-management-content{flex-direction:column}.document-management-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--doc-border);max-height:300px}.document-management-main{padding:1rem}.form-grid{grid-template-columns:1fr}.header-actions{width:100%;justify-content:space-between}.modal-content{width:95%;max-height:95vh}.modal-body{padding:1.5rem}}.document-management-sidebar::-webkit-scrollbar,.modal-body::-webkit-scrollbar,.upload-files-list::-webkit-scrollbar{width:8px}.document-management-sidebar::-webkit-scrollbar-track,.modal-body::-webkit-scrollbar-track,.upload-files-list::-webkit-scrollbar-track{background:var(--doc-bg-tertiary);border-radius:4px}.document-management-sidebar::-webkit-scrollbar-thumb,.modal-body::-webkit-scrollbar-thumb,.upload-files-list::-webkit-scrollbar-thumb{background:var(--doc-border);border-radius:4px}.document-management-sidebar::-webkit-scrollbar-thumb:hover,.modal-body::-webkit-scrollbar-thumb:hover,.upload-files-list::-webkit-scrollbar-thumb:hover{background:var(--doc-text-tertiary)}.workflows-page{padding:24px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.page-header h1{margin:0 0 8px;font-size:28px;color:#333}.page-header p{margin:0;color:#666;font-size:14px}.workflows-page-loading{display:flex;align-items:center;justify-content:center;height:400px}.error-message{padding:12px 16px;background:#ffebee;color:#c62828;border-radius:4px;margin-bottom:24px}.empty-state{text-align:center;padding:80px 24px}.empty-icon{font-size:64px;margin-bottom:16px}.empty-state h2{margin:0 0 8px;color:#333}.empty-state p{margin:0 0 24px;color:#666}.workflows-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.workflow-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .2s}.workflow-card:hover{box-shadow:0 4px 8px #00000026}.workflow-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.workflow-card-header h3{margin:0;font-size:18px;color:#333;flex:1}.workflow-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.workflow-status.active{background:#e8f5e9;color:#2e7d32}.workflow-status.inactive{background:#f5f5f5;color:#757575}.workflow-description{color:#666;font-size:14px;margin:0 0 16px;line-height:1.5}.workflow-meta{margin-bottom:16px;padding-top:16px;border-top:1px solid #e0e0e0}.workflow-meta-item{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px}.workflow-meta-item:last-child{margin-bottom:0}.meta-label{color:#999}.meta-value{color:#333;font-weight:500}.workflow-actions{display:flex;gap:8px;padding-top:16px;border-top:1px solid #e0e0e0}.btn{padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-sm{padding:6px 12px;font-size:13px}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.workflow-templates{padding:1.5rem;background:var(--surface);border-left:1px solid var(--border);width:350px;overflow-y:auto;height:100%}.templates-header{margin-bottom:1rem}.workflow-templates h3{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.templates-search{margin-bottom:.75rem}.search-input{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.875rem}.templates-description{font-size:.813rem;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.5}.templates-section{margin-bottom:2rem}.section-title{margin:0;font-size:.938rem;font-weight:600;color:var(--text-primary)}.category-filter{padding:.375rem .5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-size:.75rem;cursor:pointer}.templates-grid{display:flex;flex-direction:column;gap:1rem}.template-card{border:1px solid var(--border);border-radius:var(--radius);padding:1rem;transition:var(--transition);background:var(--surface)}.template-card:hover{box-shadow:var(--shadow-sm);border-color:var(--primary)}.template-card.library-template{background:var(--gray-50)}.template-header h4{margin:0;font-size:.938rem;font-weight:600;color:var(--primary);flex:1}.industry-badge{padding:.25rem .5rem;background:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);font-size:.688rem;font-weight:600;text-transform:uppercase}.template-description{font-size:.813rem;color:var(--text-secondary);margin:0 0 .75rem;line-height:1.4}.template-preview{margin-bottom:.75rem}.template-preview small{color:var(--text-secondary);font-size:.75rem}.template-category{margin-bottom:.75rem}.template-category small{color:var(--text-secondary);font-size:.75rem}.template-footer{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.template-version{color:var(--text-secondary);font-size:.75rem}.load-template-btn{flex:1;padding:.5rem .75rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.813rem;font-weight:500;cursor:pointer;transition:var(--transition)}.load-template-btn:hover{background:var(--primary-dark)}.loading-templates,.no-templates{padding:1rem;text-align:center;color:var(--text-secondary);font-size:.813rem}[data-theme=dark] .template-card.library-template{background:var(--gray-200)}.workflow-builder{display:flex;flex-direction:column;height:100vh;background:#f5f5f5}.workflow-builder-header{background:#fff;border-bottom:1px solid #e0e0e0;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000001a}.workflow-info{flex:1;display:flex;gap:16px;align-items:center}.workflow-name-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:16px;font-weight:600}.workflow-name-input:focus{outline:none;border-color:#1976d2}.workflow-description-input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;resize:none}.workflow-description-input:focus{outline:none;border-color:#1976d2}.workflow-actions{display:flex;gap:12px}.save-workflow-btn{padding:10px 24px;background:#1976d2;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.save-workflow-btn:hover:not(:disabled){background:#1565c0}.save-workflow-btn:disabled{background:#ccc;cursor:not-allowed}.workflow-builder-content{display:flex;flex:1;overflow:hidden}.workflow-canvas{flex:1;position:relative}.node-panel{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:16px;min-width:200px}.node-toolbar h4{margin:0 0 12px;font-size:14px;color:#333}.node-toolbar h4{margin:16px 0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#666;border-top:1px solid #e0e0e0;padding-top:12px}.node-toolbar h4:first-child{margin-top:0;border-top:none;padding-top:0}.add-node-btn,.delete-node-btn{display:block;width:100%;padding:10px;margin-bottom:6px;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:13px;text-align:left;transition:all .2s}.add-node-btn:hover{background:#e0e0e0;border-color:#1976d2}.flow-btn{border-left:3px solid #9c27b0}.flow-btn:hover{background:#f3e5f5;border-color:#9c27b0}.action-btn{border-left:3px solid #2196f3}.action-btn:hover{background:#e3f2fd;border-color:#2196f3}.auto-btn{border-left:3px solid #ff9800}.auto-btn:hover{background:#fff3e0;border-color:#ff9800}.delete-node-btn{background:#ffebee;border:1px solid #f44336;border-left:3px solid #f44336;color:#d32f2f;margin-top:12px}.delete-node-btn:hover{background:#ffcdd2}.properties-panel-toggle{position:absolute;bottom:20px;right:320px;z-index:1000}.toggle-btn{padding:10px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;font-size:14px;box-shadow:0 2px 4px #0000001a;transition:all .2s}.toggle-btn:hover{background:#f5f5f5;box-shadow:0 4px 8px #00000026}.workflow-builder-page{height:100vh;overflow:hidden}.workflow-builder-page-loading,.workflow-builder-page-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:20px}.workflow-builder-page-error h2{color:#f44336}.audit-logs-page{padding:2rem}.audit-filters{background:var(--card-bg);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--border-color)}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.filter-row:last-child{margin-bottom:0}.filter-group{display:flex;flex-direction:column}.filter-group label{font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text-secondary)}.filter-group input,.filter-group select{padding:.5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem}.filter-group input:disabled{background-color:var(--bg-secondary);cursor:not-allowed}.filter-actions{display:flex;align-items:flex-end}.audit-logs-table-container{background:var(--card-bg);border-radius:8px;overflow-x:auto;border:1px solid var(--border-color)}.audit-logs-table{width:100%;border-collapse:collapse}.audit-logs-table thead{background:var(--bg-secondary)}.audit-logs-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;color:var(--text-secondary);border-bottom:2px solid var(--border-color)}.audit-logs-table td{padding:1rem;border-bottom:1px solid var(--border-color)}.audit-logs-table tbody tr:hover{background:var(--bg-secondary)}.user-info{display:flex;flex-direction:column;gap:.25rem}.badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge-success{background:#d4edda;color:#155724}.badge-warning{background:#fff3cd;color:#856404}.badge-danger{background:#f8d7da;color:#721c24}.badge-info{background:#d1ecf1;color:#0c5460}.badge-secondary{background:#e2e3e5;color:#383d41}.metadata-details{cursor:pointer}.metadata-details summary{color:var(--primary);font-size:.875rem;-webkit-user-select:none;user-select:none}.metadata-details pre{margin-top:.5rem;padding:.5rem;background:var(--bg-secondary);border-radius:4px;font-size:.75rem;overflow-x:auto}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem}.page-info{font-size:.875rem;color:var(--text-secondary)}.text-muted{color:var(--text-secondary)}.document-generation{padding:20px;max-width:1200px;margin:0 auto}.tabs{display:flex;gap:10px;margin-bottom:30px;border-bottom:2px solid #e0e0e0}.tabs button{padding:12px 24px;border:none;background:none;cursor:pointer;font-size:16px;color:#666;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .3s}.tabs button:hover{color:#2196f3}.tabs button.active{color:#2196f3;border-bottom-color:#2196f3;font-weight:600}.generate-section,.templates-section,.jobs-section{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.form-group select,.form-group input,.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.form-group textarea{font-family:Courier New,monospace}.template-info{background:#f5f5f5;padding:20px;border-radius:4px;margin-bottom:20px}.template-info h3{margin:0 0 10px;color:#333}.template-type-badge{margin:10px 0 0;padding:8px 12px;background:#e3f2fd;border-left:4px solid #2196F3;border-radius:4px;color:#1976d2;font-size:14px}.document-name-input{font-size:16px;font-weight:500}.variables-list{margin-top:15px}.variables-list ul{list-style:none;padding:0;margin:10px 0 0}.variables-list li{padding:5px 0;font-family:Courier New,monospace;color:#2196f3}.input-data-section{margin-top:30px}.variables-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1rem}.variables-form .form-group{display:flex;flex-direction:column}.variables-form label{font-weight:500;margin-bottom:.5rem;color:#333}.variables-form label .required{color:#e74c3c}.variables-form input,.variables-form textarea{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .2s}.variables-form input:focus,.variables-form textarea:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.variables-form textarea{resize:vertical;min-height:100px}.form-hint{display:block;margin-top:.5rem;color:#666;font-size:12px;font-style:italic}.input-data-section h3{margin-bottom:20px;color:#333}.action-buttons{display:flex;gap:10px;margin-top:30px}.btn{padding:12px 24px;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:all .3s}.btn:disabled{opacity:.6;cursor:not-allowed}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.jobs-table{width:100%;border-collapse:collapse;margin-top:20px}.jobs-table th,.jobs-table td{padding:12px;text-align:left;border-bottom:1px solid #e0e0e0}.jobs-table th{background:#f5f5f5;font-weight:600;color:#333}.status-badge{font-weight:600;text-transform:uppercase;font-size:12px}.templates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.templates-header h2{margin:0;color:#333}.create-template-form{background:#f9f9f9;padding:30px;border-radius:8px;margin-bottom:30px;border:1px solid #e0e0e0}.create-template-form h3{margin-top:0;margin-bottom:20px;color:#333}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.template-definition-input{font-family:Courier New,monospace;font-size:13px;line-height:1.6}.extracted-variables{margin-top:15px;padding:15px;background:#e3f2fd;border-radius:4px;border-left:4px solid #2196F3}.extracted-variables strong{display:block;margin-bottom:10px;color:#1976d2}.variables-tags{display:flex;flex-wrap:wrap;gap:8px}.variable-tag{display:inline-block;padding:4px 12px;background:#fff;border:1px solid #2196F3;border-radius:4px;font-family:Courier New,monospace;font-size:12px;color:#1976d2}.form-actions{display:flex;gap:10px;margin-top:20px}.form-actions .btn{min-width:120px}code{background:#f5f5f5;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:12px;color:#d32f2f}.fields-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.fields-header label{margin-bottom:0}.btn-sm{padding:8px 16px;font-size:14px}.no-fields-message{padding:40px;text-align:center;background:#f9f9f9;border:2px dashed #ddd;border-radius:8px;color:#666}.no-fields-message p{margin:0}.fields-list{display:flex;flex-direction:column;gap:15px;margin-top:15px}.field-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:box-shadow .2s}.field-item:hover{box-shadow:0 2px 8px #0000001a}.field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #e0e0e0}.field-number{font-weight:600;color:#2196f3;font-size:14px}.field-actions{display:flex;gap:5px}.btn-icon{width:28px;height:28px;padding:0;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-icon:hover:not(:disabled){background:#f5f5f5;border-color:#2196f3}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-icon.btn-danger:hover:not(:disabled){background:#ffebee;border-color:#f44336;color:#f44336}.field-form{display:flex;flex-direction:column;gap:15px}.field-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px}.field-group{display:flex;flex-direction:column}.field-group label{font-size:13px;font-weight:500;margin-bottom:5px;color:#333}.field-group input,.field-group select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.field-group input.error{border-color:#f44336}.field-group input:focus,.field-group select:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f31a}.field-group small{font-size:11px;color:#666;margin-top:4px;font-family:Courier New,monospace}.checkbox-group{justify-content:center;padding-top:25px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.template-preview{margin-top:20px;padding:15px;background:#f5f5f5;border-radius:4px;border-left:4px solid #2196F3}.template-preview strong{display:block;margin-bottom:10px;color:#1976d2}.preview-content{background:#fff;padding:15px;border-radius:4px;font-family:Courier New,monospace;font-size:13px;line-height:1.6;white-space:pre-wrap;margin:0;border:1px solid #e0e0e0;color:#333}.generated-documents-section{background:#fff;padding:30px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.section-header{margin-bottom:25px}.section-header h3{margin:0 0 8px;color:#333;font-size:24px;font-weight:600}.section-description{color:#666;margin:0;font-size:14px}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state-icon{font-size:64px;margin-bottom:20px}.empty-state h4{margin:0 0 10px;color:#666;font-size:20px}.empty-state p{margin:0;color:#999}.generated-documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:20px}.generated-document-card{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:12px;padding:20px;transition:all .3s ease;display:flex;flex-direction:column}.generated-document-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:#2196f3}.document-card-header{display:flex;gap:15px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.document-icon{font-size:32px;flex-shrink:0}.document-info{flex:1;min-width:0}.document-title{margin:0 0 6px;color:#333;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-meta{margin:0;color:#666;font-size:13px}.document-card-actions{display:flex;gap:10px;margin-bottom:15px}.document-card-actions .btn{flex:1;padding:10px 16px;font-size:14px;border-radius:6px;transition:all .2s}.document-card-footer{margin-top:auto}.move-folder-select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s}.move-folder-select:hover{border-color:#2196f3}.move-folder-select:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a}.moving-indicator{display:block;margin-top:8px;color:#2196f3;font-size:13px;font-style:italic}.text-muted{color:#999}.error-text{color:#f44336;font-size:13px}@media (max-width: 768px){.field-row,.generated-documents-grid{grid-template-columns:1fr}.document-card-actions{flex-direction:column}.document-card-actions .btn{width:100%}}.enterprise-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-top:20px}.enterprise-section .fields-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.enterprise-badge{display:inline-block;padding:2px 8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border-radius:4px}.preview-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.preview-modal{background:#fff;border-radius:12px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.template-preview-modal{max-width:1000px;height:90vh}.preview-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e0e0e0}.preview-modal-header h3{margin:0;font-size:18px;color:#333}.preview-modal-header .btn-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.preview-modal-header .btn-close:hover{background:#f0f0f0}.preview-modal-body{flex:1;overflow:hidden;padding:0}.pdf-preview-iframe{width:100%;height:100%;border:none}.preview-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-top:1px solid #e0e0e0;gap:16px}.preview-hint{color:#666;font-style:italic}.create-template-form h3{display:flex;align-items:center;gap:12px}.editing-indicator{font-size:12px;color:#f59e0b;background:#fef3c7;padding:4px 8px;border-radius:4px}.template-card{padding:1.5rem;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .06));transition:var(--transition, all .2s ease);display:flex;flex-direction:column;gap:1rem}.template-card:hover{box-shadow:var(--shadow-md, 0 8px 20px rgba(0, 0, 0, .08));transform:translateY(-2px)}.template-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.template-name{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827);flex:1}.template-type-badge{padding:.25rem .75rem;background:var(--primary-light, #e0f2fe);color:var(--primary, #0369a1);border-radius:var(--radius-sm, 6px);font-size:.75rem;font-weight:600;text-transform:uppercase}.template-description{margin:0;color:var(--text-secondary, #4b5563);font-size:.875rem;line-height:1.5;flex:1}.template-meta{display:flex;flex-wrap:wrap;gap:1rem;padding-top:.75rem;border-top:1px solid var(--border, #e5e7eb)}.meta-item{display:flex;gap:.5rem;font-size:.875rem}.meta-label{color:var(--text-secondary, #6b7280)}.meta-value{color:var(--text-primary, #111827);font-weight:500}.template-actions{display:flex;flex-wrap:wrap;gap:.75rem;padding-top:.75rem;border-top:1px solid var(--border, #e5e7eb)}.btn-preview,.btn-use,.btn-edit,.btn-delete{flex:1;min-width:90px;padding:.65rem .9rem;border:1px solid var(--border, #d1d5db);border-radius:var(--radius, 8px);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition, all .2s ease)}.btn-preview{background:var(--surface, #fff);color:var(--text-primary, #111827)}.btn-preview:hover{background:#f3f4f6}.btn-use{background:var(--primary, #2563eb);color:#fff;border-color:var(--primary, #2563eb)}.btn-use:hover{background:var(--primary-dark, #1d4ed8)}.btn-edit{background:#f8fafc;color:#0f172a}.btn-edit:hover{background:#f1f5f9}.btn-delete{background:#fff5f5;color:#b91c1c;border-color:#fecaca}.btn-delete:hover{background:#fee2e2}.preview-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.preview-modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column}.modal-body{padding:0;flex:1;min-height:0;overflow:hidden}.modal-footer{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:1.5rem;border-top:1px solid var(--border)}.business-process-library{padding:20px;max-width:1400px;margin:0 auto}.page-header{margin-bottom:30px}.page-header h1{margin:0 0 10px;color:#333}.page-header p{color:#666;margin:0}.filters{display:flex;gap:20px;margin-bottom:30px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.filter-group{flex:1}.filter-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.filter-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.template-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;transition:all .3s;display:flex;flex-direction:column}.template-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.template-header{padding:20px;background:#f5f5f5;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:start}.template-header h3{margin:0;flex:1;color:#333}.industry-badge{padding:4px 12px;border-radius:12px;color:#fff;font-size:11px;font-weight:600;text-transform:uppercase}.template-body{padding:20px;flex:1}.category{color:#2196f3;font-weight:600;margin:0 0 10px;font-size:14px}.description{color:#666;margin:10px 0;line-height:1.6}.required-roles{margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.required-roles strong{display:block;margin-bottom:8px;color:#333;font-size:12px}.roles-list{display:flex;flex-wrap:wrap;gap:6px}.role-badge{padding:4px 8px;background:#e3f2fd;color:#1976d2;border-radius:4px;font-size:11px;font-weight:600}.usage-instructions{margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0}.usage-instructions strong{display:block;margin-bottom:8px;color:#333;font-size:12px}.usage-instructions pre{background:#f5f5f5;padding:10px;border-radius:4px;font-size:12px;color:#666;white-space:pre-wrap;margin:0}.template-footer{padding:15px 20px;background:#f9f9f9;border-top:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.version{color:#999;font-size:12px}.no-templates{grid-column:1 / -1;text-align:center;padding:60px 20px;color:#999}.modal-content{background:#fff;padding:30px;border-radius:8px;max-width:500px;width:90%;box-shadow:0 4px 20px #0000004d}.modal-content h2{margin:0 0 10px;color:#333}.modal-content p{color:#666;margin-bottom:20px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:all .3s}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.form-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.landing-page-new{min-height:100vh;background:#fff;color:#1a202c;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.landing-nav{position:sticky;top:0;z-index:1000;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.05);padding:1rem 0;transition:all .3s ease}.nav-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.nav-brand{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.25rem;color:#1a202c}.nav-logo{height:40px;width:auto}.nav-brand-name{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-menu{display:flex;gap:2rem;align-items:center;flex:1;justify-content:center}.nav-link{color:#4a5568;text-decoration:none;font-weight:500;font-size:.95rem;transition:color .2s ease;position:relative}.nav-link:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:linear-gradient(135deg,#667eea,#764ba2);transition:width .3s ease}.nav-link:hover{color:#667eea}.nav-link:hover:after{width:100%}.nav-actions{display:flex;gap:1rem;align-items:center}.btn-nav-secondary{padding:.625rem 1.25rem;background:transparent;color:#667eea;border:2px solid #667eea;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease}.btn-nav-secondary:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-nav-primary{padding:.625rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #667eea40}.btn-nav-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.hero-new{position:relative;padding:6rem 0 8rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;overflow:hidden;min-height:90vh;display:flex;align-items:center}.hero-background-new{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;pointer-events:none}.gradient-blob{position:absolute;border-radius:50%;filter:blur(120px);opacity:.2;animation:blobFloat 25s ease-in-out infinite;will-change:transform;transform-style:preserve-3d}.blob-1{width:400px;height:400px;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);top:-100px;left:-100px;animation-delay:0s}.blob-2{width:350px;height:350px;background:radial-gradient(circle,rgba(246,211,101,.25) 0%,transparent 70%);bottom:-80px;right:5%;animation-delay:8s}.blob-3{width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);top:50%;right:-80px;animation-delay:16s}@keyframes blobFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}.hero-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:1.2fr 1fr;gap:5rem;align-items:center;position:relative;z-index:1}.hero-content-new{max-width:700px}.hero-badge-new{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1.25rem;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:50px;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;margin-bottom:2rem;animation:fadeInUp .6s ease}.badge-icon{font-size:1rem}.hero-title-new{font-size:3.5rem;font-weight:900;line-height:1.1;margin-bottom:1.5rem;letter-spacing:-.03em;animation:fadeInUp .8s ease}.gradient-text{background:linear-gradient(120deg,#f6d365,#fda085);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;display:block}.hero-description-new{font-size:1.25rem;line-height:1.7;color:#fffffff2;margin-bottom:2.5rem;max-width:600px;animation:fadeInUp 1s ease}.hero-cta-new{display:flex;gap:1rem;margin-bottom:4rem;flex-wrap:wrap;animation:fadeInUp 1.2s ease}.btn-hero-primary{padding:1.125rem 2.5rem;background:#fff;color:#667eea;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #0003;display:flex;align-items:center;gap:.5rem}.btn-hero-primary:hover{transform:translateY(-3px);box-shadow:0 12px 32px #0000004d}.btn-icon{transition:transform .3s ease}.btn-hero-primary:hover .btn-icon{transform:translate(4px)}.btn-hero-secondary{padding:1.125rem 2.5rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.btn-hero-secondary:hover{background:#fff3;transform:translateY(-3px);box-shadow:0 8px 24px #0003}.play-icon{font-size:.8rem}.hero-stats-new{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem;padding-top:3rem;border-top:1px solid rgba(255,255,255,.2);animation:fadeInUp 1.4s ease}.hero-stat-item{display:flex;align-items:center;gap:.75rem}.stat-icon{font-size:1.5rem}.stat-content{display:flex;flex-direction:column}.stat-value-new{font-size:1.75rem;font-weight:900;line-height:1.2}.stat-label-new{font-size:.875rem;opacity:.9;font-weight:500}.hero-visual{position:relative;height:600px;display:flex;align-items:center;justify-content:center;min-height:600px;padding:2rem}.hero-visual-container{position:relative;width:100%;height:100%;max-width:600px;max-height:600px;display:flex;align-items:center;justify-content:center}.visual-center-hub{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:140px;height:140px;background:#fffffffa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 12px 40px #0003,0 0 0 8px #ffffff1a;z-index:10;animation:hubPulse 3s ease-in-out infinite;border:3px solid rgba(102,126,234,.2);will-change:transform;transform-style:preserve-3d}@keyframes hubPulse{0%,to{transform:translate(-50%,-50%) scale(1);box-shadow:0 12px 40px #0003,0 0 0 8px #ffffff1a}50%{transform:translate(-50%,-50%) scale(1.05);box-shadow:0 16px 50px #667eea4d,0 0 0 12px #667eea26}}.hub-icon{font-size:2.5rem;margin-bottom:.5rem;animation:rotateIcon 8s linear infinite;will-change:transform;transform-style:preserve-3d}@keyframes rotateIcon{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hub-text{font-size:.75rem;font-weight:700;color:#667eea;text-align:center;text-transform:uppercase;letter-spacing:1px}.feature-orb{position:absolute;width:180px;z-index:5;animation:orbFloat 6s ease-in-out infinite;will-change:transform;transform-style:preserve-3d}.orb-1{top:10%;left:10%;animation-delay:0s}.orb-2{top:10%;right:10%;animation-delay:1.5s}.orb-3{bottom:10%;left:10%;animation-delay:3s}.orb-4{bottom:10%;right:10%;animation-delay:4.5s}@keyframes orbFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-15px) scale(1.02)}}.orb-content{background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:1.5rem;box-shadow:0 10px 35px #00000026,0 0 0 1px #ffffff80;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),border-color .3s cubic-bezier(.4,0,.2,1);border:2px solid rgba(102,126,234,.1);text-align:center;will-change:transform}.feature-orb:hover .orb-content{transform:translateY(-5px) scale(1.05);box-shadow:0 16px 45px #667eea40,0 0 0 2px #667eea33;border-color:#667eea4d}.orb-icon{font-size:2.5rem;margin-bottom:.75rem;display:block}.orb-title{font-size:1rem;font-weight:700;color:#1a202c;margin-bottom:.5rem;line-height:1.3}.orb-description{font-size:.8rem;color:#667eea;font-weight:500;line-height:1.4}.orb-connection{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:2px;height:2px;background:#667eea4d;border-radius:50%;animation:connectionPulse 2s ease-in-out infinite;will-change:transform,opacity}@keyframes connectionPulse{0%,to{opacity:.3;transform:translate(-50%,-50%) scale(1)}50%{opacity:.6;transform:translate(-50%,-50%) scale(1.5)}}.connection-lines{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;opacity:.4;pointer-events:none}.connection-line{stroke-dasharray:5,5;animation:lineFlow 3s linear infinite;will-change:stroke-dashoffset}@keyframes lineFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:20}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.problems-section{padding:8rem 0;background:linear-gradient(to bottom,#f8f9fa,#fff)}.section-container{max-width:1400px;margin:0 auto;padding:0 2rem}.section-header-new{text-align:center;margin-bottom:4rem}.section-title-new{font-size:3rem;font-weight:800;color:#1a202c;margin-bottom:1rem;letter-spacing:-.02em;line-height:1.2}.section-subtitle-new{font-size:1.25rem;color:#718096;max-width:700px;margin:0 auto;line-height:1.6}.problems-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.problem-card{background:#fff;padding:2.5rem;border-radius:16px;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000a}.problem-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #0000001f;border-color:#667eea}.problem-icon{font-size:3rem;margin-bottom:1rem}.problem-title{font-size:1.5rem;font-weight:700;color:#1a202c;margin-bottom:1rem}.problem-description{color:#4a5568;line-height:1.7;margin-bottom:1.5rem;font-size:1rem}.solution-badge{padding:1rem;background:linear-gradient(135deg,#667eea15,#764ba215);border-left:4px solid #667eea;border-radius:8px;display:flex;flex-direction:column;gap:.5rem}.solution-label{font-size:.75rem;font-weight:700;color:#667eea;text-transform:uppercase;letter-spacing:.5px}.solution-text{font-size:.95rem;color:#1a202c;font-weight:500}.solutions-section{padding:8rem 0;background:#fff}.solutions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.solution-card{background:linear-gradient(135deg,#f8f9fa,#fff);padding:3rem 2.5rem;border-radius:20px;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.solution-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.solution-card:hover{transform:translateY(-8px);box-shadow:0 20px 48px #0000001f;border-color:#667eea}.solution-card:hover:before{transform:scaleX(1)}.solution-icon-large{font-size:4rem;margin-bottom:1.5rem}.solution-title{font-size:1.75rem;font-weight:700;color:#1a202c;margin-bottom:1rem}.solution-description{color:#4a5568;line-height:1.7;margin-bottom:1.5rem;font-size:1rem}.solution-features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.solution-features-list li{display:flex;align-items:center;gap:.75rem;color:#1a202c;font-weight:500}.check-icon{color:#16a34a;font-weight:700;font-size:1.2rem}.features-section-new{padding:8rem 0;background:linear-gradient(to bottom,#fff,#f8f9fa)}.feature-showcase{margin-bottom:4rem}.feature-tabs{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap;justify-content:center}.feature-tab{padding:1rem 1.5rem;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.75rem;font-weight:600;color:#4a5568}.feature-tab:hover{border-color:#667eea;color:#667eea}.feature-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent;box-shadow:0 4px 12px #667eea4d}.tab-icon{font-size:1.5rem}.feature-content{position:relative;min-height:300px}.feature-panel{position:absolute;top:0;left:0;right:0;opacity:0;transform:translateY(20px);transition:all .4s ease;pointer-events:none}.feature-panel.active{position:relative;opacity:1;transform:translateY(0);pointer-events:all}.feature-panel-content{background:#fff;padding:3rem;border-radius:20px;box-shadow:0 8px 32px #00000014;border:1px solid #e5e7eb}.feature-panel-title{font-size:2rem;font-weight:700;color:#1a202c;margin-bottom:1rem}.feature-panel-description{font-size:1.125rem;color:#4a5568;line-height:1.7;margin-bottom:2rem}.feature-benefits{display:flex;flex-wrap:wrap;gap:1rem}.benefit-tag{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#667eea15,#764ba215);border-radius:8px;font-weight:600;color:#667eea;font-size:.95rem}.benefit-icon{color:#16a34a;font-weight:700}.all-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.feature-card-new{background:#fff;padding:2.5rem;border-radius:16px;border:1px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.feature-card-new:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.feature-card-new:hover{transform:translateY(-6px);box-shadow:0 20px 48px #0000001f;border-color:#667eea}.feature-card-new:hover:before{transform:scaleX(1)}.feature-card-icon{font-size:3.5rem;margin-bottom:1.5rem}.feature-card-title{font-size:1.5rem;font-weight:700;color:#1a202c;margin-bottom:1rem}.feature-card-description{color:#4a5568;line-height:1.7;font-size:1rem}.benefits-section-new{padding:8rem 0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.benefits-section-new .section-title-new,.benefits-section-new .section-subtitle-new{color:#fff}.benefits-grid-new{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.benefit-card-new{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);text-align:center;padding:3rem 2rem;border-radius:20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.benefit-card-new:hover{transform:translateY(-8px);background:#ffffff26;box-shadow:0 16px 40px #0003}.benefit-icon-new{font-size:3.5rem;margin-bottom:1.5rem}.benefit-stat-new{display:flex;flex-direction:column;align-items:center;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.2)}.benefit-stat-value{font-size:3.5rem;font-weight:900;margin-bottom:.5rem;line-height:1}.benefit-stat-label{font-size:.875rem;opacity:.9;text-transform:uppercase;letter-spacing:1px;font-weight:600}.benefit-title-new{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:#fff}.benefit-description-new{color:#ffffffe6;line-height:1.7;font-size:1rem}.integrations-section-new{padding:8rem 0;background:#fff}.integrations-grid-new{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem}.integration-card-new{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1.5rem;background:#f8f9fa;border-radius:16px;border:1px solid #e5e7eb;transition:all .3s ease}.integration-card-new:hover{transform:translateY(-6px);box-shadow:0 12px 32px #0000001a;border-color:#667eea;background:#fff}.integration-logo-wrapper{width:80px;height:80px;display:flex;align-items:center;justify-content:center}.integration-logo-new{width:100%;height:100%;object-fit:contain}.integration-name-new{font-size:.95rem;font-weight:600;color:#1a202c;text-align:center}.testimonials-section{padding:8rem 0;background:linear-gradient(to bottom,#f8f9fa,#fff)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.testimonial-card{background:#fff;padding:2.5rem;border-radius:20px;border:1px solid #e5e7eb;box-shadow:0 4px 16px #0000000f;transition:all .3s ease}.testimonial-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px #0000001f}.testimonial-rating{margin-bottom:1.5rem}.star{color:#fbbf24;font-size:1.25rem}.testimonial-quote{font-size:1.125rem;line-height:1.7;color:#1a202c;margin-bottom:2rem;font-style:italic}.testimonial-author{display:flex;align-items:center;gap:1rem}.author-info{flex:1}.author-name{font-weight:700;color:#1a202c;margin-bottom:.25rem}.author-role{font-size:.9rem;color:#667eea;margin-bottom:.25rem}.author-company{font-size:.875rem;color:#718096}.pricing-section-new{padding:8rem 0;background:#fff}.pricing-controls{display:flex;justify-content:center;align-items:center;gap:2rem;margin-top:2rem;flex-wrap:wrap}.currency-selector-new{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:#f8f9fa;border-radius:8px}.currency-selector-new label{font-weight:600;color:#1a202c;font-size:.9rem}.currency-selector-new select{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;background:#fff;font-size:.9rem;cursor:pointer;min-width:150px}.billing-toggle-new{display:flex;background:#f8f9fa;border-radius:12px;padding:.5rem;gap:.5rem;box-shadow:0 2px 8px #0000000d}.toggle-btn-new{flex:1;padding:.75rem 1.5rem;border:none;background:transparent;border-radius:8px;cursor:pointer;font-weight:600;color:#4a5568;transition:all .3s;position:relative;display:flex;flex-direction:column;align-items:center;gap:.25rem}.toggle-btn-new.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.discount-badge-new{font-size:.75rem;font-weight:700;opacity:.9}.pricing-grid-new{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-top:4rem;max-width:1200px;margin-left:auto;margin-right:auto}.pricing-card-new{background:#fff;border-radius:20px;padding:3rem 2.5rem;border:2px solid #e5e7eb;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;display:flex;flex-direction:column;box-shadow:0 4px 16px #0000000f}.pricing-card-new:hover{transform:translateY(-8px);box-shadow:0 20px 48px #0000001f;border-color:#667eea}.pricing-card-new.popular{border-color:#667eea;box-shadow:0 12px 32px #667eea33;transform:scale(1.05)}.popular-badge-new{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1.5rem;border-radius:9999px;font-size:.875rem;font-weight:700;box-shadow:0 4px 12px #667eea4d}.plan-header-new{text-align:center;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid #e5e7eb}.plan-name{font-size:1.75rem;font-weight:700;color:#1a202c;margin-bottom:1.5rem}.plan-price-new{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem}.price-amount-new{font-size:3rem;font-weight:900;color:#667eea;line-height:1}.price-period-new{font-size:1rem;color:#718096;font-weight:500}.price-per-user-new{font-size:.875rem;color:#718096;margin-top:.25rem}.trial-badge-new{display:inline-block;background:#dcfce7;color:#16a34a;padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:600;margin-top:.5rem}.plan-description-new{color:#4a5568;line-height:1.6;margin-bottom:2rem;text-align:center;min-height:3rem;font-size:1rem}.plan-features-new{flex:1;margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem}.plan-feature-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 0}.feature-icon-small{font-size:1.25rem}.feature-text{color:#1a202c;font-weight:500;font-size:.95rem}.btn-select-plan-new{width:100%;padding:1.125rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #667eea40}.btn-select-plan-new:hover{transform:translateY(-2px);box-shadow:0 8px 24px #667eea66}.pricing-footer-new{text-align:center;margin-top:4rem;padding-top:3rem;border-top:1px solid #e5e7eb}.btn-compare-new{padding:.875rem 2rem;background:transparent;color:#667eea;border:2px solid #667eea;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.btn-compare-new:hover{background:#667eea;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.loading-plans-new,.no-plans-new{text-align:center;padding:4rem 2rem;color:#718096;font-size:1.125rem}.no-plans-new p{margin-bottom:1.5rem}.cta-section-new{padding:8rem 0;background:linear-gradient(135deg,#1a202c,#2d3748);color:#fff}.cta-content-new{text-align:center;max-width:800px;margin:0 auto}.cta-title-new{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;color:#fff;letter-spacing:-.02em;line-height:1.2}.cta-subtitle-new{font-size:1.25rem;color:#ffffffe6;margin-bottom:2.5rem;line-height:1.7}.cta-buttons-new{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:3rem}.btn-cta-primary{padding:1.25rem 2.5rem;background:#fff;color:#667eea;border:none;border-radius:12px;font-size:1.15rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #0003}.btn-cta-primary:hover{transform:translateY(-3px);box-shadow:0 12px 32px #0000004d}.btn-cta-secondary{padding:1.25rem 2.5rem;background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:12px;font-size:1.15rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-cta-secondary:hover{background:#ffffff1a;border-color:#ffffff80;transform:translateY(-3px)}.cta-trust-badges{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;padding-top:3rem;border-top:1px solid rgba(255,255,255,.1)}.trust-badge{display:flex;align-items:center;gap:.5rem;color:#ffffffe6;font-size:.95rem}.trust-icon{font-size:1.25rem}.landing-footer-new{background:#1a202c;color:#fff;padding:5rem 0 2rem}.footer-container{max-width:1400px;margin:0 auto;padding:0 2rem}.footer-content-new{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}.footer-brand{max-width:300px}.footer-logo-new{height:40px;width:auto;margin-bottom:1rem}.footer-brand-name{font-size:1.25rem;font-weight:700;margin-bottom:.75rem;color:#fff}.footer-tagline-new{font-size:.95rem;color:#a0aec0;margin-bottom:.5rem;font-weight:600}.footer-description-new{font-size:.9rem;color:#718096;line-height:1.6;margin-top:.5rem}.footer-column{display:flex;flex-direction:column}.footer-heading{font-size:1rem;font-weight:700;margin-bottom:1.25rem;color:#fff}.footer-links-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.footer-links-list li a{color:#a0aec0;text-decoration:none;transition:color .3s;font-size:.95rem}.footer-links-list li a:hover{color:#fff}.footer-bottom-new{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;border-top:1px solid #4a5568;color:#a0aec0;flex-wrap:wrap;gap:1rem}.footer-social{display:flex;gap:1.5rem}.social-link{color:#a0aec0;text-decoration:none;font-size:.9rem;transition:color .3s}.social-link:hover{color:#fff}.modal-overlay-new{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:2rem}.modal-content-new{background:#fff;border-radius:20px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header-new{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:1px solid #e5e7eb}.modal-header-new h2{font-size:1.75rem;font-weight:700;color:#1a202c;margin:0}.modal-close-new{background:none;border:none;font-size:2rem;color:#718096;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.modal-close-new:hover{background:#f7fafc;color:#1a202c}.enquiry-form-new{padding:2rem}.form-group-new{margin-bottom:1.5rem}.form-group-new label{display:block;font-weight:600;color:#1a202c;margin-bottom:.5rem;font-size:.95rem}.form-group-new input,.form-group-new textarea{width:100%;padding:.875rem;border:2px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:all .2s;font-family:inherit}.form-group-new input:focus,.form-group-new textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-actions-new{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.btn-primary-new,.btn-secondary-new{padding:.875rem 1.75rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;border:none}.btn-primary-new{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea40}.btn-primary-new:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.btn-secondary-new{background:#f8f9fa;color:#4a5568;border:2px solid #e5e7eb}.btn-secondary-new:hover{background:#e5e7eb}@media (max-width: 1024px){.hero-container{grid-template-columns:1fr;gap:3rem}.hero-visual{height:500px;min-height:500px}.hero-visual-container{max-width:500px;max-height:500px}.visual-center-hub{width:120px;height:120px}.hub-icon{font-size:2rem}.hub-text{font-size:.7rem}.feature-orb{width:160px}.orb-content{padding:1.25rem}.orb-icon{font-size:2rem}.orb-title{font-size:.9rem}.orb-description{font-size:.75rem}.section-title-new{font-size:2.5rem}.footer-content-new{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.nav-menu{display:none}.nav-container{padding:0 1rem}.hero-new{padding:4rem 0 6rem;min-height:auto}.hero-title-new{font-size:2.5rem}.hero-description-new{font-size:1.1rem}.hero-stats-new{grid-template-columns:repeat(2,1fr);gap:1rem}.hero-visual{height:400px;margin-top:2rem;padding:1rem}.hero-visual-container{max-width:400px;max-height:400px}.visual-center-hub{width:100px;height:100px}.hub-icon{font-size:1.75rem;margin-bottom:.25rem}.hub-text{font-size:.65rem}.feature-orb{width:140px}.orb-content{padding:1rem}.orb-icon{font-size:1.75rem;margin-bottom:.5rem}.orb-title{font-size:.85rem;margin-bottom:.25rem}.orb-description{font-size:.7rem}.connection-lines{opacity:.2}.section-title-new{font-size:2rem}.section-subtitle-new{font-size:1.1rem}.problems-grid,.solutions-grid,.all-features-grid,.benefits-grid-new,.testimonials-grid,.pricing-grid-new{grid-template-columns:1fr}.feature-tabs{flex-direction:column}.feature-tab{width:100%}.pricing-controls{flex-direction:column;align-items:stretch}.currency-selector-new{width:100%}.currency-selector-new select{flex:1}.cta-title-new{font-size:2.5rem}.footer-content-new{grid-template-columns:1fr;gap:2rem}.footer-bottom-new{flex-direction:column;text-align:center}.problems-section,.solutions-section,.features-section-new,.benefits-section-new,.integrations-section-new,.testimonials-section,.pricing-section-new,.cta-section-new{padding:4rem 0}}@media (max-width: 480px){.hero-title-new{font-size:2rem}.hero-description-new{font-size:1rem}.hero-cta-new{flex-direction:column}.btn-hero-primary,.btn-hero-secondary{width:100%}.section-title-new{font-size:1.75rem}.cta-title-new{font-size:2rem}.modal-overlay-new{padding:.5rem;align-items:flex-end}.modal-content-new{max-width:100%;border-radius:20px 20px 0 0}.form-actions-new{flex-direction:column}.form-actions-new button,.phone-input-form{width:100%}.phone-input-form .phone-input-container{border-color:#e5e7eb}.phone-input-form .phone-input-container:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.hero-visual{height:350px;padding:.5rem}.hero-visual-container{max-width:100%;max-height:350px}.visual-center-hub{width:80px;height:80px}.hub-icon{font-size:1.5rem;margin-bottom:.25rem}.hub-text{font-size:.6rem;padding:0 .25rem}.feature-orb{width:120px}.orb-1{top:5%;left:5%}.orb-2{top:5%;right:5%}.orb-3{bottom:5%;left:5%}.orb-4{bottom:5%;right:5%}.orb-content{padding:.875rem}.orb-icon{font-size:1.5rem;margin-bottom:.5rem}.orb-title{font-size:.8rem;margin-bottom:.25rem}.orb-description{font-size:.65rem}.connection-lines{display:none}.hero-stats-new{grid-template-columns:1fr;gap:1rem}}.hero-value-props{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.value-prop-item{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:500;background:#ffffff1a;padding:.5rem 1rem;border-radius:50px}.value-icon{color:#4ade80;font-weight:700}.hero-no-cc{margin-top:1rem;font-size:.9rem;opacity:.9}.section-badge{display:inline-block;background:linear-gradient(135deg,#667eea15,#764ba215);color:#667eea;padding:.5rem 1.25rem;border-radius:50px;font-size:.8rem;font-weight:700;letter-spacing:1px;margin-bottom:1rem;border:1px solid rgba(102,126,234,.2)}.ai-section-new{padding:8rem 0;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff}.ai-section-new .section-title-new,.ai-section-new .section-subtitle-new{color:#fff}.ai-section-new .section-badge{background:#ffffff1a;color:#a5b4fc;border-color:#a5b4fc4d}.ai-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem}.ai-feature-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:2.5rem;transition:all .3s ease}.ai-feature-card:hover{transform:translateY(-8px);background:#ffffff1a;border-color:#a5b4fc66;box-shadow:0 20px 40px #0000004d}.ai-feature-icon{font-size:3rem;margin-bottom:1.5rem}.ai-feature-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:#fff}.ai-feature-description{color:#fffc;line-height:1.7;margin-bottom:1.5rem}.ai-feature-benefits{display:flex;flex-wrap:wrap;gap:.5rem}.ai-benefit-tag{background:#a5b4fc33;color:#a5b4fc;padding:.375rem .875rem;border-radius:50px;font-size:.8rem;font-weight:600}.ai-cta-container{text-align:center;margin-top:3rem}.btn-ai-demo{padding:1rem 2.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #667eea66}.btn-ai-demo:hover{transform:translateY(-3px);box-shadow:0 8px 30px #667eea80}.nocode-section-new{padding:8rem 0;background:linear-gradient(to bottom,#f8f9fa,#fff)}.nocode-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem}.nocode-feature-card{background:#fff;border:2px solid #e5e7eb;border-radius:20px;padding:2.5rem;transition:all .3s ease;position:relative;overflow:hidden}.nocode-feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.nocode-feature-card:hover{transform:translateY(-8px);box-shadow:0 20px 48px #0000001f;border-color:#667eea}.nocode-feature-card:hover:before{transform:scaleX(1)}.nocode-feature-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.nocode-feature-icon{font-size:2.5rem}.nocode-feature-title{font-size:1.35rem;font-weight:700;color:#1a202c}.nocode-feature-description{color:#4a5568;line-height:1.7;margin-bottom:1.5rem}.nocode-feature-benefits{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.nocode-feature-benefits li{display:flex;align-items:center;gap:.75rem;color:#1a202c;font-weight:500}.benefit-check{color:#16a34a;font-weight:700}.nocode-highlight{display:flex;justify-content:center;gap:4rem;margin-top:4rem;padding-top:4rem;border-top:1px solid #e5e7eb;flex-wrap:wrap}.highlight-stat{text-align:center}.highlight-number{display:block;font-size:4rem;font-weight:900;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.highlight-label{display:block;margin-top:.5rem;color:#4a5568;font-weight:600}.collab-section-new{padding:8rem 0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.collab-section-new .section-title-new,.collab-section-new .section-subtitle-new{color:#fff}.collab-section-new .section-badge{background:#ffffff26;color:#fff;border-color:#ffffff4d}.collab-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem}.collab-feature-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:2.5rem;text-align:center;transition:all .3s ease}.collab-feature-card:hover{transform:translateY(-8px);background:#ffffff26;box-shadow:0 20px 40px #0003}.collab-feature-icon{font-size:3.5rem;margin-bottom:1.5rem}.collab-feature-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:#fff}.collab-feature-description{color:#ffffffe6;line-height:1.7;margin-bottom:1.5rem}.collab-feature-benefits{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}.collab-benefit-pill{background:#fff3;color:#fff;padding:.375rem .875rem;border-radius:50px;font-size:.8rem;font-weight:600}.security-section-new{padding:8rem 0;background:#fff}.security-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-top:3rem}.security-feature-card{display:flex;gap:1.5rem;padding:2rem;background:#f8f9fa;border-radius:16px;border:1px solid #e5e7eb;transition:all .3s ease}.security-feature-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px #0000001a;border-color:#667eea;background:#fff}.security-feature-icon{font-size:3rem;flex-shrink:0}.security-feature-content{flex:1}.security-feature-title{font-size:1.35rem;font-weight:700;color:#1a202c;margin-bottom:.75rem}.security-feature-description{color:#4a5568;line-height:1.6;margin-bottom:1rem}.security-feature-benefits{display:flex;flex-wrap:wrap;gap:.5rem}.security-benefit-tag{background:linear-gradient(135deg,#667eea15,#764ba215);color:#667eea;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600}.security-badges{display:flex;justify-content:center;gap:3rem;margin-top:4rem;padding-top:4rem;border-top:1px solid #e5e7eb;flex-wrap:wrap}.security-badge-item{display:flex;flex-direction:column;align-items:center;gap:.75rem}.badge-icon-large{font-size:3rem}.security-badge-item .badge-text{font-weight:700;color:#1a202c;font-size:.9rem}.cta-features-list{display:flex;justify-content:center;gap:2rem;margin-bottom:2.5rem;flex-wrap:wrap}.cta-feature-item{display:flex;align-items:center;gap:.5rem;color:#ffffffe6}.cta-check{color:#4ade80;font-weight:700}.btn-arrow{margin-left:.5rem;transition:transform .3s ease}.btn-cta-primary:hover .btn-arrow{transform:translate(4px)}@media (max-width: 768px){.hero-value-props{justify-content:center}.ai-features-grid,.nocode-features-grid,.collab-features-grid,.security-features-grid{grid-template-columns:1fr}.nocode-highlight{gap:2rem}.highlight-number{font-size:3rem}.security-badges{gap:2rem}.security-feature-card{flex-direction:column;text-align:center}.cta-features-list{flex-direction:column;align-items:center;gap:1rem}.ai-section-new,.nocode-section-new,.collab-section-new,.security-section-new{padding:4rem 0}}html{scroll-behavior:smooth}.application-monitoring{padding:2rem;max-width:1400px;margin:0 auto}.monitoring-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border)}.monitoring-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.monitoring-subtitle{margin:0;font-size:.938rem;color:var(--text-secondary)}.monitoring-controls{display:flex;align-items:center;gap:1rem}.auto-refresh-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.938rem;color:var(--text-primary)}.refresh-interval-select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.875rem;cursor:pointer}.btn-refresh{padding:.5rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.938rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-refresh:hover:not(:disabled){background:var(--primary-dark)}.btn-refresh:disabled{opacity:.5;cursor:not-allowed}.health-status-section,.metrics-section,.performance-section{margin-bottom:2rem}.health-status-section h3,.metrics-section h3,.performance-section h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.health-card{padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.health-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.health-component{font-weight:500;color:var(--text-primary);text-transform:capitalize}.health-status{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.health-status.healthy{background:#10b981;color:#fff}.health-status.unhealthy{background:#ef4444;color:#fff}.health-status.warning{background:#f59e0b;color:#fff}.health-status.unknown{background:var(--gray-300);color:var(--text-primary)}.health-details{display:flex;flex-direction:column;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--border)}.health-detail-item{display:flex;justify-content:space-between;font-size:.875rem}.detail-key{color:var(--text-secondary)}.detail-value{color:var(--text-primary);font-weight:500}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.metric-card{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;transition:var(--transition)}.metric-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metric-value{font-size:2rem;font-weight:700;color:var(--primary);margin-bottom:.5rem}.metric-label{font-size:.875rem;color:var(--text-secondary)}.performance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.performance-card{display:flex;gap:1rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.performance-icon{font-size:2rem;flex-shrink:0}.performance-content{flex:1}.performance-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.5rem}.performance-value{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.performance-note{font-size:.75rem;color:var(--text-secondary)}.no-data{padding:4rem;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.no-data p{margin:0;color:var(--text-secondary);font-size:1rem}[data-theme=dark] .health-card,[data-theme=dark] .metric-card,[data-theme=dark] .performance-card{background:var(--surface);border-color:var(--border)}.application-monitoring-page{min-height:100vh}.log-viewer{padding:2rem;max-width:1400px;margin:0 auto}.log-viewer-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border)}.log-viewer-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.log-viewer-subtitle{margin:0;font-size:.938rem;color:var(--text-secondary)}.log-viewer-controls{display:flex;align-items:center;gap:1rem}.log-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.search-input-group{display:flex;gap:.5rem}.search-input{padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem;min-width:300px}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.btn-search{padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.938rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-search:hover{background:var(--primary-dark)}.level-select,.lines-select{padding:.75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem;cursor:pointer}.log-stats{display:flex;gap:2rem;margin-bottom:1rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius)}.stat-item{display:flex;gap:.5rem;align-items:center}.stat-value{font-size:.938rem;font-weight:600;color:var(--text-primary)}.stat-value.error{color:#ef4444}.stat-value.warn{color:#f59e0b}.log-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;max-height:600px;overflow-y:auto}.log-lines{display:flex;flex-direction:column}.log-line{display:grid;grid-template-columns:180px 80px 250px 1fr;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);font-family:Courier New,monospace;font-size:.813rem;transition:var(--transition)}.log-line:hover{background:var(--gray-50)}.log-line:last-child{border-bottom:none}.log-timestamp{color:var(--text-secondary)}.log-level{font-weight:600;text-transform:uppercase}.log-level-error{color:#ef4444}.log-level-warn{color:#f59e0b}.log-level-info{color:#3b82f6}.log-level-debug{color:var(--text-secondary)}.log-level-default{color:var(--text-primary)}.log-level.log-level-error{background:#ef44441a;padding:.25rem .5rem;border-radius:var(--radius-sm)}.log-level.log-level-warn{background:#f59e0b1a;padding:.25rem .5rem;border-radius:var(--radius-sm)}.log-source{color:var(--text-secondary);font-size:.75rem}.log-message{color:var(--text-primary)}.log-line.log-level-error{background:#ef44440d}.log-line.log-level-warn{background:#f59e0b0d}.no-logs{padding:4rem;text-align:center;color:var(--text-secondary)}[data-theme=dark] .log-stats,[data-theme=dark] .log-line:hover{background:var(--gray-200)}.log-viewer-page{min-height:100vh}.health-checks-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.overall-status{margin-bottom:2rem}.status-summary{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-radius:var(--radius-lg);font-size:1.125rem;font-weight:600}.status-summary.healthy{background:#10b9811a;color:#10b981;border:2px solid #10b981}.status-summary.warning{background:#f59e0b1a;color:#f59e0b;border:2px solid #f59e0b}.summary-icon{font-size:1.5rem}.health-components-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.health-component-card{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition)}.health-component-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.health-component-header{margin-bottom:1rem}.health-component-info{display:flex;align-items:center;gap:1rem}.health-icon{font-size:2rem;flex-shrink:0}.health-component-name{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary);text-transform:capitalize}.health-status-badge{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.health-status-badge.healthy{background:#10b981;color:#fff}.health-status-badge.unhealthy{background:#ef4444;color:#fff}.health-status-badge.warning{background:#f59e0b;color:#fff}.health-status-badge.unknown{background:var(--gray-300);color:var(--text-primary)}.health-component-details{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;border-top:1px solid var(--border)}.health-detail-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;font-size:.875rem}.detail-label{color:var(--text-secondary);font-weight:500;flex-shrink:0}.detail-value{color:var(--text-primary);text-align:right;word-break:break-word}.no-health-data{padding:4rem;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.no-health-data p{margin:0;color:var(--text-secondary);font-size:1rem}[data-theme=dark] .health-component-card{background:var(--surface);border-color:var(--border)}.health-checks-page{min-height:100vh}.security-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border)}.dashboard-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.dashboard-subtitle{margin:0;font-size:.938rem;color:var(--text-secondary)}.dashboard-controls{display:flex;align-items:center;gap:1rem}.time-range-select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem;cursor:pointer}.mfa-section,.ip-whitelist-section,.lockout-section,.security-events-section{margin-bottom:2rem}.mfa-section h3,.ip-whitelist-section h3,.lockout-section h3,.security-events-section h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.mfa-stats-grid,.ip-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{display:flex;gap:1rem;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{font-size:2rem;flex-shrink:0}.stat-value{font-size:2rem;font-weight:700;color:var(--primary);line-height:1;margin-bottom:.25rem}.stat-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.25rem}.stat-detail{font-size:.75rem;color:var(--text-secondary)}.adoption-chart{padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.chart-bar{display:flex;height:40px;border-radius:var(--radius);overflow:hidden;margin-bottom:1rem}.chart-bar-fill{display:flex;align-items:center;justify-content:center;transition:width .3s ease}.chart-bar-fill.enabled{background:#10b981}.chart-bar-fill.disabled{background:var(--gray-300)}.chart-label{font-size:.875rem;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.chart-legend{display:flex;gap:2rem;justify-content:center}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.legend-color{width:16px;height:16px;border-radius:var(--radius-sm)}.legend-color.enabled{background:#10b981}.legend-color.disabled{background:var(--gray-300)}.lockout-table{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.table-header{display:grid;grid-template-columns:1fr 1.5fr 2fr 1.5fr;gap:1rem;padding:1rem;background:var(--gray-50);border-bottom:2px solid var(--border);font-weight:600;font-size:.875rem;color:var(--text-primary)}.table-row{display:grid;grid-template-columns:1fr 1.5fr 2fr 1.5fr;gap:1rem;padding:1rem;border-bottom:1px solid var(--border);transition:var(--transition)}.table-row:hover{background:var(--gray-50)}.table-row:last-child{border-bottom:none}.col-user,.col-locked,.col-reason,.col-unlock{font-size:.875rem;color:var(--text-primary)}.events-list{display:flex;flex-direction:column;gap:.75rem}.event-item{display:flex;gap:1rem;padding:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);transition:var(--transition)}.event-item:hover{box-shadow:var(--shadow-sm)}.event-item.event-critical{border-left:4px solid #ef4444}.event-item.event-warning{border-left:4px solid #f59e0b}.event-item.event-info{border-left:4px solid #3b82f6}.event-icon{font-size:1.5rem;flex-shrink:0}.event-content{flex:1}.event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.event-type{font-weight:600;color:var(--text-primary);text-transform:capitalize}.event-timestamp{font-size:.75rem;color:var(--text-secondary)}.event-description{font-size:.875rem;color:var(--text-primary);margin-bottom:.25rem}.event-user{font-size:.75rem;color:var(--text-secondary)}.event-severity{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;align-self:flex-start}.severity-critical{background:#ef44441a;color:#ef4444}.severity-warning{background:#f59e0b1a;color:#f59e0b}.severity-info{background:#3b82f61a;color:#3b82f6}.severity-default{background:var(--gray-100);color:var(--text-secondary)}.no-events{padding:4rem;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.no-events p{margin:0;color:var(--text-secondary);font-size:1rem}[data-theme=dark] .table-header,[data-theme=dark] .table-row:hover{background:var(--gray-200)}[data-theme=dark] .chart-bar-fill.disabled,[data-theme=dark] .legend-color.disabled{background:var(--gray-400)}.security-dashboard-page{min-height:100vh}.page-header{padding:2rem 2rem 1rem;border-bottom:1px solid var(--border)}.page-header h1{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:var(--text-primary)}.page-subtitle{margin:0;font-size:1rem;color:var(--text-secondary)}.document-templates-library{padding:2rem;max-width:1400px;margin:0 auto}.library-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border)}.header-content h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.library-subtitle{margin:0;color:var(--text-secondary);font-size:.938rem}.header-actions{display:flex;gap:1rem}.btn-create-template{padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.938rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-create-template:hover{background:var(--primary-dark);transform:translateY(-1px)}.library-filters{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:center}.search-box{position:relative;flex:1;max-width:400px}.search-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem}.search-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--text-secondary)}.type-filter{display:flex;align-items:center;gap:.75rem}.type-filter label{font-size:.938rem;color:var(--text-secondary)}.filter-select{padding:.75rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem;cursor:pointer}.templates-stats{display:flex;gap:2rem;margin-bottom:1.5rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius)}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-value{font-size:1.5rem;font-weight:700;color:var(--primary)}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.template-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.no-templates{padding:4rem;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.no-templates p{margin:0 0 1.5rem;color:var(--text-secondary);font-size:1.125rem}.btn-create-first{padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);font-size:.938rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-create-first:hover{background:var(--primary-dark)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.btn-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);transition:var(--transition)}.btn-close:hover{background:var(--gray-50);color:var(--text-primary)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.preview-content{display:flex;flex-direction:column;gap:1.5rem}.preview-section h4{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.preview-section p{margin:.5rem 0;color:var(--text-secondary);font-size:.938rem}.variables-list{display:flex;flex-wrap:wrap;gap:.5rem}.variable-tag{padding:.375rem .75rem;background:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--border)}.btn-cancel{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius);font-size:.938rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-cancel:hover{background:var(--gray-50)}.templates-loading{padding:4rem;text-align:center;color:var(--text-secondary)}[data-theme=dark] .templates-stats,[data-theme=dark] .btn-preview:hover,[data-theme=dark] .btn-close:hover{background:var(--gray-200)}.btn-edit{padding:.75rem 1rem;background:var(--surface);color:var(--primary);border:1px solid var(--primary);border-radius:var(--radius);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition)}.btn-edit:hover{background:var(--primary-light)}.btn-delete{padding:.75rem;background:var(--surface);color:#ef4444;border:1px solid #ef4444;border-radius:var(--radius);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition);min-width:auto;flex:0}.btn-delete:hover{background:#fef2f2}.preview-modal-large{max-width:900px;width:95%;height:85vh;max-height:85vh}.preview-modal-large .modal-body{padding:0;flex:1;min-height:0}.preview-iframe{width:100%;height:100%;border:none}.preview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:300px;gap:1rem;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.preview-hint{color:var(--text-secondary);font-size:.813rem;font-style:italic}.modal-footer-actions{display:flex;gap:.75rem}.template-actions{flex-wrap:wrap}@media (max-width: 640px){.template-actions{gap:.5rem}.template-actions button{padding:.5rem .75rem;font-size:.813rem}}.template-editor{max-width:1400px;margin:0 auto}.editor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border)}.editor-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.btn-back{padding:.5rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);cursor:pointer;font-size:.875rem;transition:var(--transition)}.btn-back:hover{background:var(--gray-50)}.editor-content{display:grid;grid-template-columns:1fr 400px;gap:1.5rem}.editor-main{display:flex;flex-direction:column;gap:1.5rem}.editor-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}.editor-section h3{margin:0 0 1rem;font-size:1.125rem;color:var(--text-primary)}.editor-section h4{margin:1.5rem 0 .75rem;font-size:.938rem;color:var(--text-secondary);border-top:1px solid var(--border);padding-top:1rem}.editor-section h4:first-of-type{border-top:none;padding-top:0;margin-top:1rem}.section-hint{margin:-.5rem 0 1rem;color:var(--text-secondary);font-size:.875rem}.form-row{display:flex;gap:1rem;margin-bottom:1rem}.form-group{flex:1;display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.813rem;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.875rem;background:var(--surface);color:var(--text-primary);transition:var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2196f31a}.form-group.checkbox{flex-direction:row;align-items:center;gap:.5rem}.form-group.checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.form-group.checkbox input{width:1rem;height:1rem;cursor:pointer}.form-hint{display:block;font-size:.75rem;color:var(--text-muted, #888);margin-top:.25rem;font-style:italic}.logo-upload-container{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.logo-preview{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--gray-50, #f9fafb);border:1px solid var(--border);border-radius:var(--radius)}.btn-clear-logo{background:none;border:none;color:var(--text-muted, #888);font-size:1.25rem;cursor:pointer;padding:0 .25rem;line-height:1}.btn-clear-logo:hover{color:var(--danger, #ef4444)}.btn-sm{padding:.375rem .75rem;font-size:.813rem}.field-row-table{flex-direction:column;gap:.75rem}.field-row-main{display:flex;gap:.75rem;width:100%}.field-row-table .field-row-main input,.field-row-table .field-row-main select{flex:1}.table-columns-config{background:var(--gray-50, #f9fafb);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin-left:1rem}.table-columns-config>label{display:block;font-weight:500;font-size:.813rem;color:var(--text-secondary);margin-bottom:.5rem}.table-columns-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.table-column-row{display:flex;gap:.5rem;align-items:center}.table-column-row input{flex:1;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.813rem}.btn-remove-column{background:none;border:none;color:var(--text-muted, #888);font-size:1.25rem;cursor:pointer;padding:0 .25rem;line-height:1}.btn-remove-column:hover{color:var(--danger, #ef4444)}.btn-add-column{padding:.375rem .75rem;font-size:.75rem;background:var(--primary-light, #e3f2fd);color:var(--primary, #2196f3);border:1px dashed var(--primary, #2196f3);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition)}.btn-add-column:hover{background:var(--primary);color:#fff;border-style:solid}.field-row{display:flex;gap:.75rem;margin-bottom:.75rem;align-items:center}.field-row input,.field-row select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.813rem}.field-row input:first-child{flex:2}.field-row input:nth-child(2){flex:2}.field-row select{flex:1;min-width:100px}.btn-remove-field{width:28px;height:28px;padding:0;border:1px solid #ef4444;background:#fff;color:#ef4444;border-radius:var(--radius);cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-remove-field:hover{background:#fef2f2}.btn-add-field{padding:.5rem 1rem;background:var(--primary-light);color:var(--primary);border:1px dashed var(--primary);border-radius:var(--radius);cursor:pointer;font-size:.813rem;font-weight:500;transition:var(--transition);margin-top:.5rem}.btn-add-field:hover{background:var(--primary);color:#fff;border-style:solid}.editor-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;position:sticky;top:1rem;height:fit-content;max-height:calc(100vh - 200px);display:flex;flex-direction:column}.editor-preview h3{margin:0 0 1rem;font-size:1.125rem;color:var(--text-primary)}.btn-generate-preview{padding:.75rem 1rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius);cursor:pointer;font-size:.875rem;font-weight:500;transition:var(--transition);margin-bottom:1rem}.btn-generate-preview:hover:not(:disabled){background:var(--primary-dark)}.btn-generate-preview:disabled{opacity:.6;cursor:not-allowed}.preview-iframe-small{flex:1;width:100%;min-height:400px;border:1px solid var(--border);border-radius:var(--radius)}.preview-placeholder{flex:1;display:flex;align-items:center;justify-content:center;min-height:300px;border:2px dashed var(--border);border-radius:var(--radius);padding:2rem;text-align:center;color:var(--text-secondary)}.editor-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}@media (max-width: 1024px){.editor-content{grid-template-columns:1fr}.editor-preview{position:static;max-height:none}}@media (max-width: 768px){.form-row{flex-direction:column}.field-row{flex-wrap:wrap}.field-row input,.field-row select{flex:1 1 100%}}.document-templates-library-page{min-height:100vh}.custom-domain-manager{max-width:100%}.domain-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border)}.domain-section:last-child{border-bottom:none}.domain-section h3{margin:0 0 20px;color:var(--text-primary);font-size:1.25rem}.add-domain-form{margin-bottom:16px}.add-domain-form .form-group{display:flex;gap:12px;margin-bottom:8px}.domain-input{flex:1;padding:10px 12px;border:2px solid var(--border);border-radius:6px;font-size:.938rem}.domain-input:focus{outline:none;border-color:var(--primary)}.form-hint{margin:8px 0 0;font-size:.813rem;color:var(--text-tertiary)}.domains-list{display:flex;flex-direction:column;gap:16px}.domain-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;border:2px solid var(--border);border-radius:8px;background:var(--surface-alt)}.domain-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.domain-name{font-weight:600;color:var(--text-primary);font-size:1.063rem}.primary-badge{padding:4px 12px;background:var(--primary-light);color:var(--primary);border-radius:12px;font-size:.75rem;font-weight:600}.status-badge{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:500}.status-badge.pending{background:var(--warning-light);color:var(--warning)}.status-badge.verifying{background:var(--info-light);color:var(--info)}.status-badge.verified{background:var(--success-light);color:var(--success)}.status-badge.failed{background:var(--error-light);color:var(--error)}.status-badge.suspended{background:var(--gray-200);color:var(--gray-600)}.status-badge.pending-approval{background:var(--warning-light);color:var(--warning);animation:pulse 2s infinite}.status-badge.rejected{background:var(--error-light);color:var(--error)}.approval-notice{margin-top:12px;padding:12px;background:var(--warning-light);border-radius:6px;border:1px solid var(--warning)}.approval-notice strong{display:block;margin-bottom:8px;color:var(--warning)}.rejection-notice{margin-top:12px;padding:12px;background:var(--error-light);border-radius:6px;border:1px solid var(--error)}.rejection-notice strong{display:block;margin-bottom:8px;color:var(--error)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.dns-instructions{margin-top:12px;padding:12px;background:var(--surface);border-radius:6px;border:1px solid var(--border)}.dns-instructions strong{display:block;margin-bottom:8px;color:var(--text-primary)}.dns-instructions pre{margin:0;font-size:.813rem;color:var(--text-secondary);white-space:pre-wrap;word-wrap:break-word}.domain-meta{margin-top:8px;font-size:.813rem;color:var(--text-tertiary)}.domain-actions{display:flex;gap:8px}.empty-state{text-align:center;padding:48px;color:var(--text-tertiary)}.loading{text-align:center;padding:24px;color:var(--text-secondary)}[data-theme=dark] .domain-input{background:var(--surface);color:var(--text-primary);border-color:var(--border)}[data-theme=dark] .domain-item{background:var(--surface-alt);border-color:var(--border)}@media (max-width: 768px){.domain-item{flex-direction:column;gap:12px}.domain-actions{width:100%}.domain-actions button{flex:1}}.branding-editor{max-width:100%}.branding-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--border)}.branding-section:last-child{border-bottom:none}.branding-section h3{margin:0 0 20px;color:var(--text-primary);font-size:1.25rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;color:var(--text-primary);font-size:.938rem}.form-group input[type=text],.form-group input[type=url],.form-group input[type=email],.form-group input[type=tel]{padding:10px 12px;border:2px solid var(--border);border-radius:6px;font-size:.938rem;font-family:inherit}.form-group input:focus{outline:none;border-color:var(--primary)}.color-input-group{display:flex;gap:8px;align-items:center}.color-input-group input[type=color]{width:60px;height:40px;border:2px solid var(--border);border-radius:6px;cursor:pointer}.color-input-group input[type=text]{flex:1}.logo-preview{max-width:200px;max-height:80px;margin-top:8px;border:1px solid var(--border);border-radius:4px;padding:8px;background:var(--surface-alt)}.css-editor{width:100%;padding:12px;border:2px solid var(--border);border-radius:6px;font-family:Courier New,monospace;font-size:.875rem;resize:vertical}.form-hint{margin:4px 0 0;font-size:.813rem;color:var(--text-tertiary);font-style:italic}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px;padding-top:24px;border-top:2px solid var(--border)}[data-theme=dark] .form-group input,[data-theme=dark] .css-editor{background:var(--surface);color:var(--text-primary);border-color:var(--border)}@media (max-width: 768px){.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.white-label-management{padding:24px;max-width:1200px;margin:0 auto}.white-label-header{margin-bottom:32px}.white-label-header h1{margin:0 0 8px;color:var(--text-primary);font-size:2rem}.white-label-tabs{display:flex;gap:8px;border-bottom:2px solid var(--border);margin-bottom:24px}.tab-btn{padding:12px 24px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.white-label-content{background:var(--surface);border-radius:12px;padding:24px;box-shadow:var(--shadow-md)}.loading-container{text-align:center;padding:48px;color:var(--text-secondary)}.whitelabel-page{height:100%;display:flex;flex-direction:column;background:var(--background-secondary, #f5f7fa)}.whitelabel-page.loading{align-items:center;justify-content:center}.whitelabel-header{padding:1.5rem 2rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.whitelabel-header h1{margin:0 0 .25rem;font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a1a)}.whitelabel-header p{margin:0;color:var(--text-secondary, #666);font-size:.875rem}.whitelabel-content{flex:1;display:flex;overflow:hidden}.tenant-list-panel{width:320px;background:#fff;border-right:1px solid var(--border-color, #e0e0e0);display:flex;flex-direction:column}.tenant-list-panel h2{margin:0;padding:1rem 1.25rem;font-size:1rem;font-weight:600;border-bottom:1px solid var(--border-color, #e0e0e0)}.tenant-list{flex:1;overflow-y:auto}.tenant-item{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color, #f0f0f0);cursor:pointer;transition:all .2s}.tenant-item:hover{background:var(--background-secondary, #f8f9fa)}.tenant-item.selected{background:var(--primary-light, #e3f2fd);border-left:3px solid var(--primary-color, #1976d2)}.tenant-item.inactive{opacity:.6}.tenant-info{flex:1;min-width:0}.tenant-name{font-weight:600;color:var(--text-primary, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tenant-subdomain{font-size:.75rem;color:var(--text-secondary, #888);margin-top:.25rem}.tenant-status{font-size:.75rem}.has-branding{display:flex;align-items:center;gap:.375rem;color:var(--success-color, #28a745)}.color-dot{width:12px;height:12px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}.default-branding{color:var(--text-secondary, #888)}.branding-editor-panel{flex:1;display:flex;flex-direction:column;overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.editor-header h2{margin:0;font-size:1.25rem;font-weight:600}.tenant-id{font-size:.75rem;color:var(--text-secondary, #888);margin-left:.5rem}.editor-actions{display:flex;gap:.75rem}.editor-tabs{display:flex;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0);padding:0 1.5rem}.editor-tabs .tab{padding:.75rem 1.25rem;border:none;background:none;font-size:.875rem;font-weight:500;color:var(--text-secondary, #666);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.editor-tabs .tab:hover{color:var(--primary-color, #1976d2)}.editor-tabs .tab.active{color:var(--primary-color, #1976d2);border-bottom-color:var(--primary-color, #1976d2)}.editor-content{flex:1;overflow-y:auto;padding:1.5rem}.editor-section h3{margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #e0e0e0);font-size:1rem;font-weight:600;color:var(--text-primary, #333)}.editor-section h3:not(:first-child){margin-top:2rem}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary, #333);margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem;transition:border-color .2s}.code-textarea{font-family:Monaco,Menlo,monospace;font-size:.8125rem}.help-text{font-size:.75rem;color:var(--text-secondary, #888);margin-top:.375rem}.image-preview{margin-top:.5rem;padding:.5rem;background:var(--background-secondary, #f8f9fa);border-radius:6px;text-align:center}.image-preview img{max-height:60px;max-width:100%}.color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.color-field label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.color-input{display:flex;gap:.5rem}.color-input input[type=color]{width:48px;height:38px;padding:2px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;cursor:pointer}.color-input input[type=text]{flex:1;padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-family:monospace;font-size:.875rem}.options-grid{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.checkbox-option{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.875rem}.checkbox-option input{width:18px;height:18px;accent-color:var(--primary-color, #1976d2)}.radio-group{display:flex;gap:1.5rem}.radio-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem}.radio-option input{accent-color:var(--primary-color, #1976d2)}.templates-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.template-card{background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:1rem}.template-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.template-header h4{margin:0;font-size:.875rem;font-weight:600}.template-subject{font-size:.75rem;color:var(--text-secondary, #666);margin-bottom:.75rem}.template-actions{display:flex;gap:1rem}.css-preview{background:#1e1e1e;color:#d4d4d4;border-radius:8px;padding:1rem;overflow-x:auto}.css-preview pre{margin:0;font-family:Monaco,Menlo,monospace;font-size:.8125rem;white-space:pre-wrap}.live-preview{border:1px solid var(--border-color, #e0e0e0);border-radius:8px;overflow:hidden;min-height:300px;display:grid;grid-template-columns:200px 1fr;grid-template-rows:60px 1fr 40px;background:var(--preview-bg, white)}.preview-header{grid-column:1 / -1;display:flex;align-items:center;padding:0 1rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.preview-logo{height:32px}.preview-app-name{font-size:1.25rem;font-weight:700;color:var(--preview-primary, #1976d2)}.preview-sidebar{padding:1rem;color:#fff}.preview-nav-item{padding:.5rem .75rem;margin-bottom:.25rem;border-radius:4px;font-size:.875rem;opacity:.7;cursor:pointer}.preview-nav-item.active{background:#ffffff1a;opacity:1}.preview-content{padding:1.5rem}.preview-content h2{margin:0 0 1.5rem;font-size:1.25rem}.preview-button{padding:.5rem 1rem;border:none;border-radius:6px;color:#fff;font-size:.875rem;cursor:pointer;margin-right:.75rem}.preview-button.secondary{margin-right:0}.preview-footer{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;padding:0 1rem;border-top:1px solid var(--border-color, #e0e0e0);font-size:.75rem;color:var(--text-secondary, #888);background:var(--preview-bg, white)}.powered-by{opacity:.6}.no-selection{flex:1;display:flex;align-items:center;justify-content:center}.no-selection-content{text-align:center}.no-selection-content .icon{font-size:4rem;margin-bottom:1rem}.no-selection-content h3{margin:0 0 .5rem;font-size:1.25rem;color:var(--text-primary, #333)}.no-selection-content p{margin:0;color:var(--text-secondary, #666)}.modal{background:#fff;border-radius:12px;padding:1.5rem;min-width:400px;max-width:90%}.modal h3{margin:0 0 1rem;font-size:1.125rem}.modal p{margin:0 0 1rem;color:var(--text-secondary, #666)}.copy-target-select{width:100%;padding:.625rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem;margin-bottom:1.5rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.btn-primary{padding:.625rem 1.25rem;background:var(--primary-color, #1976d2);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}.btn-secondary{padding:.625rem 1.25rem;background:#fff;color:var(--text-secondary, #666);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}.btn-danger{padding:.625rem 1.25rem;background:#fff;color:var(--error-color, #dc3545);border:1px solid var(--error-color, #dc3545);border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}.btn-link{background:none;border:none;color:var(--primary-color, #1976d2);cursor:pointer;font-size:.8125rem}.status{font-size:.6875rem;padding:.125rem .5rem;border-radius:4px}.empty-state{text-align:center;padding:3rem;background:var(--background-secondary, #f8f9fa);border-radius:8px}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:var(--primary-color, #1976d2);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@media (max-width: 1024px){.form-grid,.color-grid,.templates-grid{grid-template-columns:1fr}.live-preview{grid-template-columns:150px 1fr}}@media (max-width: 768px){.whitelabel-content{flex-direction:column}.tenant-list-panel{width:100%;max-height:200px}.live-preview{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.preview-sidebar{grid-row:2}}.templates-header{display:flex;justify-content:flex-end;margin-bottom:1rem}.template-modal{width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column}.template-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #e0e0e0);margin-bottom:1rem}.template-modal .modal-header h3{margin:0}.template-modal .close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary, #666);padding:0;line-height:1}.template-modal .close-btn:hover{color:var(--text-primary, #333)}.template-modal .modal-body{flex:1;overflow-y:auto;padding-right:.5rem}.template-modal .form-group{margin-bottom:1.25rem}.template-modal .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #333)}.template-modal .form-control{width:100%;padding:.625rem .75rem;border:1px solid var(--border-color, #d0d0d0);border-radius:6px;font-size:.875rem}.template-modal .form-control:focus{outline:none;border-color:var(--primary-color, #1976d2);box-shadow:0 0 0 3px #1976d21a}.template-modal .code-textarea{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8125rem;line-height:1.5;resize:vertical}.template-modal .help-text{margin:.375rem 0 0;font-size:.75rem;color:var(--text-secondary, #666)}.template-preview-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color, #e0e0e0)}.template-preview-section h4{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:var(--text-primary, #333)}.template-preview{background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:1.5rem;max-height:300px;overflow-y:auto}.template-preview h1{font-size:1.5rem;margin-top:0}.template-preview p{line-height:1.6}.template-preview ul{padding-left:1.5rem}.template-preview a{color:inherit;text-decoration:none}.template-modal .modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.form-builder{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f8f9fa)}.builder-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.builder-header h2{margin:0;font-size:1.25rem;color:var(--text-primary, #333)}.builder-actions button{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s}.preview-btn{background:var(--secondary-color, #6c757d);color:#fff;border:none}.preview-btn.active{background:var(--primary-color, #1976d2)}.add-section-btn{background:transparent;border:1px dashed var(--primary-color, #1976d2);color:var(--primary-color, #1976d2)}.add-section-btn:hover{background:var(--primary-color, #1976d2);color:#fff;border-style:solid}.cancel-btn{background:transparent;border:1px solid var(--border-color, #e0e0e0);color:var(--text-secondary, #666)}.save-btn{background:var(--success-color, #28a745);color:#fff;border:none}.save-btn:hover{background:#218838}.builder-content{display:flex;flex:1;overflow:hidden}.field-palette{width:280px;background:#fff;border-right:1px solid var(--border-color, #e0e0e0);padding:1rem;overflow-y:auto}.field-palette h3{margin:0 0 .5rem;font-size:1rem;color:var(--text-primary, #333)}.palette-hint{font-size:.75rem;color:var(--text-secondary, #666);margin-bottom:1rem}.field-list{display:flex;flex-direction:column;gap:.5rem}.palette-field{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--background-secondary, #f8f9fa);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;cursor:grab;transition:all .2s}.palette-field:hover{border-color:var(--primary-color, #1976d2);background:#fff}.field-icon{font-size:1rem}.field-label{flex:1;font-size:.875rem;color:var(--text-primary, #333)}.field-type{font-size:.75rem;color:var(--text-secondary, #888);background:var(--background-secondary, #f0f0f0);padding:.125rem .375rem;border-radius:4px}.form-canvas{flex:1;padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.form-canvas.preview{background:#fff;max-width:900px;margin:0 auto}.form-section{background:#fff;border:2px solid transparent;border-radius:8px;overflow:hidden;transition:all .2s}.form-section.selected{border-color:var(--primary-color, #1976d2)}.section-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--background-secondary, #f8f9fa);border-bottom:1px solid var(--border-color, #e0e0e0)}.section-title-row{display:flex;align-items:center;gap:.5rem}.collapse-btn{background:none;border:none;padding:.25rem;cursor:pointer;color:var(--text-secondary, #666)}.section-title-input{border:none;background:transparent;font-size:1rem;font-weight:600;color:var(--text-primary, #333);padding:.25rem}.section-title-input:focus{outline:none;background:#fff;border-radius:4px}.section-actions{display:flex;gap:.5rem;align-items:center}.section-actions select{padding:.25rem .5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.75rem}.section-actions button{padding:.25rem .5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;background:#fff;cursor:pointer}.section-actions button:hover{background:var(--background-secondary, #f0f0f0)}.section-actions button:disabled{opacity:.5;cursor:not-allowed}.section-actions .delete-btn{color:var(--error-color, #dc3545);border-color:var(--error-color, #dc3545)}.section-fields{padding:1rem;display:grid;gap:1rem;min-height:100px}.drop-zone{grid-column:1 / -1;border:2px dashed var(--border-color, #ccc);border-radius:8px;padding:2rem;text-align:center;color:var(--text-secondary, #888);background:var(--background-secondary, #f9f9f9)}.form-field{position:relative;padding:.75rem;border:1px solid transparent;border-radius:6px;background:var(--background-secondary, #f9f9f9);transition:all .2s}.form-field.width-full{grid-column:1 / -1}.form-field.width-half,.form-field.width-third{grid-column:span 1}.form-field.selected{border-color:var(--primary-color, #1976d2);background:#fff;box-shadow:0 2px 8px #0000001a}.form-field:hover{border-color:var(--border-color, #ccc)}.form-field:hover .remove-field-btn{opacity:1}.field-preview{display:flex;flex-direction:column;gap:.375rem}.field-preview label{font-size:.875rem;font-weight:500;color:var(--text-primary, #333)}.field-preview .required{color:var(--error-color, #dc3545);margin-left:.25rem}.field-preview input,.field-preview select,.field-preview textarea{padding:.5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.875rem;width:100%}.field-preview input:disabled,.field-preview select:disabled,.field-preview textarea:disabled{background:#fff;color:var(--text-secondary, #999)}.field-preview .help-text{font-size:.75rem;color:var(--text-secondary, #888)}.remove-field-btn{position:absolute;top:.25rem;right:.25rem;background:var(--error-color, #dc3545);color:#fff;border:none;border-radius:50%;width:20px;height:20px;font-size:.875rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .2s}.properties-panel{width:300px;background:#fff;border-left:1px solid var(--border-color, #e0e0e0);padding:1rem;overflow-y:auto}.properties-panel.empty{display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #888)}.properties-panel h3{margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #e0e0e0);font-size:1rem;color:var(--text-primary, #333)}.property-group{margin-bottom:1rem}.property-group>label{display:block;font-size:.75rem;font-weight:500;color:var(--text-secondary, #666);margin-bottom:.375rem;text-transform:uppercase}.property-group input[type=text],.property-group input[type=number],.property-group select,.property-group textarea{width:100%;padding:.5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.875rem}.property-group.checkbox-group label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.property-group.checkbox-group input[type=checkbox]{width:auto}.header-left{display:flex;align-items:center;gap:1.5rem}.form-name-input{padding:.375rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.9375rem;min-width:250px}.action-btn{background:transparent;border:1px solid var(--border-color, #e0e0e0);color:var(--text-secondary, #666)}.action-btn:hover{background:var(--background-secondary);border-color:var(--primary-color);color:var(--primary-color)}.field-type-tabs{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.field-type-tabs .tab{padding:.375rem .75rem;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;border-radius:4px}.field-type-tabs .tab.active{background:var(--primary-color);color:#fff}.palette-field .field-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.palette-field .field-info .field-label{font-size:.8125rem}.new-field-types{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.new-field-types h4{margin:0 0 .75rem;font-size:.8125rem;color:var(--text-secondary)}.field-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.375rem}.field-type-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;border:1px solid var(--border-color);border-radius:6px;background:#fff;cursor:pointer;font-size:.6875rem;color:var(--text-secondary);transition:all .2s}.field-type-btn span:first-child{font-size:1rem}.field-type-btn:hover{border-color:var(--primary-color);background:var(--primary-light, #e3f2fd);color:var(--primary-color)}.has-condition{position:relative}.condition-badge{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#fef3c7;color:#d97706;border-radius:50%;font-size:.75rem;margin-left:.5rem}.condition-indicator{color:#d97706;font-size:.75rem;margin-left:.25rem}.condition-btn{padding:.25rem .5rem!important;font-size:.75rem!important}.form-field .field-actions{display:none;position:absolute;top:.25rem;right:.25rem;gap:.25rem}.form-field:hover .field-actions{display:flex}.form-field .field-actions button{width:20px;height:20px;padding:0;border:1px solid var(--border-color);background:#fff;border-radius:3px;font-size:.625rem;cursor:pointer}.form-field .field-actions button:hover{background:var(--background-secondary)}.properties-tabs{display:flex;border-bottom:1px solid var(--border-color);margin-bottom:1rem}.properties-tabs .tab{flex:1;padding:.5rem;border:none;background:transparent;color:var(--text-secondary);font-size:.8125rem;cursor:pointer;border-bottom:2px solid transparent}.properties-tabs .tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tab-content{padding-top:.5rem}.tab-content h4{margin:0 0 .5rem;font-size:.9375rem}.tab-content .description{font-size:.75rem;color:var(--text-secondary);margin-bottom:1rem}.property-group.checkbox-row{display:flex;gap:1rem}.property-group.checkbox-row label{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;cursor:pointer}.options-editor{display:flex;flex-direction:column;gap:.375rem}.option-row{display:flex;gap:.375rem}.option-row input{flex:1}.option-row button{width:24px;height:28px;padding:0;border:1px solid var(--border-color);background:#fff;border-radius:4px;cursor:pointer}.option-row button:hover{background:#fee;border-color:#dc3545;color:#dc3545}.add-option-btn{width:100%;padding:.375rem;border:1px dashed var(--border-color);background:transparent;border-radius:4px;font-size:.75rem;color:var(--text-secondary);cursor:pointer}.add-option-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.hint{display:block;margin-top:.25rem;font-size:.6875rem;color:var(--text-secondary)}.readonly{background:var(--background-secondary)!important;color:var(--text-secondary)!important}.condition-summary{background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:.75rem;margin-bottom:1rem}.condition-rules{margin-bottom:.75rem}.logic-badge{display:inline-block;background:#d97706;color:#fff;padding:.125rem .375rem;border-radius:3px;font-size:.625rem;font-weight:600;margin-bottom:.5rem}.rule-summary{display:flex;gap:.5rem;font-size:.75rem;padding:.25rem 0}.rule-field{font-weight:500}.rule-operator{color:var(--text-secondary)}.rule-value{color:var(--primary-color)}.condition-actions{display:flex;gap:.5rem}.condition-actions button{padding:.25rem .75rem;border:1px solid var(--border-color);background:#fff;border-radius:4px;font-size:.75rem;cursor:pointer}.add-condition-btn{width:100%;padding:.5rem;border:1px dashed var(--primary-color);background:transparent;color:var(--primary-color);border-radius:6px;font-size:.8125rem;cursor:pointer}.add-condition-btn:hover{background:var(--primary-light, #e3f2fd)}.visibility-options{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.visibility-options h5{margin:0 0 .75rem;font-size:.8125rem;color:var(--text-secondary)}.quick-actions{display:flex;flex-direction:column;gap:.375rem}.quick-actions button{padding:.5rem;border:1px solid var(--border-color);background:#fff;border-radius:4px;font-size:.75rem;text-align:left;cursor:pointer}.quick-actions button:hover{background:var(--background-secondary);border-color:var(--primary-color)}.validation-rules{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.validation-rule{display:flex;gap:.375rem;align-items:center;flex-wrap:wrap}.validation-rule select,.validation-rule input{padding:.375rem;border:1px solid var(--border-color);border-radius:4px;font-size:.75rem}.validation-rule select{min-width:100px}.validation-rule input[type=text]{flex:1;min-width:80px}.validation-rule button{width:24px;height:24px;padding:0;border:1px solid var(--border-color);background:#fff;border-radius:4px;cursor:pointer}.validation-rule button:hover{background:#fee;border-color:#dc3545;color:#dc3545}.add-validation-btn{width:100%;padding:.5rem;border:1px dashed var(--primary-color);background:transparent;color:var(--primary-color);border-radius:6px;font-size:.8125rem;cursor:pointer}.multi-select{display:flex;flex-wrap:wrap;gap:.5rem;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:#fff}.multi-option{display:flex;align-items:center;gap:.25rem;font-size:.8125rem}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--primary-color)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.currency-input,.percent-input{display:flex;align-items:center}.currency-input input,.percent-input input{flex:1;border-radius:0 4px 4px 0!important}.currency-symbol,.percent-symbol{padding:.5rem .75rem;background:var(--background-secondary);border:1px solid var(--border-color);font-size:.875rem;color:var(--text-secondary)}.currency-symbol{border-radius:4px 0 0 4px;border-right:none}.percent-symbol{border-radius:0 4px 4px 0;border-left:none}.rating-input{display:flex;gap:.25rem}.rating-input .star{font-size:1.5rem;color:#ddd;cursor:pointer;transition:color .2s}.rating-input .star.filled{color:#ffc107}.slider-input{display:flex;align-items:center;gap:.75rem}.slider-input input[type=range]{flex:1}.slider-value{min-width:40px;text-align:center;font-size:.875rem;font-weight:500}.image-upload{border:2px dashed var(--border-color);border-radius:6px;padding:1.5rem;text-align:center;cursor:pointer}.image-upload .upload-hint{display:block;margin-top:.5rem;font-size:.75rem;color:var(--text-secondary)}.address-fields{display:flex;flex-direction:column;gap:.5rem}.address-row{display:flex;gap:.5rem}.address-row input{flex:1}.signature-pad{border:1px solid var(--border-color);border-radius:4px;padding:.5rem}.signature-pad canvas{width:100%;border:1px solid #eee;border-radius:4px}.signature-pad button{margin-top:.5rem;padding:.25rem .75rem;border:1px solid var(--border-color);background:#fff;border-radius:4px;font-size:.75rem;cursor:pointer}.lookup-field{display:flex;gap:.375rem}.lookup-field input{flex:1}.lookup-field button{padding:.5rem;border:1px solid var(--border-color);background:#fff;border-radius:4px;cursor:pointer}.formula-field{position:relative}.formula-hint{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-size:.625rem;color:var(--text-secondary);background:var(--background-secondary);padding:.125rem .375rem;border-radius:3px}.richtext-placeholder{position:relative}.richtext-toolbar{padding:.375rem;background:var(--background-secondary);border:1px solid var(--border-color);border-top:none;border-radius:0 0 4px 4px;font-size:.75rem;color:var(--text-secondary)}.preview-banner{background:linear-gradient(135deg,var(--primary-color) 0%,#1565c0 100%);color:#fff;padding:.75rem 1.5rem;margin:-1rem -1rem 1rem;display:flex;justify-content:space-between;align-items:center}.preview-banner span{font-weight:600}.preview-banner small{opacity:.85}.preview-buttons{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.submit-btn{padding:.625rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:6px;font-size:.9375rem;cursor:pointer}.cancel-preview-btn{padding:.625rem 1.5rem;background:#fff;border:1px solid var(--border-color);border-radius:6px;font-size:.9375rem;cursor:pointer}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary)}.empty-state .icon{font-size:2rem;margin-bottom:.5rem}.modal{background:#fff;border-radius:12px;padding:1.5rem;min-width:500px;max-width:90%;max-height:90vh;overflow-y:auto}.modal h3{margin:0 0 .5rem}.modal p{color:var(--text-secondary);font-size:.875rem;margin-bottom:1.5rem}.logic-selector{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.logic-selector label{font-weight:500}.logic-selector select{padding:.375rem .75rem;border:1px solid var(--border-color);border-radius:4px}.condition-rules-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.condition-rule-row{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.condition-rule-row select,.condition-rule-row input{padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.8125rem}.condition-rule-row select:first-child{min-width:120px}.condition-rule-row input{flex:1;min-width:100px}.remove-rule-btn{width:28px;height:28px;padding:0;border:1px solid var(--border-color);background:#fff;border-radius:4px;cursor:pointer}.remove-rule-btn:hover{background:#fee;border-color:#dc3545;color:#dc3545}.add-rule-btn{padding:.5rem 1rem;border:1px dashed var(--primary-color);background:transparent;color:var(--primary-color);border-radius:6px;font-size:.8125rem;cursor:pointer;margin-bottom:1.5rem}.add-rule-btn:hover{background:var(--primary-light, #e3f2fd)}.modal-actions{display:flex;justify-content:space-between;padding-top:1rem;border-top:1px solid var(--border-color)}.modal-actions .clear-btn{padding:.5rem 1rem;border:1px solid var(--border-color);background:#fff;color:#dc3545;border-radius:6px;cursor:pointer}.modal-actions .close-btn{padding:.5rem 1.5rem;border:none;background:var(--primary-color);color:#fff;border-radius:6px;cursor:pointer}@media (max-width: 1200px){.field-palette{width:220px}.properties-panel{width:280px}.field-type-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.builder-content{flex-direction:column}.field-palette,.properties-panel{width:100%;max-height:200px;border:none;border-bottom:1px solid var(--border-color, #e0e0e0)}.form-canvas{max-height:none}.header-left{flex-direction:column;align-items:flex-start;gap:.5rem}.form-name-input{width:100%}.builder-actions{flex-wrap:wrap}}.validation-rule-builder{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f8f9fa)}.validation-rule-builder .builder-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.validation-rule-builder .builder-header h2{margin:0;font-size:1.25rem}.validation-rule-builder .builder-actions{display:flex;gap:.75rem}.validation-rule-builder .builder-actions button{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer}.validation-rule-builder .cancel-btn{background:transparent;border:1px solid var(--border-color, #e0e0e0);color:var(--text-secondary, #666)}.validation-rule-builder .save-btn{background:var(--success-color, #28a745);color:#fff;border:none}.validation-rule-builder .builder-content{flex:1;padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem;max-width:1000px;margin:0 auto}.validation-rule-builder h3{margin:0 0 1rem;font-size:1rem;color:var(--text-primary, #333)}.validation-rule-builder .help-text{font-size:.75rem;color:var(--text-secondary, #666);margin-bottom:1rem}.rule-basics,.rule-condition,.rule-error,.rule-test{background:#fff;padding:1.5rem;border-radius:8px;border:1px solid var(--border-color, #e0e0e0)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.875rem}.condition-group{background:var(--background-secondary, #f8f9fa);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:1rem;margin-bottom:1rem}.condition-group.depth-1{background:#f0f4f8;margin-left:1.5rem}.condition-group.depth-2{background:#e8ecf0;margin-left:1.5rem}.group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #ddd)}.group-type-select{padding:.5rem;font-size:.875rem;border-radius:4px;border:1px solid var(--border-color, #ccc);background:#fff}.remove-group-btn{padding:.25rem .75rem;background:transparent;border:1px solid var(--error-color, #dc3545);color:var(--error-color, #dc3545);border-radius:4px;font-size:.75rem;cursor:pointer}.group-conditions{margin-bottom:1rem}.empty-group{padding:1.5rem;text-align:center;color:var(--text-secondary, #888);background:#fff;border:2px dashed var(--border-color, #ddd);border-radius:6px}.condition-connector{text-align:center;padding:.5rem 0;font-size:.75rem;font-weight:600;color:var(--primary-color, #1976d2);text-transform:uppercase}.group-actions{display:flex;gap:.75rem}.add-condition-btn,.add-group-btn{padding:.5rem 1rem;background:#fff;border:1px dashed var(--primary-color, #1976d2);color:var(--primary-color, #1976d2);border-radius:4px;font-size:.75rem;cursor:pointer}.add-condition-btn:hover,.add-group-btn:hover{background:var(--primary-color, #1976d2);color:#fff;border-style:solid}.single-condition{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;margin-bottom:.5rem}.condition-field,.condition-operator{flex:1;min-width:150px}.condition-value{flex:1.5;min-width:150px}.single-condition select,.single-condition input{padding:.5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.875rem}.remove-condition-btn{background:var(--error-color, #dc3545);color:#fff;border:none;border-radius:50%;width:24px;height:24px;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.test-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.test-field{display:flex;flex-direction:column;gap:.25rem}.test-field label{font-size:.75rem;color:var(--text-secondary, #666)}.test-field input,.test-field select{padding:.5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.875rem}.test-btn{padding:.5rem 1.5rem;background:var(--primary-color, #1976d2);color:#fff;border:none;border-radius:4px;font-size:.875rem;cursor:pointer;margin-bottom:1rem}.test-result{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:6px}.test-result.valid{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.test-result.invalid{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.result-icon{font-size:1.25rem;font-weight:700}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.test-fields{grid-template-columns:repeat(2,1fr)}.single-condition{flex-wrap:wrap}.condition-field,.condition-operator,.condition-value{flex:1 1 100%;min-width:100%}}.custom-field-editor{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f8f9fa)}.custom-field-editor .editor-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.custom-field-editor .editor-header h2{margin:0;font-size:1.25rem}.custom-field-editor .editor-actions{display:flex;gap:.75rem}.custom-field-editor .editor-content{flex:1;display:flex;overflow:hidden;padding:1.5rem;gap:1.5rem}.editor-main{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem}.config-section{background:#fff;border-radius:8px;padding:1.25rem;border:1px solid var(--border-color, #e0e0e0)}.config-section h4{margin:0 0 1rem;font-size:.9375rem;font-weight:600;color:var(--text-primary, #333);padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #f0f0f0)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary, #333);margin-bottom:.375rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color, #1976d2)}.field-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.field-type-card{display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.field-type-card:hover,.field-type-card.selected{border-color:var(--primary-color, #1976d2);background:var(--primary-light, #e3f2fd)}.field-type-icon{font-size:1.5rem;margin-bottom:.25rem}.field-type-label{font-size:.8125rem;font-weight:500;color:var(--text-primary, #333)}.field-type-desc{font-size:.6875rem;color:var(--text-secondary, #888);margin-top:.25rem;display:none}.field-type-card.selected .field-type-desc,.field-type-card:hover .field-type-desc{display:block}.options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.toggle-advanced{background:none;border:none;padding:0;font-size:.875rem;font-weight:500;color:var(--text-secondary, #666);cursor:pointer;margin-top:.5rem}.toggle-advanced:hover{color:var(--primary-color, #1976d2)}.advanced-options{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.editor-preview{width:320px;background:#fff;border-radius:8px;padding:1.25rem;border:1px solid var(--border-color, #e0e0e0);height:fit-content;position:sticky;top:0}.editor-preview h4{margin:0 0 1rem;font-size:.9375rem;font-weight:600;color:var(--text-primary, #333);padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #f0f0f0)}.preview-form{background:var(--background-secondary, #f8f9fa);padding:1rem;border-radius:8px}.preview-field label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary, #333);margin-bottom:.5rem}.preview-field label .required{color:var(--error-color, #dc3545);margin-left:.25rem}.preview-field input,.preview-field select,.preview-field textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem;background:#fff}.preview-help{display:block;font-size:.75rem;color:var(--text-secondary, #888);margin-top:.375rem}.multi-picklist-preview{display:flex;flex-direction:column;gap:.5rem}.checkbox-item,.checkbox-preview{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.lookup-preview{display:flex;gap:.5rem}.lookup-preview input{flex:1}.lookup-preview button{padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;background:#fff}@media (max-width: 1200px){.field-type-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 900px){.custom-field-editor .editor-content{flex-direction:column}.editor-preview{width:100%;position:static}.field-type-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}}@media (max-width: 600px){.field-type-grid,.options-grid{grid-template-columns:1fr}}.page-layout-builder{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f5f7fa)}.page-layout-builder .builder-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.header-info{display:flex;align-items:center;gap:1rem}.header-info h2{margin:0;font-size:1.25rem}.entity-badge{background:var(--primary-light, #e3f2fd);color:var(--primary-color, #1976d2);padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500}.builder-actions{display:flex;gap:.75rem}.page-layout-builder .builder-content{flex:1;display:flex;overflow:hidden}.builder-sidebar{width:280px;background:#fff;border-right:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.config-section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--text-primary, #333);padding-bottom:.5rem;border-bottom:1px solid var(--border-color, #f0f0f0)}.field-palette{display:flex;flex-direction:column;gap:.375rem}.palette-field{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--background-secondary, #f8f9fa);border:1px dashed var(--border-color, #e0e0e0);border-radius:6px;cursor:grab;font-size:.8125rem;transition:all .2s}.palette-field:hover{background:var(--primary-light, #e3f2fd);border-style:solid;border-color:var(--primary-color, #1976d2)}.palette-field:active{cursor:grabbing}.field-icon{font-size:.875rem}.no-fields{text-align:center;color:var(--text-secondary, #888);font-size:.8125rem;padding:1rem}.related-list-options{display:flex;flex-direction:column;gap:.5rem}.builder-canvas{flex:1;display:flex;flex-direction:column;padding:1rem;overflow-y:auto}.canvas-toolbar{display:flex;align-items:center;margin-bottom:1rem;position:relative}.btn-add-section{padding:.5rem 1rem;background:var(--primary-color, #1976d2);color:#fff;border:none;border-radius:6px;font-size:.875rem;cursor:pointer}.section-type-dropdown{position:absolute;top:100%;left:0;margin-top:.5rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:10;min-width:220px}.section-type-option{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:.75rem 1rem;background:none;border:none;border-bottom:1px solid var(--border-color, #f0f0f0);cursor:pointer;text-align:left}.section-type-option:last-child{border-bottom:none}.section-type-option:hover{background:var(--background-secondary, #f8f9fa)}.section-type-option strong{font-size:.875rem;color:var(--text-primary, #333)}.section-type-option span{font-size:.75rem;color:var(--text-secondary, #888);margin-top:.125rem}.sections-container{display:flex;flex-direction:column;gap:.75rem}.section-block{background:#fff;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s}.section-block:hover{border-color:var(--primary-color, #1976d2)}.section-block.selected{border-color:var(--primary-color, #1976d2);box-shadow:0 0 0 3px #1976d21a}.section-block.header{background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.section-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--background-secondary, #f8f9fa);border-bottom:1px solid var(--border-color, #e0e0e0)}.section-name{font-size:.8125rem;font-weight:600;color:var(--text-primary, #333)}.section-controls{display:flex;gap:.25rem}.section-fields{display:grid;gap:.5rem;padding:.75rem;min-height:60px}.section-fields.columns-1{grid-template-columns:1fr}.section-fields.columns-2{grid-template-columns:repeat(2,1fr)}.section-fields.columns-3{grid-template-columns:repeat(3,1fr)}.section-field{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--background-secondary, #f8f9fa);border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.8125rem}.remove-field{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;border-radius:50%}.remove-field:hover{background:#fee;color:var(--error-color, #dc3545)}.drop-zone{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;padding:1rem;border:2px dashed var(--border-color, #e0e0e0);border-radius:6px;color:var(--text-secondary, #888);font-size:.8125rem}.builder-properties{width:260px;background:#fff;border-left:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary, #888);text-align:center;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.8125rem}.checkbox-option{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;cursor:pointer;margin-bottom:.5rem}.page-layout-builder.preview-mode .builder-header{background:#1a1a2e;color:#fff}.preview-container{flex:1;padding:2rem;max-width:1200px;margin:0 auto}.preview-section{background:#fff;border-radius:8px;margin-bottom:1rem;border:1px solid var(--border-color, #e0e0e0);overflow:hidden}.preview-section.header{background:linear-gradient(135deg,#f8f9fa,#fff);border-left:4px solid var(--primary-color, #1976d2)}.preview-section-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--background-secondary, #f8f9fa);border-bottom:1px solid var(--border-color, #e0e0e0)}.preview-section-header h3{margin:0;font-size:.9375rem;font-weight:600}.preview-fields{display:grid;gap:1rem;padding:1rem}.preview-fields.columns-1{grid-template-columns:1fr}.preview-fields.columns-2{grid-template-columns:repeat(2,1fr)}.preview-fields.columns-3{grid-template-columns:repeat(3,1fr)}.preview-field{display:flex;flex-direction:column;gap:.25rem}.preview-field label{font-size:.75rem;color:var(--text-secondary, #888);font-weight:500}.preview-value{font-size:.875rem;color:var(--text-primary, #333);padding:.5rem;background:var(--background-secondary, #f8f9fa);border-radius:4px}.preview-related-lists{margin-top:2rem}.preview-related-lists h3{margin:0 0 1rem;font-size:1rem}.preview-related-list{background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;margin-bottom:1rem;overflow:hidden}.preview-related-list h4{margin:0;padding:.75rem 1rem;background:var(--background-secondary, #f8f9fa);font-size:.875rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.list-placeholder{padding:2rem;text-align:center;color:var(--text-secondary, #888);font-size:.875rem}@media (max-width: 1200px){.builder-sidebar{width:240px}.builder-properties{width:220px}}@media (max-width: 900px){.page-layout-builder .builder-content{flex-direction:column}.builder-sidebar,.builder-properties{width:100%;border:none;border-bottom:1px solid var(--border-color, #e0e0e0);max-height:200px}}.list-view-builder{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f5f7fa)}.list-view-builder .builder-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.list-view-builder .builder-content{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.builder-section{background:#fff;border-radius:8px;padding:1.25rem;border:1px solid var(--border-color, #e0e0e0)}.builder-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-primary, #333)}.section-desc{font-size:.8125rem;color:var(--text-secondary, #888);margin:-.5rem 0 1rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{margin:0}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group:last-child{margin-bottom:0}.form-group input,.form-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem}.columns-layout{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.available-columns h4,.selected-columns h4{margin:0 0 .75rem;font-size:.875rem;font-weight:500;color:var(--text-secondary, #666)}.column-list{display:flex;flex-direction:column;gap:.375rem;max-height:300px;overflow-y:auto;padding:.5rem;background:var(--background-secondary, #f8f9fa);border-radius:6px}.column-item{display:flex;align-items:center;padding:.5rem .75rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.8125rem;cursor:pointer;transition:all .2s}.column-item:hover{border-color:var(--primary-color, #1976d2)}.column-item.selected{background:var(--primary-light, #e3f2fd);border-color:var(--primary-color, #1976d2)}.column-item .field-label{flex:1}.column-item .field-type{font-size:.6875rem;color:var(--text-secondary, #888);background:var(--background-secondary, #f0f0f0);padding:.125rem .375rem;border-radius:3px;margin-right:.5rem}.column-item .add-btn,.column-item .remove-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--primary-color, #1976d2);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;line-height:1}.column-item .remove-btn{background:var(--error-color, #dc3545)}.column-order{display:flex;flex-direction:column;gap:2px;margin-right:.5rem}.order-btn{width:18px;height:14px;display:flex;align-items:center;justify-content:center;background:var(--background-secondary, #f0f0f0);border:1px solid var(--border-color, #e0e0e0);border-radius:2px;cursor:pointer;font-size:.6875rem}.order-btn:hover:not(:disabled){background:var(--primary-light, #e3f2fd)}.order-btn:disabled{opacity:.3;cursor:not-allowed}.no-filters{text-align:center;color:var(--text-secondary, #888);padding:1rem;font-size:.875rem}.filters-list{display:flex;flex-direction:column;gap:.5rem}.filter-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.logic-select{width:70px;padding:.375rem .5rem;font-size:.8125rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px}.field-select{min-width:150px;padding:.375rem .5rem;font-size:.8125rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px}.operator-select{min-width:120px;padding:.375rem .5rem;font-size:.8125rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px}.value-input{min-width:150px;flex:1;padding:.375rem .5rem;font-size:.8125rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px}.remove-filter{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;cursor:pointer;color:var(--text-secondary, #888)}.remove-filter:hover{background:#fee;border-color:var(--error-color, #dc3545);color:var(--error-color, #dc3545)}.btn-add{padding:.375rem .75rem;background:var(--primary-light, #e3f2fd);color:var(--primary-color, #1976d2);border:1px solid var(--primary-color, #1976d2);border-radius:6px;font-size:.8125rem;cursor:pointer}.list-view-builder.preview-mode .builder-header{background:#1a1a2e;color:#fff}.preview-container{flex:1;display:flex;flex-direction:column;padding:1.5rem}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.filter-count{font-size:.8125rem;color:var(--text-secondary, #666);background:var(--background-secondary, #f0f0f0);padding:.25rem .75rem;border-radius:12px}.preview-actions{display:flex;gap:.5rem}.preview-table-container{flex:1;overflow-x:auto;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px}.preview-table{width:100%;border-collapse:collapse}.preview-table th,.preview-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color, #e0e0e0)}.preview-table th{background:var(--background-secondary, #f8f9fa);font-size:.8125rem;font-weight:600;color:var(--text-secondary, #666)}.preview-table td{font-size:.875rem}.preview-table tr:hover td{background:var(--background-secondary, #f8f9fa)}.checkbox-col{width:40px}.actions-col{width:120px}.sort-indicator{color:var(--primary-color, #1976d2)}.row-actions{display:flex;gap:.5rem}.action-btn{padding:.25rem .5rem;background:none;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.75rem;cursor:pointer}.action-btn.delete{color:var(--error-color, #dc3545);border-color:var(--error-color, #dc3545)}.preview-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:.75rem 1rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px}.pagination-controls{display:flex;gap:.5rem}.pagination-controls button{padding:.375rem .75rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.8125rem;cursor:pointer}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.form-row,.columns-layout{grid-template-columns:1fr}.filter-row{flex-direction:column;align-items:stretch}.filter-row select,.filter-row input{width:100%}}.approval-process-builder{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f5f7fa)}.approval-process-builder .builder-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.approval-process-builder .builder-content{flex:1;display:flex;overflow:hidden}.approval-process-builder .builder-sidebar{width:300px;background:#fff;border-right:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.section-header h4{margin:0}.no-criteria{text-align:center;padding:1rem;background:var(--background-secondary, #f8f9fa);border-radius:6px;color:var(--text-secondary, #888);font-size:.8125rem}.options-list{display:flex;flex-direction:column;gap:.5rem}.approval-process-builder .builder-canvas{flex:1;display:flex;flex-direction:column;padding:1rem;overflow-y:auto}.steps-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.steps-header h3{margin:0;font-size:1rem;font-weight:600}.steps-list{display:flex;flex-direction:column;gap:.75rem}.step-card{background:#fff;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;cursor:pointer;transition:all .2s;overflow:hidden}.step-card:hover{border-color:var(--primary-color, #1976d2)}.step-card.selected{border-color:var(--primary-color, #1976d2);box-shadow:0 0 0 3px #1976d21a}.step-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--background-secondary, #f8f9fa);border-bottom:1px solid var(--border-color, #e0e0e0)}.step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--primary-color, #1976d2);color:#fff;border-radius:50%;font-size:.875rem;font-weight:600}.step-name{flex:1;font-weight:600;font-size:.9375rem}.step-controls{display:flex;gap:.25rem}.control-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.75rem;cursor:pointer}.control-btn:hover:not(:disabled){background:var(--background-secondary, #f0f0f0)}.control-btn:disabled{opacity:.4;cursor:not-allowed}.control-btn.delete:hover{background:#fee;border-color:var(--error-color, #dc3545);color:var(--error-color, #dc3545)}.step-summary{padding:.75rem 1rem;display:flex;align-items:center;gap:.75rem}.approver-type{font-size:.8125rem;color:var(--text-secondary, #666)}.escalation-badge{font-size:.6875rem;background:#fff3cd;color:#856404;padding:.125rem .5rem;border-radius:12px}.approval-process-builder .builder-properties{width:300px;background:#fff;border-left:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.escalation-config{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.btn-add{padding:.375rem .75rem;background:var(--primary-color, #1976d2);color:#fff;border:none;border-radius:6px;font-size:.8125rem;cursor:pointer}.process-preview{max-width:800px;margin:0 auto;background:#fff;border-radius:12px;padding:2rem;border:1px solid var(--border-color, #e0e0e0)}.process-preview h3{margin:0 0 .5rem;font-size:1.5rem}.process-desc{color:var(--text-secondary, #666);margin:0 0 2rem}.preview-criteria{margin-bottom:2rem;padding:1rem;background:var(--background-secondary, #f8f9fa);border-radius:8px}.preview-criteria h4{margin:0 0 .75rem;font-size:.9375rem}.preview-criteria ul{margin:0;padding-left:1.25rem}.preview-criteria li{margin-bottom:.25rem;font-size:.875rem}.preview-steps h4{margin:0 0 1rem;font-size:.9375rem}.steps-flow{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.flow-step{display:flex;align-items:center;gap:.5rem}.step-badge{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--primary-color, #1976d2);color:#fff;border-radius:50%;font-weight:600}.step-content{display:flex;flex-direction:column;padding:.75rem 1rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px}.step-content strong{font-size:.875rem}.step-content .approver-info{font-size:.75rem;color:var(--text-secondary, #888)}.step-arrow{font-size:1.5rem;color:var(--text-secondary, #888)}.flow-end{display:flex;flex-direction:column;gap:.25rem;margin-left:.5rem}.end-approved{color:var(--success-color, #28a745);font-size:.875rem;font-weight:500}.end-rejected{color:var(--error-color, #dc3545);font-size:.875rem;font-weight:500}@media (max-width: 1100px){.approval-process-builder .builder-sidebar,.approval-process-builder .builder-properties{width:260px}}@media (max-width: 900px){.approval-process-builder .builder-content{flex-direction:column}.approval-process-builder .builder-sidebar,.approval-process-builder .builder-properties{width:100%;border:none;border-bottom:1px solid var(--border-color, #e0e0e0);max-height:250px}}.notification-rule-builder{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f5f7fa)}.notification-rule-builder .builder-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.notification-rule-builder .builder-content{flex:1;display:flex;overflow:hidden}.notification-rule-builder .builder-sidebar{width:320px;background:#fff;border-right:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.config-section{margin-bottom:1.5rem}.config-section h4{margin:0 0 .75rem;font-size:.9375rem;font-weight:600;color:var(--text-primary, #333)}.trigger-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1rem}.trigger-option{display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;background:var(--background-secondary, #f8f9fa);border:2px solid var(--border-color, #e0e0e0);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.trigger-option:hover,.trigger-option.selected{border-color:var(--primary-color, #1976d2);background:var(--primary-light, #e3f2fd)}.trigger-icon{font-size:1.25rem;margin-bottom:.25rem}.trigger-label{font-size:.75rem;font-weight:500}.trigger-config{padding-top:.75rem;border-top:1px solid var(--border-color, #e0e0e0)}.no-conditions{text-align:center;padding:1rem;background:var(--background-secondary, #f8f9fa);border-radius:6px;color:var(--text-secondary, #888);font-size:.8125rem}.logic-toggle{display:flex;margin-bottom:.75rem;background:var(--background-secondary, #f0f0f0);border-radius:6px;padding:2px}.logic-toggle button{flex:1;padding:.375rem .75rem;background:none;border:none;border-radius:4px;font-size:.8125rem;cursor:pointer;color:var(--text-secondary, #666)}.logic-toggle button.active{background:#fff;color:var(--primary-color, #1976d2);box-shadow:0 1px 3px #0000001a}.conditions-list{display:flex;flex-direction:column;gap:.5rem}.condition-row{display:flex;gap:.375rem;align-items:center}.condition-row select,.condition-row input{flex:1;min-width:0;padding:.375rem .5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.75rem}.notification-rule-builder .builder-canvas{flex:1;display:flex;flex-direction:column;overflow:hidden}.channel-tabs{display:flex;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0);padding:0 1rem}.channel-tab{padding:.75rem 1.25rem;background:none;border:none;border-bottom:2px solid transparent;font-size:.875rem;font-weight:500;color:var(--text-secondary, #666);cursor:pointer;display:flex;align-items:center;gap:.5rem}.channel-tab:hover{color:var(--text-primary, #333)}.channel-tab.active{color:var(--primary-color, #1976d2);border-bottom-color:var(--primary-color, #1976d2)}.channel-tab.enabled:after{content:"✓";margin-left:.25rem;color:var(--success-color, #28a745);font-size:.75rem}.channel-content{flex:1;overflow-y:auto;padding:1.5rem}.channel-config{max-width:600px}.channel-toggle{padding:.75rem 1rem;background:var(--background-secondary, #f8f9fa);border-radius:8px;margin-bottom:1rem}.variables-bar{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem;background:#fffde7;border-radius:6px;flex-wrap:wrap}.variables-bar span{font-size:.75rem;color:var(--text-secondary, #666)}.var-btn{padding:.25rem .5rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.6875rem;font-family:monospace;cursor:pointer}.var-btn:hover{background:var(--primary-light, #e3f2fd);border-color:var(--primary-color, #1976d2)}.code-input{font-family:Monaco,Menlo,monospace;font-size:.8125rem}.notification-rule-builder .builder-properties{width:280px;background:#fff;border-left:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.recipients-options{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.role-chips{display:flex;flex-wrap:wrap;gap:.375rem}.role-chip{padding:.25rem .625rem;background:var(--background-secondary, #f0f0f0);border:1px solid var(--border-color, #e0e0e0);border-radius:12px;font-size:.75rem;cursor:pointer}.role-chip:hover{background:var(--primary-light, #e3f2fd)}.role-chip.selected{background:var(--primary-color, #1976d2);color:#fff;border-color:var(--primary-color, #1976d2)}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.form-group label{display:block;font-size:.8125rem;font-weight:500;color:var(--text-primary, #333);margin-bottom:.375rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem}.help-text{display:block;font-size:.75rem;color:var(--text-secondary, #888);margin-top:.25rem}.checkbox-option{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;cursor:pointer}.checkbox-option input{width:16px;height:16px;accent-color:var(--primary-color, #1976d2)}.btn-primary{padding:.5rem 1rem;background:var(--primary-color, #1976d2);color:#fff;border:none;border-radius:6px;font-size:.875rem;cursor:pointer}.btn-secondary{padding:.5rem 1rem;background:#fff;color:var(--text-secondary, #666);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem;cursor:pointer}.btn-add-sm{padding:.25rem .5rem;background:var(--primary-light, #e3f2fd);color:var(--primary-color, #1976d2);border:1px solid var(--primary-color, #1976d2);border-radius:4px;font-size:.75rem;cursor:pointer}.btn-remove{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;cursor:pointer;color:var(--text-secondary, #888);flex-shrink:0}.btn-remove:hover{background:#fee;border-color:var(--error-color, #dc3545);color:var(--error-color, #dc3545)}.preview-container{flex:1;padding:2rem;overflow-y:auto}.rule-preview{max-width:600px;margin:0 auto;background:#fff;border-radius:12px;padding:2rem;border:1px solid var(--border-color, #e0e0e0)}.rule-preview h3{margin:0 0 .5rem;font-size:1.25rem}.rule-desc{color:var(--text-secondary, #666);margin:0 0 2rem}.preview-section{margin-bottom:1.5rem;padding:1rem;background:var(--background-secondary, #f8f9fa);border-radius:8px}.preview-section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600}.trigger-summary{display:flex;align-items:center;gap:.5rem;font-size:.9375rem}.trigger-summary .trigger-icon{font-size:1.25rem}.channels-summary{display:flex;gap:.5rem}.channel-badge{padding:.25rem .75rem;border-radius:12px;font-size:.8125rem}.channel-badge.email{background:#e3f2fd;color:#1976d2}.channel-badge.inapp{background:#fff3e0;color:#e65100}.channel-badge.webhook{background:#e8f5e9;color:#2e7d32}.recipients-summary{margin:0;padding-left:1.25rem}.recipients-summary li{margin-bottom:.25rem;font-size:.875rem}.channel-count{font-size:.75rem;padding:.25rem .5rem;background:#e3f2fd;color:#1976d2;border-radius:12px;margin-left:.5rem}.channel-tab .enabled-dot{width:6px;height:6px;background:#4caf50;border-radius:50%;margin-left:.375rem}.channel-badge.slack{background:#4a154b;color:#fff}.channel-badge.msTeams{background:#5558af;color:#fff}.channel-badge.sms{background:#2196f3;color:#fff}.integration-notice{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:#e3f2fd;border:1px solid #90caf9;border-radius:6px;margin-bottom:1rem;font-size:.8125rem}.integration-notice.warning{background:#fff3e0;border-color:#ffb74d}.integration-notice .notice-icon{flex-shrink:0}.integration-notice a{color:#1976d2;font-weight:500}.variables-bar{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--background-secondary, #f5f7fa);border-radius:6px;margin-bottom:1rem;flex-wrap:wrap}.variables-bar span{font-size:.75rem;color:var(--text-secondary, #666);flex-shrink:0}.variable-buttons{display:flex;flex-wrap:wrap;gap:.25rem}.var-btn{padding:.25rem .5rem;font-size:.6875rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:3px;cursor:pointer;font-family:monospace}.var-btn:hover{border-color:var(--primary-color, #1976d2);background:#e3f2fd}.var-btn.more{background:var(--primary-color, #1976d2);color:#fff;border-color:var(--primary-color);font-family:inherit}.notification-type-options{display:flex;gap:.5rem;flex-wrap:wrap}.type-option{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#fff;border:2px solid var(--border-color, #e0e0e0);border-radius:20px;cursor:pointer;font-size:.8125rem}.type-option.selected{background:#f5f5f5}.type-dot{width:8px;height:8px;border-radius:50%}.slack-blocks-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.slack-blocks-section label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.block-actions{display:flex;gap:.5rem;margin-bottom:.75rem}.btn-sm{padding:.25rem .625rem;font-size:.75rem;background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;cursor:pointer}.btn-sm:hover{background:var(--background-secondary);border-color:var(--primary-color, #1976d2)}.teams-actions-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.teams-actions-section label{display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.teams-action-row{display:flex;gap:.5rem;margin-top:.5rem}.teams-action-row input{flex:1;padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:4px;font-size:.8125rem}.char-count{float:right;font-size:.75rem;color:var(--text-secondary)}.preview-header-section{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.preview-header-section h3{margin:0}.status-badge{padding:.25rem .625rem;border-radius:12px;font-size:.75rem;font-weight:500}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#f5f5f5;color:#9e9e9e}.test-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.test-modal{background:#fff;border-radius:12px;padding:1.5rem;min-width:400px;max-width:500px}.test-modal h3{margin:0 0 1.5rem}.test-loading{text-align:center;padding:2rem}.spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:var(--primary-color, #1976d2);border-radius:50%;margin:0 auto 1rem;animation:spin 1s linear infinite}.test-results{padding:1rem 0}.success-banner{padding:.75rem 1rem;background:#e8f5e9;color:#2e7d32;border-radius:6px;font-weight:500;margin-bottom:1rem}.result-list{list-style:none;padding:0;margin:0}.result-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f5f5f5;border-radius:6px;margin-bottom:.5rem}.result-item.success{background:#f1f8e9}.channel-name{font-weight:500;min-width:80px}.result-status{color:#4caf50;font-weight:500}.result-detail{color:var(--text-secondary);font-size:.8125rem}.notification-rule-builder .form-row{display:flex;gap:.75rem}.notification-rule-builder .form-row .form-group{flex:1}@media (max-width: 1100px){.notification-rule-builder .builder-sidebar,.notification-rule-builder .builder-properties{width:260px}.trigger-grid{grid-template-columns:1fr}}@media (max-width: 900px){.notification-rule-builder .builder-content{flex-direction:column}.notification-rule-builder .builder-sidebar,.notification-rule-builder .builder-properties{width:100%;border:none;border-bottom:1px solid var(--border-color, #e0e0e0);max-height:250px}.trigger-grid{grid-template-columns:repeat(3,1fr)}.variables-bar{flex-direction:column;align-items:flex-start}.notification-type-options{flex-direction:column}}.dashboard-widget-builder{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f5f7fa)}.dashboard-widget-builder .builder-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.dashboard-widget-builder .header-info{display:flex;align-items:center;gap:1rem}.dashboard-widget-builder .header-info h2{margin:0;font-size:1.25rem}.widget-name-badge{padding:.25rem .75rem;background:var(--primary-light, #e3f2fd);color:var(--primary-color, #1976d2);border-radius:16px;font-size:.8125rem;font-weight:500}.dashboard-widget-builder .builder-actions{display:flex;gap:.75rem}.dashboard-widget-builder .builder-actions button{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s}.dashboard-widget-builder .btn-secondary{background:#fff;border:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #333)}.dashboard-widget-builder .btn-secondary:hover{background:var(--background-secondary)}.dashboard-widget-builder .btn-primary{background:var(--primary-color, #1976d2);border:none;color:#fff}.dashboard-widget-builder .btn-primary:hover{background:#1565c0}.dashboard-widget-builder .builder-content{display:flex;flex:1;overflow:hidden}.dashboard-widget-builder .builder-sidebar{width:380px;background:#fff;border-right:1px solid var(--border-color, #e0e0e0);display:flex;flex-direction:column}.sidebar-tabs{display:flex;border-bottom:1px solid var(--border-color, #e0e0e0)}.sidebar-tabs .tab{flex:1;padding:.75rem .5rem;border:none;background:transparent;font-size:.75rem;color:var(--text-secondary, #666);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.sidebar-tabs .tab:hover{background:var(--background-secondary)}.sidebar-tabs .tab.active{color:var(--primary-color, #1976d2);border-bottom-color:var(--primary-color, #1976d2)}.sidebar-content{flex:1;padding:1.25rem;overflow-y:auto}.dashboard-widget-builder .form-group{margin-bottom:1rem}.dashboard-widget-builder .form-group label{display:block;font-size:.8125rem;font-weight:500;color:var(--text-secondary, #666);margin-bottom:.375rem}.dashboard-widget-builder .form-group input[type=text],.dashboard-widget-builder .form-group input[type=url],.dashboard-widget-builder .form-group input[type=number],.dashboard-widget-builder .form-group select,.dashboard-widget-builder .form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem}.dashboard-widget-builder .form-group input:focus,.dashboard-widget-builder .form-group select:focus,.dashboard-widget-builder .form-group textarea:focus{outline:none;border-color:var(--primary-color, #1976d2);box-shadow:0 0 0 3px #1976d21a}.dashboard-widget-builder .form-row{display:flex;gap:.75rem}.dashboard-widget-builder .form-row .form-group{flex:1}.checkbox-option{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;cursor:pointer;font-size:.875rem}.checkbox-option input[type=checkbox]{width:16px;height:16px}.widget-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.75rem;margin-bottom:1rem}.widget-type-card{display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;background:var(--background-secondary, #f5f7fa);border:2px solid var(--border-color, #e0e0e0);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.widget-type-card:hover,.widget-type-card.selected{border-color:var(--primary-color, #1976d2);background:var(--primary-light, #e3f2fd)}.type-icon{font-size:1.25rem;margin-bottom:.25rem}.type-name{font-size:.6875rem;font-weight:500}.size-options{display:flex;gap:.5rem}.size-btn{flex:1;display:flex;flex-direction:column;align-items:center;padding:.5rem;border:2px solid var(--border-color, #e0e0e0);background:#fff;border-radius:6px;cursor:pointer;font-size:.6875rem;text-transform:capitalize}.size-btn:hover{border-color:var(--primary-color, #1976d2)}.size-btn.selected{border-color:var(--primary-color, #1976d2);background:var(--primary-light, #e3f2fd)}.color-scheme-options{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.color-scheme-btn{display:flex;gap:2px;padding:.375rem .5rem;border:2px solid var(--border-color, #e0e0e0);background:#fff;border-radius:6px;cursor:pointer}.color-scheme-btn:hover{border-color:var(--primary-color, #1976d2)}.color-scheme-btn.selected{border-color:var(--primary-color, #1976d2);background:var(--primary-light, #e3f2fd)}.color-dot{width:14px;height:14px;border-radius:3px}.builder-preview{flex:1;padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.preview-header h3{margin:0;font-size:1rem;color:var(--text-secondary, #666)}.size-indicator{padding:.25rem .5rem;background:var(--background-secondary);border-radius:4px;font-size:.75rem;text-transform:uppercase}.preview-canvas{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:2rem;background:#e5e5e5;border-radius:12px}.preview-canvas.size-small .widget-preview{width:200px;min-height:120px}.preview-canvas.size-medium .widget-preview{width:320px;min-height:180px}.preview-canvas.size-large .widget-preview{width:480px;min-height:240px}.preview-canvas.size-full .widget-preview{width:100%;max-width:700px;min-height:280px}.widget-preview{width:100%}.widget-preview.kpi{display:flex;align-items:center;gap:1rem}.kpi-icon{font-size:2.5rem}.kpi-content{flex:1}.kpi-value{font-size:2rem;font-weight:700;color:var(--text-primary, #333);line-height:1.1}.kpi-label{font-size:.875rem;color:var(--text-secondary, #666);margin-top:.25rem}.kpi-comparison{font-size:.75rem;margin-top:.375rem;padding:.125rem .5rem;border-radius:12px;display:inline-block}.kpi-comparison.positive{background:#e8f5e9;color:#2e7d32}.kpi-comparison.negative{background:#ffebee;color:#c62828}.widget-preview.number{text-align:center}.number-value{font-size:3rem;font-weight:700;line-height:1.1}.number-label{font-size:.9375rem;color:var(--text-secondary, #666);margin-top:.5rem}.widget-preview.chart .chart-header{margin-bottom:1rem}.widget-preview.chart .chart-header h4{margin:0;font-size:.9375rem}.chart-placeholder{height:120px;display:flex;align-items:flex-end;justify-content:center}.chart-placeholder.line{padding:.5rem}.mini-chart{width:100%;height:100%}.chart-placeholder.bar{gap:.5rem;padding:0 1rem}.bar-item{width:30px;border-radius:4px 4px 0 0;opacity:.8}.bar-item:hover{opacity:1}.chart-placeholder.pie{display:flex;align-items:center;justify-content:center}.pie-chart{width:100px;height:100px}.widget-preview.gauge{text-align:center}.gauge-display{position:relative}.gauge-svg{width:150px;height:90px}.gauge-value{position:absolute;bottom:10px;left:50%;transform:translate(-50%);font-size:1.5rem;font-weight:700}.gauge-label{margin-top:.5rem;color:var(--text-secondary, #666);font-size:.875rem}.widget-preview.table .table-header{margin-bottom:.75rem}.widget-preview.table .table-header h4{margin:0;font-size:.9375rem}.mini-table{font-size:.75rem}.table-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border-color, #e0e0e0)}.table-row.header{font-weight:600;color:var(--text-secondary, #666)}.table-row .status-badge{padding:.125rem .5rem;background:#e8f5e9;color:#2e7d32;border-radius:10px;font-size:.625rem}.widget-preview.activity .activity-header{margin-bottom:.75rem}.widget-preview.activity .activity-header h4{margin:0;font-size:.9375rem}.activity-feed{display:flex;flex-direction:column;gap:.75rem}.activity-item{display:flex;gap:.75rem;align-items:flex-start}.activity-avatar{width:32px;height:32px;background:var(--primary-color, #1976d2);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.6875rem;font-weight:600;flex-shrink:0}.activity-content{flex:1;font-size:.75rem;line-height:1.4}.activity-user{font-weight:600}.activity-action{color:var(--text-secondary, #666)}.activity-target{color:var(--primary-color, #1976d2)}.activity-time{display:block;color:var(--text-secondary, #888);font-size:.625rem;margin-top:.125rem}.widget-preview.progress-widget .progress-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.progress-label{font-weight:500;font-size:.875rem}.progress-value{font-weight:700;font-size:.875rem}.progress-bar-container{height:12px;background:var(--background-secondary, #e0e0e0);border-radius:6px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:6px;transition:width .5s ease}.progress-footer{display:flex;justify-content:space-between;margin-top:.25rem;font-size:.6875rem;color:var(--text-secondary, #888)}.widget-preview.actions h4{margin:0 0 1rem;font-size:.9375rem}.quick-actions-grid{display:flex;gap:.5rem;flex-wrap:wrap}.quick-action-btn{display:flex;flex-direction:column;align-items:center;gap:.375rem;padding:.75rem 1rem;border:1px solid var(--border-color, #e0e0e0);background:var(--background-secondary, #f5f7fa);border-radius:8px;cursor:pointer;transition:all .2s}.quick-action-btn:hover{background:var(--primary-light, #e3f2fd);border-color:var(--primary-color, #1976d2)}.action-icon{font-size:1.25rem}.action-label{font-size:.6875rem;color:var(--text-secondary, #666)}.widget-preview.richtext{font-size:.875rem;line-height:1.6}.widget-preview.richtext h3{margin:0 0 .5rem;font-size:1.125rem}.widget-preview.richtext p{margin:0;color:var(--text-secondary, #666)}.widget-preview.embed .embed-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:150px;background:var(--background-secondary, #f5f7fa);border:2px dashed var(--border-color, #e0e0e0);border-radius:8px;text-align:center}.embed-placeholder span{font-size:2rem;margin-bottom:.5rem}.embed-placeholder p{margin:0;color:var(--text-secondary, #666);font-size:.875rem}.embed-placeholder small{color:var(--text-secondary, #888);font-size:.75rem;margin-top:.25rem}@media (max-width: 1100px){.dashboard-widget-builder .builder-sidebar{width:320px}.widget-type-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.dashboard-widget-builder .builder-content{flex-direction:column}.dashboard-widget-builder .builder-sidebar{width:100%;border:none;border-bottom:1px solid var(--border-color, #e0e0e0);max-height:50vh}.builder-preview{min-height:300px}}.email-template-editor{display:flex;flex-direction:column;height:100%;background:var(--background-secondary, #f5f7fa)}.email-template-editor .editor-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color, #e0e0e0)}.email-template-editor .header-left{display:flex;align-items:center;gap:1rem}.email-template-editor .header-left h2{margin:0;font-size:1.25rem}.template-name-input{padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.9375rem;min-width:200px}.preview-toggle,.view-toggle{display:flex;background:var(--background-secondary, #f5f7fa);border-radius:6px;padding:2px}.preview-toggle button,.view-toggle button{padding:.375rem .75rem;border:none;background:transparent;border-radius:4px;font-size:.8125rem;cursor:pointer}.preview-toggle button.active,.view-toggle button.active{background:#fff;box-shadow:0 1px 3px #0000001a}.email-template-editor .btn-secondary{padding:.5rem 1rem;border:1px solid var(--border-color, #e0e0e0);background:#fff;border-radius:6px;cursor:pointer}.email-template-editor .btn-primary{padding:.5rem 1rem;border:none;background:var(--primary-color, #1976d2);color:#fff;border-radius:6px;cursor:pointer}.editor-content{display:flex;flex:1;overflow:hidden}.editor-sidebar{width:280px;background:#fff;border-right:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.editor-sidebar h4{margin:0 0 .75rem;font-size:.9375rem;color:var(--text-secondary, #666)}.component-palette{margin-bottom:1.5rem}.component-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.component-item{display:flex;flex-direction:column;align-items:center;padding:.625rem .375rem;background:var(--background-secondary, #f5f7fa);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;cursor:grab;transition:all .2s}.component-item:hover{border-color:var(--primary-color, #1976d2);background:var(--primary-light, #e3f2fd)}.component-item:active{cursor:grabbing}.component-icon{font-size:1.25rem;margin-bottom:.25rem}.component-label{font-size:.625rem;color:var(--text-secondary, #666)}.template-settings,.style-settings{margin-bottom:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.editor-sidebar .form-group{margin-bottom:.875rem}.editor-sidebar .form-group label{display:block;font-size:.75rem;font-weight:500;color:var(--text-secondary, #666);margin-bottom:.25rem}.editor-sidebar .form-group input[type=text],.editor-sidebar .form-group input[type=url],.editor-sidebar .form-group input[type=number],.editor-sidebar .form-group select{width:100%;padding:.375rem .5rem;border:1px solid var(--border-color, #e0e0e0);border-radius:4px;font-size:.8125rem}.editor-sidebar .form-row{display:flex;gap:.5rem}.editor-sidebar .form-row .form-group{flex:1}.editor-canvas{flex:1;overflow-y:auto;padding:2rem;display:flex;justify-content:center}.editor-canvas.preview-mode{background:#333}.editor-canvas.mobile .email-content{max-width:375px!important}.email-canvas{width:100%;min-height:100%;padding:2rem;display:flex;justify-content:center}.email-content{width:100%;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.empty-canvas{padding:4rem 2rem;text-align:center;color:var(--text-secondary, #666);background:#f9f9f9;border:2px dashed var(--border-color, #e0e0e0);border-radius:8px;margin:1rem}.email-component{position:relative;cursor:pointer;transition:all .2s}.email-component:hover,.email-component.selected{outline:2px solid var(--primary-color, #1976d2);outline-offset:-2px}.component-controls{position:absolute;top:0;right:0;display:none;gap:.25rem;padding:.25rem;background:#000000b3;border-radius:0 0 0 6px;z-index:10}.email-component:hover .component-controls,.email-component.selected .component-controls{display:flex}.component-controls button{width:24px;height:24px;padding:0;border:none;background:#fff3;color:#fff;border-radius:4px;cursor:pointer;font-size:.75rem}.component-controls button:hover{background:#ffffff4d}.component-controls button.delete:hover{background:#dc3545}.drop-indicator{position:absolute;bottom:-4px;left:0;right:0;height:8px;opacity:0;transition:opacity .2s}.email-component:hover .drop-indicator{opacity:1;background:linear-gradient(to bottom,transparent,var(--primary-light, #e3f2fd))}.header-preview{padding:32px}.header-preview h2{margin:0;font-size:1.5rem}.header-preview p{margin:8px 0 0;opacity:.9}.header-logo{max-height:50px;margin-bottom:16px}.text-preview{padding:16px;line-height:1.6}.text-preview p{margin:0}.image-preview{padding:16px}.image-placeholder{padding:3rem;background:var(--background-secondary, #f5f7fa);border:2px dashed var(--border-color);border-radius:8px;text-align:center;color:var(--text-secondary)}.image-placeholder span{font-size:2rem}.button-preview{padding:16px}.divider-preview{padding:16px 0}.spacer-preview{position:relative;background:repeating-linear-gradient(45deg,#f0f0f0,#f0f0f0 10px,#fff 10px,#fff 20px)}.spacer-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:2px 8px;border-radius:4px;font-size:.75rem;color:var(--text-secondary)}.columns-preview{padding:16px}.columns-preview .column{padding:8px;background:#f9f9f9;border:1px dashed #ddd;border-radius:4px;min-height:50px}.list-preview ul{margin:0;padding-left:20px}.quote-preview{padding:16px;margin:16px;background:#f9f9f9}.quote-text{margin:0;font-style:italic;font-size:1.125rem}.quote-author{margin:8px 0 0;color:var(--text-secondary);font-size:.875rem}.social-preview{padding:16px}.social-icon{display:inline-block;margin:0 8px}.html-preview{padding:16px;background:#f9f9f9}.html-preview code{font-size:.75rem;color:var(--text-secondary)}.email-footer{padding:24px;text-align:center;font-size:.75rem;color:#888;background:#f5f5f5}.email-footer p{margin:0 0 4px}.email-footer a{color:#888}.html-view{flex:1;background:#1e1e1e;padding:1rem;overflow:auto}.html-view pre{margin:0;white-space:pre-wrap;word-wrap:break-word;font-size:.8125rem;color:#d4d4d4;font-family:Monaco,Menlo,monospace}.editor-properties{width:300px;background:#fff;border-left:1px solid var(--border-color, #e0e0e0);overflow-y:auto;padding:1rem}.properties-panel h4{margin:0 0 1rem;font-size:.9375rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.properties-panel.empty{display:flex;align-items:center;justify-content:center;color:var(--text-secondary);text-align:center}.properties-panel .form-group{margin-bottom:1rem}.properties-panel .form-group label{display:block;font-size:.75rem;font-weight:500;color:var(--text-secondary, #666);margin-bottom:.375rem}.properties-panel .form-group input[type=text],.properties-panel .form-group input[type=url],.properties-panel .form-group input[type=number],.properties-panel .form-group select,.properties-panel .form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem}.properties-panel .form-row{display:flex;gap:.5rem}.properties-panel .form-row .form-group{flex:1}.checkbox-option{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer}.alignment-options{display:flex;gap:.25rem}.alignment-options button{flex:1;padding:.5rem;border:1px solid var(--border-color);background:#fff;border-radius:4px;cursor:pointer}.alignment-options button.active{background:var(--primary-light, #e3f2fd);border-color:var(--primary-color)}.variables-helper{margin-top:.75rem;padding:.75rem;background:var(--background-secondary, #f5f7fa);border-radius:6px}.variables-helper label{display:block;font-size:.75rem;color:var(--text-secondary);margin-bottom:.5rem}.variable-chips{display:flex;flex-wrap:wrap;gap:.25rem}.variable-chips button{padding:.25rem .5rem;font-size:.6875rem;background:#fff;border:1px solid var(--border-color);border-radius:4px;cursor:pointer}.variable-chips button:hover{background:var(--primary-light);border-color:var(--primary-color)}@media (max-width: 1200px){.editor-sidebar{width:240px}.editor-properties{width:260px}.component-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.editor-content{flex-direction:column}.editor-sidebar,.editor-properties{width:100%;border:none;border-bottom:1px solid var(--border-color);max-height:200px}.editor-canvas{min-height:400px}.header-actions{flex-wrap:wrap}}.automation-builder{height:100%;display:flex;flex-direction:column;background:#f8fafc}.automation-builder-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-bottom:1px solid #e2e8f0}.automation-builder-header h2{margin:0;font-size:20px;color:#1e293b}.automation-builder-header p{margin:4px 0 0;font-size:14px;color:#64748b}.automation-builder-actions{display:flex;gap:12px}.automation-error{background:#fef2f2;color:#dc2626;padding:12px 24px;font-size:14px}.automation-builder-content{flex:1;display:grid;grid-template-columns:400px 1fr;overflow:hidden}.automation-config-panel{background:#fff;border-right:1px solid #e2e8f0;overflow-y:auto;padding:24px}.config-section{margin-bottom:32px}.config-section h3{font-size:14px;font-weight:600;color:#1e293b;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.trigger-type-selector{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.trigger-type-option{display:flex;align-items:flex-start;gap:12px;padding:12px;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.trigger-type-option:hover{border-color:#667eea;background:#faf5ff}.trigger-type-option.selected{border-color:#667eea;background:#f5f3ff}.trigger-icon{font-size:20px;line-height:1}.trigger-type-option strong{display:block;font-size:14px;color:#1e293b;margin-bottom:2px}.trigger-type-option small{display:block;font-size:12px;color:#64748b}.form-group input.error,.form-group select.error{border-color:#dc2626}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:18px;height:18px}.automation-flow-panel{display:flex;flex-direction:column;overflow:hidden}.flow-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-bottom:1px solid #e2e8f0}.flow-header h3{margin:0;font-size:16px;color:#1e293b}.actions-flow{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;align-items:center}.flow-node{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border:2px solid #e2e8f0;border-radius:12px;width:300px;cursor:pointer;transition:all .2s;position:relative}.flow-node:hover{border-color:#667eea;box-shadow:0 4px 12px #00000014}.flow-node.selected{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.flow-node.start-node{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#22c55e}.flow-node.end-node{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.node-icon{font-size:24px;line-height:1}.node-content{flex:1;min-width:0}.node-content strong{display:block;font-size:14px;color:#1e293b;margin-bottom:2px}.node-content small{display:block;font-size:12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.flow-node:hover .node-actions{opacity:1}.node-actions button{width:24px;height:24px;border:none;background:#f1f5f9;border-radius:4px;cursor:pointer;font-size:14px;color:#64748b;transition:all .2s}.node-actions button:hover{background:#e2e8f0;color:#1e293b}.node-actions button.delete:hover{background:#fef2f2;color:#dc2626}.node-actions button:disabled{opacity:.3;cursor:not-allowed}.flow-connector{width:2px;height:24px;background:#e2e8f0;margin:8px 0}.action-details-panel{border-top:1px solid #e2e8f0;background:#fff}.config-panel{padding:16px 24px}.config-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.config-panel-header h4{margin:0;font-size:14px;color:#1e293b}.config-panel-header button{background:none;border:none;font-size:20px;color:#64748b;cursor:pointer}.config-help{margin-top:16px;padding:12px;background:#f8fafc;border-radius:6px;font-size:12px;color:#64748b}.config-help p{margin:4px 0}.config-help code{background:#e2e8f0;padding:2px 6px;border-radius:4px;font-size:11px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:16px;max-width:90vw;max-height:90vh;overflow:auto}.action-selector-modal{padding:24px;width:600px}.action-selector-modal h3{margin:0 0 20px;font-size:18px;color:#1e293b}.action-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.action-type-card{padding:16px;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s;text-align:center}.action-type-card:hover{border-color:#667eea;background:#faf5ff}.action-icon{display:block;font-size:28px;margin-bottom:8px}.action-type-card strong{display:block;font-size:14px;color:#1e293b;margin-bottom:4px}.action-type-card small{display:block;font-size:12px;color:#64748b}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.btn-secondary{background:#fff;color:#64748b;border:1px solid #e2e8f0;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f8fafc;color:#1e293b}.btn-outline{background:#fff;color:#667eea;border:1px solid #667eea;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.integration-builder{height:100%;display:flex;flex-direction:column;background:#f8fafc}.integration-builder-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:#fff;border-bottom:1px solid #e2e8f0}.integration-builder-header h2{margin:0;font-size:20px;color:#1e293b}.integration-builder-header p{margin:4px 0 0;font-size:14px;color:#64748b}.integration-builder-actions{display:flex;gap:12px}.integration-error{background:#fef2f2;color:#dc2626;padding:12px 24px;font-size:14px}.integration-builder-content{flex:1;overflow-y:auto;padding:24px}.provider-selection{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px}.provider-selection h3{margin:0 0 16px;font-size:16px;color:#1e293b}.provider-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.provider-card{display:flex;flex-direction:column;align-items:center;padding:20px 16px;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s;text-align:center}.provider-card:hover{border-color:#667eea;background:#faf5ff}.provider-card.selected{border-color:#667eea;background:#f5f3ff}.provider-icon{font-size:32px;margin-bottom:8px}.provider-card strong{font-size:14px;color:#1e293b;margin-bottom:4px}.provider-card small{font-size:12px;color:#64748b}.integration-tabs{display:flex;gap:4px;background:#fff;border-radius:12px;padding:4px;margin-bottom:24px}.integration-tabs button{flex:1;padding:12px 20px;background:transparent;border:none;border-radius:8px;font-size:14px;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s}.integration-tabs button:hover{background:#f1f5f9;color:#1e293b}.integration-tabs button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.tab-content{background:#fff;border-radius:12px;overflow:hidden}.tab-panel{padding:24px}.type-selector{display:flex;flex-wrap:wrap;gap:8px}.type-option{display:flex;align-items:center;gap:8px;padding:10px 16px;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.type-option:hover{border-color:#667eea}.type-option.selected{border-color:#667eea;background:#f5f3ff}.connection-test{display:flex;align-items:center;gap:16px;margin-top:24px;padding-top:24px;border-top:1px solid #e2e8f0}.test-result{padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500}.test-result.success{background:#dcfce7;color:#15803d}.test-result.error{background:#fef2f2;color:#dc2626}.auth-note{margin-top:24px;padding:16px;background:#f0fdf4;border-radius:8px}.auth-note p{margin:0;font-size:14px;color:#15803d}.endpoints-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.endpoints-header h4{margin:0;font-size:16px;color:#1e293b}.empty-endpoints{text-align:center;padding:48px 24px;color:#64748b}.empty-endpoints p{margin:8px 0}.endpoints-list{display:flex;flex-direction:column;gap:16px}.endpoint-card{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.endpoint-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.method-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.method-badge.get{background:#dbeafe;color:#1d4ed8}.method-badge.post{background:#dcfce7;color:#15803d}.method-badge.put{background:#fef3c7;color:#b45309}.method-badge.patch{background:#f3e8ff;color:#7c3aed}.method-badge.delete{background:#fef2f2;color:#dc2626}.endpoint-name{flex:1;border:none;background:transparent;font-size:14px;font-weight:500;color:#1e293b}.endpoint-name:focus{outline:none}.btn-delete{background:none;border:none;font-size:20px;color:#94a3b8;cursor:pointer;padding:4px 8px;border-radius:4px}.btn-delete:hover{background:#fef2f2;color:#dc2626}.endpoint-body{padding:16px}.sync-direction-selector{display:flex;flex-direction:column;gap:8px}.sync-option{padding:16px;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s}.sync-option:hover{border-color:#667eea}.sync-option.selected{border-color:#667eea;background:#f5f3ff}.sync-option strong{display:block;font-size:14px;color:#1e293b;margin-bottom:4px}.sync-option small{font-size:13px;color:#64748b}.form-group label{display:block;font-size:13px;font-weight:500;color:#475569;margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#1e293b;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input.error{border-color:#dc2626}.form-group small{display:block;margin-top:4px;font-size:12px;color:#64748b}.error-text{display:block;margin-top:4px;font-size:12px;color:#dc2626}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}h4{margin:24px 0 16px;font-size:14px;font-weight:600;color:#1e293b}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary.btn-sm{padding:8px 14px;font-size:13px}.btn-secondary{background:#fff;color:#64748b;border:1px solid #e2e8f0;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.btn-secondary:hover{background:#f8fafc}.btn-outline{background:#fff;color:#667eea;border:1px solid #667eea;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer}.btn-outline:hover{background:#f5f3ff}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.settings-page{padding:24px;max-width:1200px;margin:0 auto}.settings-page.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.settings-header{margin-bottom:24px}.settings-header h1{margin:0 0 8px;font-size:28px;font-weight:700;color:#1a1a1a}.settings-header p{margin:0;color:#666;font-size:14px}.settings-tabs{display:flex;gap:4px;border-bottom:1px solid #e0e0e0;margin-bottom:24px}.settings-tabs .tab{padding:12px 24px;border:none;background:none;font-size:14px;font-weight:500;color:#666;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}.settings-tabs .tab:hover{color:#1976d2}.settings-tabs .tab.active{color:#1976d2;border-bottom-color:#1976d2}.settings-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.settings-section{padding:24px}.settings-section h2{margin:0 0 8px;font-size:20px;font-weight:600;color:#1a1a1a}.section-description{margin:0 0 24px;color:#666;font-size:14px}.settings-group{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #f0f0f0}.settings-group:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.settings-group h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#333}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1976d2}.form-group textarea{resize:vertical}.color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.color-field label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.color-input{display:flex;gap:8px}.color-input input[type=color]{width:44px;height:38px;padding:2px;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer}.color-input input[type=text]{flex:1;padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;font-family:monospace}.toggle-options{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.toggle-option{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:14px;color:#333}.toggle-option input[type=checkbox]{width:18px;height:18px;accent-color:#1976d2}.settings-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #f0f0f0;margin-top:24px}.btn-primary{padding:12px 24px;background:#1976d2;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#1565c0}.btn-secondary{padding:12px 24px;background:#fff;color:#666;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f5f5f5}.templates-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.template-card{padding:16px;border:1px solid #e0e0e0;border-radius:8px;transition:box-shadow .2s}.template-card:hover{box-shadow:0 2px 8px #00000014}.template-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.template-header h3{margin:0;font-size:14px;font-weight:600;color:#333}.template-type{font-size:11px;padding:2px 8px;border-radius:4px;background:#e3f2fd;color:#1976d2;text-transform:capitalize}.template-subject{margin:0 0 12px;font-size:13px;color:#666}.btn-link{padding:0;background:none;border:none;color:#1976d2;font-size:13px;cursor:pointer}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#1976d2;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}@media (max-width: 1024px){.form-row,.color-grid,.templates-list{grid-template-columns:1fr}}@media (max-width: 768px){.settings-page{padding:16px}.settings-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.settings-tabs .tab{white-space:nowrap}.settings-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}.tab-separator{color:#e0e0e0;padding:12px 8px;font-size:18px}.zero-code-section{min-height:500px}.section-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.entity-selector{display:flex;align-items:center;gap:8px}.entity-selector label{font-size:14px;font-weight:500;color:#666}.entity-selector select{padding:8px 12px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;min-width:150px}.zero-code-list{background:#f8f9fa;border-radius:8px;padding:20px}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.list-header h3{margin:0;font-size:16px;font-weight:600;color:#333}.empty-state{text-align:center;padding:48px 24px;background:#fff;border:2px dashed #e0e0e0;border-radius:8px}.empty-state p{margin:0 0 8px;color:#666;font-size:14px}.empty-state p:last-of-type{margin-bottom:24px}.field-type-examples{margin-top:24px}.field-type-examples h4{margin:0 0 16px;font-size:14px;font-weight:600;color:#333}.field-types-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.field-type{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;background:#f0f4f8;border-radius:8px;min-width:80px}.field-type .icon{font-size:20px}.field-type span:last-child{font-size:12px;color:#666}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #00000014}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #f0f0f0}.data-table th{background:#f8f9fa;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.data-table td{font-size:14px;color:#333}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover{background:#f8f9fa}.data-table code{background:#e8ecf0;padding:2px 6px;border-radius:4px;font-size:12px}.data-table small{display:block;font-size:12px;color:#888;margin-top:2px}.text-muted{color:#888}.status{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status.active{background:#d4edda;color:#155724}.status.inactive{background:#f8d7da;color:#721c24}.data-table .btn-link{margin-right:12px}.data-table .btn-link:last-child{margin-right:0}.domain-approval-management{padding:24px;max-width:1200px;margin:0 auto}.approval-header{margin-bottom:32px}.approval-header h1{margin:0 0 8px;color:var(--text-primary);font-size:2rem}.subtitle{margin:0;color:var(--text-secondary);font-size:1rem}.pending-domains-list{display:flex;flex-direction:column;gap:24px}.domain-approval-item{background:var(--surface);border:2px solid var(--border);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:20px}.domain-info{flex:1}.domain-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.domain-name{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.domain-details{display:flex;flex-direction:column;gap:8px}.domain-details p{margin:0;font-size:.938rem;color:var(--text-secondary)}.domain-details strong{color:var(--text-primary);margin-right:8px}.approval-actions{display:flex;flex-direction:column;gap:12px;padding-top:20px;border-top:2px solid var(--border)}.rejection-section{margin-bottom:8px}.rejection-input{width:100%;padding:10px 12px;border:2px solid var(--border);border-radius:6px;font-size:.938rem}.rejection-input:focus{outline:none;border-color:var(--error)}.action-buttons{display:flex;gap:12px;justify-content:flex-end}.btn-danger{padding:10px 20px;background:var(--error);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-danger:hover:not(:disabled){background:var(--error-dark)}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-success{padding:10px 20px;background:var(--success);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-success:hover{background:var(--success-dark)}.access-denied{text-align:center;padding:48px;color:var(--error)}.loading,.empty-state{text-align:center;padding:48px;color:var(--text-secondary)}[data-theme=dark] .rejection-input{background:var(--surface);color:var(--text-primary);border-color:var(--border)}@media (max-width: 768px){.domain-approval-item{padding:16px}.action-buttons{flex-direction:column}.action-buttons button{width:100%}}.notification-preferences{max-width:1000px;margin:0 auto;padding:2rem}.preferences-header{margin-bottom:2rem}.preferences-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.preferences-subtitle{margin:0;font-size:1rem;color:var(--text-secondary)}.preferences-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem}.preferences-section h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.form-select,.form-input{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem}.form-select:focus,.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.event-preferences-table{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:1rem}.table-header{display:grid;grid-template-columns:2fr 3fr;gap:1rem;padding:1rem;background:var(--gray-50);border-bottom:2px solid var(--border);font-weight:600;font-size:.875rem;color:var(--text-primary)}.col-channels{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.channel-header{text-align:center}.preference-row{display:grid;grid-template-columns:2fr 3fr;gap:1rem;padding:1rem;border-bottom:1px solid var(--border);transition:var(--transition)}.preference-row:hover{background:var(--gray-50)}.preference-row:last-child{border-bottom:none}.event-label{font-size:.938rem;color:var(--text-primary)}.channel-toggle{display:flex;justify-content:center;align-items:center;cursor:pointer}.channel-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}.bulk-actions{display:flex;gap:.5rem;margin-top:1rem}.btn-bulk{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:var(--transition)}.btn-bulk:hover{background:var(--gray-50)}.preferences-actions{display:flex;justify-content:flex-end;margin-top:2rem}.btn-save{padding:.75rem 2rem;border:none;border-radius:var(--radius);background:var(--primary);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-save:hover:not(:disabled){background:var(--primary-dark)}.btn-save:disabled{opacity:.6;cursor:not-allowed}.notification-preferences-loading{padding:4rem;text-align:center;color:var(--text-secondary)}[data-theme=dark] .table-header,[data-theme=dark] .preference-row:hover{background:var(--gray-200)}.report-builder{max-width:1200px;margin:0 auto;padding:2rem}.builder-header{margin-bottom:2rem}.builder-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.builder-subtitle{margin:0;font-size:1rem;color:var(--text-secondary)}.builder-content{display:flex;flex-direction:column;gap:1.5rem}.builder-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}.builder-section h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.form-input,.form-select{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.938rem}.form-input:focus,.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.data-source-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.data-source-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;transition:var(--transition)}.data-source-card:hover{border-color:var(--primary);background:var(--gray-50)}.data-source-card.active{border-color:var(--primary);background:#3b82f61a}.card-icon{font-size:2rem}.card-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.filters-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.filter-row{display:grid;grid-template-columns:2fr 1.5fr 2fr auto;gap:.75rem;align-items:center}.btn-remove{padding:.5rem;border:none;background:var(--error);color:#fff;border-radius:var(--radius);cursor:pointer;font-size:1.25rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-remove:hover{background:var(--error-dark)}.btn-add-filter{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);cursor:pointer;font-size:.938rem;transition:var(--transition)}.btn-add-filter:hover{background:var(--gray-50);border-color:var(--primary)}.columns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.column-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:var(--transition)}.column-checkbox:hover{background:var(--gray-50)}.column-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.chart-type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:1rem;margin-bottom:1rem}.chart-type-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;transition:var(--transition)}.chart-type-card:hover{border-color:var(--primary)}.chart-type-card.active{border-color:var(--primary);background:#3b82f61a}.chart-icon{font-size:2rem}.chart-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.empty-state{color:var(--text-secondary);font-style:italic;margin:1rem 0}.form-help{margin:.5rem 0 0;font-size:.875rem;color:var(--text-secondary)}.builder-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem}.btn-generate,.btn-save{padding:.75rem 2rem;border:none;border-radius:var(--radius);font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-generate{background:var(--primary);color:#fff}.btn-generate:hover:not(:disabled){background:var(--primary-dark)}.btn-save{background:var(--success);color:#fff}.btn-save:hover:not(:disabled){background:var(--success-dark)}.btn-generate:disabled,.btn-save:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .data-source-card:hover,[data-theme=dark] .chart-type-card:hover,[data-theme=dark] .column-checkbox:hover{background:var(--gray-200)}[data-theme=dark] .data-source-card.active,[data-theme=dark] .chart-type-card.active{background:#3b82f633}.customizable-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.dashboard-header h2{margin:0;font-size:1.75rem;font-weight:700;color:var(--text-primary)}.dashboard-actions{display:flex;gap:.75rem}.widget-palette{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:2rem}.widget-palette h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.palette-widget{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px dashed var(--border);border-radius:var(--radius);background:var(--gray-50);cursor:grab;transition:var(--transition)}.palette-widget:hover{border-color:var(--primary);background:#3b82f61a}.palette-widget:active{cursor:grabbing}.palette-icon{font-size:2rem}.palette-name{font-size:.875rem;font-weight:500;color:var(--text-primary)}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;min-height:600px;padding:1rem;background:var(--gray-50);border-radius:var(--radius-lg)}.dashboard-grid.edit-mode{border:2px dashed var(--primary);background:#3b82f60d}.dashboard-widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm);position:relative;display:flex;flex-direction:column;transition:var(--transition)}.dashboard-widget:hover{box-shadow:var(--shadow-md)}.widget-controls{position:absolute;top:.5rem;right:.5rem;display:flex;gap:.5rem;z-index:10}.widget-remove{width:24px;height:24px;border:none;background:var(--error);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:1.125rem;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.widget-remove:hover{background:var(--error-dark)}.widget-resize-handles{display:flex;gap:.25rem}.resize-handle{width:20px;height:20px;border:none;background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:.75rem;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.resize-handle:hover{background:var(--primary-dark)}.widget-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.widget-icon{font-size:1.5rem}.widget-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.widget-content{flex:1;overflow-y:auto}.widget-placeholder{color:var(--text-secondary);font-style:italic;text-align:center;padding:2rem}.empty-dashboard{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;min-height:400px;color:var(--text-secondary);font-size:1.125rem}@media (max-width: 1200px){.dashboard-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}}[data-theme=dark] .palette-widget,[data-theme=dark] .dashboard-grid{background:var(--gray-200)}[data-theme=dark] .dashboard-grid.edit-mode{background:#3b82f61a}.integrations-table-container{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.integrations-table{width:100%;border-collapse:collapse;background:var(--surface)}.integrations-table thead{background:var(--surface-alt, var(--surface));border-bottom:2px solid var(--border)}.integrations-table th{padding:1rem;text-align:left;font-weight:var(--font-semibold, 600);font-size:var(--text-xs, .75rem);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.integrations-table td{padding:1rem;border-top:1px solid var(--border);font-size:.938rem;color:var(--text-primary);vertical-align:middle}.integrations-table tbody tr{transition:var(--transition-fast, all .2s ease)}.integrations-table tbody tr:hover{background:var(--primary-50, rgba(79, 70, 229, .05))}.integrations-table tbody tr:nth-child(2n){background:var(--gray-50, rgba(0, 0, 0, .02))}.integrations-table tbody tr:nth-child(2n):hover{background:var(--primary-50, rgba(79, 70, 229, .05))}.integrations-table tbody tr.disabled-row{opacity:.7}.integration-cell{display:flex;align-items:center;gap:.75rem}.integration-icon{font-size:1.5rem;line-height:1;flex-shrink:0}.integration-details{flex:1;min-width:0}.integration-name{font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.integration-description{font-size:.813rem;color:var(--text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.integration-type-label{font-size:.938rem;color:var(--text-primary);font-weight:500}.status-badge{display:inline-flex;align-items:center;padding:.375rem .875rem;border-radius:var(--radius-full, 9999px);font-size:var(--text-xs, .75rem);font-weight:var(--font-semibold, 600);letter-spacing:.025em;white-space:nowrap}.status-badge.active{background:var(--success-light, rgba(5, 150, 105, .1));color:var(--success, #059669);border:1px solid rgba(5,150,105,.2)}.status-badge.inactive{background:var(--gray-100, rgba(0, 0, 0, .05));color:var(--gray-600, #666);border:1px solid var(--border)}.sync-info{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.sync-frequency{font-weight:500;color:var(--text-primary)}.sync-direction{font-size:.813rem;color:var(--text-secondary)}.sync-disabled{color:var(--text-secondary);font-style:italic}.last-sync{display:flex;flex-direction:column;gap:.25rem;font-size:.875rem}.sync-time{color:var(--text-primary)}.sync-never{color:var(--text-secondary);font-style:italic}.sync-error{font-size:.813rem;color:var(--error-color, #dc2626);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.integration-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.integration-actions .btn{font-size:.813rem;padding:.5rem .75rem;white-space:nowrap}.integration-actions .btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1200px){.integrations-table{font-size:.875rem}.integrations-table th,.integrations-table td{padding:.75rem}.integration-actions{flex-direction:column;align-items:stretch}.integration-actions .btn{width:100%}}@media (max-width: 768px){.integrations-table-container{overflow-x:auto}.integrations-table{min-width:800px}.integration-cell{flex-direction:column;align-items:flex-start}.integration-icon{align-self:center}}.integration-form-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease-out}.modal-content{position:relative;background:#fff;border-radius:16px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 80px #0006,0 0 0 1px #ffffff0d;z-index:1001;animation:slideUp .3s ease-out;border:1px solid rgba(0,0,0,.1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,#4f46e50d,#6366f105);border-radius:16px 16px 0 0}.modal-header h2{margin:0;font-size:26px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px;background:linear-gradient(135deg,#4f46e5,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.close-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-size:24px;color:var(--text-secondary);cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease;font-weight:300;line-height:1}.close-btn:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444;transform:rotate(90deg)}.integration-form{padding:32px 28px}.form-group{margin-bottom:24px}.form-group label{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-weight:600;color:var(--text-primary);font-size:14px;letter-spacing:.2px}.form-group label span{font-size:16px;opacity:.8}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid rgba(255,255,255,.1);border-radius:10px;font-size:15px;background:#ffffff08;color:var(--text-primary);transition:all .25s ease;font-family:inherit}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#4f46e54d;background:#ffffff0d}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4f46e5;background:#ffffff0d;box-shadow:0 0 0 4px #4f46e51a,0 4px 12px #4f46e526;transform:translateY(-1px)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-secondary);opacity:.6}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit;line-height:1.6}.form-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.configuration-section{margin-top:32px;padding:24px;background:linear-gradient(135deg,#4f46e50d,#6366f105);border-radius:12px;border:1px solid rgba(79,70,229,.2);animation:fadeIn .3s ease-out}.configuration-section h3{margin:0 0 20px;font-size:18px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:8px}.configuration-section h3:before{content:"⚙️";font-size:20px}.checkbox-group{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff05;border-radius:10px;border:1px solid rgba(255,255,255,.05);transition:all .2s ease}.checkbox-group:hover{background:#ffffff0a;border-color:#4f46e533}.checkbox-group label{display:flex;align-items:center;gap:10px;margin:0;cursor:pointer;font-weight:500;-webkit-user-select:none;user-select:none}.checkbox-group input[type=checkbox]{width:20px;height:20px;margin:0;cursor:pointer;accent-color:#4f46e5;border-radius:4px}.info-text{padding:20px;background:linear-gradient(135deg,#6366f11a,#8b5cf60d);border-radius:10px;color:var(--text-secondary);text-align:center;font-size:14px;border:1px dashed rgba(79,70,229,.3);font-style:italic}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:40px;padding-top:28px;border-top:1px solid rgba(255,255,255,.1)}.form-actions .btn{min-width:120px;padding:12px 24px;font-weight:600;font-size:15px;border-radius:10px;transition:all .25s ease;box-shadow:0 2px 8px #0000001a}.form-actions .btn-primary{background:linear-gradient(135deg,#4f46e5,#7c3aed);border:none;color:#fff}.form-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 16px #4f46e566}.form-actions .btn-secondary{background:#ffffff0d;border:2px solid rgba(255,255,255,.1);color:var(--text-primary)}.form-actions .btn-secondary:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-1px)}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.modal-content::-webkit-scrollbar-thumb{background:#4f46e54d;border-radius:4px}.modal-content::-webkit-scrollbar-thumb:hover{background:#4f46e580}@media (max-width: 768px){.modal-content{width:95%;max-height:95vh;border-radius:12px}.modal-header{padding:20px;border-radius:12px 12px 0 0}.modal-header h2{font-size:22px}.integration-form{padding:24px 20px}.form-actions{flex-direction:column;gap:10px}.form-actions .btn{width:100%;min-width:auto}.configuration-section{padding:20px}}.integrations-page{padding:2rem;max-width:1400px;margin:0 auto}.page-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.page-subtitle{font-size:.938rem;color:var(--text-secondary);margin:0}.page-header .btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;gap:1rem}.loading-container .spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.loading-container p{color:var(--text-secondary);font-size:.938rem}.empty-state{text-align:center;padding:4rem 2rem;background:var(--surface);border-radius:var(--radius-lg);border:2px dashed var(--border)}.empty-state .empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.empty-state p{margin:0;font-size:.938rem;color:var(--text-secondary)}.forgot-password-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.forgot-password-container{width:100%;max-width:450px}.forgot-password-card{background:#fff;border-radius:12px;padding:2.5rem;box-shadow:0 10px 40px #0000001a}.forgot-password-card h1{margin:0 0 .5rem;font-size:2rem;color:#333;text-align:center}.forgot-password-card>p{text-align:center;color:#666;margin-bottom:2rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input.input-error{border-color:#dc3545}.form-group input.input-error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.forgot-error-message{color:#dc3545;font-size:.875rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem;padding:.5rem;background-color:#fff5f5;border-left:3px solid #dc3545;border-radius:4px}.forgot-error-message:before{content:"⚠";font-size:1rem;flex-shrink:0}.forgot-password-footer{margin-top:2rem;text-align:center}.success-message{text-align:center;padding:1rem 0}.success-icon{width:64px;height:64px;margin:0 auto 1rem;background-color:#28a745;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700}.success-message h2{margin:0 0 1rem;color:#333}.success-message p{color:#666;margin-bottom:.5rem}.text-muted{color:#999;font-size:.9rem}.reset-password-footer{margin-top:2rem;text-align:center}.link-button{background:none;border:none;color:#667eea;cursor:pointer;text-decoration:underline;font-size:.9rem}.link-button:hover{color:#5568d3}*/ .admin-plan-management{padding:1.5rem}.page-header h1{margin:0;font-size:1.75rem;font-weight:600}.plans-table-container{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border)}.plans-table{width:100%;border-collapse:collapse}.plans-table th{padding:1rem;text-align:left;font-weight:600;font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border);background:var(--surface-alt)}.plans-table td{padding:1rem;border-top:1px solid var(--border);font-size:.938rem;color:var(--text-primary)}.plans-table tbody tr:hover{background:var(--primary-50)}.actions-cell{white-space:nowrap}.btn-icon{background:none;border:1px solid var(--border);padding:.375rem .75rem;border-radius:var(--radius);cursor:pointer;margin-right:.5rem;transition:all .2s}.btn-icon:hover{background:var(--primary-50);border-color:var(--primary)}.btn-icon-danger{background:none;border:1px solid #ef4444;color:#ef4444;padding:.375rem .75rem;border-radius:var(--radius);cursor:pointer;transition:all .2s}.btn-icon-danger:hover{background:#fee2e2}.form-section-divider{margin-top:1.5rem;margin-bottom:1rem;padding-top:1.5rem;border-top:1px solid var(--border)}.form-section-divider h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary);font-size:.875rem}.form-input,.form-textarea{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.modal-content{background:#fff;padding:2rem;border-radius:12px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto}.modal-content.large{max-width:900px}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border)}@media (max-width: 768px){.admin-plan-management{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.plans-table-container{overflow-x:auto}.plans-table{min-width:800px}.form-row{grid-template-columns:1fr}.modal-content.large{max-width:95%;padding:1rem}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.features-selection{margin-top:1rem}.form-help-text{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.features-list{max-height:400px;overflow-y:auto;border:1px solid var(--border);border-radius:var(--radius-md);padding:1rem}.feature-item{display:flex;align-items:center;gap:1rem;padding:.75rem;border-bottom:1px solid var(--border)}.feature-checkbox{display:flex;align-items:center;gap:.5rem;flex:1;cursor:pointer}.feature-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.feature-name{font-weight:500;color:var(--text-primary)}.feature-code{font-size:.75rem;color:var(--text-tertiary);font-family:monospace}.feature-limit-input{display:flex;align-items:center;gap:.5rem}.feature-limit-input input{width:100px;padding:.5rem;border:1px solid var(--border);border-radius:var(--radius);font-size:.875rem}.limit-unit{font-size:.875rem;color:var(--text-secondary)}.btn-remove-feature{background:#ef4444;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.2rem;line-height:1;transition:all .2s}.btn-remove-feature:hover{background:#dc2626;transform:scale(1.1)}.feature-package-mapping{padding:2rem;max-width:1400px;margin:0 auto}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.modal-content{background:var(--bg-primary);border-radius:8px;box-shadow:0 10px 40px #0003;max-width:90%;max-height:90vh;overflow-y:auto}.modal-medium{width:600px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:1.5rem;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-body{padding:1.5rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid var(--border-color)}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-group input[type=text],.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:.938rem;background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group small{display:block;margin-top:.25rem;color:var(--text-secondary);font-size:.875rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.page-header h1{margin:0 0 .5rem;font-size:2rem;color:var(--text-primary)}.page-header p{margin:0;color:var(--text-secondary)}.info-banner{background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.info-banner strong{display:block;margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.info-banner ul{margin:.5rem 0 0;padding-left:1.5rem;color:var(--text-secondary, #6b7280)}.info-banner li{margin-bottom:.25rem}.mapping-table-container{overflow-x:auto;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1rem}.mapping-table{width:100%;border-collapse:collapse;min-width:800px}.mapping-table thead{background:var(--bg-secondary, #f9fafb)}.mapping-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-primary, #1f2937);border-bottom:2px solid var(--border-color, #e5e7eb)}.mapping-table th:first-child{min-width:250px}.plan-column{min-width:180px}.plan-header{display:flex;flex-direction:column;gap:.25rem}.plan-name{font-weight:600;color:var(--text-primary, #1f2937)}.plan-code{font-size:.875rem;color:var(--text-secondary, #6b7280);font-family:monospace}.mapping-table td{padding:1rem;border-bottom:1px solid var(--border-color, #e5e7eb);vertical-align:top}.package-cell{background:var(--bg-secondary, #f9fafb)}.package-info{display:flex;flex-direction:column;gap:.25rem}.package-name{font-weight:600;color:var(--text-primary, #1f2937)}.package-code{font-size:.875rem;color:var(--text-secondary, #6b7280);font-family:monospace}.package-description{font-size:.875rem;color:var(--text-secondary, #6b7280);margin-top:.25rem}.package-category{display:inline-block;padding:.25rem .5rem;background:var(--accent-light, #dbeafe);color:var(--accent, #3b82f6);border-radius:4px;font-size:.75rem;margin-top:.5rem;width:fit-content}.mapping-cell{text-align:center}.mapping-status{display:flex;flex-direction:column;align-items:center;gap:.5rem}.mapping-status.mapped{padding:.75rem;background:var(--success-light, #dcfce7);border-radius:6px}.status-indicator{width:12px;height:12px;border-radius:50%}.status-indicator.enabled{background:var(--success, #16a34a)}.mapping-details{text-align:center}.mapping-status-text{font-weight:600;color:var(--success, #16a34a);font-size:.875rem}.mapping-config-preview{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-top:.25rem;font-family:monospace;word-break:break-all}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.938rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-sm{padding:.375rem .75rem;font-size:.875rem}.btn-outline{background:transparent;border:1px solid var(--border-color, #e5e7eb);color:var(--text-primary, #1f2937)}.btn-outline:hover{background:var(--bg-secondary, #f9fafb);border-color:var(--accent, #3b82f6)}.modal-medium{max-width:600px}.readonly-field{padding:.75rem;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:4px;color:var(--text-primary, #1f2937)}.json-validation{margin-top:.5rem;font-size:.875rem}.json-valid{color:var(--success, #16a34a)}.json-invalid{color:var(--error, #ef4444)}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #1f2937)}.form-group input[type=checkbox]{margin-right:.5rem}.form-group input[type=text],.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:4px;font-size:.938rem;background:var(--bg-primary, #ffffff);color:var(--text-primary, #1f2937)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent, #3b82f6)}.form-group small{display:block;margin-top:.25rem;color:var(--text-secondary, #6b7280);font-size:.875rem}textarea{width:100%;padding:.75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:4px;font-family:monospace;font-size:.875rem;resize:vertical;background:var(--bg-primary, #ffffff);color:var(--text-primary, #1f2937)}textarea:focus{outline:none;border-color:var(--accent, #3b82f6)}@media (prefers-color-scheme: dark){.info-banner{background:#ffffff0d}.mapping-status.mapped{background:#22c55e1a}}@media (max-width: 1200px){.mapping-table-container{padding:.5rem}.mapping-table{font-size:.875rem}.mapping-table th,.mapping-table td{padding:.75rem .5rem}}.pricing-page{padding:3rem 1.5rem;max-width:1200px;margin:0 auto}.pricing-header{text-align:center;margin-bottom:3rem}.pricing-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary)}.pricing-header p{font-size:1.125rem;color:var(--text-secondary)}.pricing-actions{margin-top:1rem;display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap}.btn-link{color:var(--primary);text-decoration:none;font-weight:500;font-size:1rem}.pricing-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.plan-card{background:#fff;border:2px solid var(--border);border-radius:12px;padding:2rem;transition:all .3s ease;display:flex;flex-direction:column}.plan-card:hover{border-color:var(--primary);box-shadow:0 10px 25px #0000001a;transform:translateY(-5px)}.plan-header{margin-bottom:1.5rem}.plan-header h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.plan-price{margin-bottom:1rem}.price-monthly{font-size:2rem;font-weight:700;color:var(--primary)}.price-period{font-size:.875rem;color:var(--text-secondary);margin-left:.5rem}.trial-badge{display:inline-block;background:#dcfce7;color:#16a34a;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;margin-top:.5rem}.plan-description{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.6}.plan-features{flex-grow:1;margin-bottom:2rem}.feature-item{padding:.75rem 0;border-bottom:1px solid var(--border);color:var(--text-primary)}.feature-item:last-child{border-bottom:none}.btn-select-plan{width:100%;padding:1rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-select-plan:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}@media (max-width: 768px){.pricing-page{padding:1rem}.pricing-header h1{font-size:1.75rem}.pricing-actions,.currency-selector{flex-direction:column;align-items:stretch}.currency-selector select{min-width:100%}.currency-detected{text-align:center}.pricing-plans{grid-template-columns:1fr;gap:1.5rem}.plan-card{padding:1.5rem}}.checkout-page{padding:2rem;max-width:1200px;margin:0 auto}.checkout-container{display:grid;grid-template-columns:2fr 1fr;gap:2rem}.checkout-form-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.checkout-header{margin-bottom:2rem}.checkout-header h1{font-size:1.75rem;font-weight:600;margin-bottom:1rem}.step-indicator{display:flex;gap:1rem;margin-top:1rem}.step{flex:1;padding:.5rem;text-align:center;border-radius:var(--radius);background:var(--gray-100);color:var(--text-secondary);font-size:.875rem}.step.active{background:var(--primary);color:#fff}.checkout-step{margin-bottom:2rem}.checkout-step h2{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.form-group small{display:block;margin-top:.25rem;color:var(--text-tertiary);font-size:.75rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkout-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.checkout-summary{position:sticky;top:2rem;height:fit-content}.order-summary{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.order-summary h3{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.summary-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border)}.summary-item.trial-info{color:#16a34a;font-weight:600}.summary-total{display:flex;justify-content:space-between;padding:1rem 0;margin-top:1rem;border-top:2px solid var(--border);font-size:1.125rem}.payment-note{background:#fef3c7;padding:1rem;border-radius:var(--radius-md);margin-top:1rem}.payment-note p{margin:0;color:#92400e;font-size:.875rem}.error{text-align:center;padding:3rem;color:#ef4444}@media (max-width: 768px){.checkout-page{padding:1rem}.checkout-container{grid-template-columns:1fr}.checkout-summary{position:static}.checkout-form-section{padding:1rem}.form-row{grid-template-columns:1fr}.checkout-actions{flex-direction:column}.checkout-actions .btn{width:100%}}.checkout-step .phone-input-wrapper,.checkout-step .country-select-wrapper{width:100%}.checkout-step .phone-input-container{border-color:var(--border)}.checkout-step .phone-input-container:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.checkout-step .country-select-button{width:100%}.usage-dashboard{padding:2rem;max-width:1200px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border)}.dashboard-header h1{margin:0;font-size:2rem;font-weight:600}.subscription-info{display:flex;align-items:center;gap:1rem}.plan-name{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.usage-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.5rem;box-shadow:0 2px 4px #0000000d}.usage-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.usage-card-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-secondary)}.usage-value{font-size:1.25rem;font-weight:700;color:var(--text-primary)}.usage-progress{width:100%;height:8px;background:var(--gray-100);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.usage-progress-bar{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-dark));transition:width .3s ease}.usage-progress-bar[style*="100%"]{background:linear-gradient(90deg,#ef4444,#dc2626)}.usage-percentage{font-size:.875rem;color:var(--text-secondary)}.usage-unlimited{font-size:.875rem;color:#16a34a;font-weight:600}.subscription-details{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.5rem;margin-top:2rem}.subscription-details h2{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.detail-value{font-size:1rem;color:var(--text-primary);font-weight:600}.no-subscription h2{margin-bottom:1rem;color:var(--text-primary)}.no-subscription p{color:var(--text-secondary)}@media (max-width: 768px){.usage-dashboard{padding:1rem}.dashboard-header{flex-direction:column;align-items:flex-start;gap:1rem}.usage-grid,.details-grid{grid-template-columns:1fr}}.plan-analytics{padding:2rem;max-width:1400px;margin:0 auto}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.analytics-header h1{margin:0;font-size:2rem;font-weight:600}.btn-refresh{padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s}.btn-refresh:hover{background:var(--primary-dark);transform:translateY(-2px)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 2px 4px #0000000d;transition:all .2s}.stat-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.stat-icon{font-size:3rem;line-height:1}.stat-content{flex:1}.stat-content h3{margin:0 0 .5rem;font-size:.875rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.stat-subtitle{font-size:.875rem;color:var(--text-tertiary)}.popular-plans-section{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem}.popular-plans-section h2{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600}.plans-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.plan-card{border:1px solid var(--border);border-radius:8px;padding:1.5rem;transition:all .2s}.plan-card:hover{border-color:var(--primary);box-shadow:0 2px 8px #0000001a}.plan-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.plan-card-header h3{margin:0;font-size:1.125rem;font-weight:600}.status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.status-badge.inactive{background:#f3f4f6;color:#6b7280}.plan-card-body{display:flex;flex-direction:column;gap:.75rem}.plan-stat{display:flex;justify-content:space-between;align-items:center}.stat-label{font-size:.875rem;color:var(--text-secondary)}.stat-value-small{font-size:.875rem;font-weight:600;color:var(--text-primary)}.text-muted{color:var(--text-secondary);font-style:italic;text-align:center;padding:2rem}.error-message{text-align:center;padding:3rem;color:#ef4444;font-weight:600}@media (max-width: 768px){.plan-analytics{padding:1rem}.analytics-header{flex-direction:column;align-items:flex-start;gap:1rem}.stats-grid,.plans-list{grid-template-columns:1fr}}.subscription-management{padding:2rem;max-width:1200px;margin:0 auto}.page-header{margin-bottom:2rem}.subscription-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 4px #0000000d}.subscription-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border)}.subscription-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:600}.status-badge.active{background:#dcfce7;color:#16a34a}.status-badge.trial{background:#dbeafe;color:#2563eb}.status-badge.cancelled{background:#fee2e2;color:#dc2626}.status-badge.expired{background:#f3f4f6;color:#6b7280}.trial-badge{background:#fef3c7;color:#92400e;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600}.subscription-details{margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border)}.detail-row:last-child{border-bottom:none}.detail-row .label{font-weight:500;color:var(--text-secondary)}.detail-row .value{font-weight:600;color:var(--text-primary)}.subscription-actions{display:flex;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.invoice-actions{display:flex;gap:1rem}.available-plans-section,.invoices-section{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem;margin-bottom:2rem}.available-plans-section h2,.invoices-section h2{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600}.plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.plan-card-small{border:1px solid var(--border);border-radius:8px;padding:1.5rem;text-align:center}.plan-card-small h3{margin:0 0 1rem;font-size:1.25rem}.plan-price{font-size:1.5rem;font-weight:700;color:var(--primary);margin-bottom:1rem}.invoices-table{width:100%;border-collapse:collapse}.invoices-table th{padding:1rem;text-align:left;font-weight:600;border-bottom:2px solid var(--border)}.invoices-table td{padding:1rem;border-top:1px solid var(--border)}.btn-link{color:var(--primary);text-decoration:none;font-weight:500}.btn-link:hover{text-decoration:underline}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:600px;width:90%;max-height:80vh;overflow-y:auto}.plans-list-modal{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.plan-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s}.plan-option:hover{border-color:var(--primary);background:var(--primary-50)}.plan-option input[type=radio]{width:20px;height:20px;cursor:pointer}.plan-option-content{flex:1;display:flex;justify-content:space-between;align-items:center}.form-group{margin-top:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-input{width:100%;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem}.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.no-subscription{text-align:center;padding:3rem}.no-subscription h2{margin-bottom:1rem}.text-muted{color:var(--text-secondary);font-style:italic;padding:1rem;text-align:center}@media (max-width: 768px){.subscription-management{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.subscription-header{flex-direction:column;gap:1rem}.subscription-actions{flex-direction:column}.subscription-actions .btn{width:100%}.plans-grid{grid-template-columns:1fr}.invoices-table{font-size:.875rem}.invoices-table th,.invoices-table td{padding:.75rem .5rem}.modal-content{max-width:95%;padding:1rem}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.payment-method-management{padding:2rem;max-width:1000px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{margin:0;font-size:2rem;font-weight:600}.alert{padding:1rem;border-radius:8px;margin-bottom:2rem}.alert-warning{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border:1px solid var(--border);border-radius:12px}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h2{margin:0 0 .5rem;font-size:1.5rem}.empty-state p{color:var(--text-secondary);margin-bottom:2rem}.payment-methods-list{display:flex;flex-direction:column;gap:1rem}.payment-method-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;transition:all .2s}.payment-method-card:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--primary)}.method-info{display:flex;align-items:center;gap:1rem}.method-icon{font-size:2rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border-radius:12px}.method-details h3{margin:0 0 .25rem;font-size:1.125rem;font-weight:600}.method-number{margin:.25rem 0;font-family:monospace;font-size:1rem;color:var(--text-primary)}.method-expiry{margin:0;font-size:.875rem;color:var(--text-secondary)}.method-actions{display:flex;align-items:center;gap:1rem}.default-badge{padding:.5rem 1rem;background:#dcfce7;color:#16a34a;border-radius:9999px;font-size:.875rem;font-weight:600}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.stripe-card-element{padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}.stripe-errors{color:#ef4444;font-size:.875rem;margin-top:.5rem}.gateway-not-configured{text-align:center;padding:2rem;color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:90%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.modal-header h2{margin:0;font-size:1.5rem}.modal-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-body{margin-bottom:1.5rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem;border-top:1px solid var(--border)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}@media (max-width: 768px){.payment-method-management{padding:1rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-header .btn{width:100%}.payment-method-card{flex-direction:column;align-items:flex-start;gap:1rem}.method-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}.modal-content{max-width:95%;padding:1rem}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.invoice-detail{padding:2rem;max-width:900px;margin:0 auto}.invoice-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid var(--border)}.invoice-header h1{margin:.5rem 0 0;font-size:2rem;font-weight:600}.btn-back{background:none;border:none;color:var(--primary);font-size:.938rem;cursor:pointer;padding:0;margin-bottom:.5rem;display:flex;align-items:center;gap:.25rem}.btn-back:hover{text-decoration:underline}.header-actions{display:flex;align-items:center;gap:1rem}.status-badge{padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:600;text-transform:uppercase}.status-badge.paid{background:#dcfce7;color:#16a34a}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.overdue{background:#fee2e2;color:#dc2626}.status-badge.cancelled{background:#f3f4f6;color:#6b7280}.invoice-content{background:#fff;border:1px solid var(--border);border-radius:12px;padding:2rem}.invoice-info-section,.billing-section,.line-items-section,.payment-section{margin-bottom:2rem}.invoice-info-section:last-child,.billing-section:last-child,.line-items-section:last-child,.payment-section:last-child{margin-bottom:0}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item .label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.info-item .value{font-size:1rem;color:var(--text-primary);font-weight:600}.billing-section h2,.line-items-section h2,.payment-section h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600}.billing-info p{margin:.5rem 0;color:var(--text-primary)}.line-items-table{width:100%;border-collapse:collapse;margin-top:1rem}.line-items-table th{padding:1rem;text-align:left;font-weight:600;border-bottom:2px solid var(--border);color:var(--text-secondary)}.line-items-table td{padding:1rem;border-top:1px solid var(--border)}.discount-row{color:#16a34a}.total-row{border-top:2px solid var(--border)}.total-row td{padding-top:1.5rem;font-size:1.125rem}.payment-info p{margin:.5rem 0;color:var(--text-primary)}.error-state{text-align:center;padding:3rem}.error-state h2{margin-bottom:1rem}@media (max-width: 768px){.invoice-detail{padding:1rem}.invoice-header{flex-direction:column;gap:1rem}.header-actions{width:100%;justify-content:space-between}.info-grid{grid-template-columns:1fr}.line-items-table{font-size:.875rem}.line-items-table th,.line-items-table td{padding:.75rem .5rem}}.plan-comparison{padding:2rem;max-width:1400px;margin:0 auto}.comparison-header{margin-bottom:2rem}.comparison-header h1{margin:0 0 1rem;font-size:2rem;font-weight:600}.header-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.currency-selector{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--gray-50);border-radius:8px}.currency-selector label{font-weight:500;color:var(--text-primary);font-size:.875rem}.currency-selector select{padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;background:#fff;font-size:.875rem;cursor:pointer;min-width:200px}.currency-selector select:disabled{opacity:.6;cursor:not-allowed}.currency-detected{font-size:.75rem;color:var(--text-secondary);font-style:italic}.billing-toggle{display:flex;background:var(--gray-100);border-radius:8px;padding:.25rem;gap:.25rem}.toggle-btn{padding:.75rem 1.5rem;border:none;background:transparent;border-radius:6px;cursor:pointer;font-weight:500;color:var(--text-secondary);transition:all .2s;position:relative}.toggle-btn.active{background:#fff;color:var(--primary);box-shadow:0 2px 4px #0000001a}.discount-badge{display:block;font-size:.75rem;color:#16a34a;font-weight:600;margin-top:.25rem}.comparison-table-container{overflow-x:auto;margin-bottom:2rem;background:#fff;border:1px solid var(--border);border-radius:12px;padding:1rem}.comparison-table{width:100%;border-collapse:collapse;min-width:800px}.comparison-table th{padding:1.5rem 1rem;text-align:left;vertical-align:top}.feature-col{width:200px;font-weight:600;color:var(--text-secondary);background:var(--gray-50)}.plan-col{min-width:250px;text-align:center}.plan-header-cell{display:flex;flex-direction:column;align-items:center;gap:.75rem}.plan-header-cell h3{margin:0;font-size:1.25rem;font-weight:600}.plan-price{font-size:1.5rem;font-weight:700;color:var(--primary)}.price-period{font-size:1rem;font-weight:400;color:var(--text-secondary)}.trial-badge{background:#dbeafe;color:#2563eb;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.btn-select{width:100%;padding:.75rem 1.5rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s}.btn-select:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.comparison-row{border-top:1px solid var(--border)}.comparison-row:hover{background:var(--gray-50)}.feature-name{padding:1rem;font-weight:500;color:var(--text-primary)}.plan-cell{padding:1rem;text-align:center;color:var(--text-primary)}.pricing-row{background:var(--primary-50);font-weight:600}.comparison-footer{text-align:center;padding:2rem;background:#fff;border:1px solid var(--border);border-radius:12px}.comparison-footer p{margin:0 0 1.5rem;color:var(--text-secondary)}.loading{text-align:center;padding:3rem;color:#666}.empty-state{text-align:center;padding:3rem}.empty-state h2{margin-bottom:1rem}.btn{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all .2s;border:none}@media (max-width: 1024px){.comparison-table-container{padding:.5rem}.comparison-table th,.comparison-table td{padding:.75rem .5rem;font-size:.875rem}.plan-price{font-size:1.25rem}}@media (max-width: 768px){.plan-comparison{padding:1rem}.comparison-header{flex-direction:column;align-items:flex-start}.header-controls{flex-direction:column;align-items:stretch;width:100%}.currency-selector{flex-direction:column;align-items:stretch}.currency-selector select{min-width:100%}.currency-detected{text-align:center}.billing-toggle{width:100%}.toggle-btn{flex:1}.comparison-table{font-size:.75rem}.plan-header-cell h3,.plan-price{font-size:1rem}.btn-select{padding:.5rem 1rem;font-size:.875rem}}.notification-center{max-width:1200px;margin:0 auto;padding:24px}.notification-center-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.notification-header-left{display:flex;align-items:center;gap:12px}.notification-center-header h1{margin:0;font-size:28px;font-weight:600}.unread-badge{padding:4px 12px;background:#3b82f6;color:#fff;border-radius:12px;font-size:12px;font-weight:600}.notification-actions{display:flex;gap:12px;align-items:center}.btn-icon{background:none;border:none;cursor:pointer;padding:8px;font-size:18px;opacity:.7;transition:opacity .2s}.btn-icon:hover{opacity:1}.btn-link{background:none;border:none;color:#3b82f6;cursor:pointer;text-decoration:underline;font-size:14px;padding:4px 8px}.btn-link:hover{color:#2563eb}.notification-controls{margin-bottom:24px}.notification-search{margin-bottom:16px}.search-input{width:100%;padding:10px 16px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.notification-filters-panel{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-top:12px}.filter-row{display:flex;gap:16px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:4px;min-width:150px}.filter-group label{font-size:12px;font-weight:500;color:#6b7280}.filter-group select{padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:14px;background:#fff;cursor:pointer}.filter-group select:hover{border-color:#9ca3af}.filter-group select:focus{outline:none;border-color:#3b82f6}.bulk-actions-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;margin-bottom:16px}.bulk-selection-count{font-weight:600;color:#1e40af}.bulk-actions-buttons{display:flex;gap:8px}.btn-sm.btn-link{background:none;color:#3b82f6;text-decoration:underline;padding:4px 8px}.btn-sm.btn-link:hover{color:#2563eb}.btn-sm.btn-icon{background:none;border:none;padding:4px;font-size:14px;opacity:.7}.btn-sm.btn-icon:hover{opacity:1}.notification-list{display:flex;flex-direction:column;gap:24px}.notification-date-group{display:flex;flex-direction:column;gap:12px}.notification-date-header{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:2px solid #e5e7eb}.date-label{font-weight:600;font-size:14px;color:#374151;text-transform:uppercase;letter-spacing:.5px}.date-count{padding:2px 8px;background:#e5e7eb;border-radius:12px;font-size:11px;color:#6b7280}.notification-card{display:flex;gap:16px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s;cursor:pointer;position:relative}.notification-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.notification-card.unread{border-left:4px solid #3b82f6;background:#eff6ff}.notification-card.priority-high{border-left-color:#f59e0b}.notification-card.priority-urgent{border-left-color:#ef4444}.notification-checkbox{margin-top:4px;cursor:pointer}.notification-content{flex:1}.notification-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;gap:12px}.notification-title-row{display:flex;flex-direction:column;gap:8px;flex:1}.notification-title{margin:0;font-size:16px;font-weight:600;color:#111827}.notification-badges{display:flex;gap:8px;flex-wrap:wrap}.priority-badge{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.priority-badge.priority-normal{background:#e5e7eb;color:#374151}.priority-badge.priority-high{background:#fef3c7;color:#92400e}.priority-badge.priority-urgent{background:#fee2e2;color:#991b1b}.type-badge{padding:2px 8px;background:#f3f4f6;border-radius:4px;font-size:11px;color:#6b7280}.unread-indicator{width:8px;height:8px;background:#3b82f6;border-radius:50%;flex-shrink:0;margin-top:6px}.mark-read-btn{padding:4px 8px;background:none;border:none;color:#3b82f6;cursor:pointer;font-size:12px}.notification-message{margin:8px 0;color:#4b5563;line-height:1.5}.action-link{display:inline-block;margin-top:8px;color:#3b82f6;text-decoration:none;font-size:14px}.action-link:hover{text-decoration:underline}.notification-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid #f3f4f6}.notification-meta{display:flex;align-items:center;gap:12px}.notification-time{font-size:12px;color:#9ca3af}.notification-channel{font-size:14px}.notification-actions{display:flex;gap:8px;align-items:center}.notification-loading,.notification-error{padding:24px;text-align:center}.notification-error{color:#ef4444;background:#fee2e2;border:1px solid #fecaca;border-radius:6px}.notification-empty-state{padding:64px 24px;text-align:center;color:#9ca3af}.empty-icon{font-size:48px;margin-bottom:16px}.notification-empty-state p{font-size:16px;margin-bottom:16px}.notification-load-more{text-align:center;padding:24px}[data-theme=dark] .notification-center{background:#1e1e1e;color:#e0e0e0}[data-theme=dark] .notification-card{background:#2a2a2a;border-color:#444}[data-theme=dark] .notification-card.unread{background:#1e3a5f;border-left-color:#3b82f6}[data-theme=dark] .notification-filters-panel{background:#2a2a2a;border-color:#444}[data-theme=dark] .filter-group select,[data-theme=dark] .search-input{background:#2a2a2a;border-color:#444;color:#e0e0e0}[data-theme=dark] .bulk-actions-bar{background:#1e3a5f;border-color:#3b82f6}@media (max-width: 768px){.notification-center{padding:16px}.notification-center-header{flex-direction:column;align-items:flex-start;gap:12px}.filter-row{flex-direction:column}.filter-group{width:100%}.notification-title-row{flex-direction:column}.notification-footer{flex-direction:column;align-items:flex-start;gap:8px}}.form-builder{display:flex;flex-direction:column;height:100%;background:#f9fafb}.form-builder-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#fff;border-bottom:1px solid #e5e7eb}.form-builder-header h2{margin:0;font-size:24px;font-weight:600}.form-builder-actions{display:flex;gap:12px}.form-builder-content{display:flex;flex:1;overflow:hidden}.form-builder-sidebar{width:300px;background:#fff;border-right:1px solid #e5e7eb;padding:20px;overflow-y:auto}.form-builder-sidebar h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#111827}.form-setting{margin-bottom:20px}.form-setting label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#374151}.form-setting input,.form-setting textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.field-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.field-type-button{display:flex;flex-direction:column;align-items:center;padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.field-type-button:hover{background:#f3f4f6;border-color:#3b82f6}.field-type-icon{font-size:24px;margin-bottom:4px}.field-type-label{font-size:12px;color:#6b7280}.form-builder-main{flex:1;padding:20px;overflow-y:auto}.form-builder-main h3{margin:0 0 16px;font-size:18px;font-weight:600}.form-preview{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:24px;max-width:600px}.empty-form{text-align:center;padding:48px;color:#9ca3af}.form-field-preview{margin-bottom:20px;padding:16px;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb;cursor:move}.form-field-preview:hover{border-color:#3b82f6}.field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.field-label{font-weight:500;font-size:14px}.field-actions{display:flex;gap:8px}.btn-icon{background:none;border:none;cursor:pointer;font-size:16px;padding:4px}.field-content{margin-bottom:12px}.field-content input,.field-content textarea,.field-content select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:4px;font-size:14px}.field-content input:disabled,.field-content textarea:disabled,.field-content select:disabled{background:#f3f4f6;cursor:not-allowed}.field-editor{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid #e5e7eb}.field-editor input{padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:13px}.field-editor label{display:flex;align-items:center;gap:8px;font-size:13px}.field-options{margin-top:8px}.field-options label{display:block;margin-bottom:4px;font-size:12px;font-weight:500}.field-options textarea{width:100%;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:12px;font-family:monospace}.form-renderer{max-width:800px;margin:0 auto;padding:24px;background:#fff;border-radius:8px}.form-renderer-header{margin-bottom:32px;padding-bottom:20px;border-bottom:2px solid #e5e7eb}.form-renderer-header h2{margin:0 0 8px;font-size:28px;font-weight:600;color:#111827}.form-description{margin:0;color:#6b7280;font-size:16px;line-height:1.5}.form-renderer-form{display:flex;flex-direction:column;gap:24px}.form-field{display:flex;flex-direction:column}.form-field-label{margin-bottom:8px;font-size:14px;font-weight:500;color:#374151}.required{color:#ef4444}.form-field input,.form-field textarea,.form-field select{padding:10px 14px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.checkbox-label,.radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.radio-group{display:flex;flex-direction:column;gap:8px}.form-actions{display:flex;justify-content:flex-end;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.form-renderer-loading,.form-renderer-error{text-align:center;padding:48px;color:#6b7280}.form-renderer-error{color:#ef4444}.form-management{max-width:1400px;margin:0 auto;padding:24px}.form-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.form-management-header h1{margin:0;font-size:32px;font-weight:600}.form-filters{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e5e7eb}.form-filters button{padding:12px 24px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:14px;color:#6b7280;margin-bottom:-2px}.form-filters button.active{color:#3b82f6;border-bottom-color:#3b82f6}.forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.form-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;transition:box-shadow .2s}.form-card:hover{box-shadow:0 4px 12px #0000001a}.form-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.form-card-header h3{margin:0;font-size:18px;font-weight:600;flex:1}.form-status{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.form-status.active{background:#d1fae5;color:#065f46}.form-status.inactive{background:#fee2e2;color:#991b1b}.form-card-description{color:#6b7280;font-size:14px;margin:12px 0;line-height:1.5}.form-card-stats{display:flex;justify-content:space-between;font-size:12px;color:#9ca3af;margin-bottom:16px;padding-top:12px;border-top:1px solid #f3f4f6}.form-card-actions{display:flex;gap:8px;flex-wrap:wrap}.form-card-actions button{padding:6px 12px;font-size:13px;border-radius:4px;border:1px solid #d1d5db;cursor:pointer;background:#fff}.form-card-actions .btn-secondary{color:#374151}.form-card-actions .btn-secondary:hover{background:#f3f4f6}.form-card-actions .btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.form-card-actions .btn-primary:hover{background:#2563eb}.form-card-actions .btn-danger{color:#ef4444;border-color:#ef4444}.form-card-actions .btn-danger:hover{background:#fee2e2}.loading,.empty-state{text-align:center;padding:48px}.empty-state p{color:#9ca3af;margin-bottom:16px}.presence-indicator{display:inline-block;border-radius:50%;flex-shrink:0;vertical-align:middle}.presence-small{width:8px;height:8px;margin-left:6px}.presence-medium{width:10px;height:10px;margin-left:8px}.presence-large{width:12px;height:12px;margin-left:10px}.presence-online{background-color:#10b981;box-shadow:0 0 0 2px #10b98133}.presence-typing{background-color:#3b82f6;animation:pulse-typing 1.5s ease-in-out infinite}.presence-away{background-color:#f59e0b}.presence-busy{background-color:#ef4444}.presence-offline{background-color:#9ca3af}@keyframes pulse-typing{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.conversation-list{display:flex;flex-direction:column;height:100%;background:#fff}.conversation-list-header{padding:16px;background:linear-gradient(135deg,var(--primary, #3b82f6) 0%,var(--primary-dark, #2563eb) 100%);color:#fff}.conversation-list-header h2{margin:0 0 12px;font-size:20px;font-weight:600;color:#fff}.conversation-search{width:100%;padding:10px 14px;border:none;border-radius:10px;font-size:14px;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;transition:all .2s ease}.conversation-search::placeholder{color:#ffffffb3}.conversation-search:focus{outline:none;background:#ffffff4d;box-shadow:0 0 0 3px #fff3}.conversation-list-content{flex:1;overflow-y:auto;background:#fafbfc}.conversation-list-content::-webkit-scrollbar{width:6px}.conversation-list-content::-webkit-scrollbar-track{background:transparent}.conversation-list-content::-webkit-scrollbar-thumb{background:#9ca3af4d;border-radius:3px}.conversation-list-content::-webkit-scrollbar-thumb:hover{background:#9ca3af80}.conversation-list-loading,.conversation-list-empty{padding:48px 24px;text-align:center;color:#9ca3af;font-size:14px}.conversation-list-empty:before{content:"💬";display:block;font-size:48px;margin-bottom:12px;opacity:.3}.conversation-item{display:flex;padding:16px 20px;cursor:pointer;border-bottom:1px solid rgba(243,244,246,.8);transition:all .2s ease;position:relative;background:#fff}.conversation-item:hover{background:linear-gradient(90deg,rgba(59,130,246,.05) 0%,transparent 100%);transform:translate(2px)}.conversation-item.active{background:linear-gradient(90deg,#3b82f61a,#3b82f60d);border-left:4px solid #3b82f6;box-shadow:-2px 0 8px #3b82f61a}.conversation-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;margin-right:14px;flex-shrink:0;box-shadow:0 2px 8px #0000001a;position:relative}.conversation-avatar:after{display:none}.group-icon{font-size:28px}.user-avatar{font-size:20px;font-weight:600;color:#fff}.conversation-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.conversation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.conversation-name{font-weight:600;font-size:15px;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-time{font-size:12px;color:#9ca3af;flex-shrink:0;margin-left:8px;font-weight:500}.conversation-preview{display:flex;align-items:center;font-size:13px;color:#6b7280;overflow:hidden;gap:4px}.conversation-sender{font-weight:600;margin-right:4px;flex-shrink:0;color:#374151}.conversation-message{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.conversation-message-empty{font-style:italic;color:#9ca3af}.conversation-unread-badge{position:absolute;top:16px;right:20px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-radius:12px;padding:4px 10px;font-size:11px;font-weight:700;min-width:24px;text-align:center;box-shadow:0 2px 6px #3b82f666;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.conversation-item.active .conversation-unread-badge{animation:none;background:linear-gradient(135deg,#10b981,#059669)}.conversation-presence{position:absolute;bottom:2px;right:2px;width:14px;height:14px;border-radius:50%;border:2px solid white;background:#9ca3af}.conversation-presence.online{background:#10b981;box-shadow:0 0 0 2px #10b98133}.conversation-presence.away{background:#f59e0b;box-shadow:0 0 0 2px #f59e0b33}.conversation-presence.busy{background:#ef4444;box-shadow:0 0 0 2px #ef444433}@media (max-width: 768px){.conversation-list-header{padding:16px}.conversation-item{padding:12px 16px}.conversation-avatar{width:44px;height:44px}.conversation-name{font-size:14px}}.message-input-wrapper{display:flex;flex-direction:column;flex-shrink:0;background:#fff;border-top:1px solid #e2e8f0;box-shadow:0 -2px 10px #0000000d}.message-input-error{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:linear-gradient(135deg,#fef2f2,#fee2e2);color:#dc2626;font-size:13px;font-weight:500}.message-input-error-close{background:none;border:none;color:#dc2626;font-size:18px;cursor:pointer;padding:0 4px;line-height:1;opacity:.7;transition:opacity .2s}.message-input-error-close:hover{opacity:1}.message-input-progress{display:flex;align-items:center;gap:12px;padding:10px 20px;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#2563eb;font-size:13px;font-weight:500}.message-input-progress-bar{flex:1;height:6px;background:#3b82f633;border-radius:3px;overflow:hidden}.message-input-progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:3px;transition:width .3s ease}.message-input{display:flex;align-items:flex-end;padding:16px 20px;background:#fff;gap:12px}.message-input-actions{display:flex;gap:4px;padding-bottom:4px}.message-input-button{background:#f1f5f9;border:none;font-size:18px;cursor:pointer;padding:10px;border-radius:10px;transition:all .2s;color:#64748b}.message-input-button:hover:not(:disabled){background:#e2e8f0;color:#3b82f6;transform:scale(1.05)}.message-input-button:disabled{opacity:.5;cursor:not-allowed}.message-input-textarea{flex:1;padding:12px 16px;border:2px solid #e2e8f0;border-radius:24px;font-size:15px;font-family:inherit;resize:none;max-height:120px;min-height:44px;background:#f8fafc;transition:all .2s;line-height:1.4}.message-input-textarea:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a}.message-input-textarea::placeholder{color:#94a3b8}.message-input-textarea:disabled{background-color:#f1f5f9;cursor:not-allowed}.message-input-send{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:50%;width:44px;height:44px;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;box-shadow:0 2px 8px #3b82f64d}.message-input-send:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:scale(1.05);box-shadow:0 4px 12px #3b82f666}.message-input-send:disabled{background:#cbd5e1;cursor:not-allowed;box-shadow:none}.group-management-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.group-management-modal{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 4px 6px #0000001a}.group-management-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.group-management-header h2{margin:0;font-size:24px;font-weight:600}.group-management-close{background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s}.group-management-close:hover{color:#000}.group-management-content{padding:20px;overflow-y:auto;flex:1}.group-management-loading{text-align:center;padding:40px;color:#666}.group-setting-section{margin-bottom:24px}.group-setting-label{display:block;font-weight:600;margin-bottom:8px;color:#333;font-size:14px}.group-setting-display{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f5f5f5;border-radius:4px;min-height:40px}.group-setting-display span{flex:1;color:#333}.group-setting-edit{display:flex;flex-direction:column;gap:8px}.group-setting-input,.group-setting-textarea{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.group-setting-input:disabled,.group-setting-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.group-setting-textarea{resize:vertical;min-height:60px}.group-setting-actions{display:flex;gap:8px;justify-content:flex-end}.btn-sm{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:13px;transition:all .2s}.btn-sm:disabled{opacity:.5;cursor:not-allowed}.btn-sm.btn-primary{background:#1976d2;color:#fff}.btn-sm.btn-primary:hover:not(:disabled){background:#1565c0}.btn-sm.btn-secondary{background:#e0e0e0;color:#333}.btn-sm.btn-secondary:hover:not(:disabled){background:#d0d0d0}.btn-sm.btn-link{background:none;color:#1976d2;text-decoration:underline;padding:4px 8px}.btn-sm.btn-link:hover{color:#1565c0}.btn-sm.btn-danger{background:#f44336;color:#fff}.btn-sm.btn-danger:hover:not(:disabled){background:#d32f2f}.group-members-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.group-members-list{display:flex;flex-direction:column;gap:8px}.group-members-empty{padding:20px;text-align:center;color:#999}.group-member-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f9f9f9;border-radius:4px}.group-member-info{display:flex;align-items:center;gap:12px;flex:1}.group-member-avatar{width:40px;height:40px;border-radius:50%;background:#1976d2;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.group-member-details{display:flex;flex-direction:column;gap:2px}.group-member-name{font-weight:500;color:#333}.group-member-role{font-size:12px;color:#666}.group-member-joined{font-size:11px;color:#999}.add-member-modal{background:#f9f9f9;border:1px solid #ddd;border-radius:4px;padding:12px;margin-bottom:12px}.add-member-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.add-member-header h3{margin:0;font-size:16px}.add-member-search{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;margin-bottom:8px;font-size:14px}.add-member-list{max-height:200px;overflow-y:auto}.add-member-empty{padding:20px;text-align:center;color:#999}.add-member-item{display:flex;justify-content:space-between;align-items:center;padding:8px;border-bottom:1px solid #e0e0e0}.add-member-item:last-child{border-bottom:none}.add-member-info{display:flex;flex-direction:column;gap:2px;flex:1}.add-member-name{font-weight:500;color:#333}.add-member-email{font-size:12px;color:#666}.group-info{display:flex;flex-direction:column;gap:8px;padding:12px;background:#f9f9f9;border-radius:4px}.group-info-item{display:flex;justify-content:space-between}.group-info-label{font-weight:500;color:#666}[data-theme=dark] .group-management-modal{background:#1e1e1e;color:#e0e0e0}[data-theme=dark] .group-management-header{border-bottom-color:#333}[data-theme=dark] .group-management-close{color:#999}[data-theme=dark] .group-management-close:hover{color:#fff}[data-theme=dark] .group-setting-display{background:#2a2a2a}[data-theme=dark] .group-setting-display span{color:#e0e0e0}[data-theme=dark] .group-setting-input,[data-theme=dark] .group-setting-textarea{background:#2a2a2a;border-color:#444;color:#e0e0e0}[data-theme=dark] .group-member-item,[data-theme=dark] .add-member-modal,[data-theme=dark] .group-info{background:#2a2a2a;border-color:#444}[data-theme=dark] .add-member-search{background:#2a2a2a;border-color:#444;color:#e0e0e0}@media (max-width: 768px){.group-management-modal{width:95%;max-height:95vh}.group-members-header{flex-direction:column;align-items:flex-start;gap:8px}}.chat-window{display:flex;flex-direction:column;height:100%;min-height:0;max-height:100%;background:#f8fafc;position:relative;overflow:hidden;border-radius:0}.chat-window-empty{display:flex;align-items:center;justify-content:center;height:100%;color:#64748b;font-size:16px;flex-direction:column;gap:16px;text-align:center;padding:3rem;background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.chat-window-empty:before{content:"💬";font-size:64px;opacity:.4;filter:grayscale(30%)}.chat-window-empty-text{font-size:18px;font-weight:500;color:#475569}.chat-window-empty-subtext{font-size:14px;color:#94a3b8}.chat-window-header{padding:16px 20px;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 1px 3px #0000000d;flex-shrink:0;z-index:10}.chat-window-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.chat-window-header h3{margin:0;font-size:18px;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-window-type{padding:4px 10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #667eea4d}.chat-window-presence{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:12px;transition:all .2s ease}.chat-window-presence:before{content:"";width:8px;height:8px;border-radius:50%;display:inline-block}.chat-window-presence.online{background:#10b9811a;color:#059669}.chat-window-presence.online:before{background:#10b981;box-shadow:0 0 0 2px #10b98133}.chat-window-presence.away{background:#f59e0b1a;color:#d97706}.chat-window-presence.away:before{background:#f59e0b;box-shadow:0 0 0 2px #f59e0b33}.chat-window-presence.busy{background:#ef44441a;color:#dc2626}.chat-window-presence.busy:before{background:#ef4444;box-shadow:0 0 0 2px #ef444433}.chat-window-presence.offline{background:#6b72801a;color:#6b7280}.chat-window-presence.offline:before{background:#6b7280}.chat-window-actions{display:flex;align-items:center;gap:8px;position:relative}.chat-window-settings-btn{background:#3b82f61a;border:none;cursor:pointer;padding:8px;font-size:18px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;color:#3b82f6}.chat-window-settings-btn:hover{background:#3b82f633;transform:scale(1.05)}.chat-window-actions-menu{position:absolute;right:0;top:44px;background:#fff;border:1px solid rgba(229,231,235,.8);border-radius:12px;min-width:200px;box-shadow:0 10px 25px #0000001a;z-index:100;display:flex;flex-direction:column;overflow:hidden;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chat-window-actions-item{background:none;border:none;padding:12px 16px;text-align:left;cursor:pointer;font-size:14px;color:#374151;transition:background-color .2s ease}.chat-window-actions-item:hover{background:#f3f4f6}.chat-window-actions-item:first-child{border-top-left-radius:12px;border-top-right-radius:12px}.chat-window-actions-item:last-child{border-bottom-left-radius:12px;border-bottom-right-radius:12px}.chat-window-typing{padding:8px 24px;font-size:13px;color:#6b7280;background:#fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(229,231,235,.5);font-style:italic;display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-window-typing:before{content:"✍️";font-style:normal}.chat-window-messages{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:20px;display:flex;flex-direction:column;gap:8px;scroll-behavior:smooth;box-sizing:border-box;background:linear-gradient(180deg,#f1f5f9,#f8fafc)}.chat-window-messages::-webkit-scrollbar{width:8px}.chat-window-messages::-webkit-scrollbar-track{background:transparent;margin:4px 0}.chat-window-messages::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;border:2px solid transparent;background-clip:padding-box}.chat-window-messages::-webkit-scrollbar-thumb:hover{background:#94a3b8;border:2px solid transparent;background-clip:padding-box}.chat-window-load-more{text-align:center;padding:12px;color:#9ca3af;font-size:12px;cursor:pointer;transition:color .2s ease}.chat-window-load-more:hover{color:#6b7280}.chat-date-divider{text-align:center;margin:20px 0;position:relative}.chat-date-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(to right,transparent,rgba(229,231,235,.8),transparent)}.chat-date-divider span{background:#ffffffe6;padding:6px 16px;color:#6b7280;font-size:12px;font-weight:500;position:relative;border-radius:12px;border:1px solid rgba(229,231,235,.5)}.chat-message{display:flex;margin-bottom:8px;align-items:flex-start;gap:8px;animation:messageSlideIn .3s ease}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.own{flex-direction:row-reverse}.chat-message-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#fff;flex-shrink:0;box-shadow:0 2px 8px #0000001a}.chat-message.own .chat-message-avatar{background:linear-gradient(135deg,#3b82f6,#2563eb)}.chat-message-spacer{width:36px}.chat-message-content{max-width:70%;display:flex;flex-direction:column;gap:4px}.chat-message-sender{font-size:12px;font-weight:600;color:#6b7280;margin-bottom:2px}.chat-message-bubble{background:#fff;padding:12px 16px;border-radius:18px;box-shadow:0 2px 8px #00000014;position:relative;transition:transform .2s ease,box-shadow .2s ease}.chat-message-bubble:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001f}.chat-message.own .chat-message-bubble{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 8px #3b82f64d}.chat-message-text{font-size:14px;line-height:1.6;word-wrap:break-word;color:#111827}.chat-message.own .chat-message-text{color:#fff}.chat-message-time{font-size:11px;color:#9ca3af;margin-top:4px;text-align:right;display:flex;align-items:center;justify-content:flex-end;gap:4px}.chat-message.own .chat-message-time{color:#fffc}.chat-message-time:after{content:"✓";opacity:.5}.chat-message.read .chat-message-time:after{content:"✓✓";opacity:.7}.chat-message-attachment{display:flex;flex-direction:column;gap:8px}.chat-attachment-link{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f3f4f6cc;border-radius:10px;text-decoration:none;color:#374151;transition:all .2s ease;border:1px solid rgba(229,231,235,.5)}.chat-message.own .chat-attachment-link{background:#fff3;color:#fff;border-color:#ffffff4d}.chat-attachment-link:hover{background:#e5e7ebe6;transform:translate(2px)}.chat-message.own .chat-attachment-link:hover{background:#ffffff4d}@media (max-width: 768px){.chat-window-header{padding:12px 16px}.chat-window-messages{padding:16px}.chat-message-content{max-width:85%}.chat-message-bubble{padding:10px 14px}}.chat-page{display:flex;height:calc(100vh - 64px);min-height:0;max-height:calc(100vh - 64px);background:#f8fafc;overflow:hidden}.chat-page-sidebar{width:320px;min-width:320px;display:flex;flex-direction:column;background:#fff;border-right:1px solid #e2e8f0;box-shadow:2px 0 8px #0000000a}.chat-page-sidebar-header{padding:20px;background:linear-gradient(135deg,var(--primary, #3b82f6) 0%,var(--primary-dark, #2563eb) 100%);display:flex;justify-content:space-between;align-items:center}.chat-page-sidebar-header h1{margin:0;font-size:22px;font-weight:600;color:#fff}.chat-page-actions{display:flex;gap:8px}.chat-action-button{background:#fff3;border:none;font-size:18px;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s;color:#fff}.chat-action-button:hover{background:#ffffff4d;transform:scale(1.05)}.chat-page-main{flex:1;display:flex;flex-direction:column;min-height:0;max-height:100%;overflow:hidden;background:#f1f5f9}.chat-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.chat-modal{background:#fff;border-radius:16px;padding:0;max-width:480px;width:100%;max-height:85vh;overflow:hidden;box-shadow:0 20px 40px #0003,0 0 0 1px #0000000d;animation:modalSlideIn .25s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-modal h2{margin:0;padding:20px 24px;font-size:18px;font-weight:600;color:#1e293b;background:linear-gradient(to bottom,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0}.chat-modal-content{display:flex;flex-direction:column;gap:16px;padding:20px 24px;max-height:calc(85vh - 140px);overflow-y:auto}.chat-modal-input{padding:12px 14px;border:2px solid #e2e8f0;border-radius:10px;font-size:14px;background:#f8fafc;transition:all .2s ease}.chat-modal-input:hover{border-color:#cbd5e1}.chat-modal-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a}.chat-modal-input::placeholder{color:#94a3b8}.chat-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.chat-modal-actions .btn-primary,.chat-modal-actions .btn-secondary{min-width:100px;padding:10px 20px;font-size:14px;font-weight:600;border-radius:8px;transition:all .2s ease}.chat-modal-actions .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;box-shadow:0 2px 4px #3b82f64d}.chat-modal-actions .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 8px #3b82f666}.chat-modal-actions .btn-primary:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.7}.chat-modal-actions .btn-secondary{background:#fff;color:#475569;border:1px solid #cbd5e1}.chat-modal-actions .btn-secondary:hover{background:#f1f5f9;border-color:#94a3b8}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.loading-screen .spinner{width:40px;height:40px;border-width:3px}.access-denied{max-width:600px;margin:4rem auto;padding:2rem;text-align:center;background:var(--background);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.access-denied h2{color:var(--danger);margin-bottom:1rem}.tree-node-container{display:flex;flex-direction:column;align-items:center}.tree-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:16px;min-width:200px;background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0000000d;transition:all .3s ease}.tree-card:hover{box-shadow:0 4px 10px #00000014;border-color:#60a5fa}.tree-card-root{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.tree-root-row{display:flex;justify-content:center;align-items:flex-start;gap:60px;width:100%;overflow-x:auto;padding:20px}.tree-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;margin-bottom:12px;background:#f1f5f9;border:2px solid #ffffff;box-shadow:0 1px 3px #0000001a;display:flex;align-items:center;justify-content:center}.tree-avatar img{width:100%;height:100%;object-fit:cover}.tree-name{font-size:14px;font-weight:600;color:#1e293b;margin:0}.tree-designation{font-size:12px;font-weight:500;color:#64748b;margin-top:4px}.tree-toggle-btn{position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:24px;height:24px;background:#fff;border:1px solid #e2e8f0;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#94a3b8;box-shadow:0 1px 3px #0000001a;transition:all .2s ease;z-index:10}.tree-toggle-btn:hover{color:#3b82f6;border-color:#3b82f6}.tree-toggle-btn svg{width:16px;height:16px}.tree-children-wrapper{position:relative;padding-top:40px;display:flex;justify-content:center}.tree-vertical-line{position:absolute;top:0;left:50%;transform:translate(-50%);width:1px;height:40px;background:#cbd5e1}.tree-children-row{display:flex;gap:32px;position:relative}.tree-horizontal-line{position:absolute;top:0;height:1px;background:#cbd5e1}.tree-child-node{position:relative;padding-top:0;display:flex;flex-direction:column;align-items:center}.tree-child-line{position:absolute;top:0;left:50%;transform:translate(-50%);width:1px;height:40px;background:#cbd5e1}.report-gen-container{padding:20px}.report-gen-header{margin-bottom:10px}.report-gen-header h2{margin-bottom:4px}.report-gen-header p{color:#666;font-size:14px}.report-gen-table{width:100%;border-collapse:collapse;margin-top:20px}.report-gen-table th,.report-gen-table td{border:1px solid #ddd;padding:10px;text-align:left}.report-gen-table th{background-color:#f5f5f5;font-weight:600}.report-gen-table tbody tr:hover{background-color:#fafafa}.report-gen-actions button{margin-right:8px;border:none;padding:6px 12px;cursor:pointer;border-radius:4px}.report-gen-btn-preview{background:#6c63ff;color:#fff}.report-gen-btn-preview:hover{background:#5750d6}.report-gen-btn-download{background:#00f;color:#fff}.report-gen-btn-download{background:#4caf50;color:#fff}.report-gen-btn-download:hover{background:#3d8b41}.report-gen-status-completed{color:#2e7d32;font-weight:700}.report-gen-status-failed{color:#c62828;font-weight:700}.report-gen-status-generating{color:#ef6c00;font-weight:700}.report-gen-actions button:disabled{opacity:.5;cursor:not-allowed}.enhanced-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000f}.enhanced-table thead{background:var(--surface-alt);position:sticky;top:0;z-index:10}[data-theme=dark] .enhanced-table thead{background:var(--surface-alt)}.enhanced-table thead th{padding:16px 20px;text-align:left;font-weight:600;font-size:.813rem;letter-spacing:.025em;text-transform:uppercase;color:var(--gray-700);border-bottom:2px solid var(--border);white-space:nowrap;position:relative}.enhanced-table thead th:first-child{padding-left:24px}.enhanced-table thead th:last-child{padding-right:24px}.enhanced-table tbody tr{transition:all .15s ease;border-bottom:1px solid var(--gray-100)}.enhanced-table tbody tr:hover{background:var(--primary-50);transform:translate(1px)}.enhanced-table tbody tr:nth-child(2n){background:var(--gray-50)}.enhanced-table tbody tr:nth-child(2n):hover{background:var(--primary-50)}[data-theme=dark] .enhanced-table tbody tr:nth-child(2n){background:var(--gray-100)}[data-theme=dark] .enhanced-table tbody tr:nth-child(2n):hover{background:#60a5fa1a}[data-theme=dark] .enhanced-table tbody tr:hover{background:#60a5fa1a}.enhanced-table tbody td{padding:16px 20px;font-size:.875rem;color:var(--text-primary);vertical-align:middle}.enhanced-table tbody td:first-child{padding-left:24px}.enhanced-table tbody td:last-child{padding-right:24px}.enhanced-table tbody tr.active-row{background:var(--success-light);border-left:3px solid var(--success)}.enhanced-table tbody tr.inactive-row{opacity:.6}.enhanced-table.compact thead th,.enhanced-table.compact tbody td{padding:10px 16px;font-size:.813rem}.enhanced-table.spacious thead th,.enhanced-table.spacious tbody td{padding:20px 24px;font-size:.938rem}.enhanced-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;padding-right:32px}.enhanced-table thead th.sortable:after{content:"";position:absolute;right:12px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:6px solid var(--gray-400);opacity:.5}.enhanced-table thead th.sortable:hover:after{opacity:1;border-bottom-color:var(--primary)}.enhanced-table thead th.sortable.asc:after{border-bottom:none;border-top:6px solid var(--primary);opacity:1}.enhanced-table thead th.sortable.desc:after{border-bottom:6px solid var(--primary);border-top:none;opacity:1}.enhanced-form{background:var(--surface);border-radius:16px;padding:32px;box-shadow:0 4px 6px -1px #0000001a;border:1px solid var(--border)}.enhanced-form-group{margin-bottom:24px}.enhanced-form-label{display:block;margin-bottom:8px;font-weight:600;font-size:.875rem;color:var(--gray-700);letter-spacing:.01em}.enhanced-form-label.required:after{content:" *";color:var(--danger)}.enhanced-form-input,.enhanced-form-textarea,.enhanced-form-select{width:100%;padding:12px 16px;border:2px solid var(--border);border-radius:8px;font-size:.938rem;transition:all .2s ease;background:var(--surface);color:var(--text-primary);font-family:inherit}.enhanced-form-input:focus,.enhanced-form-textarea:focus,.enhanced-form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #47556914;transform:translateY(-1px)}.enhanced-form-input:hover:not(:disabled),.enhanced-form-textarea:hover:not(:disabled),.enhanced-form-select:hover:not(:disabled){border-color:var(--gray-300)}.enhanced-form-input:disabled,.enhanced-form-textarea:disabled,.enhanced-form-select:disabled{background:var(--gray-50);cursor:not-allowed;opacity:.7}.enhanced-form-textarea{resize:vertical;min-height:120px;line-height:1.6}.enhanced-form-hint{margin-top:6px;font-size:.813rem;color:var(--gray-500);display:flex;align-items:center;gap:6px}.enhanced-form-error{margin-top:6px;font-size:.813rem;color:var(--danger);display:flex;align-items:center;gap:6px;font-weight:500}.enhanced-form-error:before{content:"⚠";font-size:.875rem}.enhanced-input-group{display:flex;gap:12px;align-items:flex-start}.enhanced-input-group .enhanced-form-group{flex:1;margin-bottom:0}.enhanced-checkbox,.enhanced-radio{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px 0}.enhanced-checkbox input[type=checkbox],.enhanced-radio input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border:2px solid var(--border);border-radius:6px;background:var(--surface);position:relative;transition:all .2s ease;cursor:pointer;flex-shrink:0}.enhanced-radio input[type=radio]{border-radius:50%}.enhanced-checkbox input[type=checkbox]:checked,.enhanced-radio input[type=radio]:checked{background:var(--primary);border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.enhanced-checkbox input[type=checkbox]:checked:after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:2px solid white;border-top:none;border-left:none;transform:rotate(45deg)}.enhanced-radio input[type=radio]:checked:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background:#fff}.enhanced-checkbox input[type=checkbox]:hover:not(:disabled),.enhanced-radio input[type=radio]:hover:not(:disabled){border-color:var(--primary)}.enhanced-btn{padding:12px 24px;border:none;border-radius:10px;font-size:.938rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;line-height:1.2;position:relative;overflow:hidden;min-height:44px;box-shadow:0 2px 4px #00000014;letter-spacing:.01em}.enhanced-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.enhanced-btn:hover:not(:disabled):before{width:300px;height:300px}.enhanced-btn:active:not(:disabled){transform:scale(.98)}.enhanced-btn-primary{background:var(--primary);color:#fff;box-shadow:0 2px 4px #00000014;border:1px solid var(--primary-dark)}.enhanced-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000001f;background:var(--primary-dark)}.enhanced-btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border);box-shadow:0 1px 2px #0000000d}.enhanced-btn-secondary:hover:not(:disabled){background:var(--surface-alt);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:0 2px 4px #00000014}[data-theme=dark] .enhanced-btn-secondary{background:var(--surface);color:var(--text-primary)}[data-theme=dark] .enhanced-btn-secondary:hover:not(:disabled){background:var(--surface-alt)}.enhanced-btn-success{background:var(--success);color:#fff;box-shadow:0 2px 4px #00000014;border:1px solid var(--success)}.enhanced-btn-success:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000001f;background:#047857}.enhanced-btn-danger{background:var(--danger);color:#fff;box-shadow:0 2px 4px #00000014;border:1px solid var(--danger)}.enhanced-btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000001f;background:#b91c1c}.enhanced-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.enhanced-btn-sm{padding:8px 16px;font-size:.813rem;min-height:36px;border-radius:8px}.enhanced-btn-lg{padding:16px 32px;font-size:1rem;min-height:52px;border-radius:12px}.enhanced-btn-icon{padding:10px;min-width:44px;min-height:44px;border-radius:10px}.enhanced-btn-group{display:inline-flex;gap:0;border-radius:10px;overflow:hidden;box-shadow:0 2px 4px #00000014}.enhanced-btn-group .enhanced-btn{border-radius:0;margin:0;box-shadow:none}.enhanced-btn-group .enhanced-btn:first-child{border-top-left-radius:10px;border-bottom-left-radius:10px}.enhanced-btn-group .enhanced-btn:last-child{border-top-right-radius:10px;border-bottom-right-radius:10px}@media (max-width: 768px){.enhanced-table{font-size:.813rem}.enhanced-table thead th,.enhanced-table tbody td{padding:12px 16px}.enhanced-form{padding:24px 20px}.enhanced-input-group{flex-direction:column}}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}@media (min-width: 641px){.container{padding:0 1.5rem}}@media (min-width: 1025px){.container{padding:0 2rem}}.responsive-grid{display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 641px){.responsive-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (min-width: 1025px){.responsive-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}.responsive-flex{display:flex;flex-direction:column;gap:1rem}@media (min-width: 641px){.responsive-flex{flex-direction:row;gap:1.5rem}}.responsive-text-sm{font-size:.875rem}@media (min-width: 641px){.responsive-text-sm{font-size:1rem}}.responsive-text-lg{font-size:1.25rem}@media (min-width: 641px){.responsive-text-lg{font-size:1.5rem}}@media (min-width: 1025px){.responsive-text-lg{font-size:2rem}}.responsive-padding{padding:1rem}@media (min-width: 641px){.responsive-padding{padding:1.5rem}}@media (min-width: 1025px){.responsive-padding{padding:2rem}}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg);border:1px solid var(--border)}.table-responsive table{min-width:600px}@media (max-width: 640px){.table-responsive-mobile{display:block}.table-responsive-mobile thead{display:none}.table-responsive-mobile tbody,.table-responsive-mobile tr,.table-responsive-mobile td{display:block;width:100%}.table-responsive-mobile tr{margin-bottom:1rem;padding:1rem;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border)}.table-responsive-mobile td{padding:.5rem 0;border:none;text-align:left!important}.table-responsive-mobile td:before{content:attr(data-label) ": ";font-weight:600;color:var(--text-secondary);display:inline-block;min-width:120px}}.form-row{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 641px){.form-row{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1025px){.form-row{grid-template-columns:repeat(3,1fr)}}.form-row-full{grid-column:1 / -1}.card-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 641px){.card-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (min-width: 1025px){.card-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}@media (max-width: 640px){.modal-content{width:95vw!important;max-width:95vw!important;margin:1rem auto!important;max-height:90vh;overflow-y:auto}.modal-header,.modal-body{padding:1rem!important}.modal-actions{padding:1rem!important;flex-direction:column}.modal-actions .btn{width:100%}}.mobile-menu-toggle{display:none;background:transparent;border:none;padding:.5rem;cursor:pointer;color:var(--text-primary);font-size:1.5rem;z-index:1001}@media (max-width: 1024px){.mobile-menu-toggle{display:block}}.sidebar-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}@media (max-width: 1024px){.sidebar-overlay.active{display:block}}.page-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}@media (min-width: 641px){.page-header{flex-direction:row;justify-content:space-between;align-items:center}.page-header .btn{flex-shrink:0;width:auto}}.page-header h1{font-size:1.5rem}@media (min-width: 641px){.page-header h1{font-size:2rem}}.btn-group-responsive{display:flex;flex-direction:column;gap:.5rem}@media (min-width: 641px){.btn-group-responsive{flex-direction:row}}@media (max-width: 640px){.btn-responsive{width:100%}}.search-bar-responsive{display:flex;flex-direction:column;gap:.75rem}@media (min-width: 641px){.search-bar-responsive{flex-direction:row;align-items:center}}.chart-container{width:100%;height:300px;position:relative}@media (min-width: 641px){.chart-container{height:400px}}@media (min-width: 1025px){.chart-container{height:500px}}.kpi-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 641px){.kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1025px){.kpi-grid{grid-template-columns:repeat(4,1fr)}}.filters-container{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}@media (min-width: 641px){.filters-container{flex-direction:row;flex-wrap:wrap;align-items:center}}.actions-bar{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}@media (min-width: 641px){.actions-bar{flex-direction:row;justify-content:space-between;align-items:center}}.tabs-responsive{display:flex;flex-direction:column;gap:.5rem}@media (min-width: 641px){.tabs-responsive{flex-direction:row;border-bottom:1px solid var(--border)}}img.responsive{max-width:100%;height:auto}@media (max-width: 640px){button,a,.btn,.nav-item,input[type=checkbox],input[type=radio]{min-height:44px;min-width:44px}.btn{padding:.875rem 1.5rem}input,select,textarea{min-height:44px;font-size:16px}}.hide-mobile{display:block}@media (max-width: 640px){.hide-mobile{display:none!important}}.show-mobile{display:none}@media (max-width: 640px){.show-mobile{display:block!important}}.hide-tablet{display:block}@media (max-width: 1024px){.hide-tablet{display:none!important}}.show-tablet{display:none}@media (max-width: 1024px){.show-tablet{display:block!important}}@media (max-width: 640px){.text-center-mobile{text-align:center!important}.text-left-mobile{text-align:left!important}}@media (max-width: 640px){.no-padding-mobile{padding:0!important}.no-margin-mobile{margin:0!important}.padding-mobile{padding:1rem!important}.margin-mobile{margin:1rem!important}}.full-width-mobile{width:100%}@media (min-width: 641px){.full-width-mobile{width:auto}}@media print{.sidebar,.header,.btn,.actions-bar,.mobile-menu-toggle{display:none!important}.main-wrapper{margin-left:0!important}.main-content{padding:0!important}}*{margin:0;padding:0;box-sizing:border-box}*,*:before,*:after{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease}input,textarea,select,button,svg,img,video,iframe{transition:background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease,opacity .3s ease}:root{--primary: #2563eb;--primary-dark: #1d4ed8;--primary-light: #dbeafe;--primary-50: #eff6ff;--primary-gradient: linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);--secondary: #7c3aed;--secondary-light: #f3f4f6;--accent-blue: #3b82f6;--accent-blue-light: #dbeafe;--accent-indigo: #6366f1;--success: #059669;--success-light: #d1fae5;--warning: #d97706;--warning-light: #fef3c7;--danger: #dc2626;--danger-light: #fee2e2;--info: #0284c7;--info-light: #cffafe;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--background: #f8fafc;--surface: #ffffff;--surface-alt: #f1f5f9;--surface-elevated: #ffffff;--border: #e2e8f0;--border-strong: #cbd5e1;--text-primary: #0f172a;--text-secondary: #64748b;--text-tertiary: #94a3b8;--focus: rgba(37, 99, 235, .12);--error-bg: #fef2f2;--error-text: #dc2626;--error-border: #fecaca;--nav-selected-bg: var(--primary);--nav-hover-bg: var(--primary-50);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .03);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .08), 0 1px 2px -1px rgb(0 0 0 / .04);--shadow: 0 4px 6px -1px rgb(0 0 0 / .08), 0 2px 4px -2px rgb(0 0 0 / .04);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -4px rgb(0 0 0 / .04);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .08), 0 8px 10px -6px rgb(0 0 0 / .04);--shadow-xl: 0 25px 50px -12px rgb(0 0 0 / .15);--shadow-2xl: 0 32px 64px -12px rgb(0 0 0 / .2);--shadow-colored: 0 10px 25px -5px rgba(37, 99, 235, .15);--radius-xs: 4px;--radius-sm: 8px;--radius: 12px;--radius-md: 16px;--radius-lg: 20px;--radius-xl: 24px;--radius-full: 9999px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--transition-fast: all .15s cubic-bezier(.4, 0, .2, 1);--transition: all .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: all .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .3s cubic-bezier(.68, -.55, .265, 1.55);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Inter", "Oxygen", "Ubuntu", sans-serif;--font-mono: "SF Mono", "Monaco", "Menlo", "Consolas", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800}:root[data-theme=dark]{--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--background: #0f172a;--surface: #1e293b;--surface-alt: #334155;--surface-elevated: #475569;--border: #334155;--border-strong: #475569;--primary: #60a5fa;--primary-dark: #3b82f6;--primary-light: #1e3a8a;--primary-50: #1e3a8a;--primary-gradient: linear-gradient(135deg, #60a5fa 0%, #3b82f6 100%);--secondary: #a78bfa;--secondary-light: #4c1d95;--accent-blue: #60a5fa;--accent-blue-light: #1e3a8a;--accent-indigo: #818cf8;--success: #34d399;--success-light: #064e3b;--warning: #fbbf24;--warning-light: #78350f;--danger: #f87171;--danger-light: #7f1d1d;--info: #38bdf8;--info-light: #164e63;--gray-50: #0f172a;--gray-100: #1e293b;--gray-200: #334155;--gray-300: #475569;--gray-400: #64748b;--gray-500: #94a3b8;--gray-600: #cbd5e1;--gray-700: #e2e8f0;--gray-800: #f1f5f9;--gray-900: #f8fafc;--nav-selected-bg: rgba(96, 165, 250, .2);--nav-hover-bg: rgba(96, 165, 250, .1);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .4), 0 1px 2px -1px rgb(0 0 0 / .3);--shadow: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .3);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .3);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .5), 0 8px 10px -6px rgb(0 0 0 / .4);--shadow-xl: 0 25px 50px -12px rgb(0 0 0 / .6);--shadow-2xl: 0 32px 64px -12px rgb(0 0 0 / .7);--shadow-colored: 0 10px 25px -5px rgba(96, 165, 250, .3);--focus: rgba(96, 165, 250, .3);--error-bg: #7f1d1d;--error-text: #f87171;--error-border: #991b1b}body{font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--background);color:var(--text-primary);min-height:100vh;font-size:var(--text-base);line-height:1.5;letter-spacing:-.01em;transition:background-color .3s ease,color .3s ease}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:var(--font-bold);line-height:1.25;color:var(--text-primary);letter-spacing:-.02em;margin:0}h1{font-size:var(--text-4xl);font-weight:var(--font-extrabold);line-height:1.1}h2{font-size:var(--text-3xl);font-weight:var(--font-bold);line-height:1.2}h3{font-size:var(--text-2xl);font-weight:var(--font-semibold);line-height:1.25}h4{font-size:var(--text-xl);font-weight:var(--font-semibold)}h5{font-size:var(--text-lg);font-weight:var(--font-medium)}h6{font-size:var(--text-base);font-weight:var(--font-medium)}p{line-height:1.7;color:var(--text-secondary);margin:0 0 1rem}.lead{font-size:var(--text-lg);font-weight:var(--font-normal);color:var(--text-secondary);line-height:1.6}.btn{padding:.75rem 1.5rem;border:none;border-radius:12px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none;line-height:1;position:relative;overflow:hidden;min-height:44px;box-shadow:0 2px 4px #0000001a}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:0 2px 4px #0000001a!important}.btn:active{transform:translateY(1px)}.btn-success{background:var(--success);color:#fff;border:1px solid var(--success)}.btn-success:hover:not(:disabled){background:#047857;transform:translateY(-1px);box-shadow:0 4px 8px #0000001f}.btn-success:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 8px #10b98133}.btn-danger{background:var(--danger);color:#fff;border:1px solid var(--danger)}.btn-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 8px #0000001f}.btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 8px #ef444433}.btn-outline{background:transparent;border:1px solid var(--primary);color:var(--primary);box-shadow:none}.btn-outline:hover:not(:disabled){background:var(--primary);color:#fff;transform:translateY(-1px);box-shadow:0 2px 4px #00000014}.btn-outline:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000000d}.btn-sm{padding:.5rem 1rem;font-size:.813rem;min-height:36px;border-radius:8px}.btn-lg{padding:1rem 2rem;font-size:1rem;min-height:52px;border-radius:16px}.btn-xl{padding:1.25rem 2.5rem;font-size:1.125rem;min-height:60px;border-radius:20px}.btn-icon{padding:.75rem;min-width:44px;min-height:44px;border-radius:12px}.btn-icon.btn-sm{padding:.5rem;min-width:36px;min-height:36px;border-radius:8px}.btn-icon.btn-lg{padding:1rem;min-width:52px;min-height:52px;border-radius:16px}.btn-fab{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;padding:0;min-height:56px;box-shadow:0 8px 24px #00000026;z-index:1000}.btn-fab:hover:not(:disabled){transform:translateY(-4px);box-shadow:0 12px 32px #0003}.btn-group{display:inline-flex;border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.btn-group .btn{border-radius:0;border-right:1px solid rgba(255,255,255,.2);box-shadow:none}.btn-group .btn:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}.btn-group .btn:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px;border-right:none}.btn-group .btn:not(:last-child){border-right:1px solid rgba(255,255,255,.2)}.btn.loading{position:relative;color:transparent}.btn.loading:after{content:"";position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin 1s linear infinite}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem;border-top:1px solid var(--border);margin-top:1.5rem}.modal-actions .btn{min-width:120px}.actions-cell{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.actions-cell .btn{white-space:nowrap}.search-bar{display:flex;gap:.75rem;margin-bottom:1.5rem;align-items:center}.search-bar input{flex:1;padding:.75rem 1rem;border:2px solid var(--border);border-radius:12px;font-size:.875rem;font-weight:500;transition:all .2s ease;background:var(--surface);color:var(--text-primary)}.search-bar input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus)}.search-bar input::placeholder{color:var(--text-tertiary)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.page-header h1{font-size:2rem;font-weight:600;color:var(--text-primary);margin:0}.page-header p{color:var(--text-secondary);margin:.5rem 0 0;font-size:1rem}@media (max-width: 768px){.btn{padding:.625rem 1.25rem;font-size:.813rem;min-height:40px}.btn-sm{padding:.5rem .875rem;font-size:.75rem;min-height:32px}.btn-lg{padding:.875rem 1.5rem;font-size:.875rem;min-height:48px}.btn-fab{width:48px;height:48px;min-height:48px;bottom:1rem;right:1rem}.modal-actions{flex-direction:column;gap:.75rem}.modal-actions .btn{width:100%;min-width:auto}.actions-cell{flex-direction:column;align-items:stretch}.actions-cell .btn{width:100%;margin-bottom:.5rem}.actions-cell .btn:last-child{margin-bottom:0}}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;margin-bottom:var(--spacing-sm);font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-input,.form-textarea,.form-select{width:100%;padding:.75rem 1rem;border:2px solid var(--border)!important;border-radius:8px;font-size:.938rem;transition:all .2s ease;background:var(--surface);color:var(--text-primary);font-family:inherit;box-sizing:border-box}.form-input:hover,.form-textarea:hover,.form-select:hover{border-color:var(--border-strong)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus)}.form-select,select:not([multiple]):not(.dropdown-trigger):not(.user-select-input):not(.search-input){-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23cbd5e1' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem;cursor:pointer;background-color:var(--surface)!important;color:var(--text-primary)!important}[data-theme=dark] .form-select,[data-theme=dark] select:not([multiple]):not(.dropdown-trigger):not(.user-select-input):not(.search-input){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23cbd5e1' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.form-select:focus,select:not([multiple]):focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2360a5fa' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.form-select option,select option{padding:.75rem 1rem;background:var(--surface);color:var(--text-primary)}.form-select option:hover,select option:hover{background:var(--surface-alt)}.form-textarea{resize:vertical;min-height:100px}.form-error{color:var(--error-text);font-size:.813rem;margin-top:var(--spacing-xs);background:var(--error-bg);padding:.75rem 1rem;border-radius:var(--radius)}.card{background:var(--surface);border-radius:var(--radius-md);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:var(--transition)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}[data-theme=dark] .card{background:var(--surface);border-color:var(--border)}[data-theme=dark] .card:hover{background:var(--surface-alt);border-color:var(--border-strong)}.container{max-width:1280px;margin:0 auto;padding:0 var(--spacing)}.container-fluid{width:100%;padding:0 var(--spacing)}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--primary)}.text-secondary{color:var(--text-secondary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing)}.mt-4{margin-top:var(--spacing-lg)}.mt-5{margin-top:var(--spacing-xl)}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:var(--spacing-xl)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing-xs)}.gap-2{gap:var(--spacing-sm)}.gap-3{gap:var(--spacing)}.gap-4{gap:var(--spacing-lg)}.spinner{border:2px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;width:20px;height:20px;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}@media (max-width: 768px){.container{padding:0 1rem}h1{font-size:1.875rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--gray-100)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--gray-400)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.input,input[type=text],input[type=number],input[type=email],input[type=password],textarea,select{width:100%;height:auto;min-height:40px;padding:.75rem 1rem;border:2px solid var(--border)!important;border-radius:8px;background:var(--surface);color:var(--text-primary);font-size:.938rem;transition:all .2s ease;font-family:inherit;box-sizing:border-box}textarea{min-height:100px;height:auto}.input::placeholder,textarea::placeholder{color:var(--text-tertiary)}.input:hover,input:hover,textarea:hover,select:hover{border-color:var(--border-strong)}.input:focus,input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus)}select:not(.dropdown-trigger):not(.user-select-input):not(.search-input){border:2px solid var(--border)!important;background-color:var(--surface)!important;color:var(--text-primary)!important}select:not([multiple]):not(.dropdown-trigger):not(.user-select-input):not(.search-input){-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364758b' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:12px;padding-right:2.5rem;cursor:pointer}[data-theme=dark] select:not([multiple]):not(.dropdown-trigger):not(.user-select-input):not(.search-input){background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23cbd5e1' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}select:not([multiple]):not(.dropdown-trigger):not(.user-select-input):not(.search-input):focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2360a5fa' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}select:not(.dropdown-trigger):not(.user-select-input):not(.search-input) option{padding:.75rem 1rem;background:var(--surface);color:var(--text-primary)}select:not(.dropdown-trigger):not(.user-select-input):not(.search-input) option:hover{background:var(--surface-alt)}*:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-xs)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.skip-to-main{position:absolute;top:-40px;left:0;background:var(--primary);color:#fff;padding:var(--spacing-md);text-decoration:none;z-index:10000;border-radius:0 0 var(--radius) var(--radius)}.skip-to-main:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (prefers-contrast: high){:root{--border: #000000;--text-primary: #000000;--text-secondary: #333333}[data-theme=dark]{--border: #ffffff;--text-primary: #ffffff;--text-secondary: #cccccc}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.input.error,input.error,textarea.error,select.error{border-color:var(--danger);box-shadow:0 0 0 3px #ef44441f}.input.success,input.success,textarea.success,select.success{border-color:var(--success);box-shadow:0 0 0 3px #10b9811f}.control{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.control input[type=checkbox],.control input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:1px solid var(--border);border-radius:4px;background:var(--surface);position:relative;transition:var(--transition)}.control input[type=radio]{border-radius:999px}.control input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}.control input[type=radio]:checked{background:var(--primary);border-color:var(--primary)}.control input[type=checkbox]:checked:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border:2px solid white;border-top:none;border-left:none;transform:rotate(45deg)}.control input[type=radio]:checked:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:999px;background:#fff}.control input:focus{box-shadow:0 0 0 3px #47556914}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.switch-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:var(--gray-300);border-radius:999px;transition:var(--transition)}.switch-slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:var(--transition);box-shadow:var(--shadow-sm)}.switch input:checked+.switch-slider{background:var(--primary)}.switch input:checked+.switch-slider:before{transform:translate(20px)}.form-field{display:grid;gap:6px}.form-label{font-size:.875rem;color:var(--text-secondary);font-weight:600}.form-hint{font-size:.75rem;color:var(--text-secondary)}.form-error{color:var(--danger);font-size:.813rem}.table{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.table thead th{position:sticky;top:0;background:var(--surface-alt, #f9fafb);color:var(--text-secondary);text-align:left;font-weight:600;font-size:.813rem;padding:12px 16px;border-bottom:1px solid var(--border);z-index:1}.table tbody td{padding:12px 16px;border-bottom:1px solid var(--border);color:var(--text-primary);font-size:.875rem}.table tbody tr:nth-child(2n){background:var(--gray-50)}.table tbody tr:hover{background:var(--primary-50)}.table tbody tr:nth-child(2n):hover{background:var(--primary-50)}.table .cell-right{text-align:right}[data-theme=dark] .table thead th{background:var(--surface-alt);color:var(--text-secondary);border-bottom-color:var(--border)}[data-theme=dark] .table tbody tr:nth-child(2n){background:var(--gray-100)}[data-theme=dark] .table tbody tr:hover{background:#60a5fa1a}[data-theme=dark] .table tbody tr:nth-child(2n):hover{background:#60a5fa1a}.table.compact thead th,.table.compact tbody td{padding:8px 12px}.table.spacious thead th,.table.spacious tbody td{padding:16px 20px}.table thead th.sortable{cursor:pointer}.table thead th.sortable:after{content:"u2195";margin-left:6px;font-size:.75rem;color:var(--gray-400)}.table thead th.sortable.asc:after{content:"u2191";color:var(--text-secondary)}.table thead th.sortable.desc:after{content:"u2193";color:var(--text-secondary)}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border:1px solid var(--primary-dark);border-radius:var(--radius-md);font-size:.938rem;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:.5rem}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #2563eb40}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary:focus{outline:none;box-shadow:0 0 0 3px var(--focus)}.btn-secondary{padding:.75rem 1.5rem;background:var(--surface);color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.938rem;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:.5rem}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-300)}.btn-secondary:active{background:var(--gray-100)}.btn-secondary:focus{outline:none;box-shadow:0 0 0 3px var(--focus)}.btn-sm{padding:.5rem 1rem;font-size:.813rem;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:var(--transition);border:1px solid var(--border);background:var(--surface);color:var(--text-primary)}.btn-sm.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border-color:var(--primary-dark)}.btn-sm.btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.btn-sm.btn-edit{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.btn-sm.btn-edit:hover{background:var(--primary)}.btn-sm.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-sm.btn-danger:hover{background:#dc2626}.btn-sm.btn-success{background:var(--success);color:#fff;border-color:var(--success)}.btn-sm.btn-success:hover{background:#059669}.btn-icon{padding:.5rem;background:transparent;border:none;cursor:pointer;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;transition:var(--transition)}.btn-icon:hover{background:var(--surface)}.close-btn{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:var(--transition)}.close-btn:hover{background:var(--surface);color:var(--text-primary)}.button-group{display:flex;gap:.75rem;align-items:center}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1.5rem;border-top:1px solid var(--border);margin-top:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary);font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border:2px solid #d1d5db!important;border-radius:8px;font-size:.938rem;background:#fff;color:#1f2937;transition:all .2s ease;box-sizing:border-box;font-family:inherit}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#9ca3af}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e51a}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:12px;padding-right:2.5rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.form-group select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%234f46e5' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.form-group select option{padding:.75rem 1rem;background:#fff;color:#1f2937}.form-group select option:hover{background:#f3f4f6}.form-group textarea{resize:vertical;min-height:80px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d,0 0 0 1px #0000000d;max-width:500px;width:100%;max-height:90vh;overflow:hidden;position:relative;display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.08);animation:slideUpScale .3s cubic-bezier(.16,1,.3,1)}@keyframes slideUpScale{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content.small{max-width:400px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.75rem 2rem;border-bottom:1px solid rgba(0,0,0,.08);background:linear-gradient(to bottom,#fff,#fafafa);flex-shrink:0}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937;letter-spacing:-.025em}.modal-content form{padding:0;display:flex;flex-direction:column;flex:1;overflow:hidden}.modal-content form>.form-group:first-child{margin-top:0}.modal-content form>.modal-actions{margin-top:auto}.form-group input[type=file]{padding:.5rem;border:2px dashed var(--border);background:var(--gray-50);cursor:pointer;transition:all .2s}.form-group input[type=file]:hover{border-color:var(--primary);background:var(--primary-light)}.selected-files{margin-top:.75rem;padding:.75rem;background:var(--gray-50);border-radius:var(--radius-sm);border:1px solid var(--border)}.selected-files p{margin:0 0 .5rem;font-size:.875rem;font-weight:500;color:var(--text-primary)}.selected-files ul{margin:0;padding-left:1.25rem;list-style:disc}.selected-files li{font-size:.813rem;color:var(--text-secondary);margin-bottom:.25rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted);opacity:1}.form-group select option{padding:.5rem;background:#fff;color:var(--text-primary)}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary:focus,.btn-secondary:focus,.btn-sm:focus,.btn-icon:focus{outline:none;box-shadow:0 0 0 3px var(--focus)}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:var(--gray-300)}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--danger);box-shadow:0 0 0 3px #ef44441a}.form-group input.success,.form-group select.success,.form-group textarea.success{border-color:var(--success);box-shadow:0 0 0 3px #10b9811a}
