:root{--bg:#000;--panel:#0b0e14;--line:#2f343d;--soft:#222;--text:#fff;--muted:#a6adbb;--accent:#00ffff;--ok:#00ff88;--solar:#ffff00;--bess:#ffae00;--off:#0066ff}*{box-sizing:border-box;font-family:'Courier New',monospace;margin:0;padding:0}html,body{background:var(--bg);color:var(--text)}body{display:flex;height:100vh;overflow:hidden;font-size:13px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#050505}::-webkit-scrollbar-thumb{background:#343b45;border:2px solid #050505}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.sidebar{width:250px;background:#0a0a0a;border-right:1px solid var(--soft);padding:20px 0;display:flex;flex-direction:column;flex:none}.brand{text-align:center;padding:0 14px 20px;border-bottom:1px solid var(--soft);margin-bottom:20px}.brand b{font:800 17px -apple-system,sans-serif;letter-spacing:5px}.brand small{display:block;color:#888;letter-spacing:2px;font-size:7px;margin-top:4px}.nav{display:flex;flex-direction:column}.nav a{padding:12px 20px;color:var(--muted);text-decoration:none;border-left:3px solid transparent;font-weight:bold}.nav a:hover,.nav .active{color:var(--accent);background:#001414;border-left-color:var(--accent)}.main{flex:1;padding:20px 30px;overflow-y:auto;min-width:0}.header{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--soft);padding-bottom:15px;margin-bottom:14px}.header h1{font-size:19px;color:var(--accent);letter-spacing:2px}.status{border:1px solid #195b3b;color:#aef7d1;padding:7px 11px;white-space:nowrap}.meta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px;padding:9px 12px;border:1px solid #24323a;background:#071018;color:var(--muted);font-size:11px}.meta strong{color:var(--accent)}.meta a{color:#66ccff}.newspaper{border:1px solid #424b55;background:#06080b;margin-bottom:28px;box-shadow:0 0 22px rgba(0,255,255,.04)}.masthead{padding:16px 18px 12px;border-bottom:1px solid #424b55}.masthead h2{font-size:24px;line-height:1;color:#fff;letter-spacing:2px}.masthead h2 span{color:var(--solar)}.strap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:8px;color:#8e98a5;font-size:10px;text-transform:uppercase}.news-tools{position:sticky;top:0;z-index:20;display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:10px 12px;background:#090c11;border-bottom:1px solid #303740}.news-tools button{background:#000;border:1px solid #343b45;color:#aab3bf;padding:7px 10px;font:700 10px 'Courier New';cursor:pointer}.news-tools button:hover,.news-tools button.active{border-color:var(--accent);color:var(--accent)}.news-tools input{margin-left:auto;min-width:240px;background:#000;border:1px solid #343b45;color:#fff;padding:7px 10px;font:700 10px 'Courier New';outline:none}.paper{height:min(68vh,760px);min-height:520px;overflow:auto;overscroll-behavior:contain}.stories{display:grid;grid-template-columns:repeat(3,minmax(280px,1fr));align-items:stretch}.story{display:block;padding:18px;border-right:1px solid #252a31;border-bottom:1px solid #252a31;text-decoration:none;min-height:180px;background:#07090c}.story:hover{background:#0b0f14}.story .kicker{font-size:10px;font-weight:bold;letter-spacing:.5px}.story.solar .kicker{color:var(--solar)}.story.bess .kicker{color:var(--bess)}.story h3{color:#fff;font-size:17px;line-height:1.28;margin:9px 0 12px}.story p{color:#aeb6c1;font-size:11px;line-height:1.55}.story .project{color:var(--ok);font-weight:bold}.story .source{display:block;color:#7f8996;margin-top:12px;font-size:10px}.news-empty{padding:24px;color:var(--muted);grid-column:1/-1}.section-title{font-size:14px;color:var(--accent);letter-spacing:1px;margin:0 0 12px}.gauges{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}.card{background:var(--panel);border:1px solid var(--soft);padding:15px;text-align:center}.card h3{font-size:11px;color:#8d95a3;margin-bottom:5px}.chart{position:relative;height:120px}.value{position:absolute;bottom:-5px;left:50%;transform:translateX(-50%);font-size:24px;font-weight:bold}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.btn,select,.asset-search{background:#000;color:var(--muted);border:1px solid var(--line);padding:8px 14px;font:700 11px 'Courier New';text-transform:uppercase}.btn{cursor:pointer}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn.active{color:#fff;border-color:#fff}.asset-search{min-width:280px}.tablewrap{background:var(--panel);border:1px solid var(--soft);overflow:auto;max-height:65vh}table{width:100%;border-collapse:collapse}th{background:#050505;color:var(--accent);padding:12px 15px;text-align:left;position:sticky;top:0;z-index:5}td{padding:10px 15px;border-bottom:1px solid var(--soft);color:var(--muted)}.site{color:#fff;font-weight:bold}.mw{color:var(--ok);font-weight:bold;font-size:14px}.badge{padding:3px 6px;border-radius:3px;font-size:10px;font-weight:bold;color:#000;white-space:nowrap}.signal{display:inline-block;padding:4px 6px;border:1px solid #3b444f;background:#090b0f;color:#9aa3af;font-size:9px;font-weight:bold;white-space:nowrap}.signal.approved{border-color:#c8b900;color:#fff95a}.signal.operational{border-color:#167d4d;color:#60ff9c}.signal.construction{border-color:#a46f00;color:#ffbe45}.signal.finance{border-color:#6c62a8;color:#bdb2ff}.signal.none{color:#626b77}.signal-note{color:#7e8792;font-size:9px;line-height:1.4;margin-top:4px;max-width:135px}.mobile-extra{display:none;font-size:9px;color:#888;margin-top:4px}.newslink{text-decoration:none;font-size:16px}@media(max-width:1200px){.stories{grid-template-columns:repeat(2,minmax(280px,1fr))}}@media(max-width:768px){body{display:block;overflow:auto}.sidebar{width:100%;padding:10px}.nav{display:none}.brand{border:0;margin:0;padding:5px}.main{padding:10px;overflow:visible}.header{align-items:flex-start}.masthead h2{font-size:20px}.news-tools{position:static}.news-tools input{margin-left:0;min-width:100%;width:100%}.paper{height:65vh;min-height:480px}.stories{grid-template-columns:1fr}.gauges{grid-template-columns:1fr}.hide-mobile{display:none}.mobile-extra{display:block}.asset-search,select{width:100%;min-width:100%}th,td{padding:8px 6px;font-size:10px}.tablewrap{max-height:none}.signal-note{max-width:100px}}
