@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&family=Space+Grotesk:wght@500;700&display=swap";:root{--color-primary:#121228;--color-primary-rgb:18, 18, 40;--color-accent:#f1a323;--color-accent-rgb:241, 163, 35;--color-sec-red:#a8194c;--color-sec-red-rgb:168, 25, 76;--color-sec-blue:#234175;--color-sec-blue-rgb:35, 65, 117;--color-sec-green:#6bb42d;--color-sec-green-rgb:107, 180, 45;--color-sec-gray:#767676;--color-sec-gray-rgb:118, 118, 118;--color-primary-90:#121228e6;--color-primary-80:#121228cc;--color-primary-70:#121228b3;--color-primary-60:#12122899;--color-primary-50:#12122880;--color-primary-40:#12122866;--color-primary-30:#1212284d;--color-primary-20:#12122833;--color-primary-15:#12122826;--color-primary-10:#1212281a;--color-primary-05:#1212280d;--color-accent-90:#f1a323e6;--color-accent-80:#f1a323cc;--color-accent-70:#f1a323b3;--color-accent-60:#f1a32399;--color-accent-50:#f1a32380;--color-accent-40:#f1a32366;--color-accent-30:#f1a3234d;--color-accent-20:#f1a32333;--color-accent-15:#f1a32326;--color-accent-10:#f1a3231a;--color-accent-05:#f1a3230d;--color-red-10:#a8194c1a;--color-red-20:#a8194c33;--color-blue-10:#2341751a;--color-blue-20:#23417533;--color-green-10:#6bb42d1a;--color-green-20:#6bb42d33;--color-gray-10:#7676761a;--color-gray-20:#76767633;--text:var(--color-primary);--text-soft:var(--color-sec-blue);--text-strong:var(--color-primary);--bg:#fff;--card-bg:#fff;--border-color:var(--color-primary-15);--color-accent-hover:var(--color-accent-80);--gradient-accent:linear-gradient(135deg, var(--color-accent) 0%, var(--color-sec-red) 100%);--gradient-primary:linear-gradient(135deg, var(--color-primary) 0%, var(--color-sec-blue) 100%);--sans:"Manrope", "Segoe UI", sans-serif;--display:"Space Grotesk", "Manrope", sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font:16px/145% var(--sans);letter-spacing:.14px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}#root{box-sizing:border-box;max-width:100%;min-height:100svh}body{margin:0}h1{font-family:var(--display);color:var(--text-strong);margin:0;font-weight:700}p{margin:0}code{font-family:var(--mono);color:var(--color-sec-red);background:#f1f5f9;border-radius:6px;padding:4px 8px;font-size:14px;line-height:135%;display:inline-flex}html{scrollbar-color:var(--color-primary-20) var(--color-primary-05);scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-primary-05)}::-webkit-scrollbar-thumb{background:var(--color-primary-20);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-40)}.shell{background:radial-gradient(circle at 10% 10%,#f1a32314,#0000 35%),radial-gradient(circle at 85% 20%,#23417514,#0000 32%),linear-gradient(#fff 0%,#f8fafc 40%,#fff 100%);flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}.hero{border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);z-index:200;background:#ffffffbf;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem clamp(1rem,2vw,2rem);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;top:0}.hero.scrolled{box-shadow:0 4px 18px var(--color-primary-05);border-bottom-color:var(--color-primary-10);background:#ffffffe6;padding:.75rem clamp(1rem,2vw,2rem)}.hero-left{align-items:center;gap:1rem;display:flex}.logo-slot{flex-shrink:0;align-items:center;height:64px;margin-right:1.5rem;transition:all .3s;display:flex}.hero.scrolled .logo-slot{height:52px}.logo-slot img{object-fit:contain;transform-origin:0;width:auto;height:100%;transform:scale(1.3)}.hero h1{color:var(--text-strong);letter-spacing:-.02em;margin:0;font-size:clamp(1.2rem,2vw,1.6rem)}.hero p{color:var(--text-soft);margin-top:.15rem;font-size:.78rem}.hero-meta{color:var(--color-accent);flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.25rem;font-size:.7rem;display:flex}.badges{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.app-body{flex:1;min-height:0;display:flex}.sidebar{background:var(--color-primary-05);border-right:1px solid var(--color-primary-10);z-index:100;flex-direction:column;flex-shrink:0;align-self:flex-start;width:220px;height:100vh;transition:width .22s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar.collapsed{width:56px}.sidebar-header{border-bottom:1px solid var(--color-primary-10);flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.sidebar-toggle{all:unset;cursor:pointer;color:var(--color-primary);box-sizing:border-box;justify-content:flex-end;align-items:center;width:100%;padding:.6rem .75rem;font-size:1rem;display:flex}.sidebar-toggle:hover{background:var(--color-primary-10)}.sidebar-close-mobile,.sidebar-backdrop{display:none}.sidebar-group{padding:.5rem 0}.sidebar-group+.sidebar-group{border-top:1px solid var(--color-primary-10)}.sidebar-group-label{color:var(--color-sec-blue);text-transform:uppercase;letter-spacing:.09em;white-space:nowrap;opacity:1;max-height:2rem;padding:.25rem .75rem .2rem;font-size:.62rem;font-weight:800;transition:opacity .15s,max-height .15s;display:block;overflow:hidden}.sidebar.collapsed .sidebar-group-label{opacity:0;max-height:0;padding-top:0;padding-bottom:0}.sidebar-tab{all:unset;box-sizing:border-box;cursor:pointer;width:100%;color:var(--color-sec-blue);white-space:nowrap;border-left:3px solid #0000;align-items:center;gap:.55rem;padding:.45rem .75rem;font-size:.83rem;font-weight:600;transition:background .14s,border-color .14s,color .14s;display:flex;overflow:hidden}.sidebar-tab:hover{background:var(--color-primary-10);color:var(--color-primary)}.sidebar-tab.active{background:linear-gradient(90deg, var(--color-accent-15), transparent);border-left-color:var(--color-accent);color:var(--color-primary);font-weight:700}.sidebar-icon{text-align:center;flex-shrink:0;width:1.2rem;font-size:.95rem}.sidebar-label{text-overflow:ellipsis;flex:1;transition:opacity .15s;overflow:hidden}.sidebar.collapsed .sidebar-label{opacity:0;width:0}.main-content{flex:1;min-width:0;padding:1.25rem clamp(.75rem,2vw,1.75rem) 2.5rem;overflow-x:hidden}.fx-drawer-duplicate-disabled{background:var(--color-primary-05);border-left:1px solid var(--border-color);z-index:301;flex-direction:column;gap:1rem;width:min(21rem,100vw);height:100dvh;padding:1.25rem;transition:right .25s;display:flex;position:fixed;top:0;right:-22rem;overflow-y:auto;box-shadow:-6px 0 24px #0f172a1f}.fx-drawer-duplicate-disabled.open{right:0}.modal-overlay{background:var(--color-primary-80);-webkit-backdrop-filter:blur(8px);z-index:9999;place-items:center;padding:2rem 1rem;animation:.22s ease-out forwards modalFadeIn;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--color-primary-20);width:min(640px,100%);max-height:92vh;box-shadow:0 15px 35px -5px #12122852, 0 5px 15px -3px #1212281a, 0 0 0 1px var(--color-primary-15);background:#fff;border-radius:20px;padding:2.25rem 2rem;animation:.35s cubic-bezier(.16,1,.3,1) forwards modalSlideUp;overflow-y:auto}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header{justify-content:space-between;align-items:center;gap:1rem;display:flex;overflow-x:hidden}.grid{gap:1rem;display:grid}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-grid-wide{grid-template-columns:repeat(5,minmax(0,1fr))}.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--border-color);background:#fff;border-radius:14px;min-width:0;padding:1rem;box-shadow:0 4px 16px #0f172a0f}.card h3{color:var(--color-sec-blue);margin:0 0 .75rem;font-size:.9rem}.kpi{cursor:default;transition:box-shadow .14s,transform .14s}.kpi.clickable{cursor:pointer}.kpi.clickable:hover{box-shadow:0 8px 24px var(--color-accent-20);transform:translateY(-1px)}.kpi p{color:var(--color-primary);margin:0;font-size:1.3rem;font-weight:800}.kpi-header{justify-content:space-between;align-items:flex-start;margin-bottom:.45rem;display:flex}.kpi-label{color:var(--color-sec-blue);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem;font-weight:700}.kpi-tooltip-btn{all:unset;cursor:help;color:var(--color-accent);border:1px solid var(--border-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1rem;height:1rem;font-size:.65rem;display:flex}.kpi-delta{align-items:center;gap:.2rem;margin-top:.2rem;font-size:.72rem;font-weight:700;display:flex}.kpi-delta.up{color:#16a34a}.kpi-delta.down{color:#dc2626}.kpi-delta.flat{color:#9ca3af}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-full{grid-column:1/-1}.form-grid{gap:.7rem;display:grid}.filters-grid{grid-template-columns:1fr 1fr 1.4fr auto;align-items:end}.filters-bar{flex-wrap:wrap;align-items:flex-end;gap:.5rem;display:flex}.converter-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.fx-note{color:var(--color-sec-blue);margin:.35rem 0 0;font-size:.82rem;font-weight:600}.converter-result{color:var(--color-primary);margin:.5rem 0 0;font-weight:700}.fx-drawer{border-left:1px solid var(--border-color);z-index:301;visibility:hidden;background:#fff;flex-direction:column;gap:1rem;width:min(21rem,100vw);height:100dvh;padding:1.25rem;transition:right .25s,visibility .25s;display:flex;position:fixed;top:0;right:-22rem;overflow-y:auto;box-shadow:-6px 0 24px #0f172a1f}.fx-drawer.open{visibility:visible;right:0}.modal-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.8rem;display:flex}.modal-header h3{color:var(--color-primary);margin:0}.modal-actions{justify-content:flex-end;gap:.5rem;display:flex}.form-grid>*{min-width:0}input,select,textarea,button{font:inherit}input,select,textarea{border:1px solid var(--color-primary-20);background:var(--color-primary-05);width:100%;color:var(--color-primary);border-radius:10px;outline:none;padding:.6rem .75rem;transition:border-color .22s,box-shadow .22s,background-color .22s}input:focus,select:focus,textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-20);background:#fff}textarea{resize:vertical;min-height:84px}button{color:#fff;background:var(--gradient-accent);cursor:pointer;border:none;border-radius:10px;padding:.6rem .9rem;font-weight:700;transition:transform .15s cubic-bezier(.4,0,.2,1),filter .15s,box-shadow .15s}button:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 4px 12px var(--color-accent-30);transform:translateY(-1px)}button:active:not(:disabled){box-shadow:0 2px 4px var(--color-accent-15);transform:translateY(0)}button.ghost{background:var(--color-primary-05);color:var(--color-sec-blue);border:1px solid var(--color-primary-20);transition:transform .15s cubic-bezier(.4,0,.2,1),background-color .15s,border-color .15s,color .15s,box-shadow .15s}button.ghost:hover:not(:disabled){background:var(--color-primary-10);border-color:var(--color-sec-blue);color:var(--color-primary);box-shadow:0 4px 10px var(--color-primary-10);transform:translateY(-1px)}button.ghost:active:not(:disabled){transform:translateY(0)}button:disabled{opacity:.55;cursor:not-allowed}.inline-actions{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.check{color:var(--color-sec-blue);align-items:center;gap:.5rem;display:flex}.check input{width:1rem;height:1rem}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--color-primary-10);padding:.55rem .62rem;font-size:.88rem}th{color:var(--color-sec-blue);background:var(--color-primary-05);white-space:nowrap;font-weight:700}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{background:var(--color-primary-10)}.project-table th.sticky-0,.project-table td.sticky-0{z-index:2;background:inherit;position:sticky;left:0}.project-table th.sticky-1,.project-table td.sticky-1{z-index:2;background:inherit;position:sticky;left:42px}.project-table th.sticky-2,.project-table td.sticky-2{z-index:2;background:inherit;position:sticky;left:154px}.project-table tr{background:#fff}.project-table tr:hover td{background:var(--color-accent-05)}.project-table th{background:var(--color-primary-05)!important}.auth-shell{place-items:center;min-height:100vh;display:grid}.auth-card{border:1px solid var(--border-color);background:#fff;border-radius:18px;justify-items:start;gap:1rem;width:min(480px,100%);padding:1.5rem;display:grid}.error-banner{color:#b91c1c;white-space:pre-line;background:#fff1f2;border:1px solid #fecaca;border-radius:10px;margin:.5rem 0;padding:.7rem .85rem;font-size:.875rem}.loading{color:var(--color-sec-red);margin:.2rem 0 1rem;font-weight:700}.pill{border-radius:999px;align-items:center;gap:.25rem;padding:.3rem .65rem;font-size:.75rem;font-weight:700;display:inline-flex}.pill.ok{background:var(--color-green-10);color:var(--color-sec-green)}.pill.error{background:var(--color-red-10);color:var(--color-sec-red)}.pill.warn{background:var(--color-accent-10);color:var(--color-accent)}.pill.neutral{background:var(--color-blue-10);color:var(--color-sec-blue)}.tag-list{flex-wrap:wrap;gap:.35rem;display:flex}.mobile-menu-toggle{border:1px solid var(--color-primary-20);color:var(--color-sec-blue);cursor:pointer;background:0 0;background:var(--color-primary-05);border-radius:8px;align-self:center;margin-right:.25rem;padding:.35rem .6rem;font-size:1.25rem;line-height:1;transition:background .15s,color .15s;display:none}.mobile-menu-toggle:hover{background:var(--color-primary-10);color:var(--color-primary)}@media (width<=1100px){.dashboard-grid,.dashboard-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.three-col,.filters-grid,.converter-grid{grid-template-columns:1fr 1fr}.span-4,.span-5{grid-column:span 3}}@media (width<=860px){.mobile-menu-toggle{display:block}.sidebar{z-index:300;background:#fffdfb;height:100dvh;transition:transform .28s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:6px 0 20px #0f172a26;width:260px!important}.sidebar:not(.collapsed){transform:translate(0)}.sidebar.collapsed{transform:translate(-100%);width:260px!important}.sidebar .sidebar-label{opacity:1!important;width:auto!important}.sidebar .sidebar-group-label{opacity:1!important;max-height:2rem!important;padding:.25rem .75rem .2rem!important}.sidebar-toggle{display:none!important}.sidebar-close-mobile{all:unset;cursor:pointer;color:#9a3412;flex-shrink:0;justify-content:center;align-items:center;padding:.6rem .75rem;font-size:1.1rem;font-weight:700;display:flex;display:flex!important}.sidebar-close-mobile:hover{background:var(--color-accent-10)}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:flex-end;padding:.25rem 0}.sidebar-backdrop{z-index:299;background:#0f172a59;position:fixed;inset:0;display:block!important}.main-content{padding-left:clamp(.75rem,2vw,1.75rem)!important}.dashboard-grid,.dashboard-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{grid-template-columns:1fr}.span-4,.span-5{grid-column:span 2}}@media (width<=600px){.hero{flex-direction:column;align-items:stretch;gap:.75rem}.hero-left{width:100%}.badges{border-top:1px solid var(--border-color);justify-content:flex-start;width:100%;padding-top:.75rem;overflow-x:auto}.fx-toggle-btn{display:none!important}.role-switcher{font-size:.58rem!important}.role-switcher>span:first-child{display:none!important}.dashboard-grid,.dashboard-grid-wide{grid-template-columns:1fr}.span-4,.span-5{grid-column:span 1}.filters-grid{grid-template-columns:1fr}.fx-drawer,aside[role=dialog]{width:100vw!important;max-width:100vw!important;right:-100vw!important}.fx-drawer.open,aside[role=dialog].open{right:0!important}.filters-bar{flex-direction:column!important}.filters-bar>*{flex:auto!important;width:100%!important;min-width:0!important}}.section-layout{flex-direction:column;gap:0;display:flex}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.section-header-title{color:var(--color-primary);margin:0;font-size:.9rem;font-weight:700}.section-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.section-form-wrap{grid-template-rows:0fr;margin-bottom:0;transition:grid-template-rows .28s,margin-bottom .28s;display:grid}.section-form-wrap.open{grid-template-rows:1fr;margin-bottom:.75rem}.section-form-inner{overflow:hidden}.section-form-panel{background:var(--color-primary-05);border:1px solid var(--border-color);border-radius:12px;padding:.875rem}.form-inline{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.form-inline textarea{grid-column:1/-1;min-height:60px}.form-inline .span-all{grid-column:1/-1}.consultant-form-grid{flex-direction:column;gap:12px;display:flex}.consultant-form-row{align-items:end;gap:12px;display:grid}.consultant-form-row.row-1{grid-template-columns:1.5fr 1fr 1fr}.consultant-form-row.row-2{grid-template-columns:1fr 1fr 1fr}.consultant-form-row.row-3{grid-template-columns:.8fr 1.2fr 1fr auto auto 1.5fr;align-items:center}@media (width<=900px){.consultant-form-row.row-1,.consultant-form-row.row-2,.consultant-form-row.row-3{grid-template-columns:1fr!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.approval-table{table-layout:fixed;min-width:800px}.approval-table th:first-child,.approval-table td:first-child{width:22%}.approval-table th:nth-child(2),.approval-table td:nth-child(2){width:17%}.approval-table th:nth-child(3),.approval-table td:nth-child(3){width:13%}.approval-table th:nth-child(4),.approval-table td:nth-child(4){width:8%}.approval-table th:nth-child(5),.approval-table td:nth-child(5){width:15%}.approval-table th:nth-child(6),.approval-table td:nth-child(6){width:25%;min-width:180px}.approval-table td{white-space:nowrap;text-overflow:ellipsis;padding:8px 12px;line-height:1.4;overflow:hidden}.approval-table th{padding:8px 12px}.approval-table .inline-actions button{white-space:nowrap;padding:5px 10px;font-size:.78rem}.approval-table .pill{justify-content:center;min-width:76px}.approval-table tr.row-pending td{background:#fffbf0}.approval-table tr.row-approved td{background:#f0fdf4}.approval-table tr.row-rejected td{background:#fff1f2}.approval-table tr.row-pending:hover td{background:#fff4d6}.approval-table tr.row-approved:hover td{background:#dcfce7}.approval-table tr.row-rejected:hover td{background:#fee2e2}.app-footer{color:#cbd5e1;background:linear-gradient(135deg,#090914 0%,#121228 65%,#181832 100%);border-top:1px solid #f1a32340;margin-top:auto}.app-footer__top{box-sizing:border-box;grid-template-columns:1.3fr 1fr 1fr;gap:2.5rem;width:100%;max-width:1400px;margin:0 auto;padding:3rem clamp(1.5rem,4vw,3.5rem) 2.5rem;display:grid}@media (width<=900px){.app-footer__top{grid-template-columns:1fr;gap:2rem;padding-top:2rem}}.app-footer__logo-section{align-items:center;margin-bottom:.8rem;display:flex}.app-footer__centered-logo{border-top:1px solid #ffffff0f;justify-content:center;align-items:center;margin-top:.5rem;padding:.75rem 0;display:flex}.app-footer__centered-logo img{object-fit:contain;filter:drop-shadow(0 2px 8px #f1a32333);width:auto;height:100px;transition:all .3s}.app-footer__centered-logo img:hover{filter:drop-shadow(0 4px 12px #f1a32359);transform:scale(1.05)}.app-footer__app-name{color:#f1a323;letter-spacing:-.02em;margin:0;font-size:1.3rem;font-weight:800}.app-footer__tagline{color:#94a3b8;max-width:38ch;margin:0 0 1rem;font-size:.8rem;line-height:1.5}.app-footer__social{gap:.75rem;margin-bottom:1.25rem;display:flex}.app-footer__social-link{color:#94a3b8;background:#ffffff08;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .25s;display:inline-flex}.app-footer__social-link:hover{color:var(--color-accent);border-color:var(--color-accent-40);background:var(--color-accent-05);transform:translateY(-2px)}.app-footer__copy{color:#64748b;margin:0;font-size:.72rem}.app-footer__column{flex-direction:column;display:flex}.app-footer__contact-list{flex-direction:column;gap:.6rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.app-footer__contact-list li{color:#cbd5e1;align-items:center;gap:.6rem;font-size:.82rem;display:flex}.app-footer__contact-icon{color:var(--color-accent-80);flex-shrink:0}.app-footer__badges-container{flex-wrap:wrap;gap:.75rem;display:flex}.app-footer__compliance-badge{color:#94a3b8;background:#ffffff05;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.7rem;font-weight:600;display:inline-flex}.app-footer__badge-icon{color:var(--color-accent-60);flex-shrink:0}.app-footer__nav-title{color:#f1a323;text-transform:uppercase;letter-spacing:.1em;margin:0 0 1rem;font-size:.75rem;font-weight:800}.app-footer__nav-list{grid-template-columns:1fr 1fr;gap:.3rem 1.5rem;margin:0;padding:0;list-style:none;display:grid}.app-footer__nav-link{all:unset;color:#cbd5e1;cursor:pointer;white-space:nowrap;padding:.2rem 0;font-size:.82rem;transition:all .2s;display:block}.app-footer__nav-link:hover{color:#f1a323;transform:translate(3px)}.app-footer__bar{box-sizing:border-box;background:#0003;border-top:1px solid #f1a3231f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;max-width:1400px;margin:0 auto;padding:.7rem clamp(1.5rem,4vw,3.5rem);display:flex}.app-footer__bar-left{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.app-footer__badge{letter-spacing:.03em;color:#cbd5e1;background:#f1a32314;border:1px solid #f1a3234d;border-radius:9999px;align-items:center;gap:.3rem;padding:.2rem .55rem;font-size:.68rem;font-weight:700;display:inline-flex}.app-footer__badge--env{color:#f1a323;background:#f1a3231f;border-color:#f1a32380}.app-footer__badge--ok{color:#86efac;background:#86efac14;border-color:#86efac59}.app-footer__badge--error{color:#fca5a5;background:#fca5a514;border-color:#fca5a559}.app-footer__badge--neutral{color:#9ca3af;background:0 0;border-color:#9ca3af4d}.app-footer__bar-right{color:#94a3b8;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0;font-size:.68rem;display:flex}.app-footer__feedback-btn{color:#fff;cursor:pointer;letter-spacing:.02em;background:linear-gradient(135deg,#f1a323,#d97706);border:none;border-radius:20px;padding:.35rem .85rem;font-size:.7rem;font-weight:700;transition:transform .18s,box-shadow .18s,filter .15s;box-shadow:0 2px 8px #f1a3234d}.app-footer__feedback-btn:hover{filter:brightness(1.08);transform:translateY(-1px)scale(1.04);box-shadow:0 4px 14px #f1a32373}.app-footer__feedback-btn:active{transform:scale(.96);box-shadow:0 2px 6px #f1a32333}@media (width<=700px){.app-footer__top{grid-template-columns:1fr;gap:1.5rem}.app-footer__nav-list{grid-template-columns:1fr 1fr}.app-footer__bar{flex-direction:column;align-items:flex-start}}.glass-card{-webkit-backdrop-filter:blur(12px)!important;backdrop-filter:blur(12px)!important;border:1px solid var(--border-color)!important;background:#ffffffa6!important;box-shadow:0 8px 32px #9a4f0f14!important}.switch-item{color:var(--text-soft);cursor:pointer;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.switch-item input[type=checkbox]{cursor:pointer;width:16px;height:16px}.fade-in-section{opacity:0;animation:.45s cubic-bezier(.16,1,.3,1) forwards pageFadeIn;transform:translateY(10px)}@keyframes pageFadeIn{to{opacity:1;transform:none}}.info-tooltip-wrapper{vertical-align:middle;z-index:10;align-items:center;margin-left:.35rem;display:inline-flex;position:relative}.info-tooltip-icon{border:1px solid var(--border-color);width:15px;height:15px;color:var(--color-sec-blue);cursor:help;background:#ffe8cc;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.62rem;font-weight:800;line-height:1;transition:background-color .2s,transform .2s,color .2s;display:inline-flex}.info-tooltip-wrapper:hover .info-tooltip-icon{background:var(--color-accent);color:#fff;border-color:var(--color-accent);transform:scale(1.12)}.info-tooltip-bubble{color:#e2e8f0;white-space:pre-wrap;pointer-events:none;opacity:0;z-index:999;background:#1e1e2e;border-radius:8px;width:220px;padding:.5rem .75rem;font-size:.72rem;line-height:1.45;transition:opacity .18s cubic-bezier(.4,0,.2,1),transform .18s cubic-bezier(.4,0,.2,1);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 6px 20px #0000004d}.info-tooltip-wrapper:hover .info-tooltip-bubble{transform:translate(-50%)translateY(0);opacity:1!important}.info-tooltip-arrow{border-top:5px solid #1e1e2e;border-left:5px solid #0000;border-right:5px solid #0000;width:0;height:0;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.hide-tooltips .info-tooltip-wrapper{display:none!important}.summary-row{border-bottom:1px solid #ffd8a8;border-radius:6px;justify-content:space-between;align-items:center;padding:.55rem .5rem;transition:background-color .2s;display:flex}.summary-row:hover{background-color:#ff9c2c0d}.calculator-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.calculator-grid-span-2{grid-column:span 2}@media (width<=1200px){.calculator-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=650px){.calculator-grid{grid-template-columns:1fr}.calculator-grid-span-2{grid-column:span 1}}.task-editor-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.task-editor-span-2{grid-column:span 2}@media (width<=600px){.task-editor-grid{grid-template-columns:1fr}.task-editor-span-2{grid-column:span 1}}.fade-in-tab{animation:.35s cubic-bezier(.16,1,.3,1) forwards tabFadeIn}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in-detail{animation:.32s cubic-bezier(.16,1,.3,1) forwards detailFadeIn}@keyframes detailFadeIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@media (width<=1100px){.responsive-grid{grid-template-columns:1fr!important}}@media (width<=950px){.split-pane-wrapper{flex-direction:column!important}.split-pane-master{border-bottom:1px solid #ffd8a8;border-right:none!important;width:100%!important;max-height:300px!important;padding-bottom:1rem!important;padding-right:0!important}.split-pane-detail{width:100%!important;padding-left:0!important}}.calculator-grid .form-label,.task-editor-grid .form-label{color:var(--text-strong)!important;flex-wrap:wrap!important;align-items:flex-end!important;gap:.25rem!important;min-height:2.3rem!important;margin-bottom:.45rem!important;font-size:.78rem!important;font-weight:700!important;display:flex!important}@keyframes selectDropdownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.searchable-select-option:hover{background-color:var(--color-accent-05)!important}.month-day-cell.is-blocked{cursor:not-allowed!important;background:#fdf2f2!important}.rag-chat-fab{color:#fff;cursor:pointer;z-index:999;letter-spacing:.02em;white-space:nowrap;background:linear-gradient(135deg,#234175 0%,#3b82f6 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:.88rem;font-weight:700;transition:width .3s cubic-bezier(.4,0,.2,1),border-radius .3s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.175,.885,.32,1.275),box-shadow .22s,filter .15s;display:flex;position:fixed;bottom:24px;right:25px;overflow:hidden;box-shadow:0 6px 20px #23417566}.rag-chat-fab span{flex-shrink:0;font-size:1.3rem;line-height:1}.rag-chat-fab strong{font-family:var(--sans);opacity:0;max-width:0;transition:opacity .2s,max-width .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.rag-chat-fab:hover,.rag-chat-fab.is-open{border-radius:30px;justify-content:flex-start;gap:8px;width:195px;padding:0 16px}.rag-chat-fab:hover strong,.rag-chat-fab.is-open strong{opacity:1;max-width:145px;margin-left:4px}.rag-chat-fab:hover{filter:brightness(1.08);transform:scale(1.06)translateY(-2px);box-shadow:0 8px 24px #23417580}.rag-chat-fab:active{transform:scale(.95)translateY(0);box-shadow:0 4px 12px #23417540}@media (width<=600px){.rag-chat-fab,.rag-chat-fab:hover,.rag-chat-fab.is-open{bottom:20px;right:20px;border-radius:50%!important;justify-content:center!important;gap:0!important;width:50px!important;height:50px!important;padding:0!important}.rag-chat-fab strong,.rag-chat-fab:hover strong,.rag-chat-fab.is-open strong{display:none!important}.rag-chat-fab span{font-size:1.35rem}}@media (width<=768px){.project-table{border:none!important}.project-table thead{display:none!important}.project-table,.project-table tbody,.project-table tr,.project-table td{box-sizing:border-box!important;width:100%!important;display:block!important}.project-table tr{border:1.5px solid var(--border-color)!important;background:#fff!important;border-radius:14px!important;margin-bottom:1.25rem!important;padding:.75rem!important;box-shadow:0 4px 16px #9a4f0f0f!important}.project-table tr:hover td{background:0 0!important}.project-table td{text-align:right!important;border-bottom:1px dashed var(--color-primary-10)!important;justify-content:flex-end!important;align-items:center!important;min-height:2.2rem!important;padding:.6rem .5rem .6rem 45%!important;display:flex!important;position:relative!important}.project-table td:last-child{border-bottom:none!important}.project-table td.sticky-0,.project-table td.sticky-1,.project-table td.sticky-2{box-shadow:none!important;background:0 0!important;position:static!important;left:auto!important}.project-table td:before{content:attr(data-label)!important;color:var(--color-sec-blue)!important;text-transform:uppercase!important;letter-spacing:.05em!important;text-align:left!important;white-space:nowrap!important;text-overflow:ellipsis!important;width:38%!important;font-size:.75rem!important;font-weight:700!important;position:absolute!important;top:50%!important;left:.5rem!important;overflow:hidden!important;transform:translateY(-50%)!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.flex-right-mobile-full{justify-content:flex-start;width:100%;margin-left:0!important}}body.dark{color:#f8fafc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--text:#cbd5e1;--text-soft:#94a3b8;--text-strong:#fff;--bg:#0c0c1b;--card-bg:#121228;--border-color:#222f47;--gradient-accent:linear-gradient(135deg, #f1a323, #f59e0b);--gradient-primary:linear-gradient(135deg, #121228, #1c1c38);background-color:#0c0c1b}body.dark .shell{background:radial-gradient(circle at 10% 10%,#f1a3230d,#0000 35%),radial-gradient(circle at 85% 20%,#2341751a,#0000 32%),linear-gradient(#0c0c1b 0%,#121228 100%)}body.dark .hero{color:#f8fafc;background:#121228cc;border-bottom:1px solid #ffffff0d}body.dark .hero.scrolled{background:#121228eb;border-bottom-color:#ffffff14;box-shadow:0 4px 20px #0000004d}body.dark .hero h1{color:#f8fafc}body.dark .hero p{color:#94a3b8}body.dark .logo-slot{color:var(--color-accent);background:0 0;border:none}body.dark .sidebar{background:#121228;border-right:1px solid #222f47}body.dark .sidebar-toggle{color:#f1a323}body.dark .sidebar-toggle:hover,body.dark .sidebar-tab:hover{background:#1c1c38}body.dark .sidebar-tab{color:#cbd5e1}body.dark .sidebar-tab.active{color:#f1a323;background:linear-gradient(90deg,#f1a32326,#0000);border-left-color:#f1a323}body.dark .sidebar-group-label{color:#f1a323}body.dark .sidebar-header{border-bottom:1px solid #222f47}body.dark .sidebar-group+.sidebar-group{border-top:1px solid #222f47}body.dark .card{color:#f8fafc;background:#121228;border:1px solid #222f47;box-shadow:0 4px 20px #00000040}body.dark .card h3,body.dark .kpi p{color:#f8fafc}body.dark .kpi-label{color:#f1a323}body.dark .kpi-tooltip-btn{color:#f1a323;border-color:#222f47}body.dark input,body.dark select,body.dark textarea{color:#f8fafc;background:#121228;border:1px solid #222f47}body.dark input:focus,body.dark select:focus,body.dark textarea:focus{background:#1c1c38;border-color:#f1a323}body.dark th{color:#f1a323;background:#1c1c38;border-bottom:1px solid #222f47}body.dark td{color:#e2e8f0;border-bottom:1px solid #222f47}body.dark tr:hover td{background:#1c1c38}body.dark .project-table th,body.dark .project-table tr:hover td{background:#1c1c38!important}body.dark button.ghost{color:#f1a323;background:#1c1c38;border:1px solid #222f47}body.dark button.ghost:hover:not(:disabled){color:#f1a323;background:#234175;border-color:#f1a323;box-shadow:0 4px 10px #f1a3231f}body.dark .modal-card{background:#121228;border:1px solid #222f47;box-shadow:0 15px 35px #0006}body.dark .modal-header h3{color:#f8fafc}body.dark .form-label{color:#cbd5e1}body.dark .check{color:#f1a323}body.dark .role-switcher{background:#f1a3230d;border:1px solid #222f47}body.dark .role-switcher button{color:#f1a323}body.dark .role-switcher button:hover{background:#f1a3231a}body.dark .fx-drawer{background:#121228;border-left:1px solid #222f47}body.dark .fx-drawer h2,body.dark .fx-drawer p{color:#f1a323!important}body.dark .fx-drawer span{color:#94a3b8!important}body.dark .fx-drawer strong{color:#f8fafc!important}body.dark .fx-drawer div{color:#f8fafc!important;background:#151c2c!important;border-color:#222f47!important}body.dark .fx-note{color:var(--color-accent)}body.dark .converter-result{color:#f8fafc}body.dark .auth-card{color:#f8fafc;background:#151c2c;border-color:#222f47}body.dark .feedback-panel{background:#151c2c!important;border-color:#222f47!important}body.dark .page-header{color:#f8fafc!important}body.dark .page-header p{color:#94a3b8!important}body.dark .section-layout-header{color:#f8fafc!important}body.dark .section-layout-title{color:var(--color-accent)!important}body.dark .stats-tab-container,body.dark h1,body.dark h2,body.dark h3,body.dark h4,body.dark h5,body.dark h6,body.dark .section-header-title,body.dark .section-header h3,body.dark .section-header h2,body.dark .page-title,body.dark .page-subtitle{color:#f8fafc!important}body.dark label,body.dark .form-label{color:#cbd5e1!important}body.dark .card p,body.dark .card span:not(.pill),body.dark .card div{color:inherit}body.dark p{color:#cbd5e1}body.dark .section-form-panel{background:#151c2c!important;border-color:#222f47!important}body.dark .error-banner{color:#fca5a5!important;background:#2d1010!important;border-color:#7f1d1d!important}body.dark .approval-table tr.row-pending td{background:#1e1a0a!important}body.dark .approval-table tr.row-approved td{background:#052e16!important}body.dark .approval-table tr.row-rejected td{background:#2d0f0f!important}body.dark .approval-table tr.row-pending:hover td{background:#2a2206!important}body.dark .approval-table tr.row-approved:hover td{background:#064e2d!important}body.dark .approval-table tr.row-rejected:hover td{background:#3d1515!important}body.dark .project-table tr{background:#151c2c!important}body.dark .kpi-delta.up{color:#4ade80!important}body.dark .kpi-delta.down{color:#f87171!important}body.dark .kpi-delta.flat{color:#9ca3af!important}body.dark .pill.ok{color:#4ade80!important;background:#052e16!important}body.dark .pill.error{color:#f87171!important;background:#2d0f0f!important}body.dark .pill.warn{color:#fbbf24!important;background:#1c1400!important}body.dark .summary-row{border-bottom-color:#222f47!important}body.dark .info-tooltip-icon{color:var(--color-accent);background:#1e293b;border-color:#222f47}body.dark .modal-overlay{background:#000000bf!important}body.dark .switch-item{color:#cbd5e1!important}body.dark .glass-card{background:#151c2cd9!important;border-color:#222f47!important}body.dark .badges{border-top-color:#222f47}body.dark .sidebar-backdrop{background:#0000008c}body.dark .pill.neutral{color:var(--color-accent)!important;background:#1e293b!important}body.dark .hero-meta{color:var(--color-accent)}body.dark .searchable-select-option:hover{background-color:#202a3f!important}body.dark .page-header h1,body.dark .page-header h2{color:#f8fafc!important}body.dark .loading{color:var(--color-accent)}body.dark [style*="background: #f0fdf4"],body.dark [style*="background: #dcfce7"],body.dark [style*="background: #d1fae5"]{color:#86efac!important;background:#052e16!important;border-color:#14532d!important}body.dark [style*="background: #fff1f2"],body.dark [style*="background: #fff5f5"],body.dark [style*="background: #fef2f2"]{color:#fca5a5!important;background:#2d0f0f!important;border-color:#7f1d1d!important}body.dark [style*="background: #fffbf0"],body.dark [style*="background: #fefce8"]{color:#fbbf24!important;background:#1e1a0a!important;border-color:#3a2a00!important}body.dark [style*="color: var(--color-primary)"],body.dark [style*="color: var(--color-primary)"],body.dark [style*="color: #7a3c10"],body.dark [style*="color: #5f4530"],body.dark [style*="color: #6b5440"],body.dark [style*="color: #3c1810"],body.dark [style*="color: #4a2010"]{color:#cbd5e1!important}body.dark [style*="color: var(--color-sec-blue)"],body.dark [style*="color: var(--color-accent)"],body.dark [style*="color: #9a3412"],body.dark [style*="color: #c2410c"]{color:var(--color-accent)!important}body.dark [style*="border: 1px solid var(--border-color)"],body.dark [style*="border: 1px solid #ffd8a8"],body.dark [style*="border: 1px solid var(--color-primary-20)"],body.dark [style*="border: 1px solid #fde68a"],body.dark [style*="border: 1px solid #fed7aa"]{border-color:#222f47!important}body.dark .section-header-title{color:#f8fafc!important}.role-badge{border:1px solid #0000;border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .6rem;font-size:.72rem;font-weight:700;display:inline-flex}.role-badge.role-admin{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.role-badge.role-pm{color:#92400e;background:#fef3c7;border-color:#fde68a}.role-badge.role-consultant{color:#1e40af;background:#dbeafe;border-color:#bfdbfe}.role-badge.role-finance{color:#166534;background:#dcfce7;border-color:#bbf7d0}.role-badge.role-viewer{color:#374151;background:#f3f4f6;border-color:#e5e7eb}.role-chip-group{flex-wrap:wrap;gap:.5rem;display:flex}.role-chip{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.role-chip:hover{filter:brightness(.95);transform:translateY(-1px)}.role-chip:active{transform:translateY(0)}.role-chip.inactive{color:#6b7280!important;background:#f9fafb!important;border-color:#e5e7eb!important}.role-chip.inactive:hover{color:#4b5563!important;background:#f3f4f6!important;border-color:#d1d5db!important}body.dark .role-badge.role-admin{color:#fca5a5!important;background:#450a0a!important;border-color:#7f1d1d!important}body.dark .role-badge.role-pm{color:#fde68a!important;background:#451a03!important;border-color:#78350f!important}body.dark .role-badge.role-consultant{color:#93c5fd!important;background:#172554!important;border-color:#1e3a8a!important}body.dark .role-badge.role-finance{color:#86efac!important;background:#022c22!important;border-color:#064e3b!important}body.dark .role-badge.role-viewer{color:#d1d5db!important;background:#1f2937!important;border-color:#374151!important}body.dark .role-chip.inactive{color:#94a3b8!important;background:#1e293b!important;border-color:#334155!important}body.dark .role-chip.inactive:hover{color:#cbd5e1!important;background:#334155!important;border-color:#475569!important}body.dark aside[role=dialog][aria-label="Panel de alertas"]{background:#0f172a!important;border-left:1px solid #1e293b!important;box-shadow:-6px 0 28px #0006!important}body.dark aside[role=dialog][aria-label="Panel de alertas"]>div:first-child{background:#1e293b!important;border-bottom:1px solid #334155!important}body.dark aside[role=dialog][aria-label="Panel de alertas"] h2{color:#f8fafc!important}body.dark aside[role=dialog][aria-label="Panel de alertas"] p{color:#94a3b8!important}body.dark .alert-group-header{color:#e2e8f0!important;background:#1e293b!important;border-color:#334155!important}body.dark .alert-empty-state{color:#94a3b8!important}body.dark .alert-card.sev-critical{background:#2d1212!important;border-color:#dc26264d!important}body.dark .alert-card.sev-warning{background:#221600!important;border-color:#92400e4d!important}body.dark .alert-card.sev-info{background:#0f172a!important;border-color:#1d4ed84d!important}body.dark .alert-message-text{color:#cbd5e1!important}body.dark .alert-project-name{color:#94a3b8!important}body.dark div[style*="background: #fff"][style*="border: 1px solid var(--border-color)"]{color:#f8fafc!important;background:#1e293b!important;border-color:#334155!important}body.dark div[style*="background: #fff"][style*="border: 1px solid var(--border-color)"] h3{color:#f8fafc!important}body.dark div[style*="background: #fff"][style*="border: 1px solid var(--border-color)"] p{color:#94a3b8!important}body.dark div[style*="background: #fff"][style*="border: 1px solid var(--border-color)"] span[style*="background: #fff3e8"]{color:#f8fafc!important;background:#334155!important}body.dark div[style*="background: #fff"][style*="border: 1px solid var(--border-color)"] button[style*="background: #fff"]{color:#f8fafc!important;background:#0f172a!important;border-color:#334155!important}body.dark div[style*="background: #fff"][style*="border: 1px solid var(--border-color)"] button[style*="background: #fff"]:hover{background:#1e293b!important}body.dark .month-day-cell{color:#e2e8f0!important;background:#151c2c!important;border:1px solid #222f47!important}body.dark .month-day-cell .day-number{color:var(--color-accent)!important}body.dark [style*="background: rgb(255, 255, 255)"],body.dark [style*="background: rgb(255, 248, 240)"],body.dark [style*="background: rgb(253, 248, 245)"]{color:#e2e8f0!important;background:#151c2c!important;border-color:#222f47!important}.extra-hours-suggestion-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fef3c7a6;border:1px solid #fbbf24;border-radius:14px;grid-column:span 2;margin-top:.5rem;padding:1rem;box-shadow:0 4px 6px -1px #d977060d}.extra-hours-suggestion-box strong{color:#92400e}.extra-hours-suggestion-box p{color:var(--color-accent)}.extra-hours-suggestion-box label{color:#92400e}.extra-hours-suggestion-box input{color:var(--color-primary);background:#fff;border:1px solid #fde68a;border-radius:6px;padding:.4rem .5rem;font-size:.82rem}body.dark .extra-hours-suggestion-box{box-shadow:none!important;background:#f9731614!important;border-color:#f973164d!important}body.dark .extra-hours-suggestion-box strong{color:var(--color-accent)!important}body.dark .extra-hours-suggestion-box p{color:#cbd5e1!important}body.dark .extra-hours-suggestion-box label{color:var(--color-accent)!important}body.dark .extra-hours-suggestion-box input{color:#f8fafc!important;background:#151c2c!important;border-color:#f973164d!important}.teams-sync-header{background:linear-gradient(90deg,#ececfc,#f5f3ff);border-bottom:1px solid #c7d2fe;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.teams-sync-header h3{color:#3730a3!important}.teams-sync-header button.ghost{border-color:#4f46e533;color:#3730a3!important}.teams-sync-info{color:#4f46e5;background:#f5f3ff;border:1px solid #c7d2fe;border-radius:10px;gap:.5rem;padding:.75rem 1rem;font-size:.82rem;display:flex}.teams-sync-info strong{color:#3730a3}.teams-sync-label{color:#3730a3;font-size:.78rem;font-weight:700}.teams-event-table-container{background:var(--color-primary-05);border:1px solid #e5e7eb;border-radius:12px;flex:1;min-height:220px;overflow-y:auto}.teams-event-table-container table{border-collapse:collapse;min-width:100%!important}.teams-event-table-container tr.teams-header-row{background:#f5f3ff;border-bottom:1px solid #e5e7eb}.teams-event-table-container tr.teams-header-row th{color:#4b5563;background:#f5f3ff;padding:.6rem .5rem;font-size:.75rem;font-weight:700}.teams-event-table-container tbody tr{background:0 0;border-bottom:1px solid #f3f4f6;transition:background-color .15s}.teams-event-table-container tbody tr:hover{background:#4f46e508}.teams-event-table-container tbody tr.imported{opacity:.75;background:#f9fafb}.teams-sync-footer{background:#fafafa;border-top:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}body.dark .teams-sync-header{background:linear-gradient(90deg,#1e1b4b,#2e1065);border-bottom-color:#312e81}body.dark .teams-sync-header h3{color:#e0e7ff!important}body.dark .teams-sync-header button.ghost{background:#818cf81a;border-color:#818cf84d;color:#e0e7ff!important}body.dark .teams-sync-info{color:#c7d2fe;background:#4f46e51a;border-color:#6366f14d}body.dark .teams-sync-info strong{color:#e0e7ff}body.dark .teams-sync-label{color:#c7d2fe}body.dark .teams-event-table-container{background:#151c2c;border-color:#222f47}body.dark .teams-event-table-container tr.teams-header-row{background:#1e1b4b;border-bottom-color:#222f47}body.dark .teams-event-table-container tr.teams-header-row th{color:#c7d2fe;background:#1e1b4b}body.dark .teams-event-table-container tbody tr{border-bottom-color:#222f47}body.dark .teams-event-table-container tbody tr:hover{background:#6366f114!important}body.dark .teams-event-table-container tbody tr.imported{opacity:.65;background:#1e293b}body.dark .teams-sync-footer{background:#111827;border-top-color:#222f47}.week-grid{grid-template-columns:repeat(7,1fr);align-items:start;gap:1rem;min-width:900px;display:grid;overflow-x:auto}.week-column-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;min-height:350px;padding:.75rem;transition:background-color .22s,border-color .22s;display:flex;position:relative;box-shadow:0 2px 10px #00000008}.week-column-card.is-blocked{opacity:.75;background:#f9fafb;border:1px dashed #d1d5db}.week-column-header{text-align:center;border-bottom:1px solid #f3f4f6;margin-bottom:.75rem;padding-bottom:.5rem}.week-column-stat-pill{color:#4b5563;background:#f3f4f6;border-radius:4px;padding:.1rem .3rem;font-size:.7rem}.day-activity-item{cursor:pointer;border-radius:8px;padding:.5rem;transition:all .2s;position:relative}.day-activity-item.personal{background:#faf5ff;border:1px solid #e9d5ff}.day-activity-item:not(.personal){background:#fffbeb;border:1px solid #fde68a}.day-activity-item:hover{transform:translateY(-1px);box-shadow:0 4px 6px #0000000d}.day-blocked-label{text-align:center;color:#ef4444;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;width:100%;margin-top:.5rem;padding:.4rem .25rem;font-size:.72rem;font-weight:600}body.dark .week-column-card{box-shadow:none;background:#151c2c;border-color:#222f47}body.dark .week-column-card.is-blocked{background:#0f172a!important;border-color:#334155!important}body.dark .week-column-header{border-bottom-color:#222f47}body.dark .week-column-stat-pill{color:#cbd5e1;background:#1e293b}body.dark .day-activity-item.personal{background:#a855f714!important;border-color:#a855f74d!important}body.dark .day-activity-item:not(.personal){background:#f59e0b14!important;border-color:#f59e0b4d!important}body.dark .day-blocked-label{color:#fca5a5!important;background:#2d1010!important;border-color:#7f1d1d!important}.month-grid-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:12px;transition:background-color .22s,border-color .22s;overflow:hidden}.month-grid-header{text-align:center;background:#f9fafb;border-bottom:1px solid #e5e7eb;grid-template-columns:repeat(7,1fr);padding:.5rem 0;display:grid}.month-grid-body{grid-template-columns:repeat(7,1fr);grid-auto-rows:100px;display:grid}.month-day-cell{cursor:pointer;background:#fff;border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;flex-direction:column;justify-content:space-between;padding:.4rem;transition:background-color .15s,border-color .15s;display:flex}.month-day-cell:hover{background-color:var(--color-primary-05)}.month-day-cell.is-blocked{color:#b91c1c;background:#fdf2f2}.month-day-cell.out-of-month{opacity:.4;background:#f9fafb}.month-day-cell.is-weekend:not(.out-of-month):not(.is-blocked){background:#fffcf9}body.dark .month-grid-wrapper{background:#151c2c;border-color:#222f47}body.dark .month-grid-header{background:#1e293b;border-bottom-color:#222f47}body.dark .month-day-cell{color:#e2e8f0;background:#151c2c;border-bottom-color:#222f47;border-right-color:#222f47}body.dark .month-day-cell:hover{background-color:#202a3f}body.dark .month-day-cell.is-blocked{color:#fca5a5!important;background:#2d1010!important;border-color:#7f1d1d!important}body.dark .month-day-cell.out-of-month{opacity:.35;background:#0f172a!important}body.dark .month-day-cell.is-weekend:not(.out-of-month):not(.is-blocked){background:#101622}.show-mobile-only{display:none!important}.legislation-card{background:var(--color-accent-05);border:1px solid #fde68a;border-radius:14px;padding:1.5rem;box-shadow:0 4px 12px #9a4f0f0a}.legislation-card h4{color:var(--color-sec-blue)}.legislation-card p{color:#725a48}.legislation-card ul{color:#475569}.country-tab-btn.ghost{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0}.country-tab-btn.ghost:hover{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}body.dark .legislation-card{background:#151c2c!important;border:1px solid #222f47!important;box-shadow:0 4px 12px #0003!important}body.dark .legislation-card h4{color:var(--color-accent)!important}body.dark .legislation-card p{color:#cbd5e1!important}body.dark .legislation-card ul,body.dark .legislation-card li{color:#94a3b8!important}body.dark .country-tab-btn.ghost{color:#cbd5e1!important;background:#1e293b!important;border-color:#334155!important}body.dark .country-tab-btn.ghost:hover{color:#f8fafc!important;background:#2d3748!important;border-color:#475569!important}@media (width>=769px){.week-grid.five-days,.month-grid-header.five-days,.month-grid-body.five-days{grid-template-columns:repeat(5,1fr)!important}}@media (width<=1024px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dashboard-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))!important}.three-col{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media (width<=768px){.main-content{padding:1rem .75rem 2rem!important}.hero{flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem!important}.hero h1{font-size:1.1rem!important}.hero>div>p{display:none}.hero-meta{font-size:.62rem}.badges{justify-content:flex-start;gap:.35rem;width:100%;overflow-x:auto}.role-switcher{max-width:100%;flex-wrap:nowrap!important;padding:2px!important;overflow-x:auto!important}.role-switcher>span:first-child{display:none}.mobile-menu-toggle{border:1px solid var(--border-color);cursor:pointer;width:36px;height:36px;color:var(--color-sec-red);background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;display:flex!important}.sidebar{box-shadow:none;transition:transform .28s cubic-bezier(.4,0,.2,1);top:0;left:0;transform:translate(-100%);z-index:500!important;width:260px!important;height:100dvh!important;position:fixed!important}.sidebar:not(.collapsed){transform:translate(0);box-shadow:4px 0 24px #0000002e}.sidebar.collapsed{transform:translate(-100%);width:260px!important}.sidebar.collapsed .sidebar-label{opacity:1!important;width:auto!important}.sidebar.collapsed .sidebar-group-label{opacity:1!important;max-height:2rem!important;padding:.25rem .75rem .2rem!important}.sidebar-toggle{display:none!important}.sidebar-close-mobile{all:unset;cursor:pointer;color:var(--color-sec-red);text-align:right;box-sizing:border-box;border-bottom:1px solid var(--border-color);width:100%;padding:.75rem;font-size:1.2rem;display:flex!important}.sidebar-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:499;background:#0f172a80;display:block;position:fixed;inset:0}.dashboard-grid,.dashboard-grid-wide,.two-col,.three-col,.form-grid.two-col{grid-template-columns:1fr!important}.form-grid>.full-width,.form-grid>div[style*=span\ 2]{grid-column:span 1!important}.modal-overlay{align-items:flex-start!important;padding:1rem .5rem!important}.modal-card{border-radius:14px!important;width:calc(100% - 1rem)!important;max-width:100%!important;margin:0 auto!important;padding:1.25rem 1rem!important}.table-scroll-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}table{min-width:600px}.week-grid{grid-template-columns:1fr!important;min-width:0!important}.month-day-cell{min-height:60px!important}.nav-bar-week{text-align:center;flex-direction:column!important;gap:.5rem!important}.nav-bar-week>div{justify-content:center}.filters-panel{flex-direction:column!important;align-items:stretch!important}.filters-panel>div{width:100%!important;min-width:0!important}.flex-right-mobile-full{flex-wrap:wrap;width:100%;margin-left:0!important}.flex-right-mobile-full button{flex:auto;justify-content:center;min-width:0;padding:.45rem .75rem!important;font-size:.78rem!important}.kpi p{font-size:1.1rem!important}.hide-mobile{display:none!important}.show-mobile-only{display:inline-block!important}}@media (width<=480px){.hero{padding:.6rem .75rem!important}.hero-left{gap:.5rem}.logo-slot{width:40px!important;min-width:40px!important;height:40px!important}.hero h1{font-size:.95rem!important}.main-content{padding:.75rem .5rem 2rem!important}.card{border-radius:10px!important;padding:.75rem!important}}@media (width>=769px){.mobile-menu-toggle,.sidebar-close-mobile,.sidebar-backdrop{display:none!important}}
