@import "https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap";:root{--bg:#f5f5f0;--text:#000;--text-muted:#555;--border:#e5e5e5;--blockquote-border:#ddd;--pre-bg:#ebebeb;--pre-border:#e0e0e0;--code-bg:#e8e8e8;--table-header-bg:#f0f0f0;--table-row-alt-bg:#f5f5f5;--link:#0066cc}@media (prefers-color-scheme:dark){:root{--bg:#121212;--text:#fff;--text-muted:#b0b0b0;--border:#333;--blockquote-border:#444;--pre-bg:#1e1e1e;--pre-border:#333;--code-bg:#2a2a2a;--table-header-bg:#1e1e1e;--table-row-alt-bg:#1a1a1a;--link:#6eb3f7}}*{box-sizing:border-box}html{color-scheme:light dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{margin:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);font-family:Source Sans\ 3,system-ui,sans-serif;font-size:clamp(1rem,2.5vw + 1rem,1.125rem);line-height:1.7;color:var(--text);background:var(--bg);-webkit-tap-highlight-color:transparent}.root-hero{display:flex;align-items:center;justify-content:center;min-height:100dvh;min-height:100vh;padding:clamp(1rem,4vw,1.5rem);padding-inline:max(clamp(1rem,4vw,1.5rem),env(safe-area-inset-left))}.root-hero__title{font-size:clamp(2rem,8vw,4rem);font-weight:700;letter-spacing:-.03em;margin:0;animation:root-hero-fade .8s ease-out,root-hero-breathe 3s ease-in-out .8s infinite alternate}@keyframes root-hero-fade{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes root-hero-breathe{0%{letter-spacing:-.03em}to{letter-spacing:.02em}}.page{max-width:42rem;margin:0 auto;padding:clamp(1.5rem,5vw,3rem) clamp(1rem,4vw,1.5rem);padding-inline:max(clamp(1rem,4vw,1.5rem),env(safe-area-inset-left)) max(clamp(1rem,4vw,1.5rem),env(safe-area-inset-right))}.page h1{font-size:clamp(1.5rem,5vw + 1rem,2.25rem);font-weight:700;line-height:1.25;margin:0 0 1.5rem;letter-spacing:-.02em}.page h2{font-size:clamp(1.25rem,3vw + .75rem,1.5rem);font-weight:600;margin:2.5rem 0 .75rem;padding-bottom:.25rem;border-bottom:1px solid var(--border)}.page h3{font-size:clamp(1.125rem,2vw + .5rem,1.25rem);font-weight:600;margin:2rem 0 .5rem}.page h4,.page h5,.page h6{font-size:1.0625rem;font-weight:600;margin:1.5rem 0 .5rem}.page p{margin:0 0 1rem}.page p:last-child{margin-bottom:0}.page ol,.page ul{margin:0 0 1rem;padding-left:clamp(1.25rem,4vw,1.75rem)}.page li{margin-bottom:.35rem}.page li>ol,.page li>ul{margin:.35rem 0 0}.page blockquote{margin:1.5rem 0;padding:.5rem 0 .5rem clamp(.75rem,3vw,1.25rem);border-left:4px solid var(--blockquote-border);color:var(--text-muted);font-style:italic}.page blockquote p:last-child{margin-bottom:0}.page pre{margin:1.5rem 0;padding:clamp(.75rem,3vw,1.25rem) clamp(1rem,3vw,1.5rem);overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:clamp(.8125rem,2vw + .5rem,.875rem);line-height:1.6;background:var(--pre-bg);border-radius:6px;border:1px solid var(--pre-border)}.page code{font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:.9em;background:var(--code-bg);padding:.15em .4em;border-radius:4px}.page pre code{background:none;padding:0;font-size:1em}.page hr{margin:2.5rem 0;border:none;border-top:1px solid var(--border)}.page .table-wrapper{margin:1.5rem 0;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:6px;border:1px solid var(--border)}.page table{width:100%;min-width:20rem;border-collapse:collapse;font-size:clamp(.875rem,2vw + .5rem,.9375rem)}.page td,.page th{padding:.5rem clamp(.5rem,2vw,.75rem);text-align:left;border:1px solid var(--border)}.page th{font-weight:600;background:var(--table-header-bg)}.page tr:nth-child(2n) td{background:var(--table-row-alt-bg)}.page a{color:var(--link);text-decoration:none;padding:.15em 0}.page a:hover{text-decoration:underline}@media (hover:none){.page a:active{opacity:.8}}.page img{max-width:100%;height:auto;border-radius:4px}.page strong{font-weight:600}.page em{font-style:italic}.page del{text-decoration:line-through}.page input[type=checkbox]{margin-right:.5rem}.page .task-list-item{list-style:none;margin-left:calc(-1 * clamp(1.25rem, 4vw, 1.75rem))}.page .task-list-item input{vertical-align:middle;min-width:1.125rem;min-height:1.125rem}