:root{--raw-slate-50:#f8fafc;--raw-slate-100:#f1f5f9;--raw-slate-200:#e2e8f0;--raw-slate-300:#cbd5e1;--raw-slate-400:#94a3b8;--raw-slate-500:#64748b;--raw-slate-600:#475569;--raw-slate-700:#334155;--raw-slate-800:#1e293b;--raw-slate-900:#0f172a;--raw-slate-950:#020617;--raw-blue-50:#eff6ff;--raw-blue-100:#dbeafe;--raw-blue-200:#bfdbfe;--raw-blue-300:#93c5fd;--raw-blue-400:#60a5fa;--raw-blue-500:#3b82f6;--raw-blue-600:#2563eb;--raw-blue-700:#1d4ed8;--raw-blue-800:#1e40af;--raw-blue-900:#1e3a8a;--raw-blue-950:#172554;--raw-emerald-400:#34d399;--raw-emerald-500:#10b981;--raw-emerald-600:#059669;--raw-amber-400:#fbbf24;--raw-amber-500:#f59e0b;--raw-amber-600:#d97706;--raw-rose-400:#fb7185;--raw-rose-500:#f43f5e;--raw-rose-600:#e11d48;--raw-sky-400:#38bdf8;--raw-sky-500:#0ea5e9;--raw-sky-600:#0284c7;--raw-purple-300:#d8b4fe;--raw-purple-400:#c084fc;--raw-purple-500:#a855f7;--raw-purple-600:#9333ea;--raw-purple-900:#581c87;--raw-gold-300:#fde047;--raw-gold-400:#facc15;--raw-gold-500:#eab308;--raw-gold-600:#ca8a04;--raw-gold-700:#a16207;--font-family-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #00000026, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #00000040, 0 8px 10px -6px #00000040;--pattern-stripe-external:repeating-linear-gradient(45deg, #a855f726, #a855f726 6px, #9333ea4d 6px, #9333ea4d 12px);--gantt-bar-height:28px;--gantt-baseline-height:8px;--gantt-cap-width:3px}:root,[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--scrollbar-track-bg:transparent;--scrollbar-thumb-bg:var(--raw-slate-700);--scrollbar-thumb-hover:var(--raw-slate-600);--scrollbar-thumb-active:var(--raw-slate-500);--scrollbar-corner-bg:transparent;--color-bg-base:var(--raw-slate-950);--color-bg-surface:var(--raw-slate-900);--color-bg-elevated:var(--raw-slate-800);--color-bg-muted:var(--raw-slate-800);--color-bg-hover:#ffffff0d;--color-text-primary:var(--raw-slate-50);--color-text-secondary:var(--raw-slate-400);--color-text-muted:var(--raw-slate-500);--color-border:var(--raw-slate-800);--color-border-subtle:#ffffff1a;--color-border-focus:var(--raw-blue-400);--color-primary:var(--raw-blue-500);--color-primary-hover:var(--raw-blue-400);--color-primary-text:#fff;--color-status-success:var(--raw-emerald-400);--color-status-success-bg:#10b98126;--color-status-warning:var(--raw-amber-400);--color-status-warning-bg:#f59e0b26;--color-status-danger:var(--raw-rose-400);--color-status-danger-bg:#f43f5e26;--color-status-info:var(--raw-sky-400);--color-status-info-bg:#0ea5e926;--color-glass-bg:#0f172abf;--color-glass-border:#ffffff1f;--color-workspace-bar-sticky-bg:#0f172ae0;--color-workspace-bar-border:var(--raw-slate-800);--color-workspace-bar-label:var(--raw-slate-300);--workspace-bar-sticky-bg:var(--color-workspace-bar-sticky-bg);--sidebar-width-expanded:250px;--sidebar-width-collapsed:68px;--sidebar-bg:#0b1329;--sidebar-border:var(--raw-slate-800);--sidebar-item-hover:#ffffff0f;--sidebar-item-active-bg:#2563eb2e;--sidebar-item-active-text:var(--raw-blue-400);--sidebar-item-active-border:var(--raw-blue-500);--sidebar-text-muted:var(--raw-slate-400);--sidebar-badge-bg:var(--raw-slate-800);--sidebar-badge-text:var(--raw-slate-300);--modal-overlay-bg:#020617bf;--modal-surface-bg:var(--raw-slate-900);--modal-header-border:var(--raw-slate-800);--modal-footer-bg:#0b1329;--modal-footer-border:var(--raw-slate-800);--form-input-bg:var(--raw-slate-800);--form-input-border:var(--raw-slate-500);--form-input-border-focus:var(--raw-blue-400);--form-input-focus-ring:#60a5fa40;--form-input-text:var(--raw-slate-50);--form-input-placeholder:var(--raw-slate-400);--form-label-color:var(--raw-slate-300);--form-input-disabled-bg:#0f172a99;--form-input-disabled-border:var(--raw-slate-700);--form-input-disabled-text:var(--raw-slate-400);--form-feedback-integrity-color:var(--raw-blue-400);--gantt-sim-ghost-bg:#94a3b859;--gantt-sim-ghost-border:#94a3b8b3;--gantt-sim-shifted-bg:var(--color-status-warning);--gantt-sim-shifted-text:#fff;--gantt-sim-delta-arrow:var(--color-status-warning);--gantt-sim-delta-badge-bg:#f59e0b33;--gantt-sim-delta-badge-text:var(--raw-amber-300);--gantt-sim-grid-line:var(--color-border-subtle);--color-gantt-holiday-bg:#a855f729;--color-gantt-holiday-border:#c084fc66;--color-gantt-holiday-text:#e9d5ff;--color-gantt-holiday-stripes:repeating-linear-gradient(45deg, #a855f71a, #a855f71a 10px, #a855f733 10px, #a855f733 20px);--color-gantt-weekend-bg:#0f172aa6;--color-gantt-weekend-border:#ffffff14;--color-gantt-weekend-text:var(--raw-slate-500);--color-currency-badge-bg:#3b82f626;--color-currency-badge-text:var(--raw-blue-300);--color-currency-badge-border:#3b82f659;--color-currency-indicator-bg:#10b98126;--color-currency-indicator-text:var(--raw-emerald-400);--color-currency-indicator-border:#10b98159;--gantt-bar-external-dependency-pattern:var(--pattern-stripe-external);--gantt-bar-external-dependency-border:var(--raw-purple-400,#c084fc);--gantt-bar-external-dependency-bg:#a855f733;--gantt-bar-external-dependency-text:#f3e8ff;--gantt-connector-external-stroke:var(--raw-purple-400,#c084fc);--badge-external-dependency-bg:#a855f72e;--badge-external-dependency-text:#d8b4fe;--badge-external-dependency-border:#a855f766;--gantt-bar-scheduled-border:#ffffff47;--gantt-bar-scheduled-shadow:0 4px 12px #00000080, 0 0 0 1px #ffffff29;--gantt-bar-scheduled-top-bevel:inset 0 1px 0 #ffffff4d;--gantt-bar-cap-color:#ffffffd9;--gantt-bar-baseline-bg:#94a3b8;--gantt-bar-baseline-border:#ffffff59;--gantt-bar-baseline-pattern:repeating-linear-gradient(45deg, #ffffff0f, #ffffff0f 4px, transparent 4px, transparent 8px);--gantt-undo-highlight-border:#38bdf8;--gantt-undo-highlight-glow:#38bdf873;--gantt-history-btn-bg:#1e293bb3;--gantt-history-btn-hover:#334155d9;--gantt-history-btn-border:#94a3b840;--gantt-history-btn-text:#f1f5f9;--surface-card:var(--color-bg-surface);--color-surface:var(--color-bg-surface);--surface-ground:var(--raw-slate-950);--border-default:var(--color-border);--border-color:var(--color-border);--text-main:var(--color-text-primary);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-muted:var(--color-text-muted);--form-input-focus:var(--form-input-border-focus);--kanban-assignee-chip-bg:#3b82f626;--kanban-assignee-chip-hover:#3b82f647;--kanban-assignee-chip-border:#60a5fa59;--kanban-assignee-chip-text:var(--raw-blue-300);--popover-surface-bg:var(--raw-slate-900);--popover-border:var(--raw-slate-700);--popover-shadow:0 20px 25px -5px #00000080, 0 8px 10px -6px #0006;--popover-text:var(--raw-slate-100);--popover-item-hover:var(--raw-slate-800);--popover-item-active:#2563eb40;--layout-content-max-width:1680px;--modal-dialog-max-width:800px;--modal-dialog-max-width-sm:480px;--security-warning-bg:#f59e0b1f;--security-warning-border:#f59e0b59;--security-warning-text:var(--raw-amber-300);--security-danger-bg:#f43f5e24;--security-danger-border:#f43f5e66;--security-danger-text:var(--raw-rose-300);--security-success-bg:#10b9811f;--security-success-border:#10b98159;--security-success-text:var(--raw-emerald-300);--security-modal-overlay:#0f172abf;--tabs-track-bg:#0f172ab3;--tabs-track-border:var(--raw-slate-800);--tabs-item-text:var(--raw-slate-400);--tabs-item-hover-bg:#ffffff0f;--tabs-item-hover-text:var(--raw-slate-100);--tabs-item-active-bg:var(--raw-slate-800);--tabs-item-active-text:var(--raw-slate-50);--tabs-item-active-shadow:0 1px 3px #0006;--tabs-indicator-color:var(--raw-blue-400);--tabs-pill-bg-active:var(--color-primary);--tabs-pill-text-active:#fff;--tabs-pill-bg-inactive:transparent;--tabs-pill-text-inactive:var(--raw-slate-400);--tabs-pill-hover-bg:#ffffff0f;--tabs-pill-hover-text:var(--raw-slate-100);--tabs-pill-active-shadow:0 1px 3px #00000059;--tabs-track-border-bottom:var(--color-border);--color-milestone:#f59e0b;--color-milestone-glow:#f59e0b73;--color-milestone-bg:#f59e0b26;--color-milestone-border:#fbbf24;--color-milestone-text:#fef3c7;--color-phase-summary:#3b82f6;--color-phase-summary-bg:#3b82f61f;--color-phase-summary-border:#60a5fa59;--color-phase-summary-text:#93c5fd;--hero-meta-chip-bg:#ffffff0d;--hero-meta-chip-border:#ffffff1a;--hero-meta-chip-text:var(--raw-slate-300);--hero-btn-bg:#3b82f626;--hero-btn-hover-bg:#3b82f647;--hero-btn-border:#60a5fa59;--hero-btn-text:var(--raw-blue-300);--project-modal-card-bg:#0f172a99;--project-modal-card-border:#ffffff14;--heatmap-cell-bg-empty:#94a3b80f;--heatmap-cell-border:var(--raw-slate-800);--heatmap-utilization-under:var(--raw-sky-400);--heatmap-utilization-under-bg:#38bdf829;--heatmap-utilization-optimal:var(--raw-emerald-400);--heatmap-utilization-optimal-bg:#10b9812e;--heatmap-utilization-warning:var(--raw-amber-400);--heatmap-utilization-warning-bg:#f59e0b33;--heatmap-utilization-critical:var(--raw-rose-400);--heatmap-utilization-critical-bg:#f43f5e3d;--heatmap-absence-bg:#a855f72e;--heatmap-absence-border:#c084fc59;--heatmap-absence-text:#e9d5ff;--color-billing-pending-bg:#f59e0b29;--color-billing-pending-text:var(--raw-amber-400);--color-billing-pending-border:#fbbf2461;--color-billing-invoiced-bg:#10b98129;--color-billing-invoiced-text:var(--raw-emerald-400);--color-billing-invoiced-border:#34d39961;--color-billing-cancelled-bg:#f43f5e29;--color-billing-cancelled-text:var(--raw-rose-400);--color-billing-cancelled-border:#fb718561;--color-billing-maintenance-bg:#a855f72e;--color-billing-maintenance-text:var(--raw-purple-300);--color-billing-maintenance-border:#c084fc6b;--color-invoice-paper-bg:var(--raw-slate-900);--color-invoice-paper-border:var(--raw-slate-700);--color-invoice-header-bg:var(--raw-slate-800);--color-invoice-total-bg:#2563eb29}:root[data-theme=light],[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--scrollbar-track-bg:transparent;--scrollbar-thumb-bg:var(--raw-slate-300);--scrollbar-thumb-hover:var(--raw-slate-400);--scrollbar-thumb-active:var(--raw-slate-500);--scrollbar-corner-bg:transparent;--color-bg-base:var(--raw-slate-50);--color-bg-surface:#fff;--color-bg-elevated:#fff;--color-bg-muted:var(--raw-slate-100);--color-bg-hover:var(--raw-slate-100);--color-text-primary:var(--raw-slate-900);--color-text-secondary:var(--raw-slate-600);--color-text-muted:var(--raw-slate-400);--color-border:var(--raw-slate-200);--color-border-subtle:#00000014;--color-border-focus:var(--raw-blue-600);--color-primary:var(--raw-blue-600);--color-primary-hover:var(--raw-blue-700);--color-primary-text:#fff;--color-status-success:var(--raw-emerald-600);--color-status-success-bg:#10b9811a;--color-status-warning:var(--raw-amber-600);--color-status-warning-bg:#f59e0b1a;--color-status-danger:var(--raw-rose-600);--color-status-danger-bg:#f43f5e1a;--color-status-info:var(--raw-sky-600);--color-status-info-bg:#0ea5e91a;--color-glass-bg:#ffffffd9;--color-glass-border:#00000014;--color-workspace-bar-sticky-bg:#ffffffeb;--color-workspace-bar-border:var(--raw-slate-200);--color-workspace-bar-label:var(--raw-slate-600);--workspace-bar-sticky-bg:var(--color-workspace-bar-sticky-bg);--sidebar-bg:var(--raw-slate-50);--sidebar-border:var(--raw-slate-200);--sidebar-item-hover:var(--raw-slate-100);--sidebar-item-active-bg:var(--raw-blue-50);--sidebar-item-active-text:var(--raw-blue-700);--sidebar-item-active-border:var(--raw-blue-600);--sidebar-text-muted:var(--raw-slate-500);--sidebar-badge-bg:var(--raw-slate-200);--sidebar-badge-text:var(--raw-slate-700);--modal-overlay-bg:#0f172a80;--modal-surface-bg:#fff;--modal-header-border:var(--raw-slate-200);--modal-footer-bg:var(--raw-slate-50);--modal-footer-border:var(--raw-slate-200);--form-input-bg:#fff;--form-input-border:var(--raw-slate-300);--form-input-border-focus:var(--raw-blue-600);--form-input-focus-ring:#2563eb26;--form-input-text:var(--raw-slate-900);--form-input-placeholder:var(--raw-slate-400);--form-label-color:var(--raw-slate-700);--form-input-disabled-bg:var(--raw-slate-100);--form-input-disabled-border:var(--raw-slate-300);--form-input-disabled-text:var(--raw-slate-400);--form-feedback-integrity-color:var(--color-primary);--gantt-sim-ghost-bg:#94a3b840;--gantt-sim-ghost-border:var(--raw-slate-400);--gantt-sim-shifted-bg:var(--raw-amber-600);--gantt-sim-shifted-text:#fff;--gantt-sim-delta-arrow:var(--raw-amber-600);--gantt-sim-delta-badge-bg:#f59e0b26;--gantt-sim-delta-badge-text:var(--raw-amber-800);--gantt-sim-grid-line:#0000000f;--color-gantt-holiday-bg:#a855f71f;--color-gantt-holiday-border:#a855f759;--color-gantt-holiday-text:#6b21a8;--color-gantt-holiday-stripes:repeating-linear-gradient(45deg, #a855f714, #a855f714 10px, #a855f729 10px, #a855f729 20px);--color-gantt-weekend-bg:var(--raw-slate-100);--color-gantt-weekend-border:var(--raw-slate-200);--color-gantt-weekend-text:var(--raw-slate-400);--color-currency-badge-bg:var(--raw-blue-50);--color-currency-badge-text:var(--raw-blue-700);--color-currency-badge-border:#2563eb40;--color-currency-indicator-bg:#ecfdf5;--color-currency-indicator-text:#047857;--color-currency-indicator-border:#10b9814d;--gantt-bar-external-dependency-pattern:repeating-linear-gradient(45deg, #a855f71f, #a855f71f 6px, #9333ea38 6px, #9333ea38 12px);--gantt-bar-external-dependency-border:#9333ea;--gantt-bar-external-dependency-bg:#a855f71f;--gantt-bar-external-dependency-text:#581c87;--gantt-connector-external-stroke:#9333ea;--badge-external-dependency-bg:#f3e8ff;--badge-external-dependency-text:#7e22ce;--badge-external-dependency-border:#d8b4fe;--gantt-bar-scheduled-border:#00000038;--gantt-bar-scheduled-shadow:0 2px 8px #00000024, 0 0 0 1px #00000014;--gantt-bar-scheduled-top-bevel:inset 0 1px 0 #ffffff80;--gantt-bar-cap-color:#00000073;--gantt-bar-baseline-bg:#64748b;--gantt-bar-baseline-border:#00000040;--gantt-bar-baseline-pattern:repeating-linear-gradient(45deg, #0000000a, #0000000a 4px, transparent 4px, transparent 8px);--gantt-undo-highlight-border:#0284c7;--gantt-undo-highlight-glow:#0284c759;--gantt-history-btn-bg:#f8fafc;--gantt-history-btn-hover:#e2e8f0;--gantt-history-btn-border:#cbd5e1;--gantt-history-btn-text:#0f172a;--surface-card:#fff;--color-surface:#fff;--surface-ground:var(--raw-slate-100);--border-default:var(--raw-slate-200);--border-color:var(--color-border);--text-main:var(--color-text-primary);--text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-muted:var(--color-text-muted);--form-input-focus:var(--form-input-border-focus);--kanban-assignee-chip-bg:#2563eb14;--kanban-assignee-chip-hover:#2563eb29;--kanban-assignee-chip-border:#2563eb40;--kanban-assignee-chip-text:var(--raw-blue-700);--popover-surface-bg:#fff;--popover-border:var(--raw-slate-200);--popover-shadow:0 10px 25px -5px #0000001f, 0 8px 10px -6px #00000014;--popover-text:var(--raw-slate-900);--popover-item-hover:var(--raw-slate-100);--popover-item-active:#2563eb1a;--tabs-track-bg:var(--raw-slate-100);--tabs-track-border:var(--raw-slate-200);--tabs-item-text:var(--raw-slate-600);--tabs-item-hover-bg:#0000000a;--tabs-item-hover-text:var(--raw-slate-900);--tabs-item-active-bg:#fff;--tabs-item-active-text:var(--raw-slate-900);--tabs-item-active-shadow:0 1px 2px #00000014;--tabs-indicator-color:var(--raw-blue-600);--tabs-pill-bg-active:var(--color-primary);--tabs-pill-text-active:#fff;--tabs-pill-bg-inactive:transparent;--tabs-pill-text-inactive:var(--raw-slate-600);--tabs-pill-hover-bg:var(--raw-slate-200);--tabs-pill-hover-text:var(--raw-slate-900);--tabs-pill-active-shadow:0 1px 2px #00000014;--tabs-track-border-bottom:var(--color-border);--security-warning-bg:#fffbeb;--security-warning-border:#f59e0b59;--security-warning-text:#b45309;--security-danger-bg:#fff1f2;--security-danger-border:#f43f5e59;--security-danger-text:#be123c;--security-success-bg:#f0fdf4;--security-success-border:#10b98159;--security-success-text:#15803d;--security-modal-overlay:#0f172a8c;--color-milestone:#d97706;--color-milestone-glow:#d9770640;--color-milestone-bg:#f59e0b1f;--color-milestone-border:#d97706;--color-milestone-text:#78350f;--color-phase-summary:#2563eb;--color-phase-summary-bg:#2563eb14;--color-phase-summary-border:#2563eb40;--color-phase-summary-text:#1d4ed8;--hero-meta-chip-bg:#0000000a;--hero-meta-chip-border:var(--raw-slate-200);--hero-meta-chip-text:var(--raw-slate-700);--hero-btn-bg:#2563eb14;--hero-btn-hover-bg:#2563eb29;--hero-btn-border:#2563eb40;--hero-btn-text:var(--raw-blue-700);--project-modal-card-bg:var(--raw-slate-50);--project-modal-card-border:var(--raw-slate-200);--heatmap-cell-bg-empty:#f1f5f9b3;--heatmap-cell-border:var(--raw-slate-200);--heatmap-utilization-under:var(--raw-sky-600);--heatmap-utilization-under-bg:#0ea5e91f;--heatmap-utilization-optimal:var(--raw-emerald-600);--heatmap-utilization-optimal-bg:#10b98124;--heatmap-utilization-warning:var(--raw-amber-600);--heatmap-utilization-warning-bg:#f59e0b26;--heatmap-utilization-critical:var(--raw-rose-600);--heatmap-utilization-critical-bg:#f43f5e29;--heatmap-absence-bg:#a855f71f;--heatmap-absence-border:#a855f74d;--heatmap-absence-text:#6b21a8;--color-billing-pending-bg:#f59e0b1f;--color-billing-pending-text:var(--raw-amber-600);--color-billing-pending-border:#d9770652;--color-billing-invoiced-bg:#10b9811f;--color-billing-invoiced-text:var(--raw-emerald-600);--color-billing-invoiced-border:#05966952;--color-billing-cancelled-bg:#f43f5e1f;--color-billing-cancelled-text:var(--raw-rose-600);--color-billing-cancelled-border:#e11d4852;--color-billing-maintenance-bg:#a855f71f;--color-billing-maintenance-text:var(--raw-purple-600);--color-billing-maintenance-border:#9333ea59;--color-invoice-paper-bg:var(--color-bg-surface);--color-invoice-paper-border:var(--raw-slate-300);--color-invoice-header-bg:var(--raw-slate-100);--color-invoice-total-bg:var(--raw-blue-50)}:root{--scrollbar-width:8px;--scrollbar-width-thin:6px;--scrollbar-radius:var(--radius-full);--heatmap-row-height:48px;--heatmap-col-width:90px;--heatmap-sidebar-width:260px;--heatmap-border-radius:var(--radius-md);--tabs-pill-padding:var(--spacing-2) var(--spacing-4);--tabs-pill-radius:var(--radius-md);--tabs-pill-font-size:var(--font-size-sm);--tabs-pill-font-weight:var(--font-weight-semibold);--assignee-chip-radius:var(--radius-full);--assignee-chip-font-size:var(--font-size-xs);--assignee-popover-min-width:260px;--assignee-popover-max-height:320px;--assignee-unassigned-color:var(--raw-slate-400);--btn-claim-bg:#2563eb1a;--btn-claim-hover-bg:#2563eb33;--btn-claim-text:var(--color-primary);--btn-claim-border:1px dashed var(--color-primary);--gantt-milestone-size:16px;--gantt-milestone-diamond-size:13px;--gantt-phase-bar-height:8px;--gantt-phase-bracket-width:6px;--gantt-phase-row-bg:#ffffff05;--kanban-milestone-stepper-bg:var(--color-bg-surface);--kanban-milestone-badge-active-bg:var(--color-milestone-bg);--kanban-milestone-badge-active-border:var(--color-milestone-border);--kanban-milestone-badge-active-text:var(--color-milestone-text);--task-modal-milestone-switch-bg:#f59e0b26;--toast-claim-bg:var(--color-bg-surface);--toast-claim-border:var(--color-border);--toast-claim-text:var(--color-text-primary);--btn-primary-bg:var(--color-primary);--btn-primary-text:var(--color-primary-text);--btn-primary-hover:var(--color-primary-hover);--btn-secondary-bg:var(--color-bg-muted);--btn-secondary-text:var(--color-text-primary);--btn-secondary-border:var(--color-border);--btn-outline-bg:transparent;--btn-outline-text:var(--color-primary);--btn-outline-border:var(--color-border);--btn-outline-hover-bg:var(--color-bg-hover);--btn-outline-hover-border:var(--color-primary);--btn-ghost-bg:transparent;--btn-ghost-text:var(--color-text-primary);--btn-ghost-hover-bg:var(--color-bg-hover);--btn-danger-bg:var(--color-status-danger);--btn-danger-text:#fff;--modal-backdrop-bg:var(--modal-overlay-bg);--modal-border:var(--color-border);--card-bg:var(--color-bg-surface);--card-border:var(--color-border);--card-shadow:var(--shadow-sm);--table-header-bg:var(--color-bg-muted);--table-header-text:var(--color-text-secondary);--table-row-hover:var(--color-bg-hover);--table-border:var(--color-border);--gantt-bar-baseline:#94a3b866;--gantt-bar-scheduled:var(--color-primary);--gantt-connector-color:var(--color-text-secondary);--gantt-connector-selected:var(--color-primary);--gantt-connector-selected-glow:#38bdf880;--gantt-connector-dimmed-opacity:.25;--gantt-connector-hover:var(--raw-blue-400);--gantt-handle-source-bg:var(--color-primary);--gantt-handle-source-border:#fff;--gantt-handle-source-hover:var(--raw-blue-600);--gantt-handle-target-bg:var(--color-bg-surface);--gantt-handle-target-border:var(--color-primary);--gantt-handle-target-hover-valid:var(--color-status-success);--gantt-handle-target-hover-invalid:var(--color-status-danger);--gantt-handle-target-glow:#10b98166;--gantt-drag-line-valid:var(--color-status-success);--gantt-drag-line-invalid:var(--color-status-danger);--gantt-drag-line-transit:var(--color-primary);--gantt-context-menu-bg:var(--color-bg-elevated);--gantt-context-menu-border:var(--color-border);--gantt-context-menu-text:var(--color-text-primary);--gantt-context-menu-hover:var(--color-bg-hover);--gantt-context-menu-danger:var(--color-status-danger);--gantt-context-menu-danger-hover:var(--color-status-danger-bg);--gantt-context-menu-shadow:var(--shadow-lg);--gantt-today-line:var(--color-status-danger);--gantt-grid-border:var(--color-border);--gantt-col-holiday-bg:var(--color-gantt-holiday-bg);--gantt-col-holiday-border:var(--color-gantt-holiday-border);--gantt-col-holiday-text:var(--color-gantt-holiday-text);--gantt-col-holiday-pattern:var(--color-gantt-holiday-stripes);--gantt-col-weekend-bg:var(--color-gantt-weekend-bg);--gantt-col-weekend-border:var(--color-gantt-weekend-border);--gantt-col-weekend-text:var(--color-gantt-weekend-text);--currency-badge-radius:var(--radius-full);--currency-badge-padding:.15rem .5rem;--currency-badge-font-size:var(--font-size-xs);--currency-badge-font-weight:var(--font-weight-semibold);--kanban-column-bg:var(--color-bg-muted);--kanban-card-bg:var(--color-bg-surface);--kanban-card-border:var(--color-border);--kanban-wip-badge-bg:var(--color-bg-elevated);--kanban-sprint-badge-bg:#6366f11f;--kanban-sprint-badge-border:#6366f147;--kanban-sprint-badge-text:#6366f1;--kpi-card-bg:var(--color-bg-surface);--kpi-card-border:var(--color-border-subtle);--raci-badge-r:#2563eb;--raci-badge-r-bg:#2563eb26;--raci-badge-a:#dc2626;--raci-badge-a-bg:#dc262626;--raci-badge-c:#d97706;--raci-badge-c-bg:#d9770626;--raci-badge-i:#059669;--raci-badge-i-bg:#05966926;--raci-badge-empty:#64748b;--raci-badge-empty-bg:#64748b1a;--raci-validation-warning:#f59e0b;--raci-validation-error:#ef4444;--raci-validation-ok:#10b981;--risk-level-low:#10b981;--risk-level-low-bg:#10b98126;--risk-level-medium:#f59e0b;--risk-level-medium-bg:#f59e0b26;--risk-level-high:#f97316;--risk-level-high-bg:#f9731626;--risk-level-critical:#ef4444;--risk-level-critical-bg:#ef44442e;--artifact-badge-code:#3b82f6;--artifact-badge-code-bg:#3b82f626;--artifact-badge-sql:#f59e0b;--artifact-badge-sql-bg:#f59e0b26;--artifact-badge-config:#8b5cf6;--artifact-badge-config-bg:#8b5cf626;--artifact-badge-doc:#10b981;--artifact-badge-doc-bg:#10b98126;--artifact-badge-other:#64748b;--artifact-badge-other-bg:#64748b26;--diff-add-color:#10b981;--diff-del-color:#ef4444;--print-text-color:#0f172a;--print-border-color:#cbd5e1;--print-header-bg:#f8fafc;--print-bg-subtle:#f1f5f9;--workspace-bar-height:52px;--workspace-bar-bg:var(--color-bg-surface);--workspace-bar-sticky-bg:var(--color-workspace-bar-sticky-bg);--workspace-bar-border:var(--color-workspace-bar-border);--workspace-bar-label-color:var(--color-workspace-bar-label);--workspace-bar-backdrop-blur:blur(12px);--workspace-badge-client-bg:#3b82f61f;--workspace-badge-client-text:var(--color-primary);--workspace-badge-project-bg:#6366f11f;--workspace-badge-project-text:#6366f1;--workspace-select-height:36px;--workspace-select-min-width:200px;--workspace-select-radius:var(--radius-md);--markdown-bg:var(--color-bg-base);--markdown-border:var(--color-border);--markdown-code-bg:var(--color-bg-muted);--markdown-code-text:var(--color-primary);--markdown-blockquote-border:var(--color-primary);--markdown-blockquote-bg:#3b82f614;--markdown-toolbar-bg:var(--color-bg-surface);--markdown-toolbar-btn-hover:var(--color-bg-hover);--billing-modal-max-width:1120px;--billing-kpi-bg:var(--color-bg-elevated);--billing-kpi-border:var(--color-border);--billing-kpi-radius:var(--radius-lg);--billing-status-pending-bg:var(--color-billing-pending-bg);--billing-status-pending-text:var(--color-billing-pending-text);--billing-status-pending-border:var(--color-billing-pending-border);--billing-status-invoiced-bg:var(--color-billing-invoiced-bg);--billing-status-invoiced-text:var(--color-billing-invoiced-text);--billing-status-invoiced-border:var(--color-billing-invoiced-border);--billing-status-cancelled-bg:var(--color-billing-cancelled-bg);--billing-status-cancelled-text:var(--color-billing-cancelled-text);--billing-status-cancelled-border:var(--color-billing-cancelled-border);--billing-maintenance-btn-bg:var(--color-billing-maintenance-bg);--billing-maintenance-btn-text:var(--color-billing-maintenance-text);--billing-maintenance-btn-border:var(--color-billing-maintenance-border);--invoice-sheet-bg:var(--color-invoice-paper-bg);--invoice-sheet-border:var(--color-invoice-paper-border);--invoice-header-bg:var(--color-invoice-header-bg);--invoice-total-highlight-bg:var(--color-invoice-total-bg)}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-family-sans);background-color:var(--color-bg-base);color:var(--color-text-primary);transition:background-color var(--transition-base), color var(--transition-base);-webkit-font-smoothing:antialiased;margin:0;padding:0;line-height:1.5}.btn-action-icon{border-radius:var(--radius-md,6px);border:1px solid var(--border-default,#e2e8f0);background:var(--surface-card,#fff);width:32px;height:32px;color:var(--text-secondary,#64748b);font-size:var(--font-size-xs);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:all .15s;display:inline-flex}.btn-action-icon:hover:not(:disabled){background:var(--sidebar-item-active-bg,#2563eb14);color:var(--text-primary,#0f172a);border-color:var(--sidebar-item-active-border,#bfdbfe)}.btn-action-icon:disabled{opacity:.4;cursor:not-allowed}:root[data-theme=dark] .btn-action-icon{color:var(--text-secondary,#94a3b8);background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .btn-action-icon:hover:not(:disabled){color:#fff;background:#ffffff1a;border-color:#fff3}.security-notice-banner{align-items:flex-start;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);border-radius:var(--radius-lg);background:var(--security-danger-bg);border:1px solid var(--security-danger-border);color:var(--security-danger-text);margin:var(--spacing-4) 0;box-shadow:var(--shadow-sm);animation:.2s ease-in-out fadeIn;display:flex}.security-notice-banner.warning{background:var(--security-warning-bg);border-color:var(--security-warning-border);color:var(--security-warning-text)}.security-notice-banner .notice-icon{flex-shrink:0;font-size:1.5rem;line-height:1}.security-notice-banner .notice-content{flex:1}.security-notice-banner .notice-title{font-weight:var(--font-weight-bold);font-size:var(--font-size-base);margin-bottom:var(--spacing-1)}.security-notice-banner .notice-message{font-size:var(--font-size-sm);opacity:.92;margin:0}.auth-modal-dialog{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:92%;max-width:440px;padding:var(--spacing-6);box-shadow:var(--shadow-xl);color:var(--color-text-primary);animation:.2s ease-out scaleIn;position:relative}.auth-quick-selector{gap:var(--spacing-2);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.auth-quick-badge{font-size:var(--font-size-xs);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-bg-muted);color:var(--color-text-secondary);cursor:pointer;transition:all .15s}.auth-quick-badge:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.auth-feedback-error{padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);background:var(--security-danger-bg);border:1px solid var(--security-danger-border);color:var(--security-danger-text);font-size:var(--font-size-sm);margin-bottom:var(--spacing-3)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.hero-details-btn{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);background-color:var(--hero-btn-bg);border:1px solid var(--hero-btn-border);border-radius:var(--radius-full);color:var(--hero-btn-text);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all .15s;display:inline-flex}.hero-details-btn:hover{background-color:var(--hero-btn-hover-bg);border-color:var(--color-primary);transform:translateY(-1px)}.hero-meta-item{align-items:center;gap:5px;display:inline-flex}.project-modal-card{background-color:var(--project-modal-card-bg);border:1px solid var(--project-modal-card-border);border-radius:var(--radius-lg);padding:var(--spacing-4);gap:var(--spacing-2);flex-direction:column;display:flex}.project-modal-section-title{align-items:center;gap:var(--spacing-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);margin-bottom:var(--spacing-1);display:flex}.project-modal-grid-2{gap:var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.project-modal-stat{flex-direction:column;gap:2px;display:flex}.project-modal-stat-label{color:var(--color-text-muted);font-size:.72rem}.project-modal-stat-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}#root{background-color:var(--color-bg-base);min-height:100vh;color:var(--color-text-primary);flex-direction:column;display:flex}button{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;appearance:none;text-align:inherit;cursor:pointer;box-sizing:border-box;background:0 0;border:0;margin:0;padding:0}button:disabled{cursor:not-allowed;opacity:.6}.chronos-btn,.btn{justify-content:center;align-items:center;gap:var(--spacing-2);font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-4);cursor:pointer;transition:all var(--transition-fast);box-sizing:border-box;border:1px solid #0000;outline:none;text-decoration:none;display:inline-flex}.chronos-btn:focus-visible,.btn:focus-visible{box-shadow:0 0 0 2px var(--color-border-focus,#3b82f6)}.chronos-btn--primary,.btn-primary,.btn--primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:#0000}.chronos-btn--primary:hover:not(:disabled),.btn-primary:hover:not(:disabled),.btn--primary:hover:not(:disabled){background-color:var(--btn-primary-hover)}.chronos-btn--secondary,.btn-secondary,.btn--secondary{background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);border-color:var(--btn-secondary-border)}.chronos-btn--secondary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn--secondary:hover:not(:disabled){background-color:var(--color-bg-hover)}.chronos-btn--outline,.btn-outline,.btn--outline{background-color:var(--btn-outline-bg);color:var(--btn-outline-text);border-color:var(--btn-outline-border)}.chronos-btn--outline:hover:not(:disabled),.btn-outline:hover:not(:disabled),.btn--outline:hover:not(:disabled){background-color:var(--btn-outline-hover-bg);border-color:var(--btn-outline-hover-border)}.chronos-btn--ghost,.btn-ghost,.btn--ghost{background-color:var(--btn-ghost-bg);color:var(--btn-ghost-text);border-color:#0000}.chronos-btn--ghost:hover:not(:disabled),.btn-ghost:hover:not(:disabled),.btn--ghost:hover:not(:disabled){background-color:var(--btn-ghost-hover-bg)}.chronos-btn--danger,.btn-danger,.btn--danger{background-color:var(--btn-danger-bg);color:var(--btn-danger-text);border-color:#0000}.chronos-btn--sm,.btn-sm{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);border-radius:var(--radius-sm)}.chronos-btn--lg,.btn-lg{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base);border-radius:var(--radius-md)}.chronos-btn--icon,.btn-icon{padding:var(--spacing-1);aspect-ratio:1;width:32px;height:32px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}input:not([type=checkbox]):not([type=radio]):not([type=button]):not([type=submit]):not([type=color]):not([type=range]),select,textarea{background-color:var(--form-input-bg,#1e293b);color:var(--form-input-text,#f8fafc);border:1px solid var(--form-input-border,#334155);border-radius:var(--radius-md,6px);font-family:inherit;font-size:var(--font-size-sm,.875rem);box-sizing:border-box}input::placeholder,textarea::placeholder{color:var(--form-input-placeholder,#94a3b8)}.search-input-wrapper,.master-search-wrapper{align-items:center;width:100%;max-width:420px;display:flex;position:relative}.search-input-wrapper .search-icon,.master-search-wrapper .search-icon,.search-input-wrapper>svg,.master-search-wrapper>svg{color:var(--text-tertiary,#64748b);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.search-input,.master-search-input{background-color:var(--form-input-bg,#0f172a);border:1px solid var(--form-input-border,#334155);border-radius:var(--radius-md,6px);width:100%;color:var(--form-input-text,#f8fafc);font-size:var(--font-size-sm,.875rem);box-sizing:border-box;outline:none;padding:.55rem 1rem .55rem 2.4rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.search-input:focus,.master-search-input:focus{border-color:var(--form-input-border-focus,#3b82f6);box-shadow:0 0 0 3px var(--form-input-focus-ring,#3b82f640)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-bg) var(--scrollbar-track-bg)}::-webkit-scrollbar{width:var(--scrollbar-width,8px);height:var(--scrollbar-width,8px)}::-webkit-scrollbar-track{background:var(--scrollbar-track-bg,transparent);border-radius:var(--scrollbar-radius,9999px)}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-bg);border-radius:var(--scrollbar-radius,9999px);transition:background-color var(--transition-fast,.15s ease);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-active)}::-webkit-scrollbar-corner{background:var(--scrollbar-corner-bg,transparent)}::-webkit-scrollbar-button{width:0;height:0;display:none}.scrollbar-thin{scrollbar-width:thin}.scrollbar-thin::-webkit-scrollbar{width:var(--scrollbar-width-thin,6px);height:var(--scrollbar-width-thin,6px)}.master-controls{justify-content:space-between;align-items:center;gap:var(--spacing-4,16px);background:var(--surface-card,#1e293b);padding:var(--spacing-4,16px) var(--spacing-5,20px);border-radius:var(--radius-lg,12px);border:1px solid var(--border-default,#334155);margin-bottom:var(--spacing-4,16px);box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);flex-wrap:wrap;display:flex}.master-search-group .search-input-wrapper,.master-search-group .master-search-wrapper{width:100%;max-width:380px;position:relative}.master-filter-group{align-items:center;gap:var(--spacing-3,12px);flex-wrap:wrap;display:flex}.filter-select{background-color:var(--form-input-bg,#0f172a);border:1.5px solid var(--form-input-border,#334155);border-radius:var(--radius-md,8px);min-width:160px;height:42px;color:var(--form-input-text,#f8fafc);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);cursor:pointer;box-sizing:border-box;outline:none;padding:10px 14px;transition:border-color .15s,box-shadow .15s}.filter-select:hover{border-color:var(--border-hover,#475569)}@media (width<=640px){.master-controls{align-items:stretch;gap:var(--spacing-3,12px);padding:var(--spacing-3,12px);flex-direction:column}.master-search-group,.master-search-group .search-input-wrapper,.master-search-group .master-search-wrapper{width:100%;min-width:0;max-width:100%}.master-filter-group{flex-direction:column;align-items:stretch;width:100%}.filter-select{width:100%;min-width:0}}.chronos-sidebar{width:var(--sidebar-width-expanded);background-color:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);height:calc(100vh - 60px - var(--workspace-bar-height,52px));top:calc(60px + var(--workspace-bar-height,52px));transition:width var(--transition-base), transform var(--transition-base);z-index:40;flex-direction:column;flex-shrink:0;display:flex;position:sticky}.chronos-sidebar.collapsed{width:var(--sidebar-width-collapsed)}.chronos-sidebar-content{padding:var(--spacing-4) var(--spacing-2);gap:var(--spacing-6);flex-direction:column;flex:1;display:flex;overflow:hidden auto}.chronos-nav-section{gap:var(--spacing-1);flex-direction:column;display:flex}.chronos-nav-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--sidebar-text-muted);letter-spacing:.05em;padding:0 var(--spacing-3);margin-bottom:var(--spacing-2);text-transform:uppercase}.chronos-nav-list{gap:var(--spacing-1);flex-direction:column;display:flex}.chronos-nav-item{align-items:center;gap:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;text-align:left;width:100%;transition:all var(--transition-fast);white-space:nowrap;background-color:#0000;border:1px solid #0000;display:flex}.chronos-nav-item:hover{background-color:var(--sidebar-item-hover);color:var(--color-text-primary)}.chronos-nav-item.active{background-color:var(--sidebar-item-active-bg);color:var(--sidebar-item-active-text);border-color:var(--sidebar-item-active-border);font-weight:var(--font-weight-semibold)}.chronos-nav-icon{flex-shrink:0}.chronos-nav-label{text-overflow:ellipsis;overflow:hidden}.chronos-sidebar.collapsed .chronos-nav-item{padding:var(--spacing-2);justify-content:center}.chronos-sidebar-footer{padding:var(--spacing-3);border-top:1px solid var(--sidebar-border)}.chronos-sidebar-toggle-btn{justify-content:center;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2);border:1px solid var(--sidebar-border);border-radius:var(--radius-md);color:var(--sidebar-text-muted);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;display:flex}.chronos-sidebar-toggle-btn:hover{background-color:var(--sidebar-item-hover);color:var(--color-text-primary)}.chronos-sidebar-mobile-header,.chronos-sidebar-backdrop{display:none}@media (width<=768px){.chronos-sidebar{z-index:100;height:100vh;box-shadow:var(--shadow-xl);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);width:280px!important}.chronos-sidebar.mobile-open{transform:translate(0)}.chronos-sidebar-mobile-header{padding:var(--spacing-4);border-bottom:1px solid var(--sidebar-border);justify-content:space-between;align-items:center;display:flex}.chronos-sidebar-title{font-weight:var(--font-weight-bold);font-size:var(--font-size-base);color:var(--color-text-primary)}.chronos-sidebar-close-btn{color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-1);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.chronos-sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;background-color:#00000080;display:block;position:fixed;inset:0}.chronos-sidebar-footer{display:none}}.chronos-workspace-bar{padding:0 var(--spacing-6);min-height:var(--workspace-bar-height,52px);background-color:var(--workspace-bar-sticky-bg,var(--color-bg-surface));border-bottom:1px solid var(--workspace-bar-border,var(--color-border));z-index:45;-webkit-backdrop-filter:blur(12px);transition:background-color var(--transition-base), border-color var(--transition-base), box-shadow var(--transition-base);grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:sticky;top:60px;box-shadow:0 1px 3px #0000000d}.workspace-bar-left{align-items:center;gap:var(--spacing-3);justify-self:start;display:flex}.workspace-context-label{align-items:center;gap:var(--spacing-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--workspace-bar-label-color,var(--color-text-secondary));text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;display:flex}.workspace-bar-center{justify-content:center;align-items:center;gap:var(--spacing-4);justify-self:center;display:flex}.workspace-selector-group{align-items:center;gap:var(--spacing-2);display:flex}.workspace-selector-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--workspace-bar-label-color,var(--color-text-secondary));white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.workspace-select{height:var(--workspace-select-height,36px);min-width:var(--workspace-select-min-width,210px);max-width:320px;padding:0 var(--spacing-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-primary);background-color:var(--form-input-bg,var(--color-bg-surface));border:1px solid var(--form-input-border,var(--color-border));border-radius:var(--workspace-select-radius,var(--radius-md));cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}.workspace-select:hover:not(:disabled){border-color:var(--color-primary)}.workspace-select:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 2px #2563eb40}.workspace-select:disabled{opacity:.7;cursor:not-allowed;background-color:var(--color-bg-muted)}.workspace-bar-right{align-items:center;gap:var(--spacing-3);justify-self:end;display:flex}.workspace-project-badges{align-items:center;gap:var(--spacing-2);display:flex}.workspace-chip{border-radius:var(--radius-full);font-size:.75rem;font-weight:var(--font-weight-medium);background-color:var(--color-bg-muted);color:var(--color-text-secondary);border:1px solid var(--color-border);align-items:center;gap:6px;padding:3px 10px;display:inline-flex}@media (width<=900px){.chronos-workspace-bar{padding:var(--spacing-2) var(--spacing-4);align-items:stretch;gap:var(--spacing-2);flex-direction:column;min-height:auto;display:flex}.workspace-bar-left,.workspace-bar-center,.workspace-bar-right{justify-self:stretch;width:100%}.workspace-bar-center{align-items:stretch;gap:var(--spacing-2);flex-direction:column}.workspace-selector-group{justify-content:space-between;width:100%}.workspace-select{flex:1;width:100%;max-width:none}.workspace-bar-right{justify-content:flex-start}}.header-currency-ticker{align-items:center;gap:var(--spacing-2,8px);background-color:var(--color-bg-surface,#ffffffb3);border:1px solid var(--color-border,#0000001a);border-radius:var(--radius-full,9999px);cursor:pointer;transition:all var(--transition-fast,.15s ease-in-out);-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:var(--font-size-xs,.75rem);flex-shrink:0;padding:4px 12px 4px 8px;display:inline-flex}.header-currency-ticker:hover{background-color:var(--color-bg-subtle,#0000000a);border-color:var(--color-primary,#2563eb);transform:translateY(-1px);box-shadow:0 2px 8px #2563eb1f}.header-currency-ticker:focus-visible{outline:2px solid var(--color-primary,#2563eb);outline-offset:2px}.ticker-label{background-color:var(--color-primary-subtle,#2563eb1a);color:var(--color-primary,#2563eb);border-radius:var(--radius-full,9999px);font-weight:var(--font-weight-bold,700);letter-spacing:.04em;align-items:center;gap:4px;padding:2px 6px;font-size:.6875rem;display:inline-flex}.ticker-icon{stroke-width:2.5px}.ticker-items-container{align-items:center;gap:var(--spacing-2,8px);display:inline-flex}.ticker-item{align-items:center;gap:5px;display:inline-flex}.ticker-badge{font-size:.6875rem;font-weight:var(--font-weight-bold,700);border-radius:var(--radius-sm,4px);padding:1px 5px;line-height:1.2}.ticker-badge-uf{color:#4f46e5;background-color:#6366f11f;border:1px solid #6366f140}.ticker-badge-usd{color:#059669;background-color:#10b9811f;border:1px solid #10b98140}.ticker-badge-eur{color:#d97706;background-color:#f59e0b1f;border:1px solid #f59e0b40}.ticker-value{font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);font-variant-numeric:tabular-nums;font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#1e293b);letter-spacing:-.01em}.ticker-separator{color:var(--color-text-muted,#94a3b8);font-size:.75rem}.ticker-spinner{color:var(--color-primary,#2563eb);animation:1s linear infinite spin}[data-theme=dark] .header-currency-ticker{background-color:var(--color-bg-surface,#1e293bb3);border-color:var(--color-border,#ffffff1a)}[data-theme=dark] .header-currency-ticker:hover{border-color:var(--color-primary,#3b82f6);background-color:#1e293bf2;box-shadow:0 2px 10px #3b82f633}[data-theme=dark] .ticker-value{color:var(--color-text-primary,#f8fafc)}[data-theme=dark] .ticker-badge-uf{color:#818cf8;background-color:#6366f133;border-color:#6366f166}[data-theme=dark] .ticker-badge-usd{color:#34d399;background-color:#10b98133;border-color:#10b98166}[data-theme=dark] .ticker-badge-eur{color:#fbbf24;background-color:#f59e0b33;border-color:#f59e0b66}@media (width<=1200px) and (width>=769px){.header-currency-ticker{gap:6px;padding:3px 8px 3px 6px}.ticker-label{display:none}.ticker-items-container{gap:6px}.ticker-item{gap:3px}.ticker-value{font-size:.7rem}}@media (width<=768px){.header-currency-ticker{display:none!important}}.chronos-app-layout{background-color:var(--color-bg-base);min-height:100vh;color:var(--color-text-primary);flex-direction:column;display:flex}.chronos-header{padding:0 var(--spacing-6);background-color:var(--color-glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);z-index:50;justify-content:space-between;align-items:center;gap:var(--spacing-4);height:60px;display:flex;position:sticky;top:0}.chronos-header-left{align-items:center;gap:var(--spacing-3);display:flex}.chronos-mobile-menu-btn{color:var(--color-text-primary);cursor:pointer;padding:var(--spacing-1);background:0 0;border:none;justify-content:center;align-items:center;display:none}.chronos-role-selector{align-items:center;gap:var(--spacing-1);background-color:var(--color-bg-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);padding:3px;display:flex}.chronos-role-label{font-size:var(--font-size-xs);color:var(--color-text-muted);padding-left:var(--spacing-2);align-items:center;gap:4px;display:inline-flex}.chronos-role-btn{border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;border:none;padding:4px 10px}.chronos-role-btn:hover{color:var(--color-text-primary)}.chronos-role-btn.active{background-color:var(--color-primary);color:#fff;font-weight:var(--font-weight-semibold)}.chronos-static-role-container{align-items:center;display:flex}.chronos-static-role-badge{align-items:center;gap:var(--spacing-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);background-color:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-primary);padding:5px 12px;display:inline-flex}.chronos-header-right{align-items:center;gap:var(--spacing-3);display:flex}.chronos-body-container{flex:1;width:100%;display:flex;position:relative}.chronos-main-content{min-width:0;padding:var(--spacing-6) var(--spacing-8);flex:1;overflow-x:hidden}.chronos-content-wrapper{max-width:var(--layout-content-max-width,1680px);gap:var(--spacing-6);flex-direction:column;width:100%;margin:0 auto;display:flex}.chronos-header-timezone-badge{font-size:var(--font-size-xs);color:var(--color-text-secondary);border-color:var(--color-border);background-color:var(--color-bg-surface);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-full);align-items:center;gap:4px;display:inline-flex}@media (width<=1024px){.chronos-role-label{display:none}}@media (width<=768px){.chronos-mobile-menu-btn{display:flex}.chronos-theme-btn-text,.chronos-header-badge,.chronos-header-timezone-badge{display:none}.chronos-main-content{padding:var(--spacing-4)}.chronos-role-selector{max-width:180px;overflow-x:auto}}.chronos-markdown-renderer{font-size:var(--font-size-sm,.875rem);color:var(--color-text-primary);word-break:break-word;line-height:1.6}.chronos-markdown-renderer>:first-child{margin-top:0}.chronos-markdown-renderer>:last-child{margin-bottom:0}.markdown-empty-state{font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted);font-style:italic}.markdown-p{margin:0 0 .5rem}.markdown-h1{font-size:1.15rem;font-weight:var(--font-weight-bold,700);color:var(--color-text-primary);border-bottom:1px solid var(--color-border);margin:.8rem 0 .4rem;padding-bottom:.2rem}.markdown-h2{font-size:1.05rem;font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary);margin:.7rem 0 .35rem}.markdown-h3{font-size:.95rem;font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary);margin:.6rem 0 .3rem}.markdown-h4{font-size:.875rem;font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary);margin:.5rem 0 .25rem}.markdown-bold{font-weight:var(--font-weight-bold,700);color:var(--color-text-primary)}.markdown-italic{font-style:italic}.markdown-link{color:var(--color-primary);text-underline-offset:2px;transition:color var(--transition-fast);text-decoration:underline}.markdown-link:hover{color:var(--color-primary-hover)}.markdown-inline-code{font-family:var(--font-family-mono,monospace);border-radius:var(--radius-sm,4px);background-color:var(--markdown-code-bg,var(--color-bg-muted));color:var(--markdown-code-text,var(--color-primary));border:1px solid var(--color-border-subtle,#ffffff1a);padding:.15em .35em;font-size:.85em}.markdown-pre{background-color:var(--markdown-code-bg,var(--color-bg-muted));border:1px solid var(--color-border);border-radius:var(--radius-md,6px);margin:.6rem 0;padding:.75rem 1rem;overflow-x:auto}.markdown-code-block{font-family:var(--font-family-mono,monospace);color:var(--color-text-primary);font-size:.85rem;line-height:1.45;display:block}.markdown-blockquote{border-left:3px solid var(--markdown-blockquote-border,var(--color-primary));background-color:var(--markdown-blockquote-bg,#3b82f614);border-radius:0 var(--radius-sm,4px) var(--radius-sm,4px) 0;color:var(--color-text-secondary);margin:.6rem 0;padding:.5rem .85rem;font-style:italic}.markdown-ul,.markdown-ol{margin:.4rem 0 .6rem 1.4rem;padding:0}.markdown-li{margin-bottom:.25rem}.markdown-task-item{align-items:flex-start;gap:.45rem;margin-bottom:.3rem;list-style:none;display:flex}.markdown-task-checkbox{cursor:default;accent-color:var(--color-primary);margin-top:.25rem}.markdown-task-text{color:var(--color-text-primary)}.markdown-task-text-done{color:var(--color-text-muted);text-decoration:line-through}.markdown-hr{background-color:var(--color-border);border:0;height:1px;margin:.8rem 0}.chronos-markdown-renderer.clamped-lines{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.markdown-image-container{margin:var(--space-3,.75rem) 0;text-align:center;display:block}.markdown-rendered-img{border-radius:var(--radius-md,6px);border:1px solid var(--color-border-subtle,#ffffff1a);cursor:zoom-in;max-width:100%;height:auto;max-height:480px;transition:transform var(--transition-fast,.2s ease), box-shadow var(--transition-fast,.2s ease);object-fit:contain;background-color:var(--color-bg-secondary,#ffffff08);box-shadow:0 4px 12px #0003}.markdown-rendered-img:hover{transform:scale(1.01);box-shadow:0 6px 16px #0000004d}.markdown-image-caption{font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#9ca3af);margin-top:.35rem;font-style:italic;display:block}.markdown-image-fallback{align-items:center;gap:var(--space-2,.5rem);border-radius:var(--radius-md,6px);color:var(--color-danger,#ef4444);font-size:var(--font-size-xs,.75rem);background-color:#ef44441a;border:1px dashed #ef44444d;margin:.4rem 0;padding:.4rem .75rem;display:inline-flex}.markdown-image-fallback-icon{font-size:1rem}.markdown-image-fallback-text{font-weight:var(--font-weight-medium,500)}.info-tooltip-wrapper{vertical-align:middle;justify-content:center;align-items:center;margin-left:6px;line-height:1;display:inline-flex;position:relative}.info-tooltip-trigger{border-radius:var(--radius-full,9999px);cursor:pointer;color:var(--text-muted,#94a3b8);background:0 0;border:none;outline:none;justify-content:center;align-items:center;padding:2px;transition:color .15s,background-color .15s,transform .15s;display:inline-flex}.info-tooltip-trigger:hover,.info-tooltip-trigger:focus-visible{color:var(--color-primary,#3b82f6);background-color:#3b82f61f;transform:scale(1.08)}.info-tooltip-trigger:focus-visible{box-shadow:0 0 0 2px var(--form-input-focus-ring,#3b82f666)}.info-tooltip-icon{flex-shrink:0}.info-tooltip-popover{z-index:99999;background-color:var(--surface-card,#1e293b);border:1px solid var(--border-default,#94a3b840);border-radius:var(--radius-md,8px);width:290px;max-width:calc(100vw - 24px);color:var(--text-primary,#f8fafc);font-size:var(--font-size-xs,.75rem);text-align:left;pointer-events:auto;box-sizing:border-box;padding:12px 14px;line-height:1.45;animation:.16s cubic-bezier(.16,1,.3,1) tooltipFadeIn;position:fixed;box-shadow:0 12px 28px -4px #00000073,0 8px 12px -6px #00000059}@keyframes tooltipFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.info-tooltip-header{border-bottom:1px solid var(--border-default,#94a3b833);align-items:center;gap:6px;margin-bottom:8px;padding-bottom:8px;display:flex}.info-header-icon{color:var(--color-primary,#3b82f6);flex-shrink:0}.info-tooltip-title{color:var(--text-primary,#f8fafc);letter-spacing:-.01em;font-size:.8rem;font-weight:700}.info-tooltip-body{flex-direction:column;gap:8px;display:flex}.info-micro-block{flex-direction:column;gap:2px;display:flex}.info-block-label{text-transform:uppercase;letter-spacing:.04em;color:var(--color-primary,#3b82f6);font-size:.68rem;font-weight:700}.info-block-text{color:var(--text-secondary,#cbd5e1);margin:0;font-size:.74rem;line-height:1.4}.formula-text{font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);background:var(--surface-ground,#0f172a66);border-radius:var(--radius-sm,4px);border:1px solid var(--border-default,#94a3b826);color:#38bdf8;padding:4px 6px;font-size:.7rem}.info-tooltip-arrow{background-color:var(--surface-card,#1e293b);border:1px solid var(--border-default,#94a3b840);pointer-events:none;width:8px;height:8px;position:absolute;transform:translate(-4px)rotate(45deg)}.posicion-top .info-tooltip-arrow{border-top:none;border-left:none;bottom:-5px}.posicion-bottom .info-tooltip-arrow{border-bottom:none;border-right:none;top:-5px}.chronos-tabs{flex-direction:column;width:100%;display:flex}.chronos-tab-list{box-sizing:border-box;align-items:center;display:flex;position:relative}.chronos-tab-list--pills,.chronos-tab-list:not(.chronos-tab-list--segmented):not(.chronos-tab-list--underline){align-items:center;gap:var(--spacing-2,8px);border-bottom:1px solid var(--tabs-track-border-bottom,var(--color-border));padding-bottom:var(--spacing-2,8px);box-sizing:border-box;width:100%;display:flex;overflow-x:auto}.chronos-tab-list--segmented{background:var(--tabs-track-bg,#0f172ab3);border:1px solid var(--tabs-track-border,var(--color-border));border-radius:var(--radius-lg,8px);gap:3px;width:fit-content;max-width:100%;padding:3px;overflow-x:auto}.chronos-tab-list--underline{border-bottom:1px solid var(--color-border);gap:var(--spacing-4,16px);width:100%;padding-bottom:0;overflow-x:auto}.chronos-tab-trigger{justify-content:center;align-items:center;gap:var(--spacing-2,8px);font-family:inherit;font-weight:var(--font-weight-medium,500);cursor:pointer;transition:all var(--transition-fast,.15s ease);white-space:nowrap;-webkit-user-select:none;user-select:none;box-sizing:border-box;background:0 0;border:none;outline:none;text-decoration:none;display:inline-flex}.chronos-tab-trigger:focus-visible{box-shadow:0 0 0 2px var(--color-border-focus,#3b82f6)}.chronos-tab-trigger:disabled{opacity:.5;cursor:not-allowed}.chronos-tab-list--pills .chronos-tab-trigger,.chronos-tab-list:not(.chronos-tab-list--segmented):not(.chronos-tab-list--underline) .chronos-tab-trigger{padding:var(--tabs-pill-padding,var(--spacing-2) var(--spacing-4));font-size:var(--tabs-pill-font-size,var(--font-size-sm));font-weight:var(--tabs-pill-font-weight,var(--font-weight-semibold));color:var(--tabs-pill-text-inactive,var(--color-text-secondary));background:var(--tabs-pill-bg-inactive,transparent);border-radius:var(--tabs-pill-radius,var(--radius-md));border:none}.chronos-tab-list--pills .chronos-tab-trigger:hover:not(:disabled),.chronos-tab-list:not(.chronos-tab-list--segmented):not(.chronos-tab-list--underline) .chronos-tab-trigger:hover:not(:disabled){color:var(--tabs-pill-hover-text,var(--color-text-primary));background:var(--tabs-pill-hover-bg,#ffffff0f)}.chronos-tab-list--pills .chronos-tab-trigger.active,.chronos-tab-list:not(.chronos-tab-list--segmented):not(.chronos-tab-list--underline) .chronos-tab-trigger.active{background:var(--tabs-pill-bg-active,var(--color-primary));color:var(--tabs-pill-text-active,#fff);font-weight:var(--tabs-pill-font-weight,var(--font-weight-semibold));box-shadow:var(--tabs-pill-active-shadow,0 1px 3px #00000040)}.chronos-tab-list--segmented .chronos-tab-trigger{font-size:var(--font-size-xs,12px);color:var(--tabs-item-text,var(--color-text-secondary));border-radius:var(--radius-md,6px);padding:6px 14px}.chronos-tab-list--segmented .chronos-tab-trigger:hover:not(:disabled){color:var(--tabs-item-hover-text,var(--color-text-primary));background:var(--tabs-item-hover-bg,#ffffff0d)}.chronos-tab-list--segmented .chronos-tab-trigger.active{background:var(--tabs-item-active-bg,var(--color-bg-elevated));color:var(--tabs-item-active-text,#fff);font-weight:var(--font-weight-semibold,600);box-shadow:var(--tabs-item-active-shadow,0 1px 3px #0000004d)}.chronos-tab-list--underline .chronos-tab-trigger{padding:var(--spacing-3,12px) var(--spacing-2,8px);font-size:var(--font-size-sm,14px);color:var(--tabs-item-text,var(--color-text-secondary));border-bottom:2px solid #0000;margin-bottom:-1px}.chronos-tab-list--underline .chronos-tab-trigger:hover:not(:disabled){color:var(--tabs-item-hover-text,var(--color-text-primary))}.chronos-tab-list--underline .chronos-tab-trigger.active{color:var(--tabs-indicator-color,var(--color-primary));border-bottom-color:var(--tabs-indicator-color,var(--color-primary));font-weight:var(--font-weight-semibold,600)}.chronos-tab-icon{justify-content:center;align-items:center;font-size:.9em;display:inline-flex}.chronos-tab-badge{border-radius:var(--radius-full,9999px);font-size:11px;font-weight:var(--font-weight-bold,700);background:var(--color-bg-elevated,#0f172acc);color:var(--color-text-secondary,#94a3b8);transition:all var(--transition-fast,.15s ease);justify-content:center;align-items:center;padding:1px 7px;display:inline-flex}.chronos-tab-trigger.active .chronos-tab-badge{color:#fff;background:#ffffff40}.chronos-tab-content{margin-top:var(--spacing-4,16px);width:100%}.alerta-desborde-sprint{align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);border-radius:var(--radius-lg);background-color:var(--color-status-danger-bg,#ef44441f);border:1px solid var(--color-status-danger);animation:.2s ease-out fadeIn;display:flex}.tarjeta-recomendacion-reasignacion{align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-4);border-radius:var(--radius-lg);background-color:var(--color-status-info-bg,#3b82f614);border:1px solid var(--color-status-info);animation:.2s ease-out fadeIn;display:flex}.badge-nivelacion-recurso{background-color:var(--color-status-warning-bg,#f59e0b26);color:var(--color-status-warning);border:1px solid var(--color-status-warning);font-weight:var(--font-weight-semibold);font-size:var(--font-size-2xs);border-radius:var(--radius-full);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.badge-dependencia-directa{background-color:var(--color-status-info-bg,#3b82f61f);color:var(--color-status-info);border:1px solid var(--color-status-info);font-weight:var(--font-weight-semibold);font-size:var(--font-size-2xs);border-radius:var(--radius-full);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.badge-tarea-disparadora{background-color:var(--color-primary-subtle,#3b82f62e);color:var(--color-primary);border:1px solid var(--color-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-2xs);border-radius:var(--radius-full);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}:root{--gantt-baseline-0-color:#06b6d4;--gantt-baseline-0-border:#0891b2;--gantt-baseline-1-color:#a855f7;--gantt-baseline-1-border:#9333ea;--gantt-baseline-2-color:#f59e0b;--gantt-baseline-2-border:#d97706;--gantt-connector-lag-bg:#0f172a;--gantt-connector-lag-text:#f8fafc;--gantt-connector-lag-border:#334155;--gantt-critical-badge-bg:#ef444426;--gantt-critical-badge-text:#ef4444;--gantt-critical-badge-border:#ef444466;--gantt-bar-critical-bg:#ef4444;--gantt-bar-critical-border:#dc2626;--gantt-bar-critical-glow:0 0 10px #ef444480;--gantt-dependency-critical-stroke:#ef4444;--gantt-bar-dimmed-opacity:.35;--gantt-float-badge-bg:#10b9811f;--gantt-float-badge-text:#10b981;--gantt-float-badge-border:#10b98159}[data-theme=dark]{--gantt-connector-lag-bg:#020617;--gantt-connector-lag-text:#f1f5f9;--gantt-connector-lag-border:#475569;--gantt-bar-critical-bg:#f87171;--gantt-bar-critical-border:#ef4444;--gantt-bar-critical-glow:0 0 12px #f8717199;--gantt-dependency-critical-stroke:#f87171;--gantt-bar-dimmed-opacity:.3}.gantt-baseline-selector-bar{background:var(--color-bg-surface-elevated,#1e293b);border:1px solid var(--color-border-subtle,#334155);border-radius:var(--radius-lg,8px);box-shadow:var(--shadow-sm,0 1px 2px #0000001a);align-items:center;gap:8px;padding:4px 10px;font-size:.75rem;display:inline-flex}.gantt-baseline-chip{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-text-secondary,#94a3b8);background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:3px 8px;font-weight:600;transition:all .2s;display:inline-flex}.gantt-baseline-chip:hover{color:var(--color-text-primary,#f8fafc);background:#ffffff0f}.gantt-baseline-chip.is-active-0{color:#22d3ee;background:#06b6d426;border-color:#06b6d466}.gantt-baseline-chip.is-active-1{color:#c084fc;background:#a855f726;border-color:#a855f766}.gantt-baseline-chip.is-active-2{color:#fbbf24;background:#f59e0b26;border-color:#f59e0b66}.gantt-baseline-bar-0{background-color:var(--gantt-baseline-0-color);pointer-events:none;z-index:2;border-radius:2px;height:5px;position:absolute;box-shadow:0 1px 2px #06b6d44d}.gantt-baseline-bar-1{border:1.5px dashed var(--gantt-baseline-1-color);box-sizing:border-box;pointer-events:none;z-index:2;background-color:#0000;border-radius:2px;height:6px;position:absolute}.gantt-baseline-bar-2{background:repeating-linear-gradient(45deg, var(--gantt-baseline-2-color), var(--gantt-baseline-2-color) 3px, transparent 3px, transparent 7px);border:1px solid var(--gantt-baseline-2-border);box-sizing:border-box;pointer-events:none;z-index:2;border-radius:2px;height:6px;position:absolute}.gantt-wbs-critical-badge{background-color:var(--gantt-critical-badge-bg);color:var(--gantt-critical-badge-text);border:1px solid var(--gantt-critical-badge-border);text-transform:uppercase;letter-spacing:.02em;border-radius:9999px;flex-shrink:0;align-items:center;gap:3px;padding:.1rem .35rem;font-size:.62rem;font-weight:700;display:inline-flex}.gantt-wbs-float-badge{background-color:var(--gantt-float-badge-bg);color:var(--gantt-float-badge-text);border:1px solid var(--gantt-float-badge-border);border-radius:9999px;flex-shrink:0;align-items:center;gap:2px;padding:.1rem .35rem;font-size:.62rem;font-weight:600;display:inline-flex}.gantt-bar-critical{background-color:var(--gantt-bar-critical-bg)!important;border:1.5px solid var(--gantt-bar-critical-border)!important;box-shadow:var(--gantt-bar-critical-glow)!important;color:#fff!important;z-index:3!important}.gantt-bar-dimmed{opacity:var(--gantt-bar-dimmed-opacity)!important;filter:grayscale(.5)!important;transition:opacity .25s,filter .25s!important}.gantt-dependency-connector.is-critical path:nth-of-type(2){stroke:var(--gantt-dependency-critical-stroke)!important;stroke-width:2.5px!important;filter:drop-shadow(0 0 4px var(--gantt-bar-critical-glow))!important}.gantt-dependency-connector.is-critical polygon{fill:var(--gantt-dependency-critical-stroke)!important;filter:drop-shadow(0 0 3px var(--gantt-bar-critical-glow))!important}.manage-phases-content{gap:var(--spacing-4);flex-direction:column;max-height:75vh;padding:20px 24px;display:flex;overflow-y:auto}.manage-phases-add-section{background:var(--surface-ground,#ffffff08);border:1px dashed var(--border-default,var(--color-border));border-radius:var(--radius-lg,8px);padding:var(--spacing-4);gap:var(--spacing-3);flex-direction:column;display:flex}.manage-phases-add-grid{gap:var(--spacing-3);grid-template-columns:120px 1fr 140px;align-items:flex-end;display:grid}.manage-phases-input{background:var(--form-input-bg,var(--color-bg-card));border:1.5px solid var(--form-input-border,var(--color-border));border-radius:var(--radius-md,6px);width:100%;color:var(--form-input-text,var(--color-text-primary));font-size:var(--font-size-sm,.875rem);outline:none;padding:8px 12px;transition:border-color .15s,box-shadow .15s}.manage-phases-input:focus{border-color:var(--form-input-border-focus,var(--color-primary));box-shadow:0 0 0 3px var(--form-input-focus-ring,#3b82f633)}.manage-phases-list{flex-direction:column;gap:8px;display:flex}.manage-phase-card{background:var(--surface-card,var(--color-bg-card));border:1px solid var(--border-default,var(--color-border));border-radius:var(--radius-md,6px);justify-content:space-between;align-items:center;padding:10px 14px;transition:border-color .15s,background .15s;display:flex}.manage-phase-card:hover{border-color:var(--color-primary)}.manage-phase-left{flex:1;align-items:center;gap:12px;display:flex}.manage-phase-color-dot{border-radius:50%;flex-shrink:0;width:14px;height:14px}.manage-phase-info{flex-direction:column;gap:2px;display:flex}.manage-phase-name-text{color:var(--text-primary,var(--color-text-primary));font-weight:600;font-size:var(--font-size-sm,.875rem)}.manage-phase-actions{align-items:center;gap:8px;display:flex}.absences-modal-backdrop{background-color:var(--color-bg-backdrop,#000000a6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;padding:var(--spacing-4,16px);justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) absencesFadeIn;display:flex;position:fixed;inset:0}.absences-modal-container{background-color:var(--color-bg-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,14px);box-shadow:var(--shadow-2xl,0 25px 50px -12px #00000040);width:100%;max-width:860px;max-height:90vh;color:var(--color-text-primary,#0f172a);flex-direction:column;animation:.22s cubic-bezier(.16,1,.3,1) absencesZoomIn;display:flex;overflow:hidden}@keyframes absencesFadeIn{0%{opacity:0}to{opacity:1}}@keyframes absencesZoomIn{0%{opacity:0;transform:scale(.96)translateY(6px)}to{opacity:1;transform:scale(1)translateY(0)}}.absences-modal-header{padding:var(--spacing-5,20px) var(--spacing-6,24px);border-bottom:1px solid var(--color-border,#e2e8f0);background:var(--color-bg-elevated,#f8fafc);justify-content:space-between;align-items:center;display:flex}.absences-modal-title{align-items:center;gap:var(--spacing-3,12px);font-size:var(--font-size-lg,1.15rem);color:var(--color-text-primary,#0f172a);margin:0;font-weight:700;display:flex}.absences-modal-close-btn{cursor:pointer;border-radius:var(--radius-md,6px);color:var(--color-text-muted,#64748b);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;transition:background-color .15s,color .15s;display:flex}.absences-modal-close-btn:hover{background-color:var(--color-bg-muted,#f1f5f9);color:var(--color-text-primary,#0f172a)}.absences-modal-body{padding:var(--spacing-6,24px);gap:var(--spacing-6,24px);flex-direction:column;display:flex;overflow-y:auto}.absences-form-card{background-color:var(--color-bg-elevated,#f8fafc);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-lg,10px);padding:var(--spacing-4,16px) var(--spacing-5,20px);gap:var(--spacing-4,16px);flex-direction:column;display:flex}.absences-form-title{font-size:var(--font-size-sm,.9rem);color:var(--color-text-secondary,#334155);align-items:center;gap:8px;margin:0;font-weight:600;display:flex}.absences-form-grid{gap:var(--spacing-3,12px);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.absences-form-group{flex-direction:column;gap:6px;display:flex}.absences-form-label{font-size:var(--font-size-xs,.78rem);color:var(--color-text-secondary,#475569);font-weight:600}.absences-input,.absences-select,.absences-textarea{border:1px solid var(--color-border,#cbd5e1);border-radius:var(--radius-md,6px);background-color:var(--color-bg-surface,#fff);color:var(--color-text-primary,#0f172a);font-size:var(--font-size-sm,.875rem);box-sizing:border-box;width:100%;padding:8px 12px;transition:border-color .15s,box-shadow .15s}.absences-input:focus,.absences-select:focus,.absences-textarea:focus{border-color:var(--color-primary,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.absences-table-container{border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-lg,10px);background-color:var(--color-bg-surface,#fff);overflow:hidden}.absences-table{border-collapse:collapse;width:100%;font-size:var(--font-size-xs,.8rem);text-align:left}.absences-table th{background-color:var(--color-bg-elevated,#f8fafc);color:var(--color-text-secondary,#475569);border-bottom:1px solid var(--color-border,#e2e8f0);padding:10px 14px;font-weight:600}.absences-table td{border-bottom:1px solid var(--color-border-subtle,#f1f5f9);vertical-align:middle;color:var(--color-text-primary,#0f172a);padding:12px 14px}.absences-table tr:last-child td{border-bottom:none}.absences-table tr:hover td{background-color:var(--color-bg-muted,#f1f5f980)}.absence-badge{border-radius:var(--radius-full,9999px);white-space:nowrap;align-items:center;gap:5px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.absence-badge-licencia{background-color:var(--color-status-danger-bg,#fef2f2);color:var(--color-status-danger,#ef4444);border:1px solid #ef444440}.absence-badge-vacaciones{background-color:var(--color-status-info-bg,#eff6ff);color:var(--color-status-info,#2563eb);border:1px solid #2563eb40}.absence-badge-permiso{background-color:var(--color-status-warning-bg,#fffbeb);color:var(--color-status-warning,#d97706);border:1px solid #d9770640}.absences-modal-footer{padding:var(--spacing-4,16px) var(--spacing-6,24px);border-top:1px solid var(--color-border,#e2e8f0);background-color:var(--color-bg-elevated,#f8fafc);justify-content:flex-end;align-items:center;gap:var(--spacing-3,12px);display:flex}.absences-modal-error-banner{transition:all .2s;box-shadow:0 1px 3px #ef44441a}@media (width<=640px){.absences-modal-error-banner{flex-direction:column;align-items:flex-start!important}.absences-modal-error-banner button{align-self:flex-end}}.chronos-markdown-editor{border:1px solid var(--markdown-border,var(--color-border));border-radius:var(--radius-md,6px);background-color:var(--color-bg-base);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.chronos-markdown-editor:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px #2563eb40}.markdown-editor-tabs-bar{background-color:var(--markdown-toolbar-bg,var(--color-bg-surface));border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:4px 8px;display:flex}.markdown-tabs-group{align-items:center;gap:4px;display:flex}.markdown-tab-btn{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);color:var(--color-text-secondary);border-radius:var(--radius-sm,4px);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.markdown-tab-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-hover)}.markdown-tab-btn.active{color:var(--color-primary);background-color:var(--color-bg-muted);font-weight:var(--font-weight-semibold,600)}.markdown-format-badge{color:var(--color-text-muted);font-size:.7rem;font-weight:var(--font-weight-medium,500);border-radius:var(--radius-sm,4px);background-color:var(--color-bg-muted);padding:2px 6px}.markdown-toolbar{background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border-subtle,#ffffff0f);flex-wrap:wrap;align-items:center;gap:2px;padding:4px 8px;display:flex}.markdown-toolbar-btn{width:28px;height:28px;color:var(--color-text-secondary);border-radius:var(--radius-sm,4px);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.markdown-toolbar-btn:hover:not(:disabled){background-color:var(--color-bg-hover);color:var(--color-text-primary)}.markdown-toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.markdown-toolbar-separator{background-color:var(--color-border);width:1px;height:18px;margin:0 4px}.markdown-editor-body{flex-direction:column;display:flex;position:relative}.markdown-textarea{width:100%;font-family:inherit;font-size:var(--font-size-sm,.875rem);color:var(--form-input-text,var(--color-text-primary));background-color:var(--form-input-bg,var(--color-bg-base));resize:vertical;box-sizing:border-box;border:none;outline:none;padding:.75rem;line-height:1.5}.markdown-textarea:disabled{background-color:var(--color-bg-muted);cursor:not-allowed;opacity:.7}.markdown-textarea.is-dragging{outline:2px dashed var(--color-primary);background-color:#2563eb0d;box-shadow:inset 0 0 10px #2563eb1a}.markdown-preview-pane{background-color:var(--color-bg-base);box-sizing:border-box;padding:.75rem;overflow-y:auto}.markdown-icon-spin{animation:1s linear infinite markdown-spin}@keyframes markdown-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.markdown-toolbar-btn-template{width:auto;color:var(--color-primary);background-color:#2563eb14;border:1px solid #2563eb33;gap:2px;padding:0 6px}.markdown-toolbar-btn-template:hover:not(:disabled){color:var(--color-primary);background-color:#2563eb29}.markdown-upload-error-banner{color:var(--color-danger,#ef4444);font-size:var(--font-size-xs,.75rem);background-color:#ef44441a;border-bottom:1px solid #ef444433;align-items:center;gap:6px;padding:6px 12px;display:flex}.markdown-tab-readonly-badge{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary);align-items:center;gap:6px;padding:4px 8px;display:inline-flex}.markdown-editor-readonly{background-color:var(--color-bg-surface);border-color:var(--color-border)}.confirm-modal-overlay{padding:var(--spacing-4,16px);background-color:var(--modal-overlay-bg,#000000bf);-webkit-backdrop-filter:blur(4px);justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) confirmModalFadeIn;display:flex;position:fixed;inset:0}@keyframes confirmModalFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.confirm-modal-dialog{background-color:var(--modal-surface-bg,var(--color-bg-surface,#1e293b));border:1px solid var(--modal-border,var(--color-border,#334155));border-radius:var(--radius-xl,16px);width:100%;box-shadow:var(--shadow-xl,0 25px 50px -12px #00000080);flex-direction:column;max-height:90vh;display:flex;overflow:hidden}.confirm-modal-header{padding:var(--spacing-5,20px) var(--spacing-6,24px) var(--spacing-3,12px);justify-content:space-between;align-items:center;gap:var(--spacing-3,12px);display:flex}.confirm-modal-header-left{align-items:center;gap:var(--spacing-3,12px);flex:1;display:flex}.confirm-modal-icon-badge{border-radius:var(--radius-lg,10px);justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;transition:transform .2s;display:flex}.confirm-modal-icon-badge--danger{color:var(--color-status-danger,#ef4444);background-color:#ef444426;border:1px solid #ef44444d}.confirm-modal-icon-badge--warning{color:var(--color-status-warning,#f59e0b);background-color:#f59e0b26;border:1px solid #f59e0b4d}.confirm-modal-icon-badge--primary{color:var(--color-primary,#3b82f6);background-color:#3b82f626;border:1px solid #3b82f64d}.confirm-modal-title{font-size:var(--font-size-base,1.05rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#f8fafc);margin:0;line-height:1.3}.confirm-modal-close-btn{color:var(--color-text-muted,#94a3b8);cursor:pointer;padding:var(--spacing-1,4px);border-radius:var(--radius-sm,4px);background:0 0;border:none;justify-content:center;align-items:center;transition:color .15s,background-color .15s;display:flex}.confirm-modal-close-btn:hover:not(:disabled){color:var(--color-text-primary,#f8fafc);background-color:#ffffff14}.confirm-modal-close-btn:disabled{opacity:.4;cursor:not-allowed}.confirm-modal-body{padding:var(--spacing-3,12px) var(--spacing-6,24px) var(--spacing-5,20px);gap:var(--spacing-3,12px);color:var(--color-text-primary,#cbd5e1);font-size:var(--font-size-sm,.875rem);flex-direction:column;flex:1;line-height:1.5;display:flex;overflow-y:auto}.confirm-modal-message{color:var(--color-text-primary,#f1f5f9);margin:0}.confirm-modal-detail-box{background-color:var(--color-bg-base,#0f172a99);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,8px);padding:var(--spacing-3,12px);font-size:var(--font-size-xs,.8125rem);color:var(--color-text-secondary,#94a3b8)}.confirm-modal-error-banner{border-radius:var(--radius-md,8px);padding:var(--spacing-3,12px);color:var(--color-status-danger,#ef4444);font-size:var(--font-size-xs,.8125rem);align-items:center;gap:var(--spacing-2,8px);background-color:#ef44441f;border:1px solid #ef444466;animation:.2s confirmModalFadeIn;display:flex}.confirm-modal-footer{justify-content:flex-end;align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-4,16px) var(--spacing-6,24px);border-top:1px solid var(--modal-footer-border,var(--color-border,#334155));background-color:var(--modal-footer-bg,var(--color-bg-elevated,#0f172a));display:flex}.task-attachments-container{gap:var(--space-4,1rem);flex-direction:column;width:100%;display:flex}.task-attachments-header{border-bottom:1px solid var(--color-border-subtle,#e2e8f0);padding-bottom:var(--space-2,.5rem);justify-content:space-between;align-items:center;display:flex}.task-attachments-title{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#0f172a);margin:0}.task-attachments-count{font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#64748b);background-color:var(--color-surface-subtle,#f1f5f9);border-radius:var(--radius-full,9999px);padding:2px 8px}[data-theme=dark] .task-attachments-count{background-color:#ffffff14}.attachments-alert{align-items:center;gap:var(--space-2,.5rem);padding:var(--space-2,.5rem) var(--space-3,.75rem);border-radius:var(--radius-md,.375rem);font-size:var(--font-size-xs,.75rem);display:flex}.attachments-alert.error{color:var(--color-status-danger,#ef4444);background-color:#ef44441a;border:1px solid #ef444440}.attachments-alert.success{color:var(--color-status-success,#10b981);background-color:#10b9811a;border:1px solid #10b98140}.attachments-upload-section{gap:var(--space-2,.5rem);flex-direction:column;display:flex}.attachments-dropzone{border:2px dashed var(--color-border,#cbd5e1);border-radius:var(--radius-lg,.5rem);padding:var(--space-4,1rem) var(--space-3,.75rem);text-align:center;background-color:var(--color-surface-subtle,#f8fafc);cursor:pointer;transition:all .2s}[data-theme=dark] .attachments-dropzone{border-color:var(--color-border-subtle,#334155);background-color:#0f172a4d}.attachments-dropzone:hover,.attachments-dropzone.dragging{border-color:var(--color-primary,#2563eb);background-color:#2563eb0d}.dropzone-content{align-items:center;gap:var(--space-1,.25rem);flex-direction:column;display:flex}.dropzone-icon{color:var(--color-primary,#2563eb);margin-bottom:2px}.dropzone-title{font-size:var(--font-size-xs,.8125rem);color:var(--color-text-secondary,#334155)}.dropzone-hint{color:var(--color-text-muted,#64748b);font-size:.6875rem}.attachments-confidential-toggle{align-items:center;display:flex}.confidential-checkbox-label{align-items:center;gap:var(--space-2,.5rem);font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#475569);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.attachments-list{gap:var(--space-2,.5rem);flex-direction:column;max-height:240px;padding-right:4px;display:flex;overflow-y:auto}.attachment-item-card{align-items:center;gap:var(--space-3,.75rem);padding:var(--space-2,.5rem) var(--space-3,.75rem);background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-md,.375rem);transition:border-color .15s,background-color .15s;display:flex}[data-theme=dark] .attachment-item-card{background-color:var(--color-surface-elevated,#1e293b);border-color:var(--color-border-subtle,#334155)}.attachment-item-card.is-confidential{border-left:3px solid var(--color-status-warning,#f59e0b)}.attachment-icon-col{border-radius:var(--radius-sm,.25rem);background-color:var(--color-surface-subtle,#f1f5f9);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}[data-theme=dark] .attachment-icon-col{background-color:#ffffff0d}.attachment-icon.pdf{color:#dc2626}.attachment-icon.image{color:#2563eb}.attachment-icon.zip{color:#d97706}.attachment-icon.code{color:#16a34a}.attachment-icon.generic{color:#64748b}.attachment-meta-col{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.attachment-title-row{align-items:center;gap:var(--space-2,.5rem);display:flex}.attachment-filename{font-size:var(--font-size-xs,.8125rem);font-weight:var(--font-weight-medium,500);color:var(--color-text-primary,#0f172a);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.confidential-badge{align-items:center;gap:3px;padding:1px 5px;font-size:.625rem;display:inline-flex}.attachment-details-row{align-items:center;gap:var(--space-2,.5rem);color:var(--color-text-muted,#64748b);font-size:.6875rem;display:flex}.attachment-actions-col{align-items:center;gap:2px;display:flex}.attachment-action-btn{color:var(--color-text-muted,#64748b);padding:4px}.attachment-action-btn:hover{color:var(--color-primary,#2563eb)}.attachment-action-btn.is-danger:hover{color:var(--color-status-danger,#ef4444)}.attachments-empty-state{padding:var(--space-6,1.5rem);color:var(--color-text-muted,#94a3b8);font-size:var(--font-size-xs,.75rem);text-align:center;justify-content:center;align-items:center;gap:var(--space-2,.5rem);flex-direction:column;display:flex}.empty-icon{opacity:.4}.attachments-loading{justify-content:center;align-items:center;gap:var(--space-2,.5rem);padding:var(--space-4,1rem);font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#64748b);display:flex}.ref-modal-overlay{background-color:var(--color-modal-backdrop,#0f172aa6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1070;padding:var(--space-4,1rem);justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) refModalFadeIn;display:flex;position:fixed;inset:0}.ref-modal-container{background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,1rem);box-shadow:var(--shadow-2xl,0 25px 50px -12px #00000040);width:100%;max-width:580px;color:var(--color-text-primary,#0f172a);flex-direction:column;display:flex;overflow:hidden}[data-theme=dark] .ref-modal-container{background-color:var(--color-surface-elevated,#1e293b);border-color:var(--color-border-subtle,#334155)}.ref-modal-header{padding:var(--space-4,1rem) var(--space-6,1.5rem);border-bottom:1px solid var(--color-border-subtle,#f1f5f9);background-color:var(--color-surface-subtle,#f8fafc);justify-content:space-between;align-items:flex-start;display:flex}[data-theme=dark] .ref-modal-header{border-bottom-color:var(--color-border-subtle,#334155);background-color:#1e293b80}.ref-modal-title-box{flex-direction:column;gap:4px;display:flex}.ref-badge-indicator{font-size:.6875rem;font-weight:var(--font-weight-semibold,600);color:var(--color-status-danger,#dc2626);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:4px;display:inline-flex}.ref-modal-title{font-size:var(--font-size-md,1rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#0f172a);margin:0}.ref-modal-close-btn{color:var(--color-text-muted,#64748b);cursor:pointer;padding:var(--space-1,.25rem);border-radius:var(--radius-sm,.25rem);background:0 0;border:none}.ref-modal-close-btn:hover{color:var(--color-text-primary,#0f172a)}.ref-modal-body{padding:var(--space-5,1.25rem) var(--space-6,1.5rem);max-height:480px;overflow-y:auto}.ref-modal-content{gap:var(--space-4,1rem);flex-direction:column;display:flex}.ref-rejection-card{border-radius:var(--radius-lg,.5rem);padding:var(--space-3,.75rem) var(--space-4,1rem);gap:var(--space-2,.5rem);background-color:#ef44440f;border:1px solid #ef444440;flex-direction:column;display:flex}.ref-rejection-header{align-items:center;gap:var(--space-2,.5rem);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-status-danger,#dc2626);text-transform:uppercase;display:flex}.ref-rejection-text{font-size:var(--font-size-sm,.875rem);line-height:var(--line-height-relaxed,1.6);color:var(--color-text-primary,#0f172a);white-space:pre-wrap}.ref-criteria-card{background-color:var(--color-surface-subtle,#f8fafc);border:1px solid var(--color-border-subtle,#e2e8f0);border-radius:var(--radius-lg,.5rem);padding:var(--space-3,.75rem) var(--space-4,1rem);gap:var(--space-1,.25rem);flex-direction:column;display:flex}[data-theme=dark] .ref-criteria-card{border-color:var(--color-border-subtle,#334155);background-color:#0f172a4d}.ref-criteria-header{align-items:center;gap:var(--space-2,.5rem);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary,#475569);text-transform:uppercase;display:flex}.ref-criteria-text{font-size:var(--font-size-xs,.8125rem);line-height:var(--line-height-relaxed,1.55);color:var(--color-text-secondary,#334155);white-space:pre-wrap}.ref-meta-grid{gap:var(--space-3,.75rem);font-size:var(--font-size-xs,.75rem);padding-top:var(--space-2,.5rem);grid-template-columns:repeat(2,1fr);display:grid}.ref-meta-item{flex-direction:column;gap:2px;display:flex}.ref-meta-label{color:var(--color-text-muted,#64748b)}.ref-meta-val{color:var(--color-text-primary,#0f172a);font-weight:var(--font-weight-medium,500)}.ref-modal-footer{padding:var(--space-3,.75rem) var(--space-6,1.5rem);border-top:1px solid var(--color-border-subtle,#f1f5f9);background-color:var(--color-surface-subtle,#f8fafc);justify-content:flex-end;display:flex}[data-theme=dark] .ref-modal-footer{border-top-color:var(--color-border-subtle,#334155);background-color:#1e293b80}@keyframes refModalFadeIn{0%{opacity:0}to{opacity:1}}.task-modal-form{flex-direction:column;width:100%;height:100%;display:flex}.task-modal-body{flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.task-modal-top-tabs-bar{z-index:20;align-items:center;gap:var(--spacing-2,8px);background-color:var(--modal-surface-bg,var(--color-bg-surface,#fff));border-bottom:1px solid var(--modal-header-border,var(--color-border,#e2e8f0));flex-shrink:0;padding:10px 16px;display:flex;position:sticky;top:0}.task-modal-top-tab-btn{color:var(--color-text-secondary,#64748b);background:var(--modal-tab-bg-idle,#ffffff0a);border-radius:var(--radius-md,6px);cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;padding:8px 14px;font-size:.82rem;font-weight:600;transition:all .15s ease-in-out;display:inline-flex}.task-modal-top-tab-btn:hover{color:var(--color-text-primary,#0f172a);background:var(--color-bg-hover,#0000000d)}.task-modal-top-tab-btn.active{color:var(--color-primary,#2563eb);background:var(--color-primary-subtle,#2563eb14);border-color:var(--color-primary,#2563eb);box-shadow:0 1px 2px #2563eb1a}.task-modal-tab-badge{background-color:var(--color-bg-subtle,#e2e8f0);min-width:20px;height:20px;color:var(--color-text-secondary,#475569);border-radius:9999px;justify-content:center;align-items:center;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-flex}.task-modal-top-tab-btn.active .task-modal-tab-badge{background-color:var(--color-primary,#2563eb);color:#fff}.task-modal-tab-content-container{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-bg) var(--scrollbar-track-bg);flex-direction:column;gap:16px;max-height:calc(85vh - 190px);padding:16px 20px 24px;display:flex;overflow-y:auto}.task-modal-tab-content-container::-webkit-scrollbar{width:var(--scrollbar-width-thin,6px);height:var(--scrollbar-width-thin,6px)}.task-modal-tab-content-container::-webkit-scrollbar-track{background:var(--scrollbar-track-bg,transparent);border-radius:var(--scrollbar-radius,9999px)}.task-modal-tab-content-container::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-bg);border-radius:var(--scrollbar-radius,9999px);background-clip:padding-box;border:1px solid #0000}.task-modal-tab-content-container::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}.task-modal-tabpanel{flex-direction:column;gap:16px;width:100%;display:flex}.task-modal-tabpanel[hidden]{display:none!important}.task-modal-dds-gate-card{border-radius:var(--radius-md,8px);border:1px solid var(--color-border);background-color:var(--color-bg-subtle,#ffffff08);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.task-modal-dds-gate-card.passed{background-color:#10b98114;border-color:#10b98166}.task-modal-dds-gate-card.blocked{background-color:#f59e0b14;border-color:#f59e0b66}.task-modal-error-banner{border:1px solid var(--color-danger);color:var(--color-danger);background:#f43f5e1f;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-size:.85rem;font-weight:500;display:flex}.task-modal-section-card{background:var(--color-bg-subtle,#ffffff08);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.task-modal-section-header{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);align-items:center;gap:6px;font-size:.72rem;font-weight:700;display:flex}.task-modal-grid-1{grid-template-columns:1fr;gap:12px;display:grid}.task-modal-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.task-modal-grid-1-2{grid-template-columns:minmax(200px,230px) 1fr;gap:12px;display:grid}.task-modal-grid-3{grid-template-columns:1fr 1fr 1fr;gap:12px;display:grid}@media (width<=640px){.task-modal-grid-2,.task-modal-grid-1-2,.task-modal-grid-3{grid-template-columns:1fr}}.task-modal-field{flex-direction:column;gap:6px;min-width:0;display:flex}.task-modal-field-header{box-sizing:border-box;justify-content:space-between;align-items:center;min-height:24px;margin-bottom:4px;display:flex}.task-modal-label{color:var(--color-text-secondary);align-items:center;gap:6px;font-size:.75rem;font-weight:600;display:flex}.task-modal-input,.task-modal-select{border:1px solid var(--form-input-border,var(--color-border));background-color:var(--form-input-bg,var(--color-bg-elevated));height:38px;color:var(--form-input-text,var(--color-text-primary));box-sizing:border-box;border-radius:6px;outline:none;width:100%;min-width:0;max-width:100%;padding:0 12px;font-size:.85rem;transition:border-color .15s,box-shadow .15s}.task-modal-input:focus,.task-modal-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--form-input-focus-ring,#3b82f640)}.task-modal-input.disabled-context,.task-modal-input:disabled,.task-modal-select:disabled{opacity:.65;cursor:not-allowed;background-color:var(--color-bg-subtle,#0000000d)}.feedback-sucesora-bloqueada{color:var(--color-primary);background:#2563eb14;border:1px solid #2563eb4d;border-radius:6px;align-items:flex-start;gap:8px;padding:9px 12px;font-size:.78rem;line-height:1.4;display:flex}.form-control-dual{align-items:center;gap:8px;width:100%;display:flex}.form-control-dual .dual-date{flex:1.4;min-width:0}.form-control-dual .dual-time{flex:1;min-width:0}.task-modal-warning-jornada{color:#f59e0b;background:#f59e0b1f;border:1px solid #f59e0b66;border-radius:8px;align-items:flex-start;gap:8px;padding:10px 14px;font-size:.8rem;font-weight:500;line-height:1.4;display:flex}.task-modal-footer-actions{justify-content:flex-end;align-items:center;gap:10px;width:100%;display:flex}.task-modal-milestone-card{border-radius:var(--radius-md,8px);background:var(--color-milestone-bg,#f59e0b14);border:1px solid var(--color-milestone-border,#f59e0b4d);transition:all var(--transition-fast,.15s cubic-bezier(.4, 0, .2, 1));justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.task-modal-milestone-card.active{background:var(--color-milestone-bg,#f59e0b26);box-shadow:0 0 12px var(--color-milestone-glow,#f59e0b40)}.task-modal-milestone-toggle-label{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-text-primary);align-items:center;gap:10px;font-size:.85rem;font-weight:600;display:flex}.task-modal-milestone-checkbox{width:18px;height:18px;accent-color:var(--color-milestone,#f59e0b);cursor:pointer}.task-modal-milestone-badge{background:var(--color-milestone,#f59e0b);color:#1a1a24;text-transform:uppercase;letter-spacing:.04em;border-radius:9999px;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.task-modal-milestone-subtext{color:var(--color-text-secondary);font-size:.75rem}.task-modal-input.milestone-locked{background-color:var(--color-bg-subtle,#0000000d);opacity:.75;cursor:not-allowed;border-color:var(--color-milestone-border,#f59e0b4d)}.btn-nueva-fase-on-the-fly{border:1px dashed var(--color-border);color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.btn-nueva-fase-on-the-fly:hover{background-color:var(--color-bg-muted);border-color:var(--color-primary);color:var(--color-primary-hover,var(--color-primary))}.btn-nueva-fase-on-the-fly:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.quick-phase-dialog-content{padding:var(--spacing-2) 0}.task-modal-badge-estimado{font-size:.68rem;font-weight:var(--font-weight-semibold,600);border-radius:var(--radius-sm,4px);background-color:var(--color-primary-light,#2563eb1f);color:var(--color-primary,#2563eb);border:1px solid var(--color-primary-border,#2563eb40);letter-spacing:.02em;align-items:center;margin-left:0;padding:2px 6px;display:inline-flex}.task-modal-input.disabled-context,.task-modal-select.disabled-context,.task-modal-textarea.disabled-context,select:disabled,input:disabled,textarea:disabled{opacity:.82;-webkit-user-select:text;user-select:text;cursor:not-allowed!important;background-color:var(--color-bg-muted,#94a3b814)!important;color:var(--color-text-secondary,#94a3b8)!important;border-color:var(--color-border-subtle,#94a3b833)!important}.task-modal-content-tabs-container{margin-top:var(--spacing-2,8px);margin-bottom:var(--spacing-3,12px);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);background-color:var(--color-bg-surface);flex-direction:column;display:flex;overflow:hidden}.task-modal-content-tabs-bar{background-color:var(--color-bg-subtle,#00000008);border-bottom:1px solid var(--color-border);align-items:center;gap:4px;padding:6px 8px;display:flex}.task-modal-content-tab-btn{font-size:var(--font-size-xs,.8rem);font-weight:var(--font-weight-medium,500);color:var(--color-text-secondary);border-radius:var(--radius-sm,6px);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:6px 14px;display:inline-flex}.task-modal-content-tab-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-hover,#ffffff0d)}.task-modal-content-tab-btn.active{color:var(--color-primary);background-color:var(--color-bg-base);font-weight:var(--font-weight-semibold,600);box-shadow:0 1px 3px #0000001a}.task-modal-dds-gate-badge{color:var(--color-accent-purple,#a855f7);text-transform:uppercase;letter-spacing:.03em;background-color:#8b5cf626;border:1px solid #8b5cf64d;border-radius:9999px;padding:2px 6px;font-size:.68rem;font-weight:700}.task-modal-tabpanel{background-color:var(--color-bg-base);padding:8px 12px 12px}.task-modal-subtext-help{font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#94a3b8);margin-bottom:8px;line-height:1.4}.task-modal-textarea-criterios{border:1px solid var(--form-input-border,var(--color-border));background-color:var(--form-input-bg,var(--color-bg-elevated));width:100%;min-height:90px;color:var(--form-input-text,var(--color-text-primary));resize:vertical;box-sizing:border-box;border-radius:6px;outline:none;padding:8px 12px;font-family:inherit;font-size:.85rem;line-height:1.5;transition:border-color .15s,box-shadow .15s}.task-modal-textarea-criterios:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--form-input-focus-ring,#3b82f640)}.task-modal-textarea-criterios.disabled-context,.task-modal-textarea-criterios:disabled{opacity:.65;cursor:not-allowed;background-color:var(--color-bg-subtle,#0000000d)}.task-modal-criterios-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.btn-checklist-criterios-helper{background:var(--color-bg-subtle,#ffffff0d);border:1px solid var(--color-border,#cbd5e1);color:var(--color-primary,#2563eb);border-radius:var(--radius-sm,4px);cursor:pointer;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-checklist-criterios-helper:hover:not(:disabled){background:var(--color-primary-subtle,#2563eb1a);border-color:var(--color-primary,#2563eb)}.btn-checklist-criterios-helper:disabled{opacity:.5;cursor:not-allowed}.task-modal-criterios-footer{font-size:var(--font-size-xs,.72rem);color:var(--color-text-secondary,#64748b);justify-content:space-between;align-items:center;margin-top:2px;display:flex}.task-modal-char-counter{font-variant-numeric:tabular-nums;color:var(--color-text-muted,#94a3b8);font-size:.72rem}.task-objects-modal-overlay{background-color:var(--color-bg-overlay,#000000a6);-webkit-backdrop-filter:blur(4px);z-index:1050;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.task-objects-modal-container{background-color:var(--color-bg-card,#1e293b);border:1px solid var(--color-border-subtle,#334155);width:100%;max-width:860px;max-height:90vh;color:var(--color-text-main,#f8fafc);border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #00000080,0 8px 10px -6px #0006}.task-objects-modal-header{border-bottom:1px solid var(--color-border-subtle,#334155);background-color:var(--color-bg-surface-elevated,#0f172a);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.task-objects-modal-title-group{align-items:center;gap:.875rem;display:flex}.task-objects-icon-wrapper{background:var(--color-primary-subtle,#2563eb26);width:38px;height:38px;color:var(--color-primary,#3b82f6);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-objects-modal-title{color:var(--color-text-main,#f8fafc);margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.task-objects-modal-task-meta{align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.task-objects-code-tag{background-color:var(--color-primary-subtle,#2563eb26);color:var(--color-primary,#3b82f6);border:1px solid var(--color-primary-border,#3b82f64d);border-radius:4px;padding:.125rem .375rem;font-family:monospace;font-size:.75rem;font-weight:700}.task-objects-title-text{color:var(--color-text-muted,#94a3b8);white-space:nowrap;text-overflow:ellipsis;max-width:500px;font-size:.8125rem;overflow:hidden}.task-objects-close-btn{color:var(--color-text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.task-objects-close-btn:hover{background-color:var(--color-bg-hover,#ffffff14);color:var(--color-text-main,#f8fafc)}.task-objects-alert{border-radius:8px;align-items:center;gap:.5rem;margin:1rem 1.5rem 0;padding:.75rem 1rem;font-size:.8125rem;font-weight:500;display:flex}.alert-error{color:#f87171;background-color:#ef44441f;border:1px solid #ef44444d}.alert-success{color:#34d399;background-color:#10b9811f;border:1px solid #10b9814d}.task-objects-form-card{background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border-subtle,#334155);border-radius:8px;margin:1rem 1.5rem .5rem;padding:1rem 1.25rem}.task-objects-form-title{color:var(--color-primary,#3b82f6);align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.8125rem;font-weight:600;display:flex}.task-objects-form-grid{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.task-objects-field{flex-direction:column;gap:.25rem;display:flex}.field-nombre{flex:2 200px}.field-tipo,.field-gx-tipo{flex:150px}.field-ruta{flex:2 200px}.field-submit{flex:none}.task-objects-label{color:var(--color-text-muted,#94a3b8);font-size:.75rem;font-weight:500}.task-objects-label .req{color:#ef4444}.task-objects-input,.task-objects-select{background-color:var(--color-bg-input,#0f172a);border:1px solid var(--color-border-subtle,#334155);height:36px;color:var(--color-text-main,#f8fafc);border-radius:6px;outline:none;padding:0 .625rem;font-size:.8125rem;transition:border-color .2s,box-shadow .2s}.task-objects-input:focus,.task-objects-select:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px var(--color-primary-subtle,#3b82f633)}.input-with-icon{align-items:center;display:flex;position:relative}.field-icon-lead{color:var(--color-text-muted,#94a3b8);pointer-events:none;position:absolute;left:.625rem}.task-objects-input.has-icon{width:100%;padding-left:2rem}.btn-submit-objeto{align-items:center;gap:.375rem;height:36px;display:flex}.task-objects-grid-section{flex:auto;min-height:220px;padding:.75rem 1.5rem;overflow-y:auto}.task-objects-grid-header{justify-content:flex-end;align-items:center;margin-bottom:.5rem;display:flex}.grid-count-badge{text-transform:uppercase;letter-spacing:.05em;background-color:var(--color-bg-surface-elevated,#334155);color:var(--color-text-muted,#94a3b8);border-radius:9999px;padding:.125rem .5rem;font-size:.6875rem;font-weight:600}.task-objects-loading-state,.task-objects-empty-state{text-align:center;color:var(--color-text-muted,#94a3b8);flex-direction:column;justify-content:center;align-items:center;padding:2.5rem 1rem;display:flex}.empty-icon{color:var(--color-border-subtle,#475569);margin-bottom:.75rem}.empty-title{color:var(--color-text-main,#f8fafc);margin:0 0 .25rem;font-size:.9375rem;font-weight:600}.empty-desc{max-width:400px;margin:0;font-size:.8125rem}.task-objects-table-wrapper{border:1px solid var(--color-border-subtle,#334155);border-radius:8px;overflow:hidden}.task-objects-table{border-collapse:collapse;width:100%;font-size:.8125rem}.task-objects-table th{background-color:var(--color-bg-surface-elevated,#0f172a);color:var(--color-text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--color-border-subtle,#334155);padding:.625rem .875rem;font-size:.6875rem;font-weight:600}.task-objects-table td{border-bottom:1px solid var(--color-border-subtle,#334155);vertical-align:middle;padding:.625rem .875rem}.task-objects-table tbody tr:last-child td{border-bottom:none}.task-objects-table tbody tr:hover{background-color:var(--color-bg-hover,#ffffff08)}.obj-name-highlight{color:var(--color-text-main,#f8fafc);font-family:monospace;font-weight:600}.ruta-text{color:var(--color-text-muted,#94a3b8);font-family:monospace;font-size:.75rem}.ruta-muted{color:var(--color-border-subtle,#475569)}.task-obj-badge{border-radius:4px;align-items:center;gap:.25rem;padding:.1875rem .5rem;font-size:.6875rem;font-weight:600;display:inline-flex}.badge-genexus{color:#60a5fa;background-color:#3b82f626;border:1px solid #3b82f64d}.badge-sub{opacity:.8;margin-left:.125rem;font-weight:400}.badge-code{color:#34d399;background-color:#10b98126;border:1px solid #10b9814d}.badge-sql{color:#fbbf24;background-color:#f59e0b26;border:1px solid #f59e0b4d}.badge-config{color:#c084fc;background-color:#a855f726;border:1px solid #a855f74d}.badge-doc{color:#38bdf8;background-color:#0ea5e926;border:1px solid #0ea5e94d}.badge-other{color:#cbd5e1;background-color:#94a3b826;border:1px solid #94a3b84d}.btn-delete-object{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:.375rem;transition:all .2s;display:inline-flex}.btn-delete-object:hover{background-color:#ef444426}.task-objects-modal-footer{border-top:1px solid var(--color-border-subtle,#334155);background-color:var(--color-bg-surface-elevated,#0f172a);justify-content:flex-end;align-items:center;padding:1rem 1.5rem;display:flex}.task-objects-submodal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1070;background-color:#000000bf;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.task-objects-submodal-container{background-color:var(--color-bg-card,#1e293b);border:1px solid var(--color-border-subtle,#334155);width:100%;max-width:480px;color:var(--color-text-main,#f8fafc);border-radius:10px;overflow:hidden;box-shadow:0 25px 50px -12px #0009}.submodal-header{align-items:flex-start;gap:.875rem;padding:1.25rem 1.25rem .75rem;display:flex}.submodal-icon-danger{color:#ef4444;background-color:#ef444426;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.submodal-title{color:var(--color-text-main,#f8fafc);margin:0;font-size:1rem;font-weight:600}.submodal-subtitle{color:var(--color-text-muted,#94a3b8);margin:.25rem 0 0;font-size:.75rem}.submodal-body{flex-direction:column;gap:.875rem;padding:.75rem 1.25rem;display:flex}.submodal-target-box{background-color:var(--color-bg-surface-elevated,#0f172a);border:1px solid var(--color-border-subtle,#334155);border-radius:6px;align-items:center;gap:.5rem;padding:.625rem .875rem;font-size:.8125rem;display:flex}.submodal-target-label{color:var(--color-text-muted,#94a3b8)}.submodal-target-name{color:#f87171;font-family:monospace;font-weight:600}.submodal-field{flex-direction:column;gap:.375rem;display:flex}.submodal-label{color:var(--color-text-muted,#94a3b8);font-size:.75rem;font-weight:600}.submodal-label .req{color:#ef4444}.submodal-textarea{background-color:var(--color-bg-input,#0f172a);border:1px solid var(--color-border-subtle,#334155);color:var(--color-text-main,#f8fafc);resize:vertical;border-radius:6px;outline:none;min-height:70px;padding:.625rem;font-size:.8125rem}.submodal-textarea:focus{border-color:#ef4444;box-shadow:0 0 0 2px #ef444433}.submodal-hint{color:var(--color-text-muted,#94a3b8);font-size:.6875rem}.submodal-error-alert{color:#ef4444;align-items:center;gap:.375rem;font-size:.75rem;display:flex}.submodal-footer{background-color:var(--color-bg-surface-elevated,#0f172a);border-top:1px solid var(--color-border-subtle,#334155);justify-content:flex-end;align-items:center;gap:.5rem;padding:.875rem 1.25rem;display:flex}.spin-icon{animation:1s linear infinite spin}:root{--gantt-left-panel-width:460px;--gantt-row-height:64px}.gantt-zoom-pill-tabs{border-radius:var(--radius-full,9999px);background-color:var(--color-bg-subtle,#ffffff0d);border:1px solid var(--color-border);align-items:center;gap:2px;padding:3px;display:inline-flex}.gantt-zoom-tab{color:var(--color-text-secondary);font-size:.75rem;font-weight:var(--font-weight-medium,500);border-radius:var(--radius-full,9999px);cursor:pointer;white-space:nowrap;background:0 0;border:none;outline:none;padding:4px 12px;transition:all .15s}.gantt-zoom-tab:hover:not(.is-active){color:var(--color-text-primary);background-color:var(--color-bg-hover,#ffffff14)}.gantt-zoom-tab.is-active{background-color:var(--color-primary,#2563eb);color:#fff;font-weight:var(--font-weight-semibold,600);box-shadow:var(--shadow-sm,0 1px 2px #0000001a)}.gantt-zoom-tab:focus-visible{box-shadow:0 0 0 2px var(--color-primary-light,#3b82f666)}.gantt-intra-badge{font-size:.62rem;font-weight:var(--font-weight-medium,500);letter-spacing:-.02em;white-space:nowrap;pointer-events:none;background:#0000004d;border-radius:3px;align-items:center;padding:1px 4px;display:inline-flex}.gantt-col-night-separator{background:var(--gantt-night-bg,repeating-linear-gradient(45deg, #ffffff08, #ffffff08 4px, transparent 4px, transparent 8px));border-right:1px dashed var(--color-border);box-sizing:border-box}.gantt-col-break{background-color:var(--gantt-break-bg,#eab3081f)}.gantt-rango-horario{opacity:.9;white-space:nowrap;font-size:.62rem}.gantt-form-input,.gantt-form-select{box-sizing:border-box;border-radius:var(--radius-md,6px);border:1px solid var(--form-input-border,var(--color-border));background-color:var(--form-input-bg,var(--color-bg-surface));width:100%;height:38px;color:var(--form-input-text,var(--color-text-primary));font-size:var(--font-size-sm,.875rem);transition:border-color var(--transition-fast,.15s ease), box-shadow var(--transition-fast,.15s ease);outline:none;padding:8px 12px;font-family:inherit}.gantt-form-input:focus,.gantt-form-select:focus{border-color:var(--form-input-border-focus,var(--color-primary,#2563eb));box-shadow:0 0 0 2px var(--form-input-focus-ring,#3b82f640);z-index:2;outline:none;position:relative}.gantt-form-input:disabled,.gantt-form-select:disabled{background-color:var(--form-input-disabled-bg,var(--color-bg-muted));border-color:var(--form-input-disabled-border,var(--color-border));color:var(--form-input-disabled-text,var(--color-text-muted));cursor:not-allowed;opacity:.85}.gantt-form-select.is-blocked{border-style:dashed}.gantt-phase-summary-container{border-bottom:2px solid var(--color-border);background-color:var(--gantt-phase-row-bg,#ffffff05);box-sizing:border-box;flex-direction:column;padding:4px 12px;display:flex}.gantt-phase-summary-title{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);box-sizing:border-box;align-items:center;gap:6px;height:32px;margin:0;font-size:.7rem;font-weight:700;display:flex}.gantt-wbs-phase-row{border-radius:var(--radius-sm,4px);box-sizing:border-box;height:26px;transition:background-color var(--transition-fast,.15s ease);justify-content:space-between;align-items:center;margin:0;padding:0 4px;font-size:.72rem;display:flex}.gantt-wbs-phase-row:hover{background-color:var(--color-bg-hover,#ffffff0d)}.gantt-wbs-phase-info{align-items:center;gap:6px;display:flex;overflow:hidden}.gantt-phase-bullet{border-radius:50%;flex-shrink:0;width:8px;height:8px}.gantt-phase-name{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.gantt-phase-meta{color:var(--color-text-muted);font-size:.65rem;font-weight:600}.gantt-phase-summary-bar{-webkit-user-select:none;user-select:none;transition:transform .15s,box-shadow .15s;position:relative;box-shadow:0 1px 3px #0003}.gantt-phase-summary-bar:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000059}.gantt-phase-bracket-left,.gantt-phase-bracket-right{border-top:6px solid var(--color-phase-summary,#3b82f6);width:0;height:0;position:absolute;top:100%}.gantt-phase-bracket-left{border-right:6px solid #0000;left:0}.gantt-phase-bracket-right{border-left:6px solid #0000;right:0}.gantt-milestone-bar-container{-webkit-user-select:none;user-select:none}.gantt-milestone-diamond{cursor:pointer}.gantt-milestone-bar-container:hover .gantt-milestone-diamond{transform:rotate(45deg)scale(1.15)!important}.gantt-milestone-label{text-shadow:0 1px 3px #0009;letter-spacing:-.01em}.gantt-milestone-indicator-badge,.gantt-phase-badge{line-height:1}.gantt-form-input.is-disabled-milestone,.gantt-form-select.is-disabled-milestone{opacity:.65;cursor:not-allowed;background-color:var(--color-bg-muted,#94a3b814)!important;border-color:var(--color-border-subtle,#ffffff1a)!important;color:var(--color-text-muted,#94a3b8)!important}.milestone-reschedule-banner{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);color:var(--color-milestone,#f59e0b);font-size:var(--font-size-xs);background-color:#f59e0b1f;border:1px solid #f59e0b4d;display:flex}.baseline-reference-card{gap:var(--spacing-2,8px);padding:var(--spacing-2,8px) var(--spacing-3,12px);border-radius:var(--radius-md,6px);background-color:var(--color-bg-subtle,#ffffff08);border:1px solid var(--color-border,#ffffff1a);box-sizing:border-box;flex-direction:column;display:flex}.baseline-reference-header{justify-content:space-between;align-items:center;gap:var(--spacing-2,8px);display:flex}.badge-baseline{border-radius:var(--radius-full,9999px);font-size:.72rem;font-weight:var(--font-weight-semibold,600);color:var(--color-baseline,#818cf8);background-color:#6366f126;border:1px solid #6366f14d;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.baseline-reference-grid{gap:var(--spacing-2,8px);grid-template-columns:repeat(3,1fr);display:grid}.baseline-reference-item{flex-direction:column;display:flex}.baseline-reference-label{color:var(--color-text-muted,#94a3b8);font-size:.68rem;font-weight:var(--font-weight-medium,500)}.baseline-reference-val{font-size:var(--font-size-xs,.75rem);color:var(--color-text-primary,#f8fafc);font-weight:var(--font-weight-semibold,600)}.sv-badge-container{align-items:center;gap:4px;display:inline-flex}.sv-badge-favorable{border-radius:var(--radius-sm,4px);font-size:.7rem;font-weight:var(--font-weight-semibold,600);color:var(--color-status-success,#10b981);background-color:#10b98126;border:1px solid #10b98159;align-items:center;padding:2px 6px;display:inline-flex}.sv-badge-retraso{border-radius:var(--radius-sm,4px);font-size:.7rem;font-weight:var(--font-weight-semibold,600);color:var(--color-status-error,#ef4444);background-color:#ef444426;border:1px solid #ef444459;align-items:center;padding:2px 6px;display:inline-flex}.gantt-bar-external-dependency{cursor:pointer;opacity:.95;box-shadow:0 1px 3px #a855f740;background:var(--gantt-bar-external-dependency-pattern)!important;border:1.5px dashed var(--gantt-bar-external-dependency-border)!important;color:var(--gantt-bar-external-dependency-text)!important}.gantt-bar-external-dependency:hover{filter:brightness(1.1);box-shadow:0 0 8px #a855f780!important}.gantt-wbs-block-header{align-items:center;gap:var(--spacing-2,8px);height:32px;padding:0 var(--spacing-3,12px);text-transform:uppercase;letter-spacing:.04em;background-color:var(--color-bg-subtle,#ffffff08);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);box-sizing:border-box;-webkit-user-select:none;user-select:none;font-size:.72rem;font-weight:700;display:flex}.gantt-wbs-block-header.is-external{color:var(--color-purple-400,#c084fc);background-color:#a855f714;border-top:1px solid #a855f733}.gantt-wbs-row-external{background-color:#a855f708}.gantt-wbs-row-external:hover{background-color:#a855f714!important}.gantt-badge-dependiente-externo{background-color:var(--badge-external-dependency-bg,#a855f72e);color:var(--badge-external-dependency-text,#d8b4fe);border:1px solid var(--badge-external-dependency-border,#a855f766);border-radius:var(--radius-full,9999px);white-space:nowrap;letter-spacing:.02em;align-items:center;gap:3px;padding:.1rem .45rem;font-size:.62rem;font-weight:700;display:inline-flex}.gantt-timeline-block-divider{height:32px;padding:0 var(--spacing-3,12px);background-color:var(--color-bg-subtle,#ffffff05);border-bottom:1px solid var(--color-border);box-sizing:border-box;z-index:1;pointer-events:none;align-items:center;display:flex;position:absolute;left:0}.gantt-timeline-block-divider.is-external{background-color:#a855f70d;border-top:1px solid #a855f726}.gantt-absence-strip{pointer-events:auto;border-radius:var(--radius-sm,4px);cursor:help;z-index:2;box-sizing:border-box;justify-content:center;align-items:center;transition:opacity .15s,filter .15s;display:flex;position:absolute;overflow:hidden}.gantt-absence-strip:hover{filter:brightness(1.12);z-index:5}.gantt-absence-strip-licencia_medica{border:1px dashed var(--color-status-danger,#ef4444);background:repeating-linear-gradient(-45deg,#ef444438,#ef444438 8px,#ef444461 8px 16px)}.gantt-absence-strip-vacaciones{border:1px dashed var(--color-status-info,#2563eb);background:repeating-linear-gradient(-45deg,#2563eb2e,#2563eb2e 8px,#2563eb57 8px 16px)}.gantt-absence-strip-permiso{border:1px dashed var(--color-status-warning,#d97706);background:repeating-linear-gradient(-45deg,#d977062e,#d977062e 8px,#d9770657 8px 16px)}.gantt-absence-label{text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-sm,4px);color:#fff;pointer-events:none;white-space:nowrap;text-shadow:0 1px 2px #0009;background:#00000073;padding:1px 6px;font-size:.62rem;font-weight:700}.gantt-bar-scheduled-element{box-sizing:border-box;z-index:3;background-image:linear-gradient(#ffffff1f 0%,#00000014 100%);border:1.5px solid var(--gantt-bar-scheduled-border)!important;box-shadow:var(--gantt-bar-scheduled-shadow), var(--gantt-bar-scheduled-top-bevel)!important}.gantt-bar-scheduled-element:before{content:"";width:var(--gantt-cap-width,3px);background-color:var(--gantt-bar-cap-color);pointer-events:none;box-sizing:border-box;border-top-left-radius:4px;border-bottom-left-radius:4px;position:absolute;top:0;bottom:0;left:0}.gantt-bar-scheduled-element:after{content:"";width:var(--gantt-cap-width,3px);background-color:var(--gantt-bar-cap-color);pointer-events:none;box-sizing:border-box;border-top-right-radius:4px;border-bottom-right-radius:4px;position:absolute;top:0;bottom:0;right:0}.gantt-bar-baseline-element{box-sizing:border-box;z-index:2;height:var(--gantt-baseline-height,8px)!important;border:1px solid var(--gantt-bar-baseline-border)!important;background-color:var(--gantt-bar-baseline-bg)!important;background-image:var(--gantt-bar-baseline-pattern)!important;border-radius:4px!important;box-shadow:0 1px 3px #0000004d!important}.gantt-cascade-notification-toast{background-color:var(--color-surface,#1e293b);color:var(--color-text,#f8fafc);border:1px solid var(--color-primary,#3b82f6);z-index:9999;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;align-items:center;gap:12px;padding:12px 18px;font-size:.875rem;line-height:1.4;animation:.3s cubic-bezier(.16,1,.3,1) forwards ganttToastSlideUp;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 10px 25px -5px #0006,0 8px 10px -6px #0000004d}[data-theme=light] .gantt-cascade-notification-toast{color:#0f172a;background-color:#fff;border-color:#2563eb;box-shadow:0 10px 25px -5px #00000026,0 4px 6px -2px #0000000d}.cascade-toast-content{align-items:center;gap:8px;display:flex}.cascade-toast-icon{color:var(--color-warning,#f59e0b);font-size:1.1rem;display:inline-flex}.cascade-toast-message{max-width:480px;font-weight:500}.cascade-toast-close{color:var(--color-text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;font-size:.95rem;line-height:1;transition:color .15s,background-color .15s;display:flex}.cascade-toast-close:hover{color:var(--color-text,#fff);background-color:#ffffff1a}@keyframes ganttToastSlideUp{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.gantt-bar-undo-highlight{position:relative;z-index:15!important;animation:.9s cubic-bezier(.16,1,.3,1) forwards ganttUndoPulse!important}@keyframes ganttUndoPulse{0%{box-shadow:0 0 0 0 var(--gantt-undo-highlight-glow,#38bdf8b3), 0 0 0 1px var(--gantt-undo-highlight-border,#38bdf8);transform:scale(1.04)}50%{box-shadow:0 0 0 8px var(--gantt-undo-highlight-glow,#38bdf873), 0 0 0 2px var(--gantt-undo-highlight-border,#38bdf8);transform:scale(1.02)}to{transform:scale(1);box-shadow:0 0 #0000,0 0 0 1px #0000}}.gantt-history-button-group{border-radius:var(--radius-md,6px);border:1px solid var(--gantt-history-btn-border,var(--color-border,#334155));background-color:var(--gantt-history-btn-bg,var(--color-bg-surface,#1e293b));height:32px;box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);align-items:center;transition:border-color .15s,box-shadow .15s;display:inline-flex;overflow:hidden}.gantt-history-btn{height:100%;color:var(--gantt-history-btn-text,var(--color-text,#f1f5f9));font-size:.78rem;font-weight:var(--font-weight-medium,500);cursor:pointer;background:0 0;border:none;outline:none;align-items:center;gap:6px;padding:0 10px;transition:background-color .15s,color .15s,opacity .15s;display:inline-flex}.gantt-history-btn:hover:not(:disabled){background-color:var(--gantt-history-btn-hover,#334155d9)}.gantt-history-btn:focus-visible{box-shadow:inset 0 0 0 2px var(--color-primary,#3b82f6)}.gantt-history-btn:disabled{opacity:.42;cursor:not-allowed}.gantt-history-btn svg{flex-shrink:0}.gantt-history-divider{background-color:var(--gantt-history-btn-border,var(--color-border,#334155));width:1px;height:16px}.spin-animate{animation:1s linear infinite spin}.kanban-card-context-menu{background-color:var(--color-bg-elevated,#fff);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);min-width:200px;box-shadow:var(--shadow-lg,0 10px 25px #00000026);color:var(--color-text-primary);-webkit-user-select:none;user-select:none;font-size:var(--font-size-xs,.75rem);-webkit-backdrop-filter:blur(8px);padding:6px}.kanban-context-menu-header{border-bottom:1px solid var(--color-border-subtle,#ffffff14);justify-content:space-between;align-items:center;margin-bottom:4px;padding:4px 6px 8px;display:flex}.kanban-context-menu-title{font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;max-width:150px;font-size:.8rem;display:flex;overflow:hidden}.kanban-context-menu-close-btn{cursor:pointer;border-radius:var(--radius-sm,4px);color:var(--color-text-muted);transition:color var(--transition-fast), background-color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.kanban-context-menu-close-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-hover)}.kanban-context-menu-items{flex-direction:column;gap:2px;display:flex}.kanban-context-menu-item{border-radius:var(--radius-sm,4px);width:100%;color:var(--color-text-primary);font-size:.8rem;font-weight:var(--font-weight-medium,500);cursor:pointer;text-align:left;transition:background-color var(--transition-fast), color var(--transition-fast);background-color:#0000;border:none;align-items:center;gap:8px;padding:6px 8px;display:flex}.kanban-context-menu-item:hover{background-color:var(--color-bg-hover);color:var(--color-primary)}.kanban-menu-item-icon{color:var(--color-text-secondary);transition:color var(--transition-fast);flex-shrink:0}.kanban-context-menu-item:hover .kanban-menu-item-icon{color:var(--color-primary)}.kanban-context-menu-item.is-danger,.kanban-context-menu-item.is-danger .kanban-menu-item-icon{color:var(--color-status-danger,#ef4444)}.kanban-context-menu-item.is-danger:hover{color:var(--color-status-danger,#ef4444);background-color:#ef44441a}.milestone-tracker-container{gap:var(--spacing-3,.75rem);background-color:var(--color-bg-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-lg,.5rem);padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);margin-bottom:var(--spacing-4,1rem);box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);transition:border-color var(--transition-normal,.2s ease), box-shadow var(--transition-normal,.2s ease);flex-direction:column;display:flex}.milestone-tracker-container.has-active-filter{border-color:var(--color-milestone,#f59e0b);box-shadow:0 0 0 1px var(--color-milestone,#f59e0b), var(--shadow-sm,0 1px 2px 0 #0000000d)}.milestone-tracker-container.is-empty{padding:var(--spacing-2,.5rem) var(--spacing-3,.75rem);background-color:var(--color-bg-muted,#f8fafc)}.milestone-tracker-empty-content{align-items:center;gap:var(--spacing-2,.5rem);font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#64748b);display:flex}.milestone-tracker-empty-icon{color:var(--color-milestone,#f59e0b)}.milestone-tracker-header{justify-content:space-between;align-items:center;gap:var(--spacing-2,.5rem);flex-wrap:wrap;display:flex}.milestone-tracker-title-group{align-items:center;gap:var(--spacing-2,.5rem);display:flex}.milestone-tracker-diamond-icon{color:var(--color-milestone,#f59e0b);font-size:.95rem;line-height:1}.milestone-tracker-title{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#0f172a);text-transform:uppercase;letter-spacing:.04em}.milestone-tracker-counter{color:var(--color-text-secondary,#64748b);font-size:.7rem;font-weight:500}.milestone-tracker-active-banner{align-items:center;gap:var(--spacing-2,.5rem);border-radius:var(--radius-sm,.25rem);font-size:var(--font-size-xs,.75rem);background-color:#f59e0b1f;border:1px solid #f59e0b4d;padding:.2rem .5rem;display:flex}.milestone-active-filter-label{color:var(--color-text-primary,#0f172a)}.milestone-clear-btn{border:1px solid var(--color-border,#cbd5e1);color:var(--color-text-primary,#0f172a);cursor:pointer;background:0 0;border-radius:3px;align-items:center;gap:3px;padding:1px 6px;font-size:.68rem;font-weight:600;transition:background-color .15s,color .15s;display:inline-flex}.milestone-clear-btn:hover{background-color:var(--color-bg-hover,#0000000d);color:var(--color-status-danger,#ef4444)}.milestone-stepper-track{padding:var(--spacing-2,.5rem) 0;scrollbar-width:thin;position:relative;overflow-x:auto}.milestone-stepper-connector-line{background-color:var(--color-border,#e2e8f0);z-index:1;pointer-events:none;height:2px;position:absolute;top:18px;left:20px;right:20px}.milestone-steps-list{align-items:stretch;gap:var(--spacing-3,.75rem);z-index:2;min-width:min-content;display:flex;position:relative}.milestone-step-item{background-color:var(--color-bg-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-md,.375rem);cursor:pointer;text-align:left;flex-direction:column;align-items:center;min-width:170px;max-width:220px;padding:.5rem .65rem;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;position:relative}.milestone-step-item:hover{border-color:var(--color-milestone,#f59e0b);transform:translateY(-2px);box-shadow:0 4px 10px #00000014}.milestone-step-item.is-selected{border-color:var(--color-milestone,#f59e0b);box-shadow:0 0 0 2px var(--color-milestone,#f59e0b), 0 4px 12px #f59e0b26;background-color:#f59e0b0f}.milestone-step-marker{z-index:3;margin-bottom:.35rem}.milestone-step-diamond{background-color:var(--color-bg-surface,#fff);border:2px solid var(--color-milestone,#f59e0b);width:18px;height:18px;box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);border-radius:2px;justify-content:center;align-items:center;transition:background-color .15s,border-color .15s;display:flex;transform:rotate(45deg)}.milestone-marker-check,.milestone-marker-alert{color:#fff;transform:rotate(-45deg)}.milestone-marker-dot{background-color:var(--color-milestone,#f59e0b);border-radius:50%;width:6px;height:6px}.milestone-step-item.status-completado .milestone-step-diamond{background-color:var(--color-status-success,#10b981);border-color:var(--color-status-success,#10b981)}.milestone-step-item.status-atrasado .milestone-step-diamond{background-color:var(--color-status-danger,#ef4444);border-color:var(--color-status-danger,#ef4444);animation:1.8s infinite pulse-danger}.milestone-step-item.status-en_curso .milestone-step-diamond{background-color:var(--color-bg-surface,#fff);border-color:var(--color-milestone,#f59e0b)}@keyframes pulse-danger{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 6px #ef444400}to{box-shadow:0 0 #ef444400}}.milestone-step-body{flex-direction:column;gap:.2rem;width:100%;display:flex}.milestone-step-top{justify-content:space-between;align-items:center;gap:.25rem;display:flex}.milestone-step-code{color:var(--color-milestone,#f59e0b);font-size:.65rem;font-weight:700}.milestone-step-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:9999px;padding:.1rem .35rem;font-size:.58rem;font-weight:600}.badge-completado{color:var(--color-status-success,#10b981);background-color:#10b98126}.badge-atrasado{color:var(--color-status-danger,#ef4444);background-color:#ef444426}.badge-en_curso{color:var(--color-milestone,#f59e0b);background-color:#f59e0b26}.milestone-step-title{color:var(--color-text-primary,#0f172a);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.72rem;font-weight:600;overflow:hidden}.milestone-step-footer{color:var(--color-text-secondary,#64748b);justify-content:space-between;align-items:center;margin-top:.1rem;font-size:.62rem;display:flex}.milestone-step-date{align-items:center;gap:3px;display:inline-flex}.milestone-step-ratio{font-weight:500}.milestone-progress-bar-bg{background-color:var(--color-bg-muted,#e2e8f0);border-radius:9999px;width:100%;height:3px;margin-top:.25rem;overflow:hidden}.milestone-progress-bar-fill{border-radius:9999px;height:100%;transition:width .3s}.fill-completado{background-color:var(--color-status-success,#10b981)}.fill-atrasado{background-color:var(--color-status-danger,#ef4444)}.fill-en_curso{background-color:var(--color-milestone,#f59e0b)}.milestone-window-date-badge{background-color:var(--color-bg-muted,#f1f5f9);color:var(--color-text-secondary,#475569);border-radius:var(--radius-sm,4px);border:1px solid var(--color-border,#cbd5e1);align-items:center;gap:4px;padding:1px 6px;font-size:.7rem;font-weight:500;display:inline-flex}.methodology-modal-overlay{background-color:var(--color-modal-backdrop,#0f172aa6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal,1000);padding:var(--space-4,1rem);justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) methodologyModalFadeIn;display:flex;position:fixed;inset:0}.methodology-modal-container{background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,1rem);box-shadow:var(--shadow-2xl,0 25px 50px -12px #00000040);width:100%;max-width:520px;color:var(--color-text-primary,#0f172a);flex-direction:column;animation:.22s cubic-bezier(.16,1,.3,1) methodologyModalScaleUp;display:flex;overflow:hidden}[data-theme=dark] .methodology-modal-container{background-color:var(--color-surface-elevated,#1e293b);border-color:var(--color-border-subtle,#334155)}.methodology-modal-header{align-items:flex-start;gap:var(--space-3,.75rem);padding:var(--space-5,1.25rem) var(--space-6,1.5rem);border-bottom:1px solid var(--color-border-subtle,#f1f5f9);background-color:var(--color-surface-subtle,#f8fafc);display:flex}[data-theme=dark] .methodology-modal-header{border-bottom-color:var(--color-border-subtle,#334155);background-color:#1e293b80}.methodology-modal-icon-wrapper{color:var(--color-status-warning,#f59e0b);border-radius:var(--radius-lg,.5rem);padding:var(--space-2,.5rem);background-color:#f59e0b26;flex-shrink:0;justify-content:center;align-items:center;display:flex}.methodology-modal-header-text{flex:1}.methodology-modal-title{font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-semibold,600);line-height:var(--line-height-snug,1.35);color:var(--color-text-primary,#0f172a);margin:0}.methodology-modal-subtitle{font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#64748b);margin-top:2px;display:block}.methodology-modal-close-btn{color:var(--color-text-muted,#64748b);cursor:pointer;padding:var(--space-1,.25rem);border-radius:var(--radius-sm,.25rem);background:0 0;border:none;justify-content:center;align-items:center;transition:color .15s,background-color .15s;display:flex}.methodology-modal-close-btn:hover{color:var(--color-text-primary,#0f172a);background-color:var(--color-surface-hover,#e2e8f0)}.methodology-modal-body{padding:var(--space-6,1.5rem);gap:var(--space-4,1rem);flex-direction:column;display:flex}.methodology-task-badge-row{align-items:center;gap:var(--space-2,.5rem);padding:var(--space-2,.5rem) var(--space-3,.75rem);background-color:var(--color-surface-subtle,#f8fafc);border:1px solid var(--color-border-subtle,#e2e8f0);border-radius:var(--radius-md,.375rem);display:flex}[data-theme=dark] .methodology-task-badge-row{border-color:var(--color-border-subtle,#334155);background-color:#0f172a66}.methodology-task-code{font-family:var(--font-family-mono,monospace);font-weight:var(--font-weight-bold,700);font-size:var(--font-size-xs,.75rem);color:var(--color-primary,#2563eb)}.methodology-task-name{font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary,#334155);font-weight:var(--font-weight-medium,500);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.methodology-main-text{font-size:var(--font-size-sm,.875rem);line-height:var(--line-height-relaxed,1.6);color:var(--color-text-secondary,#334155);margin:0}.methodology-action-card{border-radius:var(--radius-lg,.5rem);padding:var(--space-3,.75rem) var(--space-4,1rem);gap:var(--space-1,.25rem);background-color:#f59e0b14;border:1px solid #f59e0b40;flex-direction:column;display:flex}.methodology-action-card-header{align-items:center;gap:var(--space-2,.5rem);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-status-warning,#d97706);text-transform:uppercase;letter-spacing:.03em;display:flex}.methodology-action-text{font-size:var(--font-size-xs,.8125rem);line-height:var(--line-height-relaxed,1.55);color:var(--color-text-primary,#1e293b);margin:0}.methodology-modal-footer{padding:var(--space-4,1rem) var(--space-6,1.5rem);border-top:1px solid var(--color-border-subtle,#f1f5f9);background-color:var(--color-surface-subtle,#f8fafc);justify-content:flex-end;display:flex}[data-theme=dark] .methodology-modal-footer{border-top-color:var(--color-border-subtle,#334155);background-color:#1e293b80}.methodology-understood-btn{min-width:110px}@keyframes methodologyModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes methodologyModalScaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.chronos-kanban-module{gap:var(--spacing-4);flex-direction:column;width:100%;animation:.25s ease-out fadeIn;display:flex}.kanban-header-bar{justify-content:space-between;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-5);background:var(--surface-card,var(--color-bg-surface));border-radius:var(--radius-xl);border:1px solid var(--border-default,var(--color-border));flex-wrap:wrap;display:flex}.kanban-header-info h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);align-items:center;gap:var(--spacing-2);margin:0;display:flex}.kanban-header-info p{margin:var(--spacing-1) 0 0 0;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.kanban-header-controls{align-items:center;gap:var(--spacing-3);flex-wrap:wrap;display:flex}.kanban-segmented-control{background:var(--tabs-track-bg,var(--color-bg-muted));border:1px solid var(--tabs-track-border,var(--color-border));border-radius:var(--radius-lg);align-items:center;gap:2px;padding:3px;display:inline-flex}.kanban-segment-btn{border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--tabs-item-text,var(--color-text-secondary));cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;padding:6px 12px;transition:all .2s;display:inline-flex}.kanban-segment-btn:hover{color:var(--tabs-item-hover-text,var(--color-text-primary));background:var(--tabs-item-hover-bg,var(--color-bg-hover))}.kanban-segment-btn.active{background:var(--tabs-item-active-bg,var(--color-bg-surface));color:var(--tabs-item-active-text,var(--color-primary));font-weight:var(--font-weight-bold);box-shadow:var(--tabs-item-active-shadow,var(--shadow-sm))}.kanban-sprint-selector-group,.kanban-phase-selector-group{align-items:center;gap:var(--spacing-2,.5rem);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:4px 10px;display:inline-flex}.kanban-sprint-label,.kanban-phase-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.kanban-sprint-icon,.kanban-phase-icon{color:var(--color-primary)}.kanban-sprint-select,.kanban-phase-select{font-size:var(--font-size-xs);color:var(--color-text-primary);font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}.kanban-sprint-select option,.kanban-phase-select option{background-color:var(--color-bg-surface);color:var(--color-text-primary)}.kanban-filter-banner{padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-lg);font-size:var(--font-size-xs);color:var(--color-primary);background:#2563eb14;border:1px solid #2563eb33;justify-content:space-between;align-items:center;font-weight:500;display:flex}.kanban-filter-banner-text{align-items:center;gap:6px;display:inline-flex}.kanban-grid-container{gap:var(--spacing-4);padding-bottom:var(--spacing-4);min-height:480px;display:grid;overflow-x:auto}.kanban-column{background-color:var(--kanban-column-bg,var(--color-bg-muted));border-radius:var(--radius-xl);border:1px solid var(--kanban-card-border,var(--color-border));flex-direction:column;min-height:450px;transition:border-color .2s cubic-bezier(.4,0,.2,1),background-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.kanban-column.is-drag-over{outline:2px dashed var(--color-primary);outline-offset:-2px;background-color:#2563eb14;box-shadow:0 0 15px #2563eb1f}.kanban-column.is-drag-over-wip{outline:2px dashed var(--color-status-danger);outline-offset:-2px;background-color:#ef444414;box-shadow:0 0 15px #ef444426}.kanban-column.is-over-wip-border{border-color:var(--color-status-danger)}.kanban-column-header{padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.kanban-column-title-group{align-items:center;gap:var(--spacing-2);display:flex}.kanban-column-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-primary)}.kanban-wip-badge{font-size:.7rem;font-weight:var(--font-weight-bold);border-radius:var(--radius-full);background-color:var(--kanban-wip-badge-bg,var(--color-bg-elevated));color:var(--color-text-secondary);padding:2px 7px;transition:all .2s}.kanban-wip-badge.exceeded{color:var(--color-status-danger);background-color:#ef44442e;font-weight:800}.kanban-cards-list{padding:var(--spacing-3);gap:var(--spacing-3);flex-direction:column;flex:1;transition:background-color .2s;display:flex;overflow-y:auto}.kanban-empty-state{padding:var(--spacing-8) var(--spacing-4);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-xs);border:1px dashed var(--color-border-subtle);border-radius:var(--radius-lg);margin:var(--spacing-2) 0;font-style:italic}.kanban-card{background-color:var(--kanban-card-bg,var(--color-bg-surface));border-radius:var(--radius-lg);border:1px solid var(--kanban-card-border,var(--color-border));padding:var(--spacing-3);box-shadow:var(--shadow-sm);gap:var(--spacing-2);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;flex-direction:column;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1),border-color .2s;display:flex;overflow:hidden}.kanban-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-focus);transform:translateY(-2px)}.kanban-card:active{cursor:grabbing}.kanban-card-desc-preview{color:var(--color-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:2.8em;margin:2px 0;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.kanban-card-desc-preview .chronos-markdown-renderer{font-size:.75rem;line-height:1.4}.kanban-card-desc-preview p{margin:0}.kanban-card.is-dragging{opacity:.45;border-color:var(--color-primary);transform:scale(.98)rotate(2deg);box-shadow:0 20px 25px -5px #00000059}.kanban-card.just-dropped{animation:.3s cubic-bezier(.34,1.56,.64,1) cardDropIn}@keyframes cardDropIn{0%{opacity:.75;transform:scale(1.05)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}.kanban-card-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);word-break:break-word;line-height:1.4}.kanban-card-tags{align-items:center;gap:var(--spacing-1,4px);flex-wrap:wrap;width:100%;min-width:0;display:flex}.kanban-card-meta{justify-content:space-between;align-items:center;gap:var(--spacing-2,8px);color:var(--color-text-secondary);flex-wrap:wrap;min-width:0;font-size:.7rem;display:flex}.kanban-card-meta-item{align-items:center;gap:4px;display:inline-flex}.kanban-card-footer{padding-top:var(--spacing-2);border-top:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;display:flex}.kanban-card-id-badge{color:var(--color-text-muted);font-size:.68rem;font-family:var(--font-family-mono,monospace)}.kanban-accessible-actions{align-items:center;gap:2px;display:flex}.kanban-accessible-btn{color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:2px 4px;transition:all .15s;display:inline-flex}.kanban-accessible-btn:hover:not(:disabled){background:var(--color-bg-hover,#ffffff14);color:var(--color-text-primary);border-color:var(--color-border-subtle)}.kanban-accessible-btn:disabled{opacity:.3;cursor:not-allowed}.drag-indicator-icon,.kanban-card-menu-btn{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm,4px);opacity:.6;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:opacity .15s,color .15s,background-color .15s;display:inline-flex}.kanban-card:hover .drag-indicator-icon,.kanban-card:hover .kanban-card-menu-btn{opacity:1;color:var(--color-primary)}.kanban-card-menu-btn:hover{background-color:var(--color-bg-hover)}.kanban-sprint-selector-group{align-items:center;gap:var(--spacing-2);background:var(--surface-ground,var(--color-bg-muted));border:1px solid var(--border-default,var(--color-border));border-radius:var(--radius-lg);padding:3px 8px;display:inline-flex}.kanban-sprint-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.kanban-sprint-select{cursor:pointer;min-width:170px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;font-size:var(--font-size-xs)!important;border-radius:var(--radius-md)!important;border:1px solid var(--border-default,var(--color-border))!important;background:var(--surface-card,var(--color-bg-surface))!important;color:var(--color-text-primary)!important;padding:4px 8px!important}.kanban-sprint-select:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px var(--color-primary-glow)!important}.kanban-sprint-badge{border-radius:var(--radius-sm,4px);background:var(--kanban-sprint-badge-bg,#6366f11f);border:1px solid var(--kanban-sprint-badge-border,#6366f147);color:var(--kanban-sprint-badge-text,#6366f1);font-size:11px;font-weight:var(--font-weight-medium,500);white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;align-items:center;gap:4px;max-width:100%;padding:2px 7px;line-height:1.3;display:inline-flex;overflow:hidden}.kanban-sprint-badge-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.kanban-assignee-container{align-items:center;display:inline-flex;position:relative}.kanban-assignee-chip{border-radius:var(--assignee-chip-radius,9999px);background:var(--kanban-assignee-chip-bg);border:1px solid var(--kanban-assignee-chip-border);color:var(--kanban-assignee-chip-text);font-size:11px;font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;max-width:170px;padding:2px 8px;transition:all .2s;display:inline-flex;overflow:hidden}.kanban-assignee-chip.is-unassigned{color:var(--color-text-muted);background:0 0;border-style:dashed}.kanban-assignee-chip.is-interactive{cursor:pointer;-webkit-user-select:none;user-select:none}.kanban-assignee-chip.is-interactive:hover{background:var(--kanban-assignee-chip-hover);transform:translateY(-1px);box-shadow:0 0 0 2px #3b82f633}.kanban-assignee-chip.is-interactive:active{transform:translateY(0)}.kanban-assignee-modal-content,.kanban-assignee-popover{gap:var(--spacing-3,12px);flex-direction:column;width:100%;display:flex}.kanban-assignee-modal-taskinfo{align-items:center;gap:var(--spacing-2,8px);background:var(--color-bg-muted,#ffffff0a);border:1px solid var(--color-border-subtle,#ffffff14);border-radius:var(--radius-md,6px);padding:8px 12px;display:flex}.kanban-assignee-task-badge{font-family:var(--font-family-mono,monospace);font-size:.72rem;font-weight:var(--font-weight-bold,700);border-radius:var(--radius-sm,4px);color:var(--color-primary,#2563eb);background:#2563eb26;padding:2px 6px}.kanban-assignee-task-name{font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-medium,500);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.kanban-assignee-search-box{width:100%}.kanban-modal-colaboradores-list{max-height:280px;overflow-y:auto}.kanban-popover-search{width:100%;font-size:var(--font-size-xs);border-radius:var(--radius-md);border:1px solid var(--form-input-border,var(--color-border));background:var(--form-input-bg,var(--color-bg-muted));color:var(--form-input-text,var(--color-text-primary));box-sizing:border-box;outline:none;padding:6px 10px}.kanban-popover-search:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--form-input-focus-ring,#3b82f633)}.kanban-popover-list{flex-direction:column;gap:2px;max-height:200px;display:flex;overflow-y:auto}.kanban-popover-item{border-radius:var(--radius-md);color:var(--popover-text,var(--color-text-primary));cursor:pointer;text-align:left;font-size:var(--font-size-xs);background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:6px 8px;transition:background .15s;display:flex}.kanban-popover-item:hover{background:var(--popover-item-hover)}.kanban-popover-item.is-selected{background:var(--popover-item-active);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.kanban-popover-item-info{flex-direction:column;gap:1px;display:flex}.kanban-popover-item-name{font-weight:var(--font-weight-medium)}.kanban-popover-item-role{color:var(--color-text-muted);font-size:10px}.kanban-btn-autoasignar{border-radius:var(--radius-sm,4px);background:var(--btn-claim-bg,#2563eb1a);border:var(--btn-claim-border,1px dashed #3b82f6);color:var(--btn-claim-text,var(--color-primary));font-size:11px;font-weight:var(--font-weight-semibold,600);cursor:pointer;align-items:center;gap:4px;padding:2px 7px;transition:all .15s;display:inline-flex}.kanban-btn-autoasignar:hover{background:var(--btn-claim-hover-bg,#2563eb33);transform:translateY(-1px)}.kanban-btn-autoasignar:active{transform:translateY(0)}.kanban-claim-toast{z-index:1050;background:var(--toast-claim-bg,var(--color-bg-surface));border:1px solid var(--toast-claim-border,var(--color-border));border-left:4px solid var(--color-primary);border-radius:var(--radius-lg,8px);box-shadow:var(--shadow-xl);color:var(--toast-claim-text,var(--color-text-primary));font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);align-items:center;gap:12px;padding:12px 18px;animation:.25s cubic-bezier(.16,1,.3,1) toastSlideIn;display:flex;position:fixed;bottom:24px;right:24px}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.kanban-claim-toast-icon{color:var(--color-primary);align-items:center;display:flex}.kanban-claim-toast-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:2px;transition:color .15s;display:flex}.kanban-claim-toast-close:hover{color:var(--color-text-primary)}:root{--raci-badge-r:var(--color-primary,#2563eb);--raci-badge-r-bg:#2563eb26;--raci-badge-a:var(--color-danger,#ef4444);--raci-badge-a-bg:#ef444426;--raci-badge-c:var(--color-warning,#f59e0b);--raci-badge-c-bg:#f59e0b26;--raci-badge-i:var(--color-success,#10b981);--raci-badge-i-bg:#10b98126;--raci-badge-empty:var(--color-text-secondary,#94a3b8);--raci-badge-empty-bg:var(--color-bg-base,#1e293b);--raci-validation-ok:var(--color-success,#10b981);--raci-validation-warning:var(--color-warning,#f59e0b);--raci-validation-error:var(--color-danger,#ef4444);--raci-btn-remove-color:var(--color-text-tertiary,#94a3b8);--raci-btn-remove-bg:#94a3b814;--raci-btn-remove-border:#94a3b82e;--raci-btn-remove-hover-color:var(--color-danger,#ef4444);--raci-btn-remove-hover-bg:#ef444426;--raci-btn-remove-hover-border:#ef444459}.raci-container{gap:var(--spacing-4);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:var(--shadow-sm);color:var(--color-text-primary);flex-direction:column;display:flex}.raci-header{justify-content:space-between;align-items:center;gap:var(--spacing-4);flex-wrap:wrap;display:flex}.raci-title-group h2{margin:0 0 var(--spacing-1) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.raci-title-group p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.raci-legend{align-items:center;gap:var(--spacing-3);flex-wrap:wrap;display:flex}.raci-legend-item{align-items:center;gap:var(--spacing-1);font-size:var(--font-size-xs);color:var(--color-text-secondary);display:inline-flex}.raci-badge{border-radius:var(--radius-full);width:28px;height:28px;font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.raci-badge:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.raci-badge-r{background-color:var(--raci-badge-r-bg);color:var(--raci-badge-r);border-color:var(--raci-badge-r)}.raci-badge-a{background-color:var(--raci-badge-a-bg);color:var(--raci-badge-a);border-color:var(--raci-badge-a)}.raci-badge-c{background-color:var(--raci-badge-c-bg);color:var(--raci-badge-c);border-color:var(--raci-badge-c)}.raci-badge-i{background-color:var(--raci-badge-i-bg);color:var(--raci-badge-i);border-color:var(--raci-badge-i)}.raci-badge-empty{background-color:var(--raci-badge-empty-bg);color:var(--raci-badge-empty);border-color:var(--color-border)}.raci-badge-empty:hover:not(:disabled){background-color:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.raci-table-wrapper{border:1px solid var(--table-border);border-radius:var(--radius-md);background-color:var(--color-bg-base);overflow-x:auto}.raci-table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--font-size-sm)}.raci-table th,.raci-table td{padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--table-border)}.raci-table th{background-color:var(--table-header-bg);color:var(--table-header-text);font-weight:var(--font-weight-semibold);white-space:nowrap}.raci-col-task{min-width:240px}.raci-col-status{text-align:center;width:140px}.raci-col-user{text-align:center;min-width:110px}.raci-table tr:hover td{background-color:var(--table-row-hover)}.raci-task-code{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-right:var(--spacing-2);display:inline-block}.raci-task-title{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.raci-cell{text-align:center}.raci-status-pill{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.raci-status-ok{color:var(--raci-validation-ok);border:1px solid var(--raci-validation-ok);background-color:#10b9811f}.raci-status-warning{color:var(--raci-validation-warning);border:1px solid var(--raci-validation-warning);background-color:#f59e0b1f}.raci-status-error{color:var(--raci-validation-error);border:1px solid var(--raci-validation-error);background-color:#ef44441f}.raci-user-sub{color:var(--color-text-secondary);font-size:.7rem;display:block}.raci-feedback-alert{padding:var(--spacing-3) var(--spacing-4);border-left:4px solid var(--color-primary);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-primary);background-color:#2563eb1a;justify-content:space-between;align-items:center;display:flex}.raci-alert-close-btn{cursor:pointer;color:inherit;padding:var(--spacing-1);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.raci-alert-close-btn:hover{opacity:.8;background-color:#ffffff1a}.raci-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-bg-base);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.raci-toolbar-actions{align-items:center;gap:var(--spacing-2);display:flex}.raci-user-header-content{flex-direction:column;align-items:center;gap:4px;min-width:125px;padding:2px 4px;display:flex}.raci-user-name-wrapper{justify-content:center;align-items:center;gap:6px;max-width:100%;display:inline-flex}.raci-user-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:150px;line-height:1.25;overflow:hidden}.raci-user-role-badge{font-size:.7rem;font-weight:var(--font-weight-medium);border-radius:var(--radius-full);color:var(--color-primary,#2563eb);text-overflow:ellipsis;white-space:nowrap;background-color:#2563eb1f;border:1px solid #2563eb40;max-width:130px;padding:1px 6px;display:inline-block;overflow:hidden}.raci-btn-remove-user{border-radius:var(--radius-full);background-color:var(--raci-btn-remove-bg);border:1px solid var(--raci-btn-remove-border);width:18px;min-width:18px;height:18px;min-height:18px;color:var(--raci-btn-remove-color);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:static}.raci-btn-remove-user:hover{background-color:var(--raci-btn-remove-hover-bg);border-color:var(--raci-btn-remove-hover-border);color:var(--raci-btn-remove-hover-color);transform:scale(1.1)}.raci-btn-remove-user:focus-visible{outline:2px solid var(--color-danger,#ef4444);outline-offset:1px}.raci-orphan-tasks-list{margin:var(--spacing-2) 0;padding-left:var(--spacing-5);font-size:var(--font-size-xs);color:var(--color-text-primary);max-height:180px;overflow-y:auto}.raci-orphan-tasks-list li{margin-bottom:var(--spacing-1)}.risk-mgmt-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1050;padding:var(--spacing-4,16px);background-color:#000000b3;justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) modalFadeIn;display:flex;position:fixed;inset:0}.risk-mgmt-dialog{background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-xl,16px);flex-direction:column;width:95vw;max-width:900px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #0009}.risk-mgmt-header{padding:var(--spacing-4,16px) var(--spacing-6,24px);border-bottom:1px solid var(--color-border,#334155);background-color:var(--color-bg-elevated,#0f172a);justify-content:space-between;align-items:center;display:flex}.risk-mgmt-header-left{align-items:center;gap:var(--spacing-3,12px);display:flex}.risk-mgmt-icon-badge{border-radius:var(--radius-md,8px);width:40px;height:40px;color:var(--color-status-danger,#dc2626);background-color:#dc262626;justify-content:center;align-items:center;display:flex}.risk-mgmt-code{font-family:monospace;font-size:var(--font-size-xs,.75rem);background-color:var(--color-bg-muted,#334155);border-radius:var(--radius-sm,4px);color:var(--color-text-primary,#f8fafc);padding:2px 6px;font-weight:700}.risk-mgmt-status-badge{border-radius:var(--radius-full,9999px);letter-spacing:.04em;border:1px solid;padding:2px 8px;font-size:.6875rem;font-weight:700}.risk-mgmt-title{font-size:var(--font-size-base,1rem);color:var(--color-text-primary,#f8fafc);margin:4px 0 0;font-weight:700}.risk-mgmt-alert{margin:var(--spacing-3,12px) var(--spacing-6,24px) 0;border-radius:var(--radius-md,8px);font-size:var(--font-size-xs,.75rem);align-items:center;gap:8px;padding:10px 14px;display:flex}.risk-mgmt-alert-error{border:1px solid var(--color-status-danger,#ef4444);color:var(--color-status-danger,#ef4444);background-color:#ef44441a}.risk-mgmt-alert-success{border:1px solid var(--color-status-success,#10b981);color:var(--color-status-success,#10b981);background-color:#10b9811a}.risk-mgmt-body{padding:var(--spacing-6,24px);gap:var(--spacing-6,24px);grid-template-columns:1.1fr 1fr;display:grid;overflow-y:auto}@media (width<=768px){.risk-mgmt-body{grid-template-columns:1fr}}.risk-mgmt-panel-header{align-items:center;gap:var(--spacing-2,8px);font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-3,12px);padding-bottom:var(--spacing-2,8px);border-bottom:1px solid var(--color-border,#334155);font-weight:700;display:flex}.risk-mgmt-timeline-panel{flex-direction:column;display:flex}.risk-mgmt-timeline-list{gap:var(--spacing-3,12px);max-height:420px;padding-right:var(--spacing-2,8px);flex-direction:column;display:flex;overflow-y:auto}.risk-mgmt-empty{padding:var(--spacing-6,24px);text-align:center;color:var(--color-text-muted,#64748b);font-size:var(--font-size-xs,.75rem);border:1px dashed var(--color-border,#334155);border-radius:var(--radius-md,8px)}.risk-timeline-item{gap:var(--spacing-3,12px);padding:var(--spacing-3,12px);background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border,#334155);border-radius:var(--radius-lg,12px);display:flex;position:relative}.risk-timeline-dot{background-color:var(--color-primary,#3b82f6);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.risk-timeline-content{flex-direction:column;gap:4px;width:100%;min-width:0;display:flex}.risk-timeline-meta{color:var(--color-text-muted,#64748b);justify-content:space-between;align-items:center;font-size:.6875rem;display:flex}.risk-timeline-user,.risk-timeline-date{align-items:center;gap:4px;display:inline-flex}.risk-timeline-states{flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:.75rem;display:flex}.risk-state-tag{text-transform:capitalize;font-weight:600}.risk-residual-tag{color:var(--color-status-warning,#d97706);background-color:#d9770626;border-radius:4px;padding:1px 6px;font-size:.6875rem;font-weight:600}.risk-timeline-comment{font-size:var(--font-size-xs,.75rem);color:var(--color-text-primary,#f8fafc);white-space:pre-wrap;margin:4px 0 0;line-height:1.4}.risk-mgmt-form-panel{flex-direction:column;display:flex}.risk-mgmt-form{gap:var(--spacing-4,16px);flex-direction:column;display:flex}.risk-mgmt-field{gap:var(--spacing-1,4px);flex-direction:column;display:flex}.risk-mgmt-label{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8);font-weight:500}.risk-mgmt-select,.risk-mgmt-textarea{background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,8px);width:100%;color:var(--color-text-primary,#f8fafc);font-size:var(--font-size-sm,.875rem);transition:border-color var(--transition-fast,.15s ease);outline:none;padding:8px 12px}.risk-mgmt-select:focus,.risk-mgmt-textarea:focus{border-color:var(--color-primary,#3b82f6)}.risk-mgmt-residual-box{padding:var(--spacing-3,12px);border-radius:var(--radius-md,8px);background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border,#334155);gap:var(--spacing-3,12px);flex-direction:column;display:flex}.risk-mgmt-checkbox-label{align-items:center;gap:var(--spacing-2,8px);cursor:pointer;font-size:var(--font-size-xs,.75rem);color:var(--color-text-primary,#f8fafc);font-weight:500;display:flex}.risk-mgmt-sliders-row{gap:var(--spacing-2,8px);padding-top:var(--spacing-2,8px);border-top:1px solid var(--color-border,#334155);flex-direction:column;display:flex}.risk-mgmt-slider-field{flex-direction:column;gap:2px;display:flex}.risk-mgmt-slider-label{color:var(--color-text-secondary,#94a3b8);font-size:.6875rem}.risk-mgmt-calc-badge{font-size:var(--font-size-xs,.75rem);color:var(--color-status-warning,#d97706);text-align:right;margin-top:4px;font-weight:600}.risk-mgmt-actions{justify-content:flex-end;gap:var(--spacing-2,8px);margin-top:var(--spacing-2,8px);display:flex}.risk-mgmt-btn-submit{background-color:var(--color-primary,#2563eb)!important;color:#fff!important;font-weight:600!important}.risk-heatmap-container{gap:var(--spacing-6);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:var(--shadow-sm);color:var(--color-text-primary);flex-direction:column;display:flex}.risk-header{justify-content:space-between;align-items:center;gap:var(--spacing-4);flex-wrap:wrap;display:flex}.risk-header-title h2{margin:0 0 var(--spacing-1) 0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.risk-header-title p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.risk-header-actions{align-items:center;gap:var(--spacing-3);display:flex}.risk-kpi-row{gap:var(--spacing-4);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.risk-kpi-card{padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-bg-base);flex-direction:column;gap:2px;display:flex}.risk-kpi-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.risk-kpi-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:1.1}.risk-kpi-card.kpi-critical .risk-kpi-value{color:var(--risk-level-critical)}.risk-kpi-card.kpi-high .risk-kpi-value{color:var(--risk-level-high)}.risk-kpi-card.kpi-medium .risk-kpi-value{color:var(--risk-level-medium)}.risk-kpi-card.kpi-low .risk-kpi-value{color:var(--risk-level-low)}.heatmap-layout{align-items:center;gap:var(--spacing-2);padding:var(--spacing-4);background-color:var(--color-bg-base);border-radius:var(--radius-md);border:1px solid var(--color-border);flex-direction:column;display:flex}.heatmap-axes-wrapper{align-items:center;gap:var(--spacing-3);display:flex}.heatmap-y-label{writing-mode:vertical-rl;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;transform:rotate(180deg)}.heatmap-grid{grid-template-rows:repeat(5,minmax(55px,65px));grid-template-columns:repeat(5,minmax(65px,80px));gap:4px;display:grid}.heatmap-cell{border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast);-webkit-user-select:none;user-select:none;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border:2px solid #0000;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.heatmap-cell:hover{z-index:2;box-shadow:var(--shadow-md);transform:scale(1.05)}.heatmap-cell.selected{border-color:var(--color-primary);outline:2px solid var(--color-primary);z-index:3}.heatmap-score{opacity:.8;font-size:.65rem}.heatmap-badge{border-radius:var(--radius-full);color:#fff;background-color:#0006;justify-content:center;align-items:center;min-width:20px;height:20px;margin-top:2px;padding:0 4px;font-size:.75rem;font-weight:700;display:inline-flex}.cell-critical{background-color:var(--risk-level-critical-bg);color:var(--risk-level-critical)}.cell-high{background-color:var(--risk-level-high-bg);color:var(--risk-level-high)}.cell-medium{background-color:var(--risk-level-medium-bg);color:var(--risk-level-medium)}.cell-low{background-color:var(--risk-level-low-bg);color:var(--risk-level-low)}.heatmap-x-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--spacing-1)}.risk-table-section{gap:var(--spacing-3);flex-direction:column;display:flex}.risk-table-header{justify-content:space-between;align-items:center;display:flex}.risk-table-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.risk-table-wrapper{border:1px solid var(--table-border);border-radius:var(--radius-md);overflow-x:auto}.risk-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm);text-align:left}.risk-table th,.risk-table td{padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--table-border)}.risk-table th{background-color:var(--table-header-bg);color:var(--table-header-text);font-weight:var(--font-weight-semibold)}.risk-table tr:hover td{background-color:var(--table-row-hover)}.risk-code{font-family:var(--font-family-mono);font-weight:var(--font-weight-bold);color:var(--color-primary)}.risk-severity-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.risk-severity-critical{background-color:var(--risk-level-critical-bg);color:var(--risk-level-critical);border:1px solid var(--risk-level-critical)}.risk-severity-high{background-color:var(--risk-level-high-bg);color:var(--risk-level-high);border:1px solid var(--risk-level-high)}.risk-severity-medium{background-color:var(--risk-level-medium-bg);color:var(--risk-level-medium);border:1px solid var(--risk-level-medium)}.risk-severity-low{background-color:var(--risk-level-low-bg);color:var(--risk-level-low);border:1px solid var(--risk-level-low)}.risk-confidential-tag{border-radius:var(--radius-sm);color:var(--color-status-danger);font-size:.7rem;font-weight:var(--font-weight-semibold);margin-left:var(--spacing-2);background-color:#dc262626;align-items:center;padding:1px 6px;display:inline-flex}.risk-modal-overlay{background-color:var(--modal-backdrop-bg);z-index:1000;padding:var(--spacing-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.risk-modal-content{background-color:var(--modal-surface-bg);border:1px solid var(--modal-border);border-radius:var(--radius-lg);padding:var(--spacing-6);width:100%;max-width:540px;box-shadow:var(--shadow-lg);gap:var(--spacing-4);flex-direction:column;display:flex}.risk-form-group{justify-content:flex-start;gap:var(--spacing-2);flex-direction:column;display:flex}.risk-form-group label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);min-height:18px;line-height:1.2}.risk-form-group input,.risk-form-group select,.risk-form-group textarea{box-sizing:border-box;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-base);color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-sm)}.risk-form-group input,.risk-form-group select{height:42px;margin-top:auto}.risk-form-group input:focus,.risk-form-group select:focus,.risk-form-group textarea:focus{outline:2px solid var(--color-primary);border-color:#0000}.risk-form-row{gap:var(--spacing-4);grid-template-columns:1fr 1fr;align-items:stretch;display:grid}@media (width<=580px){.risk-form-row{grid-template-columns:1fr}.risk-form-group input,.risk-form-group select{margin-top:0}}.risk-modal-actions{justify-content:flex-end;gap:var(--spacing-3);margin-top:var(--spacing-2);display:flex}.artifact-manager{gap:var(--space-4);padding:var(--space-4);background-color:var(--color-bg-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);flex-direction:column;display:flex}.artifact-manager__header{justify-content:space-between;align-items:center;display:flex}.artifact-manager__title{font-size:var(--font-size-sm);color:var(--color-text-primary);align-items:center;gap:var(--space-2);font-weight:600;display:flex}.artifact-manager__count{font-size:var(--font-size-xs);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);padding:2px 8px;font-weight:600}.artifact-grid-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg-surface);width:100%;box-shadow:var(--shadow-sm);overflow-x:auto}.artifact-table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--font-size-xs)}.artifact-table th{padding:var(--space-2) var(--space-3);background-color:var(--color-bg-elevated);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);white-space:nowrap;font-weight:600}.artifact-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.artifact-table tbody tr:last-child td{border-bottom:none}.artifact-table tbody tr:hover{background-color:var(--color-bg-surface-hover,#ffffff08)}.artifact-row--editing{background-color:var(--color-primary-subtle,#2563eb1f)!important;border-left:3px solid var(--color-primary)!important}.artifact-row--editing td{background-color:#0000!important}.artifact-path-text{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:320px;font-weight:500;display:block;overflow:hidden}.artifact-item__actions{align-items:center;gap:4px;display:inline-flex}.artifact-empty-state{padding:var(--space-5) var(--space-4);text-align:center;background-color:var(--color-bg-surface);border:1px dashed var(--color-border);border-radius:var(--radius-sm);justify-content:center;align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.artifact-empty-icon{font-size:24px;line-height:1}.artifact-empty-title{font-size:var(--font-size-sm);color:var(--color-text-primary);font-weight:600}.artifact-empty-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);max-width:420px}.artifact-badge{border-radius:var(--radius-sm);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;align-items:center;gap:4px;padding:3px 8px;font-weight:600;display:inline-flex}.artifact-badge--code,.artifact-badge--codigo_fuente{background-color:var(--artifact-badge-code-bg);color:var(--artifact-badge-code);border:1px solid var(--artifact-badge-code)}.artifact-badge--sql,.artifact-badge--script_sql{background-color:var(--artifact-badge-sql-bg);color:var(--artifact-badge-sql);border:1px solid var(--artifact-badge-sql)}.artifact-badge--config,.artifact-badge--archivo_config{background-color:var(--artifact-badge-config-bg);color:var(--artifact-badge-config);border:1px solid var(--artifact-badge-config)}.artifact-badge--doc,.artifact-badge--documentacion{background-color:var(--artifact-badge-doc-bg);color:var(--artifact-badge-doc);border:1px solid var(--artifact-badge-doc)}.artifact-badge--otro{background-color:var(--artifact-badge-other-bg);color:var(--artifact-badge-other);border:1px solid var(--artifact-badge-other)}.artifact-badge--genexus,.artifact-badge--objeto_genexus{background-color:var(--artifact-badge-gx-bg,#9333ea1f);color:var(--artifact-badge-gx,#a855f7);border:1px solid var(--artifact-badge-gx-border,#a855f773)}.artifact-editing-banner{padding:var(--space-2) var(--space-3);background-color:var(--color-primary-subtle,#2563eb1f);border:1px solid var(--color-primary);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-primary);justify-content:space-between;align-items:center;display:flex}.artifact-form{gap:var(--space-3);padding:var(--space-3);background-color:var(--color-bg-surface);border:1px dashed var(--color-border);border-radius:var(--radius-sm);flex-direction:column;display:flex}.artifact-form__row{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.artifact-form__select-type{flex:0 0 160px}.artifact-form__select-gx{flex:0 0 200px}.artifact-form__input-name,.artifact-form__input-path{flex:200px;min-width:180px}.artifact-form__btn-add{flex:none}.artifact-form input,.artifact-form select{height:38px;min-height:38px;padding:0 var(--space-3);font-size:var(--font-size-sm);background-color:var(--color-bg-base);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);box-sizing:border-box}.artifact-form .artifact-form__btn-add{height:38px;min-height:38px;padding:0 var(--space-4);font-size:var(--font-size-sm);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.artifact-form input:focus,.artifact-form select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-subtle,#2563eb40);outline:none}.artifact-form__mono{font-family:var(--font-family-mono)}.artifact-form__error{align-items:center;gap:var(--space-1);display:flex}.audit-timeline{padding-left:var(--space-6);margin-top:var(--space-4);flex-direction:column;gap:0;display:flex;position:relative}.audit-timeline:before{content:"";background-color:var(--color-border);width:2px;position:absolute;top:10px;bottom:10px;left:11px}.audit-entry{padding-bottom:var(--space-5);position:relative}.audit-entry:last-child{padding-bottom:0}.audit-entry__node{left:calc(-1 * var(--space-6) + 4px);background-color:var(--color-bg-base);border:2px solid var(--color-primary);z-index:1;border-radius:50%;width:16px;height:16px;position:absolute;top:4px}.audit-entry--imputacion .audit-entry__node,.audit-entry--creacion .audit-entry__node{border-color:var(--color-status-success)}.audit-entry--reagendamiento .audit-entry__node{border-color:var(--color-status-warning)}.audit-entry--eliminacion .audit-entry__node{border-color:var(--color-status-danger)}.audit-entry--modificacion .audit-entry__node{border-color:var(--color-primary)}.audit-entry--estado .audit-entry__node{border-color:var(--color-status-info)}.audit-entry__card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-sm)}.audit-entry__header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.audit-entry__author{font-size:var(--font-size-xs);color:var(--color-text-primary);font-weight:600}.audit-entry__date{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.audit-entry__comment{font-size:var(--font-size-xs);color:var(--color-text-primary);margin-bottom:var(--space-2)}.audit-entry__artifacts{gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border-subtle);flex-direction:column;display:flex}.task-types-report-container{gap:var(--spacing-6,24px);flex-direction:column;width:100%;display:flex}.task-types-header{justify-content:space-between;align-items:center;gap:var(--spacing-4,16px);padding:var(--spacing-4,16px) var(--spacing-5,20px);background:var(--color-surface,var(--bg-card,#1e293b));border:1px solid var(--border-subtle,#94a3b826);border-radius:var(--border-radius-lg,12px);flex-wrap:wrap;display:flex}.task-types-header-info h3{font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#f8fafc);align-items:center;gap:var(--spacing-2,8px);margin:0;display:flex}.task-types-header-info p{margin:var(--spacing-1,4px) 0 0 0;font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8)}.task-types-controls{align-items:center;gap:var(--spacing-3,12px);flex-wrap:wrap;display:flex}.task-types-segmented-group{background:var(--bg-surface-elevated,#0f172a99);border:1px solid var(--border-subtle,#94a3b833);border-radius:var(--border-radius-md,8px);gap:2px;padding:3px;display:inline-flex}.task-types-segmented-btn{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);border-radius:var(--border-radius-sm,6px);color:var(--color-text-secondary,#94a3b8);cursor:pointer;background:0 0;border:none;padding:6px 14px;transition:all .15s ease-in-out}.task-types-segmented-btn:hover{color:var(--color-text-primary,#f8fafc);background:#ffffff0d}.task-types-segmented-btn.active{background:var(--color-primary,#3b82f6);color:#fff;font-weight:var(--font-weight-semibold,600);box-shadow:0 1px 3px #0003}.task-types-input-filter{font-size:var(--font-size-xs,.75rem);color:var(--form-input-text,var(--color-text-primary,#f8fafc));background:var(--form-input-bg,var(--bg-card,#0f172a));border:1px solid var(--form-input-border,#94a3b840);border-radius:var(--border-radius-md,8px);outline:none;padding:6px 10px;transition:border-color .15s}.task-types-input-filter:focus{border-color:var(--form-input-focus-ring,#3b82f6)}.task-types-kpis-grid{gap:var(--spacing-4,16px);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.task-type-kpi-card{padding:var(--spacing-4,16px);background:var(--color-surface,var(--bg-card,#1e293b));border:1px solid var(--border-subtle,#94a3b826);border-radius:var(--border-radius-lg,12px);gap:var(--spacing-2,8px);flex-direction:column;display:flex}.task-type-kpi-title{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);color:var(--color-text-secondary,#94a3b8);justify-content:space-between;align-items:center;display:flex}.task-type-kpi-value-row{align-items:baseline;gap:var(--spacing-3,12px);display:flex}.task-type-kpi-number{font-size:var(--font-size-2xl,1.75rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#f8fafc);line-height:1}.task-type-kpi-delta-badge{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);border-radius:var(--border-radius-full,9999px);align-items:center;gap:3px;padding:2px 8px;display:inline-flex}.task-type-kpi-delta-badge.positive{color:#10b981;background:#10b98126}.task-type-kpi-delta-badge.negative{color:#ef4444;background:#ef444426}.task-type-kpi-delta-badge.neutral{color:#94a3b8;background:#94a3b826}.task-type-kpi-subtitle{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8)}.task-types-charts-grid{gap:var(--spacing-4,16px);grid-template-columns:3fr 2fr;display:grid}@media (width<=900px){.task-types-charts-grid{grid-template-columns:1fr}}.task-types-chart-card{padding:var(--spacing-4,16px);background:var(--color-surface,var(--bg-card,#1e293b));border:1px solid var(--border-subtle,#94a3b826);border-radius:var(--border-radius-lg,12px);flex-direction:column;display:flex}.task-types-chart-card-header{margin-bottom:var(--spacing-3,12px)}.task-types-chart-card-title{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#f8fafc);margin:0}.task-types-chart-card-subtitle{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8);margin:var(--spacing-1,4px) 0 0 0}.task-types-canvas-wrapper{width:100%;height:280px;position:relative}.task-types-table-card{background:var(--color-surface,var(--bg-card,#1e293b));border:1px solid var(--border-subtle,#94a3b826);border-radius:var(--border-radius-lg,12px);overflow:hidden}.task-types-table-card-header{padding:var(--spacing-4,16px) var(--spacing-5,20px);border-bottom:1px solid var(--border-subtle,#94a3b826)}.task-types-table-container{width:100%;overflow-x:auto}.task-types-table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--font-size-xs,.75rem)}.task-types-table th{background:var(--bg-surface-elevated,#0f172a66);color:var(--color-text-secondary,#94a3b8);font-weight:var(--font-weight-semibold,600);border-bottom:1px solid var(--border-subtle,#94a3b826);text-transform:uppercase;letter-spacing:.03em;padding:10px 14px}.task-types-table td{border-bottom:1px solid var(--border-subtle,#94a3b81a);color:var(--color-text-primary,#f8fafc);padding:12px 14px}.task-types-table tr:hover td{background:#ffffff05}.task-type-badge-pill{font-weight:var(--font-weight-semibold,600);border-radius:4px;align-items:center;gap:6px;padding:2px 8px;font-size:.7rem;display:inline-flex}.task-types-delta-cell{font-weight:var(--font-weight-semibold,600);align-items:center;gap:4px;display:inline-flex}.task-types-empty-alert{justify-content:space-between;align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-3,12px) var(--spacing-4,16px);border-radius:var(--border-radius-md,8px);color:var(--color-text-primary,#f8fafc);font-size:var(--font-size-xs,.75rem);background:#3b82f614;border:1px solid #3b82f640;flex-wrap:wrap;display:flex}.task-types-empty-alert-message{align-items:center;gap:var(--spacing-2,8px);color:var(--color-primary-light,#93c5fd);display:flex}.task-types-btn-ver-todo{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);background:var(--color-primary,#3b82f6);color:#fff;border-radius:var(--border-radius-sm,6px);cursor:pointer;border:none;padding:5px 12px;transition:all .15s}.task-types-btn-ver-todo:hover{background:var(--color-primary-hover,#2563eb)}.task-types-error-card{gap:var(--spacing-4,16px);padding:var(--spacing-6,24px);border-radius:var(--border-radius-lg,12px);color:var(--color-text-primary,#f8fafc);margin-top:var(--spacing-2,8px);background:#ef444414;border:1px solid #ef444440;flex-direction:column;display:flex}.task-types-error-content{align-items:flex-start;gap:var(--spacing-4,16px);display:flex}.task-types-error-icon{color:var(--color-status-danger,#ef4444);flex-shrink:0;margin-top:2px}.task-types-error-text h4{font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-semibold,600);color:var(--color-status-danger,#ef4444);margin:0 0 6px}.task-types-error-text p{font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary,#cbd5e1);margin:0;line-height:1.4}.task-types-error-actions{align-items:center;gap:var(--spacing-3,12px);padding-left:calc(28px + var(--spacing-4,16px));flex-wrap:wrap;display:flex}.task-types-btn-retry{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);background:var(--color-status-danger,#ef4444);color:#fff;border-radius:var(--border-radius-md,8px);cursor:pointer;border:none;align-items:center;gap:6px;padding:8px 16px;transition:all .15s;display:inline-flex}.task-types-btn-retry:hover{background:#dc2626;transform:translateY(-1px)}.task-types-btn-retry:focus-visible{outline:2px solid var(--form-input-focus-ring,#ef444480);outline-offset:2px}.task-types-btn-fallback-todo{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);background:var(--color-surface-hover,#94a3b826);color:var(--color-text-primary,#f8fafc);border:1px solid var(--border-subtle,#94a3b833);border-radius:var(--border-radius-md,8px);cursor:pointer;align-items:center;padding:8px 16px;transition:all .15s;display:inline-flex}.task-types-btn-fallback-todo:hover{background:#94a3b840;border-color:#94a3b866}.report-suite-container{gap:var(--spacing-6);padding:var(--spacing-6);background-color:var(--color-bg-base);color:var(--color-text-primary);flex-direction:column;min-height:100%;display:flex}.report-controls-bar{justify-content:space-between;align-items:center;gap:var(--spacing-4);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-4) var(--spacing-6);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.report-selector-group{gap:var(--spacing-2);flex-wrap:wrap;display:flex}.report-tab-btn{color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0}.report-tab-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-hover);border-color:var(--color-border-focus)}.report-tab-btn.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.report-action-group{align-items:center;gap:var(--spacing-3);display:flex}.btn-print-export{align-items:center;gap:var(--spacing-2);background:linear-gradient(135deg, var(--color-primary), #1d4ed8);color:#fff;border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-5);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--shadow-md);transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:none;display:inline-flex}.btn-print-export:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.report-sheet{color:#0f172a;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);background-color:#fff;width:100%;max-width:900px;margin:0 auto;padding:40px}.report-header{padding-bottom:var(--spacing-4);margin-bottom:var(--spacing-6);border-bottom:2px solid #cbd5e1;justify-content:space-between;align-items:flex-start;display:flex}.report-brand-logo{align-items:center;gap:var(--spacing-3);display:flex}.brand-icon{font-size:2rem}.brand-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:#0f172a;margin:0}.brand-subtitle{font-size:var(--font-size-xs);color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin:0}.report-meta{text-align:right}.report-badge-classification{font-size:.65rem;font-weight:var(--font-weight-bold);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;padding:2px 8px;display:inline-block}.report-badge-classification.confidencial{color:#dc2626;background-color:#fee2e2;border:1px solid #f87171}.report-badge-classification.cliente{color:#0284c7;background-color:#e0f2fe;border:1px solid #38bdf8}.report-date{font-size:var(--font-size-xs);color:#64748b;margin:0}.report-project-summary{border-radius:var(--radius-md);padding:var(--spacing-4);margin-bottom:var(--spacing-6);background-color:#f8fafc;border:1px solid #e2e8f0}.report-project-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:#0f172a;margin:0 0 var(--spacing-2) 0}.report-project-desc{font-size:var(--font-size-sm);color:#475569;margin:0 0 var(--spacing-3) 0;line-height:1.4}.report-project-grid{gap:var(--spacing-3);font-size:var(--font-size-xs);grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.report-grid-item{flex-direction:column;display:flex}.report-grid-label{color:#64748b;font-weight:var(--font-weight-medium)}.report-grid-value{color:#0f172a;font-weight:var(--font-weight-semibold)}.report-metrics-grid{gap:var(--spacing-4);margin-bottom:var(--spacing-6);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.report-metric-card{border-radius:var(--radius-md);padding:var(--spacing-3) var(--spacing-4);text-align:center;background:#f8fafc;border:1px solid #e2e8f0}.report-metric-title{text-transform:uppercase;color:#64748b;letter-spacing:.05em;margin-bottom:4px;font-size:.7rem}.report-metric-value{font-size:1.25rem;font-weight:var(--font-weight-bold);color:#0f172a}.report-metric-subtext{color:#64748b;margin-top:2px;font-size:.7rem}.report-section{margin-bottom:var(--spacing-6);break-inside:avoid}.report-section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-bold);color:#0f172a;padding-bottom:var(--spacing-2);margin-bottom:var(--spacing-3);border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;display:flex}.report-table{border-collapse:collapse;text-align:left;width:100%;font-size:.8rem}.report-table th{color:#475569;font-weight:var(--font-weight-semibold);background-color:#f1f5f9;border-bottom:2px solid #cbd5e1;padding:8px 12px}.report-table td{color:#334155;border-bottom:1px solid #e2e8f0;padding:8px 12px}.report-table tr:nth-child(2n){background-color:#f8fafc}.prefacturacion-cycle-selector-group{align-items:center;gap:var(--spacing-2,8px);display:flex}.prefacturacion-cycle-label{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary,#64748b);text-transform:uppercase;letter-spacing:.05em}.prefacturacion-cycle-selector{background-color:var(--color-bg-base,#fff);color:var(--color-text-primary,#1e293b);border:1px solid var(--color-border,#cbd5e1);border-radius:var(--radius-md,6px);font-size:var(--font-size-sm,.875rem);cursor:pointer;transition:border-color var(--transition-fast,.2s);outline:none;padding:6px 12px}.prefacturacion-cycle-selector:focus{border-color:var(--color-primary,#2563eb);box-shadow:0 0 0 2px #2563eb26}.prefacturacion-client-card{border-radius:var(--radius-md,6px);padding:var(--spacing-4,16px);margin-bottom:var(--spacing-4,16px);background:#f8fafc;border:1px solid #e2e8f0}.prefacturacion-client-grid{gap:var(--spacing-3,12px);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.prefacturacion-field{flex-direction:column;gap:2px;display:flex}.prefacturacion-field .field-label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-size:.7rem;font-weight:600}.prefacturacion-field .field-value{color:#1e293b;font-size:.85rem}.prefacturacion-field .ciclo-badge{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:4px;width:fit-content;padding:2px 6px;font-weight:600;display:inline-block}.prefacturacion-dossier-list{gap:var(--spacing-4,16px);flex-direction:column;display:flex}.dds-dossier-card{border-radius:var(--radius-md,6px);padding:var(--spacing-4,16px);background:#fff;border:1px solid #e2e8f0;border-left:4px solid #2563eb;box-shadow:0 1px 3px #0000000d}.dds-dossier-header{justify-content:space-between;align-items:center;gap:var(--spacing-2,8px);padding-bottom:var(--spacing-2,8px);margin-bottom:var(--spacing-3,12px);border-bottom:1px solid #f1f5f9;flex-wrap:wrap;display:flex}.dds-card-code{color:#1e40af;font-size:.95rem}.dds-card-title{color:#1e293b;font-weight:600}.dds-card-badge{border-radius:12px;padding:2px 8px;font-size:.72rem;font-weight:600}.dds-card-badge.aprobada{color:#166534;background:#dcfce7;border:1px solid #bbf7d0}.dds-card-badge.borrador{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.dds-dossier-body{color:#334155;font-size:.85rem;line-height:1.6}.dds-attachment-list{margin-top:var(--spacing-3,12px);padding-top:var(--spacing-2,8px);border-top:1px dashed #cbd5e1;font-size:.75rem}.dds-attachment-title{color:#475569;margin-bottom:4px;font-weight:600}.dds-attachment-list ul{flex-direction:column;gap:3px;margin:0;padding:0;list-style:none;display:flex}.dds-attachment-list li{color:#2563eb}.report-footer{margin-top:var(--spacing-8);padding-top:var(--spacing-3);color:#94a3b8;border-top:1px solid #cbd5e1;justify-content:space-between;align-items:center;font-size:.7rem;display:flex}@media print{@page{size:A4 portrait;margin:15mm}body{font-size:10pt;color:#000!important;background:#fff!important}.no-print,.report-controls-bar,.navbar,.sidebar,button,.role-selector-bar,header:not(.report-header){display:none!important}.report-suite-container{background:0 0!important;padding:0!important}.report-sheet{width:100%!important;max-width:100%!important;box-shadow:none!important;background:#fff!important;border:none!important;margin:0!important;padding:0!important}.report-section,.dds-dossier-card,.prefacturacion-client-card{page-break-inside:avoid;break-inside:avoid}.page-break{page-break-before:always;break-before:page}.report-table th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background-color:#e2e8f0!important}.report-badge-classification{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.chronos-imputar-horas-backdrop{background-color:var(--color-backdrop,#0f172aa6);-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal,1000);padding:var(--spacing-4,16px);justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) chronosFadeIn;display:flex;position:fixed;inset:0}.chronos-imputar-horas-modal{background-color:var(--color-bg-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,14px);box-shadow:var(--shadow-2xl,0 25px 50px -12px #00000040);width:100%;max-width:560px;max-height:90vh;color:var(--color-text-primary,#0f172a);flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) chronosScaleUp;display:flex;overflow:hidden}.imputar-horas-header{padding:var(--spacing-5,20px) var(--spacing-6,24px);border-bottom:1px solid var(--color-border,#e2e8f0);background-color:var(--color-bg-surface,#fff);justify-content:space-between;align-items:flex-start;display:flex}.imputar-horas-header-info{align-items:center;gap:var(--spacing-3,12px);display:flex}.imputar-horas-header-icon{border-radius:var(--radius-lg,10px);width:42px;height:42px;color:var(--color-primary,#2563eb);background:linear-gradient(135deg,#2563eb1f,#2563eb0d);border:1px solid #2563eb33;flex-shrink:0;justify-content:center;align-items:center;display:flex}.imputar-horas-title{font-size:var(--font-size-lg,18px);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#0f172a);margin:0;line-height:1.3}.imputar-horas-subtitle{margin:var(--spacing-1,4px) 0 0 0;font-size:var(--font-size-xs,12px);color:var(--color-text-secondary,#64748b);line-height:1.4}.imputar-horas-close-btn{color:var(--color-text-secondary,#64748b);cursor:pointer;padding:var(--spacing-1,4px);border-radius:var(--radius-md,6px);background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.imputar-horas-close-btn:hover{background-color:var(--color-bg-muted,#f1f5f9);color:var(--color-text-primary,#0f172a)}.imputar-horas-alert{margin:var(--spacing-4,16px) var(--spacing-6,24px) 0;padding:var(--spacing-3,12px) var(--spacing-4,16px);border-radius:var(--radius-md,8px);font-size:var(--font-size-xs,13px);align-items:center;gap:var(--spacing-2,8px);display:flex}.imputar-horas-alert.error{background-color:var(--color-status-danger-bg,#fef2f2);color:var(--color-status-danger,#ef4444);border:1px solid var(--color-status-danger,#ef4444)}.imputar-horas-alert.success{background-color:var(--color-status-success-bg,#f0fdf4);color:var(--color-status-success,#16a34a);border:1px solid var(--color-status-success,#16a34a)}.imputar-horas-form{padding:var(--spacing-6,24px);gap:var(--spacing-5,20px);flex-direction:column;display:flex;overflow-y:auto}.imputar-horas-field{gap:var(--spacing-2,8px);flex-direction:column;display:flex}.imputar-horas-label-row{justify-content:space-between;align-items:center;display:flex}.imputar-horas-label{align-items:center;gap:var(--spacing-2,6px);font-size:var(--font-size-xs,13px);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#0f172a);display:flex}.imputar-horas-label-icon{color:var(--color-primary,#2563eb)}.imputar-horas-hint{color:var(--color-text-secondary,#64748b);font-size:11px}.imputar-horas-select-loading{align-items:center;gap:var(--spacing-2,8px);padding:var(--spacing-2,10px) var(--spacing-3,12px);border-radius:var(--radius-md,8px);background-color:var(--color-bg-muted,#f1f5f9);color:var(--color-text-secondary,#64748b);font-size:var(--font-size-xs,13px);display:flex}.imputar-horas-select,.imputar-horas-input,.imputar-horas-textarea{width:100%;padding:var(--spacing-2,10px) var(--spacing-3,12px);border-radius:var(--radius-md,8px);border:1px solid var(--color-border,#cbd5e1);background-color:var(--color-bg-surface,#fff);color:var(--color-text-primary,#0f172a);font-size:var(--font-size-sm,14px);box-sizing:border-box;font-family:inherit;transition:border-color .15s,box-shadow .15s}.imputar-horas-select:focus,.imputar-horas-input:focus,.imputar-horas-textarea:focus{border-color:var(--color-primary,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb2e}.imputar-horas-select.select-warning{border-color:var(--color-status-warning,#f59e0b)}.imputar-horas-field-warning{align-items:center;gap:var(--spacing-2,6px);padding:var(--spacing-2,8px) var(--spacing-3,10px);background-color:var(--color-status-warning-bg,#fffbeb);color:var(--color-status-warning,#b45309);border-radius:var(--radius-sm,6px);font-size:11px;line-height:1.4;display:flex}.option-hito-disabled{color:var(--color-text-disabled,#94a3b8);background-color:var(--color-bg-muted,#f8fafc);font-style:italic}.imputar-horas-grid-2col{gap:var(--spacing-4,16px);grid-template-columns:1fr 1fr;display:grid}@media (width<=520px){.imputar-horas-grid-2col{grid-template-columns:1fr}}.imputar-horas-presets{align-items:center;gap:var(--spacing-1,6px);margin-top:var(--spacing-1,4px);flex-wrap:wrap;display:flex}.imputar-horas-presets-label{color:var(--color-text-secondary,#64748b);margin-right:var(--spacing-1,4px);font-size:11px}.imputar-horas-preset-btn{background-color:var(--color-bg-muted,#f1f5f9);border:1px solid var(--color-border,#cbd5e1);color:var(--color-text-secondary,#475569);font-size:11px;font-weight:var(--font-weight-medium,500);border-radius:var(--radius-sm,4px);cursor:pointer;padding:2px 8px;transition:all .15s}.imputar-horas-preset-btn:hover{background-color:var(--color-primary-light,#eff6ff);color:var(--color-primary,#2563eb);border-color:var(--color-primary,#2563eb)}.imputar-horas-preset-btn.active{background-color:var(--color-primary,#2563eb);color:#fff;border-color:var(--color-primary,#2563eb)}.imputar-horas-textarea{resize:vertical;min-height:72px}.imputar-horas-footer{justify-content:flex-end;align-items:center;gap:var(--spacing-3,12px);padding-top:var(--spacing-4,16px);border-top:1px solid var(--color-border,#e2e8f0);display:flex}@keyframes chronosFadeIn{0%{opacity:0}to{opacity:1}}@keyframes chronosScaleUp{0%{opacity:0;transform:scale(.96)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}:root[data-theme=dark] .chronos-imputar-horas-modal,.dark .chronos-imputar-horas-modal{background-color:var(--color-bg-surface,#1e293b);border-color:var(--color-border,#334155);color:var(--color-text-primary,#f8fafc)}:root[data-theme=dark] .imputar-horas-header,.dark .imputar-horas-header{background-color:var(--color-bg-surface,#1e293b);border-bottom-color:var(--color-border,#334155)}:root[data-theme=dark] .imputar-horas-footer,.dark .imputar-horas-footer{border-top-color:var(--color-border,#334155)}:root[data-theme=dark] .imputar-horas-select,:root[data-theme=dark] .imputar-horas-input,:root[data-theme=dark] .imputar-horas-textarea,.dark .imputar-horas-select,.dark .imputar-horas-input,.dark .imputar-horas-textarea{background-color:var(--color-bg-base,#0f172a);border-color:var(--color-border,#334155);color:var(--color-text-primary,#f8fafc)}:root[data-theme=dark] .option-hito-disabled,.dark .option-hito-disabled{color:#64748b;background-color:#0f172a}:root[data-theme=dark] .imputar-horas-preset-btn,.dark .imputar-horas-preset-btn{background-color:var(--color-bg-muted,#334155);border-color:var(--color-border,#475569);color:var(--color-text-secondary,#cbd5e1)}.reject-modal-overlay{background-color:var(--color-modal-backdrop,#0f172aa6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1070;padding:var(--space-4,1rem);justify-content:center;align-items:center;animation:.2s cubic-bezier(.16,1,.3,1) rejectModalFadeIn;display:flex;position:fixed;inset:0}.reject-modal-container{background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,1rem);box-shadow:var(--shadow-2xl,0 25px 50px -12px #00000040);width:100%;max-width:560px;color:var(--color-text-primary,#0f172a);flex-direction:column;display:flex;overflow:hidden}[data-theme=dark] .reject-modal-container{background-color:var(--color-surface-elevated,#1e293b);border-color:var(--color-border-subtle,#334155)}.reject-modal-header{align-items:flex-start;gap:var(--space-3,.75rem);padding:var(--space-4,1rem) var(--space-6,1.5rem);border-bottom:1px solid var(--color-border-subtle,#f1f5f9);background-color:var(--color-surface-subtle,#f8fafc);display:flex}[data-theme=dark] .reject-modal-header{border-bottom-color:var(--color-border-subtle,#334155);background-color:#1e293b80}.reject-header-icon-box{color:var(--color-status-danger,#ef4444);padding:var(--space-2,.5rem);border-radius:var(--radius-md,.375rem);background-color:#ef44441f;flex-shrink:0;justify-content:center;align-items:center;display:flex}.reject-header-text{flex:1}.reject-modal-title{font-size:var(--font-size-md,1rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#0f172a);margin:0}.reject-modal-subtitle{font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#64748b);margin-top:2px;display:block}.reject-modal-close-btn{color:var(--color-text-muted,#64748b);cursor:pointer;padding:var(--space-1,.25rem);border-radius:var(--radius-sm,.25rem);background:0 0;border:none}.reject-modal-close-btn:hover{color:var(--color-text-primary,#0f172a)}.reject-modal-form{flex-direction:column;display:flex}.reject-modal-body{padding:var(--space-5,1.25rem) var(--space-6,1.5rem);gap:var(--space-4,1rem);flex-direction:column;display:flex}.reject-task-preview{align-items:center;gap:var(--space-2,.5rem);padding:var(--space-2,.5rem) var(--space-3,.75rem);background-color:var(--color-surface-subtle,#f1f5f9);border-radius:var(--radius-md,.375rem);font-size:var(--font-size-xs,.75rem);display:flex}[data-theme=dark] .reject-task-preview{background-color:#ffffff0d}.reject-task-code{font-family:var(--font-family-mono,monospace);font-weight:var(--font-weight-bold,700);color:var(--color-primary,#2563eb)}.reject-task-title{color:var(--color-text-secondary,#334155);font-weight:var(--font-weight-medium,500);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.reject-alert-error{align-items:center;gap:var(--space-2,.5rem);padding:var(--space-2,.5rem) var(--space-3,.75rem);color:var(--color-status-danger,#ef4444);border-radius:var(--radius-md,.375rem);font-size:var(--font-size-xs,.75rem);background-color:#ef44441a;border:1px solid #ef444440;display:flex}.reject-form-group{flex-direction:column;gap:4px;display:flex}.reject-label{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary,#334155)}.reject-textarea{width:100%;padding:var(--space-2,.5rem) var(--space-3,.75rem);border:1px solid var(--color-border,#cbd5e1);border-radius:var(--radius-md,.375rem);font-size:var(--font-size-xs,.8125rem);color:var(--color-text-primary,#0f172a);background-color:var(--color-surface,#fff);resize:vertical;transition:border-color .15s}[data-theme=dark] .reject-textarea{border-color:var(--color-border-subtle,#334155);color:#fff;background-color:#0f172a80}.reject-textarea:focus{border-color:var(--color-status-danger,#ef4444);box-shadow:0 0 0 1px var(--color-status-danger,#ef4444);outline:none}.reject-help-text{color:var(--color-text-muted,#64748b);font-size:.6875rem}.reject-modal-footer{padding:var(--space-3,.75rem) var(--space-6,1.5rem);border-top:1px solid var(--color-border-subtle,#f1f5f9);justify-content:flex-end;align-items:center;gap:var(--space-2,.5rem);background-color:var(--color-surface-subtle,#f8fafc);display:flex}[data-theme=dark] .reject-modal-footer{border-top-color:var(--color-border-subtle,#334155);background-color:#1e293b80}@keyframes rejectModalFadeIn{0%{opacity:0}to{opacity:1}}.client-approval-inbox-card{background-color:var(--color-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,1rem);padding:var(--space-5,1.25rem);box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);gap:var(--space-4,1rem);flex-direction:column;display:flex}[data-theme=dark] .client-approval-inbox-card{background-color:var(--color-surface-elevated,#1e293b);border-color:var(--color-border-subtle,#334155)}.approval-inbox-header{border-bottom:1px solid var(--color-border-subtle,#f1f5f9);padding-bottom:var(--space-3,.75rem);justify-content:space-between;align-items:center;display:flex}[data-theme=dark] .approval-inbox-header{border-bottom-color:var(--color-border-subtle,#334155)}.approval-inbox-title-box{align-items:center;gap:var(--space-2,.5rem);display:flex}.approval-inbox-title{font-size:var(--font-size-md,1rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#0f172a);margin:0}.approval-inbox-badge{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-primary,#2563eb);border-radius:var(--radius-full,9999px);background-color:#2563eb1a;padding:3px 10px}.approval-feedback-alert{align-items:center;gap:var(--space-2,.5rem);padding:var(--space-3,.75rem) var(--space-4,1rem);border-radius:var(--radius-md,.375rem);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);display:flex}.approval-feedback-alert.success{color:var(--color-status-success,#10b981);background-color:#10b9811a;border:1px solid #10b98140}.approval-feedback-alert.warning{color:var(--color-status-warning,#d97706);background-color:#f59e0b1a;border:1px solid #f59e0b40}.approval-feedback-alert.error{color:var(--color-status-danger,#ef4444);background-color:#ef44441a;border:1px solid #ef444440}.approval-empty-box{padding:var(--space-8,2rem) var(--space-4,1rem);text-align:center;justify-content:center;align-items:center;gap:var(--space-2,.5rem);color:var(--color-text-muted,#64748b);flex-direction:column;display:flex}.approval-empty-icon{color:var(--color-status-success,#10b981);opacity:.8;margin-bottom:var(--space-1,.25rem)}.approval-empty-title{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#0f172a);margin:0}.approval-empty-desc{font-size:var(--font-size-xs,.75rem);max-width:380px}.approval-tasks-list{gap:var(--space-3,.75rem);flex-direction:column;display:flex}.approval-task-item{border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-lg,.5rem);background-color:var(--color-surface,#fff);padding:var(--space-3,.75rem) var(--space-4,1rem);gap:var(--space-2,.5rem);flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex}[data-theme=dark] .approval-task-item{border-color:var(--color-border-subtle,#334155);background-color:#0f172a66}.approval-task-item:hover{border-color:var(--color-primary-light,#93c5fd);box-shadow:var(--shadow-sm,0 1px 3px #0000000d)}.approval-task-summary{justify-content:space-between;align-items:center;gap:var(--space-4,1rem);display:flex}.approval-task-info{flex-direction:column;gap:2px;min-width:0;display:flex}.approval-code-line{align-items:center;gap:var(--space-2,.5rem);display:flex}.approval-task-code{font-family:var(--font-family-mono,monospace);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-bold,700);color:var(--color-primary,#2563eb)}.approval-stage-tag{background-color:var(--color-surface-subtle,#f1f5f9);border-radius:var(--radius-sm,.25rem);color:var(--color-text-secondary,#475569);padding:1px 6px;font-size:.6875rem}[data-theme=dark] .approval-stage-tag{background-color:#ffffff14}.approval-task-name{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--color-text-primary,#0f172a);margin:0}.approval-task-actions{align-items:center;gap:var(--space-2,.5rem);flex-shrink:0;display:flex}.btn-approve-uat,.btn-reject-uat{align-items:center;gap:4px;display:inline-flex}.approval-task-expanded-details{border-top:1px dashed var(--color-border-subtle,#e2e8f0);padding-top:var(--space-3,.75rem);margin-top:var(--space-2,.5rem);gap:var(--space-2,.5rem);flex-direction:column;display:flex}[data-theme=dark] .approval-task-expanded-details{border-top-color:var(--color-border-subtle,#334155)}.approval-detail-block{flex-direction:column;gap:2px;display:flex}.approval-detail-label{font-size:.6875rem;font-weight:var(--font-weight-semibold,600);color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.03em}.approval-detail-text{font-size:var(--font-size-xs,.8125rem);line-height:var(--line-height-relaxed,1.55);color:var(--color-text-secondary,#334155);margin:0}.task-types-modal-content{gap:var(--spacing-4,1rem);flex-direction:column;display:flex}.task-types-header-info{background:var(--bg-tertiary,#ffffff08);border:1px solid var(--border-color,#ffffff14);border-radius:var(--border-radius-md,8px);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.task-types-project-badge{font-size:var(--font-size-sm,.875rem);color:var(--text-secondary,#94a3b8);align-items:center;gap:.5rem;display:flex}.task-types-project-name{color:var(--text-primary,#f1f5f9);font-weight:600}.task-types-table-wrapper{border:1px solid var(--border-color,#ffffff14);border-radius:var(--border-radius-md,8px);background:var(--bg-card,#1e293b80);max-height:400px;overflow-y:auto}.task-types-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm,.875rem)}.task-types-table th{background:var(--bg-secondary,#1e293b);color:var(--text-secondary,#94a3b8);text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--border-color,#ffffff1a);z-index:2;padding:.75rem 1rem;font-size:.75rem;font-weight:600;position:sticky;top:0}.task-types-table td{border-bottom:1px solid var(--border-color,#ffffff0d);color:var(--text-primary,#f1f5f9);vertical-align:middle;padding:.75rem 1rem}.task-types-table tr:last-child td{border-bottom:none}.task-types-table tr:hover{background:var(--bg-tertiary,#ffffff05)}.task-type-badge{white-space:nowrap;border:1px solid #0000;border-radius:9999px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-flex}.task-type-color-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.task-type-code{background:var(--bg-tertiary,#ffffff14);color:var(--text-secondary,#94a3b8);border-radius:4px;padding:.15rem .4rem;font-family:monospace;font-size:.75rem;font-weight:600}.task-types-actions{align-items:center;gap:.5rem;display:flex}.task-type-form-container{background:var(--bg-card,#1e293bb3);border:1px solid var(--border-color,#ffffff1a);border-radius:var(--border-radius-md,8px);flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.task-type-form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.task-type-field{flex-direction:column;gap:.35rem;display:flex}.task-type-field.full-width{grid-column:1/-1}.task-type-label{color:var(--text-secondary,#94a3b8);font-size:.8rem;font-weight:600}.task-type-input,.task-type-textarea,.task-type-select{background:var(--form-input-bg,#0f172a);color:var(--form-input-text,#f8fafc);border:1px solid var(--form-input-border,#334155);border-radius:var(--border-radius-sm,6px);font-size:var(--font-size-sm,.875rem);outline:none;padding:.6rem .75rem;transition:border-color .2s,box-shadow .2s}.task-type-input:focus,.task-type-textarea:focus,.task-type-select:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px var(--form-input-focus-ring,#3b82f640)}.task-type-textarea{resize:vertical;min-height:60px}.color-presets-container{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.25rem;display:flex}.color-preset-btn{cursor:pointer;border:2px solid #0000;border-radius:50%;width:26px;height:26px;padding:0;transition:transform .15s,border-color .15s}.color-preset-btn:hover{transform:scale(1.15)}.color-preset-btn.selected{box-shadow:0 0 0 2px var(--color-primary,#3b82f6);border-color:#fff}.task-types-alert-dialog{border-radius:var(--border-radius-md,8px);background:#ef444414;border:1px solid #ef44444d;margin-top:1rem;padding:1.25rem}.task-types-alert-dialog h4{color:#ef4444;align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:1rem;display:flex}.task-types-alert-dialog p{color:var(--text-secondary,#94a3b8);margin:0 0 1rem;font-size:.875rem}.task-types-alert-actions{justify-content:flex-end;gap:.75rem;display:flex}.project-billing-modal-dialog{max-width:var(--billing-modal-max-width);background-color:var(--modal-surface-bg);border:1px solid var(--modal-border);border-radius:var(--radius-xl);width:95%;max-height:90vh;box-shadow:var(--shadow-xl);color:var(--color-text-primary);flex-direction:column;display:flex;overflow:hidden}.project-billing-header{justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-5) var(--spacing-6);border-bottom:1px solid var(--modal-header-border);background-color:var(--modal-surface-bg);display:flex}.project-billing-title-group{gap:var(--spacing-1);flex-direction:column;display:flex}.project-billing-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);align-items:center;gap:var(--spacing-2);margin:0;display:flex}.project-billing-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);align-items:center;gap:var(--spacing-2);flex-wrap:wrap;margin:0;display:flex}.project-billing-regime-badge{align-items:center;gap:var(--spacing-1);padding:2px var(--spacing-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background-color:var(--billing-maintenance-btn-bg);color:var(--billing-maintenance-btn-text);border:1px solid var(--billing-maintenance-btn-border);display:inline-flex}.project-billing-body{padding:var(--spacing-5) var(--spacing-6);gap:var(--spacing-5);flex-direction:column;display:flex;overflow-y:auto}.project-billing-kpi-grid{gap:var(--spacing-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-billing-kpi-card{background-color:var(--billing-kpi-bg);border:1px solid var(--billing-kpi-border);border-radius:var(--billing-kpi-radius);padding:var(--spacing-4);gap:var(--spacing-1);flex-direction:column;display:flex}.project-billing-kpi-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.project-billing-kpi-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.project-billing-kpi-meta{font-size:var(--font-size-xs);color:var(--color-text-muted)}.project-billing-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-3);flex-wrap:wrap;display:flex}.project-billing-toolbar-actions{align-items:center;gap:var(--spacing-3);flex-wrap:wrap;display:flex}.btn-maintenance-monthly{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);background-color:var(--billing-maintenance-btn-bg);color:var(--billing-maintenance-btn-text);border:1px solid var(--billing-maintenance-btn-border);cursor:pointer;transition:all var(--transition-fast);display:inline-flex}.btn-maintenance-monthly:hover:not(:disabled){filter:brightness(1.08);transform:translateY(-1px)}.btn-maintenance-monthly:disabled{opacity:.5;cursor:not-allowed}.project-billing-alert{justify-content:space-between;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);display:flex}.project-billing-alert-error{background-color:var(--color-status-danger-bg);color:var(--color-status-danger);border:1px solid var(--billing-status-cancelled-border)}.project-billing-alert-success{background-color:var(--color-status-success-bg);color:var(--color-status-success);border:1px solid var(--billing-status-invoiced-border)}.project-billing-form-card{background-color:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-5);gap:var(--spacing-4);flex-direction:column;display:flex}.project-billing-form-title{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.project-billing-form-grid{gap:var(--spacing-3);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.project-billing-field{gap:var(--spacing-1);flex-direction:column;display:flex}.project-billing-field label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--form-label-color)}.project-billing-input,.project-billing-select,.project-billing-textarea{width:100%;padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);background-color:var(--form-input-bg);color:var(--form-input-text);border:1px solid var(--form-input-border);font-family:var(--font-family-sans);font-size:var(--font-size-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.project-billing-input:focus,.project-billing-select:focus,.project-billing-textarea:focus{border-color:var(--form-input-border-focus);box-shadow:0 0 0 3px var(--form-input-focus-ring);outline:none}.project-billing-input[readonly],.project-billing-select:disabled{background-color:var(--form-input-disabled-bg);border-color:var(--form-input-disabled-border);color:var(--form-input-disabled-text);cursor:not-allowed}.project-billing-code-input{font-family:var(--font-family-mono);font-weight:var(--font-weight-bold)}.project-billing-form-actions{justify-content:flex-end;align-items:center;gap:var(--spacing-3);display:flex}.billing-status-badge{align-items:center;gap:var(--spacing-1);padding:2px var(--spacing-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);display:inline-flex}.billing-status-pendiente{background-color:var(--billing-status-pending-bg);color:var(--billing-status-pending-text);border:1px solid var(--billing-status-pending-border)}.billing-status-facturado{background-color:var(--billing-status-invoiced-bg);color:var(--billing-status-invoiced-text);border:1px solid var(--billing-status-invoiced-border)}.billing-status-anulado{background-color:var(--billing-status-cancelled-bg);color:var(--billing-status-cancelled-text);border:1px solid var(--billing-status-cancelled-border)}.billing-code-pill{font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-primary);background-color:var(--color-currency-badge-bg);border:1px solid var(--color-currency-badge-border);padding:2px var(--spacing-2);border-radius:var(--radius-sm)}.billing-row-actions{align-items:center;gap:var(--spacing-2);display:flex}.btn-billing-pdf{align-items:center;gap:var(--spacing-1);padding:4px var(--spacing-2);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background-color:var(--color-currency-badge-bg);color:var(--color-currency-badge-text);border:1px solid var(--color-currency-badge-border);cursor:pointer;transition:all var(--transition-fast);display:inline-flex}.btn-billing-pdf:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary)}.invoice-preview-sheet{background-color:var(--invoice-sheet-bg);border:2px solid var(--invoice-sheet-border);border-radius:var(--radius-lg);padding:var(--spacing-6);gap:var(--spacing-5);box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.invoice-preview-top{justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);padding-bottom:var(--spacing-4);border-bottom:2px solid var(--invoice-sheet-border);flex-wrap:wrap;display:flex}.invoice-emitter-block h4{margin:0 0 var(--spacing-1) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.invoice-emitter-block p{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:2px 0}.invoice-folio-box{border:2px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--spacing-3) var(--spacing-4);text-align:center;background-color:var(--invoice-header-bg);min-width:220px}.invoice-folio-type{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;color:var(--color-primary);letter-spacing:.05em}.invoice-folio-number{font-family:var(--font-family-mono);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-top:var(--spacing-1)}.invoice-meta-grid{gap:var(--spacing-4);background-color:var(--invoice-header-bg);border:1px solid var(--invoice-sheet-border);border-radius:var(--radius-md);padding:var(--spacing-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.invoice-meta-section h5{margin:0 0 var(--spacing-2) 0;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;color:var(--color-primary);letter-spacing:.04em}.invoice-meta-row{justify-content:space-between;gap:var(--spacing-2);font-size:var(--font-size-xs);margin-bottom:var(--spacing-1);display:flex}.invoice-meta-label{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.invoice-meta-value{color:var(--color-text-primary);font-weight:var(--font-weight-semibold);text-align:right}.invoice-totals-panel{justify-content:flex-end;display:flex}.invoice-totals-box{background-color:var(--invoice-total-highlight-bg);border:1px solid var(--invoice-sheet-border);border-radius:var(--radius-md);min-width:340px;padding:var(--spacing-4);gap:var(--spacing-2);flex-direction:column;display:flex}.invoice-total-row{justify-content:space-between;align-items:center;gap:var(--spacing-4);font-size:var(--font-size-sm);display:flex}.invoice-total-row.highlight-clp{padding-top:var(--spacing-2);border-top:1px solid var(--invoice-sheet-border);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-primary)}.project-billing-footer{justify-content:flex-end;align-items:center;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--modal-footer-border);background-color:var(--modal-footer-bg);display:flex}@media (width<=900px){.project-billing-kpi-grid,.project-billing-form-grid,.invoice-meta-grid{grid-template-columns:1fr}}.tokens-modal-content{gap:var(--spacing-5,20px);flex-direction:column;max-width:100%;display:flex;overflow-x:hidden}.token-secret-banner{border-radius:var(--radius-lg,8px);padding:var(--spacing-4,16px);gap:var(--spacing-3,12px);background-color:#a855f71f;border:1px solid #a855f780;flex-direction:column;animation:.3s ease-in-out fadeIn;display:flex}.token-secret-header{align-items:center;gap:var(--spacing-2,8px);color:#c084fc;font-size:var(--font-size-sm,14px);font-weight:600;display:flex}.token-secret-box{justify-content:space-between;align-items:center;gap:var(--spacing-3,12px);background-color:var(--color-bg-base,#0f172a);padding:var(--spacing-2,8px) var(--spacing-3,12px);border-radius:var(--radius-md,6px);border:1px solid #a855f74d;display:flex}.token-secret-key{font-family:var(--font-family-mono,monospace);font-size:var(--font-size-xs,12px);color:#38bdf8;word-break:break-all;-webkit-user-select:all;user-select:all}.token-secret-warning{color:var(--color-text-secondary,#94a3b8);font-size:11px;line-height:1.4}.token-generate-card{background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,6px);padding:var(--spacing-4,16px);gap:var(--spacing-3,12px);flex-direction:column;display:flex;overflow-x:hidden}.token-generate-title{font-size:var(--font-size-xs,12px);text-transform:uppercase;color:var(--color-text-secondary,#94a3b8);letter-spacing:.05em;align-items:center;gap:var(--spacing-2,8px);font-weight:600;display:flex}.token-generate-form{gap:var(--spacing-3,12px);flex-direction:column;width:100%;display:flex}.token-generate-row{gap:var(--spacing-3,12px);align-items:flex-end;width:100%;display:flex}.token-generate-row--actions{justify-content:space-between;align-items:flex-end;gap:var(--spacing-3,12px);display:flex}.token-form-field--half{flex:50%;min-width:0}.token-form-field--expiracion{flex:0 0 220px;min-width:0}.token-generate-action{align-items:flex-end;display:flex}.token-select-ellipsis{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.token-usuario-fijo{align-items:center;gap:var(--spacing-2,8px);background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border-subtle,#334155);border-radius:var(--radius-md,6px);font-size:var(--font-size-sm,13px);color:var(--color-text-primary,#f8fafc);min-height:38px;padding:.45rem .75rem;display:flex;overflow:hidden}.token-usuario-fijo-icon{color:var(--color-primary,#3b82f6);flex-shrink:0}.token-usuario-fijo-nombre{white-space:nowrap;font-weight:600}.token-usuario-fijo-email{font-size:var(--font-size-xs,12px);color:var(--color-text-secondary,#94a3b8);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.token-usuario-fijo-rol{color:var(--color-text-muted,#64748b);flex-shrink:0;margin-left:auto;font-size:11px}@media (width<=640px){.token-generate-row,.token-generate-row--actions{flex-direction:column;align-items:stretch}.token-form-field--half,.token-form-field--expiracion{flex:100%;width:100%}.token-generate-action{width:100%}.token-generate-action button{justify-content:center;width:100%}}.token-form-field{flex-direction:column;gap:4px;display:flex}.token-form-field label{color:var(--color-text-primary,#f8fafc);font-size:11px;font-weight:600}.token-form-field input,.token-form-field select{font-size:var(--font-size-xs,12px);background-color:var(--color-bg-base,#0f172a);border:1px solid var(--color-border,#334155);border-radius:var(--radius-sm,4px);color:var(--color-text-primary,#f8fafc);padding:6px 10px}.token-form-field input:focus,.token-form-field select:focus{border-color:var(--color-primary,#3b82f6);outline:none}.tokens-list-header{font-size:var(--font-size-xs,12px);color:var(--color-text-secondary,#94a3b8);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:center;font-weight:600;display:flex}.tokens-list{gap:var(--spacing-3,12px);flex-direction:column;max-height:340px;padding-right:4px;display:flex;overflow-y:auto}.token-item-card{padding:var(--spacing-3,12px);background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,6px);justify-content:space-between;align-items:center;gap:var(--spacing-3,12px);display:flex}.token-item-info{flex-direction:column;gap:4px;display:flex;overflow:hidden}.token-item-top{align-items:center;gap:var(--spacing-2,8px);flex-wrap:wrap;display:flex}.token-item-name{font-size:var(--font-size-sm,14px);color:var(--color-text-primary,#f8fafc);font-weight:600}.token-item-user{color:var(--color-text-secondary,#94a3b8);background:var(--color-bg-base,#0f172a);border:1px solid var(--color-border,#334155);border-radius:4px;padding:1px 6px;font-size:11px}.token-item-masked{font-family:var(--font-family-mono,monospace);font-size:var(--font-size-xs,12px);color:#38bdf8;letter-spacing:.05em}.token-item-dates{color:var(--color-text-secondary,#94a3b8);gap:var(--spacing-3,12px);flex-wrap:wrap;font-size:11px;display:flex}.token-item-actions{align-items:center;gap:var(--spacing-1,4px);display:flex}.assignments-modal-dialog{background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-xl,16px);flex-direction:column;width:95vw;max-width:860px;max-height:85vh;animation:.2s cubic-bezier(.16,1,.3,1) modalFadeIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #0009}.assignments-modal-header{padding:var(--spacing-4,16px) var(--spacing-6,24px);border-bottom:1px solid var(--color-border,#334155);background-color:var(--color-bg-elevated,#0f172a);justify-content:space-between;align-items:center;display:flex}.assignments-modal-header-left{align-items:center;gap:var(--spacing-3,12px);display:flex}.assignments-modal-icon-badge{border-radius:var(--radius-md,8px);color:#06b6d4;background-color:#06b6d426;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.assignments-modal-title{font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#f8fafc);margin:0}.assignments-modal-subtitle{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8);margin:0}.assignments-modal-body{padding:var(--spacing-6,24px);gap:var(--spacing-5,20px);flex-direction:column;display:flex;overflow:hidden auto}.assignment-form-card{padding:var(--spacing-4,16px);border-radius:var(--radius-lg,12px);background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border,#334155);gap:var(--spacing-3,12px);flex-direction:column;display:flex;overflow:hidden}.assignment-form-title{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-muted,#64748b);text-transform:uppercase;letter-spacing:.05em}.assignment-form-row{gap:var(--spacing-3,12px);grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;align-items:flex-end;width:100%;min-width:0;display:grid}.assignment-form-field{gap:var(--spacing-1,4px);flex-direction:column;min-width:0;display:flex}.assignment-form-label{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8);font-weight:var(--font-weight-medium,500)}.assignment-select{background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,8px);width:100%;min-width:0;color:var(--color-text-primary,#f8fafc);font-size:var(--font-size-sm,.875rem);transition:border-color var(--transition-fast,.15s ease);text-overflow:ellipsis;white-space:nowrap;outline:none;padding:8px 12px;overflow:hidden}.assignment-select:focus{border-color:var(--color-primary,#3b82f6)}.assignment-btn-submit{box-shadow:0 1px 3px #0003;background-color:var(--color-primary,#2563eb)!important;color:#fff!important;opacity:1!important;white-space:nowrap!important;flex-shrink:0!important;font-weight:600!important}.assignment-btn-submit:disabled{filter:brightness(.85);opacity:.8!important;background-color:var(--color-primary,#2563eb)!important;cursor:not-allowed!important}.assignments-table-wrapper{border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,8px);width:100%;overflow:hidden}.assignments-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm,.875rem);table-layout:auto}.assignments-table th{background-color:var(--color-bg-elevated,#0f172a);color:var(--color-text-secondary,#94a3b8);text-align:left;font-weight:var(--font-weight-semibold,600);font-size:var(--font-size-xs,.75rem);border-bottom:1px solid var(--color-border,#334155);padding:10px 14px}.assignments-table td{border-bottom:1px solid var(--color-border,#334155);color:var(--color-text-primary,#f8fafc);vertical-align:middle;padding:10px 14px}.assignments-table tr:last-child td{border-bottom:none}.role-badge-tag{border-radius:var(--radius-full,9999px);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);align-items:center;padding:3px 8px;display:inline-flex}.assignments-modal-footer{padding:var(--spacing-3,12px) var(--spacing-6,24px);border-top:1px solid var(--color-border,#334155);background-color:var(--color-bg-elevated,#0f172a);justify-content:flex-end;display:flex}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=580px){.form-row-2,.form-grid-2{grid-template-columns:1fr}}.phases-project-selector-bar{justify-content:space-between;align-items:center;gap:var(--spacing-4);background:var(--surface-card);padding:var(--spacing-4) var(--spacing-6);border-radius:var(--radius-lg);border:1px solid var(--border-default);flex-wrap:wrap;display:flex}.phases-filter-group{align-items:center;gap:var(--spacing-3);flex-wrap:wrap;display:flex}.phases-filter-item{align-items:center;gap:var(--spacing-2);display:flex}.phases-filter-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.phases-select{background:var(--form-input-bg);border:1.5px solid var(--form-input-border);border-radius:var(--radius-md);color:var(--form-input-text);font-size:var(--font-size-sm);cursor:pointer;outline:none;min-width:180px;padding:8px 14px;font-weight:600;transition:border-color .15s,box-shadow .15s}.phases-select:focus{border-color:var(--form-input-border-focus);box-shadow:0 0 0 3px var(--form-input-focus-ring)}.phase-color-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block;box-shadow:0 0 0 1px #0000001a}.phase-color-palette{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.palette-swatch{border-radius:var(--radius-full);cursor:pointer;border:2px solid #0000;width:26px;height:26px;transition:transform .15s,border-color .15s}.palette-swatch:hover{transform:scale(1.15)}.palette-swatch.active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--surface-card);transform:scale(1.15)}.phase-reorder-btn-group{align-items:center;gap:4px;display:flex}.btn-phase-reorder{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:4px 8px;font-size:.8rem;transition:all .15s;display:inline-flex}.btn-phase-reorder:disabled{opacity:.35;cursor:not-allowed}.btn-phase-reorder:hover:not(:disabled){background:var(--sidebar-item-active-bg);color:var(--sidebar-item-active-text);border-color:var(--color-primary)}.phase-tasks-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-primary);background:#3b82f61a;align-items:center;gap:4px;padding:3px 8px;font-weight:600;display:inline-flex}.phase-empty-badge{font-size:var(--font-size-xs);color:var(--text-muted)}.stages-container{gap:var(--spacing-6);padding:var(--spacing-6);flex-direction:column;animation:.3s ease-in-out fadeIn;display:flex}.stages-project-selector-bar{justify-content:space-between;align-items:center;gap:var(--spacing-4);background:var(--surface-card);padding:var(--spacing-4) var(--spacing-6);border-radius:var(--radius-lg);border:1px solid var(--border-default);flex-wrap:wrap;display:flex}.stages-project-select{background:var(--form-input-bg);border:1.5px solid var(--form-input-border);border-radius:var(--radius-md);color:var(--form-input-text);font-size:var(--font-size-sm);cursor:pointer;outline:none;padding:10px 14px;font-weight:600;transition:border-color .15s,box-shadow .15s}.stages-project-select:focus{border-color:var(--form-input-border-focus);box-shadow:0 0 0 3px var(--form-input-focus-ring)}.kanban-flow-preview{align-items:center;gap:var(--spacing-3);padding:var(--spacing-4);background:var(--surface-ground);border-radius:var(--radius-lg);border:1px dashed var(--border-default);display:flex;overflow-x:auto}.flow-step-chip{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);background:var(--surface-card);border-radius:var(--radius-md);border:1px solid var(--border-default);font-size:var(--font-size-xs);white-space:nowrap;box-shadow:var(--shadow-sm);font-weight:600;display:flex}.flow-color-dot{border-radius:50%;width:10px;height:10px}.flow-step-arrow{color:var(--text-muted);font-weight:700}.stage-reorder-btn-group{gap:4px;display:flex}.btn-reorder{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;padding:4px 8px;font-size:.8rem;transition:all .15s}.btn-reorder:disabled{opacity:.35;cursor:not-allowed}.btn-reorder:hover:not(:disabled){background:var(--sidebar-item-active-bg);color:var(--sidebar-item-active-text)}.wip-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);color:#f59e0b;background:#f59e0b1f;align-items:center;padding:2px 8px;font-weight:600;display:inline-flex}.wip-none-badge{font-size:var(--font-size-xs);color:var(--text-muted)}.sprints-container{gap:var(--spacing-6);padding:var(--spacing-6);flex-direction:column;animation:.3s ease-in-out fadeIn;display:flex}.sprint-active-alert{border:1px solid var(--sidebar-item-active-border);border-radius:var(--radius-lg);padding:var(--spacing-4) var(--spacing-5);justify-content:space-between;align-items:center;gap:var(--spacing-3);background:#2563eb14;flex-wrap:wrap;display:flex}.sprint-active-info{align-items:center;gap:var(--spacing-3);display:flex}.sprint-active-pulse{background:#10b981;border-radius:50%;width:12px;height:12px;animation:2s infinite pulse;box-shadow:0 0 0 4px #10b98140}@keyframes pulse{0%{box-shadow:0 0 #10b98166}70%{box-shadow:0 0 0 8px #10b98100}to{box-shadow:0 0 #10b98100}}.sprint-status-pill{border-radius:var(--radius-full);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;padding:3px 10px;font-weight:700}.sprint-activo{color:#10b981;background:#10b98126}.sprint-planificado{color:#3b82f6;background:#3b82f626}.sprint-completado{color:#64748b;background:#64748b26}.sprint-cancelado{color:#ef4444;background:#ef444426}.sprint-meta-text{font-size:var(--font-size-xs);color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:320px;font-style:italic;display:-webkit-box;overflow:hidden}.sprint-activation-modal-card{background:var(--color-glass-bg,#0f172a99);border:1px solid var(--border-default,var(--raw-slate-800));border-radius:var(--radius-md);padding:var(--spacing-4);margin-bottom:var(--spacing-4)}.sprint-activation-callout{border-radius:var(--radius-md);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-xs);color:var(--text-secondary);background:#0ea5e914;border:1px solid #0ea5e940;line-height:1.5}.sprint-activation-error{margin-top:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);background:var(--color-status-danger-bg,#ef444426);border:1px solid var(--color-status-danger,#ef4444);border-radius:var(--radius-md);color:var(--color-status-danger,#ef4444);font-weight:600;font-size:var(--font-size-sm)}.btn-sprint-tasks-count{align-items:center;gap:var(--spacing-2,6px);border-radius:var(--radius-full,9999px);color:var(--color-primary,#2563eb);font-size:var(--font-size-xs,.75rem);cursor:pointer;background:#2563eb1a;border:1px solid #2563eb40;padding:4px 12px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-sprint-tasks-count:hover{background:var(--color-primary,#2563eb);color:#fff;border-color:var(--color-primary,#2563eb);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb40}.btn-sprint-tasks-count:focus-visible{outline:2px solid var(--color-primary,#2563eb);outline-offset:2px}.task-count-icon{font-size:.85rem}.task-count-number{font-family:var(--font-mono,monospace);font-size:var(--font-size-sm,.875rem)}.task-count-label{opacity:.9;font-weight:500}.sprint-tasks-modal-body{gap:var(--spacing-4,16px);flex-direction:column;display:flex}.sprint-tasks-modal-header-meta{padding-bottom:var(--spacing-3,12px);border-bottom:1px solid var(--border-default,var(--raw-slate-800,#334155));justify-content:space-between;align-items:center;display:flex}.sprint-tasks-modal-goal{padding:var(--spacing-3,12px) var(--spacing-4,16px);border-left:3px solid var(--color-primary,#2563eb);border-radius:0 var(--radius-md,6px) var(--radius-md,6px) 0;font-size:var(--font-size-xs,.75rem);color:var(--text-secondary,#94a3b8);background:#3b82f614;line-height:1.5}.sprint-tasks-loading{justify-content:center;align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-8,32px);color:var(--text-muted,#64748b);font-size:var(--font-size-sm,.875rem);display:flex}.sprint-tasks-spinner{font-size:1.5rem;animation:1.5s linear infinite spin}.sprint-tasks-empty{text-align:center;padding:var(--spacing-8,32px) var(--spacing-4,16px);background:var(--surface-ground,#0f172a66);border:1px dashed var(--border-default,#334155);border-radius:var(--radius-lg,8px)}.sprint-tasks-table-wrapper{border:1px solid var(--border-default,#334155);border-radius:var(--radius-md,6px);max-height:380px;overflow-y:auto}.sprint-tasks-table{width:100%;margin:0}.sprint-tasks-table th{background:var(--surface-card,#1e293b);z-index:1;position:sticky;top:0}.sprint-task-desc{font-size:var(--font-size-xs,.75rem);color:var(--text-secondary,#94a3b8);white-space:nowrap;text-overflow:ellipsis;max-width:260px;overflow:hidden}.users-container{gap:var(--spacing-6);padding:var(--spacing-6);flex-direction:column;animation:.3s ease-in-out fadeIn;display:flex}.confidential-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);color:#7c3aed;background:#8b5cf61f;align-items:center;gap:4px;padding:2px 8px;font-weight:700;display:inline-flex}.user-avatar-badge{background:var(--sidebar-item-active-bg);width:32px;height:32px;color:var(--sidebar-item-active-text);font-weight:700;font-size:var(--font-size-xs);border-radius:50%;justify-content:center;align-items:center;display:flex}.client-multiselect-group{background:var(--color-bg-elevated,var(--color-bg-secondary,#1e293b));border-radius:var(--radius-md,8px);border:1px solid var(--color-border,#334155);margin:12px 0;padding:12px}.client-multiselect-label{align-items:center;gap:var(--spacing-2,6px);color:var(--color-text-primary,#f8fafc);margin-bottom:4px;font-weight:600;display:flex}.client-multiselect-description{font-size:var(--font-size-xs,12px);color:var(--color-text-muted,#94a3b8);margin:0 0 10px}.client-multiselect-controls{gap:var(--spacing-2,8px);margin-bottom:10px;display:flex}.client-chips-container{gap:var(--spacing-2,6px);flex-wrap:wrap;align-items:center;min-height:32px;display:flex}.client-chips-empty{font-size:var(--font-size-xs,12px);color:var(--color-text-muted,#94a3b8);font-style:italic}.client-chip{align-items:center;gap:var(--spacing-2,6px);background:var(--color-bg-surface,#0f172a);border:1px solid var(--color-border,#334155);color:var(--color-text-primary,#f8fafc);border-radius:var(--radius-full,9999px);font-size:var(--font-size-xs,12px);transition:border-color var(--transition-fast,.15s ease), background-color var(--transition-fast,.15s ease);padding:4px 10px;font-weight:600;display:inline-flex}.client-chip:hover{border-color:var(--color-primary,#3b82f6)}.client-chip-name{color:var(--color-text-primary,#f8fafc)}.client-chip-remove{cursor:pointer;color:var(--color-text-muted,#94a3b8);border-radius:var(--radius-full,9999px);min-width:24px;min-height:24px;transition:color var(--transition-fast,.15s ease), background-color var(--transition-fast,.15s ease);background:0 0;border:none;justify-content:center;align-items:center;padding:0 4px;font-size:15px;font-weight:700;line-height:1;display:inline-flex}.client-chip-remove:hover{color:var(--color-status-danger,#f43f5e);background-color:var(--color-status-danger-bg,#f43f5e26)}.client-chip-remove:focus-visible{outline:2px solid var(--color-primary,#3b82f6);outline-offset:1px}.clients-container{gap:var(--spacing-6);padding:var(--spacing-6);flex-direction:column;animation:.3s ease-in-out fadeIn;display:flex}.client-contact-cell{flex-direction:column;gap:2px;display:flex}.contact-name{color:var(--text-primary);font-weight:600}.contact-meta{font-size:var(--font-size-xs);color:var(--text-muted)}.master-tabs-bar{gap:var(--spacing-2,8px);border-bottom:1px solid var(--border-default,#e2e8f0);margin-bottom:var(--spacing-6,24px);padding-bottom:0;display:flex;overflow-x:auto}.master-tab-btn{align-items:center;gap:var(--spacing-2,8px);font-size:var(--font-size-sm,.875rem);color:var(--text-secondary,#64748b);border-radius:var(--radius-md,6px) var(--radius-md,6px) 0 0;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 18px;font-weight:600;transition:all .2s;display:inline-flex}.master-tab-btn:hover{color:var(--color-primary,#2563eb);background:var(--sidebar-item-active-bg,#2563eb0d)}.master-tab-btn.active{color:var(--color-primary,#2563eb);border-bottom-color:var(--color-primary,#2563eb);background:var(--sidebar-item-active-bg,#2563eb14)}:root[data-theme=dark] .master-tabs-bar{border-bottom-color:#ffffff1a}:root[data-theme=dark] .master-tab-btn{color:var(--text-secondary,#94a3b8)}:root[data-theme=dark] .master-tab-btn:hover{color:#60a5fa;background:#ffffff0d}:root[data-theme=dark] .master-tab-btn.active{color:#60a5fa;background:#60a5fa1f;border-bottom-color:#60a5fa}.badge-code{font-family:var(--font-family-mono,monospace);font-size:var(--font-size-xs,.75rem);border-radius:var(--radius-sm,4px);background:var(--surface-ground,#f8fafc);border:1px solid var(--border-default,#e2e8f0);color:var(--color-primary,#2563eb);letter-spacing:.05em;padding:3px 8px;font-weight:700}:root[data-theme=dark] .badge-code{color:#60a5fa;background:#ffffff0f;border-color:#ffffff1f}.rates-summary-header{justify-content:space-between;align-items:center;gap:var(--spacing-4,16px);margin-bottom:var(--spacing-4,16px);flex-wrap:wrap;display:flex}.sync-button-container{align-items:center;gap:var(--spacing-3,12px);display:flex}.spin-animation{animation:1s linear infinite spin}.rates-kpi-grid{gap:var(--spacing-4,16px);margin-bottom:var(--spacing-6,24px);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.rate-kpi-card{background:var(--surface-card,#fff);border:1px solid var(--border-default,#e2e8f0);border-radius:var(--radius-lg,12px);padding:var(--spacing-5,20px);gap:var(--spacing-2,8px);flex-direction:column;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000d}.rate-kpi-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}:root[data-theme=dark] .rate-kpi-card{background:var(--surface-card,#1e293b);border-color:#ffffff1a;box-shadow:0 2px 8px #0000004d}.rate-kpi-top{justify-content:space-between;align-items:center;display:flex}.rate-kpi-title{font-size:var(--font-size-sm,.875rem);color:var(--text-secondary,#64748b);text-transform:uppercase;letter-spacing:.05em;font-weight:600}:root[data-theme=dark] .rate-kpi-title{color:var(--text-secondary,#94a3b8)}.rate-kpi-value{color:var(--text-primary,#0f172a);font-size:1.85rem;font-weight:800;font-family:var(--font-family-mono,monospace);line-height:1.2}:root[data-theme=dark] .rate-kpi-value{color:#f8fafc}.rate-kpi-footer{font-size:var(--font-size-xs,.75rem);color:var(--text-muted,#94a3b8);margin-top:var(--spacing-2,8px);padding-top:var(--spacing-2,8px);border-top:1px dashed var(--border-default,#e2e8f0);justify-content:space-between;align-items:center;display:flex}:root[data-theme=dark] .rate-kpi-footer{color:#64748b;border-top-color:#ffffff14}.calculator-card{background:var(--surface-card,#fff);border:1px solid var(--border-default,#e2e8f0);border-radius:var(--radius-xl,16px);padding:var(--spacing-6,24px);margin-bottom:var(--spacing-6,24px);box-shadow:0 2px 8px #0000000a}:root[data-theme=dark] .calculator-card{background:var(--surface-card,#1e293b);border-color:#ffffff1a;box-shadow:0 4px 16px #00000040}.calc-header{align-items:center;gap:var(--spacing-3,12px);margin-bottom:var(--spacing-4,16px);display:flex}.calc-header h3{font-size:var(--font-size-base,1rem);color:var(--text-primary,#0f172a);margin:0;font-weight:700}:root[data-theme=dark] .calc-header h3{color:#f8fafc}.calc-form-grid{gap:var(--spacing-3,12px);grid-template-columns:1.5fr 1fr auto 1fr 1fr auto;align-items:end;display:grid}@media (width<=900px){.calc-form-grid{grid-template-columns:1fr 1fr}}.calc-field{flex-direction:column;gap:6px;display:flex}.calc-field label{font-size:var(--font-size-xs,.75rem);color:var(--text-secondary,#64748b);text-transform:uppercase;letter-spacing:.05em;font-weight:600}:root[data-theme=dark] .calc-field label{color:var(--text-secondary,#94a3b8)}.calc-field input,.calc-field select{border-radius:var(--radius-md,6px);border:1px solid var(--form-input-border,#cbd5e1);background:var(--form-input-bg,#fff);height:42px;color:var(--form-input-text,#0f172a);font-size:var(--font-size-sm,.875rem);padding:8px 12px;font-weight:500;transition:all .15s}.calc-field input:focus,.calc-field select:focus{border-color:var(--color-primary,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}:root[data-theme=dark] .calc-field input,:root[data-theme=dark] .calc-field select{background:var(--form-input-bg,#0f172a);border-color:var(--form-input-border,#334155);color:var(--form-input-text,#f8fafc)}.btn-swap-currency{border:1px solid var(--border-default,#cbd5e1);background:var(--surface-ground,#f1f5f9);width:42px;height:42px;color:var(--color-primary,#2563eb);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-swap-currency:hover{background:var(--sidebar-item-active-bg,#2563eb26);transform:rotate(180deg)}:root[data-theme=dark] .btn-swap-currency{color:#60a5fa;background:#ffffff0f;border-color:#ffffff26}.calc-result-box{margin-top:var(--spacing-4,16px);padding:var(--spacing-4,16px);border-radius:var(--radius-lg,10px);justify-content:space-between;align-items:center;gap:var(--spacing-3,12px);background:linear-gradient(135deg,#2563eb0a,#3b82f614);border:1px solid #2563eb33;flex-wrap:wrap;display:flex}:root[data-theme=dark] .calc-result-box{background:linear-gradient(135deg,#2563eb1a,#1e3a8a33);border-color:#60a5fa4d}.calc-result-main{flex-direction:column;gap:2px;display:flex}.calc-result-title{font-size:var(--font-size-xs,.75rem);color:var(--text-secondary,#64748b);text-transform:uppercase;font-weight:600}.calc-result-amount{color:var(--color-primary,#2563eb);font-size:1.75rem;font-weight:800;font-family:var(--font-family-mono,monospace)}:root[data-theme=dark] .calc-result-amount{color:#60a5fa}.calc-result-breakdown{font-size:var(--font-size-xs,.75rem);color:var(--text-muted,#64748b);text-align:right;flex-direction:column;align-items:flex-end;gap:3px;display:flex}:root[data-theme=dark] .calc-result-breakdown{color:#94a3b8}.badge-status-exito{color:#10b981;border-radius:var(--radius-sm,4px);font-weight:700;font-size:var(--font-size-xs,.75rem);text-transform:uppercase;background:#10b9811f;border:1px solid #10b98140;padding:3px 8px}.badge-status-no_disponible{color:#f59e0b;border-radius:var(--radius-sm,4px);font-weight:700;font-size:var(--font-size-xs,.75rem);text-transform:uppercase;background:#f59e0b1f;border:1px solid #f59e0b40;padding:3px 8px}.badge-status-error{color:#ef4444;border-radius:var(--radius-sm,4px);font-weight:700;font-size:var(--font-size-xs,.75rem);text-transform:uppercase;background:#ef44441f;border:1px solid #ef444440;padding:3px 8px}.badge-tipo-cron{color:#6366f1;border-radius:var(--radius-sm,4px);font-weight:600;font-size:var(--font-size-xs,.75rem);background:#6366f11f;border:1px solid #6366f140;padding:3px 8px}.badge-tipo-manual{color:#0ea5e9;border-radius:var(--radius-sm,4px);font-weight:600;font-size:var(--font-size-xs,.75rem);background:#0ea5e91f;border:1px solid #0ea5e940;padding:3px 8px}.payload-viewer-container{gap:var(--spacing-3,12px);margin-top:var(--spacing-3,12px);flex-direction:column;display:flex}.payload-meta-grid{gap:var(--spacing-2,8px);padding:var(--spacing-3,12px);background:var(--surface-ground,#f8fafc);border-radius:var(--radius-md,6px);font-size:var(--font-size-xs,.75rem);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}:root[data-theme=dark] .payload-meta-grid{background:#ffffff0a}.payload-meta-item{flex-direction:column;gap:2px;display:flex}.payload-meta-label{color:var(--text-secondary,#64748b);font-weight:600}:root[data-theme=dark] .payload-meta-label{color:var(--text-secondary,#94a3b8)}.payload-meta-val{color:var(--text-primary,#0f172a);font-weight:500}:root[data-theme=dark] .payload-meta-val{color:#f8fafc}.payload-pre-wrapper{border-radius:var(--radius-lg,8px);background:#0f172a;border:1px solid #1e293b;position:relative;overflow:hidden}.payload-pre-toolbar{color:#94a3b8;font-size:var(--font-size-xs,.75rem);background:#1e293b;border-bottom:1px solid #334155;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.payload-code-block{max-height:360px;font-family:var(--font-family-mono,monospace);color:#38bdf8;white-space:pre-wrap;word-break:break-all;margin:0;padding:14px;font-size:.8125rem;line-height:1.5;overflow:auto}.bitacora-total-badge{background:var(--surface-secondary,#f1f5f9);border:1px solid var(--border-default,#e2e8f0);border-radius:var(--radius-full,9999px);color:var(--text-secondary,#64748b);font-size:var(--font-size-xs,.75rem);letter-spacing:.02em;white-space:nowrap;align-items:center;margin-left:auto;padding:6px 14px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #00000008}:root[data-theme=dark] .bitacora-total-badge{color:#94a3b8;background:#1e293bcc;border-color:#ffffff1a}.master-table tbody tr.clickable-row{cursor:pointer;transition:background-color .15s,border-color .15s}.master-table tbody tr.active-row{background-color:var(--sidebar-item-active-bg,#2563eb14)!important;border-left:4px solid var(--color-primary,#2563eb)!important}:root[data-theme=dark] .master-table tbody tr.active-row{background-color:#3b82f61f!important;border-left:4px solid #60a5fa!important}.table-actions .btn-action-icon{border-radius:var(--radius-md,6px);border:1px solid var(--border-default,#e2e8f0);background:var(--surface-card,#fff);width:32px;height:32px;color:var(--text-secondary,#64748b);cursor:pointer;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.table-actions .btn-action-icon:hover{background:var(--sidebar-item-active-bg,#2563eb14);color:var(--text-primary,#0f172a);border-color:var(--sidebar-item-active-border,#bfdbfe)}:root[data-theme=dark] .table-actions .btn-action-icon{color:var(--text-secondary,#94a3b8);background:#ffffff0a;border-color:#ffffff1a}:root[data-theme=dark] .table-actions .btn-action-icon:hover{color:#fff;background:#ffffff1a}.states-master-view{width:100%}.states-tabs-wrapper{margin-bottom:var(--spacing-6)}.states-tabs-wrapper .chronos-tabs{width:100%}.states-tabs-wrapper .chronos-tab-list{gap:var(--spacing-2);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-2);display:flex}.states-alert-banner{align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-status-danger-bg,#ef44441a);border:1px solid var(--color-status-danger,#ef4444);border-radius:var(--radius-lg);color:var(--color-status-danger,#ef4444);margin-bottom:var(--spacing-4);font-size:var(--font-size-sm);line-height:1.5;display:flex}.states-alert-banner button{color:inherit;cursor:pointer;font-weight:var(--font-weight-semibold);background:0 0;border:none;margin-left:auto;padding:0;text-decoration:underline}.color-picker-grid{gap:var(--spacing-2);margin-top:var(--spacing-1);margin-bottom:var(--spacing-3);flex-wrap:wrap;display:flex}.color-swatch-btn{border-radius:var(--radius-full);cursor:pointer;width:32px;height:32px;transition:transform var(--transition-fast), border-color var(--transition-fast);border:2px solid #0000;justify-content:center;align-items:center;padding:0;display:flex}.color-swatch-btn:hover{transform:scale(1.15)}.color-swatch-btn.selected{border-color:var(--color-text-primary);box-shadow:0 0 0 2px var(--color-bg-surface), 0 0 0 4px var(--color-primary);transform:scale(1.1)}.states-form-group{margin-bottom:var(--spacing-4);gap:var(--spacing-1);flex-direction:column;display:flex}.states-form-group label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-transform:uppercase;letter-spacing:.05em}.states-form-group input,.states-form-group select,.states-form-group textarea{width:100%;padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);border:1px solid var(--form-input-border,var(--color-border));background-color:var(--form-input-bg,var(--color-bg-surface));color:var(--form-input-text,var(--color-text-primary));font-size:var(--font-size-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box}.states-form-group input:focus,.states-form-group select:focus,.states-form-group textarea:focus{border-color:var(--form-input-focus-ring,var(--color-primary));box-shadow:0 0 0 2px var(--form-input-focus-ring,#3b82f633);outline:none}.states-form-group input:disabled,.states-form-group select:disabled,.states-form-group textarea:disabled{background-color:var(--color-bg-muted,#94a3b81a);color:var(--color-text-muted);cursor:not-allowed;opacity:.75}.states-field-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px;line-height:1.4}.states-governance-notice{font-size:var(--font-size-xs);color:var(--color-status-warning,#f59e0b);background:var(--color-status-warning-bg,#f59e0b1a);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);border-left:3px solid var(--color-status-warning,#f59e0b);margin-top:var(--spacing-1)}.states-checkbox-row{align-items:center;gap:var(--spacing-2);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);-webkit-user-select:none;user-select:none;display:flex}.states-checkbox-row input[type=checkbox]{border-radius:var(--radius-sm);cursor:pointer;width:18px;height:18px}.badge-preview-box{align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);background-color:var(--color-bg-muted);border-radius:var(--radius-md);border:1px dashed var(--color-border);margin-bottom:var(--spacing-4);display:flex}.state-color-pill{align-items:center;gap:var(--spacing-1);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;padding:3px 10px;display:inline-flex}.alert-dialog-content{gap:var(--spacing-4);flex-direction:column;display:flex}.alert-dialog-header{align-items:flex-start;gap:var(--spacing-3);display:flex}.alert-dialog-icon{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.alert-dialog-icon.danger{background-color:var(--color-status-danger-bg,#ef444426);color:var(--color-status-danger,#ef4444)}.alert-dialog-icon.warning{background-color:var(--color-status-warning-bg,#f59e0b26);color:var(--color-status-warning,#f59e0b)}.alert-dialog-body{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.alert-dialog-body strong{color:var(--color-text-primary)}.alert-dialog-footer{justify-content:flex-end;gap:var(--spacing-2);margin-top:var(--spacing-2);display:flex}.correlativos-container{gap:var(--space-6,1.5rem);width:100%;max-width:1400px;padding:var(--space-6,1.5rem);flex-direction:column;margin:0 auto;display:flex}.correlativo-mono-badge{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);letter-spacing:.05em;border-radius:var(--radius-sm,4px);background-color:var(--bg-hover,#ffffff0f);color:var(--color-primary,#3b82f6);border:1px solid var(--border-color,#ffffff1a);align-items:center;padding:.25rem .5rem;font-size:.85rem;font-weight:700;display:inline-flex}.correlativo-preview-pill{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);letter-spacing:.05em;border-radius:var(--radius-md,6px);color:var(--color-primary,#3b82f6);background:linear-gradient(135deg,#3b82f626,#8b5cf626);border:1px solid #3b82f64d;align-items:center;gap:.35rem;padding:.3rem .65rem;font-size:.9rem;font-weight:700;display:inline-flex}.correlativos-project-bar{background-color:var(--bg-surface,#1e293b);border:1px solid var(--border-color,#ffffff1a);border-radius:var(--radius-lg,8px);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem 1.25rem;display:flex}.correlativos-project-select-group{align-items:center;gap:.75rem;display:flex}.correlativos-project-select{background-color:var(--form-input-bg,#0f172a);color:var(--form-input-text,#f8fafc);border:1px solid var(--form-input-border,#334155);border-radius:var(--radius-md,6px);cursor:pointer;outline:none;min-width:280px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:border-color .2s,box-shadow .2s}.correlativos-project-select:focus{border-color:var(--form-input-focus-ring,#3b82f6);box-shadow:0 0 0 2px #3b82f633}.correlativo-live-preview-box{border:1px solid var(--color-primary,#3b82f6);border-radius:var(--radius-lg,8px);text-align:center;background:linear-gradient(135deg,#0f172acc,#1e293be6);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;margin:1rem 0;padding:1.25rem;display:flex;box-shadow:0 4px 12px #00000026}.correlativo-live-preview-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary,#94a3b8);align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;display:flex}.correlativo-live-preview-code{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);letter-spacing:.06em;color:#60a5fa;text-shadow:0 2px 8px #3b82f64d;border-radius:var(--radius-md,6px);background-color:#00000040;border:1px dashed #60a5fa66;padding:.25rem 1rem;font-size:1.75rem;font-weight:800}.correlativo-live-preview-formula{color:var(--text-tertiary,#64748b);font-size:.8rem;font-family:var(--font-mono,monospace)}.correlativo-risk-alert{border-radius:var(--radius-md,6px);color:#fbbf24;background-color:#f59e0b1f;border:1px solid #f59e0b;align-items:flex-start;gap:.75rem;margin-top:.75rem;padding:.85rem 1rem;font-size:.85rem;line-height:1.4;display:flex}.correlativo-form-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (width<=640px){.correlativo-form-grid{grid-template-columns:1fr}}.correlativos-container .master-controls{background:var(--surface-card,#1e293b);border-bottom:1px solid var(--border-color,#ffffff14);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.master-search-wrapper,.search-input-wrapper{align-items:center;width:100%;max-width:420px;display:flex;position:relative}.master-search-input{background-color:var(--form-input-bg,#0f172a);border:1px solid var(--form-input-border,#334155);border-radius:var(--radius-md,6px);width:100%;color:var(--form-input-text,#f8fafc);font-size:var(--font-size-sm,.875rem);box-sizing:border-box;outline:none;padding:.55rem 1rem .55rem 2.4rem;font-family:inherit;transition:border-color .2s,box-shadow .2s}.master-search-input:focus{border-color:var(--form-input-border-focus,#3b82f6);box-shadow:0 0 0 3px var(--form-input-focus-ring,#3b82f640)}.master-search-input::placeholder{color:var(--form-input-placeholder,#94a3b8)}.master-search-wrapper .search-icon{color:var(--text-tertiary,#64748b);pointer-events:none;position:absolute;top:50%;left:.85rem;transform:translateY(-50%)}.form-input{background-color:var(--form-input-bg,#0f172a);border:1px solid var(--form-input-border,#334155);border-radius:var(--radius-md,6px);width:100%;color:var(--form-input-text,#f8fafc);font-size:var(--font-size-sm,.875rem);box-sizing:border-box;outline:none;padding:.6rem .85rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.form-input:focus{border-color:var(--form-input-border-focus,#3b82f6);box-shadow:0 0 0 3px var(--form-input-focus-ring,#3b82f640)}.form-input::placeholder{color:var(--form-input-placeholder,#94a3b8)}.correlativos-container .stat-card{align-items:center;gap:var(--spacing-4,1rem);background:var(--surface-card,#1e293b);border:1px solid var(--border-default,#ffffff14);border-radius:var(--radius-lg,12px);padding:1.15rem 1.25rem;transition:transform .2s,box-shadow .2s;display:flex}.correlativos-container .stat-card:hover{box-shadow:var(--shadow-md,0 4px 12px #00000040);transform:translateY(-2px)}.correlativos-container .stat-icon{border-radius:var(--radius-md,8px);flex-shrink:0;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;display:flex}.correlativos-container .stat-content{flex-direction:column;gap:.15rem;min-width:0;display:flex}.correlativos-container .stat-label{font-size:var(--font-size-xs,.75rem);color:var(--text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.correlativos-container .stat-value{font-size:var(--font-size-xl,1.4rem);color:var(--text-primary,#f8fafc);font-weight:800;line-height:1.2}.correlativos-container .stat-desc{font-size:var(--font-size-xs,.75rem);color:var(--text-tertiary,#64748b);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.master-view-container{gap:var(--spacing-6);padding:var(--spacing-6);flex-direction:column;animation:.3s ease-in-out fadeIn;display:flex}.master-header{justify-content:space-between;align-items:center;gap:var(--spacing-4);background:var(--surface-card);padding:var(--spacing-6);border-radius:var(--radius-xl);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.master-header-info h1{margin:0 0 var(--spacing-1) 0;font-size:var(--font-size-2xl);color:var(--text-primary);align-items:center;gap:var(--spacing-3);font-weight:700;display:flex}.master-header-info p{font-size:var(--font-size-sm);color:var(--text-muted);margin:0}.master-stats-grid{gap:var(--spacing-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.stat-card{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--spacing-4) var(--spacing-5);align-items:center;gap:var(--spacing-4);transition:transform .2s,box-shadow .2s;display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{border-radius:var(--radius-md);background:var(--sidebar-item-active-bg);width:44px;height:44px;color:var(--sidebar-item-active-text);justify-content:center;align-items:center;font-size:1.3rem;display:flex}.stat-content{flex-direction:column;display:flex}.stat-label{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.stat-value{font-size:var(--font-size-xl);color:var(--text-primary);font-weight:800}.master-controls{justify-content:space-between;align-items:center;gap:var(--spacing-4);background:var(--surface-card);padding:var(--spacing-4) var(--spacing-5);border-radius:var(--radius-lg);border:1px solid var(--border-default);flex-wrap:wrap;display:flex}.master-search-group{align-items:center;gap:var(--spacing-3);flex:1;min-width:260px;display:flex}.search-input-wrapper{width:100%;max-width:360px;position:relative}.search-input-wrapper input{background:var(--form-input-bg);border:1.5px solid var(--form-input-border);border-radius:var(--radius-md);width:100%;color:var(--form-input-text);font-size:var(--font-size-sm);outline:none;padding:10px 14px 10px 2.4rem;transition:border-color .15s,box-shadow .15s}.search-input-wrapper input:focus{border-color:var(--form-input-border-focus);box-shadow:0 0 0 3px var(--form-input-focus-ring)}.search-icon{color:var(--text-muted);pointer-events:none;font-size:.95rem;position:absolute;top:50%;left:.8rem;transform:translateY(-50%)}.master-filter-group{align-items:center;gap:var(--spacing-3);display:flex}.filter-select{background:var(--form-input-bg);border:1.5px solid var(--form-input-border);border-radius:var(--radius-md);color:var(--form-input-text);font-size:var(--font-size-sm);cursor:pointer;outline:none;padding:10px 14px;transition:border-color .15s,box-shadow .15s}.filter-select:focus{border-color:var(--form-input-border-focus);box-shadow:0 0 0 3px var(--form-input-focus-ring)}.master-table-card{background:var(--surface-card);border-radius:var(--radius-xl);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);overflow:hidden}.master-table-wrapper{width:100%;overflow-x:auto}.master-table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--font-size-sm)}.master-table th{background:var(--surface-ground);padding:var(--spacing-3) var(--spacing-4);color:var(--text-secondary);text-transform:uppercase;font-weight:600;font-size:var(--font-size-xs);letter-spacing:.05em;border-bottom:1px solid var(--border-default)}.master-table td{padding:var(--spacing-4);border-bottom:1px solid var(--border-default);color:var(--text-primary);vertical-align:middle}.master-table tbody tr:hover{background:var(--surface-ground)}.badge-code{font-family:var(--font-family-mono,monospace);font-size:var(--font-size-xs);border-radius:var(--radius-sm);background:var(--surface-ground);border:1px solid var(--border-default);color:var(--color-primary);padding:2px 6px;font-weight:600}.project-title-cell{flex-direction:column;display:flex}.project-name{color:var(--text-primary);font-weight:600}.client-name{font-size:var(--font-size-xs);color:var(--text-muted)}.status-badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);text-transform:capitalize;align-items:center;padding:3px 8px;font-weight:600;display:inline-flex}.status-en_ejecucion{color:#10b981;background:#10b98126}.status-planificacion{color:#3b82f6;background:#3b82f626}.status-puesta_en_marcha{color:#8b5cf6;background:#8b5cf626}.status-pausado{color:#f59e0b;background:#f59e0b26}.status-cerrado{color:#64748b;background:#64748b26}.methodology-badge{border-radius:var(--radius-sm);font-size:var(--font-size-xs);text-transform:uppercase;padding:2px 8px;font-weight:600}.methodology-scrum{color:#2563eb;background:#3b82f61f}.methodology-kanban{color:#059669;background:#10b9811f}.methodology-hibrido{color:#7c3aed;background:#8b5cf61f}.table-actions{align-items:center;gap:var(--spacing-2);display:flex}.btn-action-icon{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--surface-card);color:var(--text-secondary);font-size:var(--font-size-xs);cursor:pointer;align-items:center;gap:4px;transition:all .15s;display:inline-flex}.btn-action-icon:hover{background:var(--sidebar-item-active-bg);color:var(--sidebar-item-active-text);border-color:var(--sidebar-item-active-border)}.modal-overlay{background:var(--modal-overlay-bg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;padding:var(--spacing-4);justify-content:center;align-items:center;animation:.2s ease-out modalFadeIn;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--modal-surface-bg);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:100%;max-width:var(--modal-dialog-max-width,800px);max-height:90vh;box-shadow:var(--shadow-xl);flex-direction:column;display:flex;overflow-y:auto}.modal-header{padding:var(--spacing-5) var(--spacing-6);border-bottom:1px solid var(--modal-header-border);justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:var(--font-size-lg);color:var(--text-primary);margin:0}.btn-close-modal{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:1.3rem}.btn-close-modal:hover{color:var(--text-primary);background:var(--surface-ground)}.modal-form{padding:var(--spacing-6);gap:var(--spacing-4);flex-direction:column;display:flex}.form-row-2,.form-grid-2{gap:var(--spacing-4);grid-template-columns:1fr 1fr;align-items:start;display:grid}@media (width<=580px){.form-row-2,.form-grid-2{grid-template-columns:1fr}}.form-group{justify-content:flex-start;gap:var(--spacing-2);flex-direction:column;display:flex}.form-group label{font-size:var(--font-size-xs);color:var(--form-label-color);text-transform:uppercase;letter-spacing:.05em;min-height:18px;margin-bottom:2px;font-weight:600;line-height:1.2}.form-group input:not([type=checkbox]):not([type=radio]),.form-group select,.form-group textarea{box-sizing:border-box;background:var(--form-input-bg);border:1.5px solid var(--form-input-border);border-radius:var(--radius-md);width:100%;color:var(--form-input-text);font-size:var(--font-size-sm);outline:none;padding:10px 14px;transition:border-color .15s,box-shadow .15s}.form-group input:not([type=checkbox]):not([type=radio]),.form-group select{height:42px;margin-top:0}.form-group input[type=checkbox],.form-group input[type=radio]{width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--color-primary);cursor:pointer;margin:0;padding:0}.form-group select{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--form-input-placeholder)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--form-input-border-focus);box-shadow:0 0 0 3px var(--form-input-focus-ring);outline:none}.form-error-msg{font-size:var(--font-size-xs);color:var(--color-status-danger,#ef4444)}.modal-footer{padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--modal-footer-border);justify-content:flex-end;gap:var(--spacing-3);background:var(--modal-footer-bg);display:flex}.currency-badge{border-radius:var(--radius-sm,4px);font-size:var(--font-size-xs,.75rem);background:var(--currency-badge-bg,#3b82f626);color:var(--currency-badge-text,#3b82f6);border:1px solid var(--currency-badge-border,#3b82f64d);align-items:center;padding:3px 8px;font-weight:700;display:inline-flex}.hours-badge{border-radius:var(--radius-sm,4px);font-size:var(--font-size-xs,.75rem);background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-default);align-items:center;padding:3px 8px;font-weight:600;display:inline-flex}.schedule-subpanel{margin-top:var(--spacing-4);padding:var(--spacing-4);background:var(--surface-ground,#00000008);border:1px solid var(--border-default);border-radius:var(--radius-lg,8px);gap:var(--spacing-3);flex-direction:column;display:flex}.schedule-subpanel-header{gap:var(--spacing-1);flex-direction:column;display:flex}.schedule-validation-bar{border-radius:var(--radius-md,6px);font-size:var(--font-size-xs,.75rem);padding:10px 14px;font-weight:600;line-height:1.4;transition:all .2s}.schedule-validation-bar.valid{color:#10b981;background:#10b98126;border:1px solid #10b981}.schedule-validation-bar.invalid{color:#ef4444;background:#ef444426;border:1px solid #ef4444}.schedule-table-wrapper{overflow-x:auto}.schedule-table{border-collapse:collapse;width:100%;font-size:var(--font-size-xs,.75rem)}.schedule-table th{text-align:left;color:var(--text-muted);border-bottom:1.5px solid var(--border-default);text-transform:uppercase;letter-spacing:.04em;padding:6px 8px;font-weight:700}.schedule-table td{border-bottom:1px solid var(--border-default);vertical-align:middle;padding:6px 8px}.schedule-table input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--color-primary)}.schedule-table input[type=time],.schedule-table input[type=number]{font-size:var(--font-size-xs,.75rem);border-radius:var(--radius-sm,4px);border:1px solid var(--form-input-border);background:var(--form-input-bg);color:var(--form-input-text);outline:none;padding:4px 8px}.schedule-table input:disabled{opacity:.4;cursor:not-allowed}.schedule-table tfoot td{font-size:var(--font-size-sm,.875rem);border-bottom:none;padding:10px 8px 4px}.net-hours-badge{color:var(--color-primary);font-weight:800;display:inline-block}.badge-prefix{font-size:var(--font-size-xs,.75rem);font-weight:700;font-family:var(--font-mono,monospace);letter-spacing:.05em;color:var(--color-primary,#3b82f6);border-radius:var(--radius-sm,4px);text-transform:uppercase;background:#3b82f626;border:1px solid #3b82f64d;justify-content:center;align-items:center;padding:2px 7px;display:inline-flex}.input-readonly-disabled{opacity:.65;cursor:not-allowed;background-color:var(--surface-hover,#ffffff0d)!important;border-style:dashed!important}.microcopy-inmutable{color:var(--color-warning,#f59e0b);margin-top:4px;font-size:.7rem;font-weight:500;display:block}.badge-repo{font-size:var(--font-size-xs,.75rem);font-weight:600;font-family:var(--font-mono,monospace);border-radius:var(--radius-sm,4px);color:var(--color-primary,#2563eb);white-space:nowrap;background-color:#3b82f61f;border:1px solid #3b82f64d;align-items:center;gap:4px;padding:2px 8px;text-decoration:none;display:inline-flex}.genexus-types-view{width:100%}.gx-code-badge{align-items:center;gap:var(--spacing-1);font-family:var(--font-family-mono,monospace);font-size:var(--font-size-xs,12px);border-radius:var(--radius-sm,4px);background-color:var(--artifact-badge-gx-bg,#9333ea1f);color:var(--artifact-badge-gx,#a855f7);border:1px solid var(--artifact-badge-gx-border,#a855f773);letter-spacing:.05em;padding:3px 8px;font-weight:700;display:inline-flex}.gx-origin-badge--api{border-radius:var(--radius-full,9999px);color:#c084fc;background-color:#a855f726;border:1px solid #a855f766;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.gx-origin-badge--manual{border-radius:var(--radius-full,9999px);background-color:var(--color-bg-muted,#64748b26);color:var(--color-text-secondary,#94a3b8);border:1px solid var(--color-border,#334155);align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:500;display:inline-flex}.gx-form-grid{gap:var(--spacing-4,16px);flex-direction:column;display:flex}.gx-form-group{gap:var(--spacing-1,4px);flex-direction:column;display:flex}.gx-form-group label{font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#f8fafc);text-transform:uppercase;letter-spacing:.05em}.gx-form-group input,.gx-form-group select,.gx-form-group textarea{width:100%;padding:var(--spacing-2,8px) var(--spacing-3,12px);font-size:var(--font-size-sm,14px);background-color:var(--color-bg-base,#0f172a);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,6px);color:var(--color-text-primary,#f8fafc);transition:border-color var(--transition-fast,.15s ease)}.gx-form-group input:focus,.gx-form-group select:focus,.gx-form-group textarea:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 2px #3b82f633}.gx-form-group input.mono{font-family:var(--font-family-mono,monospace);text-transform:uppercase}.gx-form-checkbox{align-items:center;gap:var(--spacing-2,8px);margin-top:var(--spacing-2,8px);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.gx-form-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary,#3b82f6);cursor:pointer}.gx-form-checkbox span{font-size:var(--font-size-sm,14px);color:var(--color-text-primary,#f8fafc);font-weight:500}.gx-alert-banner{align-items:center;gap:var(--spacing-2,8px);padding:var(--spacing-3,12px) var(--spacing-4,16px);border-radius:var(--radius-md,6px);font-size:var(--font-size-xs,12px);line-height:1.4;display:flex}.gx-alert-banner--error{background-color:var(--color-status-danger-bg,#ef44441f);border:1px solid var(--color-status-danger,#ef4444);color:var(--color-status-danger,#ef4444)}.gx-alert-banner--success{background-color:var(--color-status-success-bg,#10b9811f);border:1px solid var(--color-status-success,#10b981);color:var(--color-status-success,#10b981)}.gx-table-actions{align-items:center;gap:var(--spacing-2,8px);display:flex}.system-config-card{background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-lg,12px);padding:var(--spacing-6,24px);gap:var(--spacing-6,24px);flex-direction:column;display:flex}.system-config-section{gap:var(--spacing-4,16px);padding-bottom:var(--spacing-6,24px);border-bottom:1px solid var(--color-border,#334155);flex-direction:column;display:flex}.system-config-section:last-child{border-bottom:none;padding-bottom:0}.system-config-section-header{align-items:center;gap:var(--spacing-3,12px);display:flex}.system-config-section-title{font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#f8fafc);margin:0}.system-config-section-desc{font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary,#94a3b8);margin:0}.system-config-options-grid{gap:var(--spacing-4,16px);margin-top:var(--spacing-2,8px);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.system-config-option-card{gap:var(--spacing-2,8px);padding:var(--spacing-4,16px);border-radius:var(--radius-md,8px);border:2px solid var(--color-border,#334155);background-color:var(--color-bg-elevated,#0f172a);cursor:pointer;transition:all var(--transition-fast,.15s ease);flex-direction:column;display:flex}.system-config-option-card:hover{border-color:var(--color-primary,#3b82f6)}.system-config-option-card.selected{border-color:var(--color-primary,#3b82f6);background-color:#3b82f614}.system-config-option-card.selected.production-warning{border-color:var(--color-status-warning,#f59e0b);background-color:#f59e0b14}.system-config-option-head{justify-content:space-between;align-items:center;display:flex}.system-config-option-title{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary,#f8fafc)}.system-config-option-badge{font-size:var(--font-size-xs,.75rem)}.system-config-option-detail{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8);line-height:1.4}.system-config-toggle-row{padding:var(--spacing-4,16px);border-radius:var(--radius-md,8px);background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border,#334155);justify-content:space-between;align-items:center;display:flex}.system-config-toggle-info{gap:var(--spacing-1,4px);flex-direction:column;display:flex}.system-config-toggle-title{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--color-text-primary,#f8fafc)}.system-config-toggle-desc{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#94a3b8)}.chronos-switch{width:48px;height:26px;display:inline-block;position:relative}.chronos-switch input{opacity:0;width:0;height:0}.chronos-switch-slider{cursor:pointer;background-color:var(--color-border,#475569);border-radius:34px;transition:all .3s;position:absolute;inset:0}.chronos-switch-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:4px;left:4px}.chronos-switch input:checked+.chronos-switch-slider{background-color:var(--color-primary,#3b82f6)}.chronos-switch input:focus+.chronos-switch-slider{box-shadow:0 0 1px var(--color-primary,#3b82f6)}.chronos-switch input:checked+.chronos-switch-slider:before{transform:translate(22px)}.confirmation-dialog{background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-xl,16px);width:90%;max-width:480px;padding:var(--spacing-6,24px);animation:.2s cubic-bezier(.16,1,.3,1) modalFadeIn;box-shadow:0 25px 50px -12px #00000080}.confirmation-header{align-items:center;gap:var(--spacing-3,12px);margin-bottom:var(--spacing-3,12px);display:flex}.confirmation-icon-wrapper{border-radius:var(--radius-full,9999px);width:40px;height:40px;color:var(--color-status-warning,#f59e0b);background-color:#f59e0b26;justify-content:center;align-items:center;display:flex}.confirmation-title{font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary,#f8fafc);margin:0}.confirmation-body{font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary,#94a3b8);margin-bottom:var(--spacing-6,24px);line-height:1.5}.confirmation-actions{justify-content:flex-end;gap:var(--spacing-3,12px);display:flex}.system-config-token-container{gap:var(--spacing-4,16px);padding:var(--spacing-4,16px);border-radius:var(--radius-md,8px);background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border,#334155);flex-direction:column;display:flex}@media (width>=768px){.system-config-token-container{flex-direction:row;justify-content:space-between;align-items:flex-end}}.token-field-wrapper{gap:var(--spacing-2,8px);flex-direction:column;flex:1;max-width:520px;display:flex}.token-label{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary,#94a3b8)}.token-input-composite{align-items:center;width:100%;display:flex;position:relative}.token-text-input{width:100%;height:40px;padding:0 var(--spacing-10,40px) 0 var(--spacing-3,12px);font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);font-size:var(--font-size-sm,.875rem);color:var(--color-text-primary,#f8fafc);background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,8px);transition:border-color var(--transition-fast,.15s ease), box-shadow var(--transition-fast,.15s ease);outline:none}.token-text-input:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px #3b82f633}.token-toggle-btn{border-radius:var(--radius-sm,4px);color:var(--color-text-secondary,#94a3b8);cursor:pointer;transition:color var(--transition-fast,.15s ease);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.token-toggle-btn:hover{color:var(--color-text-primary,#f8fafc)}.token-action-buttons{align-items:center;gap:var(--spacing-2,8px);flex-wrap:wrap;display:flex}.system-config-input-container{gap:var(--spacing-4,16px);padding:var(--spacing-4,16px);border-radius:var(--radius-md,8px);background-color:var(--color-bg-elevated,#0f172a);border:1px solid var(--color-border,#334155);flex-direction:column;display:flex}.system-config-field-wrapper{gap:var(--spacing-2,8px);flex-direction:column;max-width:520px;display:flex}.system-config-field-label{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary,#94a3b8)}.system-config-text-input{width:100%;height:40px;padding:0 var(--spacing-3,12px);font-size:var(--font-size-sm,.875rem);color:var(--color-text-primary,#f8fafc);background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,8px);transition:border-color var(--transition-fast,.15s ease), box-shadow var(--transition-fast,.15s ease);outline:none}.system-config-text-input:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px #3b82f633}.system-config-select{width:100%;height:40px;padding:0 var(--spacing-3,12px);font-size:var(--font-size-sm,.875rem);color:var(--color-text-primary,#f8fafc);background-color:var(--color-bg-surface,#1e293b);border:1px solid var(--color-border,#334155);border-radius:var(--radius-md,8px);cursor:pointer;transition:border-color var(--transition-fast,.15s ease), box-shadow var(--transition-fast,.15s ease);outline:none}.system-config-select:focus{border-color:var(--color-primary,#3b82f6);box-shadow:0 0 0 2px #3b82f633}.system-config-select option{background-color:var(--color-bg-elevated,#0f172a);color:var(--color-text-primary,#f8fafc)}.system-config-stat-card{word-break:break-word;gap:var(--spacing-2,8px);overflow-wrap:break-word!important;white-space:normal!important;flex-direction:column!important;justify-content:space-between!important;align-items:flex-start!important;min-height:120px!important;display:flex!important}.system-config-stat-card .stat-card-title,.system-config-stat-card .stat-card-value,.system-config-stat-card .stat-card-detail{overflow-wrap:break-word;white-space:normal;word-break:break-word}.system-config-form-grid{gap:var(--spacing-4,16px);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));width:100%;display:grid}.system-config-switches-grid{gap:var(--spacing-3,12px);width:100%;margin-top:var(--spacing-2,8px);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.system-config-action-row{justify-content:space-between;align-items:center;gap:var(--spacing-4,16px);padding-top:var(--spacing-3,12px);border-top:1px dashed var(--color-border,#334155);flex-wrap:wrap;display:flex}.smtp-test-result{align-items:center;gap:var(--spacing-2,8px);font-size:var(--font-size-sm,.875rem);padding:var(--spacing-2,8px) var(--spacing-3,12px);border-radius:var(--radius-md,8px);display:flex}.smtp-test-result.success{color:var(--color-status-success,#10b981);border:1px solid var(--color-status-success,#10b981);background-color:#10b9811a}.smtp-test-result.error{color:var(--color-status-danger,#ef4444);border:1px solid var(--color-status-danger,#ef4444);background-color:#ef44441a}.roles-container{gap:var(--spacing-6,24px);padding:var(--spacing-6,24px);flex-direction:column;width:100%;max-width:1280px;margin:0 auto;display:flex}.roles-stats-bar{gap:var(--spacing-4,16px);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.role-stat-card{align-items:center;gap:var(--spacing-4,16px);background:var(--surface-card,#fff);border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-lg,12px);padding:var(--spacing-4,16px);display:flex;box-shadow:0 1px 3px #0000000d}.role-stat-icon{border-radius:var(--radius-md,8px);background:var(--surface-ground,#f8fafc);width:48px;height:48px;color:var(--color-primary,#3b82f6);justify-content:center;align-items:center;display:flex}.role-stat-info{flex-direction:column;display:flex}.role-stat-value{font-size:var(--font-size-2xl,24px);color:var(--text-main,#0f172a);font-weight:700}.role-stat-label{font-size:var(--font-size-xs,12px);color:var(--text-muted,#64748b);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.badge-role-system{font-size:var(--font-size-xs,12px);color:#2563eb;background:#3b82f61f;border:1px solid #3b82f640;border-radius:9999px;align-items:center;gap:4px;padding:4px 10px;font-weight:600;display:inline-flex}.badge-role-custom{font-size:var(--font-size-xs,12px);color:#d97706;background:#f59e0b1f;border:1px solid #f59e0b4d;border-radius:9999px;align-items:center;gap:4px;padding:4px 10px;font-weight:600;display:inline-flex}.badge-count{min-width:24px;height:24px;font-size:var(--font-size-xs,12px);background:var(--surface-ground,#f1f5f9);color:var(--text-main,#334155);border:1px solid var(--border-color,#cbd5e1);border-radius:9999px;justify-content:center;align-items:center;padding:0 8px;font-weight:700;display:inline-flex}.permissions-accordion{gap:var(--spacing-3,12px);max-height:420px;padding-right:var(--spacing-2,8px);margin-top:var(--spacing-2,8px);flex-direction:column;display:flex;overflow-y:auto}.module-card{border:1px solid var(--border-color,#e2e8f0);border-radius:var(--radius-md,8px);background:var(--surface-card,#fff);transition:border-color .2s;overflow:hidden}.module-card:hover{border-color:var(--color-primary,#3b82f6)}.module-header-btn{width:100%;padding:var(--spacing-3,12px) var(--spacing-4,16px);background:var(--surface-ground,#f8fafc);cursor:pointer;text-align:left;font-weight:600;font-size:var(--font-size-sm,14px);color:var(--text-main,#0f172a);border:none;justify-content:space-between;align-items:center;display:flex}.module-header-btn:focus-visible{outline:2px solid var(--color-primary,#3b82f6);outline-offset:-2px}.module-header-title{align-items:center;gap:var(--spacing-2,8px);display:flex}.module-header-actions{align-items:center;gap:var(--spacing-3,12px);display:flex}.module-toggle-btn{font-size:var(--font-size-xs,12px);color:var(--color-primary,#3b82f6);cursor:pointer;border-radius:var(--radius-sm,4px);background:0 0;border:none;padding:2px 6px}.module-toggle-btn:hover{background:#3b82f61a}.module-permissions-grid{gap:var(--spacing-3,12px);padding:var(--spacing-4,16px);background:var(--surface-card,#fff);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.permission-checkbox-item{align-items:flex-start;gap:var(--spacing-2,8px);padding:var(--spacing-2,8px);border-radius:var(--radius-sm,6px);background:var(--surface-ground,#f8fafc);cursor:pointer;border:1px solid #0000;transition:all .15s;display:flex}.permission-checkbox-item:hover{background:#3b82f60d;border-color:#3b82f633}.permission-checkbox-item input[type=checkbox]{cursor:pointer;accent-color:var(--color-primary,#3b82f6);margin-top:3px}.permission-info{flex-direction:column;gap:2px;display:flex}.permission-name{font-size:var(--font-size-xs,12px);color:var(--text-main,#0f172a);font-weight:600}.permission-desc{color:var(--text-muted,#64748b);font-size:11px;line-height:1.3}.permission-code{color:var(--color-primary,#2563eb);font-family:monospace;font-size:10px}.delete-confirm-box{border-radius:var(--radius-md,8px);padding:var(--spacing-4,16px);margin-bottom:var(--spacing-4,16px);color:var(--text-main,#0f172a);background:#ef444414;border:1px solid #ef44444d}.delete-confirm-title{color:#dc2626;margin-bottom:var(--spacing-2,8px);font-weight:700}.repo-code-text{font-family:var(--font-family-mono,monospace);font-size:var(--font-size-xs,.75rem);color:var(--color-primary,#3b82f6);background:var(--color-primary-light,#3b82f614);border-radius:var(--radius-sm,4px);border:1px solid var(--color-primary-border,#3b82f633);letter-spacing:.03em;white-space:nowrap;padding:3px 8px}.repo-name-box{flex-direction:column;gap:3px;display:flex}.repo-name-text{font-weight:var(--font-weight-medium,500);color:var(--text-primary,#0f172a)}.repo-desc-text{font-size:var(--font-size-xs,.75rem);color:var(--text-secondary,#64748b);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.repo-url-box{flex-direction:column;gap:4px;display:flex}.repo-link{color:var(--color-primary,#3b82f6);font-size:var(--font-size-xs,.75rem);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;max-width:260px;text-decoration:none;transition:color .15s;display:inline-flex;overflow:hidden}.repo-link:hover{color:var(--color-primary-hover,#2563eb);text-decoration:underline}.repo-url-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.repo-branch-pill{font-size:.7rem;font-family:var(--font-family-mono,monospace);color:var(--text-tertiary,#94a3b8);background:var(--bg-tertiary,#94a3b81a);border-radius:var(--radius-full,9999px);align-items:center;gap:3px;width:fit-content;padding:1px 6px;display:inline-flex}.repo-projects-chip{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-accent,#8b5cf6);background:var(--color-accent-light,#8b5cf61a);border-radius:var(--radius-full,9999px);border:1px solid #8b5cf633;align-items:center;gap:5px;padding:3px 10px;display:inline-flex}.repo-badge{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);border-radius:var(--radius-sm,4px);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.repo-badge-gx{color:#fff!important;background-color:#6366f1!important;border-color:#4f46e5!important}.repo-badge-git{color:#fff!important;background-color:#3b82f6!important}.repo-badge-gitlab{color:#fff!important;background-color:#f97316!important}.repo-badge-azure{color:#fff!important;background-color:#0284c7!important}.repo-badge-svn{color:#fff!important;background-color:#64748b!important}[data-theme=dark] .repo-name-text{color:var(--text-primary,#f8fafc)}[data-theme=dark] .repo-desc-text{color:var(--text-secondary,#94a3b8)}[data-theme=dark] .repo-code-text{color:#93c5fd;background:#3b82f626;border-color:#3b82f659}[data-theme=dark] .repo-branch-pill{color:#cbd5e1;background:#ffffff14}[data-theme=dark] .repo-projects-chip{color:#c4b5fd;background:#8b5cf633;border-color:#8b5cf666}.master-kpis-grid{gap:var(--spacing-4,16px);margin-bottom:var(--spacing-4,16px);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.master-kpi-card{background:var(--surface-card,#1e293b);border:1px solid var(--border-default,#334155);border-radius:var(--radius-lg,12px);padding:var(--spacing-4,16px) var(--spacing-5,20px);align-items:center;gap:var(--spacing-4,16px);box-shadow:var(--shadow-sm,0 1px 2px 0 #0000000d);transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.master-kpi-card:hover{box-shadow:var(--shadow-md,0 4px 6px -1px #0000001a);border-color:var(--border-hover,#475569);transform:translateY(-2px)}.kpi-icon-wrapper{border-radius:var(--radius-md,8px);flex-shrink:0;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;font-size:1.25rem;display:flex}.kpi-content{flex-direction:column;gap:2px;min-width:0;display:flex}.kpi-label{font-size:var(--font-size-xs,.75rem);color:var(--text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.kpi-value{font-size:var(--font-size-2xl,1.5rem);color:var(--text-primary,#f8fafc);font-weight:800;line-height:1.2}.master-view-container .modal-body{padding:var(--spacing-5,20px) var(--spacing-6,24px);gap:var(--spacing-4,16px);flex-direction:column;display:flex}.master-view-container .form-grid-2{gap:var(--spacing-4,16px);grid-template-columns:1fr 1fr;align-items:start;display:grid}@media (width<=580px){.master-view-container .form-grid-2{grid-template-columns:1fr}}.master-view-container .field-hint{font-size:var(--font-size-xs,.75rem);color:var(--text-tertiary,#94a3b8);margin-top:4px;line-height:1.35;display:block}.master-view-container .required-star{color:var(--color-status-danger,#ef4444);margin-left:2px;font-weight:700}.master-view-container .repo-checkbox-label{cursor:pointer;font-size:var(--font-size-sm,.875rem);color:var(--text-primary,#f8fafc);-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:inline-flex}.master-view-container .repo-checkbox-input{border-radius:var(--radius-sm,4px);width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--color-primary,#3b82f6);cursor:pointer;flex-shrink:0;margin:0;padding:0}.master-view-container .repo-checkbox-input:focus-visible{outline:2px solid var(--color-primary,#3b82f6);outline-offset:2px}.master-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-4,16px);background:var(--surface-card,#1e293b);padding:var(--spacing-4,16px) var(--spacing-5,20px);border-radius:var(--radius-lg,12px);border:1px solid var(--border-default,#334155);margin-bottom:var(--spacing-4,16px);flex-wrap:wrap;display:flex}.master-search-box{align-items:center;gap:var(--spacing-3,12px);flex:1;min-width:260px;display:flex}.master-filters{align-items:center;gap:var(--spacing-3,12px);flex-wrap:wrap;display:flex}.master-filter-select{min-width:160px;height:42px;padding:10px 14px}.heatmap-view-container{gap:var(--spacing-6);padding:var(--spacing-6);max-width:var(--layout-content-max-width);box-sizing:border-box;flex-direction:column;width:100%;margin:0 auto;display:flex}.heatmap-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);flex-wrap:wrap;display:flex}.heatmap-header-info{align-items:center;gap:var(--spacing-4);display:flex}.heatmap-header-icon-box{border-radius:var(--radius-xl);border:1px solid var(--color-border-subtle);width:52px;height:52px;color:var(--color-primary);background:linear-gradient(135deg,#2563eb33,#10b98126);justify-content:center;align-items:center;display:flex}.heatmap-header-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-1) 0;align-items:center;gap:var(--spacing-3);display:flex}.heatmap-header-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.heatmap-header-actions{align-items:center;gap:var(--spacing-3);display:flex}.heatmap-time-toggle{border-radius:var(--radius-full);background:var(--tabs-track-bg);border:1px solid var(--tabs-track-border);padding:3px;display:inline-flex}.heatmap-time-btn{padding:var(--spacing-1) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.heatmap-time-btn.active{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-sm)}.heatmap-time-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.heatmap-stats-grid{gap:var(--spacing-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.heatmap-stat-card{align-items:center;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);border-radius:var(--radius-lg);background:var(--color-bg-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast);display:flex}.heatmap-stat-card:hover{transform:translateY(-2px)}.heatmap-stat-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.heatmap-stat-icon.total{color:var(--color-primary);background:#3b82f626}.heatmap-stat-icon.optimal{background:var(--heatmap-utilization-optimal-bg);color:var(--heatmap-utilization-optimal)}.heatmap-stat-icon.warning{background:var(--heatmap-utilization-warning-bg);color:var(--heatmap-utilization-warning)}.heatmap-stat-icon.critical{background:var(--heatmap-utilization-critical-bg);color:var(--heatmap-utilization-critical)}.heatmap-stat-icon.absence{background:var(--heatmap-absence-bg);color:var(--heatmap-absence-text)}.heatmap-stat-content{flex-direction:column;display:flex}.heatmap-stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.heatmap-stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.heatmap-controls-card{justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);border-radius:var(--radius-lg);background:var(--color-bg-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.heatmap-search-filter-group{align-items:center;gap:var(--spacing-3);flex-wrap:wrap;flex:1;display:flex}.scope-toggle-group{background:var(--color-bg-subtle,#f1f5f9);border-radius:var(--radius-full,9999px);border:1px solid var(--color-border,#e2e8f0);align-items:center;padding:3px;display:inline-flex}:root[data-theme=dark] .scope-toggle-group{background:#1e293bcc;border-color:#ffffff1a}.scope-toggle-btn{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);border-radius:var(--radius-full,9999px);color:var(--color-text-secondary,#64748b);cursor:pointer;transition:all var(--transition-fast,.15s ease);white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;padding:4px 12px;display:inline-flex}.scope-toggle-btn:hover{color:var(--color-text-primary,#0f172a)}.scope-toggle-btn.active{background:var(--color-primary,#2563eb);color:#fff;box-shadow:var(--shadow-sm,0 1px 2px #0000000d);font-weight:600}.heatmap-search-wrapper{flex:1;min-width:240px;max-width:360px;position:relative}.heatmap-search-icon{color:var(--form-input-placeholder);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.heatmap-search-input{width:100%;padding:var(--spacing-2) var(--spacing-4) var(--spacing-2) 38px;border-radius:var(--radius-md);border:1px solid var(--form-input-border);background:var(--form-input-bg);color:var(--form-input-text);font-size:var(--font-size-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;outline:none}.heatmap-search-input:focus{border-color:var(--form-input-border-focus);box-shadow:0 0 0 3px var(--form-input-focus-ring)}.heatmap-filter-select{padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-md);border:1px solid var(--form-input-border);background:var(--form-input-bg);color:var(--form-input-text);font-size:var(--font-size-sm);cursor:pointer;transition:border-color var(--transition-fast);outline:none}.heatmap-filter-select:focus{border-color:var(--form-input-border-focus)}.heatmap-table-card{border-radius:var(--radius-lg);background:var(--color-bg-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.heatmap-virtual-viewport{background:var(--color-bg-surface);width:100%;max-height:600px;position:relative;overflow:auto}.heatmap-grid-header{z-index:20;background:var(--color-bg-elevated);border-bottom:2px solid var(--color-border);min-width:max-content;display:flex;position:sticky;top:0}.heatmap-header-col-resource{width:var(--heatmap-sidebar-width);min-width:var(--heatmap-sidebar-width);max-width:var(--heatmap-sidebar-width);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;z-index:30;background:var(--color-bg-elevated);border-right:1px solid var(--color-border);box-sizing:border-box;justify-content:space-between;align-items:center;gap:var(--spacing-2);display:flex;position:sticky;left:0}.heatmap-header-col-period{width:var(--heatmap-col-width);min-width:var(--heatmap-col-width);padding:var(--spacing-3) var(--spacing-2);text-align:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-right:1px solid var(--color-border);box-sizing:border-box;transition:background-color var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex}.heatmap-header-col-period.is-current-period{border-bottom:2px solid var(--color-primary);background:#3b82f61f}.heatmap-period-name{color:var(--color-text-primary);font-weight:var(--font-weight-bold);display:block}.heatmap-period-dates{color:var(--color-text-muted);font-size:.68rem}.current-period-badge{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;font-size:.6rem;line-height:1;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.04em;margin-top:2px;padding:2px 6px;display:inline-block;box-shadow:0 1px 2px #00000026}.heatmap-virtual-container{width:100%;min-width:max-content;position:relative}.heatmap-row{border-bottom:1px solid var(--color-border);background:var(--color-bg-surface);width:100%;transition:background-color var(--transition-fast);box-sizing:border-box;align-items:center;display:flex}.heatmap-row:hover{background:var(--color-bg-hover)}.heatmap-row-resource-cell{width:var(--heatmap-sidebar-width);min-width:var(--heatmap-sidebar-width);max-width:var(--heatmap-sidebar-width);height:100%;padding:var(--spacing-2) var(--spacing-4);align-items:center;gap:var(--spacing-3);z-index:10;background:inherit;border-right:1px solid var(--color-border);box-sizing:border-box;display:flex;position:sticky;left:0}.heatmap-resource-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary), var(--raw-slate-700));color:#fff;width:34px;height:34px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.heatmap-resource-info{flex-direction:column;display:flex;overflow:hidden}.heatmap-resource-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.heatmap-resource-role{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.heatmap-cell{width:var(--heatmap-col-width);min-width:var(--heatmap-col-width);border-right:1px solid var(--heatmap-cell-border);cursor:pointer;height:100%;transition:transform var(--transition-fast), filter var(--transition-fast);box-sizing:border-box;justify-content:center;align-items:center;padding:4px;display:flex}.heatmap-cell:hover{filter:brightness(1.15)}.heatmap-cell:focus-visible{outline:2px solid var(--color-primary);outline-offset:-2px}.heatmap-cell-badge{border-radius:var(--radius-md);width:100%;height:80%;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);transition:all var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;display:flex}.heatmap-cell-under .heatmap-cell-badge{background:var(--heatmap-utilization-under-bg);color:var(--heatmap-utilization-under)}.heatmap-cell-optimal .heatmap-cell-badge{background:var(--heatmap-utilization-optimal-bg);color:var(--heatmap-utilization-optimal)}.heatmap-cell-warning .heatmap-cell-badge{background:var(--heatmap-utilization-warning-bg);color:var(--heatmap-utilization-warning)}.heatmap-cell-critical .heatmap-cell-badge{background:var(--heatmap-utilization-critical-bg);color:var(--heatmap-utilization-critical);font-weight:var(--font-weight-bold);box-shadow:0 0 6px var(--heatmap-utilization-critical-bg)}.heatmap-cell-absence .heatmap-cell-badge{background:var(--heatmap-absence-bg);color:var(--heatmap-absence-text);border:1px dashed var(--heatmap-absence-border);font-size:.65rem}.heatmap-cell-empty .heatmap-cell-badge{background:var(--heatmap-cell-bg-empty);color:var(--color-text-muted)}.heatmap-legend-card{justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-3) var(--spacing-5);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.heatmap-legend-items{align-items:center;gap:var(--spacing-4);flex-wrap:wrap;display:flex}.heatmap-legend-item{align-items:center;gap:var(--spacing-2);color:var(--color-text-secondary);display:flex}.heatmap-legend-dot{border-radius:var(--radius-sm);width:12px;height:12px}.heatmap-legend-dot.under{background:var(--heatmap-utilization-under)}.heatmap-legend-dot.optimal{background:var(--heatmap-utilization-optimal)}.heatmap-legend-dot.warning{background:var(--heatmap-utilization-warning)}.heatmap-legend-dot.critical{background:var(--heatmap-utilization-critical)}.heatmap-legend-dot.absence{background:var(--heatmap-absence-text)}.heatmap-details-modal-body{gap:var(--spacing-4);flex-direction:column;display:flex}.heatmap-details-summary{gap:var(--spacing-3);padding:var(--spacing-3);background:var(--color-bg-muted);border-radius:var(--radius-md);border:1px solid var(--color-border);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.heatmap-details-stat{flex-direction:column;display:flex}.heatmap-details-stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.heatmap-details-stat-val{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.heatmap-tasks-table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.heatmap-tasks-table th{text-align:left;padding:var(--spacing-2) var(--spacing-3);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-size:var(--font-size-xs);border-bottom:1px solid var(--color-border)}.heatmap-tasks-table td{padding:var(--spacing-2) var(--spacing-3);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-primary)}.heatmap-tasks-table tr:hover{background:var(--color-bg-hover)}.wbs-tree-container{background:var(--bg-card,#1e293b);border:1px solid var(--border-subtle,#334155);border-radius:8px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 4px 12px #00000026}.wbs-toolbar{background:var(--bg-surface-elevated,#0f172a);border-bottom:1px solid var(--border-subtle,#334155);justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.wbs-search-box{background:var(--form-input-bg,#1e293b);border:1px solid var(--border-subtle,#334155);border-radius:6px;align-items:center;width:320px;max-width:100%;padding:0 10px;display:flex}.wbs-search-icon{color:var(--text-muted,#94a3b8);margin-right:6px}.wbs-search-input{color:var(--text-main,#f8fafc);background:0 0;border:none;outline:none;width:100%;height:32px;font-size:13px}.wbs-actions{gap:8px;display:flex}.wbs-btn-action{background:var(--bg-card,#1e293b);color:var(--text-main,#f8fafc);border:1px solid var(--border-subtle,#334155);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.wbs-btn-action:hover{background:var(--color-primary-subtle,#3b82f61a);border-color:var(--color-primary,#3b82f6);color:var(--color-primary,#3b82f6)}.wbs-header-row,.wbs-row{grid-template-columns:minmax(280px,2.5fr) 110px 130px 130px 140px 90px;align-items:center;padding:0 12px;font-size:13px;display:grid}.wbs-header-row{background:var(--bg-surface-elevated,#0f172a);border-bottom:2px solid var(--border-subtle,#334155);height:38px;color:var(--text-muted,#94a3b8);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.wbs-row{border-bottom:1px solid var(--border-subtle,#334155);cursor:default;transition:background-color .12s}.wbs-row:hover{background-color:var(--bg-hover,#ffffff0a)}.wbs-depth-0{background-color:#6366f10d;font-weight:600}.wbs-depth-1{background-color:#3b82f608;font-weight:500}.wbs-col{text-overflow:ellipsis;white-space:nowrap;padding:0 6px;overflow:hidden}.wbs-col-code{align-items:center;gap:8px;display:flex}.wbs-toggle-btn{color:var(--text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:inline-flex}.wbs-toggle-btn:hover{color:var(--text-main,#f8fafc);background:#ffffff1a}.wbs-toggle-spacer{width:20px;display:inline-block}.wbs-item-icon{align-items:center;display:inline-flex}.wbs-icon-ptf{color:#818cf8}.wbs-icon-prg{color:#38bdf8}.wbs-icon-proy{color:#34d399}.wbs-icon-hito{color:#fbbf24}.wbs-icon-task{color:#94a3b8}.wbs-item-code{font-family:var(--font-mono,monospace);color:var(--text-secondary,#cbd5e1);background:#ffffff12;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:11px}.wbs-item-name{color:var(--text-main,#f8fafc);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wbs-type-badge{letter-spacing:.05em;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:700;display:inline-block}.wbs-type-portafolio{color:#a5b4fc;background:#6366f126;border:1px solid #6366f14d}.wbs-type-programa{color:#7dd3fc;background:#38bdf826;border:1px solid #38bdf84d}.wbs-type-proyecto{color:#6ee7b7;background:#34d39926;border:1px solid #34d3994d}.wbs-type-tarea{color:#cbd5e1;background:#94a3b826;border:1px solid #94a3b84d}.wbs-progress-bar-container{background:#ffffff1a;border-radius:3px;height:6px;margin-bottom:3px;overflow:hidden}.wbs-progress-bar{border-radius:3px;height:100%;transition:width .3s}.wbs-rag-G{background:#22c55e}.wbs-rag-A{background:#f59e0b}.wbs-rag-R{background:#ef4444}.wbs-progress-text{color:var(--text-muted,#94a3b8);font-size:11px}.rag-badge{letter-spacing:.04em;border-radius:12px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-block}.text-right{text-align:right}.text-center{text-align:center}.wbs-empty-state{color:var(--text-muted,#64748b);background:var(--bg-surface,#1e293b);border-radius:var(--radius-md,8px);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px;display:flex}.ppm-executive-container{gap:var(--space-6,24px);padding:var(--space-6,24px);flex-direction:column;width:100%;max-width:1600px;margin:0 auto;animation:.25s ease-out fadeIn;display:flex}.ppm-header-banner{justify-content:space-between;align-items:center;gap:var(--space-4,16px);padding:var(--space-6,24px);background:var(--bg-surface,#1e293b);border:1px solid var(--border-color,#334155);border-radius:var(--radius-lg,12px);flex-wrap:wrap;display:flex;box-shadow:0 4px 12px #0000001a}.ppm-header-info{gap:var(--space-2,8px);flex-direction:column;max-width:720px;display:flex}.ppm-badge-tag{letter-spacing:.08em;color:var(--primary-color,#6366f1);background:#6366f11f;border-radius:9999px;align-items:center;gap:6px;width:fit-content;padding:4px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.ppm-title{color:var(--text-primary,#f8fafc);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:700}.ppm-subtitle{color:var(--text-secondary,#94a3b8);margin:0;font-size:.9rem;line-height:1.5}.ppm-header-controls{align-items:center;gap:var(--space-4,16px);flex-wrap:wrap;display:flex}.ppm-selector-group{flex-direction:column;gap:4px;display:flex}.ppm-selector-label{color:var(--text-secondary,#94a3b8);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.ppm-select{background:var(--bg-input,#0f172a);color:var(--text-primary,#f8fafc);border:1px solid var(--border-color,#334155);border-radius:var(--radius-md,8px);cursor:pointer;outline:none;min-width:220px;padding:8px 14px;font-size:.9rem;font-weight:500;transition:border-color .15s,box-shadow .15s}.ppm-select:focus{border-color:var(--primary-color,#6366f1);box-shadow:0 0 0 3px #6366f140}.ppm-header-btns{gap:var(--space-2,8px);display:flex}.btn-ppm-primary,.btn-ppm-secondary{border-radius:var(--radius-md,8px);cursor:pointer;align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-ppm-primary{background:var(--primary-color,#6366f1);color:#fff;border:none}.btn-ppm-primary:hover:not(:disabled){background:#4f46e5;transform:translateY(-1px)}.btn-ppm-secondary{color:var(--text-primary,#f8fafc);border:1px solid var(--border-color,#334155);background:0 0}.btn-ppm-secondary:hover:not(:disabled){background:var(--bg-hover,#ffffff0d);border-color:var(--text-secondary,#94a3b8)}.ppm-alert-banner{background:var(--color-status-danger-bg,#ef44441f);border:1px solid var(--color-status-danger,#ef4444);border-radius:var(--radius-md,8px);color:var(--color-status-danger-text,#f87171);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:.88rem;display:flex}.ppm-alert-content{align-items:center;gap:10px;display:flex}.btn-ppm-retry{background:var(--color-status-danger,#ef4444);color:#fff;border-radius:var(--radius-sm,6px);cursor:pointer;white-space:nowrap;border:none;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-ppm-retry:hover{background:#dc2626;transform:translateY(-1px)}.ppm-kpi-grid{gap:var(--space-4,16px);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.ppm-kpi-card{background:var(--bg-surface,#1e293b);border:1px solid var(--border-color,#334155);border-radius:var(--radius-lg,12px);padding:var(--space-4,18px);flex-direction:column;gap:8px;transition:transform .15s,border-color .15s;display:flex;box-shadow:0 2px 6px #00000014}.ppm-kpi-card:hover{border-color:var(--primary-color,#6366f1);transform:translateY(-2px)}.ppm-kpi-header{justify-content:space-between;align-items:center;display:flex}.ppm-kpi-label{color:var(--text-secondary,#94a3b8);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.ppm-kpi-icon{border-radius:8px;padding:6px}.icon-blue{color:#38bdf8;background:#38bdf81f}.icon-amber{color:#fbbf24;background:#fbbf241f}.icon-green{color:#4ade80;background:#4ade801f}.icon-indigo{color:#818cf8;background:#818cf81f}.ppm-kpi-value{color:var(--text-primary,#f8fafc);letter-spacing:-.02em;font-size:1.55rem;font-weight:700}.ppm-kpi-footer{color:var(--text-muted,#64748b);align-items:center;font-size:.8rem;display:flex}.rag-badge{text-transform:uppercase;border-radius:6px;align-items:center;gap:6px;padding:3px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.rag-G{color:#4ade80;background:#22c55e26;border:1px solid #22c55e4d}.rag-A{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.rag-R{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.ppm-tabs-bar{gap:var(--space-2,8px);border-bottom:1px solid var(--border-color,#334155);padding-bottom:2px;display:flex}.ppm-tab-btn{color:var(--text-secondary,#94a3b8);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:10px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:inline-flex}.ppm-tab-btn:hover{color:var(--text-primary,#f8fafc);background:var(--bg-hover,#ffffff08)}.ppm-tab-btn.active{color:var(--primary-color,#6366f1);border-bottom-color:var(--primary-color,#6366f1)}.ppm-tab-content{width:100%}.ppm-charts-grid{gap:var(--space-4,16px);grid-template-columns:repeat(auto-fit,minmax(480px,1fr));display:grid}.ppm-chart-card{background:var(--bg-surface,#1e293b);border:1px solid var(--border-color,#334155);border-radius:var(--radius-lg,12px);padding:var(--space-4,18px);flex-direction:column;gap:12px;display:flex}.ppm-chart-header{flex-direction:column;gap:2px;display:flex}.ppm-chart-title{color:var(--text-primary,#f8fafc);margin:0;font-size:1rem;font-weight:600}.ppm-chart-subtitle{color:var(--text-muted,#64748b);font-size:.78rem}.ppm-chart-body{width:100%;height:280px;position:relative}.ppm-okrs-section{gap:var(--space-4,16px);flex-direction:column;display:flex}.ppm-okrs-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ppm-section-title{color:var(--text-primary,#f8fafc);margin:0;font-size:1.15rem;font-weight:700}.ppm-section-desc{color:var(--text-secondary,#94a3b8);margin:4px 0 0;font-size:.85rem}.ppm-okrs-grid{gap:var(--space-4,16px);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.ppm-okr-card{background:var(--bg-surface,#1e293b);border:1px solid var(--border-color,#334155);border-radius:var(--radius-lg,12px);padding:var(--space-4,18px);flex-direction:column;gap:12px;display:flex;box-shadow:0 2px 6px #00000014}.ppm-okr-card-header{justify-content:space-between;align-items:center;display:flex}.ppm-okr-code{color:var(--primary-color,#6366f1);background:#6366f11a;border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:700}.okr-status-badge{text-transform:uppercase;border-radius:4px;padding:2px 8px;font-size:.72rem;font-weight:600}.status-activo{color:#4ade80;background:#22c55e1f}.ppm-okr-title{color:var(--text-primary,#f8fafc);margin:0;font-size:1rem;font-weight:600}.ppm-okr-desc{color:var(--text-secondary,#94a3b8);margin:0;font-size:.82rem;line-height:1.4}.ppm-okr-progress-box{flex-direction:column;gap:6px;display:flex}.ppm-okr-progress-labels{color:var(--text-secondary,#94a3b8);justify-content:space-between;font-size:.78rem;display:flex}.ppm-okr-financials{background:var(--bg-hover,#ffffff08);border-radius:var(--radius-md,8px);grid-template-columns:1fr 1fr;gap:8px;padding:8px 12px;display:grid}.ppm-okr-fin-item{flex-direction:column;gap:2px;display:flex}.fin-label{color:var(--text-muted,#64748b);text-transform:uppercase;font-size:.72rem}.fin-val{color:var(--text-primary,#f8fafc);font-size:.88rem;font-weight:600}.ppm-okr-proyectos{flex-direction:column;gap:6px;display:flex}.ppm-okr-proy-title{color:var(--text-muted,#64748b);text-transform:uppercase;font-size:.75rem;font-weight:600}.ppm-okr-chips{flex-wrap:wrap;gap:6px;display:flex}.ppm-proy-chip{background:var(--bg-chip,#334155);color:var(--text-primary,#f8fafc);border-radius:4px;padding:3px 8px;font-size:.72rem}.ppm-modal-form{gap:var(--space-4,16px);flex-direction:column;display:flex}.ppm-modal-form .form-group{flex-direction:column;gap:6px;display:flex}.ppm-modal-form label{color:var(--text-secondary,#94a3b8);font-size:.82rem;font-weight:600}.ppm-input{background:var(--bg-input,#0f172a);color:var(--text-primary,#f8fafc);border:1px solid var(--border-color,#334155);border-radius:var(--radius-md,8px);outline:none;padding:8px 12px;font-size:.88rem;transition:border-color .15s}.ppm-input:focus{border-color:var(--primary-color,#6366f1);box-shadow:0 0 0 2px #6366f133}.ppm-modal-footer{justify-content:flex-end;gap:10px;margin-top:8px;display:flex}.timesheet-container{gap:var(--spacing-6,24px);flex-direction:column;width:100%;animation:.2s ease-in-out fadeIn;display:flex}.timesheet-header{justify-content:space-between;align-items:center;gap:var(--spacing-4,16px);background:var(--card-bg,var(--color-bg-surface));border:1px solid var(--card-border,var(--color-border));border-radius:var(--radius-lg,12px);padding:var(--spacing-4,16px) var(--spacing-6,24px);box-shadow:var(--card-shadow,var(--shadow-sm));flex-wrap:wrap;display:flex}.timesheet-title-group{gap:var(--spacing-1,4px);flex-direction:column;display:flex}.timesheet-title{font-size:var(--font-size-xl,1.25rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary);margin:0}.timesheet-subtitle{font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary);margin:0}.timesheet-nav-controls{align-items:center;gap:var(--spacing-2,8px);display:flex}.timesheet-nav-btn{padding:var(--spacing-2,8px) var(--spacing-3,12px);border-radius:var(--radius-md,8px);border:1px solid var(--btn-secondary-border,var(--color-border));background:var(--btn-secondary-bg,var(--color-bg-muted));color:var(--btn-secondary-text,var(--color-text-primary));font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);cursor:pointer;transition:all var(--transition-fast,.15s ease-in-out);justify-content:center;align-items:center;display:inline-flex}.timesheet-nav-btn:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-focus)}.timesheet-nav-btn:disabled{opacity:.5;cursor:not-allowed}.timesheet-week-label{font-weight:var(--font-weight-semibold,600);font-size:var(--font-size-base,1rem);color:var(--color-text-primary);background:var(--color-bg-muted);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md,8px);padding:var(--spacing-2,8px) var(--spacing-4,16px);text-align:center;min-width:220px}.timesheet-badge{align-items:center;gap:var(--spacing-1,4px);padding:var(--spacing-1,4px) var(--spacing-3,12px);border-radius:var(--radius-full,9999px);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);text-transform:uppercase;letter-spacing:.05em;display:inline-flex}.timesheet-badge--borrador{background:var(--color-bg-muted);color:var(--color-text-secondary);border:1px solid var(--color-border)}.timesheet-badge--enviado{background:var(--color-status-warning-bg,#f59e0b26);color:var(--color-status-warning);border:1px solid var(--security-warning-border,#f59e0b59)}.timesheet-badge--aprobado{background:var(--color-status-success-bg,#10b98126);color:var(--color-status-success);border:1px solid var(--security-success-border,#10b98159)}.timesheet-badge--rechazado{background:var(--color-status-danger-bg,#f43f5e26);color:var(--color-status-danger);border:1px solid var(--security-danger-border,#f43f5e59)}.timesheet-rejection-banner{align-items:flex-start;gap:var(--spacing-3,12px);padding:var(--spacing-4,16px);background:var(--security-danger-bg,#f43f5e14);border:1px solid var(--security-danger-border,#f43f5e4d);border-radius:var(--radius-md,8px);color:var(--color-status-danger);font-size:var(--font-size-sm,.875rem);display:flex}.timesheet-rejection-banner strong{font-weight:var(--font-weight-bold,700)}.timesheet-lock-banner{align-items:center;gap:var(--spacing-3,12px);padding:var(--spacing-3,12px) var(--spacing-4,16px);background:var(--security-success-bg,#10b98114);border:1px solid var(--security-success-border,#10b9814d);border-radius:var(--radius-md,8px);color:var(--color-status-success);font-size:var(--font-size-sm,.875rem);display:flex}.timesheet-grid-card{background:var(--card-bg,var(--color-bg-surface));border:1px solid var(--card-border,var(--color-border));border-radius:var(--radius-lg,12px);box-shadow:var(--card-shadow,var(--shadow-sm));overflow:hidden}.timesheet-table-container{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb-bg) var(--scrollbar-track-bg);width:100%;overflow-x:auto}.timesheet-table-container::-webkit-scrollbar{height:var(--scrollbar-width-thin,6px);width:var(--scrollbar-width-thin,6px)}.timesheet-table-container::-webkit-scrollbar-track{background:var(--scrollbar-track-bg,transparent)}.timesheet-table-container::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-bg);border-radius:var(--scrollbar-radius,9999px)}.timesheet-table-container::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.timesheet-table{border-collapse:collapse;text-align:left;width:100%;font-size:var(--font-size-sm,.875rem)}.timesheet-table th{background:var(--table-header-bg,var(--color-bg-muted));color:var(--table-header-text,var(--color-text-secondary));padding:var(--spacing-3,12px) var(--spacing-4,16px);font-weight:var(--font-weight-semibold,600);border-bottom:1px solid var(--table-border,var(--color-border));white-space:nowrap}.timesheet-table th.col-day{text-align:center;min-width:90px}.timesheet-table th.col-total{text-align:right;min-width:90px}.timesheet-table td{padding:var(--spacing-3,12px) var(--spacing-4,16px);border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-primary);vertical-align:middle}.timesheet-table td.col-day{text-align:center}.timesheet-table td.col-total{text-align:right;font-weight:var(--font-weight-bold,700)}.timesheet-table tr:hover:not(.tr-summary) td{background:var(--color-bg-hover)}.timesheet-table tr.tr-summary td{background:var(--table-header-bg,var(--color-bg-muted));font-weight:var(--font-weight-bold,700);border-top:2px solid var(--table-border,var(--color-border));color:var(--color-text-primary);border-bottom:none}.timesheet-hour-badge{min-width:48px;height:32px;padding:0 var(--spacing-2,8px);border-radius:var(--radius-md,6px);font-weight:var(--font-weight-semibold,600);font-size:var(--font-size-sm,.875rem);background:var(--color-bg-muted);border:1px solid var(--color-border);color:var(--color-text-primary);justify-content:center;align-items:center;display:inline-flex}.timesheet-hour-badge--active{color:var(--raw-blue-300,#93c5fd);background:#2563eb2e;border-color:#2563eb73}.timesheet-add-entry-btn{border-radius:var(--radius-md,6px);border:1px dashed var(--color-border);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast,.15s ease);background:0 0;justify-content:center;align-items:center;display:inline-flex}.timesheet-add-entry-btn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:#2563eb14}.timesheet-add-entry-btn:disabled{opacity:.3;cursor:not-allowed}.timesheet-actions-bar{padding:var(--spacing-4,16px) var(--spacing-6,24px);background:var(--card-bg,var(--color-bg-surface));border:1px solid var(--card-border,var(--color-border));border-radius:var(--radius-lg,12px);box-shadow:var(--card-shadow,var(--shadow-sm));justify-content:space-between;align-items:center;display:flex}.timesheet-total-summary{align-items:baseline;gap:var(--spacing-2,8px);display:flex}.timesheet-total-summary-label{font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary);font-weight:var(--font-weight-medium,500)}.timesheet-total-summary-value{font-size:var(--font-size-xl,1.25rem);font-weight:var(--font-weight-bold,700);color:var(--color-primary)}.timesheet-submit-btn{align-items:center;gap:var(--spacing-2,8px);padding:var(--spacing-3,12px) var(--spacing-5,20px);background:var(--btn-primary-bg,var(--color-primary));color:var(--btn-primary-text,#fff);border-radius:var(--radius-md,8px);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);cursor:pointer;transition:all var(--transition-fast,.15s ease-in-out);border:none;display:inline-flex}.timesheet-submit-btn:hover:not(:disabled){background:var(--btn-primary-hover,var(--color-primary-hover))}.timesheet-submit-btn:disabled{opacity:.5;cursor:not-allowed}.timesheet-inbox-grid{gap:var(--spacing-4,16px);flex-direction:column;display:flex}.timesheet-inbox-card{background:var(--card-bg,var(--color-bg-surface));border:1px solid var(--card-border,var(--color-border));border-radius:var(--radius-lg,12px);padding:var(--spacing-4,16px) var(--spacing-6,24px);box-shadow:var(--card-shadow,var(--shadow-sm));gap:var(--spacing-3,12px);transition:border-color var(--transition-fast,.15s ease);flex-direction:column;display:flex}.timesheet-inbox-card:hover{border-color:var(--color-border-focus)}.timesheet-inbox-header{justify-content:space-between;align-items:center;gap:var(--spacing-3,12px);flex-wrap:wrap;display:flex}.timesheet-inbox-collaborator{align-items:center;gap:var(--spacing-3,12px);display:flex}.timesheet-avatar{border-radius:var(--radius-full,9999px);width:40px;height:40px;color:var(--color-primary);font-weight:var(--font-weight-bold,700);font-size:var(--font-size-sm,.875rem);background:#2563eb26;justify-content:center;align-items:center;display:flex}.timesheet-collab-details{flex-direction:column;display:flex}.timesheet-collab-name{font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary)}.timesheet-collab-meta{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary)}.timesheet-inbox-metrics{align-items:center;gap:var(--spacing-4,16px);display:flex}.timesheet-metric-item{flex-direction:column;align-items:flex-end;display:flex}.timesheet-metric-label{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary)}.timesheet-metric-value{font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary)}.timesheet-inbox-actions{align-items:center;gap:var(--spacing-2,8px);display:flex}.timesheet-approve-btn{align-items:center;gap:var(--spacing-1,4px);padding:var(--spacing-2,8px) var(--spacing-4,16px);background:var(--color-status-success);color:#fff;border-radius:var(--radius-md,8px);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);cursor:pointer;transition:background var(--transition-fast,.15s ease);border:none;display:inline-flex}.timesheet-approve-btn:hover:not(:disabled){background:var(--raw-emerald-600,#059669)}.timesheet-reject-btn{align-items:center;gap:var(--spacing-1,4px);padding:var(--spacing-2,8px) var(--spacing-4,16px);color:var(--color-status-danger);border:1px solid var(--color-status-danger);border-radius:var(--radius-md,8px);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);cursor:pointer;transition:all var(--transition-fast,.15s ease);background:0 0;display:inline-flex}.timesheet-reject-btn:hover:not(:disabled){background:var(--color-status-danger-bg,#f43f5e1a)}.timesheet-modal-overlay{background:var(--modal-backdrop-bg,#020617bf);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;padding:var(--spacing-4,16px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.timesheet-modal{background:var(--modal-surface-bg,var(--color-bg-surface));border:1px solid var(--modal-border,var(--color-border));border-radius:var(--radius-lg,12px);width:100%;max-width:520px;box-shadow:var(--shadow-lg,0 10px 25px #00000026);animation:.18s ease-out modalScale;overflow:hidden}@keyframes modalScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.timesheet-modal-header{padding:var(--spacing-4,16px) var(--spacing-6,24px);border-bottom:1px solid var(--modal-header-border,var(--color-border));justify-content:space-between;align-items:center;display:flex}.timesheet-modal-title{font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary);margin:0}.timesheet-modal-body{padding:var(--spacing-6,24px);gap:var(--spacing-4,16px);flex-direction:column;display:flex}.timesheet-modal-footer{padding:var(--spacing-4,16px) var(--spacing-6,24px);background:var(--modal-footer-bg,var(--color-bg-muted));border-top:1px solid var(--modal-footer-border,var(--color-border));justify-content:flex-end;align-items:center;gap:var(--spacing-3,12px);display:flex}.timesheet-textarea{box-sizing:border-box;width:100%;min-height:100px;max-height:240px;padding:var(--spacing-3,12px);border-radius:var(--radius-md,8px);border:1px solid var(--form-input-border,var(--color-border));background:var(--form-input-bg,var(--color-bg-muted));color:var(--form-input-text,var(--color-text-primary));font-family:inherit;font-size:var(--font-size-sm,.875rem);resize:vertical}.timesheet-textarea:focus{border-color:var(--form-input-border-focus,var(--color-primary));box-shadow:0 0 0 3px var(--form-input-focus-ring,#2563eb33);outline:none}.timesheet-tabs{align-items:center;gap:var(--spacing-2,8px);padding:var(--spacing-1,4px);background:var(--tabs-track-bg,var(--color-bg-muted));border:1px solid var(--tabs-track-border,var(--color-border));border-radius:var(--radius-lg,12px);width:fit-content;display:inline-flex}.timesheet-tab-btn{align-items:center;gap:var(--spacing-2,8px);padding:var(--spacing-2,8px) var(--spacing-4,16px);background:var(--tabs-pill-bg-inactive,transparent);border-radius:var(--radius-md,8px);color:var(--tabs-pill-text-inactive,var(--color-text-secondary));font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);cursor:pointer;transition:all var(--transition-fast,.15s ease-in-out);border:1px solid #0000;display:inline-flex}.timesheet-tab-btn:hover:not(.active){background:var(--tabs-pill-hover-bg,var(--color-bg-hover));color:var(--tabs-pill-hover-text,var(--color-text-primary))}.timesheet-tab-btn.active{background:var(--tabs-pill-bg-active,var(--color-primary));color:var(--tabs-pill-text-active,#fff);box-shadow:var(--tabs-pill-active-shadow,0 1px 3px #00000059)}.timesheet-count-badge{border-radius:var(--radius-full,9999px);background:var(--color-status-warning);color:#fff;min-width:20px;height:20px;font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-bold,700);justify-content:center;align-items:center;padding:0 6px;display:inline-flex}.timesheet-supervisor-bar{align-items:center;gap:var(--spacing-3,12px);background:var(--color-bg-muted,#f8fafc);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-lg,10px);padding:var(--spacing-2,8px) var(--spacing-4,16px);margin-top:var(--spacing-2,8px);display:flex}.timesheet-supervisor-label{align-items:center;gap:var(--spacing-2,6px);font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary,#64748b);white-space:nowrap;display:flex}.timesheet-supervisor-select{padding:var(--spacing-1,6px) var(--spacing-3,12px);border-radius:var(--radius-md,6px);border:1px solid var(--color-border,#cbd5e1);background:var(--color-bg-surface,#fff);color:var(--color-text-primary,#0f172a);font-size:var(--font-size-xs,13px);font-weight:var(--font-weight-medium,500);cursor:pointer;min-width:240px;transition:all .15s}.timesheet-supervisor-select:focus{border-color:var(--color-primary,#2563eb);outline:none;box-shadow:0 0 0 2px #2563eb26}.timesheet-colaborador-cell{align-items:center;gap:var(--spacing-2,10px);display:flex}.timesheet-colaborador-avatar{border-radius:var(--radius-full,9999px);background:linear-gradient(135deg, var(--color-primary,#2563eb), #1d4ed8);color:#fff;width:32px;height:32px;font-size:11px;font-weight:var(--font-weight-bold,700);box-shadow:var(--shadow-sm,0 1px 2px #0000001a);flex-shrink:0;justify-content:center;align-items:center;display:flex}.timesheet-colaborador-info{flex-direction:column;display:flex}.timesheet-colaborador-name{font-weight:var(--font-weight-semibold,600);font-size:var(--font-size-sm,13px);color:var(--color-text-primary,#0f172a);line-height:1.2}.timesheet-colaborador-cargo{color:var(--color-text-secondary,#64748b);font-size:11px;line-height:1.3}.timesheet-supervision-badge{align-items:center;gap:var(--spacing-2,6px);padding:var(--spacing-2,8px) var(--spacing-3,14px);border-radius:var(--radius-md,8px);color:var(--color-primary,#2563eb);font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-semibold,600);letter-spacing:.01em;background:#2563eb14;border:1px solid #2563eb40;display:inline-flex}:root[data-theme=dark] .timesheet-supervisor-bar,.dark .timesheet-supervisor-bar{background:var(--color-bg-base,#0f172a);border-color:var(--color-border,#334155)}:root[data-theme=dark] .timesheet-supervisor-select,.dark .timesheet-supervisor-select{background:var(--color-bg-surface,#1e293b);border-color:var(--color-border,#334155);color:var(--color-text-primary,#f8fafc)}:root[data-theme=dark] .timesheet-supervision-badge,.dark .timesheet-supervision-badge{color:#60a5fa;background:#3b82f626;border-color:#3b82f659}.chronos-modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:9999;box-sizing:border-box;background-color:#0f172abf;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.initial-password-card{background-color:var(--modal-surface-bg,var(--color-bg-surface,#fff));border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,16px);box-sizing:border-box;width:100%;max-width:520px;padding:32px;animation:.25s cubic-bezier(.16,1,.3,1) modalPopIn;box-shadow:0 25px 50px -12px #00000059}@keyframes modalPopIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.initial-pwd-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:24px;display:flex}.initial-pwd-icon-badge{width:56px;height:56px;color:var(--color-primary,#2563eb);background:linear-gradient(135deg,#2563eb26 0%,#2563eb0d 100%);border:1px solid #2563eb40;border-radius:50%;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.initial-pwd-title{color:var(--color-text-primary,#0f172a);margin:0 0 6px;font-size:20px;font-weight:700}.initial-pwd-subtitle{color:var(--color-text-secondary,#64748b);margin:0 0 12px;font-size:14px;line-height:1.5}.initial-pwd-user-chip{background-color:var(--color-bg-muted,#f1f5f9);color:var(--color-text-secondary,#475569);border:1px solid var(--color-border,#e2e8f0);border-radius:9999px;padding:4px 12px;font-size:12px;display:inline-flex}.initial-pwd-alert{color:#ef4444;background-color:#ef44441a;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:13px;display:flex}.initial-pwd-form{flex-direction:column;gap:18px;display:flex}.initial-pwd-field{flex-direction:column;gap:6px;display:flex}.initial-pwd-label{color:var(--form-label-color,var(--color-text-primary,#1e293b));font-size:13px;font-weight:600}.initial-pwd-input-wrap{align-items:center;display:flex;position:relative}.initial-pwd-field-icon{color:var(--color-text-muted,#94a3b8);pointer-events:none;position:absolute;left:12px}.initial-pwd-input{width:100%;color:var(--form-input-text,var(--color-text-primary,#0f172a));background-color:var(--form-input-bg,var(--color-bg-base,#fff));border:1px solid var(--form-input-border,var(--color-border,#cbd5e1));box-sizing:border-box;border-radius:8px;padding:10px 40px 10px 36px;font-size:14px;transition:all .15s}.initial-pwd-input:focus{border-color:var(--form-input-border-focus,#2563eb);outline:none;box-shadow:0 0 0 3px #2563eb26}.initial-pwd-eye-btn{color:var(--color-text-muted,#94a3b8);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex;position:absolute;right:10px}.initial-pwd-eye-btn:hover{color:var(--color-text-primary,#0f172a)}.initial-pwd-strength-container{background-color:var(--color-bg-muted,#f8fafc);border:1px solid var(--color-border,#e2e8f0);border-radius:8px;padding:14px 16px}.initial-pwd-strength-header{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;display:flex}.strength-caption{color:var(--color-text-secondary,#64748b);font-weight:500}.strength-label{font-weight:700}.strength-track{background-color:var(--color-border,#e2e8f0);border-radius:9999px;width:100%;height:6px;margin-bottom:12px;overflow:hidden}.strength-bar{border-radius:9999px;height:100%;transition:width .25s,background-color .25s}.strength-checklist{grid-template-columns:1fr;gap:6px;margin:0;padding:0;list-style:none;display:grid}.checklist-item{align-items:center;gap:8px;font-size:12px;transition:color .15s;display:flex}.checklist-item.cumple{color:#10b981}.checklist-item.pendiente{color:var(--color-text-muted,#94a3b8)}.checklist-icon{border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.checklist-item.cumple .checklist-icon{color:#10b981;background-color:#10b98126}.checklist-item.pendiente .checklist-icon{background-color:var(--color-border,#e2e8f0);color:var(--color-text-muted,#94a3b8)}.field-hint-error{color:#ef4444;margin-top:2px;font-size:12px}.field-hint-success{color:#10b981;margin-top:2px;font-size:12px}.initial-pwd-submit-btn{background-color:var(--color-primary,#2563eb);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:6px;padding:12px;font-size:14px;font-weight:600;transition:background-color .15s,opacity .15s;display:flex}.initial-pwd-submit-btn:hover:not(:disabled){background-color:#1d4ed8}.initial-pwd-submit-btn:disabled{opacity:.5;cursor:not-allowed}.chronos-login-page{background-color:var(--color-bg-base);width:100%;min-height:100vh;padding:var(--spacing-4);box-sizing:border-box;background-image:radial-gradient(circle at 20% 20%,#3b82f614 0%,#0000 40%),radial-gradient(circle at 80% 80%,#8b5cf614 0%,#0000 40%);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.chronos-login-theme-toggle{top:var(--spacing-6);right:var(--spacing-6);align-items:center;gap:var(--spacing-2);display:flex;position:absolute}.chronos-login-theme-btn{border-radius:var(--radius-full,9999px);background-color:var(--color-bg-surface);border:1px solid var(--color-border);width:40px;height:40px;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast,.15s ease);justify-content:center;align-items:center;display:flex}.chronos-login-theme-btn:hover{background-color:var(--color-bg-muted);transform:translateY(-1px)}.chronos-login-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl,16px);width:100%;max-width:480px;padding:var(--spacing-8);box-sizing:border-box;gap:var(--spacing-6);z-index:1;flex-direction:column;display:flex;position:relative;box-shadow:0 20px 40px -15px #00000040}.chronos-login-header{text-align:center;align-items:center;gap:var(--spacing-3);flex-direction:column;display:flex}.chronos-login-title-group{gap:var(--spacing-1);flex-direction:column;display:flex}.chronos-login-title{font-size:var(--font-size-2xl,1.5rem);font-weight:var(--font-weight-bold,700);color:var(--color-text-primary);letter-spacing:-.025em;margin:0}.chronos-login-subtitle{font-size:var(--font-size-sm,.875rem);color:var(--color-text-secondary);margin:0}.chronos-login-env-badge{align-items:center;gap:var(--spacing-1);border-radius:var(--radius-full,9999px);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);text-transform:uppercase;letter-spacing:.05em;padding:4px 10px;display:inline-flex}.chronos-login-env-badge.pruebas{color:#f59e0b;background-color:#f59e0b1f;border:1px solid #f59e0b4d}.chronos-login-env-badge.produccion{color:#10b981;background-color:#10b9811f;border:1px solid #10b9814d}.chronos-login-error{align-items:center;gap:var(--spacing-2);color:var(--color-danger,#ef4444);padding:var(--spacing-3);border-radius:var(--radius-md,8px);font-size:var(--font-size-sm,.875rem);background-color:#ef44441a;border:1px solid #ef44444d;display:flex}.chronos-login-form{gap:var(--spacing-4);flex-direction:column;display:flex}.chronos-login-field{gap:var(--spacing-1);flex-direction:column;display:flex}.chronos-login-label{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.chronos-login-input-wrapper{align-items:center;display:flex;position:relative}.chronos-login-input-icon{color:var(--color-text-muted,#94a3b8);pointer-events:none;position:absolute;left:12px}.chronos-login-input{background-color:var(--color-bg-base);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);width:100%;color:var(--color-text-primary);font-size:var(--font-size-sm,.875rem);transition:border-color var(--transition-fast,.15s ease), box-shadow var(--transition-fast,.15s ease);box-sizing:border-box;padding:10px 42px 10px 38px;font-family:inherit}.chronos-login-input:focus{border-color:var(--color-primary,#3b82f6);outline:none;box-shadow:0 0 0 3px #3b82f633}.chronos-login-eye-btn{border-radius:var(--radius-sm,6px);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast,.15s ease), background-color var(--transition-fast,.15s ease);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;right:8px}.chronos-login-eye-btn:hover{color:var(--color-text-primary);background-color:var(--color-bg-muted)}.chronos-login-submit-btn{justify-content:center;align-items:center;gap:var(--spacing-2);width:100%;padding:12px var(--spacing-4);background-color:var(--color-primary,#3b82f6);color:#fff;border-radius:var(--radius-md,8px);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-semibold,600);cursor:pointer;transition:background-color var(--transition-fast,.15s ease), transform var(--transition-fast,.15s ease);margin-top:var(--spacing-2);border:none;display:flex}.chronos-login-submit-btn:hover:not(:disabled){background-color:var(--color-primary-hover,#2563eb);transform:translateY(-1px)}.chronos-login-submit-btn:disabled{opacity:.6;cursor:not-allowed}.chronos-login-demo-section{gap:var(--spacing-3);margin-top:var(--spacing-2);padding-top:var(--spacing-4);border-top:1px dashed var(--color-border);flex-direction:column;display:flex}.chronos-login-demo-header{justify-content:space-between;align-items:center;display:flex}.chronos-login-demo-title{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:var(--spacing-1);margin:0;display:flex}.chronos-login-demo-grid{gap:var(--spacing-2);grid-template-columns:repeat(auto-fill,minmax(130px,1fr));display:grid}.chronos-login-demo-chip{padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-bg-base);border:1px solid var(--color-border);border-radius:var(--radius-md,8px);cursor:pointer;transition:all var(--transition-fast,.15s ease);text-align:left;flex-direction:column;align-items:flex-start;display:flex}.chronos-login-demo-chip:hover{background-color:var(--color-bg-muted);border-color:var(--color-primary);transform:translateY(-1px)}.chronos-login-demo-chip-role{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-primary)}.chronos-login-demo-chip-sub{color:var(--color-text-secondary);font-size:.6875rem}.chronos-login-footer{text-align:center;font-size:var(--font-size-xs,.75rem);color:var(--color-text-muted,#94a3b8);margin-top:var(--spacing-6)}.chronos-login-actions-row{justify-content:flex-end;margin-top:-4px;display:flex}.chronos-forgot-password-link{color:var(--color-primary,#2563eb);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:500;transition:color .15s,-webkit-text-decoration .15s,text-decoration .15s}.chronos-forgot-password-link:hover{color:#1d4ed8;text-decoration:underline}.chronos-recovery-success-box{color:#10b981;text-align:center;background-color:#10b9811a;border:1px solid #10b98140;border-radius:8px;flex-direction:column;align-items:center;gap:12px;padding:16px;font-size:14px;line-height:1.5;display:flex}.chronos-create-pwd-card{background-color:var(--color-bg-surface,#fff);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-xl,16px);width:100%;max-width:520px;padding:var(--spacing-8,32px);box-sizing:border-box;gap:var(--spacing-5,20px);flex-direction:column;animation:.2s cubic-bezier(.16,1,.3,1) modalFadeIn;display:flex;box-shadow:0 25px 50px -12px #00000059}.chronos-password-meter{gap:var(--spacing-1,4px);flex-direction:column;margin-top:4px;display:flex}.chronos-password-meter-track{background-color:var(--color-bg-muted,#e2e8f0);border-radius:var(--radius-full,9999px);width:100%;height:6px;overflow:hidden}.chronos-password-meter-fill{border-radius:var(--radius-full,9999px);height:100%;transition:width .3s,background-color .3s}.chronos-password-meter-info{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#64748b);justify-content:space-between;display:flex}.chronos-password-checklist{background-color:var(--color-bg-elevated,#f8fafc);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-md,8px);flex-direction:column;gap:8px;padding:12px 16px;display:flex}.chronos-checklist-title{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-semibold,600);color:var(--color-text-secondary,#64748b);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.chronos-checklist-item{font-size:var(--font-size-xs,.75rem);color:var(--color-text-secondary,#64748b);align-items:center;gap:8px;transition:color .15s;display:flex}.chronos-checklist-item.cumple{color:var(--color-status-success,#10b981);font-weight:var(--font-weight-medium,500)}.chronos-checklist-item-icon{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.verify-state-box{text-align:center;flex-direction:column;align-items:center;padding:12px 0;display:flex}.verify-spinner{color:var(--color-primary,#2563eb);margin-bottom:16px;animation:1s linear infinite spin}.verify-icon-badge{border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:20px;display:flex}.verify-icon-badge.success{color:#10b981;background-color:#10b98126}.verify-icon-badge.error{color:#ef4444;background-color:#ef444426}.verify-title{color:var(--color-text-primary,#0f172a);margin:0 0 10px;font-size:22px;font-weight:700}.verify-subtitle{color:var(--color-text-secondary,#64748b);max-width:400px;margin:0 0 24px;font-size:14px;line-height:1.5}.temp-password-box{background-color:var(--color-bg-muted,#f8fafc);border:1px solid var(--color-border,#e2e8f0);text-align:left;box-sizing:border-box;border-radius:10px;width:100%;margin-bottom:24px;padding:16px}.temp-pwd-header{color:var(--color-text-secondary,#475569);align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.temp-pwd-body{background-color:var(--color-bg-base,#fff);border:1px dashed var(--color-border,#cbd5e1);border-radius:6px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.temp-pwd-code{letter-spacing:1.5px;color:var(--color-text-primary,#0f172a);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:17px;font-weight:700}.temp-pwd-copy-btn{background-color:var(--color-bg-muted,#f1f5f9);border:1px solid var(--color-border,#e2e8f0);color:var(--color-text-primary,#1e293b);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.temp-pwd-copy-btn:hover{background-color:var(--color-border,#e2e8f0)}.temp-pwd-note{color:var(--color-text-muted,#94a3b8);margin-top:8px;font-size:12px;display:block}.chronos-login-submit-btn.secondary{background-color:var(--color-bg-muted,#f1f5f9);color:var(--color-text-primary,#1e293b);border:1px solid var(--color-border,#cbd5e1)}.chronos-login-submit-btn.secondary:hover{background-color:var(--color-border,#e2e8f0)}.auth-feedback-error{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);background:var(--security-danger-bg);border:1px solid var(--security-danger-border);color:var(--security-danger-text);font-size:var(--font-size-sm);margin-bottom:var(--spacing-3);word-break:break-word;line-height:1.4;display:flex}.auth-error-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}
