:root{--font-mono:"IBM Plex Mono", "VT323", "Courier New", monospace;--fs-xs:11px;--fs-sm:12px;--fs-base:13px;--fs-md:14px;--fs-lg:15px;--lh-tight:1.1;--lh-normal:1.35;--ls-wide:1px;--ls-wider:2px;--bw:1px;--bw-focus:2px;--radius:0;--max-w:960px;--gutter:24px;--gutter-mobile:14px;--t-theme:background .25s, color .25s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--phos:#3f6;--phos-dim:#1a8833;--phos-hi:#a6ffb3;--phos-amber:#ffb73a;--accent:#ff4a4a;--cyan:#7afbff;--sel-bg:#3f6;--sel-fg:#000;--crt-line:#33ff660a;--crt-vignette:#000000bf;--crt-tint:#33ff660d;--header-bg:#000;--box-title-bg:#000;--text-glow:0 0 8px var(--phos)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f3ea;--phos:#1a1a1a;--phos-dim:#9a948a;--phos-hi:#000;--phos-amber:#a14300;--accent:#b00020;--cyan:#05a;--sel-bg:#1a1a1a;--sel-fg:#f6f3ea;--crt-line:#00000009;--crt-vignette:#7864462e;--crt-tint:#0000;--header-bg:#f6f3ea;--box-title-bg:#f6f3ea;--text-glow:none}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-mono);font-size:var(--fs-lg);line-height:var(--lh-normal);background:var(--bg);color:var(--phos);min-height:100dvh;transition:var(--t-theme);overflow-x:hidden}body:before{content:"";background:radial-gradient(ellipse at center, transparent 45%, var(--crt-vignette) 100%), repeating-linear-gradient(to bottom, var(--crt-line) 0 1px, transparent 1px 3px);pointer-events:none;z-index:100;position:fixed;inset:0}body:after{content:"";background:linear-gradient(to bottom, var(--crt-tint), transparent 30%, transparent 70%, var(--crt-tint));pointer-events:none;z-index:101;animation:3s infinite flicker;position:fixed;inset:0}[data-theme=light] body:after{animation:none}@keyframes flicker{0%,to{opacity:1}48%{opacity:.95}50%{opacity:1.02}52%{opacity:.97}}a{color:var(--cyan)}a:hover{color:var(--phos-hi);background:var(--phos-dim);text-decoration:none}::selection{background:var(--sel-bg);color:var(--sel-fg)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}#boot{background:var(--bg);z-index:1000;color:var(--phos);font-size:var(--fs-lg);padding:40px 60px;position:fixed;inset:0}#boot[hidden]{display:none}#boot pre{white-space:pre-wrap;color:var(--phos-hi);font-family:inherit}.hdr{z-index:50;background:var(--header-bg);border-bottom:var(--bw) solid var(--phos-dim);padding:12px var(--gutter) 8px;position:sticky;top:0}.hdr-inner{max-width:var(--max-w);align-items:flex-start;gap:18px;margin:0 auto;display:flex}.art{color:var(--phos-hi);text-shadow:var(--text-glow);white-space:pre;font-family:inherit;font-size:var(--fs-xs);line-height:var(--lh-tight);flex:1;margin:0;font-weight:400;overflow:hidden}.art .sub{color:var(--phos-dim)}.hdr-ctrls{font-size:var(--fs-sm);flex-direction:column;align-items:flex-end;gap:6px;display:flex}.toggle{border:var(--bw) solid var(--phos-dim);color:var(--phos);font:inherit;font-size:var(--fs-xs);cursor:pointer;letter-spacing:var(--ls-wide);background:0 0;align-items:center;gap:6px;padding:2px 8px;display:inline-flex}.toggle:hover{background:var(--phos-dim);color:var(--bg)}.toggle .k{color:var(--accent);font-weight:700}.toggle:hover .k{color:var(--bg)}.screen{max-width:var(--max-w);padding:22px var(--gutter) 90px;margin:0 auto}.screen[hidden]{display:none}.whois{border:var(--bw) solid var(--phos-dim);margin:4px 0 22px;position:relative}.whois-title{background:var(--bg);color:var(--phos-amber);font-size:var(--fs-base);letter-spacing:var(--ls-wide);padding:0 8px;font-weight:400;position:absolute;top:-.75em;left:14px}.whois-body{font-size:var(--fs-md);grid-template-columns:80px 1fr;gap:4px 14px;padding:12px 16px 10px;display:grid}.whois-body dt{color:var(--phos-dim)}.whois-body dd{color:var(--phos-hi)}.whois-body .quote{color:var(--phos);border-top:var(--bw) dashed var(--phos-dim);grid-column:1/-1;margin-top:6px;padding-top:6px;font-style:italic}.menu{border:var(--bw) solid var(--phos-dim);margin:0 0 18px;padding:10px 14px}.menu-title{color:var(--phos-amber);letter-spacing:var(--ls-wide);font-size:var(--fs-base);margin-bottom:6px;font-weight:400}.menu-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0 16px;margin:0;padding:0;list-style:none;display:grid}.menu-grid>li{list-style:none}.menu-item{cursor:pointer;user-select:none;font:inherit;font-size:var(--fs-md);width:100%;min-height:32px;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:8px;padding:4px 6px;display:flex}.menu-item .k{color:var(--accent);min-width:24px;font-weight:700}.menu-item:hover,.menu-item[aria-current=true]{background:var(--phos-dim);color:var(--bg)}.menu-item:hover .k,.menu-item[aria-current=true] .k{color:var(--bg)}.menu-item:focus{outline:none}.menu-item:focus-visible{background:var(--phos);color:var(--bg);outline:var(--bw-focus) solid var(--accent);outline-offset:1px}.menu-item:focus-visible .k{color:var(--bg)}.toggle:focus-visible,.skills-view-sel button:focus-visible{outline:var(--bw-focus) solid var(--accent);outline-offset:2px}.hint{color:var(--phos-dim);font-size:var(--fs-md);text-align:center;border:var(--bw) dashed var(--phos-dim);margin-bottom:12px;padding:24px 8px}.hint[hidden]{display:none}.hint b{color:var(--phos-hi);font-weight:400}.hint .blink{color:var(--accent);animation:1.1s steps(2,end) infinite blink}@keyframes blink{50%{opacity:0}}.panel{margin-bottom:20px}.panel .ttl{color:var(--phos-amber);letter-spacing:var(--ls-wide);font-weight:700;font-size:var(--fs-base);margin-bottom:8px}.panel .ttl:before{content:"══ "}.panel .ttl:after{content:" ══════════════════════════════════════";color:var(--phos-dim)}.box{border:var(--bw) solid var(--phos-dim);margin:0 0 10px;padding:10px 14px;position:relative}.box-title{background:var(--box-title-bg);color:var(--phos-amber);font-size:var(--fs-base);letter-spacing:var(--ls-wide);padding:0 8px;font-weight:400;position:absolute;top:-.75em;left:14px}.box-grid{font-size:var(--fs-md);grid-template-columns:90px 1fr;gap:4px 12px;margin:0;display:grid}.box-grid dt{color:var(--phos-dim)}.box-grid dd{color:var(--phos-hi)}.skills-view-sel{font-size:var(--fs-sm);gap:6px;margin-bottom:10px;padding:0;list-style:none;display:flex}.skills-view-sel button{border:var(--bw) solid var(--phos-dim);color:var(--phos);font:inherit;font-size:var(--fs-xs);cursor:pointer;letter-spacing:var(--ls-wide);background:0 0;padding:2px 8px}.skills-view-sel button[aria-selected=true]{background:var(--phos-dim);color:var(--bg)}.skills-view-sel button:hover{color:var(--phos-hi)}.skills-view-sel button[aria-selected=true]:hover{color:var(--bg)}[hidden].skills-view{display:none!important}.skills-tree{font-size:var(--fs-md);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:4px 40px;padding:0;list-style:none;display:grid}.sk-group{break-inside:avoid;padding:2px 0 8px}.sk-group h3{color:var(--phos-amber);font-size:var(--fs-base);letter-spacing:var(--ls-wide);margin-bottom:2px;font-weight:700}.sk-group h3:before{content:"📁 ";filter:grayscale(.3)}[data-theme=light] .sk-group h3:before{content:"[";color:var(--phos-amber)}[data-theme=light] .sk-group h3:after{content:"]";color:var(--phos-amber)}.sk-group ul{padding-left:16px;list-style:none;position:relative}.sk-group ul:before{content:"";border-left:var(--bw) dashed var(--phos-dim);position:absolute;top:2px;bottom:6px;left:4px}.sk-group li{color:var(--phos-hi);padding:1px 0 1px 14px;position:relative}.sk-group li:before{content:"──";color:var(--phos-dim);letter-spacing:-1px;position:absolute;top:0;left:-1px}.sk-group li:last-child:before{content:"└─"}.skills-para{padding:0;list-style:none}.skills-para .sk-group{padding:4px 0}.skills-para .sk-group h3{margin-bottom:2px}.skills-para .items{color:var(--phos-hi);padding-left:2px}.skills-para .items .sep{color:var(--phos-dim)}.sysline{background:var(--bg);border-top:var(--bw) solid var(--phos-dim);font-size:var(--fs-sm);color:var(--phos-dim);z-index:50;gap:18px;padding:6px 16px;display:flex;position:fixed;bottom:0;left:0;right:0}.sysline b{color:var(--phos-hi);font-weight:400}.sysline .right{align-items:center;gap:14px;margin-left:auto;display:flex}.help-btn{border:var(--bw) solid var(--phos-dim);color:var(--accent);font:inherit;font-size:var(--fs-sm);cursor:pointer;letter-spacing:var(--ls-wide);background:0 0;padding:1px 6px;text-decoration:none}.help-btn:hover{background:var(--phos-dim);color:var(--bg)}.help-btn:focus-visible{outline:var(--bw-focus) solid var(--accent);outline-offset:2px}.help-ov{border:var(--bw) solid var(--phos);background:var(--bg);color:var(--phos);width:calc(100% - 40px);max-width:480px;box-shadow:0 0 24px color-mix(in oklab, var(--phos) 30%, transparent);margin:auto;padding:18px 22px 16px;font-family:inherit;position:fixed;inset:0}.help-ov::backdrop{background:color-mix(in oklab, var(--bg) 92%, transparent)}.help-ov h2{color:var(--phos-amber);font-size:var(--fs-md);letter-spacing:var(--ls-wider);margin-bottom:12px;font-weight:700}.help-ov dl{font-size:var(--fs-base);grid-template-columns:110px 1fr;gap:6px 14px;margin:0;display:grid}.help-ov dt{color:var(--accent);font-weight:700}.help-ov dd{color:var(--phos-hi);margin:0}.help-ov .close{color:var(--phos-dim);font:inherit;cursor:pointer;background:0 0;border:0;font-size:18px;position:absolute;top:6px;right:10px}.help-ov .close:hover{color:var(--accent)}.help-ov .foot{color:var(--phos-dim);font-size:var(--fs-xs);letter-spacing:var(--ls-wide);margin-top:12px}@media (max-width:700px){body{font-size:var(--fs-base)}.hdr{padding:10px var(--gutter-mobile) 6px}.art{font-size:8px;line-height:1.05}.hdr-inner{gap:10px}.hdr-ctrls .toggle{font-size:var(--fs-xs);padding:4px 8px}.screen{padding:16px var(--gutter-mobile) 110px}.whois-body{font-size:var(--fs-sm);grid-template-columns:70px 1fr}.menu-grid{grid-template-columns:1fr 1fr;gap:0 8px}.menu-item{font-size:var(--fs-md);min-height:40px;padding:6px}.box-grid{font-size:var(--fs-base);grid-template-columns:70px 1fr}.skills-tree{gap:4px 0}.sysline{gap:10px;padding:4px 10px;font-size:10.5px}.sysline .right{gap:8px}.sysline .hide-sm,.hint,.help-btn{display:none}}@media (max-width:460px){.hdr-inner{flex-direction:column;align-items:stretch}.hdr-ctrls{flex-direction:row;justify-content:flex-end}.art{font-size:7px}}@media (prefers-reduced-motion:reduce){body:after,.hint .blink{animation:none}*{transition:none!important}}
