.gts-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:6px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.1);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:#ffffff0d;color:var(--secondary-text-color, #8b949e);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);position:relative;overflow:hidden;white-space:nowrap}.gts-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003;border-color:#fff3}.gts-btn:active{transform:translateY(0)}.gts-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.gts-btn:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:.5s}.gts-btn:hover:after{left:100%}.gts-btn-blue{background:linear-gradient(135deg,#1e3a5f,#0f2847)!important;color:#fff!important;border-color:#58a6ff66!important;box-shadow:0 0 12px #58a6ff1a,0 2px 8px #0000004d!important}.gts-btn-blue:hover{border-color:#58a6ff99!important;box-shadow:0 0 16px #58a6ff4d,0 4px 12px #0006!important}.gts-btn-orange,button.gts-btn-orange{background:#f59e0b1a!important;background-image:none!important;color:#f59e0b!important;border:1px solid rgba(245,158,11,.5)!important;box-shadow:0 0 12px #f59e0b1a,0 2px 8px #0003!important}.gts-btn-orange:hover,button.gts-btn-orange:hover{background:#f59e0b!important;background-image:none!important;color:#fff!important;border-color:#f59e0b!important;box-shadow:0 0 16px #f59e0b99,0 4px 12px #0000004d!important}.gts-btn-red,button.gts-btn-red{background:#f43f5e1a!important;background-image:none!important;color:#f43f5e!important;border:1px solid rgba(244,63,94,.5)!important;box-shadow:0 0 12px #f43f5e1a,0 2px 8px #0003!important}.gts-btn-red:hover,button.gts-btn-red:hover{background:#f43f5e!important;background-image:none!important;color:#fff!important;border-color:#f43f5e!important;box-shadow:0 0 16px #f43f5e99,0 4px 12px #0000004d!important}.gts-btn-green,button.gts-btn-green{background:#10b9811a!important;background-image:none!important;color:#34d399!important;border:1px solid rgba(16,185,129,.5)!important;box-shadow:0 0 12px #10b9811a,0 2px 8px #0003!important}.gts-btn-green:hover,button.gts-btn-green:hover{background:#10b981!important;background-image:none!important;color:#fff!important;border-color:#10b981!important;box-shadow:0 0 16px #10b98199,0 4px 12px #0000004d!important}.gts-btn-purple,button.gts-btn-purple{background:#a855f71a!important;background-image:none!important;color:#a855f7!important;border:1px solid rgba(168,85,247,.5)!important;box-shadow:0 0 12px #a855f71a,0 2px 8px #0003!important}.gts-btn-purple:hover,button.gts-btn-purple:hover{background:#a855f7!important;background-image:none!important;color:#fff!important;border-color:#a855f7!important;box-shadow:0 0 16px #a855f799,0 4px 12px #0000004d!important}.gts-btn-compact{padding:4px 10px!important;font-size:.75rem!important;border-radius:12px!important}body.light .gts-btn{background:#00000008!important;border-color:#0000001a!important;color:var(--primary-text-color)!important;box-shadow:0 1px 3px #0000000d}body.light .gts-btn-blue{background:#3b82f61a!important;background-image:none!important;color:#1d4ed8!important;border:1px solid rgba(29,78,216,.5)!important}body.light .gts-btn-orange{background:#f59e0b1a!important;background-image:none!important;color:#b45309!important;border:1px solid rgba(180,83,9,.5)!important}body.light .gts-btn-red{background:#f43f5e1a!important;background-image:none!important;color:#b91c1c!important;border:1px solid rgba(185,28,28,.5)!important}body.light .gts-btn-green{background:#10b9811a!important;background-image:none!important;color:#047857!important;border:1px solid rgba(4,120,87,.5)!important}body.light .gts-btn-purple{background:#a855f71a!important;background-image:none!important;color:#6d28d9!important;border:1px solid rgba(109,40,217,.5)!important}:root{--sidebar-width: 320px;--background-color: #080a0f;--sidebar-bg: #0d1117;--card-bg: #161b22;--border-color: rgba(48, 54, 61, .5);--primary-text-color: #f0f6fc;--secondary-text-color: #8b949e;--accent-color: #58a6ff;--card-shadow: 0 4px 12px rgba(0, 0, 0, .5);--progress-bar-bg: #30363d;--status-safe: #10b981;--status-warning: #d29922;--status-critical: #f85149;--status-overdue: #e85347;--chart-overdue-fill: #a186d8;--kpi-green: #2da44e;--kpi-blue: #0969da;--kpi-purple: #8250df;--kpi-pink: #bf3989;--kpi-amber: #d29922;--kpi-teal: #0d9488;--kpi-cyan: #22b8cf;--stack-counter-color: #facc15;--background-rgb: 8, 10, 15;--card-bg-rgb: 22, 27, 34;--border-rgb: 48, 54, 61;--accent-rgb: 88, 166, 255;--primary-text-rgb: 240, 246, 252;--theme-money: #2dff7c;--theme-wallet: #00d4ff;--theme-projects: #58a6ff;--theme-mp: #ef4444;--theme-contracts: #00e5cc;--theme-biddings: #ff9500;--theme-tecnologia: #22d3ee;--theme-chat: #f472b6;--theme-monitoring: #38bdf8;--theme-dp: #fbbf24;--theme-presidencia: #3b82f6;--theme-fundo: #c084fc;--theme-audit: #94a3b8;--theme-system: #64748b;--theme-agora: #3b82f6;--theme-rh: #3b82f6;--theme-ge: #10b981;--accent-glow-color-15: rgba(88, 166, 255, .15);--accent-glow-color-20: rgba(88, 166, 255, .2);--accent-glow-color-30: rgba(88, 166, 255, .3);--accent-glow-color-60: rgba(88, 166, 255, .6);--accent-glow-color-70: rgba(88, 166, 255, .7);--accent-glow-color-0: rgba(88, 166, 255, 0);--kpi-green-bg: rgba(45, 164, 78, .15);--kpi-blue-bg: rgba(9, 105, 218, .15);--kpi-purple-bg: rgba(130, 80, 223, .15);--kpi-pink-bg: rgba(191, 57, 137, .15);--kpi-red-bg: rgba(248, 81, 73, .15);--kpi-yellow-bg: rgba(210, 153, 34, .15);--kpi-amber-bg: rgba(210, 153, 34, .15);--kpi-teal-bg: rgba(13, 148, 136, .15);--kpi-cyan-bg: rgba(34, 184, 207, .15);--table-row-hover-bg: #202a3a;--chat-export-btn-bg: rgba(22, 27, 34, .5);--mic-pulse-color: rgba(248, 81, 73, .5);--mic-pulse-color-end: rgba(248, 81, 73, 0);--card-shadow-hover: 0 16px 40px rgba(0, 0, 0, .7), 0 0 12px var(--accent-glow-color-15);--sm-bg-primary: #0d1117;--sm-bg-secondary: #161b22;--sm-bg-tertiary: #21262d;--sm-bg-quaternary: #30363d;--sm-bg-overlay: rgba(0, 0, 0, .75);--sm-bg-overlay-light: rgba(0, 0, 0, .6);--sm-bg-hover: rgba(88, 166, 255, .08);--sm-bg-hover-strong: rgba(88, 166, 255, .12);--sm-bg-input: rgba(13, 17, 23, .5);--sm-bg-input-solid: #0d1117;--sm-text-primary: #e6edf3;--sm-text-secondary: #c9d1d9;--sm-text-muted: #8b949e;--sm-text-faint: #484f58;--sm-text-white: #f0f6fc;--sm-border-default: #30363d;--sm-border-subtle: rgba(139, 148, 158, .2);--sm-border-accent: rgba(88, 166, 255, .2);--sm-accent: #58a6ff;--sm-accent-subtle-bg: rgba(88, 166, 255, .1);--sm-accent-subtle-bg-strong: rgba(88, 166, 255, .15);--sm-accent-subtle-bg-stronger: rgba(88, 166, 255, .2);--sm-shadow: 0 25px 50px -12px rgba(0, 0, 0, .5);--sm-shadow-lg: 0 30px 60px rgba(0, 0, 0, .7);--sm-gradient-header: linear-gradient(135deg, rgba(88, 166, 255, .06) 0%, rgba(13, 17, 23, 0) 100%);--legend-bg: rgba(0, 0, 0, .2);--legend-border: var(--border-color);--subtle-overlay: rgba(0, 0, 0, .05);--badge-bg: rgba(255, 255, 255, .08);--badge-text: #c9d1d9;--card-bg-hover: #1c2333;--log-panel-bg: #0d1117;--btn-secondary-bg: rgba(88, 166, 255, .12);--btn-secondary-text: var(--accent-color);--btn-secondary-border: rgba(88, 166, 255, .25);--btn-accent-text: #ffffff;--bg-primary: #080a0f;--bg-secondary: #161b22;--bg-tertiary: #0d1117;--text-primary: #f0f6fc;--text-secondary: #8b949e;--text-muted: #484f58;--info: #58a6ff;--success: #10b981;--warning: #d29922;--danger: #f85149;--window-radius: 24px;--layer-overlay: 99990;--layer-modal: 100000;--layer-xray: 100001;--layer-tooltip: 100002;--layer-system-modal: 100005;--layer-xray-highlight: 2147483647;--bezier-spring: cubic-bezier(.4, 0, .2, 1);--bezier-spring-fast: cubic-bezier(.16, 1, .3, 1);--transition-spring: .4s var(--bezier-spring);--transition-spring-fast: .3s var(--bezier-spring-fast);--bg-primary-rgb: 15, 23, 42;--bg-secondary-rgb: 30, 41, 59;--bg-tertiary-rgb: 51, 65, 85;--text-primary-rgb: 248, 250, 252;--text-secondary-rgb: 148, 163, 184;--accent-color-rgb: 59, 130, 246;--border-color-rgb: 255, 255, 255;--info-rgb: 59, 130, 246;--brand-primary-rgb: 59, 130, 246;--danger-rgb: 239, 68, 68;--success-rgb: 16, 185, 129;--warning-rgb: 245, 158, 11}body.light{--background-color: #f6f8fa;--sidebar-bg: #ffffff;--card-bg: #ffffff;--border-color: #d0d7de;--primary-text-color: #1f2328;--secondary-text-color: #656d76;--accent-color: #0969da;--stack-counter-color: #1e3a8a;--card-shadow: 0 3px 6px rgba(140, 149, 159, .15), 0 1px 2px rgba(140, 149, .1);--card-shadow-hover: 0 16px 40px rgba(100, 108, 116, .3), 0 10px 15px rgba(100, 108, 116, .2);--progress-bar-bg: #d8dee4;--chart-overdue-fill: #8e44ad;--accent-glow-color-15: rgba(9, 105, 218, .15);--accent-glow-color-20: rgba(9, 105, 218, .2);--accent-glow-color-30: rgba(9, 105, 218, .3);--accent-glow-color-60: rgba(9, 105, 218, .6);--accent-glow-color-70: rgba(9, 105, 218, .7);--accent-glow-color-0: rgba(9, 105, 218, 0);--background-rgb: 246, 248, 250;--card-bg-rgb: 255, 255, 255;--border-rgb: 208, 215, 222;--accent-rgb: 9, 105, 218;--primary-text-rgb: 31, 35, 40;--table-row-hover-bg: #f0f6fc;--chat-export-btn-bg: rgba(255, 255, 255, .5);--ai-btn-hover-bg: #EBF2FB;--sm-bg-primary: #ffffff;--sm-bg-secondary: #f6f8fa;--sm-bg-tertiary: #eaeef2;--sm-bg-quaternary: #d0d7de;--sm-bg-overlay: rgba(0, 0, 0, .45);--sm-bg-overlay-light: rgba(0, 0, 0, .35);--sm-bg-hover: rgba(9, 105, 218, .06);--sm-bg-hover-strong: rgba(9, 105, 218, .1);--sm-bg-input: rgba(255, 255, 255, .8);--sm-bg-input-solid: #ffffff;--sm-text-primary: #1f2328;--sm-text-secondary: #424a53;--sm-text-muted: #656d76;--sm-text-faint: #8c959f;--sm-text-white: #1f2328;--sm-border-default: #d0d7de;--sm-border-subtle: rgba(31, 35, 40, .15);--sm-border-accent: rgba(9, 105, 218, .25);--sm-accent: #0969da;--sm-accent-subtle-bg: rgba(9, 105, 218, .08);--sm-accent-subtle-bg-strong: rgba(9, 105, 218, .12);--sm-accent-subtle-bg-stronger: rgba(9, 105, 218, .18);--sm-shadow: 0 12px 28px rgba(140, 149, 159, .3);--sm-shadow-lg: 0 20px 40px rgba(140, 149, 159, .35);--sm-gradient-header: linear-gradient(135deg, rgba(9, 105, 218, .04) 0%, rgba(246, 248, 250, 0) 100%);--legend-bg: rgba(0, 0, 0, .04);--legend-border: #d0d7de;--subtle-overlay: rgba(0, 0, 0, .03);--badge-bg: #eaeef2;--badge-text: #424a53;--card-bg-hover: #f0f3f6;--log-panel-bg: #f6f8fa;--btn-secondary-bg: rgba(9, 105, 218, .1);--btn-secondary-text: #0969da;--btn-secondary-border: rgba(9, 105, 218, .3);--btn-accent-text: #1f2328;--bg-primary: #f6f8fa;--bg-secondary: #ffffff;--bg-tertiary: #f6f8fa;--text-primary: #1f2328;--text-secondary: #656d76;--text-muted: #8c959f;--info: #0969da;--success: #1a7f37;--warning: #9a6700;--danger: #cf222e;--bg-primary-rgb: 255, 255, 255;--bg-secondary-rgb: 248, 250, 252;--bg-tertiary-rgb: 241, 245, 249;--text-primary-rgb: 15, 23, 42;--text-secondary-rgb: 71, 85, 105;--border-color-rgb: 0, 0, 0;--info-rgb: 37, 99, 235;--brand-primary-rgb: 37, 99, 235;--danger-rgb: 220, 38, 38;--success-rgb: 5, 150, 105;--warning-rgb: 217, 119, 6}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes deal-in{0%{opacity:0;transform:translateY(60px) rotate(8deg) scale(.95)}to{opacity:1;transform:none}}@keyframes shimmer{0%{transform:translate(-150%) skew(-25deg)}to{transform:translate(150%) skew(-25deg)}}@keyframes card-spread{0%{opacity:0;transform:scale(.85) translateY(30px) rotate(-8deg)}to{opacity:1;transform:none}}@keyframes collect-in{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.85) translateY(30px) rotate(-8deg)}}@keyframes fadeInTag{to{opacity:1;transform:none}}@keyframes fadeInText{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes progress-color-sweep{0%{background-color:var(--status-safe)}50%{background-color:var(--status-warning)}to{background-color:var(--status-critical)}}@keyframes slide-in-top{0%,90%,to{opacity:0;transform:translateY(-40px) scale(.8) rotate(-30deg)}8%,85%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes slide-in-right{0%,1%,91%,to{opacity:0;transform:translate(40px) scale(.8) rotate(-30deg)}9%,86%{opacity:1;transform:translate(0) scale(1) rotate(0)}}@keyframes slide-in-bottom{0%,2%,92%,to{opacity:0;transform:translateY(40px) scale(.8) rotate(-30deg)}10%,87%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@keyframes slide-in-left{0%,3%,93%,to{opacity:0;transform:translate(-40px) scale(.8) rotate(-30deg)}11%,88%{opacity:1;transform:translate(0) scale(1) rotate(0)}}.animate-in{animation:fadeInUp .8s cubic-bezier(.23,1,.32,1) forwards;opacity:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:rgba(var(--primary-text-rgb, 128, 128, 128),.2);border-radius:20px;border:2px solid transparent;background-clip:content-box;transition:background-color .2s ease}::-webkit-scrollbar-thumb:hover{background-color:rgba(var(--primary-text-rgb, 128, 128, 128),.4)}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}body{font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--background-color);color:var(--primary-text-color);line-height:1.5;transition:background-color .4s ease,color .4s ease}#root{display:flex;min-height:100vh;position:relative;z-index:1;isolation:isolate}.app-container,.app-layout{display:flex;flex-direction:row;width:100%;height:100vh;overflow:hidden}.page-content{flex-grow:1;display:flex;flex-direction:column;min-height:min-content;padding:2rem}.collapsed-title-bar{background-color:var(--sidebar-bg);color:var(--primary-text-color);padding:0 1rem;overflow:hidden;max-height:0;opacity:0;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1);border-bottom:1px solid transparent;display:flex;align-items:center;justify-content:center}.collapsed-title-bar.visible{max-height:60px;opacity:1;padding:1rem;border-bottom-color:var(--border-color)}.collapsed-title-complex{display:flex;flex-direction:column;align-items:center;line-height:1.3;overflow:hidden}.collapsed-title-complex .acronym{font-size:1rem;font-weight:700;color:var(--accent-color);letter-spacing:.1em;flex-shrink:0}.collapsed-title-complex .full-text{font-size:.75rem;font-weight:400;color:var(--secondary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.dashboard-layout{display:flex;width:100%;height:100%;flex-grow:1;overflow:hidden}.main-wrapper{flex:1;min-width:0;width:100%;display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.main-content{flex:1;min-width:0;width:100%;padding:0;position:relative;display:flex;flex-direction:column;overflow:hidden}body.search-active .main-wrapper{z-index:20000}body.xray-active .scrollable-content{filter:blur(6px) brightness(.4);transition:filter .4s ease}.scrollable-content{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;min-height:0}.main-content::-webkit-scrollbar,.scrollable-content::-webkit-scrollbar{width:6px}.main-content::-webkit-scrollbar-track,.scrollable-content::-webkit-scrollbar-track{background:transparent}.main-content::-webkit-scrollbar-thumb,.scrollable-content::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.main-content::-webkit-scrollbar-thumb:hover,.scrollable-content::-webkit-scrollbar-thumb:hover{background:#0003}.sidebar.collapsed .sidebar-resize-handle{display:none}.connection-instability-banner{background:linear-gradient(135deg,#f59e0bf2,#d97706f2);color:#0f172a;padding:.6rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:.6rem;font-size:.875rem;font-weight:600;z-index:9999;box-shadow:0 2px 10px #0003;border-bottom:1px solid rgba(255,255,255,.1);box-sizing:border-box;width:100%}.connection-instability-icon{display:flex;align-items:center;justify-content:center;color:#0f172a}.connection-instability-text{margin:0}.header-secondary-controls{display:flex;align-items:center;gap:.75rem;flex-grow:1;min-width:0}.sidebar-toggle-button{padding:0}.sidebar-toggle-button .desktop-icon,.sidebar-toggle-button .mobile-icon{display:flex;align-items:center;justify-content:center}.sidebar-toggle-button:hover{background:linear-gradient(135deg,#142337f2,#0f1928);border-color:var(--accent-color);box-shadow:0 0 15px #58a6ff4d}.sidebar-toggle-button .desktop-icon{transition:transform .4s cubic-bezier(.4,0,.2,1)}.sidebar-toggle-button.collapsed .desktop-icon{transform:rotate(180deg)}.sidebar-toggle-button .mobile-icon{display:none}.ai-chat-button{position:relative;border:1px solid rgba(88,166,255,.4);color:#fff;cursor:pointer;display:flex;align-items:center;gap:.75rem;font-size:.85rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:.6rem 1.25rem;border-radius:30px;background:linear-gradient(135deg,#58a6ff26,#58a6ff0d);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:box-shadow .3s ease,border-color .3s ease,background .3s ease,color .3s ease,width .3s ease;overflow:hidden;white-space:nowrap;box-shadow:0 0 15px #58a6ff1a}.ai-chat-button svg{width:24px;height:24px;color:var(--accent-color);transition:color .3s ease}.ai-chat-button:hover{color:#fff;border-color:var(--accent-color);box-shadow:0 0 25px color-mix(in srgb,var(--accent-color) 70%,transparent),0 4px 15px #0000004d}.ai-chat-button:disabled,.ai-chat-button:disabled:hover{cursor:not-allowed;opacity:.6;background:var(--card-bg);color:var(--secondary-text-color);border-color:var(--border-color);box-shadow:none}.ai-chat-button:disabled svg,.ai-chat-button:disabled .ai-button-long-text,.ai-chat-button:disabled .ai-button-short-text,.ai-chat-button:disabled .chevron-icon{color:var(--secondary-text-color)!important;transform:none!important}.ai-button-long-text,.ai-button-short-text{font-size:.9rem;font-weight:500;transition:color .3s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-button-short-text{display:none}.ai-chat-button:hover .ai-button-long-text,.ai-chat-button:hover .ai-button-short-text{color:var(--primary-text-color)}.ai-chat-button .chevron-icon{width:24px;height:24px;color:var(--secondary-text-color);transition:transform .3s ease-in-out,color .3s ease}.ai-chat-button:hover .chevron-icon{color:var(--primary-text-color)}.ai-chat-button .chevron-icon.open{transform:rotate(180deg)}body.light .ai-chat-button{background:var(--card-bg);color:var(--primary-text-color);border-color:#9ea7b3}body.light .ai-chat-button:hover{color:var(--accent-color);border-color:var(--accent-color);background:var(--ai-btn-hover-bg);box-shadow:var(--card-shadow-hover)}body.light .ai-chat-button:hover .ai-button-long-text,body.light .ai-chat-button:hover .ai-button-short-text,body.light .ai-chat-button:hover .chevron-icon{color:var(--accent-color)}body.light .ai-chat-button:disabled,body.light .ai-chat-button:disabled:hover{border-color:#9ea7b3}.ai-button-with-tooltip-wrapper{display:flex;align-items:center;gap:.5rem;width:100%;margin-top:.75rem;position:relative}.ai-button-with-tooltip-wrapper .ai-chat-button{flex:1;margin-top:0;min-width:0;justify-content:flex-start;border-radius:12px;padding:1rem;background:var(--card-bg);border:1px solid var(--border-color);box-shadow:0 4px 6px #00000026,inset 0 1px #ffffff0a;color:var(--secondary-text-color);font-size:.7rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase;gap:1rem;overflow:visible}.ai-button-with-tooltip-wrapper .ai-chat-button:before{display:none}.ai-button-with-tooltip-wrapper .ai-chat-button:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000040;border-color:#ffffff1f;background:var(--card-bg);color:var(--primary-text-color)}.ai-icon-box{width:48px;height:48px;flex-shrink:0;border-radius:10px;display:grid;place-items:center;transition:all .3s cubic-bezier(.4,0,.2,1);color:#818cf8;border:1px solid transparent}.ai-icon-box svg{width:28px;height:28px;filter:drop-shadow(0 0 6px currentColor)}.ai-button-with-tooltip-wrapper .ai-chat-button:hover .ai-icon-box{box-shadow:0 0 20px #818cf873}.ai-button-tooltip-container{position:relative;display:flex;align-items:center;flex-shrink:0}.ai-button-tooltip-container .help-icon{width:24px;height:24px;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:50%;display:grid;place-items:center;cursor:help;transition:all .2s ease}.ai-button-tooltip-container .help-icon svg{width:16px;height:16px;color:var(--secondary-text-color);transition:color .2s ease}.ai-button-tooltip-container:hover .help-icon,.ai-button-tooltip-container .help-icon:focus{border-color:var(--accent-color);background-color:var(--accent-glow-color-20);transform:scale(1.1);box-shadow:0 0 8px var(--accent-glow-color-30);outline:none}.ai-button-tooltip-container:hover .help-icon svg,.ai-button-tooltip-container .help-icon:focus svg{color:var(--accent-color)}.ai-button-help-tooltip{visibility:hidden;opacity:0;width:280px;background-color:var(--background-color);color:var(--primary-text-color);text-align:left;border-radius:8px;padding:1rem;position:absolute;bottom:calc(100% + 12px);right:0;transform:translateY(10px);transition:opacity .3s,visibility .3s,transform .3s ease-out;border:1px solid var(--accent-color);box-shadow:0 8px 20px #0006;z-index:600;font-size:.9rem;line-height:1.5;pointer-events:none}.ai-button-tooltip-container:hover .ai-button-help-tooltip,.ai-button-tooltip-container .help-icon:focus+.ai-button-help-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.ai-button-help-tooltip:after{content:"";position:absolute;top:100%;right:8px;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--accent-color) transparent transparent transparent}.header-actions{display:flex;align-items:center;gap:.75rem}.auto-refresh-timer{font-size:.8rem;color:var(--secondary-text-color);white-space:nowrap;font-variant-numeric:tabular-nums;padding:0 .5rem}.action-button{background:#ffffff08;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.08);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#ffffffb3;transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0}.action-button:hover{background:#58a6ff26;border-color:#58a6ff66;color:#fff;box-shadow:0 0 20px #58a6ff40;transform:translateY(-2px)}.action-button:active{transform:translateY(0) scale(.95)}.action-button svg{width:22px;height:22px;filter:drop-shadow(0 0 2px rgba(88,166,255,.25));pointer-events:none}.lang-button{width:auto;padding:0 1rem;border-radius:20px;gap:.5rem}.user-dropdown-container{position:relative;border-left:1px solid var(--border-color);padding-left:.75rem}.user-avatar-btn{position:relative;width:38px;height:38px;border-radius:50%;border:2px solid var(--sm-border-accent);background:linear-gradient(135deg,var(--sm-bg-secondary) 0%,var(--sm-bg-primary) 100%);cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:visible;transition:all .3s ease;padding:0}.user-avatar-btn:hover{border-color:var(--sm-accent);box-shadow:0 0 12px var(--sm-accent-subtle-bg-stronger);transform:scale(1.05)}.user-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.user-avatar-initials{font-size:.85rem;font-weight:800;color:var(--sm-accent);letter-spacing:.02em;-webkit-user-select:none;user-select:none}.user-avatar-status-dot{position:absolute;bottom:1px;right:1px;width:9px;height:9px;border-radius:50%;background-color:#3fb950;border:2px solid var(--sm-bg-primary);box-shadow:0 0 6px #3fb95080}.user-dropdown-modern{position:absolute;top:calc(100% + 10px);right:0;width:300px;background:var(--sm-bg-secondary);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--sm-border-default);border-radius:16px;box-shadow:var(--sm-shadow-lg);z-index:99999;overflow:hidden;animation:udm-slide-in .25s cubic-bezier(.16,1,.3,1)}@keyframes udm-slide-in{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.udm-header{display:flex;align-items:center;gap:14px;padding:20px 18px 16px;background:var(--sm-gradient-header)}.udm-avatar-wrap{width:50px;height:50px;min-width:50px;border-radius:50%;background:linear-gradient(135deg,var(--sm-accent),#1f6feb);padding:2.5px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px var(--sm-accent-subtle-bg-stronger);position:relative}.udm-unread-badge{position:absolute;top:-4px;right:-6px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center;line-height:1;box-shadow:0 0 0 2px var(--sm-bg-secondary);z-index:10}.udm-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:2px solid var(--sm-bg-primary)}.udm-avatar-initials{width:100%;height:100%;border-radius:50%;background:var(--sm-bg-secondary);border:2px solid var(--sm-bg-primary);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;color:var(--sm-accent);letter-spacing:.03em;-webkit-user-select:none;user-select:none}.udm-info{display:flex;flex-direction:column;gap:2px;min-width:0}.udm-name{font-size:.95rem;font-weight:700;color:var(--sm-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em}.udm-email{font-size:.78rem;color:var(--sm-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.udm-badge{display:inline-flex;align-items:center;width:fit-content;margin-top:4px;padding:2px 10px;border-radius:9999px;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.udm-badge-superadmin{background:#ef44441f;color:#f87171;border:1px solid rgba(239,68,68,.25)}.udm-badge-admin{background:#f59e0b1f;color:#fbbf24;border:1px solid rgba(245,158,11,.25)}.udm-badge-editor{background:#58a6ff1f;color:#60a5fa;border:1px solid rgba(88,166,255,.25)}.udm-badge-viewer,.udm-badge-leitor{background:#3fb9501f;color:#3fb950;border:1px solid rgba(63,185,80,.25)}.udm-divider{height:1px;background:linear-gradient(90deg,transparent,var(--sm-border-default),transparent);margin:0 14px}.udm-list{list-style:none;padding:6px 0;margin:0}.udm-item{display:flex;align-items:center;gap:12px;padding:10px 18px;font-size:.875rem;font-weight:500;color:var(--sm-text-secondary);cursor:pointer;transition:all .2s ease;border-radius:0}.udm-item:hover{background:var(--sm-bg-hover);color:var(--sm-text-primary)}.udm-item svg{width:18px;height:18px;opacity:.7;transition:opacity .2s ease;flex-shrink:0}.udm-item:hover svg{opacity:1}.udm-item-logout{color:#f85149}.udm-item-logout:hover{background:#f851491a;color:#f87171}.udm-item-logout svg{opacity:.8}.user-dropdown-menu,.user-dropdown-header,.user-dropdown-email,.user-dropdown-permission,.user-dropdown-list,.user-dropdown-item,.user-dropdown-item-logout{display:none}@keyframes dropdown-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.search-container{position:relative;display:flex;align-items:center;flex-grow:1;min-width:0;max-width:800px;width:100%}.search-icon-button{position:absolute;left:0;top:0;bottom:0;width:44px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--secondary-text-color);cursor:pointer;z-index:2;padding:0;transition:color .2s ease}.search-icon-button svg{width:18px;height:18px;pointer-events:none}.search-input{width:100%;height:42px;padding:0 2.25rem 0 2.75rem;font-size:.9rem;font-weight:400;border-radius:12px;border:1px solid rgba(48,54,61,.6);background:#161b22b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--primary-text-color);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000001a;letter-spacing:.01em}.search-input::placeholder{color:var(--secondary-text-color);opacity:.6;font-weight:400}.search-input:focus{outline:none;background:#161b22f2;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow-color-20),0 0 20px var(--accent-glow-color-15);color:#f0f6fc;font-weight:500}.search-input:focus+.search-icon-button,.search-container:focus-within .search-icon-button{color:var(--accent-color)}.search-clear-button{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#6e768133;border:none;border-radius:50%;color:var(--secondary-text-color);cursor:pointer;padding:0;z-index:2;transition:all .2s ease}.search-clear-button:hover{background:#f8514926;color:#f85149}.search-clear-button svg{width:14px;height:14px;pointer-events:none}.search-results-overlay{position:absolute;top:calc(100% + 8px);left:0;z-index:99999;min-width:380px;max-width:600px;width:max(100%,380px);max-height:70vh;overflow-y:auto;background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 20px 60px #0006,0 0 40px #0003,inset 0 1px #ffffff0a;padding:8px;animation:search-dropdown-in .2s cubic-bezier(.16,1,.3,1)}@keyframes search-dropdown-in{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.search-results-overlay::-webkit-scrollbar{width:6px}.search-results-overlay::-webkit-scrollbar-track{background:transparent}.search-results-overlay::-webkit-scrollbar-thumb{background:#6e76814d;border-radius:3px}.search-results-container{display:flex;flex-direction:column;gap:4px}.search-category{padding:4px 0}.search-category+.search-category{border-top:1px solid rgba(48,54,61,.5);padding-top:8px;margin-top:4px}.search-category h4{display:flex;align-items:center;gap:8px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--secondary-text-color);padding:6px 12px;margin:0}.search-items{display:flex;flex-direction:column;gap:2px}.search-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:all .15s ease}.search-item:hover{background:#58a6ff14}.search-item:active{transform:scale(.99);background:#58a6ff1f}.search-item-icon{width:36px;height:36px;min-width:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-item-icon svg{width:18px;height:18px}.search-item-icon.projects{background:#58a6ff1f;color:#58a6ff;border:1px solid rgba(88,166,255,.2)}.search-item:hover .search-item-icon.projects{background:#58a6ff33;box-shadow:0 0 12px #58a6ff26}.search-item-icon.contracts{background:#3fb9501f;color:#3fb950;border:1px solid rgba(63,185,80,.2)}.search-item:hover .search-item-icon.contracts{background:#3fb95033;box-shadow:0 0 12px #3fb95026}.search-item-icon.biddings{background:#d299221f;color:#d29922;border:1px solid rgba(210,153,34,.2)}.search-item:hover .search-item-icon.biddings{background:#d2992233;box-shadow:0 0 12px #d2992226}.search-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.search-item-title{font-size:.85rem;font-weight:600;color:var(--primary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.search-item:hover .search-item-title{color:#f0f6fc}.search-item-meta{font-size:.75rem;color:var(--secondary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.search-no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 16px;text-align:center}.search-no-results p{font-size:.85rem;color:var(--secondary-text-color);margin:0}body.light .search-results-overlay{background:#fff;border-color:#d0d7de;box-shadow:0 12px 40px #0000001f}body.light .search-item:hover{background:#2563eb0f}body.light .search-category h4{color:#656d76}body.light .search-category+.search-category{border-color:#d8dee4}.sort-container{display:flex;align-items:center;gap:.5rem}.sort-container label{font-size:.9rem;color:var(--secondary-text-color);white-space:nowrap}.sort-select{height:40px;padding:0 2.5rem 0 1rem;font-size:.9rem;border-radius:20px;border:1px solid var(--border-color);background-color:var(--card-bg);color:var(--primary-text-color);transition:all .2s ease;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em}.sort-select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow-color-20)}body.light .search-input,body.light .internal-system-button,body.light .sort-select{border-color:#9ea7b3}body.light .action-button{background:linear-gradient(135deg,#dcebffd9,#ebf5fff2);border-color:#2563eb33;color:#2563ebb3;box-shadow:0 0 8px #2563eb0f,0 2px 4px #0000000f}body.light .action-button:hover{background:linear-gradient(135deg,#c8e1fff2,#d7ebff);border-color:#2563eb80;color:#2563eb;box-shadow:0 0 18px #2563eb2e,0 4px 10px #00000014}body.light .action-button svg{filter:drop-shadow(0 0 2px rgba(37,99,235,.2))}.chart-container{background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;padding:1.25rem;border:1px solid var(--border-color, rgba(255, 255, 255, .08));box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .4s ease,background-color .4s ease;position:relative;overflow:hidden}.chart-container:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,transparent,rgba(255,255,255,.1),transparent);transform:skew(-25deg);transition:left .6s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:1}.chart-container:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:#fff3}.chart-container:hover:before{left:200%}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.chart-header h3{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:0}.help-tooltip-container{position:relative;display:flex;align-items:center}.help-icon{width:24px;height:24px;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:50%;display:grid;place-items:center;cursor:help;transition:all .2s ease}.help-icon svg{width:16px;height:16px;color:var(--secondary-text-color);transition:color .2s ease}.help-tooltip-container:hover .help-icon{border-color:var(--accent-color, #3b82f6);background-color:var(--accent-glow-color-20);transform:scale(1.1);box-shadow:0 0 8px var(--accent-glow-color-30)}.help-tooltip-container:hover .help-icon svg{color:var(--accent-color, #3b82f6)}.help-tooltip{visibility:hidden;opacity:0;width:280px;background-color:var(--background-color);color:var(--primary-text-color);text-align:left;border-radius:8px;padding:1rem;position:absolute;z-index:200;top:calc(100% + 12px);left:50%;transform:translate(-50%) translateY(-10px);transition:opacity .3s,visibility .3s,transform .3s ease-out;border:1px solid var(--accent-color, #3b82f6);box-shadow:0 8px 20px #0006}.help-tooltip-container:hover .help-tooltip{visibility:visible;opacity:1;transform:translate(-50%) translateY(0)}.help-tooltip h4{font-size:1rem;font-weight:600;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color);color:var(--accent-color, #3b82f6)}.help-tooltip ul{list-style:none;padding:0;margin:0}.help-tooltip li{font-size:.9rem;color:var(--secondary-text-color);margin-bottom:.5rem;line-height:1.5}.help-tooltip li:last-child{margin-bottom:0}.help-tooltip li strong{font-weight:700;color:var(--primary-text-color)}.help-tooltip:after{content:"";position:absolute;bottom:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:transparent transparent var(--accent-color, #3b82f6) transparent}.group-hover-tooltip{visibility:hidden;opacity:0;position:absolute;top:1rem;right:3.5rem;z-index:30;width:280px;background-color:var(--background-color);color:var(--primary-text-color);text-align:left;border-radius:8px;padding:1rem;transform:translateY(-10px);transition:opacity .3s,visibility .3s,transform .3s ease-out;border:1px solid var(--border-color);box-shadow:0 8px 20px #0006;pointer-events:none}.project-group.collapsed:hover .group-hover-tooltip,.contract-group.collapsed:hover .group-hover-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.group-hover-tooltip-title{font-size:1rem;font-weight:600;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color);color:var(--accent-color, #3b82f6)}.group-hover-tooltip-text{font-size:.9rem;color:var(--secondary-text-color);line-height:1.5}.kpi-card-tooltip-container{position:absolute;top:.75rem;right:.75rem;z-index:200}.kpi-card-tooltip-container .help-tooltip{top:calc(100% + 12px);bottom:auto;right:-5px;left:auto;transform:translateY(-10px);width:300px;z-index:500}.kpi-card-tooltip-container:hover .help-tooltip{transform:translateY(0)}.kpi-card-tooltip-container .help-tooltip:after{left:auto;right:13px;margin-left:0}.kpi-card:has(.kpi-card-tooltip-container:hover){z-index:400!important}.contracts-page-container .project-card,.contracts-page-container .bidding-card{z-index:auto}.contracts-page-container .project-group.collapsed .project-card:hover{z-index:50!important}.project-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;align-items:stretch}.project-card{background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color, rgba(255, 255, 255, .08));padding:1rem;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .4s ease,background-color .4s ease;min-height:450px;height:max-content;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff08,#fff0);transform:skew(-20deg);transition:left .7s ease;pointer-events:none;z-index:1}.project-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:var(--border-hover-color, rgba(255, 255, 255, .15))}.project-card:hover:before{left:200%}.project-card.animate-in{animation-name:deal-in;animation-duration:.9s;animation-timing-function:cubic-bezier(.23,1,.32,1);animation-fill-mode:forwards}.project-card-header{display:block;position:relative;padding-bottom:.75rem;border-bottom:1px solid var(--border-color);width:100%;height:76px}.program-tag{display:inline-block;padding:3px 10px;font-size:.7rem;font-weight:700;color:#fff;background-color:var(--accent-color);border-radius:12px;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px;opacity:0;transform:translateY(-10px);animation:fadeInTag .4s .3s ease forwards}.project-card-header h3{font-size:.95rem;font-weight:600;color:var(--primary-text-color);line-height:1.3}.project-title-area{display:block;min-width:0;width:100%}.project-card-header-right{display:flex;float:right;align-items:flex-start;justify-content:flex-end;gap:.5rem;transition:transform .2s ease-out,padding .2s ease-out,margin .2s ease-out;position:relative;z-index:10}.project-modality{font-size:.7rem;font-weight:600;letter-spacing:.3px;color:var(--secondary-text-color);background-color:var(--background-color);padding:4px 10px;border-radius:12px;border:1px solid var(--border-color);white-space:nowrap}.impediment-warning{color:var(--status-warning);display:inline-flex;align-items:center;cursor:pointer;transition:transform .2s ease;flex-shrink:0;vertical-align:middle;margin-top:-3px}.impediment-warning:hover{transform:scale(1.1)}.impediment-warning svg{width:20px;height:20px}.observation-info{color:var(--secondary-text-color);display:inline-flex;align-items:center;cursor:pointer;transition:transform .2s ease,color .2s ease;flex-shrink:0;vertical-align:middle;margin-top:-3px}.observation-info:hover{transform:scale(1.1);color:var(--accent-color)}.observation-info svg{width:20px;height:20px}.project-title-inline{display:inline;margin-right:6px}.project-card-header .title-and-icons{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}.project-card-header>.project-card-header-right{flex-direction:column;align-items:flex-end;gap:4px}.project-group.expanded .project-card .project-card-header{height:auto;min-height:84px}.project-card-body{display:flex;align-items:center;gap:1.5rem;padding:.5rem 0 .75rem;flex-grow:1}.progress-circular{position:relative;width:100px;height:100px;min-height:100px;min-width:100px;margin-top:-.25rem;margin-bottom:.25rem;display:grid;place-items:center;flex-shrink:0;transition:transform .3s ease}.project-card:hover .progress-circular{transform:scale(1.05)}.progress-circular-svg{position:absolute;top:0;left:0;width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.progress-track{fill:#3b82f614;stroke:var(--progress-bar-bg)}.progress-fill{fill:transparent;stroke:var(--accent-color);stroke-linecap:round;transition:stroke-dashoffset 2.5s cubic-bezier(.25,.46,.45,.94),stroke .3s ease}.progress-value{position:relative;font-size:1.35rem;font-weight:700;color:#fff;font-variant-numeric:tabular-nums}.project-stats-grid{flex-grow:1;display:flex;flex-direction:column;gap:1rem;min-width:0}.stat-item{display:flex;align-items:center;gap:.75rem;min-width:0}.stat-icon-wrapper{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:grid;place-items:center}.stat-icon-wrapper.deadline-icon{background-color:var(--kpi-blue-bg);color:var(--kpi-blue)}.stat-icon-wrapper.budget-icon{background-color:var(--kpi-green-bg);color:var(--kpi-green)}.stat-icon-wrapper svg{width:18px;height:18px}.stat-info{display:flex;flex-direction:column;min-width:0}.stat-main-value{font-size:1rem;font-weight:600;color:var(--primary-text-color);line-height:1.3}.stat-sub-value{font-size:.8rem;color:var(--secondary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.budget-status-safe{color:var(--status-safe)}.budget-status-warning{color:var(--status-warning)}.budget-status-critical{color:var(--status-critical)}.countdown-safe{color:var(--status-safe)}.countdown-warning{color:var(--status-warning)}.countdown-critical{color:var(--status-critical)}.countdown-overdue{color:var(--status-overdue)}.countdown-unknown{color:var(--secondary-text-color)}.project-card-footer{display:flex;flex-direction:column;gap:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color);margin-top:auto}.footer-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.8rem;color:var(--secondary-text-color)}.footer-item.manager-item{display:flex;justify-content:space-between;align-items:center}.manager-item .manager-info{display:flex;align-items:flex-start;gap:.5rem}.footer-item svg{width:18px;height:18px;flex-shrink:0;margin-top:2px}.footer-item strong{font-weight:600;color:var(--primary-text-color)}.contact-icons{display:flex;align-items:center;gap:.5rem}.contact-phone-number{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);background-color:var(--background-color);padding:4px 8px;border-radius:12px;border:1px solid var(--border-color);white-space:nowrap}.contact-icon-button{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background-color:var(--background-color);color:var(--secondary-text-color);transition:all .2s ease}.contact-icon-button:hover{background-color:var(--accent-color);color:#fff;transform:scale(1.1)}.contact-icon-button svg{width:18px;height:18px;margin:0}.contracts-linked-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.8rem;color:var(--secondary-text-color)}.contracts-linked-item svg{width:18px;height:18px;flex-shrink:0;margin-top:2px}.linked-contracts-list{display:flex;flex-direction:column;gap:.25rem}.linked-contract{color:var(--accent-color);text-decoration:none;font-weight:500;transition:all .2s ease}.linked-contract:hover{text-decoration:underline;filter:brightness(1.2)}.project-group{position:relative;transition:opacity .4s ease-in-out,transform .4s cubic-bezier(.4,0,.2,1)}.group-cards-wrapper{position:relative;transition:background-color .5s ease-in-out,padding .5s ease-in-out}.project-group.collapsed{min-height:400px}.project-group.collapsed .group-cards-wrapper{cursor:pointer;height:380px;width:100%}.project-group.collapsed .project-card{position:absolute;top:0;left:0;width:100%;transition:transform .3s cubic-bezier(.4,0,.2,1);min-height:300px}.project-group.collapsed:hover .project-card:nth-child(1){transform:translate(0) translateY(0) rotate(0)!important}.project-group.collapsed:hover .project-card:nth-child(2){transform:translate(50px) translateY(-15px) rotate(4deg)!important}.project-group.collapsed:hover .project-card:nth-child(3){transform:translate(100px) translateY(-30px) rotate(8deg)!important}.project-group.collapsed .project-card:nth-child(n+4){opacity:0}.stack-info{position:absolute;bottom:0;left:0;right:0;padding:2.5rem 1rem 1rem;background:linear-gradient(to top,var(--card-bg) 60%,transparent);border-radius:0 0 12px 12px;text-align:center;pointer-events:none;z-index:20}.stack-meta{display:flex;justify-content:center;align-items:baseline;gap:.5rem;flex-wrap:wrap}.stack-counter{font-size:1rem;font-weight:600;color:var(--stack-counter-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center}.stack-counter:after{content:"â€¢";color:var(--secondary-text-color);margin-left:.5rem}.stack-cost{font-size:1rem;font-weight:600;color:var(--secondary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stack-name{background:linear-gradient(135deg,#2563eb,#1d4ed8,#1e40af);color:#fff;padding:10px 1.2rem;font-size:.9rem;font-weight:700;display:block;margin-bottom:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:-1rem;margin-right:-1rem;text-align:center;border-radius:10px;box-shadow:0 4px 15px #2563eb59,0 2px 4px #0003,inset 0 1px #ffffff26;text-shadow:0 1px 2px rgba(0,0,0,.3);letter-spacing:.5px;transition:all .3s cubic-bezier(.25,.8,.25,1);pointer-events:auto;cursor:pointer;position:relative}.stack-name:hover{transform:translateY(-2px);box-shadow:0 8px 25px #2563eb73,0 4px 8px #00000040,inset 0 1px #fff3;background:linear-gradient(135deg,#3b82f6,#2563eb,#1d4ed8)}.stack-name:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px #2563eb4d,0 1px 2px #00000026}.stack-cta{display:block;font-size:.8rem;color:var(--secondary-text-color);font-style:italic}.stack-progress-bars{padding:0 1rem;margin:.75rem 0;display:flex;flex-direction:column;gap:.75rem}.project-group.expanded .project-card{transform-origin:center center}.project-group.expanded.is-collapsing .project-card{opacity:1;animation-name:collect-in;animation-duration:.7s;animation-fill-mode:forwards}.project-group.expanded{grid-column:1 / -1}.project-group.expanded .group-cards-wrapper{display:flex;flex-wrap:wrap;gap:1.5rem;cursor:pointer;padding:1.5rem;background-color:color-mix(in srgb,var(--border-color) 40%,transparent);border-radius:12px}.project-group.expanded .project-card{position:relative;flex:0 0 350px}.project-group.collapsed .bidding-card{position:absolute;top:0;left:0;width:100%}.project-group.collapsed .bidding-card:hover{transform:scale(1.03)!important;z-index:50!important}.project-group.collapsed .bidding-card:nth-child(n+4){opacity:0}.project-group.expanded .bidding-card{transform-origin:center center;position:relative;flex:0 0 350px}.project-group.expanded.is-collapsing .bidding-card{opacity:1;animation-name:collect-in;animation-duration:.7s;animation-fill-mode:forwards}@keyframes fadeIn{to{opacity:1}}.group-collapse-button{position:absolute;top:1rem;right:1rem;z-index:30;background-color:#3b82f614;border:1px solid rgba(59,130,246,.2);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#3b82f6;transition:all .2s ease;opacity:0;animation:fadeIn .5s .3s ease forwards}.group-collapse-button:hover{background-color:#3b82f626;border-color:#3b82f6;color:#3b82f6;transform:scale(1.1)}.group-collapse-button svg{width:20px;height:20px}.status-badge{display:inline-block;padding:4px 8px;font-size:.7rem;font-weight:700;text-align:center;border-radius:6px;margin-left:.5em;letter-spacing:.5px;line-height:1.3;white-space:nowrap;flex-shrink:0}.status-badge.status-default{color:var(--primary-text-color);background-color:var(--border-color)}.status-badge.status-bad{background-color:var(--status-critical);color:#fff}.status-badge.status-neutral{background-color:#8b949e;color:#fff}.status-badge.status-neutral-color-1{background-color:#58a6ff;color:#fff}.status-badge.status-neutral-color-2{background-color:#3fb950;color:#fff}.status-badge.status-neutral-color-3{background-color:#a186d8;color:#fff}.status-badge.status-neutral-color-4{background-color:#17a2b8;color:#fff}.status-badge.status-neutral-color-5{background-color:#20c997;color:#fff}.status-badge.status-neutral-color-6{background-color:#6f42c1;color:#fff}.status-badge.status-neutral-color-7{background-color:#8b949e;color:#fff}.status-badge.status-neutral-color-8{background-color:#30363d;color:#c9d1d9}.status-badge-vigente{background-color:var(--status-safe);color:#fff}.status-badge-vencido{background-color:var(--status-critical);color:#fff}.status-badge-suspenso{background-color:var(--status-warning);color:#1f2328}.status-badge-distratado,.status-badge-rescindido,.status-badge-concluido{background-color:var(--secondary-text-color);color:#fff}@keyframes pulse-highlight-border{0%{box-shadow:0 0 0 0 var(--accent-glow-color-30),var(--card-shadow);transform:scale(1);border-color:var(--border-color)}50%{box-shadow:0 0 20px 6px var(--accent-glow-color-70),0 0 40px 12px var(--accent-glow-color-30),var(--card-shadow-hover);transform:scale(1.02);border-color:var(--accent-color)}to{box-shadow:0 0 0 0 var(--accent-glow-color-30),var(--card-shadow);transform:scale(1);border-color:var(--border-color)}}.project-card.highlighted-scroll,.contract-card.highlighted-scroll,.project-group.expanded .project-card.highlighted-scroll,.contract-group.expanded .contract-card.highlighted-scroll{animation-name:pulse-highlight-border!important;animation-duration:1s!important;animation-timing-function:ease-in-out!important;animation-iteration-count:3!important;animation-delay:0s!important;animation-fill-mode:normal!important}.no-results-message{grid-column:1 / -1;text-align:center;font-size:1.1rem;color:var(--secondary-text-color);padding:3rem;background-color:var(--card-bg);border-radius:12px;border:1px dashed var(--border-color)}.table-section{background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:1.5rem;border-radius:16px;border:1px solid var(--border-color, rgba(255, 255, 255, .08));box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .4s ease,background-color .4s ease;position:relative;overflow:hidden}.table-section:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff08,#fff0);transform:skew(-20deg);transition:left .7s ease;pointer-events:none;z-index:1}.table-section:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:var(--border-hover-color, rgba(255, 255, 255, .15))}.table-section:hover:before{left:200%}.table-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.table-header h3{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.5px}.toggle-arrow{background:none;border:none;padding:0;margin:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;outline:none;color:var(--secondary-text-color, #94a3b8);font-size:.75rem;transition:transform .25s cubic-bezier(.4,0,.2,1),color .2s ease,background-color .2s ease;border-radius:6px}.toggle-arrow:hover{background:#ffffff0d;color:var(--primary-color, #818cf8)}.toggle-arrow:before{content:"▼"}.toggle-arrow.up{transform:rotate(-180deg)}.data-table-wrapper{max-height:500px;overflow:auto;margin-top:1.5rem;border:1px solid var(--border-color);border-radius:8px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap}.data-table th{background-color:var(--background-color);font-weight:600;position:sticky;top:0;z-index:1;transition:background-color .4s ease}.data-table tfoot tr{border-top:2px solid var(--border-color)}.data-table tfoot td{background-color:var(--background-color);position:sticky;bottom:0;font-weight:700}.data-table tbody tr:hover{background-color:var(--table-row-hover-bg)}.dataset-diagnostics-section{margin-top:2rem;background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:1.5rem;border-radius:16px;border:1px solid var(--border-color, rgba(255, 255, 255, .08));box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .4s ease,background-color .4s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:1.5rem}.dataset-diagnostics-section:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff08,#fff0);transform:skew(-20deg);transition:left .7s ease;pointer-events:none;z-index:1}.dataset-diagnostics-section:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:var(--border-hover-color, rgba(255, 255, 255, .15))}.dataset-diagnostics-section:hover:before{left:200%}.dataset-diagnostics-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer}.dataset-diagnostics-header:hover .dataset-diagnostics-title{color:var(--primary-text-color)}.dataset-diagnostics-header:hover .dataset-diagnostics-toggle{color:var(--accent-color);text-decoration:underline}.dataset-diagnostics-title{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.5px;margin:0;transition:color .2s ease}.dataset-diagnostics-toggle{background:none;border:none;color:var(--secondary-text-color);cursor:pointer;font-size:.9rem;text-decoration:none;transition:color .2s ease}.dataset-diagnostics-content{display:flex;flex-direction:column;gap:1.5rem}.connection-status{padding:1rem;border-radius:8px;border-left-width:5px;border-left-style:solid}.connection-status.status-success{background-color:var(--kpi-green-bg);border-left-color:var(--status-safe)}.connection-status.status-error{background-color:var(--kpi-red-bg);border-left-color:var(--status-critical)}.connection-status strong{font-weight:600;color:var(--primary-text-color);display:block;margin-bottom:.25rem}.connection-status p{color:var(--secondary-text-color);margin:0;font-size:.9rem}.dataset-diagnostics-description{color:var(--secondary-text-color);text-align:center;font-size:.9rem;margin:-.5rem 0}.diagnostics-search-wrapper{position:relative;width:100%;max-width:600px;margin:0 auto}.diagnostics-search-wrapper .search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--secondary-text-color);pointer-events:none}.diagnostics-search-wrapper .search-input{width:100%;height:40px;padding:0 1rem 0 2.5rem;font-size:.9rem;border-radius:20px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--primary-text-color);transition:all .2s ease}.diagnostics-search-wrapper .search-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow-color-20)}.dataset-diagnostics-content .table-section{margin-top:0;padding:0;border:none;box-shadow:none;background-color:transparent}.dataset-diagnostics-content .table-header{display:none}.dataset-diagnostics-content .data-table-wrapper{margin-top:0}.dataset-diagnostics-content .data-table{table-layout:fixed}.dataset-diagnostics-content .data-table th,.dataset-diagnostics-content .data-table td{white-space:normal;word-wrap:break-word;overflow-wrap:break-word}.contracts-page-container{display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;flex:1 1 0%!important;width:100%;overflow-y:auto!important;padding:1.5rem 2rem 2.5rem!important;gap:.75rem}.contracts-page-header{flex-shrink:0}.contracts-page-title{font-size:1.5rem;font-weight:600;color:var(--primary-text-color);margin:0}.contracts-kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;position:sticky!important;top:-1.5rem!important;margin-top:-1.5rem!important;padding-top:1.5rem!important;padding-bottom:.5rem!important;z-index:99!important;background:var(--bg-primary)!important;border-bottom:1px solid var(--border-color)!important}.contracts-main-content{display:flex;flex-direction:column;gap:.75rem;position:relative;z-index:1}.contracts-list-panel,.contracts-details-panel{display:flex;flex-direction:column;gap:.75rem}.contracts-filter-bar{display:flex;flex-direction:row;gap:.75rem;align-items:center;flex-wrap:wrap;background-color:var(--card-bg);padding:1rem;border-radius:12px;border:1px solid var(--border-color);flex-shrink:0}.filter-item{display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.filter-item label{font-size:.8rem;font-weight:500;color:var(--secondary-text-color)}.filter-item .search-input,.filter-item .sort-select{width:100%;max-width:none}.contracts-section-title{font-size:.9rem;font-weight:600;color:var(--primary-text-color);margin-bottom:.5rem;margin-top:.5rem;text-align:center}.quadrant-chart-container{background-color:var(--card-bg);padding:1.5rem;border-radius:12px;border:1px solid var(--border-color);position:relative;overflow:hidden}.quadrant-chart-container:focus,.quadrant-chart-container:focus-within{outline:none}.quadrant-chart-content{position:relative;z-index:1}@keyframes radar-wave{0%{transform:translate(-50%,-50%) scale(.1);opacity:.8}to{transform:translate(-50%,-50%) scale(1);opacity:0}}.quadrant-chart-container:before,.quadrant-chart-container:after{content:"";position:absolute;top:calc(50% + 15px);left:50%;width:100%;padding-top:100%;border-radius:50%;border:2px solid var(--accent-color);animation:radar-wave 12s ease-out infinite;z-index:0;pointer-events:none}.quadrant-chart-container:after{animation-delay:-6s}@keyframes pulse-spotlight{0%{transform:scale(1.5);opacity:.7}50%{transform:scale(1.8);opacity:.5}to{transform:scale(1.5);opacity:.7}}@keyframes pulse-highlight{0%{stroke-width:4px;stroke-opacity:1;transform:scale(1)}50%{stroke-width:8px;stroke-opacity:.5;transform:scale(1.2)}to{stroke-width:4px;stroke-opacity:1;transform:scale(1)}}.selection-spotlight-shape{fill:var(--accent-glow-color-60);transform-origin:50% 50%;animation:pulse-spotlight 2s ease-in-out infinite}.hover-pulse-shape{fill:none;stroke:var(--accent-color);transform-origin:50% 50%;animation:pulse-highlight 1.5s ease-out 3}.contracts-table-container{background-color:var(--card-bg);padding:1.5rem;border-radius:12px;border:1px solid var(--border-color);flex-grow:1;display:flex;flex-direction:column;min-height:0}.contracts-table-list{overflow-y:auto;flex-grow:1}.contract-list-item{padding:1rem;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background-color .2s ease}.contract-list-item:hover{background-color:var(--table-row-hover-bg)}.contract-list-item.selected{background-color:var(--accent-glow-color-20);border-left:3px solid var(--accent-color);padding-left:calc(1rem - 3px)}.contract-list-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.contract-list-item-title{font-weight:600;color:var(--primary-text-color)}.contract-list-item-company{font-size:.9rem;color:var(--secondary-text-color);margin-top:.25rem}.contract-list-item-footer{display:flex;justify-content:space-between;font-size:.8rem;color:var(--secondary-text-color);margin-top:.75rem}.contract-group-header{font-size:.9rem;font-weight:600;color:var(--primary-text-color);padding:.75rem 1rem;background-color:var(--background-color);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:2}.contract-groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;align-items:start}.contract-card{background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:16px;padding:1rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .4s ease,background-color .4s ease;min-height:310px;position:relative;overflow:hidden}.contract-card:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff08,#fff0);transform:skew(-20deg);transition:left .7s ease;pointer-events:none;z-index:1}.contract-card:hover,.contract-card.hovered{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:var(--border-hover-color, rgba(255, 255, 255, .15))}.contract-card:hover:before,.contract-card.hovered:before{left:200%}.contract-card.selected{border-color:var(--accent-color);box-shadow:0 20px 25px -5px #0003,0 10px 10px -5px #0000001a}.contract-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.contract-card-title-area h3{font-size:1.1rem;font-weight:600;color:var(--primary-text-color);line-height:1.3}.contract-card-title-area p{font-size:.85rem;color:var(--secondary-text-color);margin-top:.25rem}.contract-card-header-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0;transition:transform .2s ease-out,padding .2s ease-out,margin .2s ease-out;position:relative}.contract-card-body{display:flex;justify-content:space-between;gap:1rem}.contract-card .details-item label{font-size:.75rem}.contract-card .details-item p{font-size:.95rem}.contract-card .contract-value{font-size:1.1rem;font-weight:600}.contract-card-footer{margin-top:auto;padding-top:.75rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:.75rem}.contract-group{position:relative;transition:opacity .4s ease-in-out,transform .4s cubic-bezier(.4,0,.2,1)}.contract-group.collapsed{min-height:330px}.contract-group.collapsed .group-cards-wrapper{cursor:pointer;width:100%;display:grid;min-height:310px}.contract-group.collapsed .contract-card{width:100%;grid-area:1 / 1;transition:transform .3s cubic-bezier(.4,0,.2,1)}.contract-group.collapsed:hover .contract-card:nth-child(1){transform:translate(0) translateY(0) rotate(0)!important}.contract-group.collapsed:hover .contract-card:nth-child(2){transform:translate(50px) translateY(-15px) rotate(4deg)!important}.contract-group.collapsed:hover .contract-card:nth-child(3){transform:translate(100px) translateY(-30px) rotate(8deg)!important}.contract-group.collapsed .contract-card:nth-child(n+4){opacity:0}.contract-group.expanded .contract-card{transform-origin:center center}.contract-group.expanded.is-collapsing .contract-card{opacity:1;animation-name:collect-in;animation-duration:.7s;animation-fill-mode:forwards}.contract-group.expanded{grid-column:1 / -1}.contract-group.expanded .group-cards-wrapper{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;cursor:pointer;padding:1.5rem;background-color:color-mix(in srgb,var(--border-color) 40%,transparent);border-radius:12px}.contract-group.expanded .contract-card{position:relative;cursor:pointer}.contract-card.animate-in{animation-name:deal-in;animation-duration:.9s;animation-timing-function:cubic-bezier(.23,1,.32,1);animation-fill-mode:forwards}.contract-card.highlighted-scroll{animation-name:pulse-highlight-border;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:3}.contract-group.expanded .contract-card.highlighted-scroll{animation-name:pulse-highlight-border;animation-duration:1s;animation-timing-function:ease-in-out;animation-iteration-count:3;animation-fill-mode:normal}.card-edit-button{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;border-radius:50%;background-color:var(--background-color);border:1px solid var(--border-color);color:var(--secondary-text-color);display:grid;place-items:center;cursor:pointer;z-index:25;opacity:0;transform:scale(.8) translateY(-5px);transition:all .2s ease-out}.project-card:hover .card-edit-button,.contract-card:hover .card-edit-button{opacity:1;transform:scale(1) translateY(0)}.project-card:hover .project-card-header-right,.contract-card:hover .contract-card-header-right{transform:translate(-44px)}.project-group.collapsed .project-card:hover .card-edit-button,.contract-group.collapsed .contract-card:hover .card-edit-button{opacity:0;pointer-events:none}.project-group.collapsed .project-card:hover .project-card-header-right,.contract-group.collapsed .contract-card:hover .contract-card-header-right{transform:none}.card-edit-button:hover{background-color:var(--accent-color);border-color:var(--accent-color);color:#fff}.card-edit-button svg{width:18px;height:18px}.contract-details-container{background-color:var(--card-bg);padding:1.5rem;border-radius:12px;border:1px solid var(--border-color)}.contract-details-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:var(--secondary-text-color);padding:2rem}.contract-details-placeholder svg{width:48px;height:48px;margin-bottom:1rem;opacity:.5}.contract-details-content{display:flex;flex-direction:column;gap:1.5rem}.details-header h2{font-size:1.25rem;font-weight:600;color:var(--primary-text-color);line-height:1.3}.details-header p{font-size:.9rem;color:var(--secondary-text-color)}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.details-grid.three-cols{grid-template-columns:repeat(3,1fr)}.details-item.full-width{grid-column:1 / -1}.details-item label{font-size:.8rem;color:var(--secondary-text-color);text-transform:uppercase;display:block;margin-bottom:.25rem}.details-item p{font-size:1rem;font-weight:500;color:var(--primary-text-color)}.details-progress-bar .progress-labels{display:flex;justify-content:space-between;font-size:.8rem;color:var(--secondary-text-color);margin-bottom:.25rem}.details-progress-bar .progress-labels strong{color:var(--primary-text-color)}.development-notice{background-color:var(--kpi-yellow-bg);border:1px solid var(--status-warning);color:var(--primary-text-color);padding:1rem 1.5rem;border-radius:12px;display:flex;align-items:center;gap:1rem;font-size:1rem;font-weight:500;justify-content:flex-start}.development-notice svg{width:24px;height:24px;color:var(--status-warning);flex-shrink:0}.cost-details-page,.budget-details-page{display:flex;flex-direction:column;gap:.3rem}.cost-page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.cost-page-header h1{font-size:1.5rem;font-weight:600;color:var(--primary-text-color)}.cost-details-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.cost-detail-card{background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color, rgba(255, 255, 255, .08));padding:1rem;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;gap:1rem;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease,border-color .4s ease,background-color .4s ease;position:relative;overflow:hidden}.cost-detail-card:before{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(to right,#fff0,#ffffff08,#fff0);transform:skew(-20deg);transition:left .7s ease;pointer-events:none;z-index:1}.cost-detail-card:hover{transform:translateY(-4px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;border-color:var(--border-hover-color, rgba(255, 255, 255, .15))}.cost-detail-card:hover:before{left:200%}.cost-card-header{display:block;position:relative;width:100%;height:105px;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.cost-card-header h3{font-size:1rem;font-weight:600;color:var(--primary-text-color);line-height:1.3}.cost-card-body{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.cost-card-main-value{display:flex;flex-direction:column}.cost-card-label{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.cost-card-amount{font-size:1.75rem;font-weight:700;color:var(--primary-text-color);line-height:1.2}.cost-card-manager{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;font-size:.9rem;color:var(--secondary-text-color)}.cost-detail-card .cost-card-manager svg{width:18px;height:18px}.cost-card-footer{display:flex;flex-direction:column;gap:.75rem;margin-top:auto;padding-top:.75rem;border-top:1px solid var(--border-color)}.cost-card-progress-item{display:flex;flex-direction:column;gap:.25rem}.quill-editor-container .ql-editor{min-height:250px;font-size:1rem;color:var(--primary-text-color)}.quill-editor-container .ql-toolbar{background-color:var(--card-bg);border-bottom:1px solid var(--border-color);border-radius:8px 8px 0 0;border-color:var(--border-color)}.quill-editor-container .ql-toolbar .ql-stroke{stroke:var(--primary-text-color)!important}.quill-editor-container .ql-toolbar .ql-fill{fill:var(--primary-text-color)!important}.quill-editor-container .ql-toolbar .ql-picker{color:var(--primary-text-color)!important}.quill-editor-container .ql-toolbar button:hover .ql-stroke,.quill-editor-container .ql-toolbar button.ql-active .ql-stroke{stroke:var(--accent-color)!important}.quill-editor-container .ql-toolbar button:hover .ql-fill,.quill-editor-container .ql-toolbar button.ql-active .ql-fill{fill:var(--accent-color)!important}.quill-editor-container .ql-container{border-radius:0 0 8px 8px;border-color:var(--border-color)!important}.quill-editor-container .ql-toolbar .ql-picker-options{background-color:var(--card-bg)!important;border-color:var(--border-color)!important}.quill-editor-container .ql-toolbar .ql-picker-item{color:var(--primary-text-color)!important}.quill-editor-container .ql-toolbar .ql-picker-item:hover,.quill-editor-container .ql-toolbar .ql-picker-item.ql-selected{color:var(--accent-color)!important}.relative{position:relative}.pro-badge{position:absolute;bottom:-5px;right:-32px;font-size:.6rem;font-weight:700;letter-spacing:.1em;padding:1px 4px;background:transparent;border:1px solid rgba(255,255,255,.4);color:#ffffffe6;border-radius:4px;line-height:1}.login-page-container{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%;background-color:var(--background-color);padding:1rem;animation:fadeIn .5s ease-out}.login-form-wrapper{flex:1;display:flex;justify-content:center;align-items:center;position:relative;width:100%}.login-card{background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:3.5rem 2rem 2rem;border-radius:16px;border:1px solid var(--border-color, rgba(255, 255, 255, .08));box-shadow:0 25px 50px -12px #0000004d,inset 0 1px #ffffff0d;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:1.5rem;z-index:1;position:relative;overflow:visible;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.login-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);pointer-events:none;opacity:.5;z-index:-1}.desktop-only{display:none!important}.mobile-only{display:flex!important}@media (min-width: 900px){.login-page-container{padding:0;align-items:stretch;flex-direction:row}.desktop-only{display:flex!important}.mobile-only{display:none!important}.login-info-panel{flex:1.2;background:linear-gradient(145deg,var(--accent-color) 0%,color-mix(in srgb,var(--accent-color) 30%,black) 100%);padding:3rem;display:flex;flex-direction:column;justify-content:space-between;color:#fff;position:relative;overflow:hidden}.login-info-header{display:flex;align-items:center;gap:1rem}.login-info-logo{width:56px;height:56px}.login-info-logo .logo-blade{opacity:0;transform-origin:50% 50%;animation-duration:5s;animation-fill-mode:both;animation-iteration-count:infinite;animation-timing-function:ease-in-out}.login-info-logo .blade-top{animation-name:slide-in-top}.login-info-logo .blade-right{animation-name:slide-in-right}.login-info-logo .blade-bottom{animation-name:slide-in-bottom}.login-info-logo .blade-left{animation-name:slide-in-left}.login-info-header h1{font-size:1.5rem;font-weight:700;letter-spacing:1px;margin:0;color:#fff}.login-info-body{max-width:500px;margin-top:2rem}.login-info-body h2{font-size:2.25rem;font-weight:500;line-height:1.3;margin-bottom:1rem;color:#fff}.login-info-body h2 strong{color:#facc15;font-weight:700}.login-info-body p{font-size:1.1rem;line-height:1.6;opacity:.9;margin-bottom:3rem}.login-info-features{display:flex;justify-content:space-between;width:100%;gap:2rem;border-top:1px solid rgba(255,255,255,.2);padding-top:2rem;padding-bottom:2rem}.login-info-feature{display:flex;flex-direction:column;gap:.25rem}.login-info-feature strong{font-size:1.1rem;color:#facc15}.login-info-feature span{font-size:.85rem;opacity:.85}.login-info-footer{display:flex;flex-direction:column;gap:1rem;border-top:1px solid rgba(255,255,255,.2);padding-top:1.5rem}.login-info-footer .login-compliance-intro{text-align:left;color:#ffffffb3;margin:0}.login-info-footer .login-compliance-badges{justify-content:flex-start}.login-info-footer .login-compliance-badge{background:transparent;border-color:transparent;color:#facc15;padding-left:0}.login-info-footer .login-compliance-badge-desc{color:#fffc}.login-info-footer .login-compliance-badge:hover{background:#ffffff1a;border-color:#fff3}.login-form-wrapper{flex:1;background-color:var(--background-color)}.login-card{background:transparent;border:none;box-shadow:none;max-width:420px;position:static;padding:2.5rem 2rem}.login-toggles-container{position:absolute;top:1rem;right:1rem}body.dark .login-info-panel{background:var(--card-bg);border-right:1px solid var(--border-color)}body.dark .login-info-header h1,body.dark .login-info-body h2{color:var(--primary-text-color)}body.dark .login-info-body h2 strong,body.dark .login-info-feature strong,body.dark .login-info-footer .login-compliance-badge{color:var(--accent-color)}body.dark .login-info-body p,body.dark .login-info-feature span,body.dark .login-info-footer .login-compliance-intro,body.dark .login-info-footer .login-compliance-badge-desc{color:var(--secondary-text-color);opacity:1}body.dark .login-info-features,body.dark .login-info-footer{border-top-color:var(--border-color)}body.dark .login-info-footer .login-compliance-badge:hover{background:var(--background-hover);border-color:var(--border-color)}}.login-toggles-container{position:absolute;top:.75rem;right:.75rem;display:flex;align-items:center;gap:.5rem;z-index:2}.login-theme-toggle{width:36px;height:36px;background:none;border:1px solid var(--border-color);border-radius:50%;cursor:pointer;color:var(--secondary-text-color);display:grid;place-items:center;transition:all .2s ease}.login-theme-toggle:hover{color:var(--primary-text-color);background-color:var(--border-color);border-color:var(--accent-color)}.login-theme-toggle svg{width:18px;height:18px}.login-lang-label{font-size:.75rem;font-weight:700;letter-spacing:.02em;line-height:1;-webkit-user-select:none;user-select:none}.login-legal-footer{width:100%;margin-top:0;padding-top:.75rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;gap:.85rem}.login-lgpd-banner-btn{display:flex;align-items:center;gap:.85rem;padding:.85rem 1.25rem;width:100%;background:transparent;border:1px solid color-mix(in srgb,var(--accent-color) 25%,transparent);border-radius:12px;cursor:pointer;text-align:left;transition:all .2s ease}.login-lgpd-banner-btn:hover{background:color-mix(in srgb,var(--accent-color) 8%,transparent);border-color:color-mix(in srgb,var(--accent-color) 50%,transparent)}.login-lgpd-banner-icon{flex-shrink:0;color:var(--accent-color)}.login-lgpd-banner-text{font-size:.85rem;color:var(--secondary-text-color);line-height:1.4;margin:0}.login-lgpd-banner-highlight{color:var(--accent-color);font-weight:700}.login-compliance-intro{font-size:.75rem;color:var(--secondary-text-color);text-align:center;margin:.25rem 0 0;opacity:.85}.login-compliance-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem;width:100%}.login-compliance-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .55rem;border-radius:999px;font-size:.68rem;font-weight:700;letter-spacing:.03em;white-space:nowrap;transition:opacity .2s ease,transform .2s ease,box-shadow .2s ease;cursor:pointer;-webkit-user-select:none;user-select:none;font-family:inherit;text-align:left}.login-compliance-badge:hover{opacity:1!important;transform:translateY(-2px) scale(1.03);box-shadow:0 4px 12px #0003}.login-compliance-badge:active{transform:translateY(0) scale(.98)}.login-compliance-badge svg{flex-shrink:0;opacity:.9}.login-compliance-badge-desc{font-weight:400;opacity:.85;font-size:.63rem}.login-compliance-badge--lgpd{background-color:color-mix(in srgb,#22c55e 12%,transparent);color:#4ade80;border:1px solid color-mix(in srgb,#22c55e 30%,transparent);opacity:.9}.login-compliance-badge--iso{background-color:color-mix(in srgb,var(--accent-color) 10%,transparent);color:var(--accent-color);border:1px solid color-mix(in srgb,var(--accent-color) 25%,transparent);opacity:.85}.login-form{width:100%;display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:500;color:var(--secondary-text-color)}.form-group input,.form-group textarea,.form-group select{padding:0 1rem;font-size:1rem;border-radius:8px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--primary-text-color);transition:all .2s ease;font-family:inherit}.form-group input,.form-group select{height:44px}.form-group textarea{padding-top:.5rem;padding-bottom:.5rem;resize:vertical}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-glow-color-30)}.form-group .error-message{color:var(--status-critical);font-size:.8rem;margin-top:-.25rem}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--status-critical);box-shadow:0 0 0 3px var(--kpi-red-bg)}.form-group.password-group{position:relative}.form-group.password-group input{padding-right:2.75rem}.password-toggle-btn{position:absolute;right:.5rem;bottom:6px;width:32px;height:32px;background:none;border:none;cursor:pointer;color:var(--secondary-text-color);display:grid;place-items:center;border-radius:50%;transition:color .2s,background-color .2s}.password-toggle-btn:hover{color:var(--primary-text-color);background-color:var(--border-color)}.password-toggle-btn svg{width:20px;height:20px}.login-button{height:44px;border:none;border-radius:8px;background-color:var(--accent-color);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease;display:flex;justify-content:center;align-items:center}.login-button:hover:not(:disabled){background-color:color-mix(in srgb,var(--accent-color) 85%,black)}.login-button:disabled{background-color:var(--border-color);cursor:not-allowed;opacity:.7}.login-button .loader{width:24px;height:24px;border-width:3px;margin:0}.login-logo-container{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--primary-text-color);text-decoration:none}.login-logo{width:80px;height:80px}.login-logo .logo-blade{opacity:0;transform-origin:50% 50%;animation-duration:5s;animation-fill-mode:both;animation-iteration-count:infinite;animation-timing-function:ease-in-out}.login-logo .blade-top{animation-name:slide-in-top}.login-logo .blade-right{animation-name:slide-in-right}.login-logo .blade-bottom{animation-name:slide-in-bottom}.login-logo .blade-left{animation-name:slide-in-left}.login-title-text{text-align:center}.login-title-text h1{font-size:2rem;font-weight:700;letter-spacing:.1em;color:var(--primary-text-color)}.login-title-text h2{font-size:.9rem;color:var(--secondary-text-color);font-weight:500}.login-toggle-link{color:var(--accent-color);text-align:center;font-size:.9rem;cursor:pointer;background:none;border:none;padding:0;text-decoration:underline;margin:.5rem 0;width:100%;display:block}.login-links-row{display:flex;justify-content:center;align-items:center;gap:.75rem;width:100%;margin:.25rem 0}.login-links-row .login-toggle-link{width:auto;margin:0;display:inline;font-size:.85rem}.login-links-separator{color:var(--border-color);font-size:.85rem;-webkit-user-select:none;user-select:none}.login-toggle-link--inline{display:inline;font-size:inherit;margin-top:0;width:auto;text-decoration:underline}.forgot-password-desc{margin-bottom:1.5rem;opacity:.8;font-size:.95rem;color:var(--secondary-text-color)}.login-error{color:var(--status-critical);background-color:var(--kpi-red-bg);border:1px solid var(--status-critical);padding:.75rem 1rem;border-radius:8px;font-size:.9rem;text-align:center;width:100%}.forgot-password-view{width:100%;display:flex;flex-direction:column;gap:1rem}.forgot-password-view h3{text-align:center;font-size:1.2rem;font-weight:600;color:var(--primary-text-color)}.login-first-access-highlight{margin-top:.5rem;padding:.75rem;border-radius:8px;border:1px dashed var(--accent-color);background-color:color-mix(in srgb,var(--accent-color) 8%,transparent);color:var(--accent-color);font-weight:600;text-align:center;cursor:pointer;transition:all .2s ease;width:100%;font-size:.9rem;display:flex;justify-content:center;align-items:center;gap:.5rem}.login-first-access-highlight:hover{background-color:color-mix(in srgb,var(--accent-color) 15%,transparent);border-style:solid;transform:translateY(-1px);box-shadow:0 4px 12px var(--accent-glow-color-30)}.login-first-access-highlight svg{width:16px;height:16px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content{background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:0;border-radius:16px;border:1px solid var(--border-color, rgba(255, 255, 255, .08));box-shadow:0 25px 50px -12px #0000004d,0 0 0 1px #ffffff0d inset;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden}.modal-content:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);pointer-events:none;opacity:.5}.modal-content-large{max-width:800px}.modal-content-fullscreen{position:fixed;top:0;left:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;border-radius:0;z-index:1100}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-content .modal-header{padding:1.5rem 2rem}.modal-header h2.delete-title{color:var(--status-critical)}.modal-header h2{font-size:1.5rem;color:var(--primary-text-color);line-height:1.3}.modal-manager{font-size:.9rem;font-weight:500;color:var(--secondary-text-color);margin-top:.25rem}.modal-manager strong{font-weight:600;color:var(--primary-text-color)}.modal-close-button{background:none;border:none;font-size:2.5rem;font-weight:300;line-height:1;color:var(--secondary-text-color);cursor:pointer;padding:0;margin:0;width:40px;height:40px;display:grid;place-items:center}.modal-close-button:hover{color:var(--primary-text-color)}.modal-body{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;overflow-y:auto;flex-grow:1}.modal-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.modal-stat-item{display:flex;flex-direction:column;gap:.25rem}.modal-stat-label{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.5px}.modal-stat-value{font-size:1.25rem;font-weight:600}.modal-stat-sub-value{font-size:.85rem;color:var(--secondary-text-color)}.modal-section-title{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.75rem}.modal-body .markdown-content{text-align:justify;color:var(--primary-text-color)}.modal-speech-player-container{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.choice-modal-body{display:flex;flex-direction:column;gap:1rem;align-items:center;padding:1rem 0 .5rem}.choice-button{display:flex;align-items:center;justify-content:center;width:100%;padding:1.5rem;border-radius:12px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--primary-text-color);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;gap:1rem}.choice-button:hover{border-color:var(--accent-color);color:var(--accent-color);transform:translateY(-5px);box-shadow:var(--card-shadow-hover)}.choice-button.delete{border-color:var(--status-critical);color:var(--status-critical)}.choice-button.delete:hover{background-color:var(--status-critical);color:#fff}.choice-button svg{width:32px;height:32px}.add-project-modal-body,.add-contract-modal-body{flex-grow:1;overflow-y:auto;padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.5rem;min-height:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem}.form-span-2{grid-column:1 / -1}.form-section-title{grid-column:1 / -1;font-size:1rem;font-weight:600;color:var(--primary-text-color);padding-bottom:.75rem;border-bottom:1px solid var(--border-color);margin-top:.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;border-top:1px solid var(--border-color);flex-shrink:0}.modal-footer .action-button.cancel{background-color:transparent;border-color:var(--secondary-text-color);color:var(--secondary-text-color);width:auto;padding:0 1.5rem;border-radius:8px}.modal-footer .action-button.cancel:hover{border-color:var(--primary-text-color);color:var(--primary-text-color)}.modal-footer .action-button.delete{background-color:var(--status-critical);color:#fff;border-color:var(--status-critical);width:auto;padding:0 1.5rem;border-radius:8px}.modal-footer .action-button.delete:hover{background-color:color-mix(in srgb,var(--status-critical) 80%,black)}.modal-footer .login-button.delete{background-color:var(--status-critical)}.modal-footer .login-button.delete:hover{background-color:color-mix(in srgb,var(--status-critical) 80%,black)}.label-with-action{display:flex;justify-content:space-between;align-items:center;width:100%}.cost-mode-toggle-btn{background-color:transparent;border:1px solid var(--accent-color);color:var(--accent-color);padding:4px 10px;font-size:.8rem;font-weight:500;border-radius:20px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s ease}.contract-detail-value{color:var(--accent-color);padding:4px 10px;font-size:.8rem;font-weight:500;border-radius:20px;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s ease}.cost-mode-toggle-btn:hover{background-color:var(--accent-glow-color-20)}.cost-mode-toggle-btn svg{width:14px;height:14px}.checkbox-group-container{border:1px solid var(--border-color);border-radius:8px;padding:.5rem;max-height:150px;overflow-y:auto;background-color:var(--background-color)}.checkbox-label{display:flex;align-items:center;gap:.75rem;padding:.5rem;cursor:pointer;border-radius:6px;transition:background-color .2s ease}.checkbox-label:hover{background-color:var(--table-row-hover-bg)}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-color);cursor:pointer;flex-shrink:0}.item-selection-container{flex-grow:1;display:flex;flex-direction:column;padding:0;gap:0;min-height:0;overflow:hidden}.item-selection-search-wrapper{padding:1rem 2rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.item-selection-list{flex-grow:1;overflow-y:auto;border:none;border-radius:0;min-height:0}.item-selection-list-item{padding:.75rem 2rem;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background-color .2s ease}.item-selection-list-item:last-child{border-bottom:none}.item-selection-list-item:hover{background-color:var(--table-row-hover-bg)}.item-selection-list-item.selected{background-color:var(--accent-glow-color-20);border-left:3px solid var(--accent-color);padding-left:calc(1rem - 3px)}.item-selection-list-item p{font-weight:500;color:var(--primary-text-color);margin:0 0 .25rem}.item-selection-list-item span{font-size:.8rem;color:var(--secondary-text-color)}.review-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);transition:background-color .3s ease;gap:1rem}.review-item:last-child{border-bottom:none}.review-item p{color:var(--secondary-text-color);margin:0}.review-item span{text-align:right;font-weight:500;word-break:break-word}.review-item--changed{background-color:var(--accent-glow-color-20);border-left:3px solid var(--accent-color);padding-left:calc(1rem - 3px)}.contract-details-modal .modal-body{padding:1.5rem 2rem}.contract-details-modal{max-width:800px}.contract-details-body{gap:1.25rem}.contract-details-section-title{text-align:center;font-size:.9rem;font-weight:600;color:var(--primary-text-color);padding-bottom:.75rem;border-bottom:1px solid var(--border-color);margin-top:1rem;margin-bottom:1rem}.contract-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contract-details-grid.three-cols{grid-template-columns:1fr 1fr 1fr}.contract-detail-item{display:flex;flex-direction:column;gap:.25rem;background-color:var(--background-color);padding:.75rem;border-radius:8px}.contract-detail-item.full-width{grid-column:1 / -1}.contract-detail-label{font-size:.75rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase}.contract-detail-value{font-size:.95rem;font-weight:500;color:var(--primary-text-color)}.linked-projects-container{text-align:center;padding:1rem;background-color:var(--background-color);border-radius:8px;margin:.5rem 0}.linked-projects-title{font-size:.8rem;font-weight:500;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.linked-projects-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem}.linked-project-tag{background-color:var(--accent-glow-color-20);color:var(--accent-color);font-size:.9rem;font-weight:500;padding:.5rem 1rem;border-radius:20px;border:1px solid var(--accent-color)}.contract-details-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);background-color:var(--background-color);flex-shrink:0;overflow-x:auto}.contract-details-tab{display:flex;align-items:center;gap:.4rem;padding:.75rem 1.25rem;border:none;background:none;color:var(--secondary-text-color);font-size:.85rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease;white-space:nowrap}.contract-details-tab:hover{color:var(--primary-text-color)}.contract-details-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color)}.contract-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;border-radius:9px;background-color:var(--accent-color);color:#fff}.contract-sub-table-wrapper{overflow-x:auto;border-radius:8px;border:1px solid var(--border-color)}.contract-sub-table{width:100%;border-collapse:collapse;font-size:.875rem}.contract-sub-table thead{background-color:var(--background-color)}.contract-sub-table th{padding:.6rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--secondary-text-color);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.contract-sub-table td{padding:.65rem 1rem;color:var(--primary-text-color);border-top:1px solid var(--border-color);vertical-align:middle}.contract-sub-table tbody tr:hover{background-color:var(--table-row-hover-bg)}.contract-anexos-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.contract-anexo-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:8px;transition:border-color .2s ease}.contract-anexo-item:hover{border-color:var(--accent-color)}.contract-anexo-icon{font-size:1.1rem;flex-shrink:0}.contract-anexo-info{display:flex;flex-direction:column;flex-grow:1;min-width:0}.contract-anexo-name{font-size:.9rem;font-weight:500;color:var(--primary-text-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-anexo-date{font-size:.75rem;color:var(--secondary-text-color);margin-top:2px}.contract-anexo-download{flex-shrink:0;padding:.3rem .75rem;border:1px solid var(--accent-color);border-radius:6px;color:var(--accent-color);font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s ease;white-space:nowrap}.contract-anexo-download:hover{background-color:var(--accent-color);color:#fff}.warning-modal-content{max-width:450px;text-align:center;padding:2.5rem}.warning-modal-content .modal-header,.warning-modal-content .modal-footer{padding:0}.warning-modal-header{flex-direction:column;align-items:center;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem}.warning-modal-icon{width:60px;height:60px;color:var(--status-warning)}.warning-modal-icon.delete{color:var(--status-critical)}.warning-modal-icon svg{width:100%;height:100%}.warning-modal-header h2{font-size:1.5rem;color:var(--status-warning)}.warning-modal-header h2.delete{color:var(--status-critical)}.warning-modal-body p{font-size:1.1rem;line-height:1.6;color:var(--primary-text-color)}.workflow-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);border-radius:5px;font-size:.72rem!important;color:#a78bfa;font-weight:500;width:fit-content;letter-spacing:.01em;transition:all .3s ease}.workflow-health-dot{width:6px;height:6px;border-radius:50%;margin-left:.15rem;animation:workflow-health-pulse 2s ease-in-out infinite}@keyframes workflow-health-pulse{0%,to{opacity:1}50%{opacity:.4}}.ai-section-container{height:0;min-height:0;padding:0 2rem;margin-top:0;opacity:0;visibility:hidden;overflow:hidden;transform:translateY(-8px) scale(.99);transform-origin:top center;transition:height .6s cubic-bezier(.16,1,.3,1),min-height .6s cubic-bezier(.16,1,.3,1),margin-top .6s cubic-bezier(.16,1,.3,1),opacity .4s ease-out,transform .5s cubic-bezier(.16,1,.3,1),visibility 0s .6s}.ai-section-container.open{height:70vh;min-height:500px;max-height:800px;margin-top:1.5rem;opacity:1;visibility:visible;transform:translateY(0) scale(1);overflow:visible;transition:height .6s cubic-bezier(.16,1,.3,1),min-height .6s cubic-bezier(.16,1,.3,1),margin-top .6s cubic-bezier(.16,1,.3,1),opacity .5s ease-out .1s,transform .6s cubic-bezier(.16,1,.3,1),visibility 0s 0s}.ai-content-wrapper{display:flex;gap:1.5rem;height:100%;min-height:0}.ai-column{flex:1;display:flex;flex-direction:column;background-color:var(--card-bg, rgba(255, 255, 255, .03));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:16px;padding:1.5rem;overflow:hidden;transition:background-color .4s ease,border-color .4s ease,transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease;position:relative;box-shadow:0 4px 6px -1px #0000001a,inset 0 1px #ffffff08}.ai-column:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);pointer-events:none;opacity:.3}.ai-column-header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.header-spacer{width:36px;flex-shrink:0}.ai-column-title{font-size:1.1rem;font-weight:600;color:var(--primary-text-color);margin:0;padding:0;border:none;text-align:center;flex-grow:1}.ai-column-title-complex{display:flex;flex-direction:column;align-items:center;line-height:1.3;flex-grow:1}.ai-column-title-complex .acronym{font-size:1.1rem;font-weight:700;color:var(--accent-color);letter-spacing:.1em}.ai-column-title-complex .full-text{font-size:.85rem;font-weight:400;color:var(--secondary-text-color)}.ai-fullscreen-button{background:linear-gradient(135deg,#0f192899,#0a121ecc);border:1px solid rgba(88,166,255,.2);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#c8dcffb3;transition:all .3s ease;flex-shrink:0;box-shadow:0 0 8px #58a6ff14}.ai-fullscreen-button:hover{border-color:#58a6ff80;color:#fff;box-shadow:0 0 15px #58a6ff40;transform:scale(1.1)}.ai-fullscreen-button svg{width:20px;height:20px;filter:drop-shadow(0 0 2px rgba(88,166,255,.3))}.ai-column-content{flex-grow:1;overflow:hidden;min-height:0;display:flex;flex-direction:column}.ai-summary-column .summary-initial,.ai-summary-column .summary-loading,.ai-summary-column .summary-error{flex-grow:1;display:flex;flex-direction:column;text-align:center;max-height:100%;overflow-y:auto;overflow-x:hidden;width:100%;padding:10px 0}.ai-summary-column .summary-initial:before,.ai-summary-column .summary-initial:after{content:"";margin:auto}.ai-column.css-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:2000;border-radius:0;border:none;padding:80px 2rem 2rem;overflow-y:hidden}.ai-column.css-fullscreen .ai-column-content{height:100%}.summary-initial p{color:var(--secondary-text-color);max-width:500px;margin-bottom:1.5rem;line-height:1.6}.summary-initial-secondary{font-size:.85rem;color:var(--secondary-text-color);margin-top:-1rem;margin-bottom:1.5rem;max-width:450px;margin-left:auto;margin-right:auto}.generate-summary-button{background:linear-gradient(135deg,#1e3a5f,#0f2847,#0a1929);color:#fff;border:1px solid rgba(88,166,255,.3);padding:.9rem 1.8rem;border-radius:14px;font-size:1rem;font-weight:600;letter-spacing:.02em;cursor:pointer;display:inline-flex;align-items:center;gap:.85rem;transition:all .3s ease;position:relative;overflow:hidden;box-shadow:0 0 15px #58a6ff26,inset 0 1px #ffffff14}.generate-summary-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(88,166,255,.15),transparent);transition:left .5s ease}.generate-summary-button:hover:before{left:100%}.generate-summary-button:hover{border-color:#58a6ff99;box-shadow:0 0 25px #58a6ff4d,0 4px 15px #0000004d,inset 0 1px #ffffff1a;transform:translateY(-3px)}.generate-summary-button.short-summary{background:linear-gradient(135deg,#1a3d2a,#0f2e1c,#091e12)!important;border-color:#23863666!important;box-shadow:0 0 15px #23863626,inset 0 1px #ffffff14}.generate-summary-button.short-summary:hover{border-color:#238636b3!important;box-shadow:0 0 25px #2386364d,0 4px 15px #0000004d,inset 0 1px #ffffff1a!important}.generate-summary-button.retry{background:linear-gradient(135deg,#5c3d1a,#4a2e0f,#3a2009);border-color:#ffa50066;box-shadow:0 0 15px #ffa50026,inset 0 1px #ffffff14}.generate-summary-button.retry:hover{border-color:#ffa500b3;box-shadow:0 0 25px #ffa5004d,0 4px 15px #0000004d,inset 0 1px #ffffff1a}.generate-summary-button svg{width:24px;height:24px;filter:drop-shadow(0 0 4px rgba(88,166,255,.4))}.generate-summary-button.short-summary svg{filter:drop-shadow(0 0 4px rgba(35,134,54,.4))}.summary-result-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.summary-result{flex-grow:1;padding-right:1rem;overflow-y:auto;min-height:0}.markdown-content{line-height:1.7;color:var(--primary-text-color)}.markdown-content h2{font-size:1.25rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.summary-result .markdown-content h2{text-align:center}.markdown-content h3,.markdown-content h4{font-size:19px!important}.markdown-content p{margin-bottom:1rem;color:var(--secondary-text-color);font-size:16px!important}.markdown-content blockquote{border-left:5px solid #cbd5e1!important;background-color:transparent;padding:.25rem 0 .25rem 1.25rem;margin:1.5rem 0;color:var(--secondary-text-color);font-size:16px!important;font-style:normal;border-radius:0;box-shadow:none}.markdown-content blockquote p{margin-bottom:.75rem;font-size:inherit!important}.markdown-content blockquote p:last-child{margin-bottom:0}.markdown-content blockquote ul{margin-top:.75rem;margin-bottom:0}.markdown-content blockquote li{font-size:inherit!important}.summary-result .markdown-content p,.summary-result .markdown-content li{text-align:justify}.markdown-content strong{color:var(--primary-text-color);font-weight:600}.markdown-content ul{list-style-position:inside;padding-left:.5rem;margin-bottom:1rem}.markdown-content li{margin-bottom:.5rem;color:var(--secondary-text-color);font-size:16px!important}.markdown-content table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.99rem;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;table-layout:fixed}.markdown-content th,.markdown-content td{padding:.75rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--border-color);word-wrap:break-word;overflow-wrap:break-word}.markdown-content th{background-color:var(--background-color);font-weight:600}.markdown-content tbody tr:last-child td{border-bottom:none}.markdown-content tbody tr:hover{background-color:var(--table-row-hover-bg)}.markdown-content table td:last-child,.markdown-content table th:last-child{text-align:center}.markdown-content table td:last-child{font-weight:600;color:var(--primary-text-color)}.segment-highlight{background-color:var(--accent-glow-color-20);border-radius:4px;transition:background-color .3s ease-in-out}.summary-chart-wrapper{margin:1.5rem 0}.summary-chart-title{text-align:center;font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--primary-text-color)}.summary-legend{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem;font-size:.8rem;color:var(--secondary-text-color)}.summary-legend-item{display:flex;align-items:flex-start;gap:.5rem}.legend-color-box{width:14px;height:14px;border-radius:3px;flex-shrink:0;margin-top:3px}.legend-text strong{font-weight:600;color:var(--primary-text-color)}.summary-actions{flex-shrink:0;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:.75rem;align-items:center}.summary-action-button{background-color:transparent;border:1px solid var(--border-color);color:var(--secondary-text-color);padding:.5rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s ease}.summary-action-button:hover{color:var(--accent-color);border-color:var(--accent-color)}.summary-action-button:disabled{opacity:.5;cursor:not-allowed}.summary-action-button:disabled:hover{color:var(--secondary-text-color);border-color:var(--border-color)}.summary-action-button svg{width:18px;height:18px}.speech-player-container{display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.speech-player-main{display:flex;align-items:center;gap:.75rem}.speech-player-controls{display:flex;align-items:center;gap:.5rem}.speech-control-button{background:none;border:none;color:var(--secondary-text-color);cursor:pointer;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;transition:all .2s ease}.speech-control-button:hover{background-color:var(--border-color);color:var(--primary-text-color)}.speech-control-button:disabled{opacity:.4;cursor:not-allowed;background-color:transparent}.speech-control-button.play-pause-button{width:40px;height:40px;background-color:var(--accent-color);color:#fff}.speech-control-button.play-pause-button:hover{background-color:color-mix(in srgb,var(--accent-color) 85%,black)}.speech-control-button svg{width:20px;height:20px}.speech-control-button.play-pause-button svg{width:24px;height:24px}.speech-player-progress{flex-grow:1;display:flex;align-items:center;gap:.75rem}.time-display{font-size:.8rem;color:var(--secondary-text-color);font-variant-numeric:tabular-nums;min-width:85px;text-align:center}.progress-bar-wrapper{width:100%}.progress-bar{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:6px;background:linear-gradient(to right,var(--accent-color) 0%,var(--accent-color) var(--progress-percent, 0%),var(--progress-bar-bg) var(--progress-percent, 0%),var(--progress-bar-bg) 100%);border-radius:3px;outline:none;transition:opacity .2s;cursor:pointer}.progress-bar::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;background:var(--accent-color);cursor:pointer;border-radius:50%;border:3px solid var(--card-bg);box-shadow:0 0 2px #00000080;margin-top:-5px}.progress-bar::-moz-range-thumb{width:16px;height:16px;background:var(--accent-color);cursor:pointer;border-radius:50%;border:3px solid var(--card-bg);box-shadow:0 0 2px #00000080}.voice-selector-container{display:flex;align-items:center;gap:.5rem;width:100%;position:relative;z-index:2}.voice-selector-container svg{width:18px;height:18px;color:var(--secondary-text-color);flex-shrink:0}.voice-selector{width:100%;height:32px;background-color:var(--background-color);color:var(--primary-text-color);border:1px solid var(--border-color);border-radius:6px;padding:0 .5rem;font-size:.85rem}.chat-history{flex-grow:1;padding:.5rem 1rem .5rem 0;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;min-height:0}.chat-welcome{margin:auto;text-align:center;color:var(--secondary-text-color);font-size:.9rem;padding:1rem;max-width:400px}.chat-message{display:flex;max-width:85%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.model,.chat-message.error{align-self:flex-start}.chat-bubble{padding:.75rem 1rem;border-radius:18px;position:relative}.chat-message.user .chat-bubble{background-color:var(--accent-color);color:#fff;border-bottom-right-radius:4px}.chat-message.model .chat-bubble{background-color:var(--background-color);border:1px solid var(--border-color);color:var(--primary-text-color);border-bottom-left-radius:4px}.chat-message.error .chat-bubble{background-color:var(--status-critical);color:#fff;border-bottom-left-radius:4px}.markdown-chat-content{line-height:1.6}.chat-message.model .markdown-chat-content{text-align:justify}.markdown-chat-content p:last-child{margin-bottom:0}.markdown-chat-content ul,.markdown-chat-content ol{margin-top:.5rem;margin-bottom:.5rem;padding-left:1.5rem}.markdown-chat-content strong{font-weight:600}.chat-chart-container,.chat-speech-player-container{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.chat-message.user .chat-chart-container,.chat-message.user .chat-speech-player-container{border-top-color:#fff3}.thinking-indicator{display:flex;align-items:center;gap:.75rem}.thinking-animation{display:flex;gap:4px}.thinking-dot{width:8px;height:8px;border-radius:50%;background-color:var(--secondary-text-color);animation:thinking-pulse 1.4s infinite ease-in-out both}.thinking-dot:nth-child(1){animation-delay:-.32s}.thinking-dot:nth-child(2){animation-delay:-.16s}.thinking-text{font-size:.9rem;font-style:italic;color:var(--secondary-text-color)}@keyframes thinking-pulse{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-input-container{flex-shrink:0;padding-top:1rem;margin-top:.5rem;border-top:1px solid var(--border-color)}.chat-input-form{display:flex;gap:.5rem;align-items:center}.chat-input{flex-grow:1;height:44px;padding:0 1rem;border-radius:22px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--primary-text-color);font-size:.95rem;transition:border-color .2s}.chat-input:focus{outline:none;border-color:var(--accent-color)}.chat-send-button,.chat-mic-button{width:44px;height:44px;border-radius:50%;border:1px solid rgba(88,166,255,.25);background:linear-gradient(135deg,#1e3a5f,#0f2847);color:#fff;cursor:pointer;display:grid;place-items:center;transition:all .3s ease;flex-shrink:0;box-shadow:0 0 10px #58a6ff1a}.chat-send-button:hover:not(:disabled){border-color:#58a6ff99;box-shadow:0 0 20px #58a6ff4d;transform:scale(1.1)}.chat-send-button:disabled{background:var(--border-color);border-color:transparent;box-shadow:none;cursor:not-allowed;opacity:.5}.chat-send-button svg{width:22px;height:22px;filter:drop-shadow(0 0 3px rgba(88,166,255,.4))}.chat-mic-button{background:linear-gradient(135deg,#1a2332,#151d28);border-color:#ffffff1a;color:var(--secondary-text-color);box-shadow:none}.chat-mic-button:hover{border-color:#58a6ff66;color:#fff;box-shadow:0 0 15px #58a6ff33}.chat-mic-button.recording{background:linear-gradient(135deg,#5c1a1a,#3d0f0f);border-color:#ff505080;color:#fff;animation:mic-pulse 1.5s infinite;box-shadow:0 0 15px #ff50504d}.chat-mic-button svg{width:20px;height:20px}@keyframes mic-pulse{0%{box-shadow:0 0 0 0 var(--mic-pulse-color)}70%{box-shadow:0 0 0 10px var(--mic-pulse-color-end)}to{box-shadow:0 0 0 0 var(--mic-pulse-color-end)}}.prompt-suggestions-container{margin-bottom:1rem;text-align:center}.prompt-suggestions-title{font-size:.8rem;color:var(--secondary-text-color);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.prompt-buttons-wrapper{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.prompt-suggestion-button{background-color:var(--background-color);border:1px solid var(--border-color);color:var(--primary-text-color);padding:.4rem .75rem;border-radius:16px;font-size:.85rem;cursor:pointer;transition:all .2s;white-space:nowrap}.prompt-suggestion-button:hover{border-color:var(--accent-color);background-color:var(--accent-glow-color-20);color:var(--accent-color)}.stop-generation-button{width:100%;height:44px;border-radius:22px;border:1px solid var(--status-critical);background-color:transparent;color:var(--status-critical);font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .2s}.stop-generation-button:hover{background-color:var(--status-critical);color:#fff}.stop-generation-button svg{width:18px;height:18px}body.light .ai-fullscreen-button{background:linear-gradient(135deg,#dcebffcc,#ebf5ffe6);border-color:#2563eb33;color:#2563eb99;box-shadow:0 0 8px #2563eb0f}body.light .ai-fullscreen-button:hover{border-color:#2563eb80;color:#2563eb;box-shadow:0 0 15px #2563eb26}body.light .ai-fullscreen-button svg{filter:drop-shadow(0 0 2px rgba(37,99,235,.2))}body.light .generate-summary-button{background:linear-gradient(135deg,#2563eb,#1d4ed8,#1e40af);border-color:#2563eb66;box-shadow:0 2px 10px #2563eb33,inset 0 1px #ffffff26}body.light .generate-summary-button:before{background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent)}body.light .generate-summary-button:hover{border-color:#2563ebb3;box-shadow:0 4px 20px #2563eb4d,inset 0 1px #fff3}body.light .generate-summary-button svg{filter:drop-shadow(0 0 3px rgba(255,255,255,.4))}body.light .generate-summary-button.short-summary{background:linear-gradient(135deg,#16a34a,#15803d,#166534)!important;border-color:#16a34a66!important;box-shadow:0 2px 10px #16a34a33,inset 0 1px #ffffff26!important}body.light .generate-summary-button.short-summary:hover{border-color:#16a34ab3!important;box-shadow:0 4px 20px #16a34a4d,inset 0 1px #fff3!important}body.light .generate-summary-button.short-summary svg{filter:drop-shadow(0 0 3px rgba(255,255,255,.4))}body.light .generate-summary-button.retry{background:linear-gradient(135deg,#ea580c,#c2410c,#9a3412);border-color:#ea580c66;box-shadow:0 2px 10px #ea580c33,inset 0 1px #ffffff26}body.light .generate-summary-button.retry:hover{border-color:#ea580cb3;box-shadow:0 4px 20px #ea580c4d,inset 0 1px #fff3}body.light .chat-send-button,body.light .chat-mic-button{border-color:#2563eb40;background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 8px #2563eb26}body.light .chat-send-button:hover:not(:disabled){border-color:#2563eb99;box-shadow:0 4px 15px #2563eb40}body.light .chat-send-button:disabled{background:#e5e7eb;border-color:transparent;box-shadow:none}body.light .chat-send-button svg{filter:drop-shadow(0 0 2px rgba(255,255,255,.4))}body.light .chat-mic-button{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border-color:#2563eb26;color:#64748b;box-shadow:none}body.light .chat-mic-button:hover{border-color:#2563eb66;color:#2563eb;box-shadow:0 0 10px #2563eb1f}body.light .chat-mic-button.recording{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#ef444480;color:#fff;box-shadow:0 0 12px #ef44444d}body.light .chat-mode-switch{background:linear-gradient(135deg,#f1f5f9e6,#e2e8f0f2);border-color:#2563eb26;box-shadow:0 1px 4px #2563eb0f,inset 0 1px #fff9}body.light .chat-mode-button{color:#64748b}body.light .chat-mode-button:hover:not(.active){color:#2563eb;border-color:#2563eb33;background:#2563eb0f}body.light .chat-mode-button.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-color:#2563eb80;box-shadow:0 2px 8px #2563eb40}.chat-export-button{position:absolute;top:.5rem;right:.5rem;background-color:var(--chat-export-btn-bg);border:1px solid var(--border-color);color:var(--secondary-text-color);width:32px;height:32px;border-radius:8px;display:grid;place-items:center;cursor:pointer;transition:all .2s;z-index:10}.chat-export-button:hover{color:var(--accent-color);border-color:var(--accent-color)}.chat-export-button svg{width:18px;height:18px}.chat-mode-switch{display:flex;background:linear-gradient(135deg,#0f1928cc,#0a121ee6);padding:4px;border-radius:25px;gap:4px;border:1px solid rgba(88,166,255,.15);box-shadow:0 0 10px #58a6ff0d,inset 0 1px #ffffff0a}.chat-mode-button{padding:6px 16px;border-radius:20px;border:1px solid transparent;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:transparent;color:var(--secondary-text-color);position:relative}.chat-mode-button:hover:not(.active){color:#fff;border-color:#58a6ff33;background:#58a6ff14}.chat-mode-button.active{background:linear-gradient(135deg,#1e3a5f,#0f2847);color:#fff;border-color:#58a6ff66;box-shadow:0 0 12px #58a6ff33,0 2px 8px #0000004d}.app-loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at center,#1a2332,#0d1117);z-index:9999;overflow:hidden}.liquid-loader-container{display:flex;flex-direction:column;align-items:center;gap:3rem;position:relative;z-index:2}.liquid-loader{position:relative;width:140px;height:140px}.liquid-loader .blob{position:absolute;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 35% 35%,#7ec8ff,#58a6ff 40%,#1f6feb 80%);animation:morph 3s ease-in-out infinite,pulse-glow 2s ease-in-out infinite;filter:blur(.5px);box-shadow:0 0 40px #58a6ff66}.liquid-loader .ring{position:absolute;top:-15px;right:-15px;bottom:-15px;left:-15px;border-radius:50%;border:2px solid rgba(88,166,255,.2);animation:ring-expand 3s ease-out infinite}.liquid-loader .ring:nth-child(2){top:-30px;right:-30px;bottom:-30px;left:-30px;animation-delay:1s;border-color:#58a6ff1a}.liquid-loader .ring:nth-child(3){top:-45px;right:-45px;bottom:-45px;left:-45px;animation-delay:2s;border-color:#58a6ff0d}@keyframes morph{0%,to{border-radius:42% 58% 70% 30%/45% 45% 55% 55%;transform:scale(1) rotate(0)}34%{border-radius:70% 30% 46% 54%/30% 29% 71% 70%;transform:scale(1.05) rotate(120deg)}67%{border-radius:100% 60% 60% 100%/100% 100% 60% 60%;transform:scale(.9) rotate(240deg)}}@keyframes pulse-glow{0%,to{transform:scale(1);filter:brightness(1);box-shadow:0 0 40px #58a6ff66}50%{transform:scale(1.05);filter:brightness(1.2);box-shadow:0 0 60px #58a6ff99}}@keyframes ring-expand{0%{transform:scale(.8);opacity:0}50%{opacity:.5}to{transform:scale(1.5);opacity:0}}.loading-text-container{text-align:center}.loading-text-container .main-text{font-size:1.4rem;font-weight:600;color:#fff;letter-spacing:1px;margin-bottom:.5rem;text-shadow:0 2px 10px rgba(0,0,0,.5)}.loading-text-container .sub-text{font-size:.95rem;font-weight:400;color:#8b949e;letter-spacing:2px;text-transform:uppercase}.loader-particles{position:absolute;width:100%;height:100%;z-index:1}.loader-particles span{position:absolute;display:block;width:4px;height:4px;background:#58a6ff;border-radius:50%;opacity:.3;animation:float-up var(--duration) linear infinite;bottom:-10px}@keyframes float-up{0%{transform:translateY(0) scale(1);opacity:0}20%{opacity:.5}80%{opacity:.5}to{transform:translateY(-100vh) scale(0);opacity:0}}.loader-particles span:nth-child(1){left:10%;--duration: 8s;animation-delay:0s}.loader-particles span:nth-child(2){left:25%;--duration: 12s;animation-delay:2s}.loader-particles span:nth-child(3){left:45%;--duration: 10s;animation-delay:1s}.loader-particles span:nth-child(4){left:65%;--duration: 15s;animation-delay:3s}.loader-particles span:nth-child(5){left:85%;--duration: 9s;animation-delay:.5s}.loader-particles span:nth-child(6){left:15%;--duration: 11s;animation-delay:4s}.loader-particles span:nth-child(7){left:35%;--duration: 13s;animation-delay:5s}.loader-particles span:nth-child(8){left:55%;--duration: 14s;animation-delay:6s}.loader-particles span:nth-child(9){left:75%;--duration: 10s;animation-delay:2.5s}.loader-particles span:nth-child(10){left:95%;--duration: 12s;animation-delay:1.5s}.loader-particles span{position:absolute;width:3px;height:3px;background:var(--accent-glow-color-30);border-radius:50%;animation:float-up linear infinite}.loader-particles span:nth-child(1){left:10%;animation-duration:8s;animation-delay:0s}.loader-particles span:nth-child(2){left:25%;animation-duration:12s;animation-delay:2s;width:2px;height:2px}.loader-particles span:nth-child(3){left:40%;animation-duration:10s;animation-delay:1s}.loader-particles span:nth-child(4){left:60%;animation-duration:9s;animation-delay:3s;width:4px;height:4px}.loader-particles span:nth-child(5){left:75%;animation-duration:11s;animation-delay:.5s}.loader-particles span:nth-child(6){left:90%;animation-duration:7s;animation-delay:4s;width:2px;height:2px}@keyframes float-up{0%{transform:translateY(100vh) scale(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-10vh) scale(1);opacity:0}}body.light .app-loading-screen{background:radial-gradient(circle at center,#f0f4f8,#e2e8f0)}body.light .liquid-loader .blob{background:radial-gradient(circle at 35% 35%,#60a5fa,#3b82f6 40%,#1d4ed8 80%);box-shadow:0 0 40px #3b82f659}body.light .liquid-loader .ring{border-color:#3b82f633}body.light .liquid-loader .ring:nth-child(2){border-color:#3b82f61f}body.light .liquid-loader .ring:nth-child(3){border-color:#3b82f60f}body.light .loading-text-container .main-text{color:#1e293b;text-shadow:0 1px 4px rgba(255,255,255,.6)}body.light .loading-text-container .sub-text{color:#64748b}body.light .loader-particles span{background:#3b82f659}.error-container{background-color:#f851491a;border:1px solid var(--status-critical);color:var(--status-critical);padding:2rem;border-radius:12px;text-align:center;max-width:600px;margin:2rem auto}body.pdf-export-active .recharts-responsive-container{overflow:visible!important}.pdf-only-table{display:none;margin-top:2rem}body.light .pdf-only-table{color:#1f2328}.pdf-only-table table{border:1px solid #d0d7de;width:100%;border-collapse:collapse}.pdf-only-table th,.pdf-only-table td{border:1px solid #d0d7de;padding:8px;font-size:10pt}.pdf-only-table th{background-color:#f6f8fa}.lazy-loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1.5rem}.lazy-spinner-ring{display:inline-block;position:relative;width:48px;height:48px}.lazy-spinner-ring div{box-sizing:border-box;display:block;position:absolute;width:40px;height:40px;margin:4px;border:3px solid var(--accent-color);border-radius:50%;animation:lazy-spin 1.2s cubic-bezier(.5,0,.5,1) infinite;border-color:var(--accent-color) transparent transparent transparent}.lazy-spinner-ring div:nth-child(1){animation-delay:-.45s}.lazy-spinner-ring div:nth-child(2){animation-delay:-.3s}.lazy-spinner-ring div:nth-child(3){animation-delay:-.15s}@keyframes lazy-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lazy-spinner-text{color:var(--secondary-text-color);font-size:.95rem;font-weight:500;margin:0;letter-spacing:.02em}.kpi-card-link.active .kpi-card:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:2px solid var(--accent-color);border-radius:12px;pointer-events:none;animation:pulse-active-kpi 2s infinite}@keyframes pulse-active-kpi{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.project-group{scroll-margin-top:100px}@keyframes pulse-update{0%{box-shadow:0 0 0 0 var(--accent-glow-color-30)}50%{box-shadow:0 0 0 8px var(--accent-glow-color-0)}to{box-shadow:0 0 0 0 var(--accent-glow-color-0)}}.pulsing-update{animation:pulse-update 2s 3}.detail-view{min-height:520px;background-image:linear-gradient(135deg,var(--card-bg) 0%,color-mix(in srgb,var(--card-bg) 95%,white) 100%)}.card-actions-top{position:absolute;top:.75rem;right:.75rem;display:flex;gap:.5rem;z-index:20}.card-action-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--secondary-text-color);display:grid;place-items:center;cursor:pointer;transition:all .2s ease}.card-action-btn:hover{color:#fff;transform:translateY(-2px)}.card-action-btn.edit:hover{background-color:var(--status-warning);border-color:var(--status-warning)}.card-action-btn.close:hover{background-color:var(--status-critical);border-color:var(--status-critical)}.card-action-btn svg{width:18px;height:18px}.detail-section-group{display:flex;flex-direction:column;gap:1rem}.special-field{background-color:#00000026;padding:.75rem;border-radius:8px;border-left:3px solid var(--border-color)}.special-field label{font-size:.65rem;text-transform:uppercase;font-weight:700;color:var(--secondary-text-color);display:block;margin-bottom:.25rem}.special-field p{font-size:.85rem;color:var(--primary-text-color);line-height:1.4;text-align:justify}.special-field.strategic{border-left-color:var(--accent-color)}.special-field.critical{border-left-color:var(--status-critical)}.special-field.warning{border-left-color:var(--status-warning)}.special-info-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.special-field.mini{padding:.5rem .75rem}.special-field.mini p{font-weight:600;font-size:.8rem}.project-card.detail-view .project-card-body{display:flex;flex-direction:column;align-items:stretch;gap:1rem}.project-card.detail-view .project-card-footer{border-top:none;padding-top:0}.status-badge-container{max-width:100%;overflow:hidden;position:relative;white-space:nowrap}.marquee-mode .marquee-content{display:inline-block;padding-left:100%;animation:bidding-marquee 15s linear infinite}@keyframes bidding-marquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.bidding-card.flat-view{min-height:auto}.estimated-mode-card{border-top:4px solid var(--status-warning);box-shadow:0 10px 20px #0006}.estimated-mode-card:hover{border-top-color:var(--accent-color)}.directorate-ranking-container{padding:1.5rem;background-color:var(--card-bg);border-radius:16px;border:1px solid var(--border-color)}.recharts-wrapper,.recharts-surface,.recharts-responsive-container{outline:none!important}@media (max-width: 992px){.app-container,.app-layout{position:relative;overflow:visible}.sidebar{position:fixed;top:0;left:0;height:100vh;transform:translate(-100%)}.app-container:not(.sidebar-collapsed) .sidebar,.app-layout:not(.sidebar-collapsed) .sidebar{transform:translate(0);width:85%;max-width:380px;padding:1.5rem;overflow-y:auto;font-size:1.05em}.app-container:not(.sidebar-collapsed) .sidebar .logo-text h1,.app-layout:not(.sidebar-collapsed) .sidebar .logo-text h1{font-size:1.3rem}.app-container:not(.sidebar-collapsed) .sidebar .logo-text h2,.app-layout:not(.sidebar-collapsed) .sidebar .logo-text h2{font-size:.75rem}.app-container:not(.sidebar-collapsed) .sidebar .kpi-card,.app-layout:not(.sidebar-collapsed) .sidebar .kpi-card{padding:1rem;min-height:70px}.app-container:not(.sidebar-collapsed) .sidebar .kpi-info h2,.app-layout:not(.sidebar-collapsed) .sidebar .kpi-info h2{font-size:.75rem}.app-container:not(.sidebar-collapsed) .sidebar .kpi-info p,.app-layout:not(.sidebar-collapsed) .sidebar .kpi-info p{font-size:1.1rem;font-weight:600}.app-container:not(.sidebar-collapsed) .sidebar .kpi-icon,.app-layout:not(.sidebar-collapsed) .sidebar .kpi-icon{width:44px;height:44px}.app-container:not(.sidebar-collapsed) .sidebar .kpi-icon svg,.app-layout:not(.sidebar-collapsed) .sidebar .kpi-icon svg{width:24px;height:24px}.app-container:not(.sidebar-collapsed) .sidebar .budget-progress-container h3,.app-layout:not(.sidebar-collapsed) .sidebar .budget-progress-container h3{font-size:.9rem}.app-container:not(.sidebar-collapsed) .sidebar .budget-progress-container span,.app-layout:not(.sidebar-collapsed) .sidebar .budget-progress-container span{font-size:.9rem}.app-container:not(.sidebar-collapsed) .sidebar .chart-header h3,.app-layout:not(.sidebar-collapsed) .sidebar .chart-header h3{font-size:1rem}.app-container:not(.sidebar-collapsed) .sidebar .internal-system-button,.app-layout:not(.sidebar-collapsed) .sidebar .internal-system-button{font-size:.95rem;padding:.8rem 1rem}.app-container:not(.sidebar-collapsed) .sidebar .ai-chat-button,.app-layout:not(.sidebar-collapsed) .sidebar .ai-chat-button{font-size:.95rem;padding:.8rem 1rem}.sidebar-overlay-mobile{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;z-index:10000;cursor:pointer;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar-close-mobile{display:block!important;position:absolute;top:1rem;right:1rem;width:32px;height:32px;border-radius:8px;border:1px solid var(--border-color);background-color:var(--background-color);color:var(--secondary-text-color);display:grid;place-items:center;cursor:pointer;transition:all .2s ease;z-index:10}.sidebar-close-mobile:hover{background-color:var(--status-critical);border-color:var(--status-critical);color:#fff}.sidebar-close-mobile svg{width:20px;height:20px}.main-content{padding:1rem}.app-header{padding:.75rem 1rem}.sidebar-toggle-button .mobile-icon{display:block!important}.sidebar-toggle-button .desktop-icon{display:none!important}.kpi-card{padding:.75rem}.kpi-info h2{font-size:.65rem}.kpi-info p{font-size:.9rem}.chart-container,.project-card{padding:1rem}.project-card-header h3{font-size:.9rem}.contracts-table-container,.biddings-table-container{overflow-x:auto}.sidebar-footer{padding-top:1rem}.search-input-wrapper{max-width:none}.header-secondary-controls{gap:.5rem;position:relative}.search-container{background:transparent;border:none;padding:0;width:auto;position:static}.search-icon-button{background:transparent;border:1px solid var(--border-color);border-radius:50%;color:var(--secondary-text-color);padding:0;cursor:pointer;pointer-events:auto;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:var(--card-bg)}.search-icon-button svg{width:18px;height:18px}.search-input{display:none;position:absolute;left:0;top:calc(100% + 10px);transform:none;width:250px;z-index:100;background-color:var(--card-bg);border:1px solid var(--accent-color);box-shadow:0 4px 15px #0000004d;padding-left:1rem;height:40px;border-radius:20px}.search-container.mobile-expanded .search-input{display:block;animation:slideInRight .2s ease-out}@keyframes slideInRight{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.app-header .ai-button-long-text,.app-header .ai-button-short-text{display:none!important}.ai-chat-button{padding:0;min-width:36px;width:36px;height:36px;border-radius:50%;justify-content:center}.ai-chat-button svg{margin:0;width:20px;height:20px}.ai-chat-button .chevron-icon{display:none}.sidebar .ai-button-long-text{display:inline!important}.sort-container,.auto-refresh-timer,.hide-on-mobile{display:none!important}.action-button{padding:.5rem;min-width:36px;min-height:36px}.ai-chat-button{padding:.5rem;min-width:36px}.ai-button-with-tooltip-wrapper{gap:.35rem}.ai-button-tooltip-container .help-icon{width:20px;height:20px}.ai-button-tooltip-container .help-icon svg{width:14px;height:14px}.ai-button-help-tooltip{width:calc(100vw - 40px);max-width:280px;right:auto;left:50%;transform:translate(-50%) translateY(10px)}.ai-button-tooltip-container:hover .ai-button-help-tooltip,.ai-button-tooltip-container .help-icon:focus+.ai-button-help-tooltip{transform:translate(-50%) translateY(0)}.ai-button-help-tooltip:after{left:50%;right:auto;margin-left:-5px}}.sidebar-sort-container{display:flex;align-items:center;gap:.75rem;background-color:var(--card-bg);padding:1rem;border-radius:12px;border:1px solid var(--border-color);transition:opacity .4s ease,transform .4s cubic-bezier(.4,0,.2,1)}.sidebar-sort-container label{font-size:.85rem;font-weight:500;color:var(--secondary-text-color);white-space:nowrap}.sidebar-sort-container .sort-select{flex:1;min-width:0}.updates-header-with-tooltip{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.updates-header-with-tooltip .updates-header{margin:0}.updates-tooltip-container{position:relative;display:flex;align-items:center;flex-shrink:0}.updates-tooltip-container .help-icon{width:20px;height:20px;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:50%;display:grid;place-items:center;cursor:help;transition:all .2s ease}.updates-tooltip-container .help-icon svg{width:14px;height:14px;color:var(--secondary-text-color);transition:color .2s ease}.updates-tooltip-container:hover .help-icon,.updates-tooltip-container .help-icon:focus{border-color:var(--accent-color);background-color:var(--accent-glow-color-20);transform:scale(1.1);box-shadow:0 0 8px var(--accent-glow-color-30);outline:none}.updates-tooltip-container:hover .help-icon svg,.updates-tooltip-container .help-icon:focus svg{color:var(--accent-color)}.updates-help-tooltip{visibility:hidden;opacity:0;width:280px;background-color:var(--background-color);color:var(--primary-text-color);text-align:left;border-radius:8px;padding:1rem;position:absolute;bottom:calc(100% + 12px);right:0;transform:translateY(10px);transition:opacity .3s,visibility .3s,transform .3s ease-out;border:1px solid var(--accent-color);box-shadow:0 8px 20px #0006;z-index:650;font-size:.9rem;line-height:1.5;pointer-events:none}.updates-tooltip-container:hover .updates-help-tooltip,.updates-tooltip-container .help-icon:focus+.updates-help-tooltip{visibility:visible;opacity:1;transform:translateY(0)}.updates-help-tooltip:after{content:"";position:absolute;top:100%;right:8px;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--accent-color) transparent transparent transparent}.page-controls{display:flex;align-items:center;gap:.75rem;width:100%;position:relative}.header-secondary-controls{margin-right:auto}.header-actions{margin-left:auto;display:flex;justify-content:flex-end;flex-grow:1}@media (max-width: 960px){.add-item-button{display:none!important}.header-actions>.action-button{display:none!important}.header-actions>.fullscreen-button{display:flex!important}.header-actions>.theme-button{display:flex!important}.user-dropdown-container{display:flex!important;border-left:none;padding-left:0;margin-left:0}.user-avatar-btn{width:34px;height:34px}.user-avatar-status-dot{width:8px;height:8px;bottom:0;right:0}.header-actions{margin-left:auto;flex-shrink:0;gap:.5rem;max-width:none}.page-controls>.ai-chat-button{width:44px;height:44px;border-radius:22px;z-index:10;box-shadow:0 0 20px var(--accent-glow-color-60);display:flex;align-items:center;justify-content:center;background-color:var(--card-bg);border:1px solid var(--accent-color);padding:0}.page-controls>.ai-chat-button svg{width:24px;height:24px}.page-controls{flex-wrap:nowrap;justify-content:space-between;min-height:48px;position:relative}.header-secondary-controls{margin-right:auto;flex-shrink:0;max-width:none}.user-dropdown-modern{width:280px;right:-8px}}@media (max-width: 576px){.sidebar-collapsed .sidebar{width:100%;max-width:100%}.main-content{padding:.75rem}.kpi-card{padding:.5rem;gap:.5rem}.kpi-icon{width:32px;height:32px}.kpi-icon svg{width:18px;height:18px}.kpi-info h2{font-size:.6rem}.kpi-info p{font-size:.85rem}.app-header{padding:.5rem .75rem}.app-header h1{font-size:1rem}.action-button{padding:.5rem .75rem;font-size:.8rem}.project-stats-grid{gap:.5rem}.stat-item{padding:.5rem}.modal-content{width:100%!important;max-width:100%!important;height:100vh!important;max-height:100vh!important;border-radius:0!important}}.tooltip-portal{position:fixed;z-index:9999!important;pointer-events:none}.tooltip-content{background-color:var(--card-bg);color:var(--primary-text-color);padding:1rem;border-radius:8px;border:2px solid var(--accent-color);box-shadow:0 8px 20px #000c,0 0 0 1px #58a6ff4d;font-size:.9rem;line-height:1.5;max-width:280px;min-width:200px;width:max-content;white-space:normal;opacity:1!important;visibility:visible!important;animation:tooltipFadeIn .2s ease-out forwards}@keyframes tooltipFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.sidebar-resize-handle{position:absolute;top:0;right:0;width:4px;height:100%;cursor:col-resize;background:transparent;transition:background-color .2s ease;z-index:10}.sidebar-resize-handle:hover,.sidebar-resize-handle.active{background:linear-gradient(to right,transparent,var(--accent-color))}.sidebar-resize-handle:after{content:"";position:absolute;top:50%;right:0;transform:translateY(-50%);width:3px;height:40px;background-color:var(--accent-color);border-radius:2px;opacity:0;transition:opacity .2s ease}.sidebar-resize-handle:hover:after,.sidebar-resize-handle.active:after{opacity:.6}.dynamic-status-bars-container{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;transition:background-color .4s ease,border-color .4s ease}.status-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0;padding:1.25rem .5rem .75rem 1.25rem;background-color:var(--card-bg);border:1px solid var(--border-color);border-bottom:1px solid var(--border-color);border-radius:12px 12px 0 0;transition:background-color .4s ease,border-color .4s ease}.status-section-title{font-size:.75rem;font-weight:600;color:var(--secondary-text-color);letter-spacing:.5px;margin:0;text-transform:uppercase}.ai-button-with-tooltip-wrapper{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:1rem;padding-right:.5rem}.updates-header-with-tooltip{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.updates-container{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem .5rem 1.25rem 1.25rem}.updates-container{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;transition:background-color .4s ease,border-color .4s ease;display:flex;flex-direction:column;gap:1rem}.updates-header-with-tooltip{display:flex;align-items:center;justify-content:space-between;margin-bottom:0;margin-right:-.75rem}.updates-header-with-tooltip .updates-tooltip-container{transform:translateY(-4px)}.updates-header{font-size:.75rem;font-weight:600;color:var(--secondary-text-color);letter-spacing:.5px;margin:0;text-transform:uppercase}.ai-button-tooltip-container,.status-tooltip-container,.updates-tooltip-container{display:flex;align-items:center;justify-content:center;width:24px;height:24px;cursor:pointer;color:var(--secondary-text-color);flex-shrink:0}.help-icon{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.help-icon svg{width:18px;height:18px}.dynamic-status-bars-container{border-radius:0 0 12px 12px!important;border-top:none!important;padding-top:.75rem!important}.dynamic-status-bars-header{display:none}.dynamic-status-bars-header h3{font-size:.75rem;font-weight:600;color:var(--secondary-text-color);letter-spacing:.5px;margin:0;text-transform:uppercase}.status-tooltip-container{position:relative;display:flex;align-items:center;flex-shrink:0}.status-tooltip-container .help-icon{width:20px;height:20px;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:50%;display:grid;place-items:center;cursor:help;transition:all .2s ease}.status-tooltip-container .help-icon svg{width:14px;height:14px;color:var(--secondary-text-color);transition:color .2s ease}.status-tooltip-container:hover .help-icon,.status-tooltip-container .help-icon:focus{border-color:var(--accent-color);background-color:var(--accent-glow-color-20);transform:scale(1.1);box-shadow:0 0 8px var(--accent-glow-color-30);outline:none}.status-tooltip-container:hover .help-icon svg,.status-tooltip-container .help-icon:focus svg{color:var(--accent-color)}.status-bars-list{display:flex;flex-direction:column;gap:.875rem}.status-bar-item{display:grid;grid-template-columns:90px 1fr 35px;align-items:center;gap:.75rem;padding:.25rem 0;transition:opacity .2s ease}.status-bar-item:hover{opacity:.85}.status-bar-label{font-size:.8125rem;font-weight:500;color:var(--primary-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:1;transition:opacity .2s ease-in-out}.status-bar-label.transitioning{opacity:0}.status-bar-wrapper{position:relative;height:20px;background-color:#6b728026;border-radius:6px;overflow:hidden}.status-bar-fill{height:100%;border-radius:6px;transition:width 1.2s cubic-bezier(.4,0,.2,1),background-color .8s ease-in-out;box-shadow:0 1px 3px #0000001a;min-width:2px;will-change:width,background-color}.status-bar-value{font-size:.875rem;font-weight:700;color:var(--primary-text-color);text-align:right;opacity:1;transition:opacity .2s ease-in-out;min-width:25px}.status-bar-value.transitioning{opacity:0}.dynamic-status-bars-container.animate-in{animation:fadeInSlideUp .4s cubic-bezier(.4,0,.2,1) forwards}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.status-filter-badge{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:8px;animation:slideDown .2s ease-out}.status-filter-badge .filter-label{font-size:.75rem;color:var(--primary-text-color);flex:1}.status-filter-badge .filter-label strong{color:var(--accent-color);font-weight:600}.filter-clear-btn{display:flex;align-items:center;justify-content:center;padding:.25rem;background:transparent;border:none;color:var(--secondary-text-color);cursor:pointer;border-radius:4px;transition:all .2s ease}.filter-clear-btn:hover{background:#ffffff1a;color:var(--primary-text-color)}.filter-clear-btn:active{transform:scale(.95)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 350px){.status-bar-item{grid-template-columns:75px 1fr 30px;gap:.5rem}.status-bar-label{font-size:.75rem}.status-bar-value{font-size:.8125rem}}.ai-button-help-tooltip,.updates-help-tooltip{display:none!important}.update-item.project{border-left:3px solid #8b5cf6}.update-item.contract{border-left:3px solid #ec4899}.update-item.bidding{border-left:3px solid #3b82f6}.update-item.user{border-left:3px solid #14B8A6}.update-item.system{border-left:3px solid #6b7280}.update-item.project .surname-highlight{background-color:#8b5cf6;color:#fff}.update-item.contract .surname-highlight{background-color:#ec4899;color:#fff}.update-item.bidding .surname-highlight{background-color:#3b82f6;color:#fff}.update-item.user .surname-highlight{background-color:#14b8a6;color:#fff}.update-item.system .surname-highlight{background-color:#6b7280;color:#fff}.surname-highlight{padding:0 4px;border-radius:4px;margin-left:2px;font-weight:800;display:inline-block}.update-item{transition:background-color .2s ease}.animated-chart-bars-container{display:flex;flex-direction:column;gap:.75rem;padding:1rem 0}.animated-chart-bar-item{display:flex;align-items:center;gap:1rem;padding:.5rem 0;border-radius:6px;transition:background-color .2s ease}.animated-chart-bar-item:hover{background-color:#8080801a}.animated-chart-bar-label{flex:0 0 180px;font-size:.85rem;font-weight:700;color:var(--primary-text-color);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.animated-chart-bar-wrapper{flex:1;height:30px;background-color:#80808026;border-radius:15px;position:relative;overflow:hidden}.animated-chart-bar-fill{height:100%;border-radius:15px;position:relative}.animated-chart-bar-value{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:.8rem;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);white-space:nowrap}@media (max-width: 768px){.animated-chart-bar-label{flex:0 0 120px;font-size:.75rem}.animated-chart-bar-wrapper{height:26px}.animated-chart-bar-value{font-size:.7rem}}.ai-section-container{padding:0 2rem;transition:all .4s ease}@media (max-width: 960px){.ai-section-container.open{height:auto!important;min-height:unset!important;max-height:none!important}.ai-content-wrapper{flex-direction:column!important;height:auto!important}.ai-column{width:100%!important;height:auto!important;min-height:450px!important;border-right:none!important;border-bottom:1px solid var(--border-color)}.ai-column:last-child{border-bottom:none!important}}.markdown-content h1{text-align:center;font-size:1.25rem;font-weight:700;margin-bottom:2rem;color:var(--text-primary);page-break-after:avoid}.markdown-content h2,.markdown-content h3{page-break-after:avoid;margin-top:2rem}.markdown-content ul,.markdown-content p,.markdown-content li{page-break-inside:avoid}.markdown-content li{display:block}.global-filter-reset-container{padding:0 1rem 1.5rem;width:100%}.global-filter-reset-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem;background-color:var(--kpi-red-bg);border:1px solid var(--status-critical);border-radius:12px;color:var(--status-critical);font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s ease;letter-spacing:.02em}.global-filter-reset-button:hover{background-color:var(--status-critical);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #f851494d}.global-filter-reset-button svg{flex-shrink:0}.quadrant-chart-container,.quadrant-chart-container:focus,.quadrant-chart-container:active,.quadrant-chart-container:focus-visible,.recharts-wrapper,.recharts-wrapper:focus,.recharts-wrapper:active,.recharts-wrapper:focus-visible,.recharts-surface,.recharts-surface:focus,.recharts-surface:active,.recharts-surface:focus-visible,.recharts-layer,.recharts-layer:focus,svg.recharts-surface{outline:none!important;box-shadow:none!important;border:none!important;-webkit-tap-highlight-color:transparent!important}.quadrant-chart-container *{outline:none!important}.page-controls{display:flex;align-items:center;width:98%;gap:.75rem;flex-wrap:nowrap}.header-secondary-controls{flex:1 1 0;display:flex;min-width:180px;overflow:visible;position:relative}.search-container{width:100%;min-width:0;flex-shrink:1;position:relative}.search-input{width:100%;min-width:0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ai-chat-button{flex-shrink:0}.header-actions{margin-left:auto;flex-shrink:0;display:flex;gap:.5rem}.stack-info{background-color:var(--card-bg)}.stack-counter:after{content:none!important}body.light .search-input{background-color:#fff!important;border-color:#d0d7de;color:var(--primary-text-color)}body.light .action-button{background-color:#fff;border-color:#d0d7de;color:var(--secondary-text-color)}body.light .action-button:hover{border-color:var(--accent-color);color:var(--accent-color);background-color:#f6f8fa}body.light .ai-chat-button{background-color:#fff;border:1px solid var(--accent-color);box-shadow:0 0 10px var(--accent-glow-color-20);color:var(--accent-color)}body.light .ai-chat-button:hover{box-shadow:0 0 15px var(--accent-glow-color-40);background-color:var(--ai-btn-hover-bg, #EBF2FB)}.system-log-panel:fullscreen{width:100vw!important;height:100vh!important;margin:0!important;border:none!important;border-radius:0!important;padding:2rem!important;background-color:var(--background-color)!important;z-index:9999}.system-log-panel:fullscreen .monitoring-log-container{font-size:1rem!important}.system-log-panel:fullscreen>div:first-child{margin-bottom:2rem!important;scale:1.2;transform-origin:left center}.system-log-panel:fullscreen div[style*="overflow-y: auto"]{font-size:1.1rem!important;line-height:1.6!important}.inline-loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-height:400px;gap:2rem;background:radial-gradient(ellipse at 50% 50%,rgba(88,166,255,.04) 0%,transparent 60%)}.inline-morph-container{display:flex;align-items:center;justify-content:center}.inline-morph-shape{position:relative;width:100px;height:100px}.inline-morph-shape .shape{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#58a6ff26,#7ec8ff14);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(88,166,255,.2);animation:inline-shape-morph 6s ease-in-out infinite,inline-shape-rotate 12s linear infinite;box-shadow:0 0 40px #58a6ff26,inset 0 0 30px #58a6ff0d}.inline-morph-shape .shape:before{content:"";position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;background:radial-gradient(circle,rgba(88,166,255,.1),transparent 70%);animation:inline-glow-breathe 3s ease-in-out infinite;border-radius:inherit}.inline-morph-shape .inner-shape{position:absolute;top:18px;right:18px;bottom:18px;left:18px;background:linear-gradient(225deg,#58a6ff33,#1a6dd414);border:1px solid rgba(88,166,255,.15);animation:inline-shape-morph 6s ease-in-out infinite reverse,inline-shape-rotate 8s linear infinite reverse;box-shadow:0 0 25px #58a6ff1a,inset 0 0 20px #58a6ff0d}.inline-morph-shape .core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:14px;height:14px;background:radial-gradient(circle,#58a6ff,#1a6dd4);border-radius:50%;box-shadow:0 0 15px #58a6ff,0 0 35px #58a6ff66;animation:inline-core-pulse 2s ease-in-out infinite}@keyframes inline-shape-morph{0%,to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}20%{border-radius:50% 50% 20% 80%/25% 80% 20% 75%}40%{border-radius:70% 30% 50% 50%/60% 40%}60%{border-radius:20% 80% 30% 70%/70% 20% 80% 30%}80%{border-radius:40% 60% 60% 40%/50% 60% 40% 50%}}@keyframes inline-shape-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes inline-glow-breathe{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}@keyframes inline-core-pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}.inline-loading-text{text-align:center;animation:inline-text-breathe 3s ease-in-out infinite}.inline-loading-text .main-text{font-size:.95rem;font-weight:400;color:#fff9;letter-spacing:3px;text-transform:uppercase;margin-bottom:.5rem}.inline-loading-text .sub-text{font-size:.75rem;font-weight:300;color:#8b949e80;letter-spacing:2px;text-transform:uppercase}@keyframes inline-text-breathe{0%,to{opacity:.5}50%{opacity:1}}.save-neon-loader{position:relative;width:100px;height:100px;margin:0 auto 1.5rem}.save-neon-loader .save-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:3px solid transparent}.save-neon-loader .save-ring-outer{border-top-color:#58a6ff;border-right-color:#58a6ff;animation:save-spin-cw 1.8s linear infinite;filter:drop-shadow(0 0 8px rgba(88,166,255,.6)) drop-shadow(0 0 20px rgba(88,166,255,.3))}.save-neon-loader .save-ring-inner{top:14px;right:14px;bottom:14px;left:14px;border-bottom-color:#7ec8ff;border-left-color:#7ec8ff;animation:save-spin-ccw 1.2s linear infinite;filter:drop-shadow(0 0 6px rgba(126,200,255,.5)) drop-shadow(0 0 15px rgba(126,200,255,.2))}.save-neon-loader .save-ring-core{top:28px;right:28px;bottom:28px;left:28px;border-top-color:#1a6dd4;border-left-color:#1a6dd4;animation:save-spin-cw .9s linear infinite;filter:drop-shadow(0 0 4px rgba(26,109,212,.5))}.save-neon-loader .save-center-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background:#58a6ff;border-radius:50%;box-shadow:0 0 10px #58a6ff,0 0 25px #58a6ff80,0 0 50px #58a6ff33;animation:save-dot-pulse 1.5s ease-in-out infinite}@keyframes save-spin-cw{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes save-spin-ccw{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes save-dot-pulse{0%,to{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 10px #58a6ff,0 0 25px #58a6ff80}50%{transform:translate(-50%,-50%) scale(1.3);box-shadow:0 0 20px #58a6ff,0 0 40px #58a6ff99,0 0 60px #58a6ff4d}}@keyframes save-neon-text-pulse{0%,to{opacity:.8;text-shadow:0 0 10px rgba(88,166,255,.4)}50%{opacity:1;text-shadow:0 0 20px rgba(88,166,255,.7),0 0 40px rgba(88,166,255,.3)}}.project-group.expand-ripple>.group-cards-wrapper>*:not(.group-collapse-button),.contract-group.expand-ripple>.group-cards-wrapper>*:not(.group-collapse-button){transform-origin:left center;animation:rippleUnfold .9s cubic-bezier(.22,1,.36,1) both}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(1){animation-delay:0ms}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(2){animation-delay:.15s}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(3){animation-delay:.3s}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(4){animation-delay:.45s}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(5){animation-delay:.6s}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(6){animation-delay:.75s}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(7){animation-delay:.9s}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(8){animation-delay:1.05s}.project-group.expand-ripple>.group-cards-wrapper>*:nth-child(n+9){animation-delay:1.2s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(1){animation-delay:0ms}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(2){animation-delay:.15s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(3){animation-delay:.3s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(4){animation-delay:.45s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(5){animation-delay:.6s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(6){animation-delay:.75s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(7){animation-delay:.9s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(8){animation-delay:1.05s}.contract-group.expand-ripple>.group-cards-wrapper>*:nth-child(n+9){animation-delay:1.2s}@keyframes rippleUnfold{0%{transform:translateY(25px) translate(-40px) scale(.92) rotate(-4deg)}65%{transform:translateY(-3px) translate(3px) scale(1.015) rotate(.5deg)}to{transform:translateY(0) translate(0) scale(1) rotate(0)}}.project-group.collapse-pulse,.contract-group.collapse-pulse{animation:collapse-pulse-glow 1.5s ease-in-out 3}@keyframes collapse-pulse-glow{0%,to{box-shadow:0 0 0 0 var(--accent-glow-color-0);transform:scale(1)}50%{box-shadow:0 0 18px 4px var(--accent-glow-color-30);transform:scale(1.008)}}.project-group.collapse-domino,.contract-group.collapse-domino{animation:dominoSettlePop .35s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes dominoSettlePop{0%{transform:scale(.92);opacity:.6}60%{transform:scale(1.04);opacity:1}to{transform:scale(1);opacity:1}}body.light .inline-loading-screen{background:radial-gradient(ellipse at 50% 50%,rgba(37,99,235,.06) 0%,transparent 60%)}body.light .inline-morph-shape .shape{background:linear-gradient(135deg,#2563eb1f,#3b82f60f);border:1px solid rgba(37,99,235,.2);box-shadow:0 0 40px #2563eb1f,inset 0 0 30px #2563eb0a}body.light .inline-morph-shape .shape:before{background:radial-gradient(circle,rgba(37,99,235,.08),transparent 70%)}body.light .inline-morph-shape .inner-shape{background:linear-gradient(225deg,#2563eb26,#1e40af0f);border:1px solid rgba(37,99,235,.12);box-shadow:0 0 25px #2563eb14,inset 0 0 20px #2563eb0a}body.light .inline-morph-shape .core{background:radial-gradient(circle,#3b82f6,#1e40af);box-shadow:0 0 15px #3b82f6,0 0 35px #3b82f659}body.light .inline-loading-text .main-text{color:#1e293ba6}body.light .inline-loading-text .sub-text{color:#64748b99}.show-on-small{display:none}.hide-on-small{display:inline}@media (max-width: 1200px){.show-on-small{display:inline}.hide-on-small{display:none}}.countdown-safe{color:var(--status-safe, #10b981)!important}.countdown-warning{color:var(--status-warning, #f59e0b)!important}.countdown-critical{color:#f97316!important}.countdown-overdue{color:#ef4444!important}.countdown-unknown{color:var(--secondary-text-color)!important}.global-subheader-shortcuts-wrapper{position:sticky!important;top:0!important;z-index:100!important;background:var(--bg-primary, #080a0f)!important;padding-top:1rem!important;margin-top:-1rem!important;padding-bottom:.125rem!important}.ge-subheader-tabs-row{display:flex;flex-direction:row;align-items:center;gap:.375rem;flex-wrap:wrap;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .08));padding-bottom:.375rem;margin-bottom:0;width:100%}body.light .ge-subheader-tabs-row{border-bottom:1px solid rgba(0,0,0,.08)}@media (max-width: 768px){.ge-subheader-tabs-row{flex-direction:column;align-items:stretch;gap:.75rem}}.ge-shortcuts-inline{display:flex;align-items:center;gap:.375rem;flex-wrap:wrap}.ge-shortcut-icon{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;flex-shrink:0}.ge-shortcut-icon svg{width:100%;height:100%;display:block}.ge-shortcut-item{display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;font-size:.75rem;font-weight:500;border-radius:6px;color:var(--secondary-text-color, #94a3b8);background:#ffffff05;border:1px solid var(--border-color, rgba(255, 255, 255, .04));text-decoration:none;transition:all .2s ease}.ge-shortcut-item:hover{color:var(--primary-text-color, #fff);background:#ffffff0f;border-color:#ffffff1a;transform:translateY(-1px)}body.light .ge-shortcut-item{background:#00000004;border-color:#0000000f;color:#475569}body.light .ge-shortcut-item:hover{color:#0f172a;background:#0000000a;border-color:#0000001f}@media (max-width: 768px){.ge-shortcuts-inline{width:100%;justify-content:center;margin-top:.25rem}}.ge-active-dot{width:6px;height:6px;border-radius:50%;background-color:var(--dot-color, var(--accent-color, #10b981));margin-left:.3rem;display:inline-block;animation:ge-dot-pulse-anim 1.8s infinite cubic-bezier(.4,0,.2,1)}@keyframes ge-dot-pulse-anim{0%{box-shadow:0 0 0 0 var(--dot-color-glow, rgba(16, 185, 129, .5));transform:scale(.92)}60%{box-shadow:0 0 0 8px var(--dot-color-glow-fade, rgba(16, 185, 129, 0));transform:scale(1.1)}to{box-shadow:0 0 0 0 var(--dot-color-glow-fade, rgba(16, 185, 129, 0));transform:scale(.92)}}.pdh-section{position:sticky!important;top:0!important;z-index:99!important;background:var(--bg-primary, #080a0f)!important;margin-left:-1rem!important;margin-right:-1rem!important;padding:.5rem 1rem!important;margin-top:0!important;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .08))!important}.contracts-page-container .contracts-kpi-grid{position:sticky!important;top:-1.5rem!important;z-index:99!important;background:var(--bg-primary, #080a0f)!important;padding-top:1.5rem!important;padding-bottom:.5rem!important;margin-top:-1.5rem!important;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .08))!important}.scrollable-content:has(.contracts-page-container){overflow:hidden!important;height:100%!important;min-height:0px!important}.page-content:has(.contracts-page-container){overflow:hidden!important;height:100%!important;min-height:0px!important;padding:0!important;display:flex!important;flex-direction:column!important}.recovery-gate:has(.contracts-page-container){height:100%!important;min-height:0px!important;display:flex!important;flex-direction:column!important;flex:1!important}main.main-content:has(.contracts-page-container){overflow:hidden!important;height:100%!important;min-height:0px!important}.ext-report-container .ext-report-header{position:sticky!important;top:50px!important;z-index:99!important;background:var(--bg-primary, #080a0f)!important;padding-top:.25rem!important;margin-top:-.5rem!important;border-bottom:1px solid var(--border-color, rgba(255, 255, 255, .08))!important}.app-container:not(.sidebar-collapsed) .page-content{padding-top:0!important}.app-container:not(.sidebar-collapsed) .ext-report-container .ext-report-header{top:0!important}.news-bar-isolated{font-family:Inter,sans-serif;z-index:45;padding:0 2rem}@media (max-width: 992px){.news-bar-isolated{z-index:1!important}}body.xray-active .news-bar-isolated,.news-bar-isolated.news-bar--xray-highlight{z-index:var(--layer-xray-highlight)!important;position:fixed!important;top:64px!important;left:var(--sidebar-width, 320px)!important;right:0!important;width:auto!important}.news-bar-header{height:36px;min-height:36px;display:flex!important;align-items:center;background:transparent;padding:0;cursor:pointer;position:relative;overflow:hidden}.news-label-box{background:linear-gradient(135deg,var(--accent-color, #3b82f6) 0%,var(--kpi-blue) 100%);height:100%;display:flex;align-items:center;padding:0 1.5rem 0 1rem;transform:skew(-20deg);margin-left:-20px;position:relative;z-index:10;box-shadow:4px 0 15px #0969da66;border-right:2px solid rgba(255,255,255,.1)}.news-label-content{transform:skew(20deg);display:flex;align-items:center;gap:.5rem;color:#fff;font-weight:800;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.pulsing-dot{width:6px;height:6px;background-color:#fff;border-radius:50%;animation:pulse-white 1.5s infinite}@keyframes pulse-white{0%{box-shadow:0 0 #ffffffb3}70%{box-shadow:0 0 0 6px #fff0}to{box-shadow:0 0 #fff0}}.news-ticker-container{flex:1;height:100%;display:flex;align-items:center;background:linear-gradient(90deg,#161b22f2,#161b22cc);padding-left:2rem;overflow:hidden;position:relative;z-index:1}.news-bar--xray-highlight .news-ticker-container,body.light .news-bar--xray-highlight .news-ticker-container,.news-bar--xray-highlight .news-label-box{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.news-ticker-container:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-color, #3b82f6),transparent);opacity:.5;z-index:2}.news-ticker-track{display:flex;align-items:center;gap:2rem;white-space:nowrap;animation:marquee 150s linear infinite;padding-right:3rem}.news-ticker-track:hover{animation-play-state:paused}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.news-ticker-item{display:flex;align-items:center;gap:1rem;flex-shrink:0}.news-ticker-text{color:#fff;font-size:.9rem;font-weight:700}body.light .news-ticker-text{color:var(--primary-text-color)}body.light .news-ticker-container{background:linear-gradient(90deg,#fff,#f3f4f6);border-bottom:1px solid rgba(0,0,0,.05)}body.light .news-ticker-container:after{opacity:.3}.news-ticker-date{color:var(--accent-color, #3b82f6);font-family:monospace;font-weight:600;font-size:.85rem;background:var(--accent-glow-color-15);padding:2px 6px;border-radius:4px}.news-bar-toggle{width:48px;height:100%;display:flex;align-items:center;justify-content:center;color:var(--secondary-text-color);background:#0003;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);z-index:10}.news-bar-toggle:hover{background:#ffffff1a;color:#fff}.news-grid-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s cubic-bezier(.16,1,.3,1),opacity .4s ease-out,transform .5s cubic-bezier(.16,1,.3,1),visibility 0s .6s;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.99);transform-origin:top}.news-grid-wrapper.expanded{grid-template-rows:1fr;opacity:1;visibility:visible;transform:translateY(0) scale(1);transition:grid-template-rows .6s cubic-bezier(.16,1,.3,1),opacity .5s ease-out .1s,transform .6s cubic-bezier(.16,1,.3,1),visibility 0s 0s}.news-grid-inner{min-height:0;overflow:hidden}.news-grid{background-color:var(--background-color);padding:1.5rem;display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1rem;max-height:70vh;overflow-y:auto}.news-card{display:flex;flex-direction:row;align-items:start;background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem;gap:1rem;text-decoration:none;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),background-color .3s ease;height:100%}.news-card:hover{transform:translateY(-4px);box-shadow:0 10px 30px #00000026;background-color:var(--table-row-hover-bg)}.news-card-image-container{width:150px;height:100px;flex-shrink:0;overflow:hidden;position:relative;background-color:var(--card-bg);display:flex;align-items:center;justify-content:center;border-right:1px solid var(--border-color)}.news-card-image{width:100%!important;height:100%!important;object-fit:cover!important;display:block}.news-card-content{flex:1;display:flex;flex-direction:column;justify-content:flex-start;gap:.5rem}.news-card-header{display:flex;align-items:center;justify-content:space-between;width:100%}.news-card-date{font-size:.8rem;font-weight:600;color:var(--accent-color, #3b82f6);background:transparent;padding:0}.news-card-icon{color:var(--secondary-text-color);opacity:.7}.news-card-title{color:var(--primary-text-color);font-size:.95rem;font-weight:600;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}body.light .news-card-title{color:var(--accent-color, #3b82f6)}.news-bar--xray-highlight{position:relative;z-index:var(--layer-xray-highlight)!important;background:linear-gradient(0deg,#00aaff40,#00aaff40),var(--card-bg, #1e293b)!important;outline:2px solid rgba(0,170,255,1)!important;outline-offset:0!important;animation:xray-glow-outline 1.5s ease-in-out infinite!important;transition:all .3s cubic-bezier(.34,1.56,.64,1)!important;overflow:visible!important;transform:scale(1.02) translateY(-2px)!important}.news-bar--xray-dim{filter:blur(2px) grayscale(.4)!important;opacity:.35!important;transition:all .3s ease!important;pointer-events:none}@keyframes xray-glow-outline{0%,to{box-shadow:0 0 18px #0afc,0 0 48px #00aaff80,0 0 96px #00aaff4d,inset 0 0 12px #00aaff4d;outline-color:#00aaffe6}50%{box-shadow:0 0 30px #0af,0 0 72px #0af9,0 0 120px #0af6,inset 0 0 18px #0af6;outline-color:#0af}}.news-bar-isolated--portal{position:fixed;top:64px;left:var(--sidebar-width, 320px);right:0;width:auto;z-index:var(--layer-xray-highlight)!important;overflow:visible;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0}.news-bar-isolated--standard{position:sticky;top:0;width:100%;background-color:var(--sidebar-bg);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden}.fpc-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--background-color);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem}.fpc-card{max-width:450px;width:100%}.fpc-subtitle{opacity:.8;font-size:.9rem;margin-top:.5rem}.fpc-input-wrapper{position:relative}.fpc-toggle-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#666}.fpc-strength-meter-container{margin-bottom:1.5rem}.fpc-strength-bar-bg{height:4px;background:#333;border-radius:2px;overflow:hidden}.fpc-strength-bar{height:100%;transition:all .3s ease}.fpc-rules-list{list-style:none;padding:0;margin-top:.75rem;font-size:.8rem}.fpc-rule-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.fpc-error-msg{margin-bottom:1rem}.fpc-success-msg{margin-bottom:1rem;color:#10b981;text-align:center;font-weight:700;padding:10px;background:#10b9811a;border-radius:8px}.fpc-logout-btn{background:none;border:none;color:#666;font-size:.85rem;margin-top:1rem;cursor:pointer;width:100%}.auth-status-modal__backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172abf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.25rem;animation:authModalFadeIn .2s ease-out}@keyframes authModalFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.auth-status-modal__container{position:relative;width:100%;max-width:480px;background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:16px;padding:1.75rem;box-shadow:0 20px 25px -5px #00000080,0 8px 10px -6px #0000004d;color:var(--text-primary, #f8fafc);display:flex;flex-direction:column;gap:1.25rem;overflow:hidden}.auth-status-modal__container .auth-status-modal__btn{box-shadow:none!important;text-shadow:none!important;outline:none!important}.auth-status-modal__close-btn{position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:var(--text-secondary, #94a3b8);font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem .5rem;border-radius:8px;transition:color .15s ease,background-color .15s ease}.auth-status-modal__close-btn:hover{color:var(--text-primary, #f8fafc);background-color:#ffffff14}.auth-status-modal__header{display:flex;justify-content:center;margin-top:.25rem}.auth-status-modal__icon-badge{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background-color:#3b82f61f;color:#3b82f6;border:2px solid rgba(59,130,246,.3)}.auth-status-modal__icon-badge--warning{background-color:#fbbf241f;color:#fbbf24;border-color:#fbbf244d}.auth-status-modal__icon-badge--info{background-color:#3b82f61f;color:#3b82f6;border-color:#3b82f64d}.auth-status-modal__icon-badge--success{background-color:#10b9811f;color:#10b981;border-color:#10b9814d}.auth-status-modal__icon-badge--danger{background-color:#f43f5e1f;color:#f43f5e;border-color:#f43f5e4d}.auth-status-modal__content{display:flex;flex-direction:column;gap:.75rem;text-align:center}.auth-status-modal__title{font-size:1.25rem;font-weight:700;color:var(--text-primary, #f8fafc);margin:0;line-height:1.3}.auth-status-modal__body-text{font-size:.9375rem;line-height:1.5;color:var(--text-secondary, #cbd5e1);display:flex;flex-direction:column;gap:.75rem;text-align:left}.auth-status-modal__email-highlight{color:var(--text-primary, #ffffff);word-break:break-all}.auth-status-modal__subtext{font-size:.875rem;color:var(--text-tertiary, #94a3b8)}.auth-status-modal__callout{display:flex;gap:.75rem;padding:.875rem 1rem;border-radius:10px;font-size:.875rem;line-height:1.45;background:#ffffff0a;border-left:4px solid #3b82f6}.auth-status-modal__callout-icon{font-size:1.25rem;line-height:1;flex-shrink:0}.auth-status-modal__callout--amber{background:#fbbf2414;border-left-color:#fbbf24;color:var(--text-primary, #f8fafc)}.auth-status-modal__callout--green{background:#10b98114;border-left-color:#10b981;color:var(--text-primary, #f8fafc)}.auth-status-modal__callout--blue{background:#3b82f614;border-left-color:#3b82f6;color:var(--text-primary, #f8fafc)}.auth-status-modal__callout strong{display:block;margin-bottom:.25rem;color:var(--text-primary, #ffffff)}.auth-status-modal__callout p{margin:0;color:var(--text-secondary, #cbd5e1)}.auth-status-modal__actions{display:flex;flex-direction:column;gap:.625rem;margin-top:.5rem}.auth-status-modal__btn{width:100%;padding:.75rem 1.25rem;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:background-color .15s ease,opacity .15s ease;border:none;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.auth-status-modal__btn--primary{background-color:#3b82f6;color:#fff}.auth-status-modal__btn--primary:hover{background-color:#2563eb}.auth-status-modal__btn--outlook{background-color:#0078d4;color:#fff}.auth-status-modal__btn--outlook:hover{background-color:#005a9e}.auth-status-modal__btn--secondary{background-color:#ffffff14;color:var(--text-primary, #f8fafc);border:1px solid var(--border-color, rgba(255, 255, 255, .15))}.auth-status-modal__btn--secondary:hover{background-color:#ffffff26}[data-theme=light] .auth-status-modal__container{background:#fff;border-color:#e2e8f0;color:#0f172a;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000000d}[data-theme=light] .auth-status-modal__title{color:#0f172a}[data-theme=light] .auth-status-modal__body-text{color:#334155}[data-theme=light] .auth-status-modal__email-highlight{color:#0f172a}[data-theme=light] .auth-status-modal__subtext{color:#64748b}[data-theme=light] .auth-status-modal__callout--amber{background:#fffbeb;border-left-color:#d97706}[data-theme=light] .auth-status-modal__callout--amber p,[data-theme=light] .auth-status-modal__callout--amber strong{color:#92400e}[data-theme=light] .auth-status-modal__callout--green{background:#f0fdf4;border-left-color:#16a34a}[data-theme=light] .auth-status-modal__callout--green p,[data-theme=light] .auth-status-modal__callout--green strong{color:#166534}[data-theme=light] .auth-status-modal__callout--blue{background:#eff6ff;border-left-color:#2563eb}[data-theme=light] .auth-status-modal__callout--blue p,[data-theme=light] .auth-status-modal__callout--blue strong{color:#1e40af}[data-theme=light] .auth-status-modal__btn--secondary{background-color:#f1f5f9;color:#334155;border-color:#cbd5e1}[data-theme=light] .auth-status-modal__btn--secondary:hover{background-color:#e2e8f0}.mfa-challenge-container{display:flex;flex-direction:column;align-items:center;width:100%;animation:mfaFadeIn .3s cubic-bezier(.16,1,.3,1)}@keyframes mfaFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mfa-challenge-header{text-align:center;margin-bottom:1.5rem}.mfa-icon-shield-wrap{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#3b82f61f;border:1px solid rgba(59,130,246,.35);box-shadow:0 0 16px #3b82f640;margin-bottom:1rem}.mfa-shield-icon{color:#3b82f6}.mfa-challenge-title{font-size:1.25rem;font-weight:700;color:var(--text-primary, #ffffff);margin-bottom:.5rem}.mfa-challenge-desc{font-size:.85rem;color:var(--text-secondary, #94a3b8);line-height:1.4;max-width:320px;margin:0 auto}.mfa-challenge-desc strong{color:var(--text-primary, #ffffff)}.mfa-challenge-form{display:flex;flex-direction:column;width:100%;gap:1.25rem}.mfa-digits-group{display:flex;justify-content:center;gap:8px;margin:.5rem 0}.mfa-digit-input{width:44px;height:54px;text-align:center;font-size:1.5rem;font-weight:700;font-family:monospace;border-radius:8px;background:#0f172a99;border:1.5px solid rgba(148,163,184,.25);color:var(--text-primary, #ffffff);outline:none;transition:all .2s cubic-bezier(.16,1,.3,1)}.mfa-digit-input:focus{border-color:#3b82f6;background:#3b82f614;box-shadow:0 0 12px #3b82f666;transform:scale(1.05)}.mfa-digit-input.filled{border-color:#3b82f680;background:#3b82f60d}.mfa-digit-input.error{border-color:#f43f5e;background:#f43f5e14;box-shadow:0 0 8px #f43f5e4d}.mfa-error-alert{padding:.75rem 1rem;border-radius:8px;background:#f43f5e1f;border:1px solid rgba(244,63,94,.3);color:#f43f5e;font-size:.85rem;text-align:center}.mfa-actions-group{display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.mfa-btn-verify{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:.75rem 1.5rem;border-radius:8px;background:#2563eb;color:#fff;font-size:.95rem;font-weight:600;border:none;cursor:pointer;box-shadow:0 4px 14px #2563eb59;transition:all .2s ease}.mfa-btn-verify:hover:not(:disabled){background:#1d4ed8;box-shadow:0 6px 18px #2563eb80;transform:translateY(-1px)}.mfa-btn-verify:disabled{opacity:.5;cursor:not-allowed}.mfa-btn-cancel{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:.6rem 1rem;background:transparent;border:none;color:var(--text-secondary, #94a3b8);font-size:.85rem;cursor:pointer;transition:color .2s ease}.mfa-btn-cancel:hover:not(:disabled){color:var(--text-primary, #ffffff)}.rpp-subtitle{opacity:.8;font-size:.9rem;margin-top:.5rem}.rpp-success-container{text-align:center;padding:2rem}.rpp-success-icon{color:#10b981;font-size:3rem;margin-bottom:1rem}.rpp-success-title{margin-bottom:1rem}.rpp-success-text{opacity:.8}.rpp-input-wrapper{position:relative}.rpp-input{padding-right:2.5rem}.rpp-btn-toggle-pwd{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:#6b7280;padding:0;display:flex;align-items:center;justify-content:center;transition:color .2s}.rpp-btn-toggle-pwd:hover{color:#9ca3af}.rpp-strength-meter{margin-bottom:1.5rem}.rpp-strength-bg{height:4px;background:#333;border-radius:2px;overflow:hidden}.rpp-strength-list{list-style:none;padding:0;margin-top:.75rem;font-size:.8rem}.rpp-strength-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;transition:color .3s ease}.rpp-strength-item--passed{color:#10b981}.rpp-strength-item--failed{color:#666}.rpp-error-msg{margin-bottom:1rem}.sup-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;width:100vw;background:radial-gradient(circle at center,#1e293b,#0f172a);color:#f8fafc;font-family:Inter,system-ui,-apple-system,sans-serif;padding:2rem;box-sizing:border-box}.sup-card{max-width:500px;width:100%;background:#1e293b73;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:3rem 2.5rem;text-align:center;box-shadow:0 20px 40px #0000004d;box-sizing:border-box}.sup-icon-wrapper{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:20px;background:#f59e0b1a;color:#f59e0b;margin-bottom:2rem}.sup-icon{width:48px;height:48px}.sup-title{font-size:2rem;font-weight:700;margin:0 0 1rem;color:#f8fafc;letter-spacing:-.025em}.sup-description{font-size:1rem;line-height:1.6;color:#94a3b8;margin:0 0 2rem}.sup-error-banner{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#f87171;border-radius:12px;padding:1rem;font-size:.875rem;margin-bottom:1.5rem;text-align:left}.sup-actions{display:flex;flex-direction:column;gap:1rem}.sup-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.875rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none;box-sizing:border-box}.sup-btn--primary{background:linear-gradient(135deg,#f59e0b,#d97706);color:#0f172a;box-shadow:0 4px 12px #f59e0b33}.sup-btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #f59e0b4d}.sup-btn--primary:disabled{opacity:.6;cursor:not-allowed}.sup-footer{margin-top:2rem;font-size:.875rem;color:#475569}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.prod-guard-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;width:100vw;background:radial-gradient(circle at center,#3c0c0c,#0f0505);color:#f8fafc;font-family:Inter,system-ui,-apple-system,sans-serif;padding:2rem;box-sizing:border-box;z-index:20000;position:fixed;top:0;left:0}.prod-guard-card{max-width:550px;width:100%;background:#1e0a0a73;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(239,68,68,.25);border-radius:24px;padding:3rem 2.5rem;text-align:center;box-shadow:0 20px 40px #00000080;box-sizing:border-box}.prod-guard-icon{font-size:3.5rem;margin-bottom:1.5rem}.prod-guard-title{font-size:1.8rem;font-weight:700;margin:0 0 1rem;color:#f87171;letter-spacing:-.025em}.prod-guard-description{font-size:1rem;line-height:1.6;color:#cbd5e1;margin:0 0 1rem}.prod-guard-warning{background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#fca5a5;border-radius:12px;padding:1.2rem;font-size:.9rem;line-height:1.5;margin-bottom:2rem;text-align:left}.prod-guard-actions{display:flex;flex-direction:column;gap:1rem}.prod-guard-btn{display:flex;align-items:center;justify-content:center;width:100%;padding:.875rem 1.5rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none;box-sizing:border-box}.prod-guard-btn--danger{background:linear-gradient(135deg,#ef4444,#b91c1c);color:#fff;box-shadow:0 4px 12px #ef444433}.prod-guard-btn--danger:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ef444459}.prod-guard-btn--secondary{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#e2e8f0}.prod-guard-btn--secondary:hover{background:#ffffff26}.camera-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;padding:1rem;animation:fadeIn .2s ease-out}.camera-modal-card{background:var(--card-bg, #0f172a);border:1.5px solid #3b82f6;border-radius:16px;width:100%;max-width:480px;overflow:hidden;box-shadow:0 20px 50px #00000080,0 0 20px #3b82f640;display:flex;flex-direction:column}.camera-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.1)}.camera-modal-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--primary-text-color, #ffffff)}.camera-header-actions{display:flex;align-items:center;gap:.75rem}.camera-torch-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:6px;background:#fbbf2426;border:1px solid #fbbf24;color:#fbbf24;font-size:.75rem;font-weight:700;cursor:pointer;transition:all .2s ease}.camera-torch-btn.active{background:#fbbf24;color:#0f172a;box-shadow:0 0 10px #fbbf2480}.camera-modal-close{background:none;border:none;color:#94a3b8;font-size:1.2rem;cursor:pointer;transition:color .2s ease}.camera-modal-close:hover{color:#fff}.camera-modal-body{padding:1.25rem;display:flex;justify-content:center;align-items:center;min-height:280px}.camera-preview-container{position:relative;width:100%;height:280px;border-radius:12px;overflow:hidden;background:#000;display:flex;align-items:center;justify-content:center}.camera-video{width:100%;height:100%;object-fit:cover}.camera-viewfinder{position:absolute;width:200px;height:200px;border:2px solid #3b82f6;border-radius:12px;box-shadow:0 0 0 9999px #00000080;overflow:hidden}.laser-line{position:absolute;width:100%;height:2px;background:#60a5fa;box-shadow:0 0 8px #3b82f6;animation:laserScan 2s linear infinite}@keyframes laserScan{0%{top:0%}50%{top:100%}to{top:0%}}.camera-scan-tip-overlay{position:absolute;bottom:.75rem;left:.75rem;right:.75rem;background:#0f172ad9;border:1px solid #3b82f6;color:#60a5fa;padding:.5rem .75rem;border-radius:8px;font-size:.75rem;text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .3s ease-out}.camera-modal-error{text-align:center;padding:1.5rem;color:#f87171}.camera-modal-tip{display:block;font-size:.8rem;color:#94a3b8;margin-top:.75rem}.camera-modal-footer{padding:.875rem 1.25rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:center}.camera-cancel-btn{padding:.5rem 1.5rem;border-radius:8px;background:#1e3a8a66;border:1.5px solid #3b82f6;color:#fff;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s ease}.camera-cancel-btn:hover{background:#3b82f6;color:#fff}.light .camera-modal-card,body.light .camera-modal-card{background:#fff;border-color:#3b82f6}.light .camera-modal-header,body.light .camera-modal-header{border-bottom-color:#e2e8f0}.light .camera-modal-header h3,body.light .camera-modal-header h3{color:#0f172a}.doc-drilldown-modal-box{display:flex;flex-direction:column;overflow:hidden;background:#0b1329!important;border:1.5px solid rgba(59,130,246,.4)!important;box-shadow:0 20px 50px #000000b3,0 0 25px #3b82f633!important}.doc-drilldown-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#0b1329f2;border-bottom:1.5px solid rgba(59,130,246,.3)}.doc-drilldown-header-left{display:flex;align-items:center;gap:10px;flex:1}.doc-drilldown-header-title-wrap{display:flex;align-items:baseline;gap:8px}.doc-drilldown-title{margin:0;font-size:1.05rem;font-weight:800;color:#f8fafc;letter-spacing:.3px}.doc-drilldown-header-badge{font-size:.68rem;border:1px solid currentColor;background:#ffffff0d;padding:2px 8px;border-radius:12px;font-weight:600;text-transform:uppercase}.doc-drilldown-header-center{flex:0 1 auto;display:flex;justify-content:center}.doc-drilldown-period-select{background-color:#1e293b;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#cbd5e1;font-size:.78rem;padding:4px 10px;outline:none;cursor:pointer;transition:all .2s ease}.doc-drilldown-period-select:focus,.doc-drilldown-period-select.filter-active{border-color:#3b82f6;color:#60a5fa;box-shadow:0 0 10px #3b82f659}.doc-drilldown-header-right{display:flex;align-items:center;justify-content:flex-end;flex:1;margin-right:36px!important}.doc-drilldown-toolbar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#0f172ad9;border-bottom:1px solid rgba(255,255,255,.07);gap:16px}.doc-drilldown-search-wrap{position:relative;display:flex;align-items:center;flex:1;max-width:400px}.doc-drilldown-search-icon{position:absolute;left:10px;color:#64748b;pointer-events:none}.doc-drilldown-search{width:100%;background:#1e293b99;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:6px 12px 6px 32px;font-size:.8rem;color:#f8fafc;outline:none;transition:all .2s ease}.doc-drilldown-search:focus{border-color:#3b82f6;box-shadow:0 0 10px #3b82f64d}.doc-drilldown-search-clear{position:absolute;right:8px;background:transparent;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center}.doc-drilldown-sparkline-wrap{display:flex;align-items:center;gap:8px}.doc-drilldown-sparkline-label{font-size:.72rem;color:#94a3b8;font-weight:600}.doc-drilldown-body{padding:14px 20px;overflow-y:auto;flex:1}.doc-drilldown-loading,.doc-drilldown-error,.doc-drilldown-empty{padding:40px;text-align:center;color:#94a3b8;font-size:.88rem}.doc-drilldown-error{color:#f43f5e}.doc-drilldown-spin{animation:docDrillSpin .8s linear infinite}@keyframes docDrillSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.doc-drilldown-table{width:100%;border-collapse:collapse;font-size:.8rem}.doc-drilldown-table th{background:#1e293b99;color:#94a3b8;font-weight:700;text-transform:uppercase;font-size:.7rem;letter-spacing:.4px;padding:8px 10px;border-bottom:1px solid rgba(255,255,255,.1);text-align:left}.doc-drilldown-table td{padding:9px 10px;border-bottom:1px solid rgba(255,255,255,.05);color:#cbd5e1}.doc-drilldown-table tr:hover td{background:#3b82f60f}.doc-drilldown-cell-title{font-weight:600;color:#f8fafc;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-drilldown-cell-checksum code{font-family:monospace;font-size:.72rem;color:#38bdf8;background:#38bdf81a;padding:2px 6px;border-radius:4px}.doc-drilldown-copy-btn{display:inline-flex;align-items:center;gap:5px;background:transparent;border:none;cursor:pointer;padding:2px 4px;border-radius:4px;transition:background .15s ease}.doc-drilldown-copy-btn:hover{background:#38bdf826}.doc-drilldown-copy-btn.copied code{background:#10b98133;color:#34d399}.doc-drilldown-copy-icon{color:#64748b}.doc-drilldown-copy-icon--check{color:#10b981}.doc-drilldown-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:.72rem;font-weight:600}.doc-drilldown-badge--success{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.doc-drilldown-badge--fail{background:#f43f5e26;color:#f43f5e;border:1px solid rgba(244,63,94,.3)}.doc-drilldown-btn-reprint{display:inline-flex;align-items:center;gap:4px;background:#3b82f61f;border:1px solid rgba(59,130,246,.35);color:#60a5fa;padding:3px 8px;border-radius:5px;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .2s ease}.doc-drilldown-btn-reprint:hover:not(:disabled){background:#3b82f640;border-color:#3b82f6;box-shadow:0 0 8px #3b82f659}.doc-drilldown-load-more-wrapper{text-align:center;padding:14px 0}.doc-drilldown-btn-more{display:inline-flex;align-items:center;gap:6px;background:#1e293b99;border:1px solid rgba(255,255,255,.1);color:#cbd5e1;padding:5px 14px;border-radius:6px;font-size:.75rem;cursor:pointer;transition:all .2s ease}.doc-drilldown-btn-more:hover:not(:disabled){background:#3b82f626;border-color:#3b82f659}.doc-drilldown-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 20px 14px;background:#0b1329f2;border-top:1.5px solid rgba(59,130,246,.3)}.doc-drilldown-footer-left{display:flex;align-items:center;justify-content:center;gap:12px}.doc-drilldown-count{font-size:.78rem;color:#94a3b8}.doc-drilldown-count strong{color:#f8fafc}.doc-drilldown-dist-badges{display:flex;align-items:center;gap:6px}.doc-drilldown-dist-badge{font-size:.72rem;font-weight:600;padding:2px 6px;border-radius:4px}.doc-drilldown-dist-badge--ok{background:#10b98126;color:#34d399}.doc-drilldown-dist-badge--fail{background:#f43f5e26;color:#f43f5e}.doc-drilldown-footer-actions{display:flex;align-items:center;justify-content:center;gap:12px}.doc-drilldown-footer-actions .btn-action-cancel{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:7px 18px!important;border-radius:6px!important;font-weight:600!important;font-size:.85rem!important;background:#f43f5e14!important;color:#f43f5e!important;border:1.5px solid #f43f5e!important;cursor:pointer!important;transition:all .2s cubic-bezier(.175,.885,.32,1.275)!important;outline:none!important}.doc-drilldown-footer-actions .btn-action-cancel:hover:not(:disabled){background:#f43f5e38!important;box-shadow:0 0 12px #f43f5e66!important;transform:translateY(-1px)!important}.doc-drilldown-footer-actions .btn-action-reset{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:7px 18px!important;border-radius:6px!important;font-weight:600!important;font-size:.85rem!important;background:#f59e0b14!important;color:#f59e0b!important;border:1.5px solid #f59e0b!important;cursor:pointer!important;transition:all .2s cubic-bezier(.175,.885,.32,1.275)!important;outline:none!important}.doc-drilldown-footer-actions .btn-action-reset:hover:not(:disabled){background:#f59e0b38!important;box-shadow:0 0 12px #f59e0b66!important;transform:translateY(-1px)!important}.doc-drilldown-footer-actions .btn-action-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:7px 18px!important;border-radius:6px!important;font-weight:600!important;font-size:.85rem!important;background:#3b82f626!important;color:#60a5fa!important;border:1.5px solid #3b82f6!important;cursor:pointer!important;transition:all .2s cubic-bezier(.175,.885,.32,1.275)!important;outline:none!important}.doc-drilldown-footer-actions .btn-action-submit:hover:not(:disabled){background:#3b82f64d!important;box-shadow:0 0 14px #3b82f673!important;transform:translateY(-1px)!important}.doc-drilldown-footer-actions button:disabled{opacity:.5!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important}@media (max-width: 820px){.doc-drilldown-footer-left{display:none}}[data-theme=light] .doc-drilldown-modal-box{background:#fff!important;border-color:#cbd5e1!important;box-shadow:0 20px 50px #0003!important}[data-theme=light] .doc-drilldown-header,[data-theme=light] .doc-drilldown-footer{background:#f8fafc;border-color:#e2e8f0}[data-theme=light] .doc-drilldown-title,[data-theme=light] .doc-drilldown-cell-title,[data-theme=light] .doc-drilldown-count strong{color:#0f172a}[data-theme=light] .doc-drilldown-toolbar{background:#f1f5f9}[data-theme=light] .doc-drilldown-search{background:#fff;border-color:#cbd5e1;color:#0f172a}[data-theme=light] .doc-drilldown-table th{background:#f1f5f9;color:#475569}[data-theme=light] .doc-drilldown-table td{color:#334155;border-color:#e2e8f0}.emissoes-analytics-modal-box{display:flex;flex-direction:column;overflow:hidden;background:#0b1329!important;border:1px solid rgba(59,130,246,.4)!important;box-shadow:0 20px 50px #000000b3,0 0 25px #3b82f633!important}.emissoes-modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#0b1329f2;border-bottom:1.5px solid rgba(59,130,246,.3)}.emissoes-header-left{display:flex;align-items:center;gap:10px;flex:1}.emissoes-sparkle-icon{color:#fbbf24;filter:drop-shadow(0 0 6px rgba(251,191,36,.6))}.emissoes-header-title-wrap{display:flex;align-items:baseline;gap:8px}.emissoes-title{margin:0;font-size:1.05rem;font-weight:800;color:#f8fafc;letter-spacing:.3px}.emissoes-header-badge{font-size:.68rem;color:#38bdf8;background:#38bdf81f;border:1px solid rgba(56,189,248,.3);padding:2px 8px;border-radius:12px;font-weight:600;text-transform:uppercase}.emissoes-header-center{flex:0 1 auto;display:flex;justify-content:center}.emissoes-period-select{background-color:#1e293b;border:1px solid rgba(255,255,255,.15);border-radius:6px;color:#cbd5e1;font-size:.78rem;padding:4px 10px;outline:none;cursor:pointer;transition:all .2s ease}.emissoes-period-select:focus,.emissoes-period-select.filter-active{border-color:#3b82f6;color:#60a5fa;box-shadow:0 0 10px #3b82f659}.emissoes-header-right{display:flex;align-items:center;justify-content:flex-end;flex:1;margin-right:36px!important}.emissoes-tabs-bar{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#0f172ad9;border-bottom:1px solid rgba(255,255,255,.07)}.emissoes-tab-btn{display:inline-flex;align-items:center;gap:7px;background:#1e293b80;border:1px solid rgba(255,255,255,.1);color:#94a3b8;padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .22s cubic-bezier(.175,.885,.32,1.275)}.emissoes-tab-btn:hover{background:#3b82f626;color:#f8fafc;border-color:#3b82f666;transform:translateY(-1px)}.emissoes-tab-btn.active{background:#3b82f640;color:#60a5fa;border-color:#3b82f6;box-shadow:0 0 14px #3b82f659}.emissoes-modal-body{padding:16px 20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.emissoes-analytics-loading,.emissoes-analytics-error{padding:50px;text-align:center;color:#94a3b8;display:flex;flex-direction:column;align-items:center;gap:12px}.emissoes-analytics-spin{animation:emissoesSpin .8s linear infinite}@keyframes emissoesSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.emissoes-analytics-kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.emissoes-summary-card{background:#1e293b73;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;display:flex;align-items:center;gap:12px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.emissoes-summary-card:hover{transform:translateY(-2px);border-color:#3b82f666;box-shadow:0 6px 16px #0006}.emissoes-summary-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.emissoes-summary-card--total .emissoes-summary-icon{background:#3b82f626;color:#60a5fa}.emissoes-summary-card--top .emissoes-summary-icon{background:#10b98126;color:#34d399}.emissoes-summary-card--dir .emissoes-summary-icon{background:#f59e0b26;color:#fbbf24}.emissoes-summary-card--forecast .emissoes-summary-icon{background:#9333ea26;color:#c084fc}.emissoes-summary-info{display:flex;flex-direction:column;min-width:0}.emissoes-summary-label{font-size:.68rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.4px;font-weight:700}.emissoes-summary-val{font-size:1.15rem;font-weight:800;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emissoes-summary-val--text{font-size:.95rem}.emissoes-summary-hint{font-size:.68rem;color:#64748b;margin-top:1px}.emissoes-radar-tab-container{display:flex;flex-direction:column;gap:14px}.emissoes-radar-card{background:#0f172a8c;border:1px solid rgba(59,130,246,.25);border-radius:12px;padding:14px 18px 18px;display:flex;flex-direction:column;align-items:center;box-shadow:0 10px 28px #00000059}.emissoes-radar-card-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.emissoes-radar-title{font-size:.85rem;font-weight:800;color:#60a5fa;text-transform:uppercase;letter-spacing:.8px}.emissoes-radar-comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.emissoes-radar-mini-card{background:#1e293b59;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:12px 16px;display:flex;flex-direction:column;gap:8px}.emissoes-radar-mini-header{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:#e2e8f0;text-transform:uppercase;letter-spacing:.4px}.emissoes-radar-mini-list{display:flex;flex-direction:column;gap:6px}.emissoes-radar-mini-item{display:flex;align-items:center;justify-content:space-between;font-size:.78rem;padding:4px 6px;border-radius:6px;background:#ffffff05}.emissoes-radar-mini-item:hover{background:#3b82f614}.emissoes-radar-rank-badge{font-size:.68rem;font-weight:800;color:#38bdf8;background:#38bdf81f;padding:1px 6px;border-radius:4px;min-width:24px;text-align:center}.emissoes-radar-rank-badge--dir{color:#fbbf24;background:#fbbf241f}.emissoes-radar-item-name{flex:1;margin:0 8px;color:#cbd5e1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emissoes-radar-item-val{color:#f8fafc;font-weight:700}.emissoes-tab-panel{background:#1e293b59;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:16px}.emissoes-section-header{margin-bottom:14px;display:flex;justify-content:space-between;align-items:baseline}.emissoes-section-title{margin:0;font-size:.85rem;font-weight:800;color:#e2e8f0;text-transform:uppercase;letter-spacing:.5px}.emissoes-section-subtitle{font-size:.72rem;color:#64748b}.emissoes-modules-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 18px}.emissoes-module-item{display:flex;flex-direction:column;gap:5px}.emissoes-module-item-header{display:flex;align-items:center;justify-content:space-between;font-size:.8rem}.emissoes-module-name-wrap{display:flex;align-items:center;gap:8px;min-width:0}.emissoes-module-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;box-shadow:0 0 6px currentColor}.emissoes-dir-icon-badge{width:28px;height:28px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:1px solid transparent;transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s ease}.emissoes-module-item:hover .emissoes-dir-icon-badge{transform:scale(1.15);box-shadow:0 0 10px currentColor}.emissoes-dir-icon-badge-mini{width:22px;height:22px;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.emissoes-module-name{color:#cbd5e1;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emissoes-module-stats{display:flex;align-items:center;gap:5px;font-size:.78rem}.emissoes-module-count{color:#f8fafc;font-weight:800}.emissoes-module-pages{color:#38bdf8;font-size:.74rem;font-weight:600}.emissoes-module-pct{color:#94a3b8}.emissoes-progress-track{width:100%;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.emissoes-progress-fill{height:100%;border-radius:3px;transition:width .4s ease;box-shadow:0 0 8px currentColor}.emissoes-progress-fill--shift{background:#6366f1}.emissoes-analytics-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.emissoes-analytics-col{background:#1e293b59;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:14px 16px}.emissoes-timeline-list,.emissoes-shifts-list{display:flex;flex-direction:column;gap:8px}.emissoes-timeline-row{display:flex;align-items:center;gap:10px;font-size:.78rem}.emissoes-timeline-date{width:44px;color:#94a3b8;font-weight:600}.emissoes-timeline-bar-wrap{flex:1;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.emissoes-timeline-bar{height:100%;background:#60a5fa;border-radius:3px;transition:width .3s ease;box-shadow:0 0 8px #60a5fa99}.emissoes-timeline-count{color:#f8fafc;font-size:.75rem;min-width:60px;text-align:right}.emissoes-shift-item{display:flex;flex-direction:column;gap:4px}.emissoes-shift-header{display:flex;justify-content:space-between;font-size:.78rem;color:#cbd5e1}.emissoes-shift-count{color:#818cf8}.emissoes-modal-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px 20px 14px;background:#0b1329f2;border-top:1.5px solid rgba(59,130,246,.3)}.emissoes-footer-actions{display:flex;align-items:center;justify-content:center;gap:12px}.emissoes-footer-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.72rem;color:#64748b}.emissoes-shield-icon{color:#10b981;flex-shrink:0}.emissoes-footer-actions .btn-action-cancel{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:7px 18px!important;border-radius:6px!important;font-weight:600!important;font-size:.85rem!important;background:#f43f5e14!important;color:#f43f5e!important;border:1.5px solid #f43f5e!important;cursor:pointer!important;transition:all .2s cubic-bezier(.175,.885,.32,1.275)!important;outline:none!important}.emissoes-footer-actions .btn-action-cancel:hover:not(:disabled){background:#f43f5e38!important;box-shadow:0 0 12px #f43f5e66!important;transform:translateY(-1px)!important}.emissoes-footer-actions .btn-action-reset{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:7px 18px!important;border-radius:6px!important;font-weight:600!important;font-size:.85rem!important;background:#f59e0b14!important;color:#f59e0b!important;border:1.5px solid #f59e0b!important;cursor:pointer!important;transition:all .2s cubic-bezier(.175,.885,.32,1.275)!important;outline:none!important}.emissoes-footer-actions .btn-action-reset:hover:not(:disabled){background:#f59e0b38!important;box-shadow:0 0 12px #f59e0b66!important;transform:translateY(-1px)!important}.emissoes-footer-actions .btn-action-submit{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:7px 18px!important;border-radius:6px!important;font-weight:600!important;font-size:.85rem!important;background:#3b82f626!important;color:#60a5fa!important;border:1.5px solid #3b82f6!important;cursor:pointer!important;transition:all .2s cubic-bezier(.175,.885,.32,1.275)!important;outline:none!important}.emissoes-footer-actions .btn-action-submit:hover:not(:disabled){background:#3b82f64d!important;box-shadow:0 0 14px #3b82f673!important;transform:translateY(-1px)!important}.emissoes-footer-actions button:disabled{opacity:.5!important;cursor:not-allowed!important;transform:none!important;box-shadow:none!important}[data-theme=light] .emissoes-analytics-modal-box{background:#fff!important;border-color:#cbd5e1!important;box-shadow:0 20px 50px #0003!important}[data-theme=light] .emissoes-modal-header,[data-theme=light] .emissoes-modal-footer{background:#f8fafc;border-color:#e2e8f0}[data-theme=light] .emissoes-title,[data-theme=light] .emissoes-summary-val,[data-theme=light] .emissoes-section-title,[data-theme=light] .emissoes-module-count,[data-theme=light] .emissoes-timeline-count{color:#0f172a}[data-theme=light] .emissoes-tabs-bar{background:#f1f5f9}[data-theme=light] .emissoes-tab-btn{background:#e2e8f0;color:#475569}[data-theme=light] .emissoes-tab-btn.active{background:#dbeafe;color:#1d4ed8;border-color:#3b82f6}[data-theme=light] .emissoes-summary-card,[data-theme=light] .emissoes-tab-panel,[data-theme=light] .emissoes-analytics-col,[data-theme=light] .emissoes-radar-card,[data-theme=light] .emissoes-radar-mini-card{background:#f8fafc;border-color:#e2e8f0}[data-theme=light] .emissoes-module-name,[data-theme=light] .emissoes-radar-item-name{color:#334155}[data-theme=light] .emissoes-module-pages{color:#0284c7}[data-theme=light] .emissoes-progress-track,[data-theme=light] .emissoes-timeline-bar-wrap{background:#e2e8f0}.emissoes-module-item--clickable{cursor:pointer;transition:all .22s cubic-bezier(.16,1,.3,1)}.emissoes-module-item--clickable:hover{transform:translateY(-2px);border-color:#38bdf880;background:#1e293bb3;box-shadow:0 4px 12px #00000059,0 0 12px #38bdf833}.emissoes-drilldown-hint{font-size:.72rem;color:#fbbf24;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);padding:3px 8px;border-radius:6px;font-weight:600}.emissoes-btn-csv{background:#10b9811a!important;border-color:#10b98166!important;color:#34d399!important}.emissoes-btn-csv:hover{background:#10b98133!important;border-color:#10b981!important;box-shadow:0 0 12px #10b98159}.emissoes-drilldown-modal-box{border:1px solid rgba(56,189,248,.3)!important;box-shadow:0 20px 45px #000c,0 0 24px #38bdf840!important}.emissoes-drilldown-body{display:flex;flex-direction:column;gap:16px;padding:16px 20px;overflow-y:auto}.emissoes-drilldown-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.emissoes-drilldown-kpi-card{background:#0f172aa6;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:4px}.emissoes-drilldown-kpi-label{font-size:.7rem;color:#94a3b8;text-transform:uppercase;font-weight:700;letter-spacing:.3px}.emissoes-drilldown-kpi-val{font-size:1.2rem;font-weight:800;line-height:1.2}.emissoes-drilldown-kpi-sub{font-size:.68rem;color:#64748b}.emissoes-drilldown-table-wrap{background:#0f172a8c;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:14px;display:flex;flex-direction:column;flex:1;min-height:0}.emissoes-drilldown-table{width:100%;border-collapse:collapse;font-size:.82rem}.emissoes-drilldown-table th{padding:8px 10px;font-size:.7rem;text-transform:uppercase;color:#94a3b8;border-bottom:1px solid rgba(255,255,255,.1);font-weight:700}.emissoes-drilldown-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.05)}.emissoes-drilldown-table tr:hover td{background:#ffffff08}.emissoes-drilldown-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;color:#94a3b8;font-size:.85rem;text-align:center}[data-theme=light] .emissoes-drilldown-modal-box{background:#fff;border-color:#cbd5e1!important}[data-theme=light] .emissoes-drilldown-kpi-card,[data-theme=light] .emissoes-drilldown-table-wrap{background:#f8fafc;border-color:#e2e8f0}[data-theme=light] .emissoes-drilldown-table th{border-color:#e2e8f0;color:#475569}[data-theme=light] .emissoes-drilldown-table td{border-color:#f1f5f9}[data-theme=light] .emissoes-module-item--clickable:hover{background:#f1f5f9;border-color:#38bdf8;box-shadow:0 4px 12px #00000014}.verification-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0b1329d9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:grid;place-items:center;z-index:12000;padding:1rem}.verification-modal-card{background-color:var(--card-bg, #0f172a);border:1px solid rgba(59,130,246,.3);box-shadow:0 25px 50px -12px #0009,0 0 20px #3b82f633;border-radius:16px;width:100%;max-width:600px;overflow:hidden;display:flex;flex-direction:column}.verification-modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;background:#1e3a8a33}.verification-modal-header-title{display:flex;align-items:center;gap:.75rem}.modal-header-icon{color:#60a5fa;flex-shrink:0}.verification-modal-header-title h3{margin:0;font-size:1rem;font-weight:700;color:#fff}.modal-header-subtext{margin:.2rem 0 0;font-size:.75rem;color:#94a3b8}.modal-header-actions{display:flex;align-items:center;gap:.5rem}.modal-btn-refresh,.modal-btn-close{background:transparent;border:1px solid rgba(255,255,255,.1);color:#94a3b8;border-radius:8px;width:32px;height:32px;display:grid;place-items:center;cursor:pointer;transition:all .2s ease}.modal-btn-refresh:hover,.modal-btn-close:hover{background:#3b82f633;color:#fff;border-color:#3b82f6}.verification-modal-body{padding:1.25rem 1.5rem;max-height:380px;overflow-y:auto}.modal-empty-state{padding:2rem 1rem;text-align:center;color:#64748b;font-size:.875rem}.verification-feed-list{display:flex;flex-direction:column;gap:.75rem}.verification-feed-row{background:#0f172a99;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:.875rem 1rem;display:flex;align-items:center;gap:.875rem;transition:all .2s ease}.verification-feed-row:hover{border-color:#3b82f666;background:#1e293b99}.feed-row-badge{width:36px;height:36px;border-radius:8px;background:#3b82f626;border:1px solid rgba(59,130,246,.3);color:#60a5fa;display:grid;place-items:center;flex-shrink:0}.feed-row-content{flex:1;min-width:0}.feed-row-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.25rem}.feed-row-hash{font-family:JetBrains Mono,monospace;color:#60a5fa;font-size:.8125rem}.feed-row-title{font-size:.75rem;color:#94a3b8}.feed-row-details{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;color:#cbd5e1;gap:.5rem}.feed-row-time{color:#64748b;display:inline-flex;align-items:center;gap:.25rem}.verification-modal-footer{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;font-size:.8125rem;color:#94a3b8;background:#0f172acc}.modal-btn-done{background:#3b82f6;color:#fff;border:none;border-radius:8px;padding:.45rem 1.25rem;font-weight:600;font-size:.8125rem;cursor:pointer;transition:all .2s ease}.modal-btn-done:hover{background:#2563eb}.validation-page-container{min-height:100vh;width:100%;background-color:var(--background-color, #0b1329);background-image:radial-gradient(circle at 50% 0%,rgba(59,130,246,.14) 0%,transparent 60%),radial-gradient(circle at 100% 100%,rgba(59,130,246,.08) 0%,transparent 40%);color:var(--primary-text-color, #f8fafc);font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;padding:0;box-sizing:border-box;animation:fadeIn .4s ease-out}.validation-card-wrapper{width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;gap:1rem;padding-bottom:2rem}.validation-page-container.public-standalone-page{align-items:center;padding:1.5rem 1rem 2rem}.validation-page-container.public-standalone-page .validation-card-wrapper{width:70%;max-width:1200px;margin:0 auto}@media (max-width: 1300px){.validation-page-container.public-standalone-page .validation-card-wrapper{width:82%}}@media (max-width: 992px){.validation-page-container.public-standalone-page .validation-card-wrapper{width:92%}}@media (max-width: 640px){.validation-page-container.public-standalone-page .validation-card-wrapper{width:100%}}.validation-card{background-color:var(--card-bg, rgba(15, 23, 42, .92));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:16px;padding:2.75rem 2rem 2.5rem;box-shadow:0 25px 50px -12px #00000080,inset 0 1px #ffffff14;position:relative;overflow:hidden;transition:all .3s ease}.validation-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#1d4ed8,#3b82f6,#60a5fa)}.validation-theme-toggle{position:absolute;top:1.25rem;right:1.25rem;z-index:10;width:34px;height:34px;border-radius:50%;background-color:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#94a3b8;display:grid;place-items:center;cursor:pointer;font-size:.95rem;transition:all .2s ease}.validation-theme-toggle:hover{background-color:#3b82f62e;border-color:#3b82f6;color:#fff;transform:scale(1.08);box-shadow:0 0 12px #3b82f64d}.validation-header{text-align:center;margin-bottom:1.75rem;display:flex;flex-direction:column;align-items:center;width:100%}.validation-logo{width:60px;height:60px;margin-bottom:.75rem;filter:drop-shadow(0 4px 12px rgba(59,130,246,.35))}.validation-logo .logo-blade{opacity:0;transform-origin:50% 50%;animation-duration:5s;animation-fill-mode:both;animation-iteration-count:infinite;animation-timing-function:ease-in-out}.validation-logo .blade-top{animation-name:slide-in-top}.validation-logo .blade-right{animation-name:slide-in-right}.validation-logo .blade-bottom{animation-name:slide-in-bottom}.validation-logo .blade-left{animation-name:slide-in-left}.validation-header h1{font-size:1.75rem;font-weight:800;letter-spacing:.04em;color:#fff;margin:0;display:inline-flex;align-items:center;position:relative;text-shadow:0 2px 10px rgba(0,0,0,.5)}.validation-header .pro-badge{position:absolute;bottom:-2px;right:-38px;font-size:.65rem;font-weight:700;letter-spacing:.1em;padding:2px 6px;background:#3b82f640;border:1px solid rgba(59,130,246,.6);color:#60a5fa;border-radius:4px;line-height:1}.validation-subtitle{font-size:1.05rem;color:#cbd5e1;margin-top:.625rem;font-weight:600;letter-spacing:.015em;width:100%;text-align:center;line-height:1.4;text-shadow:0 1px 4px rgba(0,0,0,.4)}.validation-form{margin-bottom:1.5rem}.validation-form-row{display:flex;gap:.625rem;flex-wrap:wrap;align-items:center}.validation-input-group{display:flex;align-items:center;gap:.625rem;flex:1;min-width:260px}.validation-actions-group{display:flex;align-items:center;gap:.5rem}.validation-input{flex:1;min-width:240px;padding:.75rem 1.125rem;border-radius:8px;background-color:#0f172ae6;border:1px solid #3b82f6;box-shadow:0 0 0 3px #3b82f640;color:#fff;font-size:.875rem;font-family:JetBrains Mono,Fira Code,Roboto Mono,monospace;outline:none;transition:all .2s ease}.validation-input:focus{border-color:#60a5fa;box-shadow:0 0 0 4px #3b82f666;background-color:#0f172afa}.validation-input::placeholder{color:#64748b;font-family:system-ui,-apple-system,sans-serif}.validation-btn-camera{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border-radius:8px;background-color:#1e3a8a4d;border:1.5px solid #3b82f6;color:#60a5fa;cursor:pointer;transition:all .2s ease;box-shadow:0 0 8px #3b82f626;flex-shrink:0}.validation-btn-camera:hover{background-color:#3b82f6;border-color:#60a5fa;color:#fff;transform:translateY(-1px);box-shadow:0 0 14px #3b82f666}@keyframes fadeInScale{0%{opacity:0;transform:scale(.92) translate(4px)}to{opacity:1;transform:scale(1) translate(0)}}.validation-btn-primary{padding:.75rem 1.375rem;border-radius:8px;background-color:#1e3a8a66;border:1.5px solid #3b82f6;color:#fff;font-weight:700;font-size:.875rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s ease;box-shadow:0 0 10px #3b82f633;animation:fadeInScale .25s cubic-bezier(.16,1,.3,1) forwards}.validation-btn-primary:hover:not(:disabled){background-color:#3b82f6;border-color:#60a5fa;color:#fff;transform:translateY(-1px);box-shadow:0 0 16px #3b82f673}.validation-btn-primary:disabled{background-color:#0f172a80;color:#64748b;border-color:#64748b4d;cursor:not-allowed;box-shadow:none;transform:none}.validation-btn-clear{padding:.75rem 1.125rem;border-radius:8px;background-color:#ef444414;border:1.5px solid rgba(239,68,68,.5);color:#fca5a5;font-weight:700;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.375rem}.validation-btn-clear:hover{background-color:#ef4444;border-color:#f87171;color:#fff;transform:translateY(-1px);box-shadow:0 0 14px #ef444466}.validation-upload-box{background-color:#0f172a99;border:1.5px dashed #3b82f6;box-shadow:0 0 12px #3b82f626;border-radius:12px;padding:1.25rem 1rem;margin-bottom:1.5rem;text-align:center;transition:all .2s ease}.validation-upload-box:hover{border-color:#60a5fa;background-color:#1e293bb3;box-shadow:0 0 18px #3b82f64d}.validation-upload-title{display:block;font-size:.75rem;font-weight:700;color:#60a5fa;margin-bottom:.625rem;text-transform:uppercase;letter-spacing:.05em}.validation-upload-label{display:inline-flex;align-items:center;gap:.625rem;padding:.625rem 1.25rem;border-radius:8px;background-color:#1e3a8a4d;border:1.5px solid #3b82f6;color:#cbd5e1;font-size:.8125rem;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 0 8px #3b82f626}.validation-upload-label:hover{background-color:#3b82f6;border-color:#60a5fa;color:#fff;transform:translateY(-1px);box-shadow:0 0 16px #3b82f666}.validation-error-card{background-color:#ef444414;border:1px solid rgba(239,68,68,.5);border-radius:12px;padding:1.25rem;margin-top:1.25rem;animation:fadeInUp .3s ease-out}.validation-error-title{display:flex;align-items:center;gap:.5rem;color:#f87171;font-weight:700;font-size:.95rem;margin-bottom:.5rem}.validation-error-text{font-size:.875rem;color:#fca5a5;margin:0;line-height:1.5}.validation-footer{margin-top:2rem;text-align:center;border-top:1px solid rgba(255,255,255,.08);padding-top:1.25rem}.validation-back-link{font-size:.8125rem;color:#60a5fa;text-decoration:none;font-weight:500;transition:all .2s ease;display:inline-flex;align-items:center;gap:.375rem}.validation-back-link:hover{color:#93c5fd;text-decoration:underline;transform:translate(-2px)}.validation-compliance-footer{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.05)}.validation-compliance-intro{font-size:.75rem;color:#64748b;margin-bottom:.625rem}.validation-compliance-badges-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;align-items:center}.validation-compliance-badge{background:#0f172a99;border:1px solid rgba(255,255,255,.08);color:#94a3b8;font-size:.75rem;display:inline-flex;align-items:center;gap:.375rem;padding:.3rem .625rem;border-radius:6px;cursor:pointer;transition:all .2s ease}.validation-compliance-badge:hover{background:#3b82f61f;border-color:#3b82f666;color:#fff;transform:translateY(-1px);box-shadow:0 0 10px #3b82f633}.badge-title{color:#60a5fa;font-weight:700}.badge-title--amber{color:#fbbf24;font-weight:700}.badge-subtext{color:#64748b;font-size:.6875rem;font-weight:400}.validation-compliance-badge:hover .badge-subtext{color:#94a3b8}.light.validation-page-container,.light .validation-page-container,body.light .validation-page-container,[data-theme=light] .validation-page-container{background-color:#f1f5f9;background-image:radial-gradient(circle at 50% 0%,rgba(59,130,246,.12) 0%,transparent 60%),radial-gradient(circle at 100% 100%,rgba(37,99,235,.06) 0%,transparent 40%);color:#0f172a}.light .validation-card,body.light .validation-card,[data-theme=light] .validation-card{background-color:#fff;border-color:#e2e8f0;box-shadow:0 20px 40px -15px #00000014,0 0 0 1px #e2e8f0cc}.light .validation-theme-toggle,body.light .validation-theme-toggle,[data-theme=light] .validation-theme-toggle{background-color:#f1f5f9;border-color:#cbd5e1;color:#475569}.light .validation-theme-toggle:hover,body.light .validation-theme-toggle:hover,[data-theme=light] .validation-theme-toggle:hover{background-color:#e2e8f0;border-color:#3b82f6;color:#1e3a8a}.light .validation-header h1,body.light .validation-header h1,[data-theme=light] .validation-header h1{color:#0f172a;text-shadow:none}.light .validation-header .pro-badge,body.light .validation-header .pro-badge,[data-theme=light] .validation-header .pro-badge{background:#2563eb1a;border-color:#3b82f6;color:#2563eb}.light .validation-subtitle,body.light .validation-subtitle,[data-theme=light] .validation-subtitle{color:#475569;text-shadow:none}.light .validation-input,body.light .validation-input,[data-theme=light] .validation-input{background-color:#fff;border-color:#3b82f6;color:#0f172a;box-shadow:0 0 0 3px #3b82f626}.light .validation-input::placeholder,body.light .validation-input::placeholder,[data-theme=light] .validation-input::placeholder{color:#94a3b8}.light .validation-upload-box,body.light .validation-upload-box,[data-theme=light] .validation-upload-box{background-color:#f8fafc;border-color:#3b82f6;box-shadow:0 0 10px #3b82f61a}.light .validation-upload-box:hover,body.light .validation-upload-box:hover,[data-theme=light] .validation-upload-box:hover{background-color:#eff6ff;border-color:#2563eb}.light .validation-upload-title,body.light .validation-upload-title,[data-theme=light] .validation-upload-title{color:#2563eb}.light .validation-upload-label,body.light .validation-upload-label,[data-theme=light] .validation-upload-label{background-color:#1e3a8a;border-color:#1e3a8a;color:#fff}.light .validation-upload-label:hover,body.light .validation-upload-label:hover,[data-theme=light] .validation-upload-label:hover{background-color:#2563eb;border-color:#2563eb;color:#fff}.light .validation-back-link,body.light .validation-back-link,[data-theme=light] .validation-back-link{color:#2563eb}.light .validation-back-link:hover,body.light .validation-back-link:hover,[data-theme=light] .validation-back-link:hover{color:#1d4ed8}.light .validation-compliance-intro,body.light .validation-compliance-intro,[data-theme=light] .validation-compliance-intro{color:#64748b}.light .validation-compliance-badge,body.light .validation-compliance-badge,[data-theme=light] .validation-compliance-badge{background-color:#fff;border-color:#cbd5e1;color:#334155;box-shadow:0 1px 3px #0000000d}.light .validation-compliance-badge:hover,body.light .validation-compliance-badge:hover,[data-theme=light] .validation-compliance-badge:hover{background-color:#eff6ff;border-color:#3b82f6;color:#0f172a}.light .badge-title,body.light .badge-title,[data-theme=light] .badge-title{color:#2563eb}.light .badge-title--amber,body.light .badge-title--amber,[data-theme=light] .badge-title--amber{color:#d97706}.light .badge-subtext,body.light .badge-subtext,[data-theme=light] .badge-subtext{color:#64748b}.light .validation-btn-camera,body.light .validation-btn-camera,[data-theme=light] .validation-btn-camera{background-color:#fff;border-color:#3b82f6;color:#2563eb;box-shadow:0 1px 3px #0000000d}.light .validation-btn-camera:hover,body.light .validation-btn-camera:hover,[data-theme=light] .validation-btn-camera:hover{background-color:#eff6ff;border-color:#2563eb;color:#1d4ed8}@media (max-width: 640px){.validation-card-wrapper{padding:.5rem .25rem}.validation-card{padding:1.25rem .875rem;border-radius:12px}.validation-form-row{flex-direction:column;align-items:stretch;gap:.75rem}.validation-input-group{width:100%;min-width:0;gap:.5rem}.validation-btn-camera{width:44px;height:44px;flex-shrink:0}.validation-input{width:100%;min-width:0;height:44px;font-size:.825rem;padding:.625rem .75rem}.validation-actions-group{display:flex;flex-direction:row!important;gap:.5rem;width:100%}.validation-actions-group .validation-btn-primary,.validation-actions-group .validation-btn-clear{flex:1!important;min-width:0!important;height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 .5rem;font-size:.875rem;white-space:nowrap}}.validation-kpis-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.75rem;width:100%;margin-bottom:.5rem;position:sticky;top:0;z-index:40;background-color:var(--background-color, #0b1329);padding-top:.5rem;padding-bottom:.5rem;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.light .validation-kpis-grid,body.light .validation-kpis-grid,[data-theme=light] .validation-kpis-grid{background-color:#f1f5f9}@media (max-width: 1400px){.validation-kpis-grid{grid-template-columns:repeat(6,1fr);gap:.5rem}}@media (max-width: 1100px){.validation-kpis-grid{grid-template-columns:repeat(3,1fr);gap:.65rem}}@media (max-width: 640px){.validation-kpis-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}}.validation-kpi-card{background-color:var(--card-bg, rgba(15, 23, 42, .92));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:12px;padding:.75rem .85rem;display:flex;align-items:center;gap:.6rem;box-shadow:0 10px 25px -5px #0000004d;transition:all .25s ease;position:relative;overflow:hidden;width:100%;box-sizing:border-box}.validation-kpi-card:before{content:"";position:absolute;top:0;left:0;bottom:0;width:3.5px;background:#3b82f6}.validation-kpi-card--blue:before{background:#3b82f6}.validation-kpi-card--sky:before{background:#38bdf8}.validation-kpi-card--green:before{background:#10b981}.validation-kpi-card--purple:before{background:#a855f7}.validation-kpi-card--teal:before{background:#14b8a6}.validation-kpi-card--indigo:before{background:#6366f1}.validation-kpi-card--slate:before,.validation-kpi-card--chumbo:before{background:#64748b}.validation-kpi-card--amber:before{background:#f59e0b}.light .validation-kpi-card--amber:before,body.light .validation-kpi-card--amber:before,[data-theme=light] .validation-kpi-card--amber:before{background:#c2410c}.light .validation-kpi-card--slate:before,.light .validation-kpi-card--chumbo:before,body.light .validation-kpi-card--slate:before,body.light .validation-kpi-card--chumbo:before,[data-theme=light] .validation-kpi-card--slate:before,[data-theme=light] .validation-kpi-card--chumbo:before{background:#475569}.validation-kpi-card:hover{transform:translateY(-2px);box-shadow:0 15px 30px -5px #3b82f640;border-color:#3b82f666}.validation-kpi-card--amber:hover{border-color:#f59e0b80;box-shadow:0 15px 30px -5px #f59e0b40}.light .validation-kpi-card--amber:hover,body.light .validation-kpi-card--amber:hover,[data-theme=light] .validation-kpi-card--amber:hover{border-color:#c2410c80;box-shadow:0 15px 30px -5px #c2410c33}.validation-kpi-card--slate:hover,.validation-kpi-card--chumbo:hover{border-color:#64748b80;box-shadow:0 15px 30px -5px #64748b40}.validation-kpi-icon{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;flex-shrink:0}.validation-kpi-card--blue .validation-kpi-icon{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.validation-kpi-card--sky .validation-kpi-icon{background:#38bdf826;color:#38bdf8;border:1px solid rgba(56,189,248,.3)}.validation-kpi-card--green .validation-kpi-icon{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.validation-kpi-card--purple .validation-kpi-icon{background:#a855f726;color:#c084fc;border:1px solid rgba(168,85,247,.3)}.validation-kpi-card--slate .validation-kpi-icon,.validation-kpi-card--chumbo .validation-kpi-icon{background:#64748b26;color:#94a3b8;border:1px solid rgba(100,116,139,.35)}.light .validation-kpi-card--slate .validation-kpi-icon,.light .validation-kpi-card--chumbo .validation-kpi-icon,body.light .validation-kpi-card--slate .validation-kpi-icon,body.light .validation-kpi-card--chumbo .validation-kpi-icon,[data-theme=light] .validation-kpi-card--slate .validation-kpi-icon,[data-theme=light] .validation-kpi-card--chumbo .validation-kpi-icon{background:#64748b1f;color:#334155;border:1px solid rgba(71,85,105,.3)}.validation-kpi-card--teal .validation-kpi-icon{background:#14b8a626;color:#2dd4bf;border:1px solid rgba(20,184,166,.3)}.validation-kpi-card--indigo .validation-kpi-icon{background:#6366f126;color:#818cf8;border:1px solid rgba(99,102,241,.3)}.validation-kpi-card--amber .validation-kpi-icon{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.35)}.light .validation-kpi-card--amber .validation-kpi-icon,body.light .validation-kpi-card--amber .validation-kpi-icon,[data-theme=light] .validation-kpi-card--amber .validation-kpi-icon{background:#c2410c1f;color:#9a3412;border:1px solid rgba(194,65,12,.35)}.validation-kpi-info{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.validation-kpi-label{font-size:.6875rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.validation-kpi-value{font-size:1.35rem;font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.02em}.validation-kpi-subtext{font-size:.625rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.validation-kpi-trend{display:inline-flex;align-items:center;gap:3px;font-size:.65rem;font-weight:700;margin-top:1px;animation:kpiTrendFadeIn .5s ease}@keyframes kpiTrendFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.light .validation-kpi-card,body.light .validation-kpi-card,[data-theme=light] .validation-kpi-card{background-color:#fff;border-color:#e2e8f0;box-shadow:0 4px 12px #0000000d}.light .validation-kpi-value,body.light .validation-kpi-value,[data-theme=light] .validation-kpi-value{color:#0f172a}.validation-kpi-progress-track{width:100%;height:4px;background:#ffffff14;border-radius:9999px;overflow:hidden;margin-top:.35rem;position:relative}.light .validation-kpi-progress-track,body.light .validation-kpi-progress-track,[data-theme=light] .validation-kpi-progress-track{background:#00000014}.validation-kpi-progress-bar{height:100%;border-radius:9999px;transition:width .6s cubic-bezier(.16,1,.3,1);box-shadow:0 0 8px currentColor}.validation-kpi-card--amber .validation-kpi-progress-bar{background:#f59e0b;color:#f59e0b;box-shadow:0 0 8px #f59e0b}.light .validation-kpi-card--amber .validation-kpi-progress-bar,body.light .validation-kpi-card--amber .validation-kpi-progress-bar,[data-theme=light] .validation-kpi-card--amber .validation-kpi-progress-bar{background:#c2410c;color:#c2410c;box-shadow:0 0 8px #c2410c}.validation-kpi-card--slate .validation-kpi-progress-bar,.validation-kpi-card--chumbo .validation-kpi-progress-bar{background:#64748b;color:#64748b;box-shadow:0 0 8px #64748b}.light .validation-kpi-card--slate .validation-kpi-progress-bar,.light .validation-kpi-card--chumbo .validation-kpi-progress-bar,body.light .validation-kpi-card--slate .validation-kpi-progress-bar,body.light .validation-kpi-card--chumbo .validation-kpi-progress-bar,[data-theme=light] .validation-kpi-card--slate .validation-kpi-progress-bar,[data-theme=light] .validation-kpi-card--chumbo .validation-kpi-progress-bar{background:#475569;color:#475569;box-shadow:0 0 8px #475569}.validation-page-container.validation-density--compact .validation-kpis-grid{gap:.4rem;padding-top:.25rem;padding-bottom:.25rem}.validation-page-container.validation-density--compact .validation-kpi-card{padding:.45rem .6rem;gap:.45rem}.validation-page-container.validation-density--compact .validation-kpi-icon{width:30px;height:30px}.validation-page-container.validation-density--compact .validation-kpi-icon svg{width:16px;height:16px}.validation-page-container.validation-density--compact .validation-kpi-label{font-size:.62rem}.validation-page-container.validation-density--compact .validation-kpi-value{font-size:1.15rem}.validation-page-container.validation-density--compact .validation-kpi-subtext{font-size:.58rem}.validation-page-container.validation-density--compact .validation-kpi-progress-track{height:3px;margin-top:.2rem}.validation-header-actions{position:absolute;top:1rem;right:1rem;display:flex;align-items:center;gap:.5rem;z-index:50}.validation-error-card{background-color:#ef44441a;border:1px solid rgba(239,68,68,.4);border-radius:12px;padding:1.25rem 1.5rem;margin-top:1.5rem;box-shadow:0 0 0 2px #ef444426;animation:fadeIn .3s ease-out}.validation-error-card--network{background-color:#f59e0b1a;border:1px solid rgba(245,158,11,.4);box-shadow:0 0 0 2px #f59e0b26}.validation-error-title{font-size:.95rem;font-weight:800;color:#f87171;display:flex;align-items:center;gap:.5rem;letter-spacing:.025em;margin-bottom:.5rem}.validation-error-card--network .validation-error-title{color:#fbbf24}.validation-error-text{font-size:.875rem;color:#e2e8f0;line-height:1.5;margin:0}:root{--glow-blue: rgba(59, 130, 246, .4);--glow-green: rgba(16, 185, 129, .4);--glow-purple: rgba(147, 51, 234, .4);--glow-rose: rgba(244, 63, 94, .4);--glow-amber: rgba(245, 158, 11, .4)}.u-grid-full{grid-column:1 / -1}.u-flex{display:flex}.u-flex-center{display:flex;align-items:center}.u-flex-between{display:flex;justify-content:space-between;align-items:center}.u-flex-col{display:flex;flex-direction:column}.u-flex-gap-4{display:flex;gap:4px}.u-flex-gap-8{display:flex;gap:8px}.u-flex-gap-12{display:flex;gap:12px}.u-flex-gap-16{display:flex;gap:1rem}.u-flex-1{flex:1}.u-flex-shrink-0{flex-shrink:0}.u-relative{position:relative}.u-text-center{text-align:center}.u-text-right{text-align:right}.u-w-full{width:100%}.u-overflow-x-auto{overflow-x:auto}.u-hidden{display:none}.u-mb-4{margin-bottom:.25rem}.u-mb-8{margin-bottom:.5rem}.u-mb-16{margin-bottom:1rem}.u-mb-24{margin-bottom:1.5rem}.u-mt-8{margin-top:.5rem}.u-mt-16{margin-top:1rem}.u-p-48-center{padding:3rem;text-align:center}.u-min-w-120{min-width:120px}.u-text-xs{font-size:.72rem}.u-text-sm{font-size:.82rem}.u-text-error{color:#ef4444}.u-text-success{color:#10b981}.u-text-warning{color:#f59e0b}.u-text-muted{color:var(--secondary-text-color)}.u-text-primary{color:var(--primary-text-color)}.u-font-bold{font-weight:700}.u-font-semibold{font-weight:600}.u-section-title{color:var(--primary-text-color);margin:0 0 1rem;font-size:1.1rem;font-weight:600}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;display:flex;justify-content:center;align-items:center;z-index:var(--layer-overlay);animation:fadeInModal .25s cubic-bezier(.2,.8,.2,1);pointer-events:none}.modal-content{background:var(--bg-primary, #0f172a);border:1px solid var(--accent-color, #3b82f6);border-radius:16px;width:100%;max-width:1200px;max-height:calc(100vh - 80px);display:flex;flex-direction:column;position:relative;box-shadow:0 0 15px rgba(var(--accent-color-rgb, 59, 130, 246),.4),0 25px 50px -12px #00000040,0 0 0 1px var(--accent-color, #3b82f6);margin:auto;pointer-events:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color, #334155);background:var(--bg-secondary, #1e293b);border-radius:16px 16px 0 0;flex-shrink:0}.modal-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary, #f8fafc)}.modal-close-button,.modal-close-btn,.modal-header-close,.modal-close,.cm-modal-close,.cm-modal-close-btn,.presidencia-global-modal-close,button.modal-close,button.modal-close-button,button.modal-close-btn,button.modal-header-close,.tenant-admin-header button:has(svg.lucide-x),.tenant-admin-modal button:has(svg.lucide-x),.modal-header button:has(svg.lucide-x){background:transparent;border:none;color:#f43f5e!important;font-size:1.5rem;line-height:1;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease!important}.modal-close-button:hover,.modal-close-btn:hover,.modal-header-close:hover,.modal-close:hover,.cm-modal-close:hover,.cm-modal-close-btn:hover,.presidencia-global-modal-close:hover,button.modal-close:hover,button.modal-close-button:hover,button.modal-close-btn:hover,button.modal-header-close:hover,.tenant-admin-header button:has(svg.lucide-x):hover,.tenant-admin-modal button:has(svg.lucide-x):hover,.modal-header button:has(svg.lucide-x):hover{background:#f43f5e26!important;color:#e11d48!important}.modal-body{overflow-y:auto;flex:1;min-height:0}.u-visible-mobile-only{display:none}@media (max-width: 768px){.u-hidden-mobile{display:none!important}.u-visible-mobile-only{display:block!important}.u-visible-mobile-flex{display:flex!important}.u-visible-mobile-grid{display:grid!important}.u-mobile-stack{flex-direction:column!important}.u-mobile-full-width{width:100%!important}.u-mobile-gap-8{gap:.5rem!important}.u-mobile-gap-12{gap:.75rem!important}.u-mobile-pad{padding:.75rem!important}.u-mobile-pad-sm{padding:.5rem!important}.u-mobile-text-sm{font-size:.82rem!important}.u-mobile-text-xs{font-size:.72rem!important}.u-mobile-grid-1{grid-template-columns:1fr!important}.u-touch-target{min-height:44px;min-width:44px}.u-mobile-scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch}.u-mobile-modal-fullscreen{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;margin:0!important}.modal-content{max-width:calc(100vw - 16px);max-height:calc(100dvh - 32px);margin:8px;border-radius:12px}.modal-header{padding:14px 16px;border-radius:12px 12px 0 0}.modal-header h2{font-size:1.05rem}.modal-close-button{min-height:44px;min-width:44px}}@media (max-width: 480px){.u-hidden-mobile-sm{display:none!important}.u-visible-mobile-sm-only{display:block!important}.u-mobile-sm-text-xs{font-size:.68rem!important}.u-mobile-sm-pad{padding:.5rem!important}.modal-content{max-width:100vw;max-height:100dvh;margin:0;border-radius:0}.modal-header{border-radius:0}}@media (max-width: 768px){.u-mobile-card-list{display:flex;flex-direction:column;gap:.75rem}.u-mobile-card{background:var(--card-bg, rgba(255, 255, 255, .03));border:1px solid var(--border-color, #334155);border-radius:12px;padding:.875rem;transition:border-color .2s ease}.u-mobile-card:active{border-color:var(--accent-color, #3b82f6)}.u-mobile-card-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;border-bottom:1px solid rgba(var(--border-color-rgb, 51, 65, 85),.3)}.u-mobile-card-row:last-child{border-bottom:none}.u-mobile-card-label{font-size:.72rem;font-weight:600;color:var(--text-muted, #64748b);text-transform:uppercase;letter-spacing:.04em}.u-mobile-card-value{font-size:.85rem;color:var(--primary-text-color, #f8fafc);text-align:right;max-width:60%}.u-mobile-card-actions{display:flex;gap:.5rem;justify-content:flex-end;padding-top:.5rem;margin-top:.25rem;border-top:1px solid var(--border-color, #334155)}}@media (max-width: 768px){body.light .u-mobile-card{background:#fff;border-color:#e2e8f0;box-shadow:0 1px 3px #0000000a}body.light .u-mobile-card:active{border-color:#3b82f6}body.light .u-mobile-card-row{border-bottom-color:#f1f5f9}body.light .u-mobile-card-label{color:#64748b}body.light .u-mobile-card-value{color:#1e293b}body.light .u-mobile-card-actions{border-top-color:#e2e8f0}}body:has(.cm-overlay,.modal-overlay,.aup-overlay,.dp-overlay,[role=dialog],[aria-modal=true]) .back-to-top-fab{display:none!important;opacity:0!important;pointer-events:none!important}
