:root {--bg-body: #f8f9fa;--bg-sidebar: #ffffff;--bg-primary: #f8f9fa;--text-primary: #333333;--text-secondary: #64748b;--border-color: #e2e8f0;--accent-color: #2563eb;--accent-hover: #1d4ed8;--nav-hover: #f1f5f9;--nav-active: #eef2ff;--nav-active-text: #2563eb;--card-bg: #ffffff;--bg-input: #ffffff;--color-indigo-rgb: 115, 134, 240; --color-success-rgb: 16, 185, 129; --color-warning-rgb: 245, 158, 11;--color-error-rgb: 239, 68, 68;--color-slate-rgb: 100, 116, 139;--color-violet-rgb: 139, 92, 246; --status-planned-bg: rgba(var(--color-indigo-rgb), 0.08);--status-planned-text: #4338ca;--status-planned-border: rgba(var(--color-indigo-rgb), 0.2);--status-planned-accent: rgb(var(--color-indigo-rgb));--status-toschedule-bg: rgba(var(--color-violet-rgb), 0.1);--status-toschedule-text: #6d28d9;--status-toschedule-border: rgba(var(--color-violet-rgb), 0.2);--status-toschedule-accent: rgb(var(--color-violet-rgb));--status-pending-bg: rgba(var(--color-warning-rgb), 0.12);--status-pending-text: #b45309;--status-pending-border: rgba(var(--color-warning-rgb), 0.2);--status-pending-accent: rgb(var(--color-warning-rgb));--status-completed-bg: rgba(var(--color-success-rgb), 0.1);--status-completed-text: #065f46;--status-completed-border: rgba(var(--color-success-rgb), 0.2);--status-completed-accent: rgb(var(--color-success-rgb));--status-cancelled-bg: rgba(var(--color-slate-rgb), 0.1);--status-cancelled-text: #475569;--status-cancelled-border: rgba(var(--color-slate-rgb), 0.2);--status-cancelled-accent: rgb(var(--color-slate-rgb));--font-family: 'Inter', sans-serif;--font-size-h1: 1.75rem;--font-size-h2: 1.25rem;--font-size-h3: 1rem;--font-size-base: 0.875rem;--font-size-sm: 0.8125rem;--font-size-xs: 0.7rem;--space-1: 0.25rem;--space-2: 0.5rem;--space-3: 0.75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.2), 0 4px 6px -2px rgba(0, 0, 0, 0.1);--control-height: 38px;--header-height: 4rem;--sidebar-width: 13.6rem;--sidebar-collapsed-width: 5rem;}[data-theme="dark"] {--bg-body: #0f172a;--bg-sidebar: #1e293b;--bg-primary: #0f172a;--text-primary: #f8fafc;--text-secondary: #94a3b8;--border-color: #334155;--accent-color: #3b82f6;--accent-hover: #60a5fa;--nav-hover: #334155;--nav-active: #1e40af;--nav-active-text: #ffffff;--card-bg: #1e293b;--bg-input: #1e293b;--status-planned-bg: rgba(var(--color-indigo-rgb), 0.12);--status-planned-text: #a5b4fc;--status-planned-border: rgba(var(--color-indigo-rgb), 0.3);--status-toschedule-bg: rgba(var(--color-violet-rgb), 0.15);--status-toschedule-text: #ddd6fe;--status-toschedule-border: rgba(var(--color-violet-rgb), 0.3);--status-pending-bg: rgba(var(--color-warning-rgb), 0.15);--status-pending-text: #fbbf24;--status-pending-border: rgba(var(--color-warning-rgb), 0.3);--status-completed-bg: rgba(var(--color-success-rgb), 0.15);--status-completed-text: #6ee7b7;--status-completed-border: rgba(var(--color-success-rgb), 0.3);--status-cancelled-bg: rgba(var(--color-slate-rgb), 0.15);--status-cancelled-text: #94a3b8;--status-cancelled-border: rgba(var(--color-slate-rgb), 0.3);}[data-theme="dark"] .logo-img {filter: brightness(0) invert(1);}*,*::before,*::after {box-sizing: border-box;}body {font-family: var(--font-family);background-color: var(--bg-body);color: var(--text-primary);margin: 0;transition: background-color 0.3s, color 0.3s;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}a {text-decoration: none;color: inherit;}h1 {margin: 0;font-size: var(--font-size-h1);font-weight: 700;color: var(--text-primary);line-height: 1.3;}h2 {margin: 0 0 var(--space-4);font-size: var(--font-size-h2);font-weight: 600;color: var(--text-primary);}h3 {margin: 0 0 var(--space-3);font-size: var(--font-size-h3);font-weight: 600;color: var(--text-primary);}.app {display: flex;min-height: 100vh;}.main {flex: 1;padding: 30px;display: flex;flex-direction: column;min-height: 100vh;}.main.no-padding {padding: 0 !important;}.content {flex: 1 0 auto;}.footer {flex-shrink: 0;margin-top: auto;}[x-cloak] {display: none !important;}@keyframes pulse-slow {0%,100% {opacity: 1;transform: scale(1);}50% {opacity: 0.8;transform: scale(1.02);}}.animate-pulse-slow {animation: pulse-slow 3s cubic-bezier(0.4, 0, 0.6, 1) infinite;}@keyframes spin-slow {from { transform: rotate(0deg); }to { transform: rotate(360deg); }}.animate-spin-slow {animation: spin-slow 3s linear infinite;}@keyframes shimmer {100% { transform: translateX(100%); }}.animate-shimmer {animation: shimmer 2s infinite;}@keyframes scan {0% { top: 0%; opacity: 0; }10% { opacity: 1; }90% { opacity: 1; }100% { top: 100%; opacity: 0; }}.animate-scan {animation: scan 2s linear infinite;}.stretched-link::after {position: absolute;top: 0;right: 0;bottom: 0;left: 0;z-index: 10;content: "";}.py-4 {padding-top: 1rem !important;padding-bottom: 1rem !important;}.p-6 {padding: 0.5rem !important;}.px-6 {padding-left: 1rem !important;padding-right: 1rem !important;}.px-4 {padding-left: 1rem !important;padding-right: 1rem !important;}@media print {.sidebar,.sidebar-wrapper,.aside-desktop,.aside-mobile,.header-actions,.btn,.pagination,.table-sort-link .sort-icon {display: none !important;}.app {display: block !important;}.main-content {margin-left: 0 !important;padding: 0 !important;width: 100% !important;}.card {box-shadow: none !important;border: 1px solid #ccc !important;}}@media (prefers-reduced-motion: reduce) {* {animation-duration: 0.01ms !important;animation-iteration-count: 1 !important;transition-duration: 0.01ms !important;}}.sidebar-wrapper {background: var(--bg-sidebar);border-right: 1px solid var(--border-color);display: flex;flex-direction: column;z-index: 50;transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);}.aside-desktop {position: fixed;top: 0;left: 0;bottom: 0;width: var(--sidebar-width);height: 100vh;}html[data-sidebar-collapsed="true"] .aside-desktop {width: var(--sidebar-collapsed-width);}.main-wrapper {margin-left: var(--sidebar-width);transition: margin-left 0.3s cubic-bezier(0.4, 0, 0.2, 1);}html[data-sidebar-collapsed="true"] .main-wrapper {margin-left: var(--sidebar-collapsed-width);}@media (max-width: 1023px) {.main-wrapper {margin-left: 0 !important;}}.aside-mobile {position: fixed;inset: 0;z-index: 100;}.profile-actions-wrapper {display: flex;gap: 0.5rem;margin: 0.25rem 1.75rem 0; width: auto;}html[data-sidebar-collapsed="true"] .profile-actions-wrapper {flex-direction: column;align-items: center;margin: 0.75rem 0 0;}.profile-action-item {display: flex;justify-content: center;align-items: center;height: 1.875rem; border-radius: 0.625rem;flex: 1;min-width: 0;transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);background: white;color: #64748b;border: 1px solid #e2e8f0;box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);}.dark .profile-action-item,[data-theme='dark'] .profile-action-item {background: rgba(255, 255, 255, 0.05);color: #94a3b8;border-color: rgba(255, 255, 255, 0.1);}.profile-action-item:hover {background: #f8fafc;color: #0f172a;border-color: #cbd5e1;transform: translateY(-1px);box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);}.dark .profile-action-item:hover,[data-theme='dark'] .profile-action-item:hover {background: rgba(255, 255, 255, 0.1);color: white;border-color: rgba(255, 255, 255, 0.2);}.profile-action-item.logout-button {background: rgba(239, 68, 68, 0.03);color: #ef4444;border-color: rgba(239, 68, 68, 0.1);}.profile-action-item.logout-button:hover {background: #ef4444;color: white;border-color: #ef4444;}html[data-sidebar-collapsed="true"] .profile-action-item {width: 2.75rem;height: 2.75rem;flex: 0 0 2.75rem;}.bg-brand { background-color: #7386f0 !important; }.text-brand { color: #7386f0 !important; }.shadow-brand { box-shadow: 0 10px 15px -3px rgba(115, 134, 240, 0.25), 0 4px 6px -4px rgba(115, 134, 240, 0.1) !important; }.logo-container {transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}html[data-sidebar-collapsed="true"] .logo-container {padding-left: 0 !important;padding-right: 0 !important;}.logo-text {transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1);white-space: nowrap;}html[data-sidebar-collapsed="true"] .logo-text {display: none !important;opacity: 0 !important;width: 0 !important;overflow: hidden !important;pointer-events: none !important;}.no-transition, .no-transition * {transition: none !important;animation: none !important;}.nav-link {display: flex;align-items: center;padding: 0.425rem 1rem;margin: 0.125rem 0.75rem;border-radius: var(--radius-lg);color: var(--text-secondary);font-size: 0.8125rem;font-weight: 600;transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);position: relative;text-decoration: none;gap: 0.75rem;}html[data-sidebar-collapsed="true"] .nav-link {justify-content: center;padding: 0;margin: 0.375rem auto;width: 2.5rem; height: 2.5rem;gap: 0;border-radius: 0.75rem; }html[data-sidebar-collapsed="true"] .nav-link .absolute.left-0 {left: -1.25rem !important; width: 3px !important;top: 0.625rem !important;bottom: 0.625rem !important;}.nav-link:hover {background: var(--nav-hover);color: var(--text-primary);}.nav-link.active-link {background-color: rgba(var(--color-indigo-rgb), 0.08);color: var(--accent-color);box-shadow: inset 0 0 0 1px rgba(var(--color-indigo-rgb), 0.1);}[data-theme="dark"] .nav-link.active-link {background-color: rgba(var(--color-indigo-rgb), 0.15);color: #818cf8;}.nav-link svg {width: 1.125rem;height: 1.125rem;flex-shrink: 0;}.nav-link .nav-icon {display: flex;align-items: center;justify-content: center;transition: transform 0.2s;}.nav-link:hover .nav-icon {transform: scale(1.1);}.nav-link .nav-label {transition: opacity 0.2s, transform 0.2s;white-space: nowrap;}html[data-sidebar-collapsed="true"] .nav-link .nav-label {display: none;}.sidebar-footer {padding: 16px;border-top: 1px solid var(--border-color);background: var(--bg-sidebar);}.user-info-link {display: flex;align-items: center;margin-bottom: 12px;}.user-avatar {width: 40px;height: 40px;background-color: var(--accent-color);color: white;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-weight: bold;margin-right: 12px;}.user-name {font-weight: 600;font-size: 0.9rem;color: var(--text-primary);}.user-role {font-size: 0.8rem;color: var(--text-secondary);}.sidebar-actions {display: flex;justify-content: space-around;align-items: center;}.btn-icon-soft {background: transparent;border: none;cursor: pointer;padding: 8px;border-radius: var(--radius-sm);color: var(--text-secondary);transition: background 0.2s;}.btn-icon-soft:hover {background-color: var(--nav-hover);color: var(--text-primary);}.action-divider {width: 1px;height: 20px;background-color: var(--border-color);}.header-actions {display: flex;justify-content: space-between;align-items: center;margin-bottom: var(--space-6);gap: var(--space-4);}.action-group {height: 44px;}.header-title-group {display: flex;flex-direction: column;}.card {background: var(--card-bg);border-radius: var(--radius-xl);border: 1px solid var(--border-color);box-shadow: var(--shadow-md);transition: transform 0.2s ease, box-shadow 0.2s ease;overflow: visible;}.card h2 {margin-bottom: 0;}.card-header {padding: 0.875rem 1.25rem;border-bottom: 1px solid var(--border-color);display: flex;justify-content: space-between;align-items: center;background-color: transparent;}.card-footer {padding: 0.875rem 1.25rem;border-top: 1px solid var(--border-color);display: flex;justify-content: space-between;align-items: center;}.card-header h2,.card-title {margin: 0 !important;font-size: 0.875rem !important;font-family: var(--font-family) !important;font-weight: 900 !important;text-transform: uppercase;letter-spacing: 0.1em;color: var(--text-primary) !important;}.section-title {font-size: 0.75rem;font-weight: 800;text-transform: uppercase;letter-spacing: 0.1em;color: var(--text-secondary);display: flex;align-items: center;gap: 0.5rem;margin: 1.5rem 0 0.75rem;padding-bottom: 0.5rem;border-bottom: 1px solid var(--border-color);}.btn {display: inline-flex;align-items: center;justify-content: center;padding: 0 20px;height: var(--control-height) !important;font-size: var(--font-size-base);font-weight: 500;border: none;border-radius: var(--radius-sm);cursor: pointer;transition: all 0.2s;text-decoration: none;gap: var(--space-2);}.btn svg {width: 16px;height: 16px;}.btn-primary {background: var(--accent-color);color: white;}.btn-primary:hover {background: var(--accent-hover);}.btn-secondary {background: var(--nav-hover);color: var(--text-primary);}.btn-secondary:hover {background: var(--border-color);}.btn-danger {background: var(--color-error);color: white;}.btn-danger:hover {background: #dc2626;}.btn-outline-primary {background: transparent;color: var(--accent-color);border: 1px solid var(--accent-color);}.btn-outline-primary:hover {background: var(--accent-color);color: white;}.btn-sm {padding: 6px 12px;font-size: 0.8125rem;height: auto;}.btn-block {width: 100%;}.btn-icon {padding: 8px;background: transparent;border: none;cursor: pointer;}.btn-card {padding: 12px;text-align: center;border-radius: var(--radius-md);font-weight: 600;font-size: 15px;min-height: 48px;display: flex;align-items: center;justify-content: center;gap: 6px;transition: all 0.2s;}.btn-card svg {width: 18px;height: 18px;}.btn-card-primary {background: var(--accent-color);color: white;}.btn-card-primary:active {background: var(--accent-hover);}.badge {display: inline-flex;align-items: center;justify-content: center;padding: 2px 8px;border-radius: var(--radius-md);font-size: 10px;font-weight: 800;line-height: 1;transition: all 0.2s;cursor: default;width: 65px;height: 22px;text-transform: uppercase;border: 1px solid transparent;}.badge-toggle {cursor: pointer;}.badge-lg {height: 44px;width: auto;font-size: 12px;}.badge-toggle:hover {filter: brightness(1.2);transform: translateY(-1px);}.badge-toggle:active {transform: scale(0.95);transform: translateY(0);}.badge-success {background-color: rgba(34, 197, 94, 0.1);color: #16a34a;border-color: rgba(34, 197, 94, 0.2);}.badge-danger {background-color: rgba(239, 68, 68, 0.1);color: #dc2626;border-color: rgba(239, 68, 68, 0.2);}.badge-emerald {background-color: rgba(16, 185, 129, 0.1);color: #10b981;border-color: rgba(16, 185, 129, 0.2);}.badge-outline {border: 1px solid currentColor;}.badge-error {background-color: rgba(239, 68, 68, 0.1);color: #dc2626;}.badge-warning {background-color: rgba(234, 179, 8, 0.1);color: #ca8a04;}.badge-gray {background-color: rgba(100, 116, 139, 0.1);color: #475569;}.badge-purple {background-color: rgba(147, 51, 234, 0.1);color: #a855f7;border-color: rgba(147, 51, 234, 0.2);}.badge-info {background-color: rgba(59, 130, 246, 0.1);color: #3b82f6;border-color: rgba(59, 130, 246, 0.2);}.badge-role {font-size: 0.65rem;font-weight: 800;font-style: italic;letter-spacing: 0.05em;padding: 2px 10px;height: auto;width: auto;min-width: 85px;justify-content: center;border-radius: var(--radius-md);display: inline-flex;}.badge-role-xs {min-width: auto;padding: 1px 6px;font-size: 8px;}.badge-premium {display: inline-flex;align-items: center;justify-content: center;padding: 3px 8px;border-radius: var(--radius-md);font-size: 10px;font-weight: 800;text-transform: uppercase;letter-spacing: 0.05em;line-height: normal;white-space: nowrap;border: 1px solid transparent;width: 90px;}.badge-premium-red {background-color: rgba(239, 68, 68, 0.2);color: #f87171;border-color: rgba(239, 68, 68, 0.3);}.badge-premium-blue {background-color: rgba(59, 130, 246, 0.2);color: #60a5fa;border-color: rgba(59, 130, 246, 0.3);}.badge-premium-amber {background-color: rgba(245, 158, 11, 0.2);color: #fbbf24;border-color: rgba(245, 158, 11, 0.3);}.badge-premium-emerald {background-color: rgba(16, 185, 129, 0.2);color: #34d399;border-color: rgba(16, 185, 129, 0.3);}.badge-premium-indigo {background-color: rgba(99, 102, 241, 0.2);color: #818cf8;border-color: rgba(99, 102, 241, 0.3);}.badge-premium-purple {background-color: rgba(168, 85, 247, 0.2);color: #c084fc;border-color: rgba(168, 85, 247, 0.3);}.badge-premium-gray {background-color: rgba(148, 163, 184, 0.2);color: #cbd5e1;border-color: rgba(148, 163, 184, 0.3);}.glass-card {background: rgba(255, 255, 255, 0.05);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);border: 1px solid rgba(255, 255, 255, 0.1);border-radius: var(--radius-xl);box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);}.card-stat {background: var(--card-bg);border: 1px solid var(--border-color);border-radius: var(--radius-xl);padding: 1.5rem;transition: all 0.3s ease;}.card-stat:hover {border-color: rgba(59, 130, 246, 0.3);box-shadow: 0 20px 25px -5px rgba(59, 130, 246, 0.05);transform: translateY(-4px);}.btn-premium {position: relative;overflow: hidden;height: var(--control-height) !important;padding: 0 32px;border-radius: var(--radius-xl);font-weight: 900;font-size: 10px;text-transform: uppercase;letter-spacing: 0.2em;transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);border: 1px solid rgba(255, 255, 255, 0.1);cursor: pointer;display: inline-flex;align-items: center;justify-content: center;gap: 12px;box-shadow: 0 10px 20px -5px rgba(0, 0, 0, 0.2);color: white;text-decoration: none;white-space: nowrap;}.btn-premium:hover {transform: translateY(-2px);box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.3);border-color: rgba(255, 255, 255, 0.2);}.btn-premium:active {transform: translateY(0) scale(0.96);}.btn-premium-primary {background: linear-gradient(135deg, var(--accent-color), #4f46e5);box-shadow: 0 10px 15px -3px rgba(37, 99, 235, 0.4);border: none;}.btn-premium-primary:hover {box-shadow: 0 20px 25px -5px rgba(37, 99, 235, 0.5);background: linear-gradient(135deg, var(--accent-hover), #4338ca);}.btn-premium-success {background: linear-gradient(135deg, #10b981, #059669);box-shadow: 0 10px 15px -3px rgba(16, 185, 129, 0.4);border: none;color: white !important;}.btn-premium-success:hover {box-shadow: 0 20px 25px -5px rgba(16, 185, 129, 0.5);background: linear-gradient(135deg, #34d399, #10b981);}.btn-premium-indigo {background: linear-gradient(135deg, #6366f1, #4338ca);box-shadow: 0 10px 15px -3px rgba(79, 70, 229, 0.4);}.btn-premium-white {background: white;color: #1e293b;border: 1px solid #e2e8f0;box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05);}.btn-premium-white:hover {background: #f8fafc;box-shadow: 0 15px 20px -5px rgba(0, 0, 0, 0.1);}.btn-premium-ghost {background: transparent;color: var(--text-secondary);border: 1px solid var(--border-color);box-shadow: none;}.btn-premium-ghost:hover {background: var(--nav-hover);color: var(--text-primary);border-color: var(--text-secondary);}.btn-premium svg {width: 18px;height: 18px;transition: transform 0.3s ease;}.btn-premium:hover svg {transform: translateX(4px);}.badge-status {display: inline-flex;align-items: center;justify-content: center;padding: 0.4rem 1rem;border-radius: 9999px;font-size: 9px;font-weight: 800;text-transform: uppercase;letter-spacing: 0.05em;border: 1px solid transparent;}.badge-status-ok {background: rgba(34, 197, 94, 0.1);color: #22c55e;border-color: rgba(34, 197, 94, 0.2);}.badge-status-warning {background: rgba(245, 158, 11, 0.1);color: #f59e0b;border-color: rgba(245, 158, 11, 0.2);}.badge-status-nok {background: rgba(239, 68, 68, 0.1);color: #ef4444;border-color: rgba(239, 68, 68, 0.2);}.icon-box {height: 3rem;width: 3rem;border-radius: var(--radius-md);display: flex;align-items: center;justify-content: center;transition: all 0.3s ease;}.icon-box-primary {background: rgba(59, 130, 246, 0.1);color: var(--accent-color);}.card:hover .icon-box-primary,.card-stat:hover .icon-box-primary {background: var(--accent-color);color: white;}@keyframes skeleton-shimmer {0% {background-position: -200% 0;}100% {background-position: 200% 0;}}.skeleton {position: relative;overflow: hidden;background: var(--nav-hover);border-radius: var(--radius-md);display: inline-block;vertical-align: middle;}.skeleton::after {content: "";position: absolute;inset: 0;transform: translateX(-100%);background: linear-gradient(90deg,transparent,rgba(255, 255, 255, 0.08),transparent);animation: skeleton-shimmer 2s infinite;}.dark .skeleton::after {background: linear-gradient(90deg,transparent,rgba(255, 255, 255, 0.05),transparent);}.skeleton-text {width: 100%;height: 12px;margin-bottom: 8px;}.skeleton-title {width: 60%;height: 24px;margin-bottom: 12px;}.skeleton-circle {border-radius: 50%;width: 40px;height: 40px;}.skeleton-button {width: 120px;height: 44px;border-radius: var(--radius-xl);}.is-loading>* {visibility: hidden !important;pointer-events: none !important;}.is-loading {position: relative;min-height: 50px;}.is-loading::before {content: "";position: absolute;inset: 0;background: var(--nav-hover);border-radius: inherit;z-index: 10;background: linear-gradient(90deg,var(--nav-hover) 25%,var(--border-color) 50%,var(--nav-hover) 75%);background-size: 200% 100%;animation: skeleton-shimmer 2s infinite linear;}@keyframes shimmer {100% {transform: translateX(100%);}}.animate-shimmer {animation: shimmer 2.5s infinite;}.shimmer-overlay {position: absolute;inset: 0;background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);transform: translateX(-100%);pointer-events: none;z-index: 1;}.btn-premium,.btn-premium-primary,.btn-premium-indigo,.btn-premium-white {position: relative !important;overflow: hidden !important;}.modal-overlay {position: fixed;inset: 0;z-index: 2000;background-color: rgba(0, 0, 0, 0.8);display: flex;align-items: center;justify-content: center;}.confirm-modal-overlay {position: fixed;inset: 0;background: rgba(0, 0, 0, 0.5);display: flex;align-items: center;justify-content: center;z-index: 1000;opacity: 0;visibility: hidden;transition: opacity 0.2s, visibility 0.2s;}.confirm-modal-overlay.active {opacity: 1;visibility: visible;}.confirm-modal {background: var(--card-bg);border-radius: var(--radius-lg);box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.3);width: 90%;max-width: 400px;transform: scale(0.95);transition: transform 0.2s;}.confirm-modal-overlay.active .confirm-modal {transform: scale(1);}.confirm-modal-header {display: flex;align-items: center;justify-content: space-between;padding: 16px 20px;border-bottom: 1px solid var(--border-color);}.confirm-modal-title {margin: 0;font-size: 1.125rem;font-weight: 600;color: var(--text-primary);}.confirm-modal-close {background: none;border: none;font-size: 1.5rem;color: var(--text-secondary);cursor: pointer;padding: 0;line-height: 1;}.confirm-modal-close:hover {color: var(--text-primary);}.confirm-modal-body {padding: 20px;}.confirm-modal-message {margin: 0;color: var(--text-secondary);line-height: 1.5;}.confirm-modal-footer {display: flex;justify-content: flex-end;gap: 12px;padding: 16px 20px;border-top: 1px solid var(--border-color);}.premium-scrollbar,.custom-scrollbar {scrollbar-width: thin;scrollbar-color: rgba(148, 163, 184, 0.4) transparent;}.dark .premium-scrollbar,.dark .custom-scrollbar {scrollbar-color: rgba(255, 255, 255, 0.2) transparent;}.premium-scrollbar::-webkit-scrollbar,.custom-scrollbar::-webkit-scrollbar {width: 10px;height: 6px;}.premium-scrollbar::-webkit-scrollbar-track,.custom-scrollbar::-webkit-scrollbar-track {background: transparent;}.premium-scrollbar::-webkit-scrollbar-thumb,.custom-scrollbar::-webkit-scrollbar-thumb {background: rgba(148, 163, 184, 0.4);border-radius: 20px;border: 2px solid transparent;background-clip: content-box;transition: background-color 0.2s;}.premium-scrollbar:hover::-webkit-scrollbar-thumb,.custom-scrollbar:hover::-webkit-scrollbar-thumb {background: rgba(148, 163, 184, 0.6);background-clip: content-box;}.dark .premium-scrollbar::-webkit-scrollbar-thumb,.dark .custom-scrollbar::-webkit-scrollbar-thumb {background: rgba(255, 255, 255, 0.2);background-clip: content-box;}.dark .premium-scrollbar:hover::-webkit-scrollbar-thumb,.dark .custom-scrollbar:hover::-webkit-scrollbar-thumb {background: rgba(255, 255, 255, 0.3);background-clip: content-box;}.accordion-icon {width: 20px;height: 20px;transition: transform 0.2s;}.btn-accordion {width: 100%;text-align: left;padding: 1rem 1.5rem;display: flex;align-items: center;color: var(--primary-500);background-color: transparent;border: none;font-weight: 500;transition: color 0.2s;}.btn-accordion:hover {color: var(--primary-600);}.is-loading {opacity: 0.5;pointer-events: none;}.is-search-highlight {background-color: rgba(59, 130, 246, 0.2) !important;transition: background-color 0.3s;}.is-hidden {display: none !important;}.is-flex {display: flex !important;}.hidden-initially {display: none;}.alert {padding: 12px 16px;border-radius: var(--radius-sm);margin-bottom: 20px;font-size: var(--font-size-base);}.alert-success {background: rgba(34, 197, 94, 0.1);border: 1px solid rgba(34, 197, 94, 0.3);color: var(--color-success);}.alert-error {background: rgba(239, 68, 68, 0.1);border: 1px solid rgba(239, 68, 68, 0.3);color: var(--color-error);}.alert-warning {background: rgba(234, 179, 8, 0.1);border: 1px solid rgba(234, 179, 8, 0.3);color: var(--color-warning);}.alert-info {background: rgba(59, 130, 246, 0.1);border: 1px solid rgba(59, 130, 246, 0.3);color: var(--color-info);}.toast-container {position: fixed;top: 20px;right: 20px;z-index: 10000;display: flex;flex-direction: column;gap: 10px;pointer-events: none;}.toast {pointer-events: auto;min-width: 300px;max-width: 450px;padding: 16px 20px;border-radius: var(--radius-xl);background: rgba(15, 23, 42, 0.8);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);border: 1px solid rgba(255, 255, 255, 0.1);box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.5);display: flex;align-items: center;gap: 12px;animation: toast-in 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;}.toast.toast-out {animation: toast-out 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;}.toast-success {background: rgba(6, 95, 70, 0.8);border-left: 4px solid #10b981;color: #ffffff;}.toast-error {background: rgba(153, 27, 27, 0.8);border-left: 4px solid #ef4444;color: #ffffff;}.toast-warning {background: rgba(146, 64, 14, 0.8);border-left: 4px solid #f59e0b;color: #ffffff;}.toast-info {background: rgba(30, 58, 138, 0.8);border-left: 4px solid #3b82f6;color: #ffffff;}.toast-content {flex: 1;font-size: 0.875rem;font-weight: 600;}@keyframes toast-in {from {transform: translateX(100%);opacity: 0;}to {transform: translateX(0);opacity: 1;}}@keyframes toast-out {from {transform: translateX(0);opacity: 1;}to {transform: translateX(100%);opacity: 0;}}.alert-fade-out {opacity: 0;transition: opacity 0.8s;}.table-responsive {overflow-x: auto;-webkit-overflow-scrolling: touch;}.table {width: 100%;border-collapse: collapse;font-size: var(--font-size-base);}.table th {text-align: left;padding: 10px 16px;font-weight: 700;color: var(--text-secondary);border-bottom: 1px solid var(--border-color);background-color: transparent;font-size: 10px;text-transform: uppercase;letter-spacing: 0.1em;}.table td {padding: 10px 16px;color: var(--text-primary);border-bottom: 1px solid var(--border-color);vertical-align: middle;}.table tbody tr:hover {background-color: var(--nav-hover);}.table tbody tr:last-child td {border-bottom: none;}th.sortable {cursor: pointer;user-select: none;}th.sortable:hover {background-color: var(--bg-body);}.table-sort-link {display: flex;align-items: center;gap: 5px;color: inherit;text-decoration: none;}.table-sort-link.active {color: var(--accent-color);font-weight: 600;}.sort-icon {font-size: 0.8em;opacity: 0.5;}.table-sort-link.active .sort-icon {opacity: 1;}.pagination {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;gap: 16px;margin: 24px 0;padding: 16px;background: var(--card-bg);border-radius: var(--radius-md);border: 1px solid var(--border-color);font-size: var(--font-size-sm);}.pagination-info {color: var(--text-secondary);}.pagination-links {display: flex;align-items: center;gap: 4px;}.pagination-link {display: inline-flex;align-items: center;justify-content: center;min-width: 36px;height: 36px;padding: 0 12px;border-radius: var(--radius-sm);font-size: var(--font-size-sm);font-weight: 500;color: var(--text-secondary);background: var(--card-bg);border: 1px solid var(--border-color);transition: all 0.2s;text-decoration: none;}.pagination-link:hover:not(.disabled):not(.active) {background: var(--nav-hover);color: var(--text-primary);}.pagination-link.active {background: var(--accent-color);border-color: var(--accent-color);color: white;}.pagination-link.disabled {opacity: 0.5;cursor: not-allowed;background-color: var(--bg-body);}.pagination-ellipsis {padding: 6px 12px;color: var(--text-secondary);}.auth-container {display: flex;align-items: center;justify-content: center;min-height: 100vh;padding: 20px;background: var(--bg-primary);}.auth-card {width: 100%;max-width: 400px;padding: 40px;background: var(--card-bg);border-radius: var(--radius-lg);box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);}.auth-card h1 {margin: 0 0 24px;font-size: 1.5rem;font-weight: 600;text-align: center;color: var(--text-primary);}.auth-description {margin-bottom: 24px;text-align: center;color: var(--text-secondary);font-size: var(--font-size-base);}.auth-links {margin-top: 20px;text-align: center;}.auth-links a {color: var(--accent-color);text-decoration: none;font-size: var(--font-size-sm);}.auth-links a:hover {text-decoration: underline;}.history-popover {position: absolute;bottom: 50px;left: 0;width: 260px;background: var(--bg-sidebar);border: 1px solid var(--border-color);border-radius: var(--radius-md);box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);display: none;z-index: 100;padding: 10px;}.history-popover.active {display: block;}.history-header {font-weight: bold;padding-bottom: 8px;border-bottom: 1px solid var(--border-color);margin-bottom: 8px;color: var(--text-primary);}.history-item {display: block;padding: 8px;border-radius: 4px;color: var(--text-secondary);font-size: 0.9rem;}.history-item:hover {background: var(--nav-hover);text-decoration: none;}.activity-feed {display: flex;flex-direction: column;}.activity-item {display: flex;justify-content: space-between;align-items: flex-start;padding: 1.25rem;position: relative;border-bottom: 1px solid rgba(255, 255, 255, 0.03);transition: background 0.2s ease;}.activity-item:hover {background: rgba(255, 255, 255, 0.03);}.activity-dot-container {padding-right: 1.25rem;padding-top: 6px;display: flex;align-items: center;}.activity-dot {width: 8px;height: 8px;border-radius: 50%;background: var(--accent-color);box-shadow: 0 0 12px var(--accent-color);}.activity-dot.dot-error {background: var(--color-error);box-shadow: 0 0 12px rgba(239, 68, 68, 0.8);}.activity-dot.dot-success {background: var(--color-success);box-shadow: 0 0 12px rgba(34, 197, 94, 0.8);}.activity-body {flex: 1;display: flex;flex-direction: column;gap: 2px;}.activity-title {font-size: var(--font-size-base);font-weight: 700;color: var(--text-primary);}.activity-subtitle {font-size: 0.8125rem;color: var(--text-secondary);}.activity-meta {font-size: 13px;color: var(--text-secondary);font-weight: 500;min-width: 50px;text-align: right;padding-top: 2px;}.ql-editor .announce-content {padding: 1rem;background: rgba(59, 130, 246, 0.05);border-left: 4px solid var(--color-info);border-radius: 4px;margin: 1rem 0;}[data-theme="dark"] .ql-editor .announce-content {background: rgba(30, 41, 59, 0.5);}.ql-editor .announce-content>strong {display: block;font-size: 1.1em;margin-bottom: 0.5rem;color: var(--color-info);}#reader {width: 100%;max-width: 600px;margin: 0 auto;border-radius: var(--radius-xl);overflow: hidden;border: none !important;}#reader__status_span {display: none !important;}#reader video {width: 100% !important;height: auto !important;object-fit: cover !important;}#reader__scan_region {background: none !important;}#reader__scan_region video {display: block !important;}#reader canvas {display: none !important;}.ai-suggested {position: relative;border-color: rgba(99, 102, 241, 0.4) !important;box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.2) !important;transition: all 0.3s ease;}[data-theme="dark"] .ai-suggested {border-color: rgba(129, 140, 248, 0.5) !important;box-shadow: 0 0 0 1px rgba(129, 140, 248, 0.3) !important;}.ai-suggested::after {content: "IA " attr(data-conf);position: absolute;top: -6px;right: -6px;background: #6366f1;color: white;font-size: 8px;font-weight: 800;padding: 1px 4px;border-radius: 4px;z-index: 10;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);}.ai-suggested-input {border-color: rgba(99, 102, 241, 0.4) !important;background-color: rgba(99, 102, 241, 0.05) !important;}.ai-hover {position: relative;}.ai-hover:hover::after {content: attr(data-ai-conf);position: absolute;top: -20px;right: 0;background: #8b5cf6;color: white;font-size: 0.6rem;padding: 2px 6px;border-radius: 4px;white-space: nowrap;z-index: 10;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);font-weight: bold;}.premium-out {animation: premiumFadeOut 0.2s ease-in-out forwards;}.is-navigating {opacity: 0 !important;visibility: hidden;}.premium-appear {will-change: transform, opacity;animation: premiumFadeIn 0.5s cubic-bezier(0.4, 0, 0.2, 1) both,premiumSlideUp 0.5s cubic-bezier(0.4, 0, 0.2, 1) both;}@keyframes premiumFadeOut { from { opacity: 1; } to { opacity: 0; } }.premium-appear {will-change: transform, opacity;animation: premiumFadeIn 0.5s cubic-bezier(0.4, 0, 0.2, 1) both,premiumSlideUp 0.5s cubic-bezier(0.4, 0, 0.2, 1) both;}@keyframes premiumFadeIn { from { opacity: 0; } to { opacity: 1; } }@keyframes premiumSlideUp { from { transform: translateY(12px); } to { transform: translateY(0); } }.duration-300 { animation-duration: 0.3s !important; }.duration-500 { animation-duration: 0.5s !important; }.duration-700 { animation-duration: 0.7s !important; }.duration-1000 { animation-duration: 1s !important; }.modal-card-premium {background-color: white;border-radius: 1.5rem;box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);display: flex;flex-direction: column;overflow: hidden;position: relative;border: 1px solid #e2e8f0;}@media (min-width: 640px) {.modal-card-premium {border-radius: 2rem;}}.dark .modal-card-premium,[data-theme='dark'] .modal-card-premium {background-color: #0f172a;border-color: rgba(255, 255, 255, 0.15); box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.7);outline: 1px solid rgba(255, 255, 255, 0.05); }.modal-scrollbar {overflow-y: auto;scrollbar-width: thin;scrollbar-color: rgba(0, 0, 0, 0.1) transparent;flex-grow: 1; min-height: 0;}.dark .modal-scrollbar,[data-theme='dark'] .modal-scrollbar {scrollbar-color: rgba(255, 255, 255, 0.1) transparent;}.form-group {margin-bottom: 20px;}.form-label {display: block;margin-bottom: 6px;font-weight: 500;color: var(--text-primary);font-size: var(--font-size-sm);}.form-label .required {color: var(--color-error);}.form-input,.form-control,.form-select,input[type="text"],input[type="email"],input[type="tel"],input[type="password"],input[type="number"],input[type="date"],input[type="search"],select {width: 100%;padding: 0 14px;height: var(--control-height) !important;font-size: var(--font-size-sm);font-family: var(--font-family);border: 1px solid var(--border-color);border-radius: var(--radius-md);background-color: var(--bg-input);color: var(--text-primary);caret-color: var(--accent-color);box-shadow: var(--shadow-sm);transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);box-sizing: border-box;}.h-control {height: var(--control-height) !important;}.form-textarea {width: 100%;padding: 10px 14px;min-height: 100px;font-size: var(--font-size-sm);font-family: var(--font-family);border: 1px solid var(--border-color);border-radius: var(--radius-md);background-color: var(--bg-input);color: var(--text-primary);caret-color: var(--accent-color);box-shadow: var(--shadow-sm);box-sizing: border-box;resize: vertical;display: block;}.form-input:focus,.form-control:focus,input:focus,select:focus {outline: none;border-color: var(--accent-color);box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);}.form-input.is-invalid,.form-control.is-invalid {border-color: var(--color-error);}.form-input:disabled,.form-control:disabled,.form-textarea:disabled,.form-select:disabled {background: var(--nav-hover);cursor: not-allowed !important;opacity: 0.7;}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active {-webkit-box-shadow: 0 0 0 1000px var(--bg-input) inset !important;-webkit-text-fill-color: var(--text-primary) !important;transition: background-color 5000s ease-in-out 0s;}.form-select {appearance: none;padding-right: 2.5rem !important;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='3'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 0.75rem center;background-size: 0.8rem;cursor: pointer;}[data-theme="dark"] .form-input,[data-theme="dark"] .form-control,[data-theme="dark"] .form-textarea,[data-theme="dark"] .form-select,[data-theme="dark"] input,[data-theme="dark"] select {background-color: #1e293b !important;border-color: #334155 !important;color: #e2e8f0 !important;}.form-select:focus {outline: none !important;border-color: var(--accent-color) !important;box-shadow: 0 0 0 2px var(--accent-color) !important;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236366f1' stroke-width='3'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button {-webkit-appearance: none;margin: 0;}input[type="date"]::-webkit-calendar-picker-indicator {cursor: pointer;filter: invert(0.5);margin-right: -4px;}input[type="date"] {display: flex;align-items: center;padding-right: 12px;}.form-error {margin-top: 6px;font-size: 0.8125rem;color: var(--color-error);}.form-help {margin-top: 6px;font-size: 0.8125rem;color: var(--text-secondary);}.form-check {display: flex;align-items: center;gap: 8px;}.form-checkbox {width: 18px;height: 18px;cursor: pointer;}.form-check-label {margin-bottom: 0;cursor: pointer;}.form-radio-group {display: flex;flex-direction: column;gap: 8px;margin-top: 8px;}.form-radio {display: flex;align-items: center;gap: 8px;}.form-actions {display: flex;gap: 12px;margin-top: 24px;}.filter-label {display: block;font-size: var(--font-size-xs);font-weight: 700;text-transform: uppercase;letter-spacing: 0.05em;color: var(--text-secondary);margin-bottom: var(--space-2);}.search-input {padding-right: 2.5rem !important;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' viewBox='0 0 24 24' stroke='%2364748b'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 5h2v14H4V5zm4 0h1v14H8V5zm3 0h2v14h-2V5zm4 0h1v14h-1V5zm3 0h2v14h-2V5z'/%3E%3C/svg%3E");background-repeat: no-repeat;background-position: right 0.75rem center;background-size: 18px;}.filter-row {display: flex;flex-wrap: wrap;align-items: flex-end;gap: var(--space-4);}.result-options {display: grid;grid-template-columns: 1fr;gap: 12px;margin-top: 12px;}.result-option {position: relative;padding: 12px 12px 12px 48px;border: 2px solid var(--border-color);border-radius: var(--radius-lg);cursor: pointer;transition: all 0.2s ease;background: var(--card-bg);min-height: 48px;display: flex;align-items: center;}.result-option::before {content: '';position: absolute;left: 16px;top: 50%;transform: translateY(-50%);width: 20px;height: 20px;border: 2px solid var(--text-secondary);border-radius: var(--radius-sm);transition: all 0.2s ease;background: transparent;}.result-option input[type="radio"] {position: absolute;opacity: 0;}.result-option:has(input:checked) {border-color: var(--accent-color);background: rgba(59, 130, 246, 0.08);}.result-option:has(input:checked)::before {background-color: var(--accent-color);border-color: var(--accent-color);background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='4' d='M5 13l4 4L19 7'/%3E%3C/svg%3E");background-size: 14px;background-position: center;background-repeat: no-repeat;}.result-option label {width: 100%;cursor: pointer;margin: 0;font-size: 16px;font-weight: 500;}.result-option:has(input:checked) label {font-weight: 700;color: var(--accent-color);}.search-container {margin-bottom: 1.5rem;width: 100%;}.search-input-group {display: flex;gap: 8px;background: var(--card-bg);border: 2px solid var(--border-color);border-radius: var(--radius-lg);padding: 6px 6px 6px 16px;align-items: center;transition: border-color 0.2s, box-shadow 0.2s;}.search-input-group:focus-within {border-color: var(--accent-color);box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.1);}.search-input-group input {flex: 1;border: none;background: transparent;color: var(--text-primary);font-size: 16px;outline: none;padding: 8px 0;}.category-tile {position: relative;border: 2px solid rgba(255, 255, 255, 0.05);transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);}.category-tile:hover {border-color: rgba(255, 255, 255, 0.1);transform: translateY(-2px);}.category-tile:has(input:checked) {background: rgba(59, 130, 246, 0.15) !important;border-color: var(--accent-color) !important;box-shadow: 0 0 20px rgba(59, 130, 246, 0.1);}.quick-pill {cursor: pointer;transition: all 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);user-select: none;display: inline-flex;align-items: center;justify-content: center;min-height: 38px;padding: 6px 12px !important;font-size: 11px !important;font-weight: 800 !important;line-height: 1.2;letter-spacing: 0.03em;background: rgba(255, 255, 255, 0.08) !important;border: 1px solid rgba(255, 255, 255, 0.1) !important;color: #e2e8f0 !important;text-transform: uppercase;text-align: center;white-space: normal;max-width: 100%;border-radius: var(--radius-md);}.quick-pill:hover {background: rgba(255, 255, 255, 0.15) !important;border-color: rgba(255, 255, 255, 0.2) !important;transform: translateY(-1px);}.quick-pill:active {transform: scale(0.92);background: var(--accent-color) !important;border-color: var(--accent-color) !important;color: white !important;box-shadow: 0 0 15px rgba(59, 130, 246, 0.4);}#pills_type,#pills_capacity {gap: 8px 6px !important;display: flex;flex-wrap: wrap;width: 100%;}.ts-wrapper.form-input {padding: 0 !important;background: transparent !important;border: none !important;}.ts-control {background: var(--card-bg) !important;border: 1px solid var(--border-color) !important;border-radius: var(--radius-md) !important;padding: 12px 16px !important;color: var(--text-primary) !important;font-size: 1.125rem !important;font-weight: 700 !important;}.ts-dropdown {background: var(--bg-sidebar) !important;color: var(--text-primary) !important;border: 1px solid var(--border-color) !important;box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3) !important;}.ts-dropdown .active {background: var(--accent-color) !important;color: white !important;}@media (max-width: 768px) {.main {margin-left: 0;padding: 12px;padding-bottom: calc(40px + env(safe-area-inset-bottom));transition: none;}.sidebar {transform: translateX(-110%);width: 280px;border-radius: 0 24px 24px 0;background: rgba(30, 41, 59, 0.95);backdrop-filter: blur(20px);-webkit-backdrop-filter: blur(20px);box-shadow: 20px 0 50px rgba(0, 0, 0, 0.4);border-right: 1px solid rgba(255, 255, 255, 0.1);padding-bottom: env(safe-area-inset-bottom);}.sidebar.open {transform: translateX(0);}.sidebar-overlay {background: rgba(0, 0, 0, 0.6);backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);}.nav-link {margin: 6px 16px;padding: 14px 18px;border-radius: 12px;font-size: 16px;}.nav-section {margin: 24px 24px 12px;color: rgba(255, 255, 255, 0.4);}.mobile-only {display: block !important;}.header {padding: 12px 16px;background: rgba(30, 41, 59, 0.8);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);border-bottom: 1px solid rgba(255, 255, 255, 0.1);margin-bottom: 20px;display: flex;align-items: center;position: sticky;top: 0;z-index: 100;}.menu-toggle {background: rgba(255, 255, 255, 0.05);border: 1px solid rgba(255, 255, 255, 0.1);color: var(--text-primary);padding: 8px;border-radius: 10px;display: flex;align-items: center;justify-content: center;}}@media (min-width: 769px) {.mobile-only {display: none !important;}.desktop-only {display: block !important;}}@media (max-width: 768px) {.desktop-only {display: none !important;}}@media (max-width: 768px) {.btn {min-height: 40px;padding: 8px 16px;font-size: 14px;}.btn-sm {min-height: 36px;padding: 6px 14px;font-size: 13px;}.table td a,.table td button {min-width: 44px;min-height: 44px;display: inline-flex;align-items: center;justify-content: center;padding: 8px 12px;}}@media (max-width: 768px) {h1 {font-size: 1.25rem !important;line-height: 1.2;}h2 {font-size: 1.25rem;}h3 {font-size: 1.1rem;}body {font-size: 15px;line-height: 1.6;}.table {font-size: 14px;}}@media (max-width: 768px) {.form-input,.form-control,.form-select,.form-textarea {font-size: 15px;min-height: 40px;padding: 8px 12px;border-width: 1px;}.form-label {font-size: 15px;margin-bottom: 8px;font-weight: 600;}.form-group {margin-bottom: 16px;}.form-actions {position: sticky;bottom: 0;background: var(--bg-body);padding: 16px 0;margin-top: 32px;border-top: 1px solid var(--border-color);}.form-actions .btn {width: 100%;}}@media (max-width: 768px) {.header-actions {flex-direction: column;align-items: flex-start;gap: 12px;}.header-actions h1 {width: 100%;margin: 0;}.header-actions>.btn,.header-actions>a {width: 100%;justify-content: center;}}@media (max-width: 640px) {.header-actions .btn {width: 100%;justify-content: center;}}@media (max-width: 768px) {.grid-dashboard {grid-template-columns: 1fr;gap: 12px;}.grid-2,.grid-cols-2,.grid-cols-3,.grid-cols-4 {grid-template-columns: 1fr;gap: 12px;display: flex !important;flex-direction: column !important;}}@media (max-width: 768px) {.table-responsive.hide-mobile {display: none;}.mobile-cards {display: block;}.stat-card {padding: 20px;}.stat-value {font-size: 2.5rem;}.stat-title {font-size: 1rem;}.dashboard-stats {gap: 16px;}}@media (min-width: 769px) {.mobile-cards {display: none;}}@media (max-width: 576px) {.pagination {flex-direction: column;gap: 12px;text-align: center;}.pagination-info {width: 100%;}.pagination-links {width: 100%;justify-content: center;}.pagination-link {min-width: 40px;height: 40px;}.pagination-prev,.pagination-next {display: none;}}@media (max-width: 768px) {.badge {padding: 6px 12px;font-size: 0.8125rem;font-weight: 700;}}@media (max-width: 768px) {.alert {padding: 16px;font-size: 15px;margin: 0 -12px 20px;border-radius: 0;border-left: none;border-right: none;}}@media (max-width: 768px) {.confirm-modal {width: 95%;max-width: none;}.confirm-modal-footer {flex-direction: column-reverse;}.confirm-modal-footer .btn {width: 100%;}}@media (max-width: 768px) {.bottom-nav {display: flex !important;}}.nav-item {display: flex !important;flex-direction: column !important;align-items: center !important;justify-content: center !important;color: var(--text-secondary);font-size: 11px;font-weight: 500;gap: 2px;flex: 1;height: 100%;transition: all 0.2s ease;text-decoration: none;}.nav-item svg {width: 24px;height: 24px;}.nav-item.active {color: var(--accent-color);}.nav-item.active svg {transform: translateY(-2px);stroke-width: 2.5px;}.nav-item-primary {position: relative;z-index: 2;}.nav-item-icon-circle {width: 52px;height: 52px;background: linear-gradient(135deg, #fb923c 0%, #f97316 100%);border-radius: 50%;display: flex;align-items: center;justify-content: center;color: white;margin-top: -30px;box-shadow: 0 8px 20px rgba(249, 115, 22, 0.4);border: 4px solid var(--bg-body);transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);}.nav-item-primary:active .nav-item-icon-circle {transform: scale(0.9);}.nav-item-primary span {margin-top: 2px;}.fab {position: fixed;bottom: 24px;right: 20px;width: 56px;height: 56px;border-radius: 50%;background: linear-gradient(135deg, #fb923c 0%, #f97316 100%);box-shadow:0 6px 20px rgba(251, 146, 60, 0.4),0 2px 8px rgba(0, 0, 0, 0.2);display: none;align-items: center;justify-content: center;z-index: 90;color: white;border: none;cursor: pointer;transition: all 0.3s;}.fab svg {width: 24px;height: 24px;}.fab:active {transform: scale(0.95);}@media (max-width: 768px) {.fab {display: flex;}.main {padding-bottom: 90px;}}.mobile-nav-bar {display: flex;justify-content: space-between;align-items: center;height: 64px;padding: 0 4px;background: rgba(255, 255, 255, 0.96);backdrop-filter: blur(20px);-webkit-backdrop-filter: blur(20px);border: 1px solid rgba(0, 0, 0, 0.05);border-radius: 20px;box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.2);overflow: visible;}.dark .mobile-nav-bar {background: rgba(15, 23, 42, 0.96);border-color: rgba(255, 255, 255, 0.08);box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.5);}.btn-scan-main {width: 64px;height: 64px;background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);color: white;border-radius: 50%;border: 4px solid #f8fafc;display: flex;align-items: center;justify-content: center;box-shadow: 0 8px 20px -4px rgba(79, 70, 229, 0.4);transition: all 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);position: absolute;left: 50%;transform: translateX(-50%);top: -24px;z-index: 10;}.dark .btn-scan-main {border-color: #0f172a;}.btn-scan-main:active {transform: translateX(-50%) scale(0.9);}.modal-actions-container {margin-top: 16px;padding-top: 16px;padding-bottom: 24px;display: flex;align-items: center;justify-content: center;gap: 14px;border-top: 1px solid rgba(0, 0, 0, 0.05);}.dark .modal-actions-container {border-color: rgba(255, 255, 255, 0.05);}.btn-ui-base {padding: 11px 28px;border-radius: 12px;font-weight: 900;text-transform: uppercase;letter-spacing: 0.1em;font-size: 11px;transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);display: flex;align-items: center;justify-content: center;gap: 8px;border: none;cursor: pointer;}.btn-ui-secondary {background: #f1f5f9;color: #64748b;}.dark .btn-ui-secondary {background: rgba(255, 255, 255, 0.05);color: #94a3b8;}.btn-ui-success {background: #10b981;color: white;box-shadow: 0 4px 12px rgba(16, 185, 129, 0.2);}.btn-ui-success:disabled {background: #e2e8f0;color: #94a3b8;box-shadow: none;opacity: 0.7;cursor: not-allowed;}.dark .btn-ui-success:disabled {background: #1e293b;color: #475569;}.btn-ui-base:active {transform: scale(0.96);}.verdict-selector {display: grid;grid-template-cols: repeat(3, 1fr);gap: 8px;padding-top: 8px;}.btn-verdict {display: flex;flex-direction: column;align-items: center;justify-content: center;padding: 12px 8px;border-radius: 16px;border: 2px solid rgba(0, 0, 0, 0.05);background: rgba(0, 0, 0, 0.02);transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);}.dark .btn-verdict {background: rgba(255, 255, 255, 0.03);border-color: rgba(255, 255, 255, 0.05);}.btn-verdict .dot-indicator {height: 24px;width: 24px;border-radius: 50%;background: white;border: 1px solid rgba(0, 0, 0, 0.1);display: flex;align-items: center;justify-content: center;margin-bottom: 6px;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);}.dark .btn-verdict .dot-indicator {background: #1e293b;border-color: rgba(255, 255, 255, 0.1);}.btn-verdict .dot-indicator .inner-dot {height: 12px;width: 12px;border-radius: 50%;opacity: 0;transition: opacity 0.2s;}.btn-verdict .label-text {font-size: 10px;font-weight: 900;text-transform: uppercase;letter-spacing: 0.05em;color: #64748b;text-align: center;}.dark .btn-verdict .label-text {color: #94a3b8;}.btn-verdict.active-ok {border-color: #10b981;background: rgba(16, 185, 129, 0.08);}.btn-verdict.active-ok .dot-indicator {border-color: #10b981;}.btn-verdict.active-ok .inner-dot {background: #10b981;opacity: 1;}.btn-verdict.active-ok .label-text {color: #059669;}.dark .btn-verdict.active-ok .label-text {color: #34d399;}.btn-verdict.active-nok {border-color: #ef4444;background: rgba(239, 68, 68, 0.08);}.btn-verdict.active-nok .dot-indicator {border-color: #ef4444;}.btn-verdict.active-nok .inner-dot {background: #ef4444;opacity: 1;}.btn-verdict.active-nok .label-text {color: #dc2626;}.dark .btn-verdict.active-nok .label-text {color: #f87171;}.btn-verdict.active-skipped {border-color: #64748b;background: rgba(100, 116, 139, 0.08);}.btn-verdict.active-skipped .dot-indicator {border-color: #64748b;}.btn-verdict.active-skipped .inner-dot {background: #64748b;opacity: 1;}.btn-verdict.active-skipped .label-text {color: #475569;}.dark .btn-verdict.active-skipped .label-text {color: #94a3b8;}.calendar-container {height: calc(100dvh - 13rem);display: flex;flex-direction: column;}@media (min-width: 768px) {.calendar-container {height: calc(100vh - 12rem);}}.calendar-day {position: relative;padding: 0.25rem;transition: all 0.2s ease;cursor: pointer;overflow: hidden;display: flex;flex-direction: column;}@media (min-width: 768px) {.calendar-day {padding: 0.5rem;}}.calendar-day:hover {background-color: rgba(99, 102, 241, 0.05);}.calendar-day.not-current-month {opacity: 0.3;pointer-events: none;}.calendar-day.today {background-color: rgba(99, 102, 241, 0.03);}.calendar-day.today::before {content: '';position: absolute;top: 0;left: 0;right: 0;height: 3px;background: var(--primary-color, #6366f1);}.day-number {font-size: 0.875rem;font-weight: 800;color: #94a3b8;margin-bottom: 0.5rem;display: block;}.today .day-number {color: var(--primary-color, #6366f1);}.calendar-card {flex: 1;display: flex;flex-direction: column;min-height: 0;}#calendarGrid {flex: 1;display: grid;grid-template-columns: repeat(7, 1fr);grid-template-rows: repeat(6, 1fr);min-height: 0;}.events-container {flex: 1;display: flex;flex-direction: column;gap: 4px;overflow-y: auto;}.calendar-event-pill {font-size: 10px;font-weight: 700;padding: 2px 6px;border-radius: 6px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;background: rgba(99, 102, 241, 0.1);color: #6366f1;border: 1px solid rgba(99, 102, 241, 0.1);cursor: pointer;}.event-card {cursor: pointer;}.event-card.status-to_schedule {background: var(--status-toschedule-bg) !important;color: var(--status-toschedule-text) !important;border: 1px dashed var(--status-toschedule-border) !important;border-left: 4px dashed var(--status-toschedule-accent) !important;}.event-card.status-planned {background: var(--status-planned-bg) !important;color: var(--status-planned-text) !important;border: 1px solid var(--status-planned-border) !important;border-left: 4px solid var(--status-planned-accent) !important;}.event-card.status-pending_review {background: var(--status-pending-bg) !important;color: var(--status-pending-text) !important;border: 1px solid var(--status-pending-border) !important;border-left: 4px solid var(--status-pending-accent) !important;}.event-card.status-completed {background: var(--status-completed-bg) !important;color: var(--status-completed-text) !important;border: 1px solid var(--status-completed-border) !important;border-left: 4px solid var(--status-completed-accent) !important;}.event-card.status-cancelled {background: var(--status-cancelled-bg) !important;color: var(--status-cancelled-text) !important;border: 1px solid var(--status-cancelled-border) !important;border-left: 4px solid var(--status-cancelled-accent) !important;}@keyframes conflict-pulse {0% {box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4);}70% {box-shadow: 0 0 0 6px rgba(239, 68, 68, 0);}100% {box-shadow: 0 0 0 0 rgba(239, 68, 68, 0);}}@media (max-width: 768px) {.calendar-event-pill {width: 6px;height: 6px;padding: 0;border-radius: 50%;display: inline-block;margin-right: 2px;}.events-container {flex-direction: row;flex-wrap: wrap;justify-content: center;}}#eventDetails.active {opacity: 1;}#eventDetails.active>div {transform: translateY(0) scale(1);}[data-theme="dark"] .calendar-day:hover {background-color: rgba(255, 255, 255, 0.02);}@media (max-width: 768px) {.events-container {flex-direction: row;flex-wrap: wrap;justify-content: center;}}.btn-calendar-nav {display: flex;align-items: center;justify-content: center;padding: 0.5rem;border-radius: 0.75rem;border: 1px solid rgba(229, 231, 235, 1);background-color: #ffffff;box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);transition: all 0.2s;cursor: pointer;}[data-theme="dark"] .btn-calendar-nav {background-color: rgba(255, 255, 255, 0.05);border-color: rgba(255, 255, 255, 0.1);}.btn-calendar-nav:hover {background-color: #f9f9f9;border-color: #c7d2fe;box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);}[data-theme="dark"] .btn-calendar-nav:hover {background-color: rgba(255, 255, 255, 0.1);border-color: rgba(99, 102, 241, 0.3);}.btn-calendar-nav:active {transform: scale(0.95);}.btn-calendar-nav svg {height: 1.25rem;width: 1.25rem;color: #6b7280;transition: color 0.2s;}[data-theme="dark"] .btn-calendar-nav svg {color: #9ca3af;}.btn-calendar-nav:hover svg {color: #4f46e5;}[data-theme="dark"] .btn-calendar-nav:hover svg {color: #818cf8;}.calendar-legend {display: flex;align-items: center;gap: 0.75rem;font-size: 0.75rem;font-weight: 700;padding: 0.375rem 0.75rem;border-radius: 0.5rem;border: 1px solid rgba(243, 244, 246, 1);background-color: #f9fafb;}.dark .calendar-legend {background-color: rgba(255, 255, 255, 0.05);border-color: rgba(255, 255, 255, 0.05);}.styled-scrollbar::-webkit-scrollbar {width: 5px;}.styled-scrollbar::-webkit-scrollbar-track {background: transparent !important;}.styled-scrollbar::-webkit-scrollbar-thumb {background: rgba(99, 102, 241, 0.25);border-radius: 10px;border: 1px solid transparent;background-clip: padding-box;}.styled-scrollbar::-webkit-scrollbar-thumb:hover {background: rgba(99, 102, 241, 0.5);}.styled-scrollbar {scrollbar-width: thin;scrollbar-color: rgba(99, 102, 241, 0.3) transparent;}.events-container::-webkit-scrollbar-thumb,.events-list-container::-webkit-scrollbar-thumb {background: rgba(99, 102, 241, 0.25);}.events-container::-webkit-scrollbar,.events-list-container::-webkit-scrollbar {width: 4px;}.day-cell {display: flex;flex-direction: column;height: 100%;min-height: 0;overflow: hidden;}.day-cell .events-list-container {flex: 1;width: 100%;min-height: 0;margin-top: 1.25rem; }.event-card.past-event, tr.past-event {opacity: 0.45;filter: grayscale(0.4);transition: all 0.3s ease;}.event-card.past-event:hover,tr.past-event:hover {opacity: 1;filter: grayscale(0);transform: translateY(-1px);z-index: 20;}tr.past-event:hover {transform: none; }