:root{--bg: #0d0d10;--line: #2a2a32;--text: #d7d5cd;--mute: #71717d;--focus: #d6ad60;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs: clamp(.78rem, .72rem + .28vw, .875rem);--lh: 1.65;--row: 1.65em}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--mono);font-size:var(--fs);line-height:var(--lh);font-variant-ligatures:none;-webkit-font-smoothing:antialiased}::selection{background:var(--focus);color:var(--bg)}a{color:inherit;text-underline-offset:.25em;text-decoration-color:var(--line)}a:hover{color:var(--focus);text-decoration-color:var(--focus)}:focus-visible{outline:1px solid var(--focus);outline-offset:2px}.screen{height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:0 clamp(.5rem,2vw,1.25rem) clamp(.35rem,1.2vw,.6rem);max-width:78rem;margin-inline:auto}.titlebar{display:flex;align-items:baseline;gap:1.25rem;padding:.9rem .25rem .75rem;white-space:nowrap;overflow:hidden}.titlebar .brand{color:var(--focus);letter-spacing:.02em}.titlebar .desc{color:var(--mute);overflow:hidden;text-overflow:ellipsis}.titlebar .right{margin-left:auto;color:var(--mute)}.titlebar .right a{text-decoration:none}.panes{display:grid;grid-template-columns:15rem minmax(0,1fr);gap:.6rem;min-height:0}.pane{position:relative;border:1px solid var(--line);min-height:0;display:flex;flex-direction:column}.pane>.label{position:absolute;top:0;left:1.1em;transform:translateY(-50%);background:var(--bg);padding:0 .6em;color:var(--mute);letter-spacing:.14em;font-size:.82em;text-transform:uppercase;pointer-events:none}.pane[data-focused=true]{border-color:var(--focus)}.pane[data-focused=true]>.label{color:var(--focus)}.pane-body{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.pane-body::-webkit-scrollbar{width:7px}.pane-body::-webkit-scrollbar-thumb{background:var(--line)}.tree .pane-body{padding:1.1rem 0 .7rem}.tree ol{list-style:none;margin:0;padding:0}.tree button{all:unset;display:block;width:100%;box-sizing:border-box;padding:.1em 1.1em;color:var(--text);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree button:before{content:"• ";color:var(--mute)}.tree button:hover,.tree button[aria-selected=true]{color:var(--focus)}.tree button[aria-selected=true]:before{content:"● ";color:var(--focus)}.tree .group{padding:1.4em 1.1em .2em;color:var(--mute);font-size:.82em;letter-spacing:.14em;text-transform:uppercase}.doc .pane-body{padding:1.35rem clamp(1rem,3vw,2.4rem) 1.6rem}.doc p,.doc ul,.doc .keys{max-width:62ch}.js .doc section{display:none}.js .doc section.on{display:block}.doc section+section{margin-top:2.4em}.js .doc section+section{margin-top:0}.doc h2{font-size:1em;font-weight:600;margin:0 0 var(--row);color:var(--text);letter-spacing:.02em}.doc h2:before{content:"# ";color:var(--mute);font-weight:400}.doc p{margin:0 0 var(--row);color:var(--text)}.doc p.mute{color:var(--mute)}.doc strong{font-weight:600;color:var(--focus)}.doc ul{margin:0 0 var(--row);padding:0;list-style:none}.doc ul li{padding-left:1.4em;text-indent:-1.4em}.doc ul li:before{content:"— ";color:var(--mute)}.grid-block{margin:0 0 var(--row);overflow-x:auto;scrollbar-width:thin}.grid-block pre{margin:0;font:inherit;font-size:clamp(.52rem,1.15vw,.8rem);line-height:1.5;white-space:pre;color:var(--mute)}.grid-block pre b{font-weight:400;color:var(--text)}.grid-block pre i{font-style:normal;color:var(--focus)}.keys{width:100%;border-collapse:collapse;margin:0 0 var(--row)}.keys td{padding:.05em 1.2em .05em 0;vertical-align:top}.keys td:first-child{color:var(--focus);white-space:nowrap;width:1%}.keys td:last-child{color:var(--text)}.cmd{display:block;padding:.1em 0 .1em 1.4em;text-indent:-1.4em;color:var(--text)}.cmd:before{content:"$ ";color:var(--mute)}.cmd+.cmd{margin-top:.1em}.cmd.note:before{content:"# "}.cmd.note{color:var(--mute)}.statusbar{display:flex;gap:1.5rem;padding:.5rem .35rem .2rem;color:var(--mute);white-space:nowrap;overflow:hidden}.statusbar .pos{color:var(--focus)}.statusbar .right{margin-left:auto}.statusbar kbd{font:inherit;color:var(--text)}.statusbar .hint+.hint{margin-left:1.1rem}@media(max-width:46rem){.screen{height:auto;min-height:100dvh}.panes{grid-template-columns:minmax(0,1fr)}.doc,.tree{overflow:visible}.statusbar .keys-hint{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
