pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}:root,[data-theme=dark]{--bg: #07080a;--bg-2: #0e1116;--bg-bar: rgba(7, 8, 10, .94);--line: #1e2a32;--text: #c8d0d8;--text-soft: #d4dce3;--lede: #d8e0e6;--muted: #6b7c86;--nav: #b6c2ca;--accent: #3ee0b0;--accent-rgb: 62, 224, 176;--layer-backend: #3ee0b0;--layer-backend-rgb: 62, 224, 176;--layer-frontend: #7dff6b;--layer-frontend-rgb: 125, 255, 107;--layer-architecture: #1ecad3;--layer-architecture-rgb: 30, 202, 211;--layer-other: #9dceb0;--layer-other-rgb: 157, 206, 176;--amber: #e8c547;--amber-rgb: 232, 197, 71;--danger: #ff6b6b;--code-bg: #0b0d10;--dot: #3a4650;--crt: rgba(0, 0, 0, .08);--crt-opacity: .28;--overlay: rgba(0, 0, 0, .55);--shadow: 0 0 0 1px #000, 0 24px 80px rgba(0, 0, 0, .5);--grid: rgba(var(--accent-rgb), .035);--scheme: dark;--mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--sans: "IBM Plex Sans", "Segoe UI", sans-serif;--fs-base: clamp(1.05rem, .95rem + .45vw, 1.2rem);--fs-sm: clamp(.9rem, .84rem + .25vw, 1rem);--fs-xs: clamp(.82rem, .78rem + .18vw, .92rem);--fs-h1: clamp(1.75rem, 1.4rem + 1.4vw, 2.4rem);--fs-h2: clamp(1.3rem, 1.15rem + .65vw, 1.65rem);--fs-h3: clamp(1.1rem, 1.02rem + .35vw, 1.28rem);--fs-nav: clamp(1rem, .92rem + .35vw, 1.12rem);--fs-lede: clamp(1.08rem, 1rem + .35vw, 1.22rem)}[data-theme=light]{--bg: #f3efe4;--bg-2: #fffaf0;--bg-bar: rgba(243, 239, 228, .94);--line: #d7d0c0;--text: #24302b;--text-soft: #3a4741;--lede: #33403a;--muted: #6a736c;--nav: #3a4741;--accent: #0c7a58;--accent-rgb: 12, 122, 88;--layer-backend: #0c7a58;--layer-backend-rgb: 12, 122, 88;--layer-frontend: #2f9e44;--layer-frontend-rgb: 47, 158, 68;--layer-architecture: #0e7c86;--layer-architecture-rgb: 14, 124, 134;--layer-other: #5b7a68;--layer-other-rgb: 91, 122, 104;--amber: #a36b0d;--amber-rgb: 163, 107, 13;--danger: #c23d32;--code-bg: #efe8d6;--dot: #c4bba8;--crt: rgba(36, 48, 43, .05);--crt-opacity: .2;--overlay: rgba(36, 32, 24, .38);--shadow: 0 0 0 1px rgba(36, 48, 43, .08), 0 24px 64px rgba(36, 32, 24, .14);--grid: rgba(12, 122, 88, .07);--scheme: light}*{box-sizing:border-box}html{height:100%;font-size:100%;background:var(--bg);color-scheme:var(--scheme);overflow-x:clip}html,body{height:100%}body{margin:0;background:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px),var(--bg);background-size:28px 28px,28px 28px,auto;color:var(--text);font-family:var(--sans);font-size:var(--fs-base);line-height:1.55;-webkit-font-smoothing:antialiased}::selection{background:rgba(var(--accent-rgb),.28);color:var(--text)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:var(--mono);font-weight:500;letter-spacing:-.03em;line-height:1.25}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}button,input,textarea,select{font:inherit;color:inherit;background:var(--bg-2);border:1px solid var(--line);border-radius:2px}button{cursor:pointer;padding:.45rem .8rem}button:hover,.btn:hover{border-color:var(--accent)}button:disabled{opacity:.55;cursor:not-allowed}label{display:grid;gap:.35rem;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.ghost{background:transparent;border-color:transparent;color:var(--muted);padding:.25rem .45rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted)}.accent,.ok{color:var(--accent)}.error,.danger{color:var(--danger)}.push{margin-left:auto}.crt{pointer-events:none;position:fixed;inset:0;background:repeating-linear-gradient(to bottom,transparent 0 2px,var(--crt) 2px 3px);opacity:var(--crt-opacity);z-index:50}.topbar,.statusbar{position:sticky;z-index:10;display:flex;align-items:center;gap:1rem;padding:.65rem 1.15rem;background:var(--bg-bar);border-bottom:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-sm)}.statusbar{top:auto;bottom:0;border-bottom:0;border-top:1px solid var(--line);position:sticky;font-size:var(--fs-xs);width:100%;max-width:100%;min-width:0}.statusbar>*{flex-shrink:0;white-space:nowrap}.topbar{top:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;min-height:3.25rem;column-gap:.75rem}.topbar .prompt{justify-self:start;min-width:0;max-width:min(100%,26rem);overflow:hidden;font-size:var(--fs-sm);color:var(--nav)}.topbar__links{display:flex;gap:.2rem;justify-content:center;justify-self:center;align-items:center;z-index:1;background:var(--bg-bar)}.nav-icon{width:1em;height:1em;flex-shrink:0;display:block}app-nav-icon{display:inline-flex;line-height:0;flex-shrink:0}.topbar__links a{display:inline-flex;align-items:center;gap:.4rem;color:var(--nav);font-size:var(--fs-nav);font-weight:500;letter-spacing:.01em;padding:.4rem .75rem;border:1px solid transparent;border-bottom:2px solid transparent;text-decoration:none;transition:color .15s ease,border-color .15s ease,background .15s ease}.topbar__links a:hover{color:var(--accent);text-decoration:none;background:rgba(var(--accent-rgb),.06)}.topbar__links a.is-active{color:var(--accent);border-bottom-color:var(--accent);text-decoration:none}.statusbar span{color:var(--muted)}.statusbar .ok{color:var(--accent)}.statusbar__net{display:inline-flex;align-items:center;gap:.45em}.statusbar__net.ok{color:var(--accent)}.statusbar__dot{width:.5em;height:.5em;flex-shrink:0;border-radius:50%;background:var(--danger);box-shadow:0 0 .35em var(--danger)}.statusbar__net.ok .statusbar__dot{background:var(--accent);box-shadow:0 0 .45em var(--accent);animation:blink 1.1s steps(2) infinite}.statusbar__cmd{padding:0;border:0;background:transparent;color:var(--muted);font:inherit}.statusbar__theme:after{content:"theme:dark"}[data-theme=light] .statusbar__theme:after{content:"theme:light"}.statusbar__cmd:hover{color:var(--accent);border-color:transparent}.statusbar__stat:before{content:attr(data-label) ":"}.statusbar__aside{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.45rem 1rem;max-width:100%;min-width:0}.statusbar__visits{display:inline-flex;align-items:center;gap:.28rem;white-space:nowrap}.statusbar .visit{display:inline-flex;align-items:baseline;gap:.2em;padding:.14rem .55rem;border:1px solid var(--line);border-radius:999px;background:rgba(var(--accent-rgb),.045);line-height:1.15}.statusbar .visit__n{color:var(--text);font-variant-numeric:tabular-nums;font-weight:500}.statusbar .visit__k{color:var(--muted);font-size:.84em;letter-spacing:.035em}.statusbar .visit--live{align-items:center;gap:.4em;border-color:rgba(var(--accent-rgb),.38);background:rgba(var(--accent-rgb),.14)}.statusbar .visit--live .visit__n{color:var(--accent)}.statusbar .visit--total{border-color:rgba(var(--accent-rgb),.22);background:rgba(var(--accent-rgb),.08)}.statusbar .visit--total .visit__n{color:var(--text-soft)}.statusbar__live .statusbar__dot{align-self:center;background:var(--accent);box-shadow:0 0 .45em var(--accent);animation:blink 1.1s steps(2) infinite}.statusbar__ip{display:inline-flex;align-items:baseline;gap:.35em;padding:.14rem .55rem;border:1px dashed rgba(var(--accent-rgb),.28);border-radius:999px;background:transparent;line-height:1.15}.statusbar .statusbar__ip .visit__n{color:var(--text-soft);font-variant-numeric:tabular-nums}.statusbar__clock{font-variant-numeric:tabular-nums;letter-spacing:.02em}@media(max-width:720px){.statusbar{justify-content:center;flex-wrap:wrap;gap:.28rem .5rem;padding:.4rem .6rem;font-size:.68rem}.statusbar .push{margin-left:0}.statusbar__theme:after{content:"dark"}[data-theme=light] .statusbar__theme:after{content:"light"}.statusbar .visit,.statusbar__ip{padding:.08rem .4rem}}@media(max-width:420px){.statusbar{font-size:.6rem;gap:.22rem .38rem;padding:.32rem .45rem}.statusbar__stat[data-label=articles]:before{content:"a:"}.statusbar__stat[data-label=projects]:before{content:"p:"}}.statusbar__ones{display:inline-flex;align-items:stretch;min-width:1ch;line-height:1}.statusbar span.statusbar__ones-digit{color:inherit}.statusbar span.statusbar__ones-cursor{flex:0 0 1.5px;align-self:stretch;width:1.5px;margin-left:.12em;background:var(--text);opacity:.72;pointer-events:none;animation:caret 1.2s ease-in-out infinite}@keyframes caret{0%,42%{opacity:.72}58%,to{opacity:0}}.topbar__meta{justify-self:end;display:flex;gap:.35rem;align-items:center;min-width:0}.topbar__meta .ghost,.topbar__meta a{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--fs-sm);color:var(--nav);font-weight:500;flex-shrink:0}.theme-toggle{min-width:2rem;justify-content:center}.theme-toggle__icon--light,[data-theme=light] .theme-toggle__icon--dark{display:none}[data-theme=light] .theme-toggle__icon--light{display:inline-flex}@media(max-width:1180px){.topbar__hint{display:none}}.kbd{display:inline-flex;align-items:center;font-family:var(--mono);font-size:.68em;font-weight:600;letter-spacing:.05em;padding:.16rem .36rem;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;color:var(--muted);background:var(--bg-2);line-height:1.1}.ghost:hover .kbd{border-color:var(--accent);color:var(--accent)}@media(max-width:520px){.palette-toggle .kbd{display:none}}.topbar__meta a:hover,.topbar__meta .ghost:hover{color:var(--accent);text-decoration:none}.prompt{display:flex;align-items:center;flex-wrap:nowrap;gap:.55rem;min-width:0;max-width:100%;white-space:nowrap}.prompt__id,.prompt__sep,.prompt__crumb,.cursor{flex-shrink:0}.prompt__id,.prompt__crumb{display:inline-flex;align-items:center;color:inherit;text-decoration:none}.prompt__id:hover,.prompt__crumb:hover{color:var(--accent);text-decoration:none}.prompt__crumb:focus-visible,.prompt__id:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.prompt__trail{min-width:0;display:flex;align-items:center;gap:.28rem;overflow:hidden}.prompt__sep{color:var(--muted);font-size:.95em;line-height:1;opacity:.7;padding-inline:.05rem}.prompt__crumb{max-width:7.5rem;overflow:hidden;text-overflow:ellipsis;color:var(--muted);padding:.12rem .4rem;border-radius:999px;border:1px solid transparent}.prompt__crumb:hover{background:rgba(var(--accent-rgb),.08);border-color:rgba(var(--accent-rgb),.18)}.prompt__leaf{min-width:0;max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft);padding:.12rem .55rem;border-radius:999px;border:1px solid rgba(var(--accent-rgb),.22);background:rgba(var(--accent-rgb),.08)}.cursor{color:var(--accent);animation:blink 1.1s steps(2) infinite}@keyframes blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.cursor,.statusbar__net.ok .statusbar__dot,.statusbar__ones-cursor{animation:none}}.stage{min-height:calc(100vh - 6rem);width:min(72rem,100%);max-width:100%;min-width:0;padding:1.75rem clamp(1rem,3.5vw,2.75rem) 2.75rem;margin-inline:auto}.hero{margin-bottom:2.25rem}.kicker{font-family:var(--mono);color:var(--accent);font-size:var(--fs-sm);overflow-wrap:anywhere}.reading-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem 1.1rem;min-width:0}.reading-head>div{min-width:0}.reading-head h1{margin:0;overflow-wrap:anywhere}.reading-head .kicker{margin:0 0 .35rem}.lede{max-width:min(60ch,100%);color:var(--lede);font-size:var(--fs-lede);overflow-wrap:anywhere}.help{color:var(--muted);font-family:var(--mono);font-size:var(--fs-sm)}app-about{display:block;width:min(100%,56rem);margin-inline:auto}app-about .md{max-width:min(60ch,100%)}app-about .lede :is(h1,h2),app-about .md :is(h1,h2),.about-heading{display:grid;grid-template-columns:2px minmax(0,1fr);column-gap:.85rem;align-items:start;width:100%;margin:0 0 1.2rem;font-size:var(--fs-h3);font-weight:500;letter-spacing:-.03em;line-height:1.28;color:var(--text);text-transform:none}app-about .lede :is(h1,h2):before,app-about .md :is(h1,h2):before,.about-heading:before{content:"";width:2px;height:.92em;margin-top:.22em;background:var(--accent);box-shadow:0 0 12px rgba(var(--accent-rgb),.4)}app-about .lede h1,app-about .md h1{margin-top:1.1rem;font-size:var(--fs-h2)}app-about .md h2{margin-top:2.15rem}.tenure,.skill-section{padding-block:1.55rem 1.9rem;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)}.timeline{display:grid;margin:0;padding:0;list-style:none}.timeline__item{display:grid;grid-template-columns:.7rem minmax(0,1fr);column-gap:.9rem;min-width:0}.timeline__track{position:relative;display:flex;justify-content:center}.timeline__rail{position:absolute;inset-inline-start:50%;top:.85rem;bottom:0;width:1px;transform:translate(-50%);background:var(--line)}.timeline__item:last-child .timeline__rail,.timeline__item:only-child .timeline__rail{display:none}.timeline__dot{width:.52rem;height:.52rem;margin-top:.42rem;border-radius:999px;background:var(--bg);border:1.5px solid color-mix(in srgb,var(--accent) 70%,var(--line));z-index:1}.timeline__item.is-current .timeline__dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.18)}.timeline__card{display:grid;grid-template-areas:"org" "title" "when";gap:.12rem;min-width:0;padding:.15rem 0 1.2rem;color:inherit;background:none;border:0;border-radius:0;box-shadow:none;text-align:start}.timeline__item:last-child .timeline__card{padding-bottom:.15rem}.timeline__org{grid-area:org;font-weight:550;overflow-wrap:anywhere;color:var(--text)}.timeline__title{grid-area:title;color:var(--text-soft);font-size:var(--fs-sm);overflow-wrap:anywhere}.timeline__when{grid-area:when;margin-top:.12rem;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.timeline__item.is-current .timeline__org{color:var(--text-soft)}@media(min-width:640px){.timeline__card{grid-template-areas:"when org" "when title";grid-template-columns:13.5rem minmax(0,1fr);column-gap:1.35rem;align-items:baseline;padding-bottom:1.35rem}.timeline__when{margin-top:0;white-space:nowrap}}.skill-groups{display:grid;gap:.15rem}.skill-group{display:grid;gap:.35rem;padding-block:.55rem;border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.skill-group:first-child{border-top:0;padding-top:0}.skill-group__label{margin:0;font-family:var(--mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:.04em;color:var(--muted)}.skill-board{display:flex;flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none}.skill-board li{min-width:0;padding:.22rem .58rem;border-radius:999px;text-align:center;font-family:var(--mono);font-size:var(--fs-xs);font-weight:500;line-height:1.35;overflow-wrap:anywhere;color:var(--text-soft);background:transparent;border:1px solid var(--line)}.skill-board li[data-weight=lead]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 42%,var(--line));background:rgba(var(--accent-rgb),.08)}.skill-board li[data-weight=familiar]{color:var(--muted)}@media(max-width:520px){.skill-group{padding-block:.7rem}}.career-form{display:grid;gap:1.75rem}.career-form h2{margin:0}.career-form section{display:grid;gap:.7rem}.career-form .section-head,.career-form .muted{margin:0}.career-list{display:grid;gap:.45rem}.career-card,.career-row{border:1px solid color-mix(in srgb,var(--line) 85%,transparent);border-radius:14px;background:color-mix(in srgb,var(--bg-2) 55%,transparent)}.career-card{display:grid;gap:.7rem;padding:.85rem .95rem .9rem}.career-card__bar,.career-card__meta,.career-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .85rem}.career-row{padding:.55rem .7rem .6rem}.career-field{display:grid;gap:.2rem;min-width:0;font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.02em;color:var(--muted)}.career-field--grow{flex:1 1 12rem}.career-field input,.career-field select,.career-field textarea{width:100%;min-width:0;padding:.28rem 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent}.career-field textarea{min-height:4.2rem;resize:vertical}.career-field input:focus,.career-field select:focus,.career-field textarea:focus{outline:none;border-bottom-color:var(--accent)}.career-field input::placeholder{color:color-mix(in srgb,var(--muted) 70%,transparent)}.career-card__meta .career-field{flex:0 1 9rem}.career-card__actions{display:flex;align-items:center;gap:.1rem;margin-left:auto;padding-bottom:.15rem}.career-card__actions .ghost{font-family:var(--mono);font-size:var(--fs-xs);padding:.2rem .35rem}.career-card label.check,.career-card__meta label.check{display:flex;align-items:center;gap:.4rem;margin:0 0 .2rem auto;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}@media(max-width:640px){.career-row{align-items:stretch}.career-card__actions{margin-left:0}}#cv,[id^=cv-]{scroll-margin-top:5rem}.home-grid{display:grid;grid-template-columns:minmax(16rem,.95fr) minmax(0,1.35fr);gap:clamp(1.75rem,4vw,3.25rem);align-items:start}.home-intro{position:sticky;top:4.25rem;display:grid;gap:.85rem;padding-block:.35rem}.home-intro h1{margin:0}.home-intro .lede{margin:0;max-width:36ch}.home-intro__links{display:grid;gap:.35rem;margin-top:.5rem;font-family:var(--mono);font-size:var(--fs-sm)}.home-intro__links a{color:var(--nav);text-decoration:none}.home-intro__links a:hover{color:var(--accent)}.home-feed{display:grid;gap:1.75rem;min-width:0}.home-feed .catalog{width:100%}.home-feed .section-head{margin-top:0}.bento--stack{grid-template-columns:1fr}.section-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.75rem 1rem;margin:1.5rem 0 1rem}.section-head h1,.section-head h2{margin:0}.section-head .grep{margin-left:auto}.section-head__actions{display:flex;gap:.5rem;margin-left:auto}.catalog{width:min(100%,56rem);max-width:100%;min-width:0;margin-inline:auto}.bento{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.card{display:grid;gap:.4rem;padding:1rem;background:linear-gradient(180deg,rgba(var(--accent-rgb),.05),transparent 40%),var(--bg-2);border:1px solid var(--line);text-decoration:none;color:inherit}.card:hover{border-color:var(--accent);text-decoration:none;transform:translateY(-2px);transition:.16s ease}.card small{font-family:var(--mono);color:var(--amber);font-size:var(--fs-xs)}.card p{font-size:var(--fs-sm);margin:0;color:var(--text-soft)}.card--stat{position:relative;align-content:start}.card__head{display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-height:1.7rem}.card__add{display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;margin:-.35rem -.35rem -.35rem 0;padding:0;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--muted);text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.card__add:hover,.card__add:focus-visible{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 8%,transparent);text-decoration:none}.card__add .nav-icon{width:.95rem;height:.95rem}app-cover-image{display:contents}.card__cover{display:block;margin:-1rem -1rem .65rem;aspect-ratio:16/9;overflow:hidden;background:var(--bg);border-bottom:1px solid var(--line)}.card__cover img{width:100%;height:100%;max-width:100%;object-fit:cover;display:block}.list{display:grid;border-top:1px solid var(--line);min-width:0}.row{display:grid;grid-template-columns:max-content minmax(0,1fr) minmax(8rem,14rem);gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line);color:inherit;text-decoration:none;font-family:var(--mono);font-size:var(--fs-sm);min-width:0}.row strong{min-width:0;overflow-wrap:break-word}.row>span{min-width:0;overflow-wrap:anywhere}.row>:last-child{justify-self:end;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row:hover{color:var(--accent);text-decoration:none;background:rgba(var(--accent-rgb),.04)}.row--thumb{grid-template-columns:3.4rem max-content minmax(0,1fr) minmax(8rem,14rem);align-items:center}.row__cover{display:block;width:3.4rem;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--line);background:var(--bg)}.row__cover img{width:100%;height:100%;max-width:100%;object-fit:cover;display:block}.row-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.35rem .55rem;border-bottom:1px solid var(--line)}.row-line .row{border-bottom:0;min-width:0}.row-line__actions{display:inline-flex;flex-shrink:0;align-items:center;gap:.1rem}.row-line--meta{grid-template-columns:minmax(0,1fr) auto auto}.row-line__meta{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-family:var(--mono);font-size:var(--fs-xs)}.row-line__field{height:2.15rem;padding:0 .45rem;color:var(--muted);transition:border-color .15s ease,color .15s ease}.row-line__category{min-width:7.5rem}.row-line__field:hover:not(:disabled),.row-line__field:focus-visible{color:var(--text);border-color:var(--accent)}.row-line__field:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.row-line__field:disabled{opacity:.45;cursor:wait}.row-line__saved{color:var(--accent)}app-row-clone,app-row-delete{display:inline-flex;flex-shrink:0;align-items:center;line-height:0}.row-line__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.15rem;height:2.15rem;padding:0;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--muted);transition:background .15s ease,border-color .15s ease,color .15s ease}.row-line__icon-btn .nav-icon{width:.95rem;height:.95rem}.row-line__icon-btn:disabled{opacity:.45;cursor:wait}.row-line:hover .row-line__clone,.row-line__clone:focus-visible{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 32%,var(--line));background:color-mix(in srgb,var(--accent) 8%,transparent)}.row-line__clone:hover:not(:disabled),.row-line__clone:focus-visible{color:var(--accent);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--bg-2))}.row-line__clone:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.row-line:hover .row-line__delete,.row-line__delete:focus-visible{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 32%,var(--line));background:color-mix(in srgb,var(--danger) 8%,transparent)}.row-line__delete:hover:not(:disabled),.row-line__delete:focus-visible{color:var(--danger);border-color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,var(--bg-2))}.row-line__delete:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.table-scroll{margin-top:1.25rem;overflow-x:auto}.data-table{width:100%;min-width:42rem;border-collapse:collapse;font-family:var(--mono);font-size:var(--fs-sm)}.data-table th,.data-table td{text-align:left;vertical-align:top;padding:.7rem .9rem .7rem 0;border-bottom:1px solid var(--line)}.data-table th{color:var(--amber);font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em;border-bottom-color:var(--accent)}.data-table tbody tr:hover{background:rgba(var(--accent-rgb),.04)}.data-table td strong,.data-table td small{display:block;overflow-wrap:anywhere}.data-table td small{font-size:var(--fs-xs)}.dist{display:grid;gap:.45rem;margin:.35rem 0 0;padding:0;list-style:none}.dist li{display:grid;grid-template-columns:minmax(5rem,8rem) minmax(0,1fr) 2.25rem;align-items:center;gap:.6rem;font-family:var(--mono);font-size:var(--fs-xs)}.dist__label{color:var(--text-soft);overflow-wrap:anywhere}.dist__bar{height:.45rem;border:1px solid var(--line);background:rgba(var(--accent-rgb),.1)}.dist__bar i{display:block;height:100%;background:var(--accent)}.dist__value{justify-self:end;color:var(--accent)}.pager{display:flex;align-items:center;gap:.75rem;margin-top:1rem;font-family:var(--mono);font-size:var(--fs-sm)}.card__when{font-family:var(--mono);font-size:var(--fs-sm)}.card-wrap{position:relative;min-width:0}.card-wrap>.card{height:100%}.card-wrap>app-admin-edit{position:absolute;top:.55rem;right:.55rem;z-index:2}app-admin-edit{display:inline-flex;line-height:0;flex-shrink:0}app-admin-edit[hidden]{display:none}.admin-edit{display:inline-flex;align-items:center;gap:.32rem;font-family:var(--mono);font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;color:var(--amber);border:1px solid var(--line);padding:.22rem .5rem;text-decoration:none;background:var(--bg-2)}.admin-edit:hover{color:var(--bg);background:var(--accent);border-color:var(--accent);text-decoration:none}.admin-edit--compact{padding:.28rem}.topbar__admin{color:var(--amber)!important}.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.55rem 0 .9rem}.chip,.chips span{font-family:var(--mono);font-size:var(--fs-xs);border:1px solid var(--line);padding:.2rem .5rem;color:var(--muted);background:transparent}.chip.is-on{color:var(--bg);background:var(--accent);border-color:var(--accent)}.chips--article span{color:var(--amber);border-color:rgba(var(--amber-rgb),.4)}.chips--row{margin:.2rem 0 0;max-height:2.55rem;overflow:hidden}.row__body{display:grid;gap:.22rem;min-width:0}.row:hover .chips--article span{color:var(--amber)}.grep{min-width:min(280px,100%);padding:.45rem .6rem;font-family:var(--mono);font-size:var(--fs-sm)}.reading{display:grid;grid-template-columns:minmax(11rem,16.5rem) minmax(0,1fr);gap:clamp(1.25rem,3vw,2rem);width:min(100%,64rem);max-width:100%;min-width:0;margin-inline:auto}.reading>*{min-width:0}.reading aside{position:sticky;top:4rem;align-self:start;font-family:var(--mono);font-size:var(--fs-sm);display:grid;gap:.55rem;max-height:calc(100vh - 5.5rem);overflow-x:hidden;overflow-y:auto;padding-right:.25rem}.reading aside h2{margin:.85rem 0 .15rem;font-size:var(--fs-sm);font-weight:600;color:var(--text);letter-spacing:-.02em}.reading aside h2:first-of-type{margin-top:.35rem}.reading-meta{display:grid;gap:.3rem}.reading aside .reading-meta h2{color:var(--meta)}.reading-meta--toc{--meta: var(--layer-architecture);--meta-rgb: var(--layer-architecture-rgb)}.reading-meta--toc h2{margin:0;color:var(--meta);font-size:var(--fs-h3);font-weight:600}.reading-meta--tags{--meta: var(--amber);--meta-rgb: var(--amber-rgb)}.reading-toc{list-style:none;margin:0;padding:0;display:grid;gap:.15rem}.reading-toc li{color:var(--meta);padding:.22rem 0;line-height:1.35;font-weight:500;overflow-wrap:anywhere}.reading-toc li.is-h3{padding-left:.75rem;opacity:.82}.reading-meta--tags .chips{margin:0}.reading-meta--tags .chips span{color:var(--meta);border-color:rgba(var(--meta-rgb),.42)}.reading-side{position:sticky;top:4rem;align-self:start;display:flex;flex-direction:column;gap:1.35rem;max-height:calc(100vh - 5.5rem);overflow:auto;min-width:0}.reading--article aside{position:static;max-height:none;overflow:visible;padding-right:0}.reading aside .reading-section__title,.reading-tags .reading-section__title{margin:0 0 .45rem;font-size:var(--fs-h3);font-weight:600;letter-spacing:-.03em;line-height:1.2;color:var(--section, var(--text));padding-bottom:.35rem;border-bottom:2px solid rgba(var(--section-rgb, var(--accent-rgb)),.55)}.reading-siblings{--section: var(--accent);--section-rgb: var(--accent-rgb)}.reading-tags{--section: var(--amber);--section-rgb: var(--amber-rgb);align-self:start}.reading-section{display:grid;gap:.85rem;min-width:0}.reading-section__title{margin:0;font-family:var(--mono);font-size:var(--fs-h2);font-weight:600;letter-spacing:-.03em;line-height:1.2;color:var(--section);padding-bottom:.45rem;border-bottom:2px solid rgba(var(--section-rgb),.55)}.reading-section--content{--section: var(--layer-architecture);--section-rgb: var(--layer-architecture-rgb)}.reading-section--tags{--section: var(--amber);--section-rgb: var(--amber-rgb)}.reading-section--tags.reading-meta--tags{--meta: var(--amber);--meta-rgb: var(--amber-rgb)}.reading-section--others{--section: var(--accent);--section-rgb: var(--accent-rgb)}.sibling{display:grid;min-width:0}.sibling-headings{display:none;--meta: var(--layer-architecture);--meta-rgb: var(--layer-architecture-rgb);margin:.15rem 0 .35rem .8rem;padding:.15rem 0 .2rem .7rem;border-left:2px solid var(--meta)}.sibling.is-current .sibling-headings{display:grid}.sibling-headings li{font-family:var(--sans);font-size:var(--fs-sm);font-weight:600;color:var(--meta)}.tech-stack{display:grid;gap:.7rem}.tech-stack [data-layer=backend]{--layer: var(--layer-backend);--layer-rgb: var(--layer-backend-rgb)}.tech-stack [data-layer=frontend]{--layer: var(--layer-frontend);--layer-rgb: var(--layer-frontend-rgb)}.tech-stack [data-layer=architecture]{--layer: var(--layer-architecture);--layer-rgb: var(--layer-architecture-rgb)}.tech-stack [data-layer=other]{--layer: var(--layer-other);--layer-rgb: var(--layer-other-rgb)}.tech-stack h3{margin:0 0 .3rem;font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--layer)}.tech-stack .chips{margin:0}.tech-stack .chips span{color:var(--layer);border-color:rgba(var(--layer-rgb),.38)}.reading aside nav{display:grid;gap:.2rem}.reading aside nav a{color:var(--nav);font-weight:500;padding:.3rem 0;text-decoration:none}.reading aside nav a:hover,.reading aside nav a.is-active{color:var(--accent);text-decoration:none}.reading aside .sibling-headings a{display:block;width:auto;margin:0;padding:.22rem 0;border:0;background:transparent;color:var(--meta);font-family:var(--sans);font-size:var(--fs-sm);font-weight:600;line-height:1.35;text-decoration:none}.reading aside .sibling-headings a:hover,.reading aside .sibling-headings a.is-current{color:var(--accent);background:transparent;text-decoration:none}.siblings{display:grid;gap:.15rem}.siblings a,.siblings .sibling__toggle{display:grid;gap:.15rem;width:100%;min-width:0;margin:0;padding:.55rem .55rem .55rem .65rem;border:0;border-left:2px solid transparent;border-radius:0;background:transparent;color:inherit;font:inherit;line-height:1.35;text-align:left;text-decoration:none;cursor:pointer}.siblings a:hover,.siblings .sibling__toggle:hover{background:rgba(var(--accent-rgb),.05);border-color:transparent;border-left-color:transparent;text-decoration:none}.siblings a.is-active,.sibling.is-open>.sibling__toggle{border-left-color:var(--accent);background:rgba(var(--accent-rgb),.08)}.siblings a.is-active .siblings__title,.sibling.is-open>.sibling__toggle .siblings__title{color:var(--accent)}.siblings__title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;overflow:hidden;font-family:var(--sans);font-size:var(--fs-base);font-weight:600;letter-spacing:-.01em;color:var(--text)}.siblings a:hover .siblings__title,.siblings .sibling__toggle:hover .siblings__title{color:var(--accent)}.siblings .muted{font-size:var(--fs-xs);font-family:var(--mono)}.reading--article .sibling__toggle{display:none}.md{max-width:min(66ch,100%);min-width:0;font-size:1.05em;overflow-wrap:anywhere}.md h2,.md h3{scroll-margin-top:5rem}.md p,.md li{color:var(--text-soft);line-height:1.75}.md p{margin:.95rem 0}.md h2{margin-top:2.1rem}.md :is(h2,h3) strong{font-weight:700;color:var(--text)}.md a{text-decoration:underline;overflow-wrap:anywhere}.md img,.md video{display:block;width:100%;max-width:100%;height:auto;margin:1rem 0;border:1px solid var(--line)}.md table{display:block;max-width:100%;overflow-x:auto}.md pre,.md code{max-width:100%}.cover-hero{margin:0 0 1.35rem;overflow:hidden;border:1px solid var(--line);background:var(--bg);aspect-ratio:16/9}.cover-hero img{width:100%;height:100%;max-width:100%;object-fit:cover;display:block}.progress{height:2px;background:var(--line);margin:1rem 0 1.5rem}.progress:after{content:"";display:block;height:100%;width:calc(var(--p, 0) * 100%);background:var(--accent)}.read-progress{position:fixed;z-index:40;top:0;left:0;right:0;height:3px;pointer-events:none;background:transparent}.read-progress__fill{display:block;height:100%;width:calc(var(--p, 0) * 100%);background:linear-gradient(90deg,rgba(var(--accent-rgb),.25),var(--accent));box-shadow:0 0 12px rgba(var(--accent-rgb),.75)}.read-meter{position:fixed;z-index:40;right:max(.85rem,env(safe-area-inset-right));bottom:max(3.6rem,env(safe-area-inset-bottom) + 3.2rem);width:3.4rem;height:3.4rem;display:grid;place-items:center;pointer-events:none;border-radius:999px;background:color-mix(in srgb,var(--bg-bar) 86%,transparent);border:1px solid rgba(var(--accent-rgb),.45);box-shadow:0 10px 28px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.read-meter svg{position:absolute;inset:.28rem;width:calc(100% - .56rem);height:calc(100% - .56rem);transform:rotate(-90deg)}.read-meter circle{fill:none;stroke-width:2.5}.read-meter__track{stroke:var(--line)}.read-meter__value{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:97.4;stroke-dashoffset:calc(97.4 * (1 - var(--p, 0)))}.read-meter strong{position:relative;font-family:var(--mono);font-size:.68rem;font-weight:600;letter-spacing:-.04em;color:var(--accent)}@media(prefers-reduced-motion:no-preference){.read-progress__fill,.read-meter__value{transition:width .12s linear,stroke-dashoffset .12s linear}}@media(max-width:880px){.read-meter{width:3.05rem;height:3.05rem}.read-meter strong{font-size:.62rem}}.term-code{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--line);margin:1rem 0;background:var(--code-bg);max-width:100%;min-width:0}.term-code__bar{display:flex;gap:.35rem;align-items:center;padding:.45rem .65rem;border-bottom:1px solid var(--line);min-width:0}.term-code__bar span{width:8px;height:8px;border-radius:99px;background:var(--dot);flex-shrink:0}.term-code__bar span:first-child{background:var(--danger)}.term-code__bar em{margin-left:auto;font-style:normal;color:var(--muted);font-size:var(--fs-xs);font-family:var(--mono);min-width:0;overflow:hidden;text-overflow:ellipsis}.term-code pre{margin:0;padding:1rem;overflow:auto;max-width:100%;font-size:var(--fs-sm);white-space:pre;overflow-wrap:normal}body:has(.palette),body:has(.confirm){overflow:hidden}.confirm{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:1.25rem;background:var(--overlay)}.confirm__panel{width:min(26.5rem,100%);min-width:0;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--danger) 9%,transparent),transparent 34%),var(--bg-2);border:1px solid color-mix(in srgb,var(--danger) 28%,var(--line));box-shadow:var(--shadow)}.confirm__bar{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.confirm__bar .dots{display:flex;gap:.3rem}.confirm__bar .dots span{width:8px;height:8px;border-radius:99px;background:var(--dot)}.confirm__bar .dots span:nth-child(1){background:var(--danger)}.confirm__bar .dots span:nth-child(2){background:var(--amber)}.confirm__bar .dots span:nth-child(3){background:var(--accent)}.confirm__bar em{margin-left:auto;font-style:normal}.confirm__body{padding:1.2rem 1.2rem 1.3rem;display:grid;gap:.95rem;min-width:0}.confirm__intro{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;align-items:start;min-width:0}.confirm__intro>div{min-width:0}.confirm__icon{display:inline-flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:8px;color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent);border:1px solid color-mix(in srgb,var(--danger) 28%,var(--line))}.confirm__icon .nav-icon{width:1.05rem;height:1.05rem}.confirm__body h2{margin:0;font-size:var(--fs-h3);overflow-wrap:anywhere}.confirm__name{display:block;margin-top:.4rem;padding:.4rem .55rem;max-width:100%;font-family:var(--mono);font-size:var(--fs-xs);color:var(--text-soft);background:var(--bg);border:1px solid var(--line);overflow-wrap:anywhere;word-break:break-word}.confirm__lede{margin:0;color:var(--muted);font-size:var(--fs-sm)}.confirm__actions{display:flex;justify-content:flex-end;gap:.5rem;align-items:center}.confirm__go{display:inline-flex;align-items:center;gap:.4rem;min-height:2.2rem;padding:.38rem .85rem;border-radius:6px;font-family:var(--mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:.03em;color:var(--bg);background:var(--danger);border:1px solid var(--danger)}.confirm__go:hover{background:color-mix(in srgb,var(--danger) 86%,white);border-color:color-mix(in srgb,var(--danger) 86%,white)}.confirm__go .nav-icon{width:.9rem;height:.9rem}@media(max-width:520px){.confirm{place-items:end stretch;padding:0}.confirm__panel{width:100%;border-left:0;border-right:0;border-bottom:0}}.palette{position:fixed;inset:0;background:var(--overlay);z-index:80;display:grid;place-items:start center;padding:12vh .75rem 1.25rem;overflow:hidden}.palette__panel{width:min(640px,100%);max-height:min(72vh,100%);display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bg-2);border:1px solid var(--accent);box-shadow:var(--shadow)}.palette__prompt{display:flex;gap:.6rem;align-items:center;padding:.85rem;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-sm);flex-shrink:0}.palette__prompt input{flex:1;min-width:0;width:100%;border:0;background:transparent;outline:none;font-size:max(1rem,var(--fs-base));-webkit-appearance:none;appearance:none}.palette__close{flex-shrink:0;min-width:2.5rem;min-height:2.5rem;display:inline-flex;align-items:center;justify-content:center;padding:.2rem}.palette__x{display:none}.palette ul{list-style:none;margin:0;padding:.3rem 0 .6rem;overflow:auto;flex:1;min-height:0;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.palette li{display:flex;align-items:center;gap:.7rem;padding:.7rem .95rem;min-height:2.75rem;font-family:var(--mono);font-size:var(--fs-sm);cursor:pointer}.palette__item{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;min-width:0;flex:1}.palette__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette li app-nav-icon{color:var(--muted);flex-shrink:0}.palette li.is-active app-nav-icon,.palette li:hover app-nav-icon{color:var(--accent)}.palette li.is-active,.palette li:hover{background:rgba(var(--accent-rgb),.12)}.palette small{color:var(--muted);font-size:var(--fs-xs);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette__empty{margin:0;padding:1.1rem .95rem 1.3rem;color:var(--muted);font-family:var(--mono);font-size:var(--fs-sm)}@media(max-width:640px){.palette{place-items:start stretch;padding:0}.palette__panel{width:100%;max-height:100%;border:0;border-bottom:1px solid var(--accent);border-radius:0 0 12px 12px;box-shadow:var(--shadow)}.palette__prompt{padding:.7rem .65rem .7rem .9rem;padding-left:max(.9rem,env(safe-area-inset-left));padding-right:max(.45rem,env(safe-area-inset-right))}.palette__esc{display:none}.palette__x{display:inline-flex;color:var(--muted)}.palette__x .nav-icon{width:1.15rem;height:1.15rem}.palette li{align-items:flex-start;padding:.9rem 1rem;padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right));min-height:3.1rem}.palette__item{display:grid;justify-content:start;gap:.2rem}}.boot{font-family:var(--mono);min-height:50vh;font-size:var(--fs-sm)}.stack{max-width:720px;margin-inline:auto;display:grid;gap:.8rem}.stack--wide{max-width:56rem}.settings-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem 1rem}.settings-head h1{margin:0}.settings-tabs{display:flex;flex-wrap:wrap;gap:.1rem;margin:.1rem 0 .15rem;border-bottom:1px solid var(--line)}.settings-tabs [role=tab]{font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted);background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;padding:.5rem .8rem;margin-bottom:-1px}.settings-tabs [role=tab]:hover{color:var(--text);border-color:transparent;border-bottom-color:var(--line)}.settings-tabs [role=tab][aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.settings-panel{display:grid;gap:.8rem;min-width:0}.settings-panel>.html-block:first-child{border-top:0;padding-top:.15rem}@media(max-width:560px){.grid-2,.settings-panel .grid-2{grid-template-columns:minmax(0,1fr)}}.html-block{display:grid;gap:.7rem;padding:.85rem 0 .2rem;border-top:1px solid var(--line)}.html-block header h2{margin:0 0 .25rem;font-size:var(--fs-h3)}.html-block header .muted{margin:0}.html-editor{display:grid;border:1px solid var(--line);background:var(--bg-2)}.html-editor.is-drop{border-color:var(--accent)}.html-editor__bar{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem;padding:.35rem .5rem;border-bottom:1px solid var(--line)}.html-editor__bar .ghost.is-on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.html-editor__sep{width:1px;height:1rem;margin:0 .25rem;background:var(--line)}.html-editor__link{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.4rem .55rem;border-bottom:1px solid var(--line)}.html-editor__link input{flex:1;min-width:12rem}.html-editor__surface{min-height:16rem;padding:.85rem 1rem 1.1rem;outline:none}.html-editor__surface:focus{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.html-editor textarea.code{min-height:16rem;border:0;border-radius:0}.html-editor--compact .html-editor__surface,.html-editor--compact textarea.code{min-height:7rem}app-html-view{display:block}app-html-view.lede p{margin:0;color:inherit;font-size:inherit}app-html-view.lede p+p{margin-top:.55em}.editor{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.2rem}.editor__form,.stack{display:grid;gap:.75rem;min-width:0}.grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.7rem}.grid-2>*{min-width:0}.editor__form input,.editor__form select,.editor__form textarea,.stack textarea{width:100%;max-width:100%;min-width:0;padding:.55rem .7rem;line-height:1.45}.editor__form textarea,.stack textarea{resize:vertical}.editor__form>label textarea{field-sizing:content;min-height:4.6rem;max-height:18rem}textarea.code{font-family:var(--mono);font-size:var(--fs-sm)}.actions{display:flex;gap:.6rem;align-items:center}.btn{display:inline-flex;align-items:center;padding:.4rem .7rem;border:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-sm);color:var(--accent)}.check{display:flex;align-items:center;gap:.4rem}.media-lede{max-width:52ch;margin:-.35rem 0 1rem;font-size:var(--fs-sm)}.media-toolbar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.media-drop{display:grid;justify-items:center;gap:.2rem;margin:0 0 1.15rem;padding:1.15rem 1rem;border:1px dashed var(--line);background:rgba(var(--accent-rgb),.04);cursor:pointer;text-align:center}.media-drop:hover,.media-drop.is-over{border-color:var(--accent);background:rgba(var(--accent-rgb),.08)}.media-drop strong{font-family:var(--mono);font-size:var(--fs-sm);color:var(--accent)}.media-empty{margin:.25rem 0 0}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(16rem,100%),1fr));gap:1rem;align-items:stretch}.media-card{min-width:0;display:grid;grid-template-rows:auto 1fr;background:linear-gradient(180deg,rgba(var(--accent-rgb),.05),transparent 40%),var(--bg-2);border:1px solid var(--line)}.media-card:hover{border-color:var(--accent)}.media-card__thumb{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--bg);border-bottom:1px solid var(--line)}.media-card__thumb img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;display:block}.media-card__meta{display:grid;align-content:start;gap:.35rem;min-width:0;padding:.75rem .85rem .85rem;font-size:var(--fs-xs)}.media-card__name,.media-card__path{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-card__path{color:var(--muted);font-size:.85em}.media-card .actions{flex-wrap:wrap;gap:.25rem;margin-top:.15rem}.editor__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.editor__head h1{margin:0;font-size:var(--fs-h2)}app-editor-actions{display:inline-flex;max-width:100%;margin-left:auto}.editor-actions{display:inline-flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:flex-end;max-width:100%}.editor-actions__cluster{display:inline-flex;align-items:stretch;gap:.15rem;padding:.18rem;background:var(--bg-2);border:1px solid var(--line);border-radius:8px}.editor-actions__btn{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;min-height:2.2rem;padding:.38rem .82rem;border-radius:6px;font-family:var(--mono);font-size:var(--fs-xs);font-weight:500;letter-spacing:.03em;line-height:1;background:transparent;border:1px solid transparent;color:var(--nav);text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.editor-actions__cluster .editor-actions__btn{background:transparent;border-color:transparent}a.editor-actions__btn:hover,button.editor-actions__btn:hover:not(:disabled){color:var(--accent);text-decoration:none}.editor-actions__cluster .editor-actions__btn:hover:not(:disabled){background:rgba(var(--accent-rgb),.1);border-color:transparent}.editor-actions__btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.editor-actions__btn .nav-icon{width:.95rem;height:.95rem}.editor-actions__btn--primary{background:var(--accent);border-color:var(--accent);color:var(--bg);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent),0 8px 18px rgba(var(--accent-rgb),.18)}.editor-actions__btn--primary:hover:not(:disabled){color:var(--bg);background:color-mix(in srgb,var(--accent) 86%,white);border-color:color-mix(in srgb,var(--accent) 86%,white)}.editor-actions__btn--primary .kbd{border-color:color-mix(in srgb,var(--bg) 32%,transparent);color:inherit;background:color-mix(in srgb,var(--bg) 16%,transparent)}.editor-actions__btn--danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 38%,var(--line));background:color-mix(in srgb,var(--danger) 7%,var(--bg-2))}.editor-actions__btn--danger:hover:not(:disabled){color:var(--danger);border-color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,var(--bg-2))}.editor-actions__btn--danger:focus-visible{outline-color:var(--danger)}.editor-actions__btn.is-on{color:var(--accent);background:rgba(var(--accent-rgb),.14)}@media(max-width:640px){.editor-actions__btn .kbd{display:none}}.editor__preview{min-width:0;border:1px solid var(--line);background:linear-gradient(180deg,rgba(var(--accent-rgb),.04),transparent 28%),var(--bg-2);padding:.85rem 1rem 1.25rem;position:sticky;top:4.25rem;max-height:calc(100vh - 5.5rem);overflow:auto}.editor__preview-bar{display:flex;align-items:center;margin:0 0 .85rem;padding-bottom:.55rem;border-bottom:1px solid var(--line)}.editor__preview-bar .kicker{margin:0}.editor.is-preview-off{grid-template-columns:1fr}.editor.is-preview-off .editor__preview{display:none}.compose{max-width:72rem}.token-field{position:relative}.token-field input{padding-right:2.5rem}.token-field__eye{position:absolute;right:.2rem;bottom:.28rem;width:2rem;height:2rem;display:grid;place-items:center;padding:0}.token-field__icon{width:1.05rem;height:1.05rem;display:block}.compose-help{margin:0;white-space:pre-wrap;font-family:var(--mono);font-size:var(--fs-xs)}.compose-results{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;margin-top:1.25rem}.compose-card{min-width:0;border:1px solid var(--line);background:var(--bg-2);padding:.85rem 1rem 1.1rem}.compose-card h2{margin:.2rem 0 .55rem}.compose-card .md{max-height:28rem;overflow:auto}.compose-card .btn{margin:.7rem 0 .9rem}@media(max-width:880px){.compose-results{grid-template-columns:minmax(0,1fr)}}.editor__more{border:1px solid var(--line);padding:.7rem .85rem;display:grid;gap:.7rem}.editor__more summary{cursor:pointer;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.md-field{display:grid;gap:.35rem}.md-field.is-drop textarea{border-color:var(--accent);background:rgba(var(--accent-rgb),.06)}.md-toolbar{display:flex;flex-wrap:wrap;gap:.15rem;align-items:center}.md-toolbar .ghost{font-family:var(--mono);font-size:var(--fs-xs)}.cover-field{display:grid;gap:.45rem;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.cover-field__preview,.cover-field__empty{border:1px dashed var(--line);padding:0;background:rgba(var(--accent-rgb),.04)}.cover-field__empty{padding:.75rem .85rem}.cover-field__preview{display:grid;gap:0;overflow:hidden;min-width:0}.cover-field__thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--bg);border-bottom:1px solid var(--line)}.cover-field__thumb img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;display:block}.cover-field__preview figcaption{display:grid;gap:.3rem;min-width:0;padding:.7rem .85rem .8rem}.cover-field__preview strong,.cover-field__preview code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cover-field__empty{display:grid;gap:.45rem}.cover-field__empty:hover{border-color:var(--accent)}.cv-portrait{display:flex;flex-wrap:wrap;align-items:center;gap:.85rem}.cv-portrait img{width:4.25rem;height:5.2rem;object-fit:cover;border-radius:12px;border:1px solid var(--line);background:var(--bg)}.cv-portrait__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.cv-files{display:flex;flex-wrap:wrap;gap:.45rem .9rem;margin:0;padding:0;list-style:none;font-family:var(--mono);font-size:var(--fs-sm)}.media-picker{position:fixed;inset:0;z-index:90;background:var(--overlay);display:grid;place-items:center;padding:1rem}.media-picker__panel{width:min(52rem,100%);max-height:min(80vh,100%);overflow:auto;background:var(--bg-2);border:1px solid var(--accent);box-shadow:var(--shadow);padding:1rem;display:grid;gap:.85rem}.media-picker__head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.media-picker__head h2{margin:0}.media-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));gap:.7rem}.media-picker__item{display:grid;grid-template-rows:auto 1fr;gap:.3rem;min-width:0;padding:0;text-align:left;background:transparent}.media-picker__thumb{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--bg)}.media-picker__item img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;display:block}.media-picker__item span{font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cv-picks{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.15rem}.cv-pick{display:inline-flex;align-items:center;gap:.6rem;padding:.42rem .75rem .42rem .45rem;border:1px solid var(--line);background:linear-gradient(180deg,rgba(var(--accent-rgb),.08),transparent 70%),var(--bg-2);color:var(--text);font-family:var(--mono);font-size:var(--fs-sm);text-decoration:none}.cv-pick:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.cv-pick__code,.cv-card__code{font-family:var(--mono);font-size:.68rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--bg);background:var(--accent);padding:.16rem .34rem;line-height:1}.cv-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16.5rem,100%),1fr));gap:.85rem;margin-top:2.5rem}.cv-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:1rem 1.15rem;padding:.85rem .95rem;border:1px solid var(--line);background:linear-gradient(180deg,rgba(var(--accent-rgb),.07),transparent 46%),var(--bg-2)}.cv-card__sheet{position:relative;width:4.25rem;height:5.5rem;padding:1.15rem .7rem .7rem;display:grid;align-content:start;gap:.38rem;border:1px solid var(--line);background:color-mix(in srgb,var(--bg-2) 62%,var(--text) 16%);box-shadow:5px 5px rgba(var(--accent-rgb),.1);cursor:pointer}.cv-card__sheet:hover{border-color:var(--accent);box-shadow:6px 6px rgba(var(--accent-rgb),.16)}.cv-card__fold{position:absolute;top:-1px;right:-1px;width:.85rem;height:.85rem;background:var(--bg);border-left:1px solid var(--line);border-bottom:1px solid var(--line)}.cv-card__rule{display:block;height:1px;background:var(--line)}.cv-card__rule--short{width:55%}.cv-card__meta h2{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:0;font-size:var(--fs-h3);letter-spacing:-.02em}.cv-card__meta p{margin:.15rem 0 .7rem;font-size:var(--fs-xs);font-family:var(--mono)}.cv-card__links{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem .85rem}.cv-card__link{padding:0;border:0;background:transparent;color:var(--accent);font-family:var(--mono);font-size:var(--fs-sm);text-decoration:none}.cv-card__link:hover{text-decoration:underline;border-color:transparent}.login-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem;position:relative}.login{width:min(440px,100%);display:grid;gap:0;border:1px solid var(--line);background:linear-gradient(180deg,rgba(var(--accent-rgb),.06),transparent 28%),var(--bg-2);box-shadow:var(--shadow)}.login__bar{display:flex;align-items:center;gap:.4rem;padding:.5rem .75rem;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.login__bar .dots{display:flex;gap:.3rem}.login__bar .dots span{width:8px;height:8px;border-radius:99px;background:var(--dot)}.login__bar .dots span:nth-child(1){background:var(--danger)}.login__bar .dots span:nth-child(2){background:var(--amber)}.login__bar .dots span:nth-child(3){background:var(--accent)}.login__bar em{margin-left:auto;font-style:normal}.login__body{padding:1.35rem 1.25rem 1.45rem;display:grid;gap:1rem}.login__body h1{margin:0;font-size:var(--fs-h2)}.login__body .lede{margin:0;font-size:var(--fs-sm);color:var(--muted);max-width:none}.login__intro{display:grid;gap:.4rem}.login__intro--login{text-align:center}.login__intro--login h1{color:var(--accent)}.login form{display:grid;gap:.8rem}.login input{width:100%;padding:.6rem .7rem;font-family:var(--mono);font-size:var(--fs-sm);outline:none;transition:border-color .15s ease}.login input:focus{border-color:var(--accent)}.login__field{position:relative}.login__field input{padding-right:3.25rem}.login__toggle{position:absolute;right:.35rem;bottom:.35rem;font-size:var(--fs-xs);font-family:var(--mono)}.login__status{min-height:1.25rem;margin:0;font-family:var(--mono);font-size:var(--fs-xs)}.login__actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin-top:.15rem}.login__actions .btn-primary{flex:1;justify-content:center;background:rgba(var(--accent-rgb),.12);border-color:var(--accent);color:var(--accent);font-family:var(--mono);font-size:var(--fs-sm);padding:.6rem .9rem}.login__actions .btn-primary:hover:not(:disabled){background:rgba(var(--accent-rgb),.2);text-decoration:none}.login__footer{display:flex;justify-content:space-between;gap:.75rem;padding-top:.4rem;border-top:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.login__footer a{color:var(--muted)}.login__footer a:hover{color:var(--accent);text-decoration:none}.account-page{display:grid;place-items:center;min-height:min(70vh,44rem);padding:.5rem 0 2rem}.login__divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;margin:0;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.login__divider:before,.login__divider:after{content:"";height:1px;background:var(--line)}.login__hint{margin:0;font-family:var(--mono);font-size:var(--fs-xs)}.google-continue-wrap{display:grid;gap:.55rem}.google-continue-frame{position:relative}.google-continue-frame:hover .google-continue{border-color:var(--accent);background:rgba(var(--accent-rgb),.08);box-shadow:0 0 0 1px rgba(var(--accent-rgb),.22)}.google-continue-gis{min-height:40px}.google-continue-gis.is-disabled{pointer-events:none;opacity:.55}.google-continue{display:flex;align-items:center;gap:.85rem;width:100%;min-height:3rem;padding:.55rem .85rem;border:1px solid var(--line);background:var(--bg);color:var(--text);text-align:left;cursor:pointer}.google-continue:disabled{opacity:.55;cursor:not-allowed}.google-continue__mark{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--line);background:#fff;flex:0 0 auto}.google-continue__mark svg{width:1.05rem;height:1.05rem;display:block}.google-continue__copy{display:grid;gap:.1rem;min-width:0}.google-continue__copy strong{font-family:var(--mono);font-size:var(--fs-sm);font-weight:600;letter-spacing:.01em}.google-continue__copy em{font-style:normal;font-family:var(--mono);font-size:.68rem;color:var(--muted)}.google-continue__copy--compact{gap:0}.google-continue__setup{margin:0;display:grid;gap:.25rem;font-family:var(--mono);font-size:.68rem;color:var(--muted);line-height:1.45}.google-continue__setup code{display:block;color:var(--accent);word-break:break-all}.google-continue__setup a{color:var(--muted)}.google-continue__setup a:hover{color:var(--accent)}.google-callback{min-height:100vh;display:grid;place-items:center;font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted);padding:1.5rem}.account-chip{display:inline-grid;place-items:center;min-width:1.7rem;height:1.7rem;padding:0 .35rem;border:1px solid var(--line);border-radius:99px;font-family:var(--mono);font-size:var(--fs-xs);color:var(--accent);background:rgba(var(--accent-rgb),.08)}a.account-chip{text-decoration:none}a.account-chip:hover{border-color:var(--accent);text-decoration:none}.profile{display:grid;gap:1.35rem;width:min(100%,46rem);min-width:0;margin-inline:auto}.profile__id{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem 1rem;padding-bottom:1.15rem;border-bottom:1px solid var(--line)}.profile__avatar{display:grid;place-items:center;width:3rem;height:3rem;overflow:hidden;border-radius:99px;border:1px solid var(--line);background:rgba(var(--accent-rgb),.08);font-family:var(--mono);font-size:var(--fs-sm);color:var(--accent)}.profile__avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile__ident{display:grid;gap:.1rem;min-width:0;font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted)}.profile__ident>*{min-width:0;overflow-wrap:anywhere}.profile__name{font-family:var(--sans);font-size:var(--fs-h3);font-weight:600;letter-spacing:-.02em;color:var(--text)}.profile__id .chips{margin:0}.profile__chip--admin{color:var(--amber);border-color:rgba(var(--amber-rgb),.4)}.profile__form{display:grid;gap:1.15rem;min-width:0}.profile__form label{align-content:start}.profile__lede{margin:0;font-size:var(--fs-sm)}.profile input,.profile select{width:100%;max-width:100%;min-width:0;padding:.55rem .7rem;font-family:var(--mono);font-size:var(--fs-sm);outline:none;transition:border-color .15s ease}.profile input:focus,.profile select:focus{border-color:var(--accent)}.profile input:disabled{color:var(--muted)}.profile__hint{font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.profile__group{display:grid;align-content:start;gap:.35rem;min-width:0}.profile__group-label{font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.profile__picks{display:flex;flex-wrap:wrap;gap:.4rem}.profile__pick{position:relative;display:inline-flex;gap:0}.profile__pick input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.profile__pick .chip{padding:.35rem .7rem;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.profile__pick:hover .chip{border-color:var(--accent);color:var(--text)}.profile__pick input:checked+.chip{color:var(--bg);background:var(--accent);border-color:var(--accent)}.profile__pick input:focus-visible+.chip{outline:2px solid var(--accent);outline-offset:2px}.profile__pick input:disabled{cursor:not-allowed}.profile__pick input:disabled+.chip{opacity:.55}.profile__note{margin:0;padding-left:.8rem;border-left:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-xs);line-height:1.65;color:var(--muted)}.profile__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .8rem;padding-top:1.1rem;border-top:1px solid var(--line)}.profile__status{margin:0;font-family:var(--mono);font-size:var(--fs-xs);color:var(--muted)}.profile__buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-left:auto}.profile__discard{color:var(--muted)}.profile__discard:hover:not(:disabled){color:var(--accent)}.profile__save{background:rgba(var(--accent-rgb),.12);border-color:var(--accent);color:var(--accent)}.profile__save:hover:not(:disabled){background:rgba(var(--accent-rgb),.2)}.profile__boot{margin:2.25rem 0;font-family:var(--mono);font-size:var(--fs-sm);color:var(--muted)}@media(max-width:560px){.profile__id{grid-template-columns:auto minmax(0,1fr)}.profile__id .chips{grid-column:1/-1}}.comments{margin-top:2.75rem;padding-top:1.5rem;border-top:1px solid var(--line);display:grid;gap:1.1rem;max-width:62ch}.comments__head{display:flex;align-items:baseline;gap:.7rem}.comments__head h2{margin:0;font-size:var(--fs-h3)}.comments__empty{margin:0}.comments__list{list-style:none;margin:0;padding:0;display:grid;gap:1rem}.comment{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:start}.comment__avatar{width:2.4rem;height:2.4rem;border-radius:99px;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;font-family:var(--mono);font-size:var(--fs-xs);color:var(--accent);background:rgba(var(--accent-rgb),.08)}.comment__avatar img{width:100%;height:100%;object-fit:cover}.comment__body p{margin:.35rem 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.comment__meta{display:flex;flex-wrap:wrap;gap:.55rem .85rem;align-items:baseline}.comment__meta strong{font-weight:600}.comment__delete{margin-left:auto;color:var(--muted)}.comments__form{display:grid;gap:.65rem}.comments__form textarea{width:100%;min-height:7rem;padding:.7rem .8rem;resize:vertical;outline:none}.comments__form textarea:focus{border-color:var(--accent)}.comments__actions{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.comments__actions .btn-primary{background:rgba(var(--accent-rgb),.12);border-color:var(--accent);color:var(--accent);font-family:var(--mono);font-size:var(--fs-sm)}.comments__gate{display:grid;gap:.45rem;padding:1rem 1.1rem;border:1px dashed var(--line);background:rgba(var(--accent-rgb),.04)}.comments__gate p{margin:0}.comments__gate-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.55rem}.comments__gate-actions .btn-primary{display:inline-flex;align-items:center;background:rgba(var(--accent-rgb),.12);border:1px solid var(--accent);color:var(--accent);font-family:var(--mono);font-size:var(--fs-sm);padding:.5rem .85rem;text-decoration:none}.comments__gate-actions .btn{text-decoration:none}@media(max-width:1120px){.md h2,.md h3{scroll-margin-top:8.5rem}.topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"prompt meta" "links links";align-items:center;column-gap:.5rem;row-gap:.2rem;padding-block:.55rem .35rem}.topbar .prompt{grid-area:prompt;max-width:100%;width:auto;justify-self:start;justify-content:flex-start}.topbar__links{grid-area:links;justify-self:stretch;justify-content:space-around;flex-wrap:nowrap;gap:0;padding-top:.15rem}.topbar__links a{flex:1 1 0;justify-content:center;padding:.45rem .4rem}.topbar__meta{grid-area:meta;justify-self:end}.prompt__leaf{max-width:none}}@media(max-width:720px){.prompt__trail>:not(:last-child){display:none}}@media(max-width:560px){.topbar__links a span{display:none}.topbar__links a{padding:.5rem .35rem}.topbar__links .nav-icon{width:1.15em;height:1.15em}.topbar__meta a span,.topbar__meta .ghost:not(.theme-toggle):not(.palette-toggle) span{display:none}}@media(max-width:880px){.reading,.editor,.home-grid,.row{grid-template-columns:minmax(0,1fr)}.row--thumb{grid-template-columns:3.2rem minmax(0,1fr);align-items:center}.row--thumb .row__cover{grid-row:1/span 3;align-self:center}.editor__preview{position:static;max-height:none}.reading__body{order:-1}.reading-side{position:static;max-height:none;overflow:visible;order:2}.reading--article .reading-tags{order:1}.reading--article .reading-siblings{order:2}.reading--article .reading__body{order:0}.reading--article .sibling__link{display:none}.reading--article .sibling__toggle{display:grid}.sibling.is-current .sibling-headings{display:none}.sibling.is-open .sibling-headings{display:grid;margin:.2rem 0 .75rem .85rem;padding:.55rem .75rem;border-left-width:3px;background:rgba(var(--layer-architecture-rgb),.1)}.reading aside{position:static;max-height:none;overflow:visible;padding-top:.85rem;margin-top:.35rem;border-top:1px solid var(--line);border-bottom:0}.home-intro{position:static;padding-bottom:.5rem;border-bottom:1px solid var(--line)}.home-intro .lede{max-width:none}.home-intro__links{grid-auto-flow:column;grid-auto-columns:max-content;justify-content:start}.row>span:last-child{display:none}.row-line--meta{grid-template-columns:minmax(0,1fr) auto}.row-line--meta .row-line__meta{grid-column:1/-1;grid-row:2;padding-bottom:.75rem}}@media(min-width:1400px){:root{--fs-base: clamp(1.12rem, 1rem + .35vw, 1.25rem);--fs-nav: clamp(1.05rem, .98rem + .25vw, 1.18rem)}}.term-code .hljs{background:transparent}.login-page__theme{position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;gap:.35rem;font-family:var(--mono);font-size:var(--fs-xs)}[data-theme=light] .hljs{color:#24292e;background:transparent}[data-theme=light] .hljs-doctag,[data-theme=light] .hljs-keyword,[data-theme=light] .hljs-meta .hljs-keyword,[data-theme=light] .hljs-template-tag,[data-theme=light] .hljs-template-variable,[data-theme=light] .hljs-type,[data-theme=light] .hljs-variable.language_{color:#d73a49}[data-theme=light] .hljs-title,[data-theme=light] .hljs-title.class_,[data-theme=light] .hljs-title.class_.inherited__,[data-theme=light] .hljs-title.function_{color:#6f42c1}[data-theme=light] .hljs-attr,[data-theme=light] .hljs-attribute,[data-theme=light] .hljs-literal,[data-theme=light] .hljs-meta,[data-theme=light] .hljs-number,[data-theme=light] .hljs-operator,[data-theme=light] .hljs-variable,[data-theme=light] .hljs-selector-attr,[data-theme=light] .hljs-selector-class,[data-theme=light] .hljs-selector-id{color:#005cc5}[data-theme=light] .hljs-regexp,[data-theme=light] .hljs-string,[data-theme=light] .hljs-meta .hljs-string{color:#032f62}[data-theme=light] .hljs-built_in,[data-theme=light] .hljs-symbol{color:#e36209}[data-theme=light] .hljs-comment,[data-theme=light] .hljs-code,[data-theme=light] .hljs-formula{color:#6a737d}[data-theme=light] .hljs-name,[data-theme=light] .hljs-quote,[data-theme=light] .hljs-selector-tag,[data-theme=light] .hljs-selector-pseudo{color:#22863a}[data-theme=light] .hljs-subst{color:#24292e}[data-theme=light] .hljs-section{color:#005cc5}[data-theme=light] .hljs-bullet{color:#735c0f}[data-theme=light] .hljs-emphasis,[data-theme=light] .hljs-strong{color:#24292e}[data-theme=light] .hljs-addition{color:#22863a;background-color:#f0fff4}[data-theme=light] .hljs-deletion{color:#b31d28;background-color:#ffeef0}
