:root{--csako-blue:#003d7a;--csako-blue-light:#0052a3;--csako-blue-glow:#06c;--csako-blue-dark:#002b57;--color-success:#10b981;--color-success-light:#34d399;--color-success-dark:#059669;--color-warning:#f59e0b;--color-warning-light:#fcd34d;--color-warning-dark:#d97706;--color-error:#ef4444;--color-error-light:#f87171;--color-error-dark:#dc2626;--color-info:#3b82f6;--color-info-light:#60a5fa;--color-info-dark:#2563eb;--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;--bg-primary:#fff;--bg-secondary:var(--gray-50);--bg-card:hsla(0,0%,100%,.9);--text-primary:var(--gray-900);--text-secondary:var(--gray-500);--border-color:var(--gray-200);--space-xs:0.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--radius-sm:8px;--radius-md:10px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 rgba(0,61,122,.05);--shadow-sm:0 4px 6px -1px rgba(0,61,122,.08),0 2px 4px -1px rgba(0,61,122,.04);--shadow-md:0 10px 15px -3px rgba(0,61,122,.1),0 4px 6px -2px rgba(0,61,122,.05);--shadow-lg:0 20px 25px -5px rgba(0,61,122,.15),0 10px 10px -5px rgba(0,61,122,.04);--shadow-xl:0 25px 50px -12px rgba(0,61,122,.25);--shadow-2xl:0 25px 50px -12px rgba(0,61,122,.35);--shadow-success:0 10px 20px -5px rgba(16,185,129,.3);--shadow-warning:0 10px 20px -5px rgba(245,158,11,.3);--shadow-error:0 10px 20px -5px rgba(239,68,68,.3);--transition-fast:200ms ease;--transition-base:300ms ease;--transition-slow:600ms ease-out;--ease-bounce:cubic-bezier(0.34,1.56,0.64,1);--ease-smooth:cubic-bezier(0.25,0.1,0.25,1);--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue","Arial",sans-serif;--font-mono:"SF Mono","Monaco","Inconsolata","Fira Code",monospace;--text-xs:0.75rem;--text-sm:0.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-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--container-max:1200px;--nav-height:72px;--z-base:0;--z-dropdown:10;--z-sticky:20;--z-overlay:30;--z-modal:40;--z-notification:50;--z-tooltip:60;--btn-height:48px;--btn-padding-x:2rem;--btn-font-size:var(--text-base);--btn-font-weight:var(--font-medium);--card-padding:2rem;--card-radius:var(--radius-lg);--card-shadow:var(--shadow-sm);--card-border:1px solid var(--border-color);--input-height:48px;--input-padding-x:1rem;--input-border-width:2px;--input-radius:var(--radius-sm);--glass-bg:hsla(0,0%,100%,.9);--glass-blur:blur(10px);--glass-saturate:saturate(180%);--glass-border:1px solid hsla(0,0%,100%,.2);--status-running:var(--color-success);--status-waiting:var(--color-warning);--status-stopped:var(--color-error);--status-setup:var(--csako-blue)}[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-card:rgba(30,41,59,.8);--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--border-color:hsla(0,0%,100%,.1);--shadow-sm:0 4px 6px -1px rgba(0,0,0,.3);--shadow-md:0 10px 15px -3px rgba(0,0,0,.4);--shadow-lg:0 20px 25px -5px rgba(0,0,0,.5);--glass-bg:rgba(30,41,59,.7);--glass-border:1px solid hsla(0,0%,100%,.1)}.glass{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur) var(--glass-saturate);backdrop-filter:var(--glass-blur) var(--glass-saturate);border:var(--glass-border)}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot--running{background:var(--status-running);animation:pulse 3s ease-out infinite}.status-dot--waiting{background:var(--status-waiting);animation:pulse 3s ease-out infinite}.status-dot--stopped{background:var(--status-stopped)}.status-dot--setup{background:var(--status-setup);animation:pulse 3s ease-out infinite}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes shimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(200%) translateY(200%) rotate(45deg)}}@media (max-width:1024px){:root{--container-max:100%;--card-padding:1.5rem}}@media (max-width:640px){:root{--space-sm:0.75rem;--space-md:1rem;--space-lg:1.5rem;--card-padding:1rem;--btn-padding-x:1.5rem}}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0ms;--transition-base:0ms;--transition-slow:0ms}*{animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--color-brand-primary:var(--csako-blue);--color-brand-primary-light:var(--csako-blue-light);--color-brand-primary-dark:var(--csako-blue-dark);--color-brand-primary-contrast:#fff;--color-brand-tint-5:rgba(0,61,122,.05);--color-brand-tint-10:rgba(0,61,122,.1);--color-brand-tint-20:rgba(0,61,122,.2);--color-brand-tint-30:rgba(0,61,122,.3);--color-status-planned:var(--gray-500);--color-status-in-progress:var(--color-success);--color-status-completed:var(--color-info);--color-status-blocked:var(--color-error);--color-status-cancelled:var(--gray-400);--color-success-bg:rgba(16,185,129,.1);--color-warning-bg:rgba(245,158,11,.1);--color-error-bg:rgba(239,68,68,.1);--color-info-bg:rgba(59,130,246,.1);--color-hover:rgba(0,61,122,.08);--color-active:rgba(0,61,122,.12);--color-selected:rgba(0,61,122,.16);--color-disabled:rgba(0,0,0,.38);--color-focus-ring:var(--color-brand-primary);--color-focus-shadow:rgba(0,61,122,.2);--font-family-base:var(--font-sans);--font-family-heading:var(--font-sans);--font-family-code:var(--font-mono);--timeline-title-size:var(--text-xl);--timeline-label-size:var(--text-sm);--timeline-tooltip-size:var(--text-sm);--timeline-metric-size:var(--text-xs);--timeline-title-weight:var(--font-semibold);--timeline-label-weight:var(--font-medium);--timeline-body-weight:var(--font-normal);--timeline-heading-line-height:var(--leading-tight);--timeline-body-line-height:var(--leading-normal);--timeline-padding-x:var(--space-sm);--timeline-padding-y:12px;--timeline-gap:8px;--operation-padding-x:12px;--operation-padding-y:8px;--operation-margin-x:10px;--operation-margin-y:5px;--resource-padding:12px;--resource-gap:12px;--timeline-height-default:600px;--timeline-header-height:64px;--timeline-operation-min-height:40px;--timeline-resource-min-height:60px;--timeline-resource-panel-width:200px;--timeline-min-width:768px;--touch-target-min:48px;--touch-target-comfortable:56px;--timeline-icon-size:20px;--timeline-status-indicator-size:8px;--border-width-0:0;--border-width-1:1px;--border-width-2:2px;--border-width-3:3px;--border-width-4:4px;--border-width-priority-low:2px;--border-width-priority-medium:3px;--border-width-priority-high:3px;--border-width-priority-critical:3px;--timeline-container-radius:var(--radius-lg);--timeline-operation-radius:var(--radius-sm);--timeline-tooltip-radius:var(--radius-sm);--timeline-container-shadow:var(--shadow-sm);--timeline-container-shadow-hover:var(--shadow-xl);--timeline-drag-preview-shadow:0 20px 25px -5px rgba(0,61,122,.15);--timeline-tooltip-shadow:0 10px 25px -5px rgba(0,0,0,.3);--duration-instant:0ms;--duration-fast:150ms;--duration-base:200ms;--duration-moderate:300ms;--duration-slow:500ms;--duration-slower:1000ms;--timeline-transition-duration:var(--duration-base);--timeline-animation-pulse:2000ms;--ease-linear:linear;--ease-in:cubic-bezier(0.4,0,1,1);--ease-out:cubic-bezier(0,0,0.2,1);--ease-in-out:cubic-bezier(0.4,0,0.2,1);--ease-spring:cubic-bezier(0.175,0.885,0.32,1.275);--timeline-transition-easing:var(--ease-out);--z-index-timeline-grid:1;--z-index-timeline-items:10;--z-index-timeline-current-time:15;--z-index-timeline-snap-guides:20;--z-index-timeline-drop-zones:30;--z-index-timeline-drag-preview:9999;--timeline-mobile:768px;--timeline-tablet:1024px;--timeline-desktop:1280px}.dark,[data-theme=dark]{--color-brand-primary:#06c;--color-brand-primary-light:#3385ff;--color-brand-primary-dark:#0052a3;--color-brand-primary-contrast:#fff;--color-brand-tint-5:rgba(0,102,204,.1);--color-brand-tint-10:rgba(0,102,204,.15);--color-brand-tint-20:rgba(0,102,204,.25);--color-brand-tint-30:rgba(0,102,204,.35);--color-status-planned:#94a3b8;--color-status-in-progress:#34d399;--color-status-completed:#60a5fa;--color-status-blocked:#f87171;--color-status-cancelled:#64748b;--color-success-bg:rgba(16,185,129,.15);--color-warning-bg:rgba(245,158,11,.15);--color-error-bg:rgba(239,68,68,.15);--color-info-bg:rgba(59,130,246,.15);--color-hover:hsla(0,0%,100%,.1);--color-active:hsla(0,0%,100%,.15);--color-selected:rgba(0,102,204,.25);--color-disabled:hsla(0,0%,100%,.3);--color-focus-ring:#3385ff;--color-focus-shadow:rgba(51,133,255,.25);--timeline-container-shadow:0 4px 6px -1px rgba(0,0,0,.3),0 2px 4px -1px rgba(0,0,0,.2);--timeline-container-shadow-hover:0 20px 25px -5px rgba(0,0,0,.4),0 10px 10px -5px rgba(0,0,0,.3);--timeline-tooltip-shadow:0 10px 25px -5px rgba(0,0,0,.6);--timeline-drag-preview-shadow:0 20px 25px -5px rgba(0,0,0,.4);--timeline-glass-bg:rgba(30,41,59,.7);--timeline-glass-border:1px solid hsla(0,0%,100%,.1);--timeline-title-color:#f1f5f9;--timeline-label-color:#e2e8f0;--timeline-metric-color:#cbd5e1}@media (prefers-reduced-motion:reduce){:root{--timeline-transition-duration:0.01ms;--timeline-animation-pulse:0.01ms;--duration-instant:0.01ms;--duration-fast:0.01ms;--duration-base:0.01ms;--duration-moderate:0.01ms;--duration-slow:0.01ms;--duration-slower:0.01ms}}.timeline-container{background:var(--bg-primary);border-radius:var(--timeline-container-radius);box-shadow:var(--timeline-container-shadow);transition:box-shadow var(--timeline-transition-duration) var(--timeline-transition-easing)}.timeline-container:hover{box-shadow:var(--timeline-container-shadow-hover)}.dark .timeline-container,[data-theme=dark] .timeline-container{background:var(--bg-secondary);border:1px solid var(--border-color)}.timeline-operation{padding:var(--operation-padding-y) var(--operation-padding-x);border-radius:var(--timeline-operation-radius);min-height:var(--timeline-operation-min-height);margin:var(--operation-margin-y) var(--operation-margin-x);transition:all var(--timeline-transition-duration) var(--timeline-transition-easing)}.timeline-operation--planned{background-color:var(--color-status-planned);color:#fff}.timeline-operation--in-progress{background-color:var(--color-status-in-progress);color:#fff}.timeline-operation--completed{background-color:var(--color-status-completed);color:#fff}.timeline-operation--blocked{background-color:var(--color-status-blocked);color:#fff}.timeline-operation--cancelled{background-color:var(--color-status-cancelled);color:#fff}.timeline-operation--priority-low{border-left:var(--border-width-priority-low) solid}.timeline-operation--priority-medium{border-left:var(--border-width-priority-medium) solid}.timeline-operation--priority-high{border-left:var(--border-width-priority-high) solid}.timeline-operation--priority-critical{border-left:var(--border-width-priority-critical) solid;animation:pulse var(--timeline-animation-pulse) infinite}.timeline-operation:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px;box-shadow:0 0 0 4px var(--color-focus-shadow)}.timeline-operation:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.timeline-operation--dragging{opacity:.5;cursor:grabbing}.timeline-operation--drag-preview{box-shadow:var(--timeline-drag-preview-shadow);z-index:var(--z-index-timeline-drag-preview)}.timeline-resource{padding:var(--resource-padding);min-height:var(--timeline-resource-min-height);background:var(--bg-secondary);border-right:1px solid var(--border-color)}.timeline-grid{background:var(--bg-primary);position:relative;z-index:var(--z-index-timeline-grid)}.timeline-current-time{position:absolute;width:2px;background:var(--color-error);z-index:var(--z-index-timeline-current-time);pointer-events:none}.timeline-snap-guide{position:absolute;width:1px;background:var(--color-brand-primary);opacity:.3;z-index:var(--z-index-timeline-snap-guides);pointer-events:none;transition:opacity var(--duration-fast) var(--ease-out)}.timeline-snap-guide--active{opacity:1;width:2px}.timeline-drop-zone{position:absolute;background:var(--color-brand-tint-10);border:2px dashed var(--color-brand-primary);border-radius:var(--timeline-operation-radius);z-index:var(--z-index-timeline-drop-zones);pointer-events:none;opacity:0;transition:opacity var(--duration-fast) var(--ease-out)}.timeline-drop-zone--active{opacity:1}.timeline-tooltip{background:var(--gray-900);color:#fff;padding:var(--space-xs) var(--space-sm);border-radius:var(--timeline-tooltip-radius);font-size:var(--timeline-tooltip-size);box-shadow:var(--timeline-tooltip-shadow);z-index:var(--z-tooltip)}.timeline-status-indicator{width:var(--timeline-status-indicator-size);height:var(--timeline-status-indicator-size);border-radius:50%;display:inline-block}.dark .glass,[data-theme=dark] .glass{background:var(--timeline-glass-bg);border:var(--timeline-glass-border)}.dark .timeline-wrapper,[data-theme=dark] .timeline-wrapper{color:var(--text-primary)}.dark .text-secondary,[data-theme=dark] .text-secondary{color:var(--text-secondary)}.dark .timeline-operation,[data-theme=dark] .timeline-operation{box-shadow:0 1px 3px 0 rgba(0,0,0,.3)}.dark .timeline-resource,[data-theme=dark] .timeline-resource{background:var(--bg-secondary);border-color:var(--border-color)}.dark .timeline-grid,[data-theme=dark] .timeline-grid{background:var(--bg-primary)}.dark .status-dot--running,[data-theme=dark] .status-dot--running{background-color:var(--color-status-in-progress)}.dark .status-dot--setup,[data-theme=dark] .status-dot--setup{background-color:var(--color-brand-primary)}@media (max-width:768px){:root{--timeline-resource-panel-width:150px;--timeline-padding-x:8px;--timeline-padding-y:8px;--operation-padding-x:8px;--operation-padding-y:6px}}.worker-button{min-width:100px;min-height:100px;font-size:1.5rem;font-weight:700;border-radius:12px;transition:all .2s ease;box-shadow:0 4px 6px rgba(0,0,0,.1)}.worker-button:active{transform:scale(.95);box-shadow:0 2px 4px rgba(0,0,0,.1)}.worker-text-primary{color:#1f2937;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.1)}.worker-text-secondary{color:#4b5563;font-weight:600}.worker-status-active{background-color:#10b981;color:#fff}.worker-status-paused{background-color:#f59e0b;color:#fff}.worker-status-pending{background-color:#6b7280;color:#fff}.worker-status-urgent{background-color:#ef4444;color:#fff;animation:pulse 2s infinite}.worker-input{min-height:60px;font-size:1.25rem;padding:1rem;border:3px solid #d1d5db;border-radius:8px}.worker-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.pin-digit{width:3rem;height:3rem;border:3px solid #d1d5db;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#fff}.pin-digit.filled{background:#3b82f6;border-color:#3b82f6}.pin-digit.error{background:#fca5a5;border-color:#ef4444;animation:shake .5s ease-in-out}.number-pad-button{width:6rem;height:6rem;font-size:2rem;font-weight:700;background:#f3f4f6;border:2px solid #d1d5db;border-radius:12px;transition:all .2s ease}.number-pad-button:hover{background:#e5e7eb;border-color:#9ca3af}.number-pad-button:active{transform:scale(.95);background:#d1d5db}.worker-progress-bar{height:1.5rem;background:#e5e7eb;border-radius:9999px;overflow:hidden}.worker-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .5s ease}.worker-timer{font-family:Courier New,monospace;font-size:4rem;font-weight:700;color:#1f2937;text-shadow:2px 2px 4px rgba(0,0,0,.1)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@media (max-width:768px){.worker-button{min-width:80px;min-height:80px;font-size:1.25rem}.number-pad-button{width:5rem;height:5rem;font-size:1.75rem}.worker-timer{font-size:3rem}}@media print{.number-pad-button,.worker-button{background:#fff!important;border:2px solid #000!important;color:#000!important}}.vis-timeline .vis-item.calendar-maintenance{background:linear-gradient(135deg,rgba(239,68,68,.2),rgba(239,68,68,.1));border:2px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error-dark);font-weight:var(--font-medium);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:var(--shadow-sm),inset 0 1px 0 hsla(0,0%,100%,.1)}.vis-timeline .vis-item.calendar-maintenance:hover{background:linear-gradient(135deg,rgba(239,68,68,.3),rgba(239,68,68,.2));border-color:var(--color-error-dark);transform:translateY(-2px);box-shadow:var(--shadow-md),var(--shadow-error);transition:all var(--transition-fast)}.vis-timeline .vis-item.calendar-holiday{background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(59,130,246,.1));border:2px solid var(--color-info);border-radius:var(--radius-md);color:var(--color-info-dark);font-weight:var(--font-medium);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:var(--shadow-sm),inset 0 1px 0 hsla(0,0%,100%,.1)}.vis-timeline .vis-item.calendar-holiday:hover{background:linear-gradient(135deg,rgba(59,130,246,.3),rgba(59,130,246,.2));border-color:var(--color-info-dark);transform:translateY(-2px);box-shadow:var(--shadow-md),0 10px 20px -5px rgba(59,130,246,.3);transition:all var(--transition-fast)}.vis-timeline .vis-item.calendar-non-working{background:linear-gradient(135deg,hsla(220,9%,46%,.14),hsla(220,9%,46%,.08));border:none;border-radius:var(--radius-md);pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.vis-timeline .vis-item.calendar-absence{background:linear-gradient(135deg,rgba(156,163,175,.22),rgba(156,163,175,.12));border:2px solid var(--gray-400);border-radius:var(--radius-md);color:var(--text-secondary);font-weight:var(--font-medium);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:var(--shadow-sm),inset 0 1px 0 hsla(0,0%,100%,.1)}.vis-timeline .vis-item.calendar-absence:hover{background:linear-gradient(135deg,rgba(156,163,175,.3),rgba(156,163,175,.18));border-color:var(--gray-500);transform:translateY(-2px);box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.vis-timeline .vis-item.calendar-break{background:linear-gradient(135deg,rgba(16,185,129,.18),rgba(16,185,129,.1));border:2px dashed var(--color-success);border-radius:var(--radius-md);color:var(--color-success-dark);font-weight:var(--font-medium);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:var(--shadow-sm),inset 0 1px 0 hsla(0,0%,100%,.1)}.vis-timeline .vis-item.calendar-break:hover{background:linear-gradient(135deg,rgba(16,185,129,.26),rgba(16,185,129,.16));border-color:var(--color-success-dark);transform:translateY(-2px);box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.vis-timeline .vis-item.calendar-custom{background:linear-gradient(135deg,rgba(147,51,234,.2),rgba(147,51,234,.1));border:2px solid #9333ea;border-radius:var(--radius-md);color:#7c3aed;font-weight:var(--font-medium);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:var(--shadow-sm),inset 0 1px 0 hsla(0,0%,100%,.1)}.vis-timeline .vis-item.calendar-custom:hover{background:linear-gradient(135deg,rgba(147,51,234,.3),rgba(147,51,234,.2));border-color:#7c3aed;transform:translateY(-2px);box-shadow:var(--shadow-md),0 10px 20px -5px rgba(147,51,234,.3);transition:all var(--transition-fast)}.vis-timeline .vis-item.operation-conflict{background:linear-gradient(135deg,rgba(245,158,11,.9),rgba(245,158,11,.7));border:3px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-warning-dark);font-weight:var(--font-semibold);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:conflictPulse 2s ease-in-out infinite;box-shadow:var(--shadow-md),var(--shadow-warning),inset 0 1px 0 hsla(0,0%,100%,.2)}.vis-timeline .vis-item.gantt-segment{background:linear-gradient(135deg,rgba(59,130,246,.25),rgba(59,130,246,.12));border:2px solid rgba(59,130,246,.45);border-radius:var(--radius-md);color:var(--text-primary);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:var(--shadow-sm),inset 0 1px 0 hsla(0,0%,100%,.12)}.vis-timeline .vis-item.gantt-segment:hover{border-color:rgba(59,130,246,.7);transform:translateY(-2px);transition:all var(--transition-fast);box-shadow:var(--shadow-md),0 10px 20px -5px rgba(59,130,246,.25)}.vis-timeline .vis-item.gantt-segment.gantt-segment-conflict{background:linear-gradient(135deg,rgba(245,158,11,.9),rgba(245,158,11,.7));border:3px solid var(--color-warning);color:var(--color-warning-dark);animation:conflictPulse 2s ease-in-out infinite;box-shadow:var(--shadow-md),var(--shadow-warning),inset 0 1px 0 hsla(0,0%,100%,.2)}.vis-timeline .vis-item.gantt-segment.gantt-segment-conflict:before{content:"⚠️";position:absolute;top:4px;right:4px;font-size:12px;z-index:var(--z-sticky)}.vis-timeline .vis-item.operation-conflict:hover{background:linear-gradient(135deg,#f59e0b,rgba(245,158,11,.8));border-color:var(--color-warning-dark);transform:translateY(-3px);box-shadow:var(--shadow-lg),var(--shadow-warning),0 15px 30px -5px rgba(245,158,11,.4)}.vis-timeline .vis-item.operation-conflict--minor{background:linear-gradient(135deg,rgba(245,158,11,.6),rgba(245,158,11,.4));border:2px solid var(--color-warning);animation:conflictPulseMinor 3s ease-in-out infinite}.vis-timeline .vis-item.operation-conflict:before{content:"⚠️";position:absolute;top:4px;right:4px;font-size:12px;z-index:var(--z-sticky)}.vis-timeline .vis-item.calendar-absence:before,.vis-timeline .vis-item.calendar-break:before,.vis-timeline .vis-item.calendar-custom:before,.vis-timeline .vis-item.calendar-holiday:before,.vis-timeline .vis-item.calendar-maintenance:before{content:"📅";position:absolute;top:4px;right:4px;font-size:12px;z-index:var(--z-sticky)}@keyframes conflictPulse{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes conflictPulseMinor{0%{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.01)}to{opacity:1;transform:scale(1)}}@keyframes calendarFadeIn{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.calendar-event-container{position:relative;border-radius:var(--radius-lg);overflow:hidden;animation:calendarFadeIn .5s ease-out}.calendar-event-content{padding:var(--space-xs) var(--space-sm);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-tight);text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.1)}.calendar-event-tooltip{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:var(--space-xs);padding:var(--space-sm) var(--space-md);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--text-xs);white-space:nowrap;z-index:var(--z-tooltip);&:before{content:"";position:absolute;top:-5px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid var(--border-color)}}@media (max-width:1024px){.vis-timeline .vis-item.calendar-custom,.vis-timeline .vis-item.calendar-holiday,.vis-timeline .vis-item.calendar-maintenance{border-width:1px;font-size:var(--text-xs)}.vis-timeline .vis-item.operation-conflict{border-width:2px}.calendar-event-content{padding:var(--space-xs);font-size:var(--text-xs)}}@media (max-width:640px){.vis-timeline .vis-item.calendar-custom,.vis-timeline .vis-item.calendar-holiday,.vis-timeline .vis-item.calendar-maintenance,.vis-timeline .vis-item.operation-conflict{border-radius:var(--radius-sm);font-size:var(--text-xs)}.vis-timeline .vis-item.calendar-custom:before,.vis-timeline .vis-item.calendar-holiday:before,.vis-timeline .vis-item.calendar-maintenance:before,.vis-timeline .vis-item.operation-conflict:before{font-size:10px;top:2px;right:2px}.calendar-event-content{padding:2px var(--space-xs);font-size:10px}.calendar-event-tooltip{font-size:10px;padding:var(--space-xs) var(--space-sm)}}.vis-timeline .vis-item.calendar-custom:focus,.vis-timeline .vis-item.calendar-holiday:focus,.vis-timeline .vis-item.calendar-maintenance:focus,.vis-timeline .vis-item.operation-conflict:focus{outline:3px solid var(--csako-blue);outline-offset:2px;z-index:var(--z-sticky)}@media (prefers-contrast:high){.vis-timeline .vis-item.calendar-maintenance{background:#ffebee;border:3px solid #c62828;color:#b71c1c}.vis-timeline .vis-item.calendar-holiday{background:#e3f2fd;border:3px solid #1565c0;color:#0d47a1}.vis-timeline .vis-item.operation-conflict{background:#fff3e0;border:4px solid #ef6c00;color:#e65100}}@media (prefers-reduced-motion:reduce){.calendar-event-container,.vis-timeline .vis-item.operation-conflict,.vis-timeline .vis-item.operation-conflict--minor{animation:none}.vis-timeline .vis-item.calendar-custom:hover,.vis-timeline .vis-item.calendar-holiday:hover,.vis-timeline .vis-item.calendar-maintenance:hover,.vis-timeline .vis-item.operation-conflict:hover{transform:none;transition:none}}[data-theme=dark]{.vis-timeline .vis-item.calendar-maintenance{background:linear-gradient(135deg,rgba(239,68,68,.3),rgba(239,68,68,.2));border-color:var(--color-error-light);color:var(--color-error-light)}.vis-timeline .vis-item.calendar-holiday{background:linear-gradient(135deg,rgba(59,130,246,.3),rgba(59,130,246,.2));border-color:var(--color-info-light);color:var(--color-info-light)}.vis-timeline .vis-item.calendar-custom{background:linear-gradient(135deg,rgba(147,51,234,.3),rgba(147,51,234,.2));border-color:#a855f7;color:#a855f7}.vis-timeline .vis-item.operation-conflict{background:linear-gradient(135deg,rgba(245,158,11,.8),rgba(245,158,11,.6));border-color:var(--color-warning-light);color:var(--color-warning-light)}}@media (pointer:coarse){.vis-timeline .vis-item.calendar-custom,.vis-timeline .vis-item.calendar-holiday,.vis-timeline .vis-item.calendar-maintenance,.vis-timeline .vis-item.operation-conflict{min-height:44px;min-width:44px}}.conflict-severity--low{border-color:var(--color-warning);background:rgba(245,158,11,.4)}.conflict-severity--medium{border-color:var(--color-warning-dark);background:rgba(245,158,11,.6)}.conflict-severity--high{border-color:var(--color-error);background:rgba(239,68,68,.6)}.conflict-severity--critical{border-color:var(--color-error-dark);background:rgba(239,68,68,.8);animation:conflictPulse 1s ease-in-out infinite}.calendar-type--training{background:linear-gradient(135deg,rgba(16,185,129,.2),rgba(16,185,129,.1));border:2px solid var(--color-success);color:var(--color-success-dark)}.calendar-type--meeting{background:linear-gradient(135deg,hsla(220,9%,46%,.2),hsla(220,9%,46%,.1));border:2px solid var(--gray-500);color:var(--gray-700)}