@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&display=swap");@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");:root{--bg:#000;--fg:#aaa;--fg-bright:#fff;--fg-dim:#555;--cyan:#0aa;--cyan-bright:#5ff;--yellow:#a50;--yellow-bright:#ff5;--green:#0a0;--green-bright:#5f5;--red:#a00;--blue:#00a;--blue-bright:#55f;--magenta:#a0a;--font:"JetBrains Mono","Consolas","Liberation Mono",monospace;--char-width:9.6px;--line-height:20px}*{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--cyan);color:var(--bg)}body,html{height:100%;overflow:hidden}body{font-family:var(--font);font-size:14px;line-height:var(--line-height);background:var(--bg);color:var(--fg);display:flex;flex-direction:column}a{color:inherit;text-decoration:none}.status-bar-top{display:flex;justify-content:space-between;background:var(--fg);color:var(--bg);padding:0 1ch;flex-shrink:0;font-weight:700}.status-bar-top .left,.status-bar-top .right{display:flex;gap:2ch}.status-indicator{color:var(--bg);background:var(--yellow-bright);padding:0 1ch}.logo-link{color:var(--bg);cursor:pointer}.logo-link:hover{background:var(--cyan)}.status-bar-bottom{display:flex;background:var(--bg);flex-shrink:0;border-top:none}.fkey{display:flex}.fkey-num{background:var(--fg);color:var(--bg);padding:0 .5ch;font-weight:700}.fkey-label{background:var(--cyan);color:var(--bg);padding:0 1ch}.fkey-btn{border:none;cursor:pointer;font-family:var(--font);font-size:14px}.tui-main{flex:1 1;display:flex;flex-direction:column;overflow:hidden;padding:0}.tui-content{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:2ch 3ch}.tui-content::-webkit-scrollbar{width:1ch;background:var(--bg)}.tui-content::-webkit-scrollbar-thumb{background:var(--fg-dim)}.tui-content::-webkit-scrollbar-thumb:hover{background:var(--fg)}.panel{margin-bottom:1ch}.panel-border-bottom,.panel-border-top{color:var(--cyan)}.panel-title{color:var(--cyan-bright);font-weight:700}.panel-content{padding:0 1ch;color:var(--fg)}.panel-row{display:flex}.panel-row .border-left{color:var(--cyan)}.panel-row .border-right{color:var(--cyan);margin-left:auto}.nav-menu{display:flex;gap:0;background:var(--bg);border-bottom:1px solid var(--fg-dim);padding:0 1ch}.nav-item{padding:0 2ch;color:var(--fg);position:relative}.nav-item:hover{background:var(--fg);color:var(--bg)}.nav-item.active{background:var(--cyan);color:var(--bg)}.nav-shortcut{color:var(--yellow-bright)}.nav-item.active .nav-shortcut,.nav-item:hover .nav-shortcut{color:var(--bg)}.section{margin-bottom:2ch}.section-header{color:var(--yellow-bright);margin-bottom:1ch}.section-content{color:var(--fg)}.list-container{border:1px solid var(--cyan)}.list-header{background:var(--cyan);color:var(--bg);padding:0 1ch;font-weight:700;display:flex;justify-content:space-between}.list-item{display:block;padding:.5ch 1ch;border-bottom:1px solid var(--fg-dim);color:var(--fg)}.list-item:last-child{border-bottom:none}.list-item:hover{background:var(--fg);color:var(--bg)}.list-item:hover .item-tags,.list-item:hover .item-type{color:var(--bg)}.item-row{display:flex;gap:2ch}.item-type{color:var(--green-bright);min-width:10ch}.item-name{color:var(--fg-bright);flex:1 1}.item-desc{color:var(--fg-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-desc,.item-tags{padding-left:12ch;font-size:12px}.item-tags{color:var(--cyan)}.info-grid{display:grid;grid-template-columns:12ch 1fr;grid-gap:0;gap:0}.info-label{color:var(--cyan)}.info-label:after{content:":"}.info-value{color:var(--fg-bright)}.ascii-art{color:var(--green-bright);font-size:12px;line-height:1.2;margin-bottom:1ch;white-space:pre}.tree-item{color:var(--fg)}.tree-branch{color:var(--fg-dim)}.tree-value{color:var(--fg-bright)}.prompt-line{margin:1ch 0}.prompt-link{display:block;cursor:pointer}.prompt-link:hover{background:var(--fg)}.prompt-link:hover .prompt,.prompt-link:hover .prompt-path,.prompt-link:hover .prompt-symbol,.prompt-link:hover .text-bright,.prompt-link:hover .text-dim{color:var(--bg)}.prompt-link:hover .cursor{background:var(--bg)}.prompt{color:var(--green-bright)}.prompt-path{color:var(--blue-bright)}.prompt-symbol{color:var(--fg-bright)}.cursor{display:inline-block;width:.6ch;height:1.2em;background:var(--fg);vertical-align:text-bottom;animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.btn{display:inline-block;background:var(--fg);color:var(--bg);padding:0 2ch;font-family:var(--font);font-size:14px;cursor:pointer;border:none}.btn:hover{background:var(--cyan-bright);color:var(--bg)}.btn-row{display:flex;gap:1ch;margin-top:1ch}.tag{color:var(--cyan)}.tag:before{content:"["}.tag:after{content:"]"}.tags-row{display:flex;flex-wrap:wrap;gap:1ch}.badge{display:inline-block;font-size:10px;font-weight:700;padding:.1em .7em;letter-spacing:.05em}.badge-active,.badge-current{background:var(--green-bright);color:var(--bg)}.badge-wip{background:var(--yellow-bright);color:var(--bg)}.badge-archived{background:var(--fg-dim);color:var(--bg)}.badge-published{background:var(--cyan);color:var(--bg)}.badge-in-progress{background:var(--yellow-bright);color:var(--bg)}.badge-coursework,.badge-notes{background:var(--cyan);color:var(--bg)}.badge-deep-dive{background:var(--yellow-bright);color:var(--bg)}.badge-status-cat{background:#333;color:var(--fg);border:1px solid var(--fg-dim)}.metric{display:inline-flex;align-items:center;gap:.4ch;font-size:11px}.metric-val{color:var(--cyan-bright);font-weight:700}.metric-label{color:var(--fg-dim)}.hero-chips{display:flex;gap:2ch;flex-wrap:wrap;margin-top:1.2ch}.hero-chip{font-size:12px}.hero-chip .k{color:var(--cyan)}.hero-chip .k:after{content:":"}.hero-chip .v{color:var(--fg-bright)}.card-top{justify-content:space-between;align-items:flex-start;gap:1ch}.card-top,.metrics-row{display:flex;margin-bottom:.5ch}.metrics-row{gap:2ch;padding:.4ch 0;border-top:1px solid var(--fg-dim);border-bottom:1px solid var(--fg-dim)}.card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5ch}.card-arrow{color:var(--fg-dim);font-size:11px}.proj-card:hover .card-arrow{color:var(--cyan-bright)}.exp-sep{border:none;border-top:1px solid var(--fg-dim)}.exp-stack-label{color:var(--yellow-bright);font-size:10px;letter-spacing:.1em;margin-top:.3ch}.res-aside{padding:1.5ch;border-left:1px solid var(--fg-dim);display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:.6ch;flex-shrink:0;min-width:14ch}.research-card:hover .res-aside{border-left-color:var(--cyan)}.res-aside-link{color:var(--fg-dim);font-size:11px;text-decoration:none;background:transparent;border:none;cursor:pointer;font-family:var(--font);padding:0}.research-card:hover .res-aside-link{color:var(--cyan-bright)}.blog-stats{display:flex;gap:3ch;flex-wrap:wrap;font-size:11px;margin-bottom:1.2ch;padding-bottom:1ch;border-bottom:1px solid var(--fg-dim)}.blog-stats-key{color:var(--fg-dim)}.blog-stats-key:after{content:":";margin-right:.4ch}.blog-stats-val,.dp-section-title{color:var(--cyan-bright);font-weight:700}.dp-section-title{font-size:11px;letter-spacing:.15em;margin-bottom:.8ch}.dp-title-meta{display:flex;gap:1ch;align-items:center;flex-shrink:0}.dp-title-year{font-size:11px}.dp-title-year,.hr{color:var(--fg-dim)}.hr{overflow:hidden;white-space:nowrap}.text-bright{color:var(--fg-bright)}.text-dim{color:var(--fg-dim)}.text-green{color:var(--green-bright)}.text-yellow{color:var(--yellow-bright)}.text-red{color:var(--red)}.dialog{border:2px solid var(--fg);background:var(--bg);padding:1ch;margin:1ch 0}.dialog-title{background:var(--fg);color:var(--bg);padding:0 1ch;margin:-1ch -1ch 1ch;font-weight:700}.hr-hero{margin-bottom:4ch;padding-bottom:3ch;border-bottom:1px solid var(--fg-dim)}.hr-prompt{margin-bottom:1.5ch;font-size:12px;color:var(--fg-dim)}.hr-name{font-size:24px;font-weight:700;color:var(--green-bright);letter-spacing:.08em;margin-bottom:.6ch;font-family:var(--font)}.hr-tagline{font-size:12px;color:var(--fg-dim);letter-spacing:.05em;margin-bottom:1.5ch}.hr-bio{font-size:13px;color:var(--fg);max-width:64ch;line-height:1.6}.hr-section{margin-bottom:4ch}.section-label{display:flex;align-items:center;gap:1.5ch;margin-bottom:2ch}.label-text{color:var(--yellow-bright);font-size:11px;letter-spacing:.18em;white-space:nowrap;font-weight:700}.label-line{flex:1 1;height:1px;background:#222}.label-count{background:var(--fg-dim);color:var(--bg);font-size:9px;font-weight:700;padding:.05em .6em;letter-spacing:.05em}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2ch;gap:2ch}.proj-card{border:1px solid var(--fg-dim);color:var(--fg);display:block;text-decoration:none}.proj-card:hover{border-color:var(--cyan)}.card-body{padding:1.5ch}.card-title{color:var(--fg-bright);font-size:13px;font-weight:700;margin-bottom:.6ch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-desc{color:var(--fg-dim);font-size:11px;line-height:1.5;margin-bottom:1ch;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-tags{display:flex;flex-wrap:wrap;gap:.5ch}.card-tag{color:var(--cyan);font-size:11px}.card-tag:before{content:"["}.card-tag:after{content:"]"}.research-card{border:1px solid var(--fg-dim);color:var(--fg);display:flex;align-items:stretch;margin-bottom:2ch;text-decoration:none}.research-card:hover{border-color:var(--cyan)}.research-body{padding:1.5ch}.research-body,.research-body-left{flex:1 1;min-width:0}.research-title{color:var(--fg-bright);font-size:13px;font-weight:700;margin-bottom:.6ch}.research-summary{color:var(--fg-dim);font-size:11px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.research-status{color:var(--yellow-bright);font-size:11px;white-space:nowrap;flex-shrink:0}.hr-contact{padding-top:1ch}.hr-contact-line{color:var(--fg-dim);font-size:13px;margin-bottom:1.5ch}.exp-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2ch;gap:2ch}.exp-card{border:1px solid var(--fg-dim);padding:1.5ch 2ch;display:flex;flex-direction:column;gap:.8ch}.exp-card-link{text-decoration:none;color:inherit}.exp-card-link:hover{border-color:var(--cyan)}.exp-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2ch}.exp-header-left{display:flex;flex-direction:column;gap:.2ch}.exp-company{color:var(--fg-bright);font-size:13px;font-weight:700}.exp-role{color:var(--cyan);font-size:11px;letter-spacing:.03em}.exp-period{color:var(--fg-dim);font-size:11px;white-space:nowrap;flex-shrink:0}.exp-desc{color:var(--fg-dim);font-size:12px;line-height:1.5;border-top:1px solid var(--fg-dim);padding-top:.8ch;margin-top:.2ch}.exp-bullets{list-style:none;padding:0;display:flex;flex-direction:column;gap:.4ch}.exp-bullets li{color:var(--fg);font-size:12px;line-height:1.5;padding-left:1.5ch;position:relative}.exp-bullets li:before{content:"·";color:var(--cyan);position:absolute;left:0}.exp-visit{display:block;margin-top:auto;padding-top:1ch;color:var(--fg-dim);font-size:11px;letter-spacing:.05em}.exp-card-link:hover .exp-visit{color:var(--cyan-bright)}@media (max-width:960px){.card-grid{grid-template-columns:repeat(2,1fr)}.exp-grid{grid-template-columns:1fr}}@media (max-width:560px){.tui-content{padding:1.5ch}.card-grid{grid-template-columns:1fr}}.gp-hero-row{display:grid;grid-template-columns:1fr 280px;grid-gap:3ch;gap:3ch;align-items:start;margin-bottom:3ch}.gp-hero-left{gap:1.5ch}.gp-hero-fig,.gp-hero-left{display:flex;flex-direction:column}.gp-hero-fig{border:1px solid var(--fg-dim);background:#050505;overflow:hidden}.gp-title{color:var(--fg-bright);font-size:15px;font-weight:700;font-family:var(--font);line-height:1.5}.gp-actions{display:flex;gap:1ch;flex-wrap:wrap}.gp-tags{margin-bottom:0}.gp-perf-discuss{display:grid;grid-template-columns:1fr 1fr;grid-gap:3ch;gap:3ch;align-items:start}.gp-discuss-col,.gp-perf-col,.gp-tradeoff-list{display:flex;flex-direction:column}.gp-tradeoff-list{gap:0;border:1px solid var(--fg-dim)}.gp-tradeoff-item{display:grid;grid-template-columns:160px 1fr;border-top:1px solid var(--fg-dim)}.gp-tradeoff-item:first-child{border-top:none}.gp-tradeoff-img{display:block;width:160px;height:110px;object-fit:contain;object-position:center;background:#050505;border-right:1px solid var(--fg-dim);flex-shrink:0}.gp-tradeoff-body{padding:1.5ch 2ch;display:flex;flex-direction:column;gap:.8ch;justify-content:center}.gp-tradeoff-label{color:var(--cyan);font-size:11px;font-weight:700;letter-spacing:.05em}.gp-tradeoff-desc{color:var(--fg-dim);font-size:12px;line-height:1.5;margin:0}.gp-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1.5ch;gap:1.5ch;margin-bottom:3ch}.gp-stat{border:1px solid var(--fg-dim);padding:1.5ch;display:flex;flex-direction:column;gap:.5ch}.gp-stat-value{color:var(--green-bright);font-size:18px;font-weight:700;font-family:var(--font)}.gp-stat-label{color:var(--fg-dim);font-size:11px;line-height:1.4}.gp-two-col{display:grid;grid-template-columns:1fr 1fr;grid-gap:2ch;gap:2ch;margin-bottom:3ch}.gp-col-card{border:1px solid var(--fg-dim);padding:2ch}.gp-setup-table{border-top:1px solid var(--fg-dim);margin-top:1ch}.gp-setup-row{display:flex;border-bottom:1px solid var(--fg-dim)}.gp-setup-row:last-child{border-bottom:none}.gp-setup-param{color:var(--cyan);white-space:nowrap;border-right:1px solid var(--fg-dim);flex-shrink:0}.gp-setup-param,.gp-setup-val{font-size:11px;padding:.6ch 1ch;width:50%}.gp-setup-val{color:var(--fg-bright);word-break:break-word}.gp-table-wrap{overflow-x:auto}.gp-table{width:100%;border-collapse:collapse;font-family:var(--font);font-size:12px;border:1px solid var(--fg-dim)}.gp-table th{background:var(--fg);color:var(--bg);padding:.6ch 1.5ch;text-align:left;font-weight:700;border-right:1px solid var(--fg-dim)}.gp-table th:last-child{border-right:none}.gp-table td{padding:.6ch 1.5ch;border-top:1px solid var(--fg-dim);border-right:1px solid var(--fg-dim);color:var(--fg)}.gp-table td:last-child{border-right:none}.gp-td-rl{color:var(--green-bright)!important;font-weight:700}.gp-td-ea{color:var(--fg-dim)!important}.gp-pipeline{border:1px solid var(--fg-dim)}.gp-step{display:flex;gap:2ch;align-items:flex-start;padding:1.5ch 2ch;border-top:1px solid var(--fg-dim)}.gp-step:first-child{border-top:none}.gp-step-num{color:var(--cyan);font-size:11px;font-weight:700;letter-spacing:.1em;flex-shrink:0;min-width:3ch;padding-top:.15ch}.gp-step-body{flex:1 1}.gp-step-title{color:var(--fg-bright);font-size:13px;font-weight:700;margin-bottom:.4ch}.gp-step-desc{color:var(--fg-dim);font-size:12px;line-height:1.5}.gp-fig{border:1px solid var(--fg-dim);overflow:hidden;background:#050505;display:flex;flex-direction:column}.gp-fig-img{height:320px;flex-shrink:0}.gp-fig-img,.gp-hero-img{display:block;width:100%;object-fit:contain;object-position:center}.gp-hero-img{height:180px}.gp-fig-caption{padding:1ch 1.5ch;font-size:11px;color:var(--fg-dim);border-top:1px solid var(--fg-dim);line-height:1.4}.text-cyan{color:var(--cyan-bright)}@media (max-width:900px){.gp-hero-row,.gp-perf-discuss,.gp-two-col{grid-template-columns:1fr}.gp-stats{grid-template-columns:repeat(2,1fr)}.gp-tradeoff-item{grid-template-columns:120px 1fr}.gp-tradeoff-img{width:120px}}@media (max-width:480px){.gp-stats{grid-template-columns:1fr}}.detail-img-wrap{height:220px;overflow:hidden;border:1px solid var(--fg-dim);border-bottom:none;position:relative}.detail-img-dots{background-color:#050505;background-image:radial-gradient(circle,#2a2a2a 1px,transparent 0);background-size:14px 14px}.detail-img-grid{height:280px;background-color:#050505;background-image:linear-gradient(#1a1a1a 1px,transparent 0),linear-gradient(90deg,#1a1a1a 1px,transparent 0);background-size:24px 24px}.detail-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}.detail-title-bar{display:flex;justify-content:space-between;align-items:center;gap:2ch;padding:1.5ch 2ch;border:1px solid var(--fg-dim);border-top:2px solid var(--fg)}.detail-name{color:var(--fg-bright);font-size:15px;font-weight:700;font-family:var(--font);flex:1 1;line-height:1.4}.dp-tags-strip{display:flex;flex-wrap:wrap;gap:.6ch;padding:1ch 2ch;border:1px solid var(--fg-dim);border-top:none;margin-bottom:3ch}.dp-tag{background:var(--fg);color:var(--bg);padding:.2ch 1.5ch;font-size:12px;font-weight:700;font-family:var(--font);letter-spacing:.03em}.dp-description{color:var(--fg-dim);font-size:13px;line-height:1.7;max-width:80ch;padding-bottom:3ch;border-bottom:1px solid var(--fg-dim)}.dp-description,.dp-section{margin-bottom:3ch}.detail-desc{color:var(--fg-dim);font-size:13px;line-height:1.6;margin-bottom:1ch;max-width:80ch}.dp-list{list-style:none;padding-left:0}.dp-list li{color:var(--fg);font-size:13px;line-height:1.7;padding-left:2ch;position:relative}.dp-list li:before{content:"·";color:var(--cyan);position:absolute;left:0}.dp-code-block{margin-top:1.5ch}.dp-code-label{color:var(--yellow-bright);font-size:11px;letter-spacing:.1em;margin-bottom:.5ch}.dp-code{background:#0a0a0a;border:1px solid var(--fg-dim);padding:1.5ch;color:var(--green-bright);font-family:var(--font);font-size:12px;line-height:1.5;overflow-x:auto}.dp-back{display:flex;align-items:center;justify-content:space-between;gap:2ch;margin-top:3ch;padding:1.2ch 2ch;border:1px solid var(--fg);color:var(--fg-bright);text-decoration:none}.dp-back:hover{background:var(--fg);color:var(--bg)}.dp-back-label{font-size:13px;font-weight:700;letter-spacing:.03em}.dp-back:hover .dp-back-label{color:var(--bg)}.dp-back-cmd{font-size:11px;color:var(--fg-dim);font-family:var(--font)}.dp-back:hover .dp-back-cmd{color:var(--bg)}.pf-frame{border:1px solid var(--fg-dim);margin-bottom:2ch}.pf-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--fg-dim);padding:.4ch 1.5ch;background:#080808;color:var(--yellow-bright);letter-spacing:.12em}.pf-title,.pf-title-right{font-size:11px;font-weight:700}.pf-title-right{color:var(--cyan-bright);letter-spacing:0}.pf-body{padding:1.5ch 2ch}.pf-hero-name{color:var(--fg-bright);font-size:16px;font-weight:700;font-family:var(--font);line-height:1.4;margin-bottom:1ch}.pf-hero-meta{display:flex;gap:1.5ch;align-items:center;flex-wrap:wrap}.pf-private{display:inline-block;border:1px solid var(--red);color:var(--red);font-size:10px;font-weight:700;padding:.1em .6em;letter-spacing:.05em}.pf-kv{display:grid;grid-template-columns:10ch 1fr;grid-row-gap:.6ch;row-gap:.6ch}.pf-k{color:var(--fg-dim)}.pf-k,.pf-v{font-size:12px}.pf-v{color:var(--fg)}.pf-v-green{color:var(--green-bright);font-size:12px}.pf-v-cyan{color:var(--cyan-bright);font-size:12px}.pf-v-blue{color:var(--blue-bright);font-size:12px}.pf-v-red{color:var(--red);font-size:12px}.pf-v-dim{color:var(--fg-dim);font-size:12px}.pf-v-yellow{color:var(--yellow-bright);font-size:12px}.pf-list{list-style:none;padding:0}.pf-list li{color:var(--fg);font-size:13px;line-height:1.7;padding-left:2ch;position:relative}.pf-list li:before{content:"–";color:var(--fg-dim);position:absolute;left:0}.gh-repo-wrap{display:grid;grid-template-columns:1fr 256px;align-items:start}.gh-main-col{min-width:0}.gh-side-col{padding:14px;border-left:1px solid var(--fg-dim)}.gh-branch-bar{gap:8px;padding:7px 10px;background:#080808;border-bottom:1px solid #1a1a1a}.gh-branch-bar,.gh-branch-btn{display:flex;align-items:center}.gh-branch-btn{background:#111;border:1px solid var(--fg-dim);color:var(--fg-bright);padding:3px 10px;font-family:var(--font);font-size:12px;cursor:pointer;gap:5px;font-weight:700}.gh-branch-btn:hover{border-color:var(--cyan)}.gh-branch-icon{color:var(--cyan-bright)}.gh-bar-right{gap:8px;margin-left:auto}.gh-bar-right,.gh-commits-btn{display:flex;align-items:center}.gh-commits-btn{color:var(--cyan-bright);font-size:12px;font-family:var(--font);background:none;border:none;cursor:pointer;gap:4px}.gh-commits-btn:hover{text-decoration:underline}.gh-bar-btn{background:#111;border:1px solid var(--fg-dim);color:var(--fg);padding:3px 10px;font-family:var(--font);font-size:12px;cursor:pointer}.gh-bar-btn:hover{border-color:var(--fg);color:var(--fg-bright)}.gh-code-btn{background:var(--green-bright);border:1px solid var(--green-bright);color:var(--bg);padding:3px 10px;font-family:var(--font);font-size:12px;cursor:pointer;font-weight:700;text-decoration:none;display:inline-block}.gh-code-btn:hover{background:#4c4}.gh-commit-bar{display:flex;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid #111;font-size:12px;min-width:0}.gh-commit-avatar{width:18px;height:18px;background:var(--green-bright);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--bg);font-size:9px;font-weight:700;flex-shrink:0}.gh-commit-author{color:var(--fg-bright);font-weight:700;white-space:nowrap}.gh-commit-msg{color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1;min-width:0}.gh-commit-sha{color:var(--cyan-bright)}.gh-commit-sha,.gh-commit-time{font-size:11px;white-space:nowrap}.gh-commit-time{color:var(--fg-dim)}.gh-file-table{width:100%;border-collapse:collapse}.gh-file-row{border-top:1px solid #0d0d0d;cursor:pointer}.gh-file-row:hover{background:#0a0a0a}.gh-file-row:hover .gh-fname-link{text-decoration:underline}.gh-file-icon{padding:5px 4px 5px 10px;width:22px;vertical-align:middle}.gh-icon-dir{color:var(--cyan-bright);font-size:13px}.gh-icon-file{color:#2a2a2a;font-size:13px}.gh-file-prefix{color:var(--fg-dim);font-family:var(--font);white-space:pre;font-size:12px}.gh-file-name{padding:5px 8px 5px 0;vertical-align:middle;white-space:nowrap}.gh-fname-link{font-size:13px;text-decoration:none;cursor:pointer;background:none;border:none;font-family:var(--font);padding:0;text-align:left}.gh-fname-dir{color:var(--cyan-bright)}.gh-fname-rs{color:var(--fg-bright)}.gh-fname-config{color:var(--yellow-bright)}.gh-fname-doc,.gh-fname-script{color:var(--green-bright)}.gh-fname-py{color:var(--blue-bright)}.gh-fname-java{color:var(--fg-bright)}.gh-fname-data{color:var(--fg-dim)}.gh-fname-proto{color:var(--cyan)}.gh-fname-default{color:var(--fg)}.gh-file-commit{padding:5px 8px;font-size:12px;overflow:hidden;text-overflow:ellipsis;max-width:0;width:38%}.gh-file-commit,.gh-file-time{color:var(--fg-dim);white-space:nowrap;vertical-align:middle}.gh-file-time{padding:5px 10px 5px 4px;font-size:11px;text-align:right}.gh-readme-wrap{border-top:1px solid var(--fg-dim)}.gh-readme-header{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#080808;border-bottom:1px solid #1a1a1a;font-size:12px;color:var(--fg-dim)}.gh-readme-name{color:var(--fg);font-weight:700}.gh-readme-body{padding:16px 20px}.gh-rm-badges{display:flex;gap:5px;margin-bottom:10px;flex-wrap:wrap}.gh-rm-badge{background:var(--bg);border:1px solid var(--fg-dim);color:var(--cyan-bright);font-size:10px;padding:2px 7px;letter-spacing:.04em}.gh-rm-h1{font-size:18px;padding-bottom:8px;margin-bottom:10px}.gh-rm-h1,.gh-rm-h2{color:var(--fg-bright);font-weight:700;border-bottom:1px solid #1a1a1a}.gh-rm-h2{font-size:14px;padding-bottom:3px;margin:14px 0 8px}.gh-rm-h3{color:var(--cyan-bright);font-size:13px;font-weight:700;margin:10px 0 5px}.gh-rm-p{color:var(--fg-dim);font-size:13px;line-height:1.65;margin-bottom:10px}.gh-rm-code{background:#0a0a0a;border:1px solid #1a1a1a;padding:10px 14px;color:var(--green-bright);font-size:12px;line-height:1.6;margin:8px 0;overflow-x:auto;white-space:pre;font-family:var(--font)}.gh-rm-ul{list-style:none;padding:0;margin:5px 0 10px}.gh-rm-ul li{color:var(--fg-dim);font-size:13px;line-height:1.7;padding-left:14px;position:relative}.gh-rm-ul li:before{content:"·";color:#333;position:absolute;left:2px}.gh-sidebar{display:flex;flex-direction:column;gap:16px}.gh-side-hd{color:var(--yellow-bright);font-size:10px;font-weight:700;letter-spacing:.12em;margin-bottom:8px}.gh-side-desc{color:var(--fg-dim);font-size:12px;line-height:1.6;margin-bottom:8px}.gh-topics{display:flex;flex-wrap:wrap;gap:4px}.gh-topic{background:#0d1f2d;border:1px solid #0d3555;color:var(--cyan-bright);font-size:10px;padding:2px 7px;cursor:pointer;letter-spacing:.03em}.gh-topic:hover{background:#0d3555}.gh-stat-row{display:flex;justify-content:space-between;padding:3px 0;font-size:12px;border-bottom:1px solid #0a0a0a}.gh-stat-row:last-child{border-bottom:none}.gh-stat-key{color:var(--fg-dim)}.gh-stat-val{color:var(--fg);font-weight:700}.gh-stat-val-green{color:var(--green-bright);font-size:12px;font-weight:700}.gh-lang-bar{height:5px;border-radius:2px;overflow:hidden;display:flex;margin-bottom:8px}.gh-lang-list{display:flex;flex-direction:column;gap:3px}.gh-lang-row{display:flex;justify-content:space-between;font-size:11px;align-items:center}.gh-lang-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:5px;flex-shrink:0}.gh-lang-name{color:var(--fg);display:flex;align-items:center}.gh-lang-pct{color:var(--fg-dim)}@media (max-width:900px){.gh-repo-wrap{grid-template-columns:1fr}.gh-side-col{border-left:none;border-top:1px solid var(--fg-dim)}}.not-found{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);color:var(--fg)}.not-found-code{color:var(--red);font-size:48px;font-weight:700}.not-found-text{color:var(--fg-dim);margin:1ch 0 2ch}.mode-select{flex:1 1;flex-direction:column;align-items:center;padding:2ch}.mode-buttons,.mode-select{display:flex;justify-content:center}.mode-buttons{gap:4ch}.mode-btn{background:var(--bg);border:2px solid var(--fg);padding:2ch 4ch;cursor:pointer;font-family:var(--font);text-align:center;min-width:24ch}.mode-btn:hover{background:var(--fg)}.mode-btn:hover .mode-btn-desc,.mode-btn:hover .mode-btn-title{color:var(--bg)}.mode-btn-title{color:var(--fg-bright);font-weight:700;font-size:16px;margin-bottom:1ch}.mode-btn-desc{color:var(--fg-dim);font-size:12px}.mode-btn-dev{border-color:var(--green-bright)}.mode-btn-dev .mode-btn-title{color:var(--green-bright)}.mode-btn-dev:hover{background:var(--green-bright);border-color:var(--green-bright)}.terminal{flex:1 1;display:flex;flex-direction:column;overflow:hidden}.terminal-header{padding:0 1ch;flex-shrink:0}.terminal-output{flex:1 1;overflow-y:auto;padding:0 1ch 1ch}.terminal-output::-webkit-scrollbar{width:1ch;background:var(--bg)}.terminal-output::-webkit-scrollbar-thumb{background:var(--fg-dim)}.terminal-line{white-space:pre-wrap;word-break:break-all}.terminal-input-line{display:flex;align-items:center;border-top:1px solid var(--fg-dim);padding:1ch}.terminal-input{flex:1 1;background:transparent;border:none;color:var(--fg-bright);font-family:var(--font);font-size:14px;outline:none;caret-color:var(--fg);margin-left:5px}.terminal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20ch,1fr));grid-gap:0 2ch;gap:0 2ch;padding:.5ch 0}.grid-dir{color:var(--cyan-bright)}.grid-file{color:var(--fg)}.output-error{color:var(--red)}.output-success{color:var(--green-bright)}.output-info{color:var(--cyan-bright)}.output-dim{color:var(--fg-dim)}.terminal-link{color:var(--cyan-bright);text-decoration:underline;cursor:pointer}.terminal-link:hover{color:var(--yellow-bright)}@media (max-width:768px){.status-bar-bottom{flex-wrap:wrap}.info-grid{grid-template-columns:1fr}.info-label{color:var(--yellow-bright)}.item-desc,.item-tags{padding-left:0}.nav-menu{flex-wrap:wrap}}@media (max-width:480px){.tui-content::-webkit-scrollbar{display:none}.tui-content{-ms-overflow-style:none;scrollbar-width:none}}.blog-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--fg-dim)}.blog-list li{border-bottom:1px solid var(--fg-dim)}.blog-row{display:grid;grid-template-columns:auto auto 1fr auto;grid-template-rows:auto auto;grid-column-gap:2ch;column-gap:2ch;grid-row-gap:.25ch;row-gap:.25ch;padding:1ch .5ch;text-decoration:none;color:var(--fg);transition:background .1s ease}.blog-row:hover{background:var(--fg-dim);color:var(--fg-bright)}.blog-row-type{color:var(--cyan-bright);grid-column:1;grid-row:1}.blog-row-date{color:var(--yellow-bright);grid-column:2;grid-row:1}.blog-row-name{color:var(--fg-bright);grid-column:3;grid-row:1}.blog-row-meta{grid-column:4;grid-row:1;display:flex;gap:2ch;color:var(--fg-dim);font-size:.9em}.blog-row:hover .blog-row-meta{color:var(--fg)}.blog-row-time{color:inherit}.blog-row-cat{color:var(--green-bright)}.blog-row-excerpt{grid-column:3/5;grid-row:2;color:var(--fg-dim);font-size:.95em}.blog-row:hover .blog-row-excerpt{color:var(--fg)}.blog-post{max-width:80ch;margin:0 auto}.blog-post-header{padding-bottom:1.5ch;margin-bottom:2ch;border-bottom:1px solid var(--fg-dim)}.blog-post-title{font-size:2rem;color:var(--fg-bright);margin:0 0 1ch;line-height:1.2}.blog-post-meta{display:flex;gap:1ch;color:var(--fg-dim);font-size:.95em;align-items:center}.blog-post-body{color:var(--fg);line-height:1.7;font-size:1rem}.blog-post-body>*+*{margin-top:1.25em}.blog-post-body h2,.blog-post-body h3,.blog-post-body h4{color:var(--cyan-bright);margin-top:2em;line-height:1.3}.blog-post-body h2{font-size:1.4rem;padding-bottom:.3em;border-bottom:1px solid var(--fg-dim)}.blog-post-body h3{font-size:1.15rem;color:var(--yellow-bright)}.blog-post-body h4{font-size:1rem;color:var(--green-bright)}.blog-post-body p{color:var(--fg)}.blog-post-body a{color:var(--cyan-bright);text-decoration:underline;text-underline-offset:2px}.blog-post-body a:hover{color:var(--yellow-bright)}.blog-post-body strong{color:var(--fg-bright);font-weight:700}.blog-post-body em{color:var(--fg-bright)}.blog-post-body code{background:#1a1a1a;color:var(--yellow-bright);padding:.15em .4em;border-radius:2px;font-size:.92em}.blog-post-body pre{background:#0d1117;border:1px solid var(--fg-dim);border-radius:3px;padding:1ch 1.5ch;overflow-x:auto;font-size:.9em;line-height:1.55}.blog-post-body pre code{background:transparent;color:inherit;padding:0;border-radius:0;font-size:inherit}.blog-post-body ol,.blog-post-body ul{padding-left:2.5ch;color:var(--fg)}.blog-post-body ol li,.blog-post-body ul li{margin:.4em 0}.blog-post-body ul li::marker{color:var(--green-bright)}.blog-post-body ol li::marker{color:var(--yellow-bright)}.blog-post-body blockquote{border-left:2px solid var(--cyan);padding:.5ch 1.5ch;color:var(--fg-dim);font-style:italic}.blog-post-body hr{border:none;border-top:1px dashed var(--fg-dim);margin:2em 0}.blog-post-body table{width:100%;border-collapse:collapse;font-size:.95em}.blog-post-body td,.blog-post-body th{text-align:left;padding:.5ch 1ch;border-bottom:1px solid var(--fg-dim)}.blog-post-body th{color:var(--cyan-bright);border-bottom:1px solid var(--cyan)}.blog-post-nav{display:grid;grid-template-columns:1fr 1fr;grid-gap:2ch;gap:2ch;margin:3ch 0 2ch;padding-top:1.5ch;border-top:1px solid var(--fg-dim)}.blog-post-nav-link{display:flex;flex-direction:column;gap:.3ch;padding:1ch;border:1px solid var(--fg-dim);text-decoration:none;color:var(--fg);transition:border-color .1s ease,color .1s ease}.blog-post-nav-link:hover{border-color:var(--cyan-bright);color:var(--fg-bright)}.blog-post-nav-link.align-right{text-align:right}.blog-post-nav-dir{color:var(--yellow-bright);font-size:.85em}.blog-post-nav-title{color:var(--fg-bright);font-size:.95em}.blog-filter{display:flex;flex-direction:column;gap:.75ch;padding:1ch 0;margin-bottom:1ch;border-bottom:1px dashed var(--fg-dim)}.blog-filter-row{display:flex;flex-wrap:wrap;gap:.5ch;align-items:center}.blog-filter-label{color:var(--cyan-bright);font-size:.9em;margin-right:.5ch;min-width:8ch}.blog-chip{display:inline-flex;align-items:center;gap:.5ch;padding:.2ch 1ch;background:transparent;color:var(--fg);border:1px solid var(--fg-dim);border-radius:2px;font:inherit;font-size:.9em;cursor:pointer;transition:border-color .1s ease,color .1s ease,background .1s ease}.blog-chip:hover{border-color:var(--cyan-bright);color:var(--fg-bright)}.blog-chip.is-active{background:var(--cyan);border-color:var(--cyan-bright);color:var(--bg);font-weight:700}.blog-chip.is-active .blog-chip-count{color:var(--bg);opacity:.7}.blog-chip-count{color:var(--fg-dim);font-size:.85em}.blog-chip-clear{border-color:var(--yellow);color:var(--yellow-bright)}.blog-chip-clear:hover{border-color:var(--yellow-bright);background:var(--yellow);color:var(--bg)}.blog-filter-result{color:var(--fg-dim);font-size:.9em;margin-left:auto}.blog-year-group{margin-top:2ch}.blog-year-group:first-child{margin-top:0}.blog-year-header{display:flex;align-items:center;gap:1ch;margin:0 0 .5ch;padding:0}.blog-year-label{color:var(--yellow-bright);font-weight:700;font-size:1.1em}.blog-year-line{flex:1 1;height:1px;background:var(--fg-dim)}.blog-year-count{color:var(--fg-dim);font-size:.9em}.blog-empty{display:flex;align-items:center;gap:1ch;padding:2ch 1ch;color:var(--fg-dim);text-align:center;justify-content:center;border:1px dashed var(--fg-dim);margin:1ch 0}.blog-empty-link{background:transparent;border:none;color:var(--cyan-bright);font:inherit;text-decoration:underline;cursor:pointer;padding:0}.blog-empty-link:hover{color:var(--yellow-bright)}.blog-list-compact .blog-row{padding:.6ch .5ch}.hr-section-more{display:inline-block;margin-top:1ch;color:var(--cyan-bright);text-decoration:none;font-size:.95em}.hr-section-more:hover{color:var(--yellow-bright)}@media (max-width:700px){.blog-row{grid-template-columns:auto 1fr}.blog-row-type{grid-column:1;grid-row:1}.blog-row-date{grid-column:2;grid-row:1}.blog-row-name{grid-column:1/3;grid-row:2}.blog-row-excerpt{grid-column:1/3;grid-row:3}.blog-row-meta{grid-column:1/3;grid-row:4}.blog-post-nav{grid-template-columns:1fr}.blog-filter-label{min-width:unset;width:100%}.blog-filter-result{margin-left:0;width:100%}}:root{--n-bg:#141414;--n-bg-row:#1c1c1c;--n-border:#2a2a2a;--n-border-lt:#222;--n-fg:#8a8a8a;--n-fg-mid:silver;--n-fg-bright:#f0f0f0;--n-fg-dim:#4e4e4e;--n-green:#4ade80;--n-rose:#f87171;--n-accent:#38bdf8;--n-accent-dim:rgba(56,189,248,.12)}.hr2-page{height:100vh;overflow-y:auto;overflow-x:hidden;background:var(--n-bg);color:var(--n-fg);font-family:Inter,sans-serif}.hr2-nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;height:52px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:hsla(0,0%,7%,.85);border-bottom:1px solid var(--n-border)}.hr2-nav-inner{max-width:1040px;margin:0 auto;padding:0 2.5rem;height:100%;display:flex;justify-content:space-between;align-items:center}.hr2-nav-logo{font-family:JetBrains Mono,monospace;font-size:.72rem;color:var(--n-fg-bright);text-decoration:none}.hr2-nav-links{display:flex;gap:2rem}.hr2-nav-links a{color:var(--n-fg-dim);text-decoration:none;font-size:.78rem;transition:color .15s}.hr2-nav-links a:hover,.hr2-nav-links a[aria-current=page]{color:var(--n-accent)}.hr2-wrap{max-width:1040px;margin:0 auto;padding:0 2.5rem}.hr2-hero{display:grid;grid-template-columns:1fr 340px;grid-gap:4rem;gap:4rem;padding:5.5rem 0 4.5rem;border-bottom:1px solid var(--n-border)}.hr2-hero-name{font-size:2.75rem;font-weight:800;color:var(--n-fg-bright);letter-spacing:-.05em;line-height:.92;margin-bottom:.75rem}.hr2-hero-role{font-family:JetBrains Mono,monospace;font-size:.68rem;color:var(--n-fg-dim);letter-spacing:.04em;margin-bottom:1.75rem}.hr2-hero-bio{font-size:.875rem;color:var(--n-fg-mid);line-height:1.8;max-width:52ch;margin-bottom:2rem}.hr2-hero-links{display:flex;gap:1.5rem;flex-wrap:wrap}.hr2-hl{font-size:.73rem;font-weight:500;color:var(--n-fg-mid);display:inline-flex;align-items:baseline;gap:.3rem;border-bottom:1px solid var(--n-border);padding-bottom:1px;text-decoration:none;transition:color .15s,border-color .15s}.hr2-hl:hover{color:var(--n-accent);border-bottom-color:var(--n-accent)}.hr2-meta-card{background:var(--n-bg-row);border:1px solid var(--n-border);padding:1.5rem;align-self:start;margin-top:.5rem}.hr2-meta-row{display:flex;flex-direction:column;gap:.125rem;padding:.75rem 0;border-bottom:1px solid var(--n-border-lt)}.hr2-meta-row:first-child{padding-top:0}.hr2-meta-row:last-child{padding-bottom:0;border-bottom:none}.hr2-meta-key{font-family:JetBrains Mono,monospace;font-size:.55rem;letter-spacing:.16em;color:var(--n-fg-dim)}.hr2-meta-val{font-size:.75rem;font-weight:500;color:var(--n-fg-mid)}.hr2-sec{padding:3.5rem 0;border-bottom:1px solid var(--n-border)}.hr2-sec:last-child{border-bottom:none}.hr2-sec-head{display:flex;align-items:baseline;gap:.875rem;margin-bottom:2rem}.hr2-sec-label{font-family:JetBrains Mono,monospace;font-size:.58rem;letter-spacing:.2em;color:var(--n-accent);white-space:nowrap}.hr2-sec-rule{flex:1 1;height:1px;background:var(--n-border)}.hr2-sec-count{color:var(--n-fg-mid)}.hr2-sec-count,.hr2-tag{font-family:JetBrains Mono,monospace;font-size:.58rem}.hr2-tag{color:var(--n-fg-dim);padding:2px 8px;border:1px solid var(--n-border);display:inline-block}.hr2-proj-list{display:flex;flex-direction:column;gap:0;position:relative}.hr2-proj-row{display:grid;grid-template-columns:28px 1fr 180px 100px;grid-gap:1.5rem;gap:1.5rem;align-items:center;padding:1.125rem 0;border-bottom:1px solid var(--n-border-lt);text-decoration:none;color:inherit;cursor:pointer;transition:background .15s,padding .15s,margin .15s}.hr2-proj-row:hover{background:var(--n-bg-row);margin:0 -1.25rem;padding-left:1.25rem;padding-right:1.25rem}.hr2-proj-row:last-child{border-bottom:none}.hr2-pr-num,.hr2-proj-row:hover .hr2-pr-name{color:var(--n-accent)}.hr2-pr-num{font-family:JetBrains Mono,monospace;font-size:.6rem;opacity:.45;align-self:start;padding-top:.2rem;transition:opacity .15s}.hr2-proj-row:hover .hr2-pr-num{opacity:1}.hr2-pr-name{font-size:.82rem;font-weight:700;color:var(--n-fg-mid);display:flex;align-items:baseline;gap:.5rem;margin-bottom:.25rem;transition:color .15s}.hr2-pr-lang{font-family:JetBrains Mono,monospace;font-size:.58rem;color:var(--n-fg-dim);font-weight:400}.hr2-pr-desc{font-size:.7rem;color:var(--n-fg);line-height:1.55}.hr2-pr-tags{display:flex;gap:.3rem;flex-wrap:wrap;align-self:center}.hr2-pr-stat{text-align:right;align-self:center}.hr2-pr-stat-num{font-size:.82rem;font-weight:600;color:var(--n-fg-bright);line-height:1;margin-bottom:.2rem}.hr2-pr-stat-lbl,.hr2-pr-stat-num{font-family:JetBrains Mono,monospace;display:block}.hr2-pr-stat-lbl{font-size:.54rem;color:var(--n-fg-dim);letter-spacing:.04em}.hr2-research-item{display:grid;grid-template-columns:1fr 160px;grid-gap:2.5rem;gap:2.5rem;align-items:start;padding:1.75rem 0}.hr2-ri-title{font-size:.88rem;font-weight:700;color:var(--n-fg-bright);margin-bottom:.5rem;line-height:1.35;transition:color .15s}.hr2-research-item:hover .hr2-ri-title{color:var(--n-accent)}.hr2-ri-summary{font-size:.75rem;color:var(--n-fg);line-height:1.7;margin-bottom:.875rem;max-width:58ch}.hr2-ri-aside{text-align:right}.hr2-ri-badge{font-family:JetBrains Mono,monospace;font-size:.58rem;font-weight:700;letter-spacing:.1em;color:var(--n-accent);border:1px solid rgba(56,189,248,.2);padding:3px 10px;display:inline-block}.hr2-contact-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:5rem;gap:5rem;align-items:start}.hr2-cg-left h3{font-size:1.5rem;font-weight:800;color:var(--n-fg-bright);letter-spacing:-.04em;line-height:1.1;margin-bottom:.875rem}.hr2-cg-left p{font-size:.78rem;color:var(--n-fg-mid);line-height:1.75;margin-bottom:1.75rem;max-width:36ch}.hr2-btn-email{display:inline-block;font-size:.73rem;font-weight:600;color:var(--n-fg-bright);background:none;border:1px solid var(--n-border);padding:.55rem 1.25rem;text-decoration:none;transition:border-color .15s;font-family:Inter,sans-serif;cursor:pointer}.hr2-btn-email:hover{border-color:var(--n-fg-dim)}.hr2-cg-right{display:flex;flex-direction:column;gap:0}.hr2-cg-link{display:flex;align-items:baseline;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--n-border-lt);text-decoration:none;color:inherit}.hr2-cg-link:last-child{border-bottom:none}.hr2-cg-link:hover .hr2-cg-label{color:var(--n-accent)}.hr2-cg-label{font-size:.75rem;font-weight:600;color:var(--n-fg-mid);transition:color .15s}.hr2-cg-value{font-family:JetBrains Mono,monospace;font-size:.62rem;color:var(--n-fg-dim)}.hr2-footer{border-top:1px solid var(--n-border);padding:1.25rem 0}.hr2-footer-inner{max-width:1040px;margin:0 auto;padding:0 2.5rem;display:flex;justify-content:space-between}.hr2-footer button,.hr2-footer span{font-family:JetBrains Mono,monospace;font-size:.58rem;color:var(--n-fg-dim);letter-spacing:.08em}@media (max-width:720px){.hr2-hero{grid-template-columns:1fr}}@media (max-width:640px){.hr2-contact-grid{grid-template-columns:1fr}}.hr2-blog-stats{display:flex;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--n-border-lt)}.hr2-blog-stats>span{display:flex;flex-direction:column;gap:.15rem}.hr2-blog-stats-key{font-family:JetBrains Mono,monospace;font-size:.52rem;letter-spacing:.12em;color:var(--n-fg-dim)}.hr2-blog-stats-val{font-family:JetBrains Mono,monospace;font-size:.68rem;color:var(--n-fg-mid)}.hr2-blog-filter{margin-bottom:1.75rem;display:flex;flex-direction:column;gap:.625rem}.hr2-blog-filter-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.hr2-blog-filter-label{font-size:.52rem;letter-spacing:.12em;min-width:64px}.hr2-blog-chip,.hr2-blog-filter-label{font-family:JetBrains Mono,monospace;color:var(--n-fg-dim)}.hr2-blog-chip{font-size:.6rem;background:transparent;border:1px solid var(--n-border);padding:2px 8px;cursor:pointer;transition:border-color .15s,color .15s;line-height:1.6}.hr2-blog-chip:hover{border-color:var(--n-fg-dim);color:var(--n-fg-mid)}.hr2-blog-chip.is-active{border-color:var(--n-fg-dim);color:var(--n-fg-bright)}.hr2-blog-chip-count{color:var(--n-fg-dim);margin-left:.2rem}.hr2-blog-chip-clear{color:var(--n-rose);border-color:hsla(0,91%,71%,.2)}.hr2-blog-chip-clear:hover{border-color:var(--n-rose);color:var(--n-rose)}.hr2-blog-filter-result{margin-left:.5rem;font-family:JetBrains Mono,monospace;font-size:.52rem;color:var(--n-fg-dim)}.hr2-blog-year-group{margin-bottom:0}.hr2-blog-year-header{display:flex;align-items:baseline;gap:.875rem;margin-bottom:.75rem;padding-top:1.75rem}.hr2-blog-year-label{font-family:JetBrains Mono,monospace;font-size:.58rem;letter-spacing:.2em;color:var(--n-fg-dim)}.hr2-blog-year-line{flex:1 1;height:1px;background:var(--n-border)}.hr2-blog-year-count{font-family:JetBrains Mono,monospace;font-size:.58rem;color:var(--n-fg-dim)}.hr2-blog-list{list-style:none;padding:0;margin:0}.hr2-blog-row{display:grid;grid-template-columns:88px 1fr auto;grid-gap:1.25rem;gap:1.25rem;align-items:start;padding:1rem 0;border-bottom:1px solid var(--n-border-lt);text-decoration:none;color:inherit;transition:background .15s,padding .15s,margin .15s}.hr2-blog-row:last-child{border-bottom:none}.hr2-blog-row:hover{background:var(--n-bg-row);margin:0 -1.25rem;padding-left:1.25rem;padding-right:1.25rem}.hr2-blog-row:hover .hr2-blog-row-name{color:var(--n-accent)}.hr2-blog-row-date{font-family:JetBrains Mono,monospace;font-size:.6rem;color:var(--n-fg-dim);padding-top:.1rem}.hr2-blog-row-main{display:flex;flex-direction:column;gap:.2rem}.hr2-blog-row-name{font-size:.82rem;font-weight:600;color:var(--n-fg-mid);transition:color .15s;line-height:1.3}.hr2-blog-row-excerpt{font-size:.7rem;color:var(--n-fg);line-height:1.55}.hr2-blog-row-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.35rem;padding-top:.1rem}.hr2-blog-row-time{font-size:.55rem}.hr2-blog-badge,.hr2-blog-row-time{font-family:JetBrains Mono,monospace;color:var(--n-fg-dim)}.hr2-blog-badge{font-size:.52rem;letter-spacing:.06em;border:1px solid var(--n-border);padding:1px 5px;white-space:nowrap}.hr2-blog-empty{font-size:.78rem;color:var(--n-fg-dim);padding:2rem 0;display:flex;gap:.75rem;align-items:center}.hr2-blog-empty-link{font-family:inherit;font-size:inherit;color:var(--n-fg-dim);background:none;border:1px solid var(--n-border);padding:1px 8px;cursor:pointer;text-decoration:none;transition:color .15s,border-color .15s}.hr2-blog-empty-link:hover{color:var(--n-fg-mid);border-color:var(--n-fg-dim)}.hr2-blog-post{max-width:680px}.hr2-blog-post-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--n-border)}.hr2-blog-post-title{font-size:1.75rem;font-weight:800;color:var(--n-fg-bright);letter-spacing:-.04em;line-height:1.2;margin-bottom:.875rem}.hr2-blog-post-meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;font-family:JetBrains Mono,monospace;font-size:.62rem}.hr2-blog-post-meta,.hr2-blog-post-meta-dot{color:var(--n-fg-dim)}.hr2-blog-post-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.875rem}.hr2-blog-post-tag{font-family:JetBrains Mono,monospace;font-size:.55rem;color:var(--n-fg-dim);border:1px solid var(--n-border);padding:1px 6px}.hr2-blog-post-body{font-size:.875rem;color:var(--n-fg-mid);line-height:1.8}.hr2-blog-post-body h1,.hr2-blog-post-body h2,.hr2-blog-post-body h3,.hr2-blog-post-body h4{font-weight:700;color:var(--n-fg-bright);letter-spacing:-.03em;margin:2.25rem 0 .75rem;line-height:1.25}.hr2-blog-post-body h1{font-size:1.3rem}.hr2-blog-post-body h2{font-size:1.1rem}.hr2-blog-post-body h3{font-size:.95rem}.hr2-blog-post-body h4{font-size:.875rem}.hr2-blog-post-body p{margin-bottom:1.25rem}.hr2-blog-post-body a{color:var(--n-fg-mid);border-bottom:1px solid var(--n-border);text-decoration:none;transition:color .15s,border-color .15s}.hr2-blog-post-body a:hover{color:var(--n-accent);border-bottom-color:var(--n-accent)}.hr2-blog-post-body ol,.hr2-blog-post-body ul{padding-left:1.5rem;margin-bottom:1.25rem}.hr2-blog-post-body li{margin-bottom:.4rem}.hr2-blog-post-body code{font-size:.78em;padding:1px 5px}.hr2-blog-post-body code,.hr2-blog-post-body pre{font-family:JetBrains Mono,monospace;background:var(--n-bg-row);border:1px solid var(--n-border);color:var(--n-fg-mid)}.hr2-blog-post-body pre{padding:1.25rem 1.5rem;overflow-x:auto;margin-bottom:1.5rem;font-size:.78rem;line-height:1.6}.hr2-blog-post-body pre code{background:none;border:none;padding:0;font-size:inherit}.hr2-blog-post-body blockquote{border-left:2px solid var(--n-border);padding:.5rem 1.25rem;margin:0 0 1.25rem;color:var(--n-fg)}.hr2-blog-post-body hr{border:none;border-top:1px solid var(--n-border);margin:2.5rem 0}.hr2-blog-post-body img{max-width:100%;border:1px solid var(--n-border)}.hr2-blog-post-body table{width:100%;border-collapse:collapse;margin-bottom:1.5rem;font-size:.8rem}.hr2-blog-post-body td,.hr2-blog-post-body th{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--n-border-lt)}.hr2-blog-post-body th{font-family:JetBrains Mono,monospace;font-size:.6rem;letter-spacing:.1em;color:var(--n-fg-dim);border-bottom:1px solid var(--n-border)}.hr2-blog-post-nav{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem;margin-top:3rem;padding-top:2rem;border-top:1px solid var(--n-border)}.hr2-blog-post-nav-link{display:flex;flex-direction:column;gap:.25rem;text-decoration:none;color:inherit}.hr2-blog-post-nav-link.align-right{text-align:right}.hr2-blog-post-nav-dir{font-family:JetBrains Mono,monospace;font-size:.55rem;letter-spacing:.1em;color:var(--n-fg-dim)}.hr2-blog-post-nav-title{font-size:.75rem;font-weight:600;color:var(--n-fg-mid);transition:color .15s}.hr2-blog-post-nav-link:hover .hr2-blog-post-nav-title{color:var(--n-accent)}.hr2-back{display:inline-flex;align-items:center;gap:.5rem;margin-top:2rem;font-family:JetBrains Mono,monospace;font-size:.6rem;color:var(--n-fg-dim);text-decoration:none;transition:color .15s}.hr2-back:hover{color:var(--n-fg-mid)}@media (max-width:600px){.hr2-blog-row{grid-template-columns:1fr auto}.hr2-blog-row-date{display:none}.hr2-blog-post-nav{grid-template-columns:1fr}}.adm-root{height:100vh;overflow-y:auto;background:var(--n-bg);color:var(--n-fg-mid);font-family:Inter,sans-serif;display:flex;flex-direction:column}.adm-nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;height:48px;background:hsla(0,0%,7%,.92);border-bottom:1px solid var(--n-border);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);flex-shrink:0}.adm-nav-inner{max-width:1100px;margin:0 auto;padding:0 2rem;height:100%;display:flex;align-items:center;gap:1.5rem}.adm-nav-logo{font-family:JetBrains Mono,monospace;font-size:.6rem;font-weight:700;letter-spacing:.2em;color:var(--n-fg-bright);text-decoration:none;margin-right:.5rem}.adm-nav-links{display:flex;gap:1.25rem;flex:1 1}.adm-nav-links a{font-size:.72rem;color:var(--n-fg-dim);text-decoration:none;transition:color .15s}.adm-nav-links a:hover{color:var(--n-fg-bright)}.adm-nav-site{margin-left:auto}.adm-nav-logout{font-family:JetBrains Mono,monospace;font-size:.58rem;letter-spacing:.08em;color:var(--n-fg-dim);background:none;border:1px solid var(--n-border);padding:2px 10px;cursor:pointer;transition:border-color .15s,color .15s}.adm-nav-logout:hover{border-color:var(--n-fg-dim);color:var(--n-fg-mid)}.adm-main{flex:1 1;overflow-y:auto}.adm-wrap{max-width:900px;margin:0 auto;padding:2.5rem 2rem 4rem}.adm-wrap-editor{max-width:820px}.adm-page-head{justify-content:space-between;margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--n-border)}.adm-page-head,.adm-page-head-right{display:flex;align-items:center;gap:1rem}.adm-page-title{font-size:1rem;font-weight:700;color:var(--n-fg-bright);letter-spacing:-.02em}.adm-link-back{font-family:JetBrains Mono,monospace;font-size:.6rem;color:var(--n-fg-dim);text-decoration:none;transition:color .15s}.adm-link-back:hover{color:var(--n-fg-mid)}.adm-link-action{font-family:JetBrains Mono,monospace;font-size:.6rem;color:var(--n-fg-dim);text-decoration:none;transition:color .15s}.adm-link-action:hover{color:var(--n-fg-mid)}.adm-note{font-size:.72rem;color:var(--n-fg-dim);line-height:1.6;margin-bottom:1.75rem;padding:.75rem 1rem;background:var(--n-bg-row);border:1px solid var(--n-border-lt)}.adm-note code{font-family:JetBrains Mono,monospace;font-size:.7em;color:var(--n-fg)}.adm-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--n-border);margin-bottom:2.5rem}.adm-stat-card{display:flex;flex-direction:column;gap:.25rem;background:var(--n-bg);padding:1.5rem;text-decoration:none;color:inherit;transition:background .15s}.adm-stat-card:hover{background:var(--n-bg-row)}.adm-stat-num{font-family:JetBrains Mono,monospace;font-size:1.75rem;font-weight:700;color:var(--n-fg-bright);line-height:1}.adm-stat-label{font-size:.7rem;color:var(--n-fg)}.adm-stat-sub{font-family:JetBrains Mono,monospace;font-size:.55rem;color:var(--n-fg-dim);margin-top:.15rem}.adm-section{margin-top:2rem}.adm-deploy-panel{margin-top:2rem;border:1px solid var(--n-border);padding:1.25rem 1.5rem}.adm-deploy-body{margin-top:.75rem}.adm-deploy-desc{font-size:.8rem;color:var(--n-fg-mid);margin-bottom:1rem;line-height:1.6}.adm-deploy-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.adm-deploy-btn{font-family:JetBrains Mono,monospace;font-size:.68rem;font-weight:700;letter-spacing:.06em;color:var(--n-bg);background:var(--n-accent);border:none;padding:.5rem 1.25rem;cursor:pointer;transition:opacity .15s}.adm-deploy-btn:hover{opacity:.85}.adm-deploy-btn:disabled{opacity:.45;cursor:not-allowed}.adm-deploy-msg{font-family:JetBrains Mono,monospace;font-size:.65rem}.adm-deploy-msg-success{color:var(--n-green)}.adm-deploy-msg-error{color:var(--n-rose)}.adm-deploy-msg-unconfigured{color:#f9c74f}.adm-deploy-hint,.adm-deploy-msg-loading{color:var(--n-fg-dim)}.adm-deploy-hint{font-family:JetBrains Mono,monospace;font-size:.6rem;line-height:1.5}.adm-section-head{margin-bottom:.875rem}.adm-section-label{font-family:JetBrains Mono,monospace;font-size:.55rem;letter-spacing:.18em;color:var(--n-fg-dim)}.adm-list{display:flex;flex-direction:column;gap:0}.adm-list-row{display:flex;align-items:center;gap:1.25rem;padding:.875rem 0;border-bottom:1px solid var(--n-border-lt);text-decoration:none;color:inherit;transition:background .15s,padding .15s,margin .15s}.adm-list-row:last-child{border-bottom:none}.adm-list-row:hover:not(:not(a)):not(.adm-research-item>.adm-list-row){background:var(--n-bg-row);margin:0 -1rem;padding-left:1rem;padding-right:1rem}a.adm-list-row:hover .adm-list-primary{color:var(--n-fg-bright)}.adm-list-primary{flex:1 1;font-size:.82rem;font-weight:600;color:var(--n-fg-mid);transition:color .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.adm-list-meta{font-size:.68rem;color:var(--n-fg-dim);white-space:nowrap}.adm-list-actions{display:flex;gap:.75rem;margin-left:auto}.adm-badge,.adm-mono{font-family:JetBrains Mono,monospace}.adm-badge{font-size:.52rem;letter-spacing:.08em;color:var(--n-green);border:1px solid rgba(74,222,128,.2);padding:1px 6px;white-space:nowrap}.adm-badge-dim{color:var(--n-fg-dim);border-color:var(--n-border)}.adm-editor{display:flex;flex-direction:column;gap:1.25rem;min-height:0}.adm-editor-top{display:contents}.adm-field{display:flex;flex-direction:column;gap:.35rem}.adm-field-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:1rem;gap:1rem}.adm-field-sm{min-width:0}.adm-field-grow{flex:1 1}.adm-label{font-family:JetBrains Mono,monospace;font-size:.52rem;letter-spacing:.12em;color:var(--n-fg-dim)}.adm-input{background:var(--n-bg-row);border:1px solid var(--n-border);color:var(--n-fg-mid);font-family:Inter,sans-serif;font-size:.78rem;padding:.5rem .75rem;outline:none;transition:border-color .15s;width:100%;box-sizing:border-box}.adm-input:focus{border-color:var(--n-fg-dim)}.adm-input[readonly]{opacity:.6;cursor:default}.adm-input-mono{font-family:JetBrains Mono,monospace;font-size:.72rem}.adm-input-lg{font-size:.9rem;font-weight:600}.adm-select{background:var(--n-bg-row);border:1px solid var(--n-border);color:var(--n-fg-mid);font-family:JetBrains Mono,monospace;font-size:.68rem;padding:.45rem .6rem;outline:none;transition:border-color .15s;cursor:pointer;width:100%}.adm-select:focus{border-color:var(--n-fg-dim)}.adm-textarea{background:var(--n-bg-row);border:1px solid var(--n-border);color:var(--n-fg-mid);font-family:JetBrains Mono,monospace;font-size:.72rem;line-height:1.65;padding:.875rem 1rem;resize:vertical;outline:none;width:100%;box-sizing:border-box;min-height:120px;transition:border-color .15s}.adm-textarea:focus{border-color:var(--n-fg-dim)}.adm-field-grow .adm-textarea,.adm-textarea.adm-field-grow{min-height:480px;resize:vertical;flex:1 1}.adm-textarea-sm{min-height:80px}.adm-btn-primary{font-family:JetBrains Mono,monospace;font-size:.65rem;letter-spacing:.08em;color:var(--n-bg);background:var(--n-fg-mid);border:1px solid var(--n-fg-mid);padding:.5rem 1.25rem;cursor:pointer;transition:background .15s,border-color .15s;white-space:nowrap;text-decoration:none;display:inline-block}.adm-btn-primary:hover:not(:disabled){background:var(--n-fg-bright);border-color:var(--n-fg-bright)}.adm-btn-primary:disabled{opacity:.5;cursor:not-allowed}.adm-btn-secondary{font-family:JetBrains Mono,monospace;font-size:.62rem;letter-spacing:.06em;color:var(--n-fg-dim);background:transparent;border:1px solid var(--n-border);padding:.4rem 1rem;cursor:pointer;transition:border-color .15s,color .15s;align-self:flex-start;margin-top:.5rem}.adm-btn-secondary:hover{border-color:var(--n-fg-dim);color:var(--n-fg-mid)}.adm-btn-danger{font-family:JetBrains Mono,monospace;font-size:.62rem;letter-spacing:.06em;color:var(--n-rose);background:transparent;border:1px solid hsla(0,91%,71%,.2);padding:.4rem 1rem;cursor:pointer;transition:border-color .15s}.adm-btn-danger:hover{border-color:var(--n-rose)}.adm-btn-danger:disabled{opacity:.5;cursor:not-allowed}.adm-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;padding-top:.75rem;border-top:1px solid var(--n-border);flex-wrap:wrap}.adm-editor-btns{display:flex;gap:.75rem}.adm-success{color:var(--n-green)}.adm-error,.adm-success{font-family:JetBrains Mono,monospace;font-size:.62rem}.adm-error{color:var(--n-rose)}.adm-empty{font-size:.78rem;color:var(--n-fg-dim);padding:2rem 0}.adm-empty a{color:var(--n-fg-mid)}.adm-research-item{border-bottom:1px solid var(--n-border-lt)}.adm-research-item:last-child{border-bottom:none}.adm-research-toggle{display:flex;align-items:center;gap:1.25rem;width:100%;padding:.875rem 0;background:none;border:none;cursor:pointer;text-align:left;color:inherit;transition:background .15s}.adm-research-toggle:hover{color:var(--n-fg-bright)}.adm-toggle-icon{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--n-fg-dim)}.adm-research-form{display:flex;flex-direction:column;gap:1rem;padding:.75rem 0 1.5rem 1rem;border-left:2px solid var(--n-border);margin-left:0;margin-bottom:.5rem}.adm-research-remove{padding-top:.5rem}.adm-login-wrap{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--n-bg)}.adm-login-box{width:320px;display:flex;flex-direction:column;gap:1.5rem}.adm-login-label{font-family:JetBrains Mono,monospace;font-size:.55rem;letter-spacing:.2em;color:var(--n-fg-dim)}.adm-login-form{display:flex;flex-direction:column;gap:.875rem}.adm-login-back{font-family:JetBrains Mono,monospace;font-size:.58rem;color:var(--n-fg-dim);text-decoration:none;transition:color .15s;align-self:flex-start}.adm-login-back:hover{color:var(--n-fg-mid)}@media (max-width:600px){.adm-field-row,.adm-grid{grid-template-columns:1fr}}.hr2-proj-hero{display:grid;grid-template-columns:1fr 300px;grid-gap:4rem;gap:4rem;padding:5.5rem 0 4.5rem;border-bottom:1px solid var(--n-border)}.hr2-proj-breadcrumb{font-family:JetBrains Mono,monospace;font-size:.62rem;color:var(--n-fg-dim);letter-spacing:.04em;margin-bottom:1.25rem}.hr2-proj-breadcrumb-link{color:var(--n-fg-dim);text-decoration:none;transition:color .15s}.hr2-proj-breadcrumb-link:hover{color:var(--n-accent)}.hr2-proj-title{font-size:2.25rem;font-weight:800;color:var(--n-fg-bright);letter-spacing:-.04em;line-height:.95;margin-bottom:1.25rem}.hr2-proj-chips{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1.75rem}.hr2-proj-status{font-family:JetBrains Mono,monospace;font-size:.55rem;font-weight:700;letter-spacing:.12em;padding:2px 8px;text-transform:uppercase}.hr2-proj-status-active{background:rgba(74,222,128,.08);color:var(--n-green);border:1px solid rgba(74,222,128,.18)}.hr2-proj-status-wip{background:rgba(56,189,248,.08);color:var(--n-accent);border:1px solid rgba(56,189,248,.18)}.hr2-proj-status-archived{background:rgba(78,78,78,.12);color:var(--n-fg-dim);border:1px solid var(--n-border)}.hr2-proj-lang{color:var(--n-accent);letter-spacing:.04em;padding:2px 8px;border:1px solid rgba(56,189,248,.18);background:rgba(56,189,248,.06)}.hr2-proj-lang,.hr2-proj-metric-chip{font-family:JetBrains Mono,monospace;font-size:.6rem}.hr2-proj-metric-val{color:var(--n-fg-bright);font-weight:700}.hr2-proj-metric-lbl,.hr2-proj-private{color:var(--n-fg-dim)}.hr2-proj-private{font-family:JetBrains Mono,monospace;font-size:.55rem;letter-spacing:.1em;border:1px solid var(--n-border);padding:2px 8px}.hr2-proj-status-val-active{color:var(--n-green)!important}.hr2-proj-status-val-archived{color:var(--n-fg-dim)!important}.hr2-proj-status-val-wip{color:var(--n-accent)!important}.hr2-repo-frame{border:1px solid var(--n-border);overflow:hidden}.hr2-page .gh-branch-bar{background:var(--n-bg-row);border-bottom-color:var(--n-border-lt)}.hr2-page .gh-branch-btn{background:var(--n-bg);border-color:var(--n-border);color:var(--n-fg-mid)}.hr2-page .gh-branch-btn:hover{border-color:var(--n-accent)}.hr2-page .gh-bar-btn{background:var(--n-bg);border-color:var(--n-border);color:var(--n-fg-mid)}.hr2-page .gh-bar-btn:hover{border-color:var(--n-fg-mid);color:var(--n-fg-bright)}.hr2-page .gh-commits-btn{color:var(--n-accent)}.hr2-page .gh-commit-bar{background:var(--n-bg);border-bottom-color:var(--n-border-lt)}.hr2-page .gh-commit-author{color:var(--n-fg-mid)}.hr2-page .gh-commit-msg{color:var(--n-fg-dim)}.hr2-page .gh-commit-sha{color:var(--n-accent)}.hr2-page .gh-commit-time{color:var(--n-fg-dim)}.hr2-page .gh-file-row{border-top-color:var(--n-border-lt)}.hr2-page .gh-file-row:hover{background:var(--n-bg-row)}.hr2-page .gh-icon-file{color:var(--n-border)}.hr2-page .gh-file-commit,.hr2-page .gh-file-time{color:var(--n-fg-dim)}.hr2-page .gh-readme-wrap{border-top-color:var(--n-border)}.hr2-page .gh-readme-header{background:var(--n-bg-row);border-bottom-color:var(--n-border-lt);gap:0;padding:0}.gh-doc-tabs{display:flex;overflow-x:auto}.gh-doc-tab{font-family:JetBrains Mono,monospace;font-size:.65rem;color:var(--n-fg-dim);background:none;border:none;border-right:1px solid var(--n-border-lt);padding:6px 14px;cursor:pointer;white-space:nowrap;transition:color .15s,background .15s}.gh-doc-tab:hover{color:var(--n-fg-mid);background:hsla(0,0%,100%,.03)}.gh-doc-tab-active{color:var(--n-accent)!important;background:rgba(56,189,248,.06)!important;border-bottom:2px solid var(--n-accent)}.hr2-page .gh-readme-name{color:var(--n-fg-mid)}.hr2-page .gh-readme-body{background:var(--n-bg)}.hr2-page .gh-rm-badge{background:var(--n-bg);border-color:var(--n-border);color:var(--n-accent)}.hr2-page .gh-rm-h1{color:var(--n-fg-bright);border-bottom-color:var(--n-border)}.hr2-page .gh-rm-h2{color:var(--n-fg-mid);border-bottom-color:var(--n-border-lt)}.hr2-page .gh-rm-h3{color:var(--n-accent)}.hr2-page .gh-rm-p{color:var(--n-fg-dim)}.hr2-page .gh-rm-code{background:#0c0c0c;border-color:var(--n-border);color:var(--n-fg-mid)}.hr2-page .gh-rm-ul li{color:var(--n-fg-dim)}.hr2-page .gh-rm-ul li:before{color:var(--n-border)}.hr2-page .gh-side-col{border-left-color:var(--n-border);background:var(--n-bg)}.hr2-page .gh-side-hd{color:var(--n-fg-dim);letter-spacing:.16em;font-size:.55rem}.hr2-page .gh-side-desc{color:var(--n-fg-dim)}.hr2-page .gh-topic{background:rgba(56,189,248,.06);border-color:rgba(56,189,248,.15);color:var(--n-accent)}.hr2-page .gh-topic:hover{background:rgba(56,189,248,.12)}.hr2-page .gh-stat-row{border-bottom-color:var(--n-border-lt)}.hr2-page .gh-stat-key{color:var(--n-fg-dim)}.hr2-page .gh-stat-val{color:var(--n-fg-mid)}.hr2-page .gh-stat-val-green{color:var(--n-green)}.hr2-page .gh-lang-name{color:var(--n-fg-mid)}.hr2-page .gh-lang-pct{color:var(--n-fg-dim)}.hr2-page .gh-fname-dir{color:var(--n-accent)}.hr2-page .gh-fname-rs{color:var(--n-fg-bright)}.hr2-page .gh-fname-config{color:#f9c74f}.hr2-page .gh-fname-doc{color:var(--n-fg-mid)}.hr2-page .gh-fname-script{color:var(--n-green)}.hr2-page .gh-fname-py{color:#74b2e4}.hr2-page .gh-fname-java{color:#e06c52}.hr2-page .gh-fname-default{color:var(--n-fg-mid)}.hr2-proj-bullets{list-style:none;padding:0;display:flex;flex-direction:column;gap:.75rem}.hr2-proj-bullets li{font-size:.875rem;color:var(--n-fg-mid);line-height:1.8;padding-left:1.5rem;position:relative}.hr2-proj-bullets li:before{content:"–";color:var(--n-fg-dim);position:absolute;left:0;font-family:JetBrains Mono,monospace}.hr2-proj-code-block{margin-top:1.25rem}.hr2-proj-code-label{font-size:.58rem;letter-spacing:.12em;color:var(--n-fg-dim);margin-bottom:.375rem}.hr2-proj-code,.hr2-proj-code-label{font-family:JetBrains Mono,monospace}.hr2-proj-code{background:#0c0c0c;border:1px solid var(--n-border);padding:1rem 1.25rem;color:var(--n-fg-mid);font-size:.78rem;line-height:1.65;overflow-x:auto;white-space:pre}.hr2-proj-footer-nav{padding:2.5rem 0 3.5rem}@media (max-width:900px){.hr2-proj-hero{grid-template-columns:1fr;gap:2.5rem;padding:3.5rem 0 3rem}.hr2-proj-title{font-size:1.75rem}}