@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}.portal-theme{--background:#fff;--foreground:#0a0a0a;--card:#fff;--card-foreground:#0a0a0a;--popover:#fff;--popover-foreground:#0a0a0a;--primary:#171717;--primary-foreground:#fafafa;--secondary:#f5f5f5;--secondary-foreground:#171717;--muted:#f5f5f5;--muted-foreground:#737373;--accent:#f5f5f5;--accent-foreground:#171717;--destructive:#ef4444;--destructive-foreground:#fafafa;--border:#e6e6e6;--input:#e5e5e5;--ring:#0a0a0a;--radius:8px;--chart-1:#e76e50;--chart-2:#2a9d90;--chart-3:#274754;--chart-4:#e8c468;--chart-5:#f4a462;--sidebar:#fafafa;--sidebar-foreground:#3f3f46;--sidebar-primary:#18181b;--sidebar-primary-foreground:#fafafa;--sidebar-accent:#f4f4f5;--sidebar-accent-foreground:#18181b;--sidebar-border:#e5e7eb;--sidebar-ring:#3b82f6;--muted-2:#e6e6e6;--muted-2-foreground:#71717a;--portal-accent:#2463eb;--portal-accent-foreground:#fff;--portal-accent-subtle:#2463eb14;--portal-accent-border:#2463eb40;--status-success:#21c45d;--status-success-bg:#21c45d14;--status-success-border:#21c45d40;--status-warn:#f59f0a;--status-warn-bg:#f59f0a14;--status-warn-border:#f59f0a40;--status-error:#ef4343;--status-error-bg:#ef434314;--status-error-border:#ef434340;--status-submitted-text:#7c6f00;--status-submitted-bg:#fef9c3;--status-review-text:#6d28d9;--status-review-bg:#ede9fe;--status-resubmit-text:#c2410c;--status-resubmit-bg:#fff7ed;color:var(--foreground);background-color:var(--background);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);font-family:Inter,system-ui,sans-serif}.portal-theme.dark,.portal-theme .dark{--status-submitted-text:#facc15;--status-submitted-bg:#dab80b26;--status-review-text:#a78bfa;--status-review-bg:#895af626;--status-resubmit-text:#fb923c;--status-resubmit-bg:#f9701526;--background:#09090b;--foreground:#fafafa;--card:#09090b;--card-foreground:#fafafa;--popover:#09090b;--popover-foreground:#fafafa;--primary:#fafafa;--primary-foreground:#18181b;--secondary:#27272a;--secondary-foreground:#fafafa;--muted:#27272a;--muted-foreground:#a1a1aa;--accent:#27272a;--accent-foreground:#fafafa;--destructive:#7f1d1d;--destructive-foreground:#fafafa;--border:#27272a;--input:#27272a;--ring:#d4d4d8;--sidebar:#18181b;--sidebar-foreground:#f4f4f5;--sidebar-primary:#1d4ed8;--sidebar-primary-foreground:#fff;--sidebar-accent:#27272a;--sidebar-accent-foreground:#f4f4f5;--sidebar-border:#27272a;--sidebar-ring:#3b82f6;--muted-2:#2e2e2e;--muted-2-foreground:#bebec1}.portal-theme{--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-destructive-foreground:var(--destructive-foreground);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-sidebar:var(--sidebar);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-border:var(--sidebar-border);--color-sidebar-ring:var(--sidebar-ring);--radius-sm:calc(var(--radius) - 4px);--radius-md:var(--radius);--radius-lg:calc(var(--radius) + 4px);--radius-xl:calc(var(--radius) + 8px)}.portal-theme .portal-card{background-color:var(--card);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);color:var(--card-foreground)}.portal-theme .portal-kpi-card{background-color:var(--card);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);padding:1.25rem;position:relative;overflow:hidden}.portal-theme .portal-section-label{letter-spacing:.2em;text-transform:uppercase;color:var(--muted-foreground);font-size:.6875rem;font-weight:500}.portal-theme ::-webkit-scrollbar{width:5px;height:5px}.portal-theme ::-webkit-scrollbar-track{background:var(--background)}.portal-theme ::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.portal-theme ::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.portal-theme :focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){.portal-theme *,.portal-theme :before,.portal-theme :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@keyframes portal-fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes portal-row-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@keyframes border-beam{to{offset-distance:100%}}.portal-fade-in{animation:.45s ease-out forwards portal-fade-in}.portal-row-in{animation:.3s ease-out forwards portal-row-in}@keyframes skeleton-shimmer{0%{background-position:-800px 0}to{background-position:800px 0}}.skeleton-shimmer{background:linear-gradient(90deg, var(--card) 25%, var(--card) 50%, var(--card) 75%)}@supports (color:color-mix(in lab, red, red)){.skeleton-shimmer{background:linear-gradient(90deg, var(--card) 25%, color-mix(in srgb, var(--card) 70%, var(--foreground)) 50%, var(--card) 75%)}}.skeleton-shimmer{background-size:1600px 100%;border-radius:.75rem;animation:1.6s ease-in-out infinite skeleton-shimmer}@media (prefers-reduced-motion:reduce){.skeleton-shimmer{animation:none}}.animate-border-beam{animation:border-beam calc(var(--duration,15) * 1s) infinite linear}.portal-theme.dark .gantt-svg .gantt-col-even{fill:#1d1d20}.portal-theme.dark .gantt-svg .gantt-col-odd{fill:#19191a}.gantt-h-scroll-top{overflow:auto hidden;transform:rotateX(180deg)}.gantt-h-scroll-top>*{transform:rotateX(180deg)}.skeleton-row{background:linear-gradient(90deg, var(--card) 25%, var(--card) 50%, var(--card) 75%)}@supports (color:color-mix(in lab, red, red)){.skeleton-row{background:linear-gradient(90deg, var(--card) 25%, color-mix(in srgb, var(--card) 70%, var(--foreground)) 50%, var(--card) 75%)}}.skeleton-row{background-size:1600px 100%;border-radius:4px;animation:1.6s ease-in-out infinite skeleton-shimmer}@media (prefers-reduced-motion:reduce){.skeleton-row{animation:none}}
