:root{--esa-blue-50:#eef7fc;--esa-blue-100:#d6ebf7;--esa-blue-500:#0a7ec2;--esa-blue-600:#0a6ca6;--esa-blue-700:#085586;--esa-blue-800:#06416a;--esa-navy-950:#08192a;--esa-navy-900:#0b1f33;--neutral-0:#fff;--neutral-25:#f7f9fb;--neutral-50:#f2f5f8;--neutral-100:#e7ecf1;--neutral-200:#d8e0e8;--neutral-300:#c4cfda;--neutral-500:#647382;--neutral-700:#536270;--neutral-900:#17242f;--warning-500:#f0a41b;--error-600:#b3261e;--error-700:#8c1d18;--error-bg:#fdeceb;--error-border:#f2c3bf;--tape-red:#c62b2b;--tape-yellow:#f2c116;--surface-page:var(--neutral-50);--surface-card:var(--neutral-0);--surface-subtle:var(--neutral-25);--surface-inset:var(--neutral-100);--border-subtle:var(--neutral-100);--border-default:var(--neutral-200);--border-strong:var(--neutral-300);--border-strong-hover:#a9b8c6;--border-on-dark:#ffffff1f;--border-on-dark-strong:#ffffff47;--text-primary:var(--neutral-900);--text-secondary:var(--neutral-700);--text-muted:var(--neutral-500);--text-disabled:#97a3ae;--text-link:var(--esa-blue-600);--text-on-dark:#fff;--text-on-dark-secondary:#cfe0ee;--text-on-dark-muted:#a8bccf;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:40px;--space-8:48px;--space-9:64px;--space-10:80px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--shadow-xs:0 1px 2px #1020300f;--shadow-sm:0 1px 3px #10203014, 0 1px 2px #1020300a;--shadow-md:0 4px 12px #0b1f331a, 0 1px 2px #0b1f330f;--shadow-header:0 1px 0 #ffffff0f inset, 0 2px 6px #0b1f332e;--font-sans:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font-mono:"Cascadia Mono", ui-monospace, "SF Mono", Consolas, monospace;--font-display:"Oswald", "Arial Narrow", "Helvetica Neue Condensed", sans-serif;--focus-ring-color:var(--esa-blue-600);--focus-ring-color-on-dark:#7cc4ee;--focus-ring-halo:0 0 0 4px #0a7ec247;--header-h:60px;--transition:.12s ease-out}@font-face{font-family:Oswald;src:url(/assets/oswald-latin-9AWb_KF-.woff2)format("woff2");font-weight:200 700;font-style:normal;font-display:swap}*{box-sizing:border-box}body{font-family:var(--font-sans);background:var(--surface-page);color:var(--text-primary);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:22px}.app-shell{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.skip-link{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link:focus-visible{top:var(--space-2);left:var(--space-2);z-index:200;clip-path:none;background:var(--surface-card);width:auto;height:auto;color:var(--text-link);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);box-shadow:var(--shadow-md);position:absolute}.app-header{align-items:center;gap:var(--space-4);height:var(--header-h);padding:0 var(--space-5);z-index:100;background:var(--esa-navy-900);border-bottom:1px solid var(--border-on-dark);box-shadow:var(--shadow-header);color:var(--text-on-dark);flex:none;display:flex}.app-header-title{align-items:center;gap:var(--space-3);min-width:0;display:flex}.app-header-title h1{white-space:nowrap;margin:0;font-size:16px;font-weight:600;line-height:24px}.app-header-rule{background:#ffffff29;width:1px;height:20px}.app-header-subtitle{color:var(--text-on-dark-muted);white-space:nowrap;font-size:13px;line-height:18px}.app-logo{flex:none;width:auto;height:30px;display:block}.app-header-user{align-items:center;gap:var(--space-3);min-width:0;margin-left:auto;display:flex}.app-avatar{width:28px;height:28px;color:var(--text-on-dark-secondary);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:700;display:grid}.app-header-username{color:var(--text-on-dark-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:22ch;font-weight:500;overflow:hidden}.account-menu{position:relative}.account-menu-trigger{align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-2) 0 var(--space-1);border-radius:var(--radius-md);color:var(--text-on-dark);background:0 0;display:flex;position:relative}.account-menu-trigger:hover{background:#ffffff14}.account-menu-trigger:after{content:"";position:absolute;inset:-2px -4px}.account-menu-trigger:focus-visible{outline-color:var(--focus-ring-color-on-dark);box-shadow:none}.account-menu-chevron{color:var(--text-on-dark-muted);transition:transform var(--transition);place-items:center;display:grid}.account-menu-trigger[aria-expanded=true] .account-menu-chevron{transform:rotate(180deg)}.account-menu-pop{z-index:200;background:var(--surface-card);min-width:248px;color:var(--text-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-1);position:absolute;top:calc(100% + 10px);right:0}.account-menu-identity{padding:var(--space-3) var(--space-3) var(--space-2);gap:2px;display:grid}.account-menu-name{font-size:14px;font-weight:600;line-height:20px}.account-menu-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:18px;overflow:hidden}.account-menu-rule{background:var(--border-subtle);height:1px;margin:var(--space-1) 0}.account-menu-item{width:100%;height:40px;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--text-primary);background:0 0;justify-content:flex-start;font-size:14px;font-weight:500}.account-menu-item:hover{background:var(--surface-page)}.app-main{flex:1;min-width:0;min-height:0;overflow:hidden}.mock-badge{height:20px;padding:0 var(--space-2);border-radius:var(--radius-sm);color:var(--warning-500);letter-spacing:.08em;text-transform:uppercase;background:#f0a41b29;border:1px solid #f0a41b73;align-items:center;font-size:11px;font-weight:700;line-height:14px;display:inline-flex}button{font:600 15px/1 var(--font-sans);justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;border-radius:var(--radius-md);white-space:nowrap;transition:background-color var(--transition), border-color var(--transition), box-shadow var(--transition);border:1px solid #0000;display:inline-flex}button:focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px;box-shadow:var(--focus-ring-halo)}.button-primary{height:44px;padding:0 var(--space-5);background:var(--esa-blue-600);color:#fff;box-shadow:var(--shadow-xs)}.button-primary:hover:not(:disabled){background:var(--esa-blue-700)}.button-primary:active:not(:disabled){background:var(--esa-blue-800);box-shadow:inset 0 1px 2px #0000002e}.button-primary:disabled{background:var(--surface-inset);border-color:var(--border-default);color:var(--text-disabled);cursor:not-allowed;box-shadow:none}.button-secondary{height:40px;padding:0 var(--space-4);background:var(--surface-card);border-color:var(--border-strong);color:var(--text-primary)}.button-secondary:hover{background:var(--surface-page);border-color:var(--border-strong-hover)}.button-secondary:active{background:var(--surface-inset)}@media (forced-colors:active){button:focus-visible{outline:2px solid highlight}}.signin-page{background:var(--esa-blue-700);min-height:100dvh;color:var(--text-on-dark);flex-direction:column;display:flex}.signin-masthead{padding:var(--space-5) var(--space-8) 0;flex:none}.signin-logo{width:auto;height:44px;display:block}.signin-main{align-items:center;gap:var(--space-9);width:100%;max-width:1340px;padding:var(--space-7) var(--space-8);flex:1;grid-template-columns:1.1fr .9fr;margin:0 auto;display:grid}.signin-pitch h1{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.015em;max-width:13ch;margin:0;font-size:clamp(44px,5.4vw,82px);font-weight:600;line-height:1.04}.signin-lede{margin:var(--space-5) 0 0;color:var(--text-on-dark-secondary);max-width:46ch;font-size:17px;line-height:27px}.signin-facts{margin:var(--space-7) 0 0;gap:var(--space-3);padding:0;font-size:15px;font-weight:500;line-height:22px;list-style:none;display:grid}.signin-facts li{align-items:center;gap:var(--space-3);display:flex}.signin-fact-tick{background:var(--esa-navy-900);border-radius:2px;flex:none;place-items:center;width:20px;height:20px;display:grid}.signin-access{justify-content:flex-end;display:flex}.signin-card{background:var(--surface-card);width:100%;max-width:400px;color:var(--text-primary);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:var(--space-6);animation:.48s cubic-bezier(.16,1,.3,1) both signin-enter}.signin-card h2{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:26px;font-weight:600;line-height:32px}.signin-card-helper{margin:var(--space-2) 0 0;color:var(--text-secondary);max-width:34ch}.signin-card .button-primary{width:100%;margin-top:var(--space-6)}.signin-cta{border-radius:var(--radius-sm);height:48px;font-family:var(--font-display);letter-spacing:.07em;text-transform:uppercase;font-size:16px;font-weight:500}.signin-cta-ms{background:#fff;border-radius:3px;flex:none;place-items:center;width:24px;height:24px;display:grid}.signin-card-smallprint{margin:var(--space-4) 0 0;padding-top:var(--space-5);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:13px;line-height:18px}.signin-error{align-items:flex-start;gap:var(--space-2);margin:var(--space-5) 0 0;padding:var(--space-3);background:var(--error-bg);border:1px solid var(--error-border);border-radius:var(--radius-sm);display:flex}.signin-error-icon{color:var(--error-600);flex:none}.signin-error strong{color:var(--error-700);display:block}.signin-error span{margin-top:var(--space-1);color:var(--text-primary);display:block}.signin-foot{width:100%;max-width:1340px;padding:0 var(--space-8) var(--space-5);flex:none;margin:0 auto}.signin-footnote{color:var(--text-on-dark-muted);margin:0;font-size:13px;line-height:18px}.signin-tape{background:repeating-linear-gradient(-45deg, var(--tape-red) 0 26px, var(--tape-yellow) 26px 52px);flex:none;height:30px}.loading{align-content:center;place-items:center;gap:var(--space-4);background:var(--surface-page);height:100%;display:grid}.loading p{margin:0;font-weight:500}.loading-hint{color:var(--text-muted);opacity:0;font-size:13px;line-height:18px;animation:.2s ease-out 1.5s forwards reveal}.loading-spinner{border:3px solid var(--border-default);border-top-color:var(--esa-blue-600);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes reveal{to{opacity:1}}@keyframes signin-enter{0%{opacity:0;transform:translateY(10px)}}@keyframes pulse{0%,to{opacity:.45}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.signin-card{animation:none}.loading-spinner{border-top-color:var(--border-default);background:var(--esa-blue-100);animation:1.6s ease-in-out infinite pulse}.loading-hint{animation-duration:1ms}}.error-panel{background:var(--surface-card);border:1px solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-6);max-width:560px;margin:var(--space-9) auto;max-height:calc(100% - var(--space-6));overflow-y:auto}.error-panel-head{align-items:center;gap:var(--space-3);display:flex}.error-panel-icon{color:var(--error-600);flex:none}.error-panel h2{margin:0;font-size:18px;font-weight:600;line-height:26px}.error-panel p{margin:var(--space-2) 0 0;color:var(--text-secondary);max-width:62ch}.error-reference{align-items:baseline;gap:var(--space-2);margin-top:var(--space-4);background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:13px;line-height:18px;display:flex}.error-reference-label{color:var(--text-muted)}.error-reference-value{font-family:var(--font-mono);color:var(--text-secondary);-webkit-user-select:all;user-select:all;word-break:break-all}.error-panel-actions{margin-top:var(--space-5)}.powerbi-container{width:100%;height:100%}.powerbi-container iframe{display:block}.mock-embed{padding:var(--space-4) var(--space-5);gap:1rem;display:grid}.mock-banner{color:#7a5410;background:#fdf3e0;border:1px solid #e3c98a;border-radius:6px;padding:.5rem .75rem;font-size:.85rem}.mock-report-header{background:var(--surface-card);border:1px solid var(--border-default);border-radius:8px;padding:1rem 1.25rem}.mock-report-header h2{margin:0 0 .5rem;font-size:1.05rem}.mock-report-meta{gap:.35rem;margin:0;font-size:.82rem;display:grid}.mock-report-meta div{gap:.5rem;display:flex}.mock-report-meta dt{min-width:8.5rem;font-weight:600}.mock-report-meta dd{word-break:break-all;margin:0}.mono{font-family:ui-monospace,Cascadia Mono,Consolas,monospace}.mock-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;display:grid}.mock-kpi-tile{background:var(--surface-card);border:1px solid var(--border-default);border-top:3px solid var(--esa-blue-500);border-radius:8px;gap:.4rem;padding:.9rem 1rem;display:grid}.mock-kpi-label{color:#5a6b7b;font-size:.78rem}.mock-kpi-value{font-size:1.7rem;font-weight:700}.mock-chart-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:.75rem;display:grid}.mock-chart{background:var(--surface-card);border:1px solid var(--border-default);color:#8ba0b3;text-align:center;border-radius:8px;place-items:center;min-height:220px;padding:1rem;font-size:.9rem;display:grid}@media (width>=1440px){.signin-masthead{padding:var(--space-6) var(--space-9) 0}.signin-main{padding:var(--space-8) var(--space-9)}.signin-foot{padding:0 var(--space-9) var(--space-6)}}@media (width<=1279px){.app-header{padding:0 var(--space-4)}.app-header-rule,.app-header-subtitle{display:none}.signin-masthead{padding:var(--space-5) var(--space-7) 0}.signin-main{gap:var(--space-7);padding:var(--space-6) var(--space-7)}.signin-foot{padding:0 var(--space-7) var(--space-5)}}@media (width<=1023px){.signin-main{align-content:center;gap:var(--space-7);grid-template-columns:1fr}.signin-pitch h1{max-width:16ch}.signin-access{justify-content:flex-start}.signin-card{max-width:440px}}@media (width<=767px){:root{--header-h:56px}.app-header-username{display:none}.signin-masthead{padding:var(--space-4) var(--space-5) 0}.signin-logo{height:36px}.signin-main{gap:var(--space-6);padding:var(--space-5) var(--space-5) var(--space-6)}.signin-pitch h1{font-size:clamp(32px,9.5vw,44px)}.signin-card{padding:var(--space-5)}.signin-foot{padding:0 var(--space-5) var(--space-4)}.signin-tape{height:22px}.app-main{overflow:auto}.powerbi-container{height:640px}}@media (width<=419px){.signin-card{padding:var(--space-5) var(--space-4)}.signin-cta{letter-spacing:.05em;font-size:14px}}
