@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-ext-wght-normal.CcLUaPy7.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-wght-normal.DLoelf7F.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-ext-wght-normal.d45eAU9y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-cyrillic-wght-normal.BAAhND-U.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-greek-wght-normal.CmyJS8uq.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-vietnamese-wght-normal.Dg1JeJN0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-ext-wght-normal.CIII54If.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/_astro/ibm-plex-sans-latin-wght-normal.IvpUvPa2.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@property --bg{syntax:"<color>";inherits:true;initial-value:#eceff4}@property --surface{syntax:"<color>";inherits:true;initial-value:#e5e9f0}@property --surface-2{syntax:"<color>";inherits:true;initial-value:#d8dee9}@property --card{syntax:"<color>";inherits:true;initial-value:#f5f7fa}@property --text{syntax:"<color>";inherits:true;initial-value:#2e3440}@property --muted{syntax:"<color>";inherits:true;initial-value:#4c566a}@property --hairline{syntax:"<color>";inherits:true;initial-value:#2e34401a}@property --hairline-strong{syntax:"<color>";inherits:true;initial-value:#2e344038}@property --jade{syntax:"<color>";inherits:true;initial-value:#8fb07a}@property --jade-ink{syntax:"<color>";inherits:true;initial-value:#4a7148}@property --frost{syntax:"<color>";inherits:true;initial-value:#81a1c1}@property --frost-ink{syntax:"<color>";inherits:true;initial-value:#3b6a8c}@property --gold{syntax:"<color>";inherits:true;initial-value:#e3bc6c}@property --gold-ink{syntax:"<color>";inherits:true;initial-value:#8a6420}@property --peach{syntax:"<color>";inherits:true;initial-value:#d08770}@property --peach-ink{syntax:"<color>";inherits:true;initial-value:#a0523a}@property --plum{syntax:"<color>";inherits:true;initial-value:#b48ead}@property --plum-ink{syntax:"<color>";inherits:true;initial-value:#7f5a7a}@property --nav-bg{syntax:"<color>";inherits:true;initial-value:#eceff4b8}@property --scroll-thumb{syntax:"<color>";inherits:true;initial-value:#c4cbd7}@property --chat-head{syntax:"<color>";inherits:true;initial-value:#97718f}@property --chat-head-ink{syntax:"<color>";inherits:true;initial-value:#fff}@property --chat-a-bg{syntax:"<color>";inherits:true;initial-value:#e5e9f0}@property --chat-q-bg{syntax:"<color>";inherits:true;initial-value:#7f5a7a}@property --chat-q-ink{syntax:"<color>";inherits:true;initial-value:#fff}@property --on-primary{syntax:"<color>";inherits:true;initial-value:#f5f7fa}@property --more-fill{syntax:"<percentage>";inherits:true;initial-value:100%}:root{--more-fill:100%;--on-primary:#f5f7fa;--chat-head:color-mix(in srgb, var(--plum) 45%, var(--plum-ink));--chat-head-ink:#fff;--chat-a-bg:var(--surface);--chat-q-bg:var(--plum-ink);--chat-q-ink:#fff;--bg:#eceff4;--surface:#e5e9f0;--surface-2:#d8dee9;--card:#f5f7fa;--text:#2e3440;--muted:#4c566a;--hairline:#2e34401a;--hairline-strong:#2e344038;--jade:#8fb07a;--jade-ink:#4a7148;--frost:#81a1c1;--frost-ink:#3b6a8c;--gold:#e3bc6c;--gold-ink:#8a6420;--peach:#d08770;--peach-ink:#a0523a;--plum:#b48ead;--plum-ink:#7f5a7a;--nav-bg:#eceff4b8;--scroll-thumb:#c4cbd7;--waves-alpha:.32;--shadow:0 1px 2px #2e34400d, 0 10px 30px #2e344012;--shadow-hover:0 2px 4px #2e34400f, 0 18px 40px #2e34401f;--font-display:"Bricolage Grotesque Variable", -apple-system, BlinkMacSystemFont, sans-serif;--font:"IBM Plex Sans Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius:8px;--page:62rem;--measure:38rem;--gutter:clamp(1rem, 5vw, 2rem);--ease:cubic-bezier(.25, .1, .25, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--theme-ease:cubic-bezier(.4, 0, .2, 1);color-scheme:light}:root[data-theme=dark]{--more-fill:0%;--on-primary:#2e3440;--chat-head:color-mix(in srgb, var(--plum) 60%, #3b2f45);--chat-head-ink:#eceff4;--chat-a-bg:color-mix(in srgb, var(--plum) 14%, var(--surface-2));--chat-q-bg:var(--plum);--chat-q-ink:#2e3440;--bg:#343b48;--surface:#3f4757;--surface-2:#4a5367;--card:#3b4352;--text:#eceff4;--muted:#bac2cf;--hairline:#eceff41a;--hairline-strong:#eceff438;--jade:#a3be8c;--jade-ink:#a3be8c;--frost:#88c0d0;--frost-ink:#88c0d0;--gold:#ebcb8b;--gold-ink:#ebcb8b;--peach:#d08770;--peach-ink:#e0a28f;--plum:#b48ead;--plum-ink:#c9a7c3;--nav-bg:#343b48b8;--scroll-thumb:#5b6579;--waves-alpha:.36;--shadow:0 1px 2px #0000001f, 0 10px 30px #00000029;--shadow-hover:0 2px 4px #00000029, 0 18px 40px #0000003d;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{background:var(--bg);scrollbar-color:var(--scroll-thumb) var(--bg);-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:4.5rem;font-size:clamp(100%,11.7px + .286vw,122%)}body{color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background:0 0;margin:0;font-size:1.0625rem;line-height:1.6;overflow-x:hidden}::selection{background:color-mix(in srgb, var(--jade) 35%, transparent);color:var(--text)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin:0;font-weight:600;line-height:1.1}p,li{text-wrap:pretty}p{margin:0 0 1em}img{max-width:100%;height:auto}.icon{flex-shrink:0}time,.tabular{font-variant-numeric:tabular-nums}a{color:var(--jade-ink);transition:background-size .35s var(--ease-out), color .2s var(--ease);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;text-decoration:none}a:hover{background-size:100% 1px}:focus-visible{outline:2px solid var(--frost);outline-offset:3px;border-radius:6px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--text);color:var(--bg);border-radius:999px;padding:.5rem .9rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:none}.wrap{width:100%;max-width:calc(var(--page) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.wrap--narrow{max-width:calc(var(--measure) + 4rem + var(--gutter) * 2)}.progress{z-index:60;pointer-events:none;--p:0;height:2px;position:fixed;inset:0 0 auto}.progress__fill{height:100%;width:calc(var(--p) * 100%);background:var(--jade-ink)}.waves{z-index:-1;pointer-events:none;width:0;height:0;position:fixed;top:0;right:0}.nav{z-index:50;transition:background-color .3s var(--ease), border-color .3s var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}.nav.is-scrolled{background:var(--nav-bg);border-bottom-color:var(--hairline);backdrop-filter:saturate(180%)blur(20px)}.nav__inner{align-items:center;gap:1.25rem;height:3.75rem;display:flex}.nav__name{color:var(--text);font-family:var(--font-display);letter-spacing:-.015em;background:0 0;align-items:center;gap:.55rem;margin-right:auto;font-size:1rem;font-weight:600;display:inline-flex}.nav__mark{width:1.9rem;height:1.425rem;margin-right:-.15rem;overflow:visible}.nav__mark path{fill:none;stroke:var(--jade-ink);stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round}.nav__links{gap:1.35rem;margin:0;padding:0;font-size:.875rem;font-weight:500;list-style:none;display:flex}.nav__links a{color:var(--muted);background:0 0}.nav__links a:hover,.nav__links a[aria-current=true]{color:var(--jade-ink)}.nav__name{white-space:nowrap}@media (width<=34rem){.nav__inner{gap:.5rem}.nav__links{display:none}.nav__mark{width:1.6rem;height:1.2rem}}.menu{display:none;position:relative}.menu__button{border:1px solid var(--hairline-strong);border-radius:var(--radius);color:var(--text);font:inherit;font-family:var(--font-mono);cursor:pointer;background:0 0;align-items:center;gap:.3rem;padding:.4rem .7rem;font-size:.8125rem;display:inline-flex}.menu__button .icon{transition:transform .3s var(--ease-out)}.menu.is-open .menu__button .icon{transform:rotate(180deg)}.menu__list{z-index:60;border:1px solid var(--hairline-strong);border-radius:var(--radius);background:var(--card);min-width:12rem;box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transition:opacity .2s var(--ease), transform .25s var(--ease-out), visibility 0s linear .25s;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .6rem);right:0;transform:translateY(-.35rem)}.menu.is-open .menu__list{opacity:1;visibility:visible;transition:opacity .2s var(--ease), transform .25s var(--ease-out), visibility 0s;transform:none}.menu__list a{border-radius:calc(var(--radius) - 2px);color:var(--text);background:0 0;align-items:center;gap:.75rem;padding:.7rem .75rem;display:flex}.menu__list a:hover,.menu__list a[aria-current=true]{background:var(--surface)}.menu__n{color:var(--jade-ink);font-family:var(--font-mono);font-size:.75rem}@media (width<=34rem){.menu{display:block}}.switch{--switch-ease:cubic-bezier(.6, -.28, .32, 1.32);--switch-time:.65s;--night:#3b4252;cursor:pointer;isolation:isolate;background:0 0;border:1px solid #2e34401f;border-radius:999px;flex-shrink:0;width:3.75rem;height:2rem;padding:0;position:relative;overflow:hidden}.switch:focus-visible{outline:2px solid var(--frost);outline-offset:2px}.switch__sky,.switch__sky:before{border-radius:inherit;position:absolute;inset:0}.switch__sky{background:linear-gradient(#9cc6dc,#c9e0ea)}.switch__sky:before{content:"";background:linear-gradient(180deg, #2e3440, var(--night));opacity:0}.switch__cloud{opacity:.9;background:#fff;border-radius:999px;height:.32rem;position:absolute}.switch__cloud--a{width:.95rem;top:.55rem;right:.55rem}.switch__cloud--b{opacity:.7;width:.7rem;top:1.05rem;right:.95rem}.switch__star{opacity:0;background:#eceff4;border-radius:50%;width:2px;height:2px;position:absolute;transform:scale(0)}.switch__star--a{top:.5rem;left:.65rem}.switch__star--b{width:1.5px;height:1.5px;top:1.15rem;left:1.1rem}.switch__star--c{top:.75rem;left:1.55rem}.switch__knob{background:#ebcb8b;border-radius:50%;width:calc(2rem - 6px);height:calc(2rem - 6px);position:absolute;top:2px;left:2px;overflow:hidden;transform:rotate(-40deg);box-shadow:0 0 0 3px #ebcb8b47,0 1px 3px #2e344040}.switch__shade{background:var(--night);border-radius:50%;position:absolute;inset:0;transform:translate(110%,-20%)}.switch[aria-checked=true] .switch__sky:before{opacity:1}.switch[aria-checked=true] .switch__cloud{opacity:0;transform:translateY(.4rem)}.switch[aria-checked=true] .switch__star{opacity:1;transform:scale(1)}.switch[aria-checked=true] .switch__knob{background:#e5e9f0;transform:translate(1.75rem)rotate(0);box-shadow:0 0 0 3px #e5e9f01f,0 1px 3px #00000059}.switch[aria-checked=true] .switch__shade{transform:translate(38%,-14%)}.switch.is-ready .switch__knob{transition:transform var(--switch-time) var(--switch-ease), background-color var(--switch-time) ease, box-shadow var(--switch-time) ease}.switch.is-ready .switch__shade{transition:transform var(--switch-time) cubic-bezier(.45, 0, .25, 1) 80ms}.switch.is-ready .switch__sky:before{transition:opacity var(--switch-time) ease}.switch.is-ready .switch__cloud{transition:opacity .35s ease, transform var(--switch-time) var(--switch-ease)}.switch.is-ready .switch__star{transition:opacity .3s ease, transform .4s var(--switch-ease)}.switch.is-ready[aria-checked=true] .switch__star--a{transition-delay:.2s}.switch.is-ready[aria-checked=true] .switch__star--b{transition-delay:.3s}.switch.is-ready[aria-checked=true] .switch__star--c{transition-delay:.4s}.switch:hover .switch__knob{box-shadow:0 0 0 4px #ebcb8b66,0 1px 3px #2e344040}.switch[aria-checked=true]:hover .switch__knob{box-shadow:0 0 0 4px #e5e9f033,0 1px 3px #00000059}.sky{z-index:-1;pointer-events:none;opacity:0;visibility:hidden;position:fixed;inset:0;overflow:hidden}.sky.is-active{visibility:visible}.sky__layer{opacity:0;position:absolute;inset:0}.sky__day{background:linear-gradient(#c9dbe8 0%,#e1e8f0 55%,#eceff4 100%)}.sky__dusk{background:linear-gradient(#5e81ac 0%,#b48ead 45%,#d08770 75%,#ebcb8b 100%)}.sky__night{background:linear-gradient(#2a303b 0%,#343b48 60%,#3f4757 100%)}.sky__sun,.sky__moon{aspect-ratio:1;will-change:transform;border-radius:50%;width:clamp(4.5rem,9vw,7rem);margin:calc(clamp(4.5rem,9vw,7rem)/-2) 0 0 calc(clamp(4.5rem,9vw,7rem)/-2);position:absolute;top:0;left:0;transform:translate(-50vw,-50vh)}.sky__sun{background:radial-gradient(circle,#fff8e6 0%,#ebcb8b 50%,#d08770 100%);box-shadow:0 0 60px 20px #ebcb8b73,0 0 140px 60px #d0877033}.sky__moon{filter:drop-shadow(0 0 24px #88c0d066);background:0 0;box-shadow:inset -1.1rem .4rem #e5e9f0}.sky__star{opacity:0;background:#eceff4;border-radius:50%;width:2px;height:2px;position:absolute}.hero{grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(1.5rem,5vw,4rem);padding-block:clamp(3.2rem,10.5vh,6.4rem) clamp(2.4rem,7vh,4.4rem);display:grid}@media (width>=48.01rem){.hero{min-height:clamp(30rem,64vh,36rem);position:relative}.hero__text{z-index:1;position:relative}}@media (width<=48rem){.hero{grid-template-columns:1fr}}.hero h1{letter-spacing:-.04em;font-size:clamp(3rem,8.5vw,5.25rem);font-weight:650;line-height:.98}.hero__lede{max-width:30rem;color:var(--muted);letter-spacing:-.011em;margin-top:1.4rem;font-size:clamp(1.15rem,2.4vw,1.375rem);line-height:1.45}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.button{border:1px solid var(--hairline-strong);color:var(--text);background:var(--card);transition:transform .25s var(--ease-out), box-shadow .25s var(--ease), border-color .25s var(--ease);border-radius:999px;align-items:center;gap:.5rem;padding:.7rem 1.15rem;font-size:.95rem;font-weight:550;display:inline-flex}.button:hover{border-color:var(--frost);box-shadow:var(--shadow);background-size:0;transform:translateY(-1px)}.button--primary{color:var(--on-primary);background:var(--jade-ink);border-color:#0000}.button--primary:hover{border-color:#0000}.ridge{--ridge-peak:.5;--ridge-spread:1;--ridge-quiet:0;aspect-ratio:1/1.05;width:100%;max-width:22rem;position:relative}@media (width>=48.01rem){.ridge{--ridge-peak:.74;--ridge-spread:.46;--ridge-quiet:.5;z-index:0;aspect-ratio:auto;max-width:none;position:absolute;inset:0}}.ridge__canvas{width:100%;height:100%;display:block}.ridge__icon{z-index:1;border:1px solid color-mix(in srgb, var(--tone) 55%, transparent);width:2.4rem;height:2.4rem;color:var(--tone-ink);background:var(--bg);box-shadow:0 0 0 4px var(--bg);cursor:pointer;transition:opacity .3s var(--ease), border-color .3s var(--ease);will-change:transform;border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.ridge__icon:before{content:"";border-radius:50%;position:absolute;inset:-.5rem}.ridge__icon.is-active,.ridge__icon:focus-visible{border-color:var(--tone);outline:none}.ridge__icon.is-dim{opacity:.35}.ridge__icon--frost{--tone:var(--frost);--tone-ink:var(--frost-ink)}.ridge__icon--jade{--tone:var(--jade);--tone-ink:var(--jade-ink)}.ridge__icon--gold{--tone:var(--gold);--tone-ink:var(--gold-ink)}.ridge__icon--peach{--tone:var(--peach);--tone-ink:var(--peach-ink)}.ridge__icon--plum{--tone:var(--plum);--tone-ink:var(--plum-ink)}.ridge__tip{z-index:2;border:1px solid var(--hairline);background:var(--card);width:max-content;max-width:16rem;box-shadow:var(--shadow);pointer-events:none;opacity:0;transition:opacity .2s var(--ease);border-radius:.8rem;padding:.65rem .8rem;font-size:.8rem;line-height:1.45;position:absolute;top:0;left:0;transform:translate(-50%,calc(-100% - 1.4rem))}.ridge__tip.is-shown{opacity:1}.ridge__tip strong{color:var(--text);font-weight:600;display:block}.ridge__tip span{color:var(--muted);display:block}main{display:block}body{flex-direction:column;min-height:100dvh;display:flex}main{flex:1 0 auto}.section{padding-block:clamp(1.75rem,4.5vh,2.75rem)}.caption{--tone:var(--jade);--tone-ink:var(--jade-ink);color:var(--muted);font-family:var(--font-mono);align-items:center;gap:.9rem;margin:0 0 1.5rem;font-size:1rem;line-height:1;display:flex}.caption--frost{--tone:var(--frost);--tone-ink:var(--frost-ink)}.caption--gold{--tone:var(--gold);--tone-ink:var(--gold-ink)}.caption--peach{--tone:var(--peach);--tone-ink:var(--peach-ink)}.caption--plum{--tone:var(--plum);--tone-ink:var(--plum-ink)}.caption{-webkit-tap-highlight-color:transparent}.caption__n{color:var(--tone-ink);font-weight:500}.caption__label{color:var(--text);white-space:nowrap}.caption__icon{fill:none;width:5.6rem;height:2rem;stroke:var(--tone-ink);stroke-width:1.1px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;position:relative;top:-.71rem;overflow:visible}.caption__page{fill:var(--bg)}.caption__rule{border-top:1px solid var(--hairline-strong);background:repeating-linear-gradient(90deg, var(--hairline-strong) 0 1px, transparent 1px 2rem);flex:1;height:5px;margin-top:8px}.section h2{max-width:34rem;margin-bottom:1.1rem;font-size:clamp(1.75rem,4.5vw,2.4rem)}.section__text{max-width:52rem;color:var(--muted);font-size:1.1rem}.subhead{color:var(--muted);font-family:var(--font-mono);letter-spacing:0;margin:2.75rem 0 1.1rem;font-size:.8125rem;font-weight:400}.more{font-family:var(--font-mono);align-items:center;gap:.45em;margin-top:1.5rem;font-size:.875rem;display:inline-flex}#tools{--tone:var(--plum);--tone-ink:var(--plum-ink)}#books{--tone:var(--gold);--tone-ink:var(--gold-ink)}#writing{--tone:var(--frost);--tone-ink:var(--frost-ink)}.more--head{border:1px solid color-mix(in srgb, var(--tone) calc(32% - var(--more-fill) * .32), transparent);width:fit-content;color:color-mix(in srgb, #fff var(--more-fill), var(--tone-ink));background:color-mix(in srgb, var(--tone-ink) var(--more-fill), transparent);font-variant-numeric:tabular-nums;transition:transform .25s var(--ease-out), background-color .25s var(--ease), border-color .25s var(--ease);border-radius:999px;gap:.35em;margin:-.7rem 0 .75rem;padding:.2rem .65rem;font-size:.75rem;display:flex}.more--head:hover{border-color:color-mix(in srgb, var(--tone) calc(55% - var(--more-fill) * .55), transparent);background:color-mix(in srgb, color-mix(in srgb, var(--tone-ink) 85%, #2e3440) var(--more-fill), color-mix(in srgb, var(--tone) 10%, transparent));transform:translateY(-1px)}.more--head .icon{transition:transform .25s var(--ease-out)}.more--head:hover .icon{transform:translate(1px,-1px)}.more--button{color:var(--jade-ink);cursor:pointer;background:0 0;border:0;padding:0}.more--button:hover{text-underline-offset:.25em;text-decoration:underline 1px}.cards{grid-template-columns:repeat(auto-fit,minmax(15.5rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.card{border:1px solid var(--hairline-strong);border-radius:var(--radius);background:linear-gradient(var(--accent), var(--accent)) top / 100% 2px no-repeat, var(--card);flex-direction:column;gap:.75rem;padding:1.4rem;display:flex;position:relative}.card__icon{color:var(--accent-ink)}.card .expand__hint{position:absolute;top:1.35rem;right:1.25rem}.card--jade{--accent:var(--jade);--accent-ink:var(--jade-ink)}.card--frost{--accent:var(--frost);--accent-ink:var(--frost-ink)}.card--gold{--accent:var(--gold);--accent-ink:var(--gold-ink)}.card h4{margin-top:.35rem;font-size:1.1rem}.card p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.55}.tags{flex-wrap:wrap;gap:0 .5rem;margin:auto 0 0;padding:.5rem 0 0;list-style:none;display:flex}.tags li{color:var(--muted);font-family:var(--font-mono);font-size:.75rem}.tags li+li:before{content:"/";color:var(--hairline-strong);margin-right:.5rem}.pills{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.pills a{border:1px solid var(--hairline-strong);color:var(--text);transition:border-color .2s var(--ease), background-color .2s var(--ease);background:0 0;border-radius:999px;align-items:center;gap:.45rem;padding:.45rem .95rem;font-size:.875rem;display:inline-flex}.pills a:hover{border-color:var(--frost);background:var(--surface)}.tracks{grid-template-columns:repeat(auto-fit,minmax(min(100%,24rem),1fr));gap:1rem;margin-top:1.75rem;display:grid}.track{background:var(--card);height:152px;box-shadow:var(--shadow);border-radius:16px;position:relative;overflow:hidden}.track:before{content:"";background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--bg) 60%, transparent) 50%, transparent 70%);background-size:250% 100%;animation:1.8s linear infinite shimmer;position:absolute;inset:0}.track iframe{opacity:0;width:100%;height:100%;transition:opacity .5s var(--ease);border:0;display:block;position:relative}.track.is-loaded:before{display:none}.track.is-loaded iframe{opacity:1}.track--placeholder{align-items:center;gap:1rem;padding:1rem;display:flex}.track__art{color:#fff;background:linear-gradient(135deg, var(--frost), var(--jade));border-radius:10px;place-items:center;width:120px;height:120px;display:grid;position:relative}.track__lines{flex:1;gap:.6rem;display:grid;position:relative}.track__lines span{background:var(--surface-2);border-radius:999px;height:.7rem}.track__lines span:last-child{width:55%;height:.55rem}.track__eq{align-items:flex-end;gap:3px;height:1.4rem;display:flex;position:relative}.track__eq span{background:var(--frost);transform-origin:bottom;border-radius:2px;width:4px;height:100%;animation:1.1s ease-in-out infinite alternate eq}.track__eq span:nth-child(2){background:var(--jade);animation-delay:-.3s}.track__eq span:nth-child(3){animation-delay:-.6s}.track__eq span:nth-child(4){background:var(--gold);animation-delay:-.9s}@keyframes shimmer{0%{background-position:125% 0}to{background-position:-125% 0}}.rows{max-width:44rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.rows>li+li{border-top:1px solid var(--hairline)}.row{border-radius:var(--radius);border:1px solid #0000;align-items:center;gap:.9rem;padding:.75rem .9rem;line-height:1.45;display:flex}.row__label{flex:1}.row__icon{color:var(--tone-ink,var(--muted))}#now{--tone-ink:var(--gold-ink)}#about{--tone-ink:var(--peach-ink)}.now__updated{color:var(--muted);font-family:var(--font-mono);margin-top:1.25rem;font-size:.75rem}.expand{border-radius:var(--radius);cursor:pointer;transition:background-color .3s var(--ease), border-color .3s var(--ease);border:1px solid #0000;outline:none;flex-direction:column;display:flex;position:relative}.expand__face{flex:1}.expand__hint{color:var(--muted);opacity:.6;transition:transform .45s var(--ease-out), opacity .2s var(--ease);place-items:center;display:grid}.expand__more{opacity:0;transition:grid-template-rows .45s var(--ease-out), opacity .3s var(--ease);grid-template-rows:0fr;padding:0 .9rem 0 calc(1.8rem + 18px);display:grid}.cards .expand__more{padding:0 1.4rem}.expand__inner{min-height:0;overflow:hidden}.expand__more p{border-top:1px solid var(--hairline);color:var(--muted);margin:0;padding:.9rem 0 1rem;font-size:.95rem;line-height:1.6}.cards .expand__more p{padding-bottom:1.4rem}.cards>.expand{grid-row:span 2;grid-template-rows:subgrid;row-gap:0;display:grid}.cards .expand__more{border-radius:0 0 var(--radius) var(--radius);transition:grid-template-rows .45s var(--ease-out), opacity .3s var(--ease), background-color .3s var(--ease), border-color .3s var(--ease);border:1px solid #0000;border-top:0}.cards .expand.is-open .card{border-bottom-color:#0000;border-bottom-right-radius:0;border-bottom-left-radius:0}.cards .expand.is-open .expand__more{border-color:var(--hairline-strong);background:var(--card)}.rows .expand.is-open{border-color:var(--hairline);background-color:var(--card)}.expand.is-open .expand__more{opacity:1;grid-template-rows:1fr}.expand.is-open .expand__hint{opacity:1;transform:rotate(180deg)}.expand:has(.expand__button:focus-visible){outline:2px solid var(--frost);outline-offset:2px}.posts{border-top:1px solid var(--hairline-strong);margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.posts li{border-bottom:1px solid var(--hairline-strong)}.posts a{border-radius:var(--radius);color:var(--text);cursor:pointer;transition:transform .25s var(--ease-out), box-shadow .25s var(--ease), border-color .25s var(--ease), background-color .25s var(--ease);background:0 0;border:1px solid #0000;align-items:center;gap:1.25rem;padding:1rem .75rem;display:flex}.posts a:hover{background:color-mix(in srgb, var(--jade) 8%, var(--card));transform:translateY(-1px)}.posts__key{min-width:6.5rem;color:var(--muted);font-family:var(--font-mono);flex-shrink:0;font-size:.8125rem}@media (width<=34rem){.posts a{flex-wrap:wrap;gap:.35rem 1rem}.posts__key{width:100%}}.posts a:active{transform:translateY(0)scale(.99)}.posts__body{flex:1;gap:.2rem;display:grid}.posts__title{letter-spacing:-.012em;font-weight:600}.posts__meta{color:var(--muted);font-size:.85rem}.posts__cta{border:1px solid var(--hairline-strong);color:var(--text);transition:background-color .25s var(--ease), border-color .25s var(--ease), color .25s var(--ease);border-radius:999px;align-items:center;gap:.35rem;padding:.4rem .8rem;font-size:.85rem;font-weight:550;display:inline-flex}.posts__cta .icon{transition:transform .3s var(--ease-out)}.posts a:hover .posts__cta{background:var(--jade);color:#2e3440;border-color:#0000}.posts a:hover .posts__cta .icon{transform:translate(2px,-2px)}.empty{border:1px dashed var(--hairline-strong);border-radius:var(--radius);color:var(--muted);align-items:center;gap:1.25rem;margin-top:1.5rem;padding:1.25rem 1.4rem;display:flex}.empty svg{flex-shrink:0;width:6rem}.empty p{margin:0}.article{padding-block:clamp(3.5rem,10vh,6rem) 4rem}.article__back{align-items:center;gap:.35rem;margin-bottom:2.5rem;font-size:.9rem;display:inline-flex}.article h1{letter-spacing:-.03em;font-size:clamp(2.1rem,6vw,3rem)}.article__meta{color:var(--muted);font-family:var(--font-mono);margin-top:1rem;font-size:.8125rem}.article__meta .tag{color:var(--frost-ink)}.article--figure{grid-template-columns:minmax(0, calc(var(--measure) + 4rem)) minmax(0, 1fr);grid-template-areas:"head figure""body figure";align-items:start;column-gap:clamp(2rem,4vw,3.5rem);display:grid}.article__head{grid-area:head}.article__body{grid-area:body}.article__figure{grid-area:figure;margin:0;padding-top:4.2rem;position:sticky;top:6rem}.article__figure img{border:1px solid var(--hairline-strong);border-radius:var(--radius);width:100%;max-width:26rem;height:auto;display:block}.article__figure a{background:0 0}@media (width<=60rem){.article--figure{max-width:calc(var(--measure) + 4rem + var(--gutter) * 2);display:block}.article__figure{margin-top:2rem;padding-top:0;position:static}.article__figure img{margin-inline:auto}}.article__origin{color:var(--muted);font-family:var(--font-mono);font-size:.8125rem}.keep-reading{border-top:1px solid var(--hairline-strong);gap:1rem;margin-top:3rem;padding-top:1.5rem;display:grid}.keep-reading__label{color:var(--muted);font-family:var(--font-mono);font-size:.8125rem}.book-link{border:1px solid var(--hairline-strong);border-radius:var(--radius);color:var(--text);transition:transform .25s var(--ease-out), background-color .25s var(--ease), border-color .25s var(--ease);background:0 0;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.book-link:hover{border-color:color-mix(in srgb, var(--gold) 60%, var(--hairline-strong));background:color-mix(in srgb, var(--gold) 9%, var(--card));transform:translateY(-1px)}.book-link img{border-radius:3px;flex-shrink:0;box-shadow:0 1px 3px #0000002e}.book-link__body{flex:1;gap:.15rem;display:grid}.book-link__kicker,.book-link__meta{color:var(--muted);font-family:var(--font-mono);font-size:.75rem}.book-link__kicker{color:var(--gold-ink)}.book-link__title{font-family:var(--font-display,inherit);letter-spacing:-.015em;font-size:1.15rem;font-weight:600}.book-link .icon{color:var(--gold-ink);transition:transform .3s var(--ease-out)}.book-link:hover .icon{transform:translate(3px)}.topics{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.topic{border:1px solid var(--hairline-strong);color:var(--text);font-family:var(--font-mono);transition:transform .25s var(--ease-out), background-color .25s var(--ease), border-color .25s var(--ease);background:0 0;border-radius:999px;align-items:center;padding:.35rem .85rem;font-size:.8125rem;display:inline-flex}.topic:hover{background:var(--frost);color:#2e3440;border-color:#0000;transform:translateY(-1px)}.books__cover{background:var(--hairline);border-radius:3px;flex-shrink:0;width:40px;height:60px;overflow:hidden}.books__cover img{object-fit:cover;width:100%;height:100%;display:block}.books__line{color:var(--muted);font-size:.875rem}.books__score{color:var(--gold-ink);font-family:var(--font-mono);flex-shrink:0;font-size:.8125rem}.books a:hover{background:color-mix(in srgb, var(--gold) 9%, var(--card))}.books div.books__row{align-items:flex-start;gap:1.25rem;padding:1rem .75rem;display:flex}.books .posts__body{gap:0}.books .posts__meta,.books__line{margin-top:.2rem}.books__line,.books__more p{line-height:1.6}.books .books__more{padding:0}.books .books__more p{color:var(--muted);border:0;margin:.6rem 0 0;padding:0;font-size:.875rem}.books__year{color:var(--gold-ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums;margin-top:.55rem;font-size:.75rem}.books__expand .books__cover{background:0 0;position:relative;overflow:visible}.books__expand .books__cover:before{content:"";background:repeating-linear-gradient(to bottom, transparent 0 7px, var(--gold) 7px 8px) 7px 12px / 26px 36px no-repeat, #f3f1ea;opacity:0;transition:opacity .4s var(--ease);border-radius:2px 3px 3px 2px;position:absolute;inset:0;box-shadow:inset 2px 0 3px #0000001f}.books__expand .books__cover img{z-index:1;transform-origin:0;transition:transform .6s var(--ease-out), box-shadow .6s var(--ease);border-radius:3px;position:relative;transform:perspective(300px)rotateY(0)}.books__expand.is-open .books__cover:before{opacity:1}.books__expand.is-open .books__cover img{transform:perspective(300px)rotateY(-72deg);box-shadow:-3px 4px 10px #00000040}.books__expand{scroll-margin-top:5.5rem}.books__expand.is-open{background-color:var(--card)}.books__spacer{flex-shrink:0;width:14px}.verdict-head{color:var(--gold-ink);font-family:var(--font-mono);letter-spacing:0;margin:2rem 0 0;font-size:.8125rem;font-weight:400}.verdict-head+.books{margin-top:.75rem}@media (width<=34rem){.books .books__row{flex-wrap:nowrap;align-items:flex-start}.books__score{display:none}}.book-head{align-items:flex-end;gap:1.25rem;display:flex}.book-head__cover{border-radius:4px;flex-shrink:0;box-shadow:0 2px 8px #0003}.book-head__author{margin-top:.4rem}.page-head .book-head__meta{color:var(--gold-ink);font-family:var(--font-mono);margin-top:.35rem;font-size:.8125rem}.page-head .book-head__line{color:var(--text);margin-top:1.5rem;font-size:1.125rem}.prose{margin-top:2.5rem;font-size:1.125rem;line-height:1.7}.prose h2{margin:2.5rem 0 .75rem;font-size:1.5rem}.prose h3{margin:2rem 0 .5rem;font-size:1.2rem}.prose blockquote{border-left:3px solid var(--frost);color:var(--muted);margin:1.75rem 0;padding:.25rem 0 .25rem 1.25rem}.prose code{background:var(--surface);border-radius:5px;padding:.1em .35em;font-size:.9em}.prose pre{border-radius:12px;padding:1rem;font-size:.9rem;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose hr{border:0;border-top:1px solid var(--hairline);margin:2.5rem 0}.prose img{border-radius:12px}.page-head{padding-block:clamp(3.5rem,10vh,6rem) .5rem}.page-head h1{letter-spacing:-.03em;font-size:clamp(2.25rem,6vw,3.25rem)}.page-head p{color:var(--muted);margin-top:.85rem}.mailbox{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1.75rem;display:flex}.mailbox__address{border-bottom:1px solid var(--hairline-strong);font-family:var(--font-mono);overflow-wrap:anywhere;padding:.6rem 0;font-size:clamp(.95rem,2.6vw,1.15rem)}.mailbox__copy{border:1px solid var(--hairline-strong);border-radius:var(--radius);color:var(--muted);font:inherit;font-family:var(--font-mono);cursor:pointer;transition:color .2s var(--ease), border-color .2s var(--ease), background-color .2s var(--ease);background:0 0;align-items:center;gap:.4rem;padding:.45rem .8rem;font-size:.8125rem;display:inline-flex}.mailbox__copy:hover{border-color:var(--jade);color:var(--text)}.mailbox__copy.is-copied{border-color:var(--jade);color:var(--jade-ink)}.talk{padding-block:.5rem clamp(1.75rem,4.5vh,2.75rem)}.chat{border:1px solid var(--hairline-strong);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow)}.chat__head{--head-ink:var(--chat-head-ink);border-radius:calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;color:var(--head-ink);background:var(--chat-head);align-items:center;gap:.75rem;padding:.8rem 1rem;display:flex}.chat__avatar{background:color-mix(in srgb, var(--head-ink) 18%, transparent);border-radius:50%;flex-shrink:0;place-items:center;width:2.4rem;height:2.4rem;display:grid;position:relative}.chat__avatar svg{fill:none;width:1.55rem;stroke:var(--head-ink);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.chat__dot{border:2px solid var(--chat-head);--lit:#86c480;background:radial-gradient(circle at 40% 38%, color-mix(in srgb, var(--lit) 55%, #fff) 0 18%, var(--lit) 62%);width:.65rem;height:.65rem;box-shadow:0 0 3px 0 color-mix(in srgb, var(--lit) 70%, transparent);border-radius:50%;animation:2.8s ease-in-out infinite chat-light;position:absolute;bottom:0;right:0}@keyframes chat-light{50%{box-shadow:0 0 8px 1px color-mix(in srgb, var(--lit) 95%, transparent)}}.chat__id{gap:.15rem;display:grid}.chat__name{font-family:var(--font-display);font-size:1rem;font-weight:600;line-height:1.2}.chat__status{opacity:.85;font-family:var(--font-mono);font-size:.6875rem}.chat__log{overscroll-behavior:contain;flex-direction:column;gap:.55rem;max-height:22rem;margin:0;padding:1rem 1rem .75rem;list-style:none;display:flex;overflow-y:auto}.chat__msg{display:flex}.chat__msg--q{justify-content:flex-end}.chat__msg p{max-width:min(80%,38rem);font-family:var(--font-mono);white-space:pre-line;background:var(--chat-a-bg);border-radius:14px 14px 14px 4px;margin:0;padding:.55rem .85rem;font-size:.8125rem;line-height:1.6}.chat__msg--q p{color:var(--chat-q-ink);background:var(--chat-q-bg);border-radius:14px 14px 4px}.chat__msg.is-error p{color:var(--peach-ink);background:color-mix(in srgb, var(--peach) 14%, var(--surface))}.chat__dots{gap:.25rem;padding:.35rem .1rem;display:inline-flex}.chat__dots i{background:var(--muted);opacity:.5;border-radius:50%;width:.375rem;height:.375rem;animation:1.2s ease-in-out infinite chat-dot}.chat__dots i:nth-child(2){animation-delay:.15s}.chat__dots i:nth-child(3){animation-delay:.3s}@keyframes chat-dot{0%,60%,to{opacity:.5;transform:none}30%{opacity:1;transform:translateY(-.2rem)}}.chat__chips{flex-wrap:wrap;gap:.45rem;margin:0;padding:0 1rem .9rem;list-style:none;display:flex}.chat.is-busy .chat__chips button{opacity:.45;pointer-events:none}.chat__chips .is-new{animation:chat-in .35s var(--ease-out) both}@keyframes chat-in{0%{opacity:0;transform:translateY(.25rem)}}.chat__chips button{border:1px solid color-mix(in srgb, var(--plum) 55%, var(--hairline-strong));color:var(--plum-ink);font:inherit;font-family:var(--font-mono);cursor:pointer;transition:background-color .2s var(--ease), transform .2s var(--ease);background:0 0;border-radius:999px;padding:.35rem .8rem;font-size:.75rem}.chat__chips button:hover{background:color-mix(in srgb, var(--plum) 12%, transparent);transform:translateY(-1px)}.chat__composer{border:1px solid var(--hairline-strong);background:var(--bg);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);border-radius:1.3rem;align-items:flex-end;gap:.5rem;margin:0 .75rem .75rem;padding:.3rem .3rem .3rem 1rem;display:flex}.chat__composer:focus-within{border-color:var(--plum);box-shadow:0 0 0 3px color-mix(in srgb, var(--plum) 15%, transparent)}.chat__composer textarea{max-height:8rem;color:var(--text);font:inherit;font-family:var(--font-mono);resize:none;background:0 0;border:0;outline:none;flex:1;align-self:center;padding:.35rem 0;font-size:.8125rem;line-height:1.5;overflow-y:hidden}@media (pointer:coarse){.chat__composer textarea{font-size:16px}}.chat__composer textarea::placeholder{color:var(--muted);opacity:.75}.chat__count{color:var(--muted);font-family:var(--font-mono);align-self:center;font-size:.6875rem}.chat__send{width:2.1rem;height:2.1rem;color:var(--chat-q-ink);background:var(--chat-q-bg);cursor:pointer;transition:transform .2s var(--ease), opacity .2s var(--ease);border:0;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.chat__send:hover:not(:disabled){transform:translateY(-1px)}.chat__send:disabled{opacity:.4;cursor:default}.chat__note{color:var(--muted);font-family:var(--font-mono);margin-top:.65rem;font-size:.6875rem}@media (width<=34rem){.chat__msg p{max-width:90%}}@media (prefers-reduced-motion:reduce){.chat__chips .is-new,.chat__dots i,.chat__dot{animation:none}}.footer{border-top:1px solid var(--hairline);color:var(--muted);margin-top:2rem;padding-block:2rem 2.5rem;font-size:.875rem}.footer__inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;display:grid}.footer__note{font-family:var(--font-mono);align-items:center;gap:.5rem;font-size:.75rem;display:inline-flex}.footer__pulse{background:var(--jade);width:.4rem;height:.4rem;box-shadow:0 0 0 0 color-mix(in srgb, var(--jade) 60%, transparent);border-radius:50%;animation:2.4s ease-out infinite pulse}@keyframes pulse{70%,to{box-shadow:0 0 0 .45rem #0000}}.footer__copy{font-family:var(--font-mono);justify-self:end;font-size:.75rem}@media (width<=40rem){.footer__inner{grid-template-columns:1fr;justify-items:center}.footer__note:empty{display:none}.footer__copy{justify-self:center}}.footer ul{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.footer a{width:2.25rem;height:2.25rem;color:var(--muted);transition:color .2s var(--ease), background-color .2s var(--ease);background:0 0;border-radius:50%;place-items:center;display:grid}.footer a:hover{color:var(--jade-ink);background:var(--surface)}.js .reveal{opacity:0;transition:opacity .9s var(--ease-out), transform .9s var(--ease-out);transform:translateY(14px)}.js .reveal.is-in{opacity:1;transform:none}.theme-settling :not(.switch,.switch *),.theme-settling :not(.switch,.switch *):before,.theme-settling :not(.switch,.switch *):after{transition:none!important}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.35s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.js .reveal{opacity:1;transform:none}@view-transition{navigation:none}}
