*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--text-primary: #000000;--text-secondary: #5a5a5a;--border-color: #e4e4e4;--card-bg: #ffffff;--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: var(--font-body);--font-mono: "JetBrains Mono", "Courier New", monospace}[data-theme=dark]{--bg-primary: #000000;--bg-secondary: #0a0a0a;--text-primary: #ffffff;--text-secondary: #9a9a9a;--border-color: #222222;--card-bg: #0a0a0a;--shadow-lg: 0 10px 15px -3px rgba(255, 255, 255, .1), 0 4px 6px -2px rgba(255, 255, 255, .05)}::selection{background:var(--text-primary);color:var(--bg-primary)}body{font-family:var(--font-body);line-height:1.6;color:var(--text-primary);background:var(--bg-primary);transition:background-color .2s ease,color .2s ease}a{color:inherit}:focus-visible{outline:2px solid var(--text-primary);outline-offset:3px}.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}.route-loading{min-height:100svh;display:grid;place-items:center;color:var(--text-secondary);font:.78rem/1 var(--font-mono)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex-shrink:0;background:transparent;border:1px solid var(--border-color);border-radius:999px;color:var(--text-secondary);cursor:pointer;transition:color .2s ease,border-color .2s ease}.icon-btn:hover{color:var(--text-primary);border-color:var(--text-primary)}.home{--accent: 128 128 128;width:min(100% - 40px,540px);margin:0 auto;padding:88px 0 140px;font-size:15.5px;line-height:1.7;text-transform:lowercase}.home-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.home-head h1{font:500 1.9rem/1.1 EB Garamond,Georgia,serif;letter-spacing:-.01em}.home-head .icon-btn{width:32px;height:32px;border-color:transparent}.home p+p{margin-top:12px}.home a{padding:0 1px;color:inherit;text-decoration:none;background-image:linear-gradient(rgb(var(--accent) / .3),rgb(var(--accent) / .3));background-repeat:no-repeat;background-position:0 100%;background-size:100% .4em;transition:background-size .25s ease}.home a:hover,.home a:focus-visible{background-size:100% 100%}[data-theme=dark] .home a{background-image:linear-gradient(rgb(var(--accent) / .45),rgb(var(--accent) / .45))}.home-section{margin-top:48px}.home a.uiuc{background-image:linear-gradient(90deg,#ff5f0573 50%,#1d58a773 50%)}[data-theme=dark] .home a.uiuc{background-image:linear-gradient(90deg,#ff5f0599 50%,#3278dc99 50%)}@keyframes home-rise{0%{opacity:0;transform:translateY(14px)}}.home-head,.home-intro{animation:home-rise .6s ease both}.home-intro{animation-delay:.12s}@supports (animation-timeline: view()){.home-section{animation:home-rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}.home-section h2{margin-bottom:10px;color:var(--text-secondary);font:500 12px/1 var(--font-mono);letter-spacing:.04em}.home-section h2 span{color:rgb(var(--accent))}.home-meta{color:var(--text-secondary)}.home-list,.home-index{list-style:none;margin:4px 0 12px}.home-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 16px;padding:4px 0}.home-index li{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:baseline;padding:4px 0}.home-index a{justify-self:start}.home-index .home-meta{font:12px var(--font-mono)}.home-links{display:flex;flex-wrap:wrap;gap:4px 18px}.home code,.home kbd{padding:1px 5px;border:1px solid var(--border-color);border-radius:4px;font:.82em var(--font-mono)}.home .home-foot a{background:none}.home-foot{margin-top:64px;font-size:13px;text-transform:none}.footer-credit{color:var(--text-secondary)}.term-dock{position:fixed;right:20px;bottom:20px;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.term-toggle{display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 12px;border:1px solid #262626;border-radius:999px;background:#0b0b0b;color:#d6d6d6;font:500 .75rem/1 var(--font-mono);cursor:pointer;box-shadow:0 6px 24px #0000002e;transition:border-color .2s ease,color .2s ease}[data-theme=dark] .term-toggle,[data-theme=dark] .term{border-color:#3a3a3a}.term-toggle:hover{border-color:#4a4a4a;color:#fff}.term-toggle kbd{padding:2px 6px;border:1px solid #3a3a3a;border-radius:4px;color:#b0b0b0;font:inherit;font-size:.68rem}.term{width:min(380px,calc(100vw - 40px));transform-origin:bottom right;opacity:0;visibility:hidden;transform:translateY(12px) scale(.96);transition:opacity .22s ease,transform .22s ease,visibility 0s linear .22s;display:flex;flex-direction:column;overflow:hidden;border:1px solid #262626;border-radius:12px;background:#0b0b0b;color:#d6d6d6;font:.78rem/1.6 var(--font-mono);box-shadow:0 18px 48px #00000052}.term.is-open{opacity:1;visibility:visible;transform:none;transition:opacity .22s ease,transform .28s cubic-bezier(.2,.9,.3,1.2),visibility 0s}.term-line{animation:term-line-in .18s ease both}@keyframes term-line-in{0%{opacity:0;transform:translateY(3px)}}.term-toggle[aria-expanded=true]{border-color:#4a4a4a;color:#fff}.term ::selection{background:#e6e6e6;color:#0b0b0b}.term-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 8px 8px 14px;border-bottom:1px solid #1c1c1c;color:#6f6f6f;font-size:.7rem}.term-close{width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:#8a8a8a;font-size:1rem;line-height:1;cursor:pointer}.term-close:hover{background:#1c1c1c;color:#fff}.term-body{height:min(260px,45svh);overflow-y:auto;padding:12px 14px 4px;scrollbar-width:thin;scrollbar-color:#333 transparent}.term-line{white-space:pre-wrap;overflow-wrap:anywhere}.term-line--input{color:#fff}.term-line--input:before{content:"› ";color:#ff5f05}.term-line--muted{color:#7d7d7d}.term-line--error{color:#e58c8c}.term-input-row{display:flex;align-items:center;gap:8px;padding:8px 14px 12px}.term-prompt{color:#ff5f05}.term-input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#fff;font:inherit;font-size:16px;caret-color:#fff;caret-shape:block}@media(min-width:641px){.term-input{font-size:inherit}}@media(max-width:640px){.home{padding-top:48px}.home-index li{grid-template-columns:36px minmax(0,1fr)}.home-list li{flex-direction:column}.home-index li>.home-meta:last-child{grid-column:2}.term-dock{right:12px;bottom:12px;left:12px}.term{width:100%}.term-toggle kbd{display:none}}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-new(root){animation:theme-reveal .55s cubic-bezier(.4,0,.2,1)}@keyframes theme-reveal{0%{clip-path:circle(0 at var(--reveal-x, 50%) var(--reveal-y, 50%))}to{clip-path:circle(var(--reveal-r, 150%) at var(--reveal-x, 50%) var(--reveal-y, 50%))}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.mks-credit{--mks-credit-gap: .42em;--mks-credit-mark-height: 1.3em;--mks-credit-mark-offset-y: -.28em;--mks-credit-muted-opacity: .72;display:inline-flex;align-items:center;gap:var(--mks-credit-gap);color:inherit;font:inherit;white-space:nowrap}.mks-credit__label{opacity:var(--mks-credit-muted-opacity)}.mks-credit__link{display:inline-flex;align-items:center;color:inherit;opacity:var(--mks-credit-muted-opacity);text-decoration:none;transition:opacity .16s ease,transform .16s ease}.mks-credit__link:hover,.mks-credit__link:focus-visible{opacity:1;transform:translateY(-.03em)}.mks-credit__link:focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:0 2px 0 currentColor}.mks-credit__mark{display:block;width:auto;height:var(--mks-credit-mark-height);overflow:visible;transform:translateY(var(--mks-credit-mark-offset-y))}@media(prefers-reduced-motion:reduce){.mks-credit__link{transition:none}}.coming-soon-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:radial-gradient(circle at top left,color-mix(in srgb,var(--text-primary) 12%,transparent),transparent 30%),radial-gradient(circle at bottom right,color-mix(in srgb,var(--text-primary) 8%,transparent),transparent 32%),linear-gradient(180deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);overflow:hidden}.coming-soon-backdrop{position:absolute;inset:0;background-image:linear-gradient(color-mix(in srgb,var(--text-primary) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--text-primary) 8%,transparent) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(circle at center,black 35%,transparent 85%);mask-image:radial-gradient(circle at center,black 35%,transparent 85%);pointer-events:none}.coming-soon-panel{position:relative;z-index:1;width:min(680px,100%);padding:3rem;border:1px solid var(--border-color);border-radius:28px;background:color-mix(in srgb,var(--card-bg) 92%,transparent);box-shadow:var(--shadow-lg);text-align:center}.coming-soon-kicker{font-family:var(--font-mono);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:1rem}.coming-soon-title{font-family:var(--font-heading);font-size:clamp(2.5rem,7vw,4.5rem);line-height:.95;letter-spacing:-.04em;color:var(--text-primary);margin-bottom:1rem}.coming-soon-copy{max-width:34rem;margin:0 auto;font-size:1.05rem;line-height:1.8;color:var(--text-secondary)}.coming-soon-status{display:inline-flex;align-items:center;gap:.65rem;margin-top:1.5rem;padding:.55rem .9rem;border:1px solid var(--border-color);border-radius:999px;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);background:color-mix(in srgb,var(--bg-secondary) 76%,transparent)}.coming-soon-dot{width:.55rem;height:.55rem;border-radius:999px;background:var(--text-primary)}.coming-soon-actions{margin-top:2rem}.coming-soon-link{display:inline-flex;align-items:center;justify-content:center;min-width:220px;padding:.95rem 1.4rem;border:1px solid var(--text-primary);border-radius:999px;background:var(--text-primary);color:var(--bg-primary);text-decoration:none;font-family:var(--font-mono);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.coming-soon-link:hover{background:transparent;color:var(--text-primary)}@media(max-width:640px){.coming-soon-page{padding:1.25rem}.coming-soon-panel{padding:2.25rem 1.5rem;border-radius:22px}.coming-soon-copy{font-size:.98rem}.coming-soon-link{width:100%;min-width:0}}
