@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@300;400;500;600;700&display=swap";:root{--color-we-peep: #F9DFE2;--color-snowy-mint: #CAFDD0;--color-thunder: #211E1F;--color-tundora: #494144;--color-white: #FFFFFF;--color-timezone-pink: #8A6B6F;--color-city-glow: #FFF8E1;--color-panel-bg: #2A2627;--color-panel-border: rgba(73, 65, 68, .4)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background-color:var(--color-thunder);font-family:IBM Plex Mono,monospace;color:var(--color-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#dashboard{width:100vw;height:100vh;display:grid;grid-template-columns:260px 1fr 280px;grid-template-rows:48px 44px 1fr 180px 36px;grid-template-areas:"header  header  header" "left    metrics right" "left    map     right" "left    bottom  right" "ticker  ticker  ticker";overflow:hidden}#header{grid-area:header;display:flex;justify-content:space-between;align-items:center;padding:0 24px;border-bottom:1px solid var(--color-panel-border)}.brand{display:flex;align-items:baseline;gap:8px}.brand-name{font-size:13px;font-weight:600;letter-spacing:.2em;color:var(--color-we-peep);text-transform:uppercase}.brand-separator{font-size:13px;font-weight:300;color:var(--color-tundora)}.brand-subtitle{font-size:11px;font-weight:400;letter-spacing:.15em;color:var(--color-white);opacity:.5;text-transform:uppercase}.header-right{display:flex;align-items:center;gap:16px}.live-indicator{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:500;letter-spacing:.15em;color:var(--color-snowy-mint);text-transform:uppercase}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--color-snowy-mint);animation:pulse-dot 2s ease-in-out infinite}.live-indicator.stale{color:#fde68a}.live-indicator.stale .live-dot{background:#fde68a;animation:none}.live-indicator.error{color:#fca5a5}.live-indicator.error .live-dot{background:#fca5a5;animation:none}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}@keyframes panel-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.utc-time{font-size:11px;font-weight:400;letter-spacing:.08em;color:var(--color-white);opacity:.6}#metrics-bar{grid-area:metrics;display:flex;align-items:center;gap:0;padding:0 16px;border-bottom:1px solid var(--color-panel-border);background:var(--color-panel-bg);overflow:hidden}.metrics-bar-title{font-size:9px;font-weight:500;letter-spacing:.18em;color:var(--color-timezone-pink);text-transform:uppercase;white-space:nowrap;flex-shrink:0}.metrics-bar-divider{width:1px;height:20px;background:var(--color-panel-border);margin:0 14px;flex-shrink:0}.metrics-bar-cell{display:flex;align-items:baseline;gap:6px;white-space:nowrap;flex-shrink:0}.metrics-bar-label{font-size:9px;font-weight:400;letter-spacing:.08em;color:var(--color-white);opacity:.4;text-transform:uppercase}.metrics-bar-value{font-size:16px;font-weight:600;letter-spacing:-.02em;color:var(--color-white);line-height:1}.metrics-bar-unit{font-size:9px;font-weight:400;color:var(--color-white);opacity:.35;margin-left:3px}.metrics-bar-sparkline-cell{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.metrics-bar-sparkline{flex:1;min-width:80px;max-width:200px;height:28px;overflow:hidden}.mini-sparkline-svg{display:block;width:100%}#map{grid-area:map;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}#panel-left{grid-area:left;grid-row:2 / 5;background:var(--color-panel-bg);border-right:1px solid var(--color-panel-border);padding:16px 18px;overflow-y:auto;display:flex;flex-direction:column;gap:0;animation:panel-fade-in .6s ease-out}.panel-header{font-size:9px;font-weight:500;letter-spacing:.18em;color:var(--color-timezone-pink);text-transform:uppercase;margin-bottom:14px}.pipeline-section{padding-bottom:14px;border-bottom:1px solid var(--color-panel-border);margin-bottom:0}.pipeline-rows{display:flex;flex-direction:column;gap:2px}.pipeline-row{display:flex;align-items:center;gap:8px;padding:5px 0}.pipeline-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.pipeline-label{font-size:10px;font-weight:400;color:var(--color-white);opacity:.6;flex:1}.pipeline-count{font-size:14px;font-weight:600;color:var(--color-white);opacity:.9;min-width:32px;text-align:right}.purposes-section{padding:14px 0;border-bottom:1px solid var(--color-panel-border)}.purposes-rows{display:flex;flex-direction:column;gap:2px}.purpose-row{display:flex;align-items:center;gap:8px;padding:3px 0}.purpose-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.purpose-label{font-size:10px;font-weight:400;color:var(--color-white);opacity:.6;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.purpose-pct{font-size:10px;font-weight:500;color:var(--color-white);opacity:.5;flex-shrink:0}.metric-card{padding:12px 0;border-bottom:1px solid var(--color-panel-border)}.metric-card:last-child{border-bottom:none}.metric-label{font-size:9px;font-weight:400;letter-spacing:.12em;color:var(--color-white);opacity:.45;text-transform:uppercase;margin-bottom:4px}.metric-value{font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--color-white);line-height:1.1}.metric-unit{font-size:10px;font-weight:400;color:var(--color-white);opacity:.4;margin-left:4px}.sparkline-section{padding:14px 0;border-bottom:1px solid var(--color-panel-border)}.sparkline-label{font-size:9px;font-weight:400;letter-spacing:.12em;color:var(--color-white);opacity:.45;text-transform:uppercase;margin-bottom:8px}.sparkline-chart-container{width:100%;overflow:hidden}.sparkline-svg{display:block;width:100%}.pathway-chart-container{width:100%;margin-bottom:10px;overflow:hidden}.pathway-chart-svg{display:block;width:100%}.pathway-bar-bg{fill:#4941444d}.pathway-section{padding-top:14px}.pathway-section .panel-header{margin-bottom:10px}.pathway-legend{margin-top:0}.pathway-row{display:flex;align-items:center;gap:8px;padding:4px 0}.pathway-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.pathway-name{font-size:10px;font-weight:400;color:var(--color-white);opacity:.7;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pathway-pct{font-size:10px;font-weight:500;color:var(--color-white);opacity:.5;flex-shrink:0}.protocol-section{border-top:1px solid var(--color-panel-border);padding-top:14px;margin-top:14px}.protocol-section .panel-header{margin-bottom:10px}.protocol-row{display:flex;align-items:flex-start;gap:6px;padding:4px 0}.protocol-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;margin-top:4px}.protocol-dot--consultation{animation:consultation-pulse 2s ease-in-out infinite}@keyframes consultation-pulse{0%,to{opacity:1;box-shadow:0 0 #67e8f966}50%{opacity:.6;box-shadow:0 0 4px 2px #67e8f933}}.protocol-info{display:flex;flex-direction:column;flex:1;min-width:0;gap:1px}.protocol-line-top{display:flex;align-items:baseline;justify-content:space-between;gap:6px}.protocol-name{font-size:10px;font-weight:400;color:var(--color-white);opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.protocol-version{font-size:9px;font-weight:400;color:var(--color-white);opacity:.35;flex-shrink:0}.protocol-meta{font-size:9px;font-weight:400;color:var(--color-white);opacity:.4;white-space:nowrap}#panel-right{grid-area:right;grid-row:2 / 5;background:var(--color-panel-bg);border-left:1px solid var(--color-panel-border);padding:16px 18px;overflow-y:auto;display:flex;flex-direction:column;animation:panel-fade-in .6s ease-out .1s both}.activity-list{flex:1;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.activity-item{padding:8px 0;border-bottom:1px solid rgba(73,65,68,.25);transition:opacity .4s ease,transform .4s ease}.activity-item--enter{opacity:0;transform:translateY(6px)}.activity-item:last-child{border-bottom:none}.activity-body{flex:1;min-width:0}.activity-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.activity-type{font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.activity-type--issuance{color:var(--color-snowy-mint)}.activity-type--retirement{color:var(--color-we-peep)}.activity-type--delivery{color:#7ecbf5}.activity-amount{font-size:12px;font-weight:600;color:var(--color-white);white-space:nowrap}.activity-entity{font-size:10px;font-weight:400;color:var(--color-white);opacity:.6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-time{font-size:9px;font-weight:400;color:var(--color-white);opacity:.35;margin-top:1px}#bottom-strip{grid-area:bottom;display:flex;align-items:stretch;gap:0;border-top:1px solid var(--color-panel-border);background:var(--color-panel-bg);overflow:hidden}.bottom-strip-section{flex:1;padding:12px 16px;overflow:hidden;min-width:0}.bottom-strip-section+.bottom-strip-section{border-left:1px solid var(--color-panel-border)}.bottom-strip-purposes{padding:12px 16px}.purposes-bar-container{margin-bottom:10px}.purposes-stacked-bar{display:flex;width:100%;height:8px;border-radius:4px;overflow:hidden;background:#4941444d}.purposes-bar-segment{height:100%;min-width:2px;transition:width .6s ease}.purposes-bottom-legend{display:flex;flex-direction:column;gap:3px}.purposes-legend-row{display:flex;align-items:center;gap:8px;padding:2px 0}.leaderboard-svg{display:block;width:100%}.leaderboard-name-text{font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:400;fill:var(--color-white);fill-opacity:.6}.leaderboard-bar-bg{fill:#4941444d}.leaderboard-bar-fill{fill:var(--color-we-peep);fill-opacity:.6}.leaderboard-value-text{font-family:IBM Plex Mono,monospace;font-size:9px;font-weight:500;fill:var(--color-white);fill-opacity:.5}#ticker{grid-area:ticker;border-top:1px solid var(--color-panel-border);overflow:hidden;display:flex;align-items:center;position:relative}.ticker-track{display:flex;white-space:nowrap;animation:ticker-scroll 90s linear infinite}.ticker-content{display:flex;align-items:center;padding:0 24px}.ticker-item{font-size:10px;font-weight:400;letter-spacing:.04em;color:var(--color-white);opacity:.55}.ticker-separator{margin:0 20px;font-size:10px;color:var(--color-timezone-pink);opacity:.5}.ticker-type{font-weight:500;color:var(--color-we-peep);opacity:1}.ticker-news{opacity:.65}.ticker-type-news{color:#7ecbf5;font-weight:500}.ticker-time{font-size:9px;opacity:.3;margin-left:6px}.ticker-source-carbon-pulse{color:#f59e0b}.ticker-source-qc-intel{color:#a78bfa}.ticker-health-badge{position:absolute;left:0;top:0;bottom:0;display:none;align-items:center;padding:0 14px;font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;z-index:10;white-space:nowrap}.ticker-health-auth-expired{display:flex;background:#dc2626e6;color:#fff;animation:health-badge-pulse 1.5s ease-in-out infinite}.ticker-health-error{display:flex;background:#d97706d9;color:#fff}.ticker-health-stale{display:flex;background:#a16207b3;color:#fde68a}@keyframes health-badge-pulse{0%,to{opacity:1}50%{opacity:.6}}#ticker[data-health-warning] .ticker-track{padding-left:200px}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}svg{display:block}.sphere{fill:none;stroke:none}.graticule{fill:none;stroke:var(--color-tundora);stroke-width:.4;stroke-opacity:.4}.timezone-boundary{fill:none;stroke:var(--color-timezone-pink);stroke-width:.5;stroke-opacity:.35}.timezone-label{fill:var(--color-timezone-pink);font-family:IBM Plex Mono,monospace;font-size:7px;font-weight:500;text-anchor:middle;dominant-baseline:central;opacity:.6;pointer-events:none;paint-order:stroke;stroke:var(--color-thunder);stroke-width:3px;stroke-linejoin:round}.country{fill:var(--color-tundora);stroke:var(--color-thunder);stroke-width:.3}.daylight{fill:var(--color-we-peep);opacity:.14;pointer-events:none}.city-lights{filter:url(#city-glow)}.city-light{fill:var(--color-city-glow);pointer-events:none}.project-marker{stroke:var(--color-thunder);stroke-width:.5px;cursor:default;transition:opacity .3s ease}.outline{fill:none;stroke:var(--color-tundora);stroke-width:.8;stroke-opacity:.6}.city circle{fill:var(--color-snowy-mint);stroke:var(--color-thunder);stroke-width:1.5}.city-name{fill:var(--color-white);font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:400;text-anchor:middle;letter-spacing:.08em;text-transform:uppercase;opacity:.7}.city-time{fill:var(--color-white);font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:600;text-anchor:middle;letter-spacing:.02em}#panel-left::-webkit-scrollbar,#panel-right::-webkit-scrollbar{width:3px}#panel-left::-webkit-scrollbar-track,#panel-right::-webkit-scrollbar-track{background:transparent}#panel-left::-webkit-scrollbar-thumb,#panel-right::-webkit-scrollbar-thumb{background:var(--color-tundora);border-radius:2px}.project-pulse{pointer-events:none}.skeleton{position:relative;overflow:hidden;background:#4941444d;border-radius:4px}.skeleton:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.04) 50%,transparent 100%);animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.skeleton-text{height:12px;width:60%;margin-bottom:8px}.skeleton-number{height:26px;width:80%;margin-bottom:4px}.skeleton-chart{height:60px;width:100%;margin:8px 0}.skeleton-bar{height:14px;width:100%;margin:6px 0}.skeleton-activity{height:52px;width:100%;margin-bottom:8px}.credit-flow-layer,.credit-flow-pulse,.credit-flow-arc{pointer-events:none}@media(max-width:1440px){#dashboard{grid-template-columns:220px 1fr 240px}.brand-name{font-size:clamp(10px,1vw,13px)}.brand-subtitle{font-size:clamp(9px,.8vw,11px)}.metrics-bar-value{font-size:clamp(13px,1.2vw,16px)}.activity-amount{font-size:clamp(10px,.9vw,12px)}.city-name{font-size:clamp(8px,.7vw,10px)}.city-time{font-size:clamp(11px,1vw,14px)}}@media(max-width:1024px){#dashboard{grid-template-columns:200px 1fr 200px;grid-template-rows:40px 38px 1fr 150px 30px}#header{padding:0 16px}#panel-left,#panel-right{padding:12px 14px}#metrics-bar{padding:0 12px}.metrics-bar-divider{margin:0 8px}.metrics-bar-value{font-size:clamp(12px,1vw,14px)}.panel-header{font-size:8px;margin-bottom:10px}.activity-type{font-size:8px}.activity-entity,.ticker-item{font-size:9px}.bottom-strip-section{padding:10px 12px}}
