/* Desktop-first financial console; native table scrolling preserves exact values. */
body:has(.ec) main{max-width:none;margin:0;padding:24px 28px 70px 16px}
body:has(.ec) .project-layout{grid-template-columns:240px minmax(0,1fr);gap:28px}
.ec{font-size:14px;--mint:#b9f56d}
.ec-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:24px}
.ec h1{font-size:clamp(28px,3vw,42px);margin:14px 0 10px;line-height:1.12}
.ec-heading p{margin:0;font-size:14px;color:#96a7b2}
.ec-badge{display:inline-block;font-size:10px;font-weight:600;letter-spacing:.04em;border:1px solid #36424b;border-radius:5px;padding:5px 8px;color:#becbd3;white-space:nowrap}
.ec-badge.environment{color:#d6d8b1;background:#1c2119;border-color:#3b4630;margin-top:6px}
.ec-search-wrap{position:relative;margin:26px 0 18px}
#ec-search-form{display:flex;align-items:center;gap:12px;background:#11181d;border:1px solid #35434b;border-radius:9px;padding:8px 10px 8px 16px}
#ec-search-form>span{color:var(--accent);font-size:26px}#ec-search{border:0;background:transparent;padding:8px;font-size:14px}
#ec-search-results{position:absolute;top:100%;left:0;right:0;z-index:5;background:#172027;border:1px solid #40515d;border-radius:0 0 9px 9px;box-shadow:0 18px 35px #0008;max-height:350px;overflow:auto}
#ec-search-results button{display:block;width:100%;border:0;border-bottom:1px solid #2b3942;border-radius:0;text-align:left;background:transparent;padding:14px 20px}
#ec-search-results button:hover{background:#243329}#ec-search-results span{display:block;color:#9eb0ba;font-size:12px;margin-top:5px}
#ec-search-results p{padding:5px 20px}
.ec-toolbar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:18px}
.ec-toolbar label,.ec-filters label{display:grid;gap:6px;font-size:10px;letter-spacing:.025em;color:#a2b1ba}
.ec-toolbar input{max-width:155px;padding:9px 10px;font-size:12px}.ec-toolbar select{padding:9px 10px;font-size:12px;min-height:36px}
.ec-toolbar button{font-size:12px;padding:9px 12px}.ec-presets{display:flex;gap:3px;margin-right:auto}.ec-presets button{background:transparent;color:#97a9b4}
.ec-meta{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:10px;color:#748996;margin:13px 0 25px}
.ec-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0}
.ec-kpi{border:1px solid var(--line);border-radius:9px;background:#10171c;padding:21px 22px;min-height:136px;min-width:0}
.ec-kpi>span{display:block;color:#a6b5bf;font-size:12px}
.ec-kpi>strong{display:block;font-weight:530;letter-spacing:-.035em;font-size:clamp(20px,1.65vw,29px);font-variant-numeric:tabular-nums;line-height:1.25;margin:15px 0 10px;overflow-wrap:anywhere}
.ec-kpi>small{display:block;color:#778e9c;font-size:11px;line-height:1.45}
.ec-kpi.accent{background:linear-gradient(120deg,#202f22,#111b15);border-color:#405839}.ec-kpi.accent>strong{color:var(--mint)}
.ec-kpis.secondary .ec-kpi{background:transparent;min-height:120px}.ec-kpis.secondary strong{font-size:21px}
.ec-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:18px;align-items:start}
.ec-card{background:#10171c;border:1px solid var(--line);border-radius:10px;margin-bottom:18px;overflow:hidden;min-width:0}
.ec-card-head{padding:19px 21px 17px;display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #202b32}
.ec-card-head h2{font-size:14px;letter-spacing:-.01em;font-weight:550;margin:0}.ec-card-head>span{font-size:10px;color:#8399a6;text-align:right;max-width:55%;line-height:1.5}
.ec-table{overflow:auto;max-width:100%}.ec-table table{width:100%;font-variant-numeric:tabular-nums}.ec-table th{font-size:10px;padding:13px 17px;background:#151f25;color:#829ca9;text-transform:uppercase;letter-spacing:.04em}
.ec-table td{font-size:12px;padding:15px 17px;border-color:#222c33;color:#d0dbe1}.ec-table td:first-child,.ec-table th:first-child{width:auto;padding-right:17px}
.ec-table td small{display:block;font-size:10px;color:#79909d;margin-top:5px}
.ec-table tbody tr:hover{background:#152027}.ec-table button{font-size:11px;padding:6px 9px}.ec-table .ec-text{background:none;border:0;padding:0;color:#b9d1dc}
.ec-wrap{white-space:normal;min-width:160px;max-width:340px;overflow-wrap:anywhere}
.ec-empty{text-align:center;padding:48px 20px;color:#91a4b0}.ec-empty>span{font-size:26px;color:#637e8b}
.ec-empty h3{font-weight:500;font-size:15px;color:#cbd8df;margin:15px 0 7px}.ec-empty p{font-size:12px;max-width:420px;margin:0 auto;line-height:1.7}
.ec-breakdown{padding:8px 21px 20px}.ec-breakdown>div{display:flex;justify-content:space-between;gap:10px;padding:17px 0;border-bottom:1px solid #253139;font-size:12px}.ec-breakdown b{font-weight:500}
.ec-legend{display:flex;align-items:center;gap:20px;font-size:11px;padding:20px 22px 5px}.ec-legend small{margin-left:auto;color:#8ca1ad}
.ec-mint{color:#b9f56d}.ec-coral{color:#e39586}.ec-chart{display:block;width:100%;height:250px;padding:10px 12px}
.ec-alerts{list-style:none;margin:0;padding:4px 21px 16px}.ec-alerts li{font-size:12px;line-height:1.8;color:#a6b8c3;padding:14px 0;border-bottom:1px solid #233039}
.ec-details{display:grid;grid-template-columns:140px minmax(0,1fr);margin:0;padding:15px 21px 24px;gap:14px;font-size:12px;line-height:1.5}.ec-details dt{color:#7f98a6}.ec-details dd{margin:0;overflow-wrap:anywhere;color:#d7e2e7}
.ec-profile{display:flex;align-items:center;gap:18px;background:#131d22;border:1px solid #34443e;border-radius:10px;padding:24px;margin:20px 0}
.ec-avatar{display:grid;place-items:center;width:64px;height:64px;border-radius:13px;background:#263c2c;border:1px solid #4c6842;color:var(--accent);font-size:23px}.ec-profile h2{margin:9px 0 5px;font-size:22px;font-weight:500}.ec-profile p{margin:0;font-size:13px}.ec-profile>.ec-badge{margin-left:auto}

.ec-banner{padding:13px 17px;background:#192117;border:1px solid #36452a;border-radius:7px;font-size:11px;color:#acbd9d;line-height:1.6}
.ec-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:24px 0 14px}.ec-actions button{font-size:12px}.ec-link{color:#b9cfdb;font-size:12px;margin-left:auto}
.ec-note{font-size:12px;line-height:1.8;color:#8da4b0;margin:18px 21px}.ec>.ec-note{margin-left:0}
.ec-filters{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:20px 0}.ec-filters>input{flex:1;min-width:180px}.ec-filters input,.ec-filters select{padding:10px;font-size:12px}.ec-filters button{font-size:12px}
.ec-pages{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:18px 0 25px;font-size:12px;color:#8ba2af}.ec-pages button{font-size:12px}.ec-card .ec-pages{margin:18px 20px}
#ec-scope{font-size:12px;background:#213421;color:#c5efa3;border-color:#45623b;margin-bottom:8px}
.ec-nav-foot{margin-top:8px;padding:15px 12px;font-size:11px;color:#a1b4c0;border-top:1px solid #24343c}.ec-nav-foot small{display:block;font-size:9px;color:#667e8c;letter-spacing:.08em;margin-top:13px}.ec-live{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:8px}
.project-nav.ec-navigation{min-height:0;max-height:calc(100vh - 48px);overflow-y:auto;gap:26px;padding-right:16px;border-right:1px solid #253039}
.ec-nav-group{display:grid;gap:3px;min-width:0}
.ec-nav-group h2{margin:0 0 8px;padding:8px 12px;font:700 18px/1.3 var(--body,sans-serif);letter-spacing:.01em;color:#e4edf2}
.project-nav .ec-nav-group>button{width:100%;padding:10px 12px;white-space:normal;line-height:1.45}
.project-nav .ec-nav-feature{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:100%;padding:16px 14px;border:1px solid #40586b;border-radius:10px;background:#14232c;text-align:left;text-decoration:none;color:#e0edf5;white-space:normal}
.ec-nav-feature strong{font-size:14px;line-height:1.4;font-weight:600}.ec-nav-feature strong>span{float:right}
.ec-nav-feature small{font-size:11px;line-height:1.5;color:#a6bdcc}
.project-nav .ec-simulator-link{background:#25241a;border-color:#625a36;color:#efe3b3}
.ec-simulator-link small{color:#c1b78f}
.project-nav .ec-nav-feature:hover{filter:brightness(1.15)}
.project-nav .ec-nav-feature:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:850px){body:has(.ec) main{padding:24px 16px 48px}.project-nav.ec-navigation{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;margin:0 0 24px;padding:0;gap:20px 12px;border-right:0}.ec-nav-group:first-child{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.ec-nav-group h2{grid-column:1/-1}.ec-nav-group{align-content:start}.ec-nav-foot{align-self:end}}
#ec-dialog{width:min(900px,calc(100vw - 40px));max-height:88vh;padding:28px}#ec-dialog .ec-table{margin:20px 0}#ec-dialog h2{margin:14px 0}#ec-dialog .ec-note{margin-left:0}
.ec-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ec-form label{display:grid;gap:7px;font-size:11px;color:#9fb3c0}.ec-form input,.ec-form select{width:100%;font-size:13px;padding:11px}.ec-form>p{grid-column:1/-1;font-size:12px;color:#f5afa2}.ec-form button{justify-self:start}
@media(min-width:1800px){.ec-kpi>strong{font-size:30px}}
@media(max-width:1200px){.ec-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-grid{grid-template-columns:1fr}.ec-heading{gap:10px}}
@media(max-width:850px){body:has(.ec) .project-layout{grid-template-columns:1fr}.ec-heading{flex-wrap:wrap}.ec-profile{flex-wrap:wrap}.ec-form{grid-template-columns:1fr}.ec-details{grid-template-columns:110px minmax(0,1fr)}}

.ec-object-note { padding: 1rem 1.5rem; line-height: 1.6; overflow-wrap: anywhere; }
.ec-object-note summary { cursor: pointer; font-weight: 600; }
