.bezel{display:flex;flex-direction:column;block-size:100vh;block-size:100dvh;padding:1.1rem 1.1rem 0;background:var(--bezel)}.bezel-screen{flex:1 1 auto;min-block-size:0;position:relative;overflow:hidden;border-radius:14px;background:var(--tube-bg);--screen-shadow: inset 0 0 0 2px var(--shadow), 0 0 18px 0 var(--rule-faint);box-shadow:var(--screen-shadow)}.bezel-plate{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;min-block-size:2.4rem;padding-inline:.4rem}.bezel-brand{color:var(--ink-dim);font-size:.7rem;font-weight:700;letter-spacing:.22em}.bezel-power{display:flex;align-items:center;gap:.5rem}.bezel-power-label{color:var(--ink-dim);font-size:.6rem;letter-spacing:.22em}.bezel-led{inline-size:.55rem;block-size:.55rem;border-radius:50%;--led-gradient: radial-gradient(circle at 35% 35%, var(--led), var(--shadow) 80%);background:var(--led-gradient);--led-glow: 0 0 6px 1px var(--led);box-shadow:var(--led-glow)}@media(max-width:60rem){.bezel{padding:0;background:var(--tube-bg)}.bezel-screen{border-radius:0;box-shadow:none}.bezel-plate{display:none}}@media(prefers-reduced-motion:reduce){.bezel-led,.bezel-screen{box-shadow:none}}.tube{position:relative;display:grid;grid-template:"menu" auto "desk" minmax(0,1fr) "keys" auto / minmax(0,1fr);block-size:100%;overflow:hidden;background:var(--tube-bg)}.tube-scanlines,.tube-vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none}.tube-scanlines{--scanline-gradient: repeating-linear-gradient( to bottom, var(--shadow) 0, var(--shadow) 1px, transparent 1px, transparent 4px );background:var(--scanline-gradient);opacity:.09}.tube-vignette{--vignette-gradient: radial-gradient( ellipse at center, transparent 68%, var(--shadow) 100% );background:var(--vignette-gradient);opacity:.42}@media(max-width:60rem){.tube{overflow:auto;padding-block-end:calc(3.25rem + env(safe-area-inset-bottom))}}.menu-bar{grid-area:menu;display:flex;align-items:stretch;gap:0;background:var(--ink);border-block-end:2px solid var(--shadow)}.menu-bar-slot{position:relative;display:flex;align-items:stretch}.menu-bar-item{display:flex;align-items:center;padding:.28rem .9rem;border:none;background:transparent;color:var(--on-ink);font:inherit;cursor:pointer;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:.85em}.menu-bar-item-initial{text-decoration:underline;text-underline-offset:.2em}.menu-bar-item-active,.menu-bar-item-open{background:var(--ink-bright);font-weight:700}.menu-bar-item:hover{background:var(--ink-bright)}.menu-bar-dropdown{position:absolute;inset-block-start:100%;inset-inline-start:0;z-index:40;display:flex;flex-direction:column;min-inline-size:13rem;background:var(--tube-bg);border:3px double var(--rule);--dropdown-shadow: .5rem .5rem 0 var(--shadow);box-shadow:var(--dropdown-shadow);padding-block:.3rem}.menu-bar-entry{padding:.22rem .9rem;border:none;background:transparent;color:var(--ink);font:inherit;font-size:.85em;letter-spacing:.08em;text-align:start;cursor:pointer}.menu-bar-entry:hover,.menu-bar-entry:focus-visible{background:var(--ink);color:var(--on-ink);outline:none}.menu-bar-status{margin-inline-start:auto;display:flex;align-items:center;gap:.9rem;padding-inline:.9rem;color:var(--on-ink);font-size:.8em;letter-spacing:.08em}@media(max-width:60rem){.menu-bar{display:none}}.desktop{grid-area:desk;position:relative;overflow:hidden;margin:.2rem .9rem .4rem}.desktop-icons{position:absolute;inset-block-start:1rem;inset-inline-end:.4rem;display:flex;flex-direction:column;gap:1.1rem;z-index:0}.desktop-icon{display:flex;flex-direction:column;align-items:center;gap:.35rem;inline-size:4.6rem;padding:.2rem 0;border:none;background:transparent;font:inherit;text-decoration:none;cursor:pointer}.desktop-icon-glyph{display:flex;align-items:center;justify-content:center;inline-size:2.6rem;block-size:2.2rem;border:2px solid var(--rule);color:var(--ink);font-size:1.05rem;font-weight:700;-webkit-user-select:none;user-select:none}.desktop-icon-label{color:var(--ink-dim);font-size:.62rem;font-weight:700;letter-spacing:.14em}.desktop-icon:hover .desktop-icon-glyph,.desktop-icon:focus-visible .desktop-icon-glyph{border-color:var(--ink-dim);color:var(--ink-bright)}.desktop-icon:hover .desktop-icon-label,.desktop-icon:focus-visible .desktop-icon-label{color:var(--ink)}@media(max-width:60rem){.desktop{overflow:visible;margin:0}.desktop-icons{position:static;flex-flow:row wrap;justify-content:center;gap:.7rem;padding:.8rem .6rem 0}.desktop-icon{inline-size:4rem}}.os-window{position:absolute;display:flex;flex-direction:column;border-width:3px;border-style:solid;border-color:var(--rule);background:var(--tube-bg);--os-window-shadow: .5rem .5rem 0 var(--shadow);box-shadow:var(--os-window-shadow);min-inline-size:16rem}.os-window[hidden]{display:none}.os-window:focus{outline:none}.os-window-focused{border-style:double;border-color:var(--ink-dim)}.os-window-dragging{-webkit-user-select:none;user-select:none}.os-window-bar{position:absolute;inset-inline:0;inset-block-start:-.9em;block-size:1.9em;z-index:2;cursor:move;touch-action:none}.os-window-title{position:absolute;z-index:2;inset-block-start:-.8em;inset-inline-start:.75rem;margin:0;padding-inline:.35em;background:var(--tube-bg);color:var(--ink);font-size:.85em;font-weight:700;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;pointer-events:none}.os-window-focused .os-window-title{color:var(--ink-bright);--os-title-glow: 0 0 5px var(--led);text-shadow:var(--os-title-glow)}.os-window-controls{position:absolute;z-index:3;inset-block-start:-.8em;inset-inline-end:.75rem;padding-inline:.35em;background:var(--tube-bg);font-size:.8em;-webkit-user-select:none;user-select:none}.os-window-glyph{padding:0;border:none;background:transparent;color:var(--ink-dim);font:inherit;cursor:pointer}.os-window-glyph:hover,.os-window-glyph:focus-visible{color:var(--ink-bright)}.os-window-body{flex:1 1 auto;min-block-size:0;display:flex;flex-direction:column;overflow:auto;scrollbar-width:none;padding:1.1rem .9rem .75rem}.os-window-body::-webkit-scrollbar{display:none}.os-window-grip{position:absolute;inset-block-end:0;inset-inline-end:0;inline-size:1.2rem;block-size:1.2rem;display:flex;align-items:flex-end;justify-content:flex-end;color:var(--ink-dim);font-size:.7rem;line-height:1;cursor:nwse-resize;touch-action:none;-webkit-user-select:none;user-select:none}.os-win-repos{inset-inline-start:1.1rem;inset-block-start:1.5rem;inline-size:min(48rem,55%);block-size:calc(100% - 3.2rem)}.os-win-detail{inset-inline-end:1.1rem;inset-block-start:1.5rem;inline-size:calc(45% - 2.2rem);block-size:calc(100% - 6.5rem)}.os-win-cv{inset-inline-start:12%;inset-block-start:1.5rem;inline-size:min(62rem,76%);block-size:calc(100% - 4rem)}.os-win-lab{inset-inline-start:7%;inset-block-start:2rem;inline-size:min(42rem,46%);block-size:calc(100% - 5rem)}.os-win-article{inset-inline-end:3%;inset-block-start:1.6rem;inline-size:min(50rem,50%);block-size:calc(100% - 4rem)}.os-win-commits{inset-inline-end:8rem;inset-block-end:1.8rem;inline-size:min(50rem,62%);block-size:min(20rem,58%)}.os-win-readme{inset-inline-start:26%;inset-block-start:2.2rem;inline-size:min(52rem,60%);block-size:calc(100% - 5.5rem)}.os-win-diff{inset-inline-start:22%;inset-block-start:3rem;inline-size:min(56rem,66%);block-size:calc(100% - 7rem)}.os-win-viewer{inset-inline-start:16%;inset-block-start:2.5rem;inline-size:min(58rem,68%);block-size:calc(100% - 6rem)}.os-win-console{inset-inline-start:9%;inset-block-end:1.4rem;inline-size:min(46rem,72%);block-size:min(17rem,52%)}.os-win-help{inset-inline-start:30%;inset-block-start:14%;inline-size:min(30rem,85%);max-block-size:70%}.os-win-admin{inset-inline-start:6%;inset-block-start:8%;inline-size:min(58rem,88%);max-block-size:82%}@media(prefers-reduced-motion:reduce){.os-window-focused .os-window-title{text-shadow:none}}@media(max-width:60rem){.os-window{position:static;inline-size:auto!important;block-size:auto!important;margin:1.2rem .6rem .9rem}.os-window-bar,.os-window-grip{display:none}}.console{display:flex;flex-direction:column;block-size:100%;min-block-size:0;cursor:text}.console-scrollback{flex:1 1 auto;min-block-size:0;overflow:auto;scrollbar-width:none}.console-scrollback::-webkit-scrollbar{display:none}.console-line{color:var(--ink);line-height:1.7;white-space:pre-wrap;word-break:break-word}.console-line-cmd{color:var(--ink-bright)}.console-line-mark{color:var(--ink-bright);letter-spacing:.04em}.console-prompt{display:flex;align-items:baseline;gap:.1rem;color:var(--ink-bright);padding-block-start:.3rem}.console-input{flex:1 1 auto;border:none;background:transparent;color:var(--ink-bright);font:inherit;letter-spacing:inherit;text-transform:uppercase;caret-color:var(--ink-bright)}.console-input:focus{outline:none}.admin{display:flex;flex-direction:column;gap:.7rem;block-size:100%;min-block-size:0}.admin-login{display:flex;flex-direction:column;gap:.6rem;padding:.6rem .2rem}.admin-login-label{color:var(--ink-bright);letter-spacing:.06em}.admin-login-input{max-inline-size:22rem;padding:.25rem .5rem;border:1px solid var(--rule);background:transparent;color:var(--ink-bright);font:inherit;letter-spacing:.3em;caret-color:var(--ink-bright)}.admin-login-input:focus{outline:none;border-color:var(--rule);background:var(--shadow)}.admin-defaults{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.admin-defaults-label{color:var(--ink-dim);font-size:.8em;letter-spacing:.12em;margin-inline-end:.4rem}.admin-default{padding:.1rem .45rem;border:1px solid var(--rule);background:transparent;color:var(--ink-dim);font:inherit;font-size:.8em;cursor:pointer}.admin-default-on{background:var(--ink);border-color:var(--ink);color:var(--on-ink);font-weight:700}.admin-grid-scroll{flex:1 1 auto;min-block-size:0;overflow:auto;scrollbar-width:none;border-block:1px solid var(--rule-faint)}.admin-grid-scroll::-webkit-scrollbar{display:none}.admin-grid{border-collapse:collapse;inline-size:100%}.admin-grid th{position:sticky;inset-block-start:0;background:var(--tube-bg);color:var(--ink-dim);font-size:.72em;font-weight:400;letter-spacing:.1em;text-align:center;padding:.3rem .2rem}.admin-grid td{text-align:center;padding:.05rem .2rem}.admin-grid th.admin-col-name,.admin-grid td.admin-col-name{text-align:start;color:var(--ink);white-space:nowrap;padding-inline-end:.8rem}.admin-grid .admin-row-hidden td.admin-col-name{color:var(--ink-dim);opacity:.55}.admin-cell{min-inline-size:1.6rem;padding:.05rem .3rem;border:none;background:transparent;color:var(--ink);font:inherit;cursor:pointer}button.admin-cell:hover,button.admin-cell:focus-visible{background:var(--ink);color:var(--on-ink);outline:none}.admin-cell-locked{color:var(--ink-dim);cursor:default}.admin-foot{display:flex;align-items:baseline;gap:1rem;flex-wrap:wrap}.admin-legend{color:var(--ink-dim);font-size:.75em;letter-spacing:.08em}.admin-message{color:var(--ink-bright);letter-spacing:.06em;margin:0}.admin-logout{margin-inline-start:auto;border:none;background:transparent;color:var(--ink-bright);font:inherit;letter-spacing:.06em;cursor:pointer}.admin-logout:hover,.admin-logout:focus-visible{background:var(--ink);color:var(--on-ink);outline:none}.stats{display:flex;flex-direction:column;gap:1rem}.stats-section{display:flex;flex-direction:column;gap:.15rem}.stats-title{margin:0 0 .35rem;font-size:.8rem;letter-spacing:.08em;color:var(--ink-dim);border-block-end:1px solid var(--rule-faint);padding-block-end:.25rem}.stats-row{display:flex;align-items:baseline;gap:.6rem;font-size:.85rem}.stats-day{color:var(--ink-dim);flex-shrink:0}.stats-bar{color:var(--ink);overflow:hidden;white-space:nowrap}.stats-name{flex:1;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-count{margin-inline-start:auto;flex-shrink:0;color:var(--ink-bright)}.stats-note{margin:0;font-size:.75rem;color:var(--ink-dim)}.column-headers{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(0,2fr) minmax(4rem,auto) minmax(5rem,auto);gap:.6rem;padding-block:.2rem;border-block-end:1px solid var(--rule)}.column-header{padding:0;border:none;background:transparent;color:var(--ink-dim);text-align:start;text-transform:uppercase;cursor:pointer}.column-header[aria-pressed=true]{color:var(--ink-bright)}.column-headers-announcement{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.filter-line{display:flex;align-items:center;gap:.3rem;padding-block:.3rem;border-block-start:1px dashed var(--rule-faint)}.filter-line-glyph{color:var(--ink-dim)}.filter-line-input{flex:1 1 auto;border:none;color:var(--ink);background:transparent}.filter-line-input:focus{outline:none}.block-scrollbar{position:absolute;inset-block:2.2rem 4.6rem;inset-inline-end:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:.1rem;color:var(--ink-dim);pointer-events:none;-webkit-user-select:none;user-select:none}.block-scrollbar-track{flex:1 1 auto;overflow:hidden;writing-mode:vertical-lr;line-height:1;letter-spacing:-.1em}.totals-line{padding-block:.3rem;color:var(--ink-dim);border-block-start:1px solid var(--rule)}.repo-row{display:grid;grid-template-columns:minmax(8rem,1fr) minmax(0,2fr) minmax(4rem,auto) minmax(5rem,auto);gap:.6rem;align-items:baseline;padding-block:.22rem;padding-inline:.3rem;color:var(--ink)}.repo-row-name{color:var(--ink-bright)}.repo-new-marker{margin-inline-start:.5em;padding-inline:.35em;background:var(--ink-bright);color:var(--on-ink);border:none;font-size:.75em;font-weight:700;letter-spacing:.08em}.repo-row-description{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--ink)}.repo-row-description-empty{color:var(--ink-dim);font-style:italic}.repo-row-language{color:var(--ink-dim)}.repo-row-recency{color:var(--ink-dim);text-align:end}.repo-row[aria-selected=true],.repo-row:focus{background:var(--ink);outline:none}.repo-row[aria-selected=true]>span,.repo-row:focus>span{color:var(--on-ink)}.repo-row[aria-selected=true] .repo-new-marker,.repo-row:focus .repo-new-marker{background:var(--on-ink);color:var(--ink-bright)}.repo-list{min-block-size:0}.tools-browser-list{position:relative;display:flex;flex-direction:column;block-size:100%;min-block-size:0}.tools-browser-scroll{flex:1 1 auto;min-block-size:0;overflow:auto;scrollbar-width:none;padding-inline-end:1rem}.tools-browser-scroll::-webkit-scrollbar{display:none}.tools-browser-detail{block-size:100%}.tools-browser-detail:focus{outline:none}.detail-pane{display:flex;flex-direction:column;gap:.8rem;padding:.4rem .3rem}.detail-head{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap}.detail-pane-name{margin:0;color:var(--ink-bright);font-size:1.5em;font-weight:700;letter-spacing:.04em;--detail-name-glow: 0 0 8px var(--led);text-shadow:var(--detail-name-glow)}.detail-chips{display:inline-flex;gap:.4rem;flex-wrap:wrap}.detail-chip{padding:.05rem .45rem;border:1px solid var(--rule);color:var(--ink-dim);font-size:.75em;text-transform:uppercase;letter-spacing:.08em}.detail-chip-strong{background:var(--ink);border-color:var(--ink);color:var(--on-ink);font-weight:700}.detail-primary-lang{margin-inline-start:auto;color:var(--ink-dim);font-size:.85em;text-transform:uppercase;letter-spacing:.14em}.detail-description{margin:0;color:var(--ink);line-height:1.7;letter-spacing:.04em;text-transform:uppercase;max-inline-size:44rem}.detail-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.8rem 1.6rem;align-items:start}.detail-rows{display:flex;flex-direction:column;gap:.3rem}.detail-row{display:flex;align-items:baseline;gap:.4rem}.detail-row-label{white-space:nowrap;color:var(--ink-dim);text-transform:uppercase;letter-spacing:.06em}.detail-row-leader{flex:1 1 auto;align-self:flex-end;block-size:0;margin-block-end:.35em;border-block-end:1px dotted var(--rule-faint)}.detail-row-value{white-space:nowrap;color:var(--ink-bright)}.detail-section-title{margin:0 0 .3rem;color:var(--ink-dim);font-size:.8em;font-weight:400;letter-spacing:.14em}.detail-side{display:flex;flex-direction:column;gap:.8rem}.detail-lang-row{display:grid;grid-template-columns:minmax(5.5rem,auto) 1fr auto;gap:.7rem;align-items:baseline}.detail-lang-name{color:var(--ink);text-transform:uppercase;font-size:.85em}.detail-lang-bar{letter-spacing:.05em;overflow:hidden;white-space:nowrap}.detail-lang-bar-filled{color:var(--ink-bright)}.detail-lang-bar-rest{color:var(--ink-dim);opacity:.35}.detail-lang-pct{color:var(--ink-dim);font-size:.85em}.detail-activity-bars{display:block;color:var(--ink-bright);font-size:1.1em;letter-spacing:.08em;line-height:1;overflow:hidden;white-space:nowrap}.detail-commits{display:flex;flex-direction:column;gap:.2rem;border-block-start:1px solid var(--rule-faint);padding-block-start:.6rem}.detail-commit{padding:0;border:none;background:transparent;color:var(--ink);font:inherit;text-align:start;text-decoration:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:pointer}.detail-commit:hover,.detail-commit:focus-visible{background:var(--ink);color:var(--on-ink)}.detail-commit-sha{color:var(--ink-dim);font-size:.85em}.detail-topics{display:flex;gap:.4rem;flex-wrap:wrap}.detail-withheld{margin:0;color:var(--ink-dim);letter-spacing:.08em}.detail-actions{margin-block-start:auto;padding-block-start:.8rem}.detail-open-link{color:var(--ink-bright);text-decoration:none;letter-spacing:.06em}.detail-open-link:hover,.detail-open-link:focus-visible{background:var(--ink);color:var(--on-ink)}@media(max-width:72rem){.detail-columns{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.detail-pane-name{text-shadow:none}}.commits-log{display:flex;flex-direction:column;gap:.45rem;font-size:.85em}.commits-line{display:flex;align-items:baseline;gap:.55rem;padding:0;border:none;background:transparent;color:var(--ink);font:inherit;text-align:start;text-decoration:none;cursor:pointer}.commits-sha{color:var(--ink-dim);flex:0 0 auto}.commits-message{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.commits-line:hover .commits-message,.commits-line:focus-visible .commits-message{color:var(--ink-bright)}.commits-repo{flex:0 0 auto;padding:.02rem .4rem;background:var(--ink);color:var(--on-ink);font-size:.78em;font-weight:700;letter-spacing:.08em}.commits-when{margin-inline-start:auto;flex:0 0 auto;color:var(--ink-dim);font-size:.85em}.commits-empty{margin:0;color:var(--ink-dim)}.diff{display:flex;flex-direction:column;gap:.7rem;font-size:.85em}.diff-head{display:flex;align-items:baseline;gap:.6rem;margin:0}.diff-repo{padding:.02rem .4rem;background:var(--ink);color:var(--on-ink);font-size:.8em;font-weight:700;letter-spacing:.08em}.diff-sha{color:var(--ink-dim)}.diff-stats{color:var(--ink-bright);font-weight:700}.diff-when{margin-inline-start:auto;color:var(--ink-dim);font-size:.85em}.diff-message{margin:0;padding-block-end:.5rem;border-block-end:1px solid var(--rule-faint);color:var(--ink);font:inherit;white-space:pre-wrap}.diff-explain{padding:.5rem .6rem;border:1px dashed var(--rule)}.diff-explain-head{margin:0 0 .3rem;color:var(--ink-dim);font-size:.8em;letter-spacing:.14em}.diff-explain-model{margin-inline-start:.4rem;padding:.02rem .35rem;background:var(--ink);color:var(--on-ink);font-size:.9em;letter-spacing:.06em}.diff-explain-text{margin:0;color:var(--ink);white-space:pre-wrap}.diff-explain-action{padding:0;border:none;background:transparent;color:var(--ink);font:inherit;font-weight:700;letter-spacing:.08em;cursor:pointer}.diff-explain-action:focus-visible{color:var(--ink-bright)}.diff-explain-action:disabled{color:var(--ink-dim);cursor:wait}.diff-explain-action:hover:enabled{color:var(--ink-bright)}.diff-explain-error{margin:.3rem 0 0;color:var(--ink-dim)}.diff-file-head{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;margin:0 0 .3rem;font-size:1em}.diff-file-path{color:var(--ink-bright);font-weight:700;letter-spacing:.04em;overflow-wrap:anywhere}.diff-file-stats{flex:0 0 auto;color:var(--ink-dim);font-size:.85em}.diff-patch{margin:0;padding:.45rem .6rem;border:1px solid var(--rule-faint);overflow-x:auto;font:inherit;line-height:1.45}.diff-line{color:var(--ink-dim);white-space:pre}.diff-line-add{color:var(--ink-bright)}.diff-line-del{color:var(--ink)}.diff-line-hunk{background:var(--ink);color:var(--on-ink)}.diff-nopatch{margin:0;color:var(--ink-dim)}.diff-github{align-self:flex-start;color:var(--ink);font-weight:700;letter-spacing:.08em;text-decoration:none}.diff-github:hover,.diff-github:focus-visible{color:var(--ink-bright)}.readme{font-size:.9em;line-height:1.55}.readme h1,.readme h2,.readme h3,.readme h4{margin:1.1em 0 .4em;color:var(--ink-bright);letter-spacing:.04em}.readme h1{padding-block-end:.25em;border-block-end:1px solid var(--rule-faint)}.readme h1:first-child{margin-block-start:0}.readme p,.readme li{color:var(--ink)}.readme a{color:var(--ink-bright);text-decoration:underline}.readme code{padding:.05em .3em;border:1px solid var(--rule-faint);font-size:.95em}.readme pre{padding:.6rem .7rem;border:1px solid var(--rule-faint);overflow-x:auto}.readme pre code{padding:0;border:none}.readme table{border-collapse:collapse}.readme th,.readme td{padding:.2em .6em;border:1px solid var(--rule-faint)}.readme blockquote{margin-inline:0;padding-inline-start:.8em;border-inline-start:3px solid var(--rule);color:var(--ink-dim)}.readme .img-veil{position:relative;display:block;max-inline-size:100%;margin-block:.6em;border:1px solid var(--rule-faint);cursor:zoom-in}.readme .img-veil:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--led);opacity:.03;pointer-events:none}.readme .img-veil img,.readme .img-veil .modem-canvas{display:block;max-inline-size:100%;block-size:auto}.readme .modem-hidden{display:none}.readme-empty{margin:0;color:var(--ink-dim)}.lab-log{display:flex;flex-direction:column;gap:1rem;font-size:.9em}.lab-entry{display:flex;flex-direction:column;gap:.25rem;padding:0;border:none;background:transparent;font:inherit;text-align:start;cursor:pointer}.lab-entry-head{display:flex;align-items:baseline;gap:.55rem;min-inline-size:0}.lab-entry-date{flex:0 0 auto;color:var(--ink-dim)}.lab-entry-title{min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-bright);font-weight:700}.lab-entry:hover .lab-entry-title,.lab-entry:focus-visible .lab-entry-title{background:var(--ink);color:var(--on-ink)}.lab-entry-when{margin-inline-start:auto;flex:0 0 auto;color:var(--ink-dim);font-size:.85em}.lab-entry-summary{color:var(--ink);padding-inline-start:1.05em}.lab-entry-tags{display:flex;flex-wrap:wrap;gap:.4rem;padding-inline-start:1.05em}.lab-entry-tag{padding:.02rem .4rem;border:1px solid var(--rule);color:var(--ink-dim);font-size:.75em;letter-spacing:.08em;text-transform:uppercase}.lab-empty{margin:0;color:var(--ink-dim)}.article{font-size:.95em;line-height:1.6}.article-head{margin-block-end:1rem;padding-block-end:.6rem;border-block-end:1px solid var(--rule-faint)}.article-title{margin:0 0 .3rem;color:var(--ink-bright);font-size:1.4em;letter-spacing:.02em}.article-meta{margin:0;color:var(--ink-dim);font-size:.8em;letter-spacing:.08em}.article-body h2,.article-body h3{margin:1.2em 0 .4em;color:var(--ink-bright)}.article-body p,.article-body li{color:var(--ink)}.article-body a{color:var(--ink-bright);text-decoration:underline}.article-body code{padding:.05em .3em;border:1px solid var(--rule-faint);font-size:.95em}.article-body pre{padding:.6rem .7rem;border:1px solid var(--rule-faint);overflow-x:auto}.article-body pre code{padding:0;border:none}.article-body .img-veil{position:relative;display:block;inline-size:94%;margin-block:.7em;margin-inline:auto;border:1px solid var(--rule-faint);cursor:zoom-in}.article-body .img-veil:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--led);opacity:.03;pointer-events:none}.article-body .img-veil img,.article-body .img-veil .modem-canvas{display:block;inline-size:100%;block-size:auto}.article-body .modem-hidden{display:none}.article-body blockquote{margin-inline:0;padding-inline-start:.8em;border-inline-start:3px solid var(--rule);color:var(--ink-dim)}.viewer{display:flex;flex-direction:column;gap:.7rem;block-size:100%;min-block-size:0}.viewer-stage{flex:1 1 auto;min-block-size:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;margin:0}.viewer-image{max-inline-size:100%;max-block-size:100%;min-block-size:0;object-fit:contain;border:1px solid var(--rule-faint)}.viewer-caption{color:var(--ink-dim);font-size:.8em;letter-spacing:.06em;text-align:center}.viewer-controls{flex:0 0 auto;display:flex;align-items:baseline;justify-content:center;gap:1.2rem}.viewer-nav{padding:0;border:none;background:transparent;color:var(--ink);font:inherit;font-weight:700;letter-spacing:.08em;cursor:pointer}.viewer-nav:focus-visible{color:var(--ink-bright)}.viewer-nav:disabled{color:var(--ink-dim);cursor:default}.viewer-nav:hover:enabled{color:var(--ink-bright)}.viewer-counter{color:var(--ink-dim);letter-spacing:.1em}.viewer-strip{flex:0 0 auto;display:flex;justify-content:center;gap:.5rem;overflow-x:auto;padding-block:.2rem;scrollbar-width:none}.viewer-strip::-webkit-scrollbar{display:none}.viewer-thumb{flex:0 0 auto;padding:0;border:2px solid var(--rule-faint);background:transparent;cursor:pointer;line-height:0}.viewer-thumb img{inline-size:4.4rem;block-size:2.8rem;object-fit:cover}.viewer-thumb-active{border-color:var(--ink-bright)}.viewer-thumb:hover,.viewer-thumb:focus-visible{border-color:var(--ink-dim)}.cv{padding:.6rem 1.2rem 1.4rem;line-height:1.7}.cv-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;border-block-end:1px solid var(--rule);padding-block-end:.9rem;margin-block-end:1.1rem}.cv-name{margin:0;color:var(--ink-bright);font-size:1.9em;font-weight:700;letter-spacing:.02em}.cv-headline{margin:.2rem 0 0;color:var(--ink)}.cv-contact{margin:.4rem 0 0;color:var(--ink-dim);font-size:.85em}.cv-stats{display:flex;gap:1.4rem;flex-shrink:0}.cv-stat{display:flex;flex-direction:column;align-items:end}.cv-stat-value{color:var(--ink-bright);font-size:1.5em;font-weight:700}.cv-stat-label{color:var(--ink-dim);font-size:.7em;letter-spacing:.18em;text-transform:uppercase}.cv-columns{display:grid;grid-template-columns:minmax(0,7fr) minmax(14rem,3fr);gap:2.2rem}.cv-main{max-inline-size:70ch}.cv-summary{margin:0 0 1.1rem;color:var(--ink)}.cv-section-title{margin:1.1rem 0 .5rem;color:var(--ink-dim);font-size:.75em;font-weight:400;letter-spacing:.2em;text-transform:uppercase;border-block-end:1px solid var(--rule-faint);padding-block-end:.25rem}.cv-job{margin-block-end:.9rem}.cv-job-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.cv-job-title{color:var(--ink-bright)}.cv-job-dates{color:var(--ink-dim);white-space:nowrap;font-size:.85em}.cv-job-meta{margin:.05rem 0 .25rem;color:var(--ink-dim);font-size:.85em}.cv-job-highlights{margin:.25rem 0 0;padding-inline-start:1.1rem;color:var(--ink)}.cv-job-highlights li{margin-block-end:.2rem}.cv-sample-note{margin:0 0 .4rem;color:var(--ink-dim);font-size:.7em;letter-spacing:.14em;text-transform:uppercase}.cv-cert{display:flex;align-items:baseline;gap:.4rem;margin-block-end:.25rem}.cv-cert-name{color:var(--ink)}.cv-cert-leader{flex:1 1 auto;align-self:flex-end;block-size:0;margin-block-end:.35em;border-block-end:1px dotted var(--rule-faint)}.cv-cert-year{color:var(--ink-dim);white-space:nowrap}.cv-skill-group{margin-block-end:.6rem}.cv-skill-group-name{margin:0;color:var(--ink-dim);font-size:.7em;font-weight:400;letter-spacing:.14em;text-transform:uppercase}.cv-skill-items{margin:.1rem 0 0;color:var(--ink);font-size:.9em}.cv-actions{display:flex;flex-wrap:wrap;gap:1.2rem;margin-block-end:.9rem;padding-block-end:.5rem;border-block-end:1px solid var(--rule-faint)}.cv-action{padding:0;border:none;background:transparent;color:var(--ink);font:inherit;font-size:.8em;font-weight:700;letter-spacing:.1em;text-decoration:none;cursor:pointer}.cv-action:hover,.cv-action:focus-visible{color:var(--ink-bright)}.cv-plain .cv-columns{display:block}.cv-plain .cv-cert-leader{display:none}@media(max-width:60rem){.cv-columns{display:block}.cv-head{flex-direction:column;gap:.6rem}.cv-stats{align-self:stretch;justify-content:flex-start}}@media print{.cv{padding:0}.cv-columns{gap:1.2rem}}.help-rows{display:flex;flex-direction:column;gap:.35rem}.help-row{display:flex;align-items:baseline;gap:.8rem}.help-key{min-inline-size:3.2rem;padding:.05rem .4rem;background:var(--ink);color:var(--on-ink);font-weight:700;font-size:.85em;text-align:center}.help-label{color:var(--ink);letter-spacing:.05em}.help-note{margin:1rem 0 0;color:var(--ink-dim);font-size:.8em;letter-spacing:.12em}.key-strip{grid-area:keys}.key-strip-desktop{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem;padding:.35rem .9rem;border-block-start:2px solid var(--rule-faint)}.key-strip-item{display:inline-flex;align-items:center;gap:.35rem;padding:0;border:none;background:transparent;text-decoration:none;font:inherit}.key-strip-action{cursor:pointer}.key-strip-key{color:var(--ink-dim);font-size:.8em}.key-strip-label{padding:.08rem .55rem;background:var(--ink);color:var(--on-ink);font-weight:700;font-size:.8em;letter-spacing:.06em}.key-strip-running .key-strip-label{background:var(--ink-bright)}.key-strip-running .key-strip-key{color:var(--ink)}.key-strip-action:hover .key-strip-label,.key-strip-action:focus-visible .key-strip-label{background:var(--ink-bright)}.key-strip-tube{margin-inline-start:auto;color:var(--ink-dim);font-size:.7em;letter-spacing:.18em;-webkit-user-select:none;user-select:none}.key-strip-mobile{display:none}@media(max-width:60rem){.key-strip-desktop{display:none}.key-strip-mobile{display:flex;position:fixed;inset-inline:0;inset-block-end:0;background:var(--tube-bg);border-block-start:3px solid var(--rule);padding-block-end:env(safe-area-inset-bottom)}.key-strip-nav-item{flex:1 1 0;display:flex;align-items:center;justify-content:center;min-block-size:44px;color:var(--ink);text-decoration:none;text-transform:uppercase}}[data-tube=amber]{--ink-bright: oklch(90% .145 80deg);--ink: oklch(77.5% .15 75deg);--ink-dim: oklch(63% .125 72deg);--on-ink: oklch(15% .04 65deg)}[data-tube=green]{--ink-bright: oklch(90% .14 152deg);--ink: oklch(77.5% .14 150deg);--ink-dim: oklch(63% .115 148deg);--on-ink: oklch(15% .035 150deg)}[data-tube=white]{--ink-bright: oklch(90% .008 250deg);--ink: oklch(77.5% .007 250deg);--ink-dim: oklch(63% .006 250deg);--on-ink: oklch(15% .005 250deg)}[data-tube=amber]{--tube-bg: oklch(12.8% .018 62deg);--rule: oklch(45.5% .09 70deg);--rule-faint: oklch(32% .058 66deg);--shadow: oklch(4% .012 62deg);--led: oklch(75% .19 55deg)}[data-tube=green]{--tube-bg: oklch(12.8% .016 150deg);--rule: oklch(45.5% .085 147deg);--rule-faint: oklch(32% .055 146deg);--shadow: oklch(4% .01 150deg);--led: oklch(78% .19 150deg)}[data-tube=white]{--tube-bg: oklch(13.5% .006 250deg);--rule: oklch(45.5% .005 250deg);--rule-faint: oklch(32% .004 250deg);--shadow: oklch(5% .004 250deg);--led: oklch(75% .03 250deg)}:root{--bezel: oklch(16% .004 70deg)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--tube-bg);color:var(--ink);font-family:ui-monospace,SFMono-Regular,JetBrains Mono,Cascadia Code,Consolas,monospace;line-height:1.4;text-size-adjust:100%}a{color:var(--ink)}button,input{font:inherit;color:var(--ink);background:transparent}p,.prose{text-transform:none}*{scrollbar-width:thin;scrollbar-color:var(--ink-dim) transparent;--scroll-hatch-h: repeating-linear-gradient( to right, transparent 0 5px, var(--tube-bg) 5px 6px );--scroll-hatch-v: repeating-linear-gradient( to bottom, transparent 0 5px, var(--tube-bg) 5px 6px );--scroll-track-h: repeating-linear-gradient( to right, var(--rule-faint) 0 2px, transparent 2px 5px );--scroll-track-v: repeating-linear-gradient( to bottom, var(--rule-faint) 0 2px, transparent 2px 5px )}*::-webkit-scrollbar{inline-size:10px;block-size:10px}*::-webkit-scrollbar-thumb{background-color:var(--ink-dim)}*::-webkit-scrollbar-thumb:horizontal{background-image:var(--scroll-hatch-h)}*::-webkit-scrollbar-thumb:vertical{background-image:var(--scroll-hatch-v)}*::-webkit-scrollbar-track:horizontal{background-image:var(--scroll-track-h)}*::-webkit-scrollbar-track:vertical{background-image:var(--scroll-track-v)}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
