:root{--hn-orange: #ff6600;--bg: #0e0f13;--panel: #16181f;--text: #e8e8ea;--muted: #9aa0aa;--border: #262a33}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--text);font-family:Segoe UI,Verdana,Geneva,sans-serif;-webkit-font-smoothing:antialiased}.app{min-height:100%;display:flex;flex-direction:column}.topbar{background:var(--hn-orange);position:sticky;top:0;z-index:20}.topbar-inner{width:100%;margin:0 auto;display:flex;align-items:center;gap:6px;padding:6px 12px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:#000;font-weight:700;margin-right:8px}.logo{display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid #fff;color:#fff;font-size:15px;line-height:1}.brand-name{font-size:15px}.nav{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.nav-item{background:transparent;border:none;color:#1c1c1c;font-size:14px;padding:4px 8px;cursor:pointer;border-radius:4px;text-transform:lowercase}.nav-item:hover{background:#ffffff40}.nav-item.active{background:#1c1c1c;color:#fff;font-weight:600}.metric-toggle{margin-left:auto;display:flex;gap:4px;background:#00000026;padding:3px;border-radius:6px}.metric-btn{background:transparent;border:none;color:#1c1c1c;font-size:13px;padding:3px 10px;border-radius:4px;cursor:pointer}.metric-btn.active{background:#fff;font-weight:600}.content{width:100%;margin:0 auto;padding:20px 16px 48px;flex:1}.subhead h1{font-size:20px;font-weight:500;margin:4px 0 2px}.subhead h1 strong{color:var(--hn-orange)}.hint{color:var(--muted);font-size:13px;margin:0 0 16px}.treemap{position:relative;width:100%}.tile{position:absolute;border-radius:3px;display:flex;flex-direction:column;justify-content:flex-start;padding:4px 5px;text-decoration:none;overflow:hidden;transition:outline .08s ease,box-shadow .08s ease,filter .08s ease;outline:0 solid transparent}.tile:hover{z-index:6;filter:brightness(1.12);outline:2px solid rgba(255,255,255,.85);box-shadow:0 8px 24px #0009}.tile-rank{font-size:10px;opacity:.7;line-height:1.2}.tile-title{flex:1 1 auto;min-height:0;width:100%;margin-top:2px;overflow:hidden;display:flex;align-items:flex-start}.fit-inner{display:block;width:100%;font-weight:600;line-height:1.12;overflow-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.tile-value{font-size:13px;font-weight:800;line-height:1.1;margin-top:auto;display:inline-flex;align-items:center;gap:3px}.tile-up{font-size:.85em}.tile-value .material-symbols-outlined{font-size:13px}.legend{display:flex;align-items:center;gap:10px;margin-top:20px;font-size:12px;color:var(--muted)}.legend-bar{width:240px;height:12px;border-radius:6px;background:linear-gradient(to right,#0d1126,#281e5a,#8c285a,#dc4628,#f60,#ffc43c,#fff496)}.legend-count{margin-left:auto}.source-link{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font-size:14px;color:var(--muted);text-decoration:none}.source-link:hover{color:var(--text)}.status{display:flex;align-items:center;gap:12px;color:var(--muted);padding:60px 0;justify-content:center;font-size:15px}.status.error{color:#ff8080}.spinner{width:22px;height:22px;border:3px solid var(--border);border-top-color:var(--hn-orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tooltip{position:fixed;z-index:50;width:320px;max-width:calc(100vw - 24px);background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:10px 12px;box-shadow:0 10px 30px #0000008c;pointer-events:none}.tt-title{font-size:13px;line-height:1.35;margin-bottom:6px}.tt-rank{color:var(--hn-orange);font-weight:700}.tt-meta{display:flex;flex-wrap:nowrap;white-space:nowrap;align-items:center;gap:12px;font-size:12px;color:var(--muted);margin-bottom:3px}.tt-meta>span{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.material-symbols-outlined{font-variation-settings:"FILL" 1,"wght" 500,"GRAD" 0,"opsz" 20;font-size:15px;line-height:1;overflow:hidden;max-width:1em}.tt-score .material-symbols-outlined,.tt-score{color:var(--hn-orange)}.tt-sub{font-size:11px;color:var(--muted)}@media (max-width: 760px){.brand-name{display:none}}
