@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/space-grotesk-var.woff2)format("woff2");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:Instrument Sans;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/instrument-sans-var.woff2)format("woff2");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:JetBrains Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-var.woff2)format("woff2");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}:root{color-scheme:light dark;--b-50:#f3f4f7;--b-100:#edeff2;--b-200:#e5e7ec;--b-300:#cfd1d8;--b-400:#a7abb3;--b-500:#8a8d95;--b-600:#6c7079;--b-700:#3d4049;--b-800:#2f3340;--b-900:#23232e;--b-950:#14141c;--b-accent-dark:#e6e8ec;--b-accent-dark-hover:#f9fafc;--b-accent-dark-active:#caccd1;--n-0:#fff;--n-25:#fbfbfe;--n-50:#f6f5fa;--n-100:#eeedf3;--n-200:#e4e2ea;--n-300:#cbc9d4;--n-400:#9f9ca9;--n-500:#75727f;--n-600:#54515e;--n-700:#3a3743;--n-800:#2a2832;--n-900:#23212b;--n-950:#121018;--d-bg:#121018;--d-bg-subtle:#1a1821;--d-surface:#23212b;--d-surface-2:#2e2c37;--d-inset:#3d3b48;--d-line:#322f3c;--d-line-strong:#45424f;--bg:light-dark(var(--b-50),var(--d-bg));--bg-subtle:light-dark(var(--b-100),var(--d-bg-subtle));--surface:light-dark(var(--n-0),var(--d-surface));--surface-2:light-dark(#fafafc,var(--d-surface-2));--surface-inset:light-dark(var(--n-200),var(--d-inset));--resume-paper:#fff;--resume-ink:#25252d;--resume-muted:#55555e;--resume-blue:#234e70;--resume-green:#285b4d;--resume-plum:#663c59;--resume-teal:#14635e;--resume-navy:#263c60;--resume-cobalt:#2854a1;--resume-violet:#6844a0;--resume-indigo:#474b8c;--resume-rose:#973f61;--resume-terracotta:#9a4935;--resume-ochre:#805b18;--resume-olive:#58652d;--resume-cyan:#16647c;--resume-slate:#4e5f73;--resume-chocolate:#705043;--mail-paper:#fff;--mail-ink:#252525;--mail-muted:#686868;--mail-border:#ddd;--mail-dark-paper:#202024;--mail-dark-ink:#eee;--mail-dark-border:#444448;--mail-dark-muted:#b9b9c2;--border:light-dark(var(--b-200),var(--d-line));--border-strong:light-dark(var(--b-400),var(--d-line-strong));--border-input:light-dark(var(--b-500),var(--b-600));--border-hover:light-dark(var(--b-600),var(--b-500));--text:light-dark(var(--n-900),var(--b-50));--text-muted:light-dark(var(--n-700),#b8b4c6);--text-subtle:light-dark(var(--n-600),#96919f);--text-inverse:light-dark(var(--n-0),var(--d-bg));--accent:light-dark(var(--b-900),var(--b-accent-dark));--accent-hover:light-dark(var(--b-800),var(--b-accent-dark-hover));--accent-active:light-dark(var(--b-950),var(--b-accent-dark-active));--accent-soft:light-dark(var(--b-100),#272630);--accent-border:light-dark(var(--b-200),#383641);--accent-text:light-dark(var(--b-900),var(--b-100));--on-accent:light-dark(var(--n-0),var(--d-bg));--signal:#14a06a;--success:light-dark(#177c52,#35c78d);--colour-reference-white:white;--colour-reference-black:black;--success-soft:light-dark(#e4f4ee,#0f2b21);--danger:light-dark(#c0334a,#ff8095);--danger-soft:light-dark(#fbeaee,#301419);--warning:light-dark(#8a5a06,#e8b866);--warning-soft:light-dark(#fbf1df,#2b2110);--info:light-dark(#0e7490,#67d3ee);--info-soft:light-dark(#e2f2f6,#0d2830);--focus:light-dark(#0060de,#86a9ff);--viz-0:light-dark(var(--b-100),var(--d-surface-2));--viz-1:light-dark(var(--b-300),#4b4858);--viz-2:light-dark(var(--b-500),#6f6b80);--viz-3:light-dark(var(--b-700),#a8a4b8);--viz-4:light-dark(var(--b-950),#ecebf2);--shadow-a:light-dark(#23212b12,#0006);--shadow-b:light-dark(#23212b1c,#0000008c);--scrim:light-dark(#23212b61,#000000ad);--shadow-sm:0 1px 2px var(--shadow-a), 0 1px 3px var(--shadow-a);--shadow-md:0 2px 4px var(--shadow-a), 0 6px 16px var(--shadow-b);--shadow-lg:0 4px 8px var(--shadow-a), 0 16px 40px var(--shadow-b);--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-full:999px;--container:1120px;--container-wide:1400px;--container-prose:720px;--header-h:60px;--font-display:"Space Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font:"Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--track-display:-.03em;--track-tight:-.035em;--ease:cubic-bezier(.32, .72, 0, 1)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100dvh;font-size:16px;line-height:1.6;display:flex;overflow-x:hidden}img,svg,video,canvas{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent-text);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--accent-hover)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:var(--track-display);text-wrap:balance;font-weight:700;line-height:1.2}h1{letter-spacing:var(--track-tight);font-size:clamp(2rem,1.4rem + 2.6vw,3.25rem)}h2{letter-spacing:-.028em;font-size:clamp(1.5rem,1.2rem + 1.2vw,2.125rem)}h3{font-size:1.1875rem;font-weight:500}h4{font-weight:500}p{text-wrap:pretty}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--accent);color:var(--on-accent)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;background:var(--accent);color:var(--on-accent);border-radius:var(--r-md);transition:top .15s var(--ease);padding:10px 16px;font-weight:600;text-decoration:none;position:absolute;top:-100px;left:12px}.skip-link:focus{color:var(--on-accent);top:12px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(1rem,.6rem + 1.8vw,2rem)}.container--wide{max-width:var(--container-wide)}.prose{max-width:var(--container-prose)}.prose p,.prose ul,.prose ol{color:var(--text-muted);margin-block:1em}.prose h2{margin-top:2.25em;margin-bottom:.5em}.prose h3{margin-top:1.75em;margin-bottom:.4em}.prose li{margin-block:.4em}.prose :where(h2,h3)+p{margin-top:0}.stack>*+*{margin-top:var(--gap,1rem)}.section{padding-block:clamp(2.5rem,1.5rem + 4vw,5rem)}.section-tight{padding-block:clamp(1.75rem,1rem + 3vw,3rem)}.site-header{z-index:60;background:color-mix(in srgb, var(--bg) 85%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header__inner{height:var(--header-h);align-items:center;gap:8px;display:flex}.brand{color:var(--text);flex-shrink:0;align-items:center;gap:13px;text-decoration:none;display:inline-flex}.brand:hover{color:var(--text)}.brand__mark{flex-shrink:0;width:26px;height:26px}.brand__word{font-family:var(--font-display);letter-spacing:-.045em;font-size:1.375rem;font-weight:700;line-height:1}.nav{align-items:center;gap:2px;margin-left:12px;margin-right:auto;display:flex}.nav a,.nav__tools,.nav__tools-plain{color:var(--text-muted);border-radius:var(--r-md);white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:7px 11px;font-family:inherit;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s}.nav__tools{align-items:center;gap:5px;display:inline-flex}.nav a:hover,.nav__tools:hover,.nav__tools[aria-expanded=true],.nav a[aria-current=page]{color:var(--text);background:var(--surface-inset)}.nav [data-section]{color:var(--text);box-shadow:inset 0 -2px 0 var(--border-strong)}.nav__chevron{transition:transform .18s var(--ease)}.nav__tools[aria-expanded=true] .nav__chevron{transform:rotate(180deg)}.searchbtn{border-radius:var(--r-full);border:1px solid var(--border-input);background:var(--surface);height:34px;color:var(--text-subtle);cursor:pointer;flex-shrink:0;align-items:center;gap:8px;padding:0 8px 0 10px;font-family:inherit;font-size:.8125rem;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.searchbtn:hover{background:var(--surface-inset);color:var(--text);border-color:var(--border-hover)}.searchbtn__label{padding-right:2rem}.searchbtn__key{font-family:var(--font);border-radius:var(--r-sm);background:var(--surface-inset);color:var(--text-subtle);border:1px solid var(--border);padding:2px 6px;font-size:.6875rem}html:not(.js) .searchbtn,html:not(.js) .nav__tools,html:not(.js) .theme-toggle,html:not(.js) .icon-btn.nav-toggle,.nav__tools-plain{display:none}html:not(.js) .nav__tools-plain{display:inline-block}@media (width<=860px){html:not(.js) .site-header__inner{height:auto;min-height:var(--header-h);flex-wrap:wrap;padding-block:12px}html:not(.js) .nav{flex-basis:100%;order:5;justify-content:center;margin:0;display:flex}html:not(.js) .acct{margin-left:auto}}.megamenu{left:0;right:0;top:var(--header-h);background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);max-height:calc(100dvh - var(--header-h));overscroll-behavior:contain;position:absolute;overflow-y:auto}.megamenu__inner{padding-block:1.25rem}.mega{grid-template-columns:236px minmax(0,1fr);display:grid}.mega__rail{border-right:1px solid var(--border);flex-direction:column;gap:1rem;padding-right:1rem;display:flex}.mega__cats{border:0;flex-direction:column;gap:2px;min-inline-size:0;margin:0;padding:0;display:flex}.mega__cat{border-radius:var(--r-md);color:var(--text-muted);cursor:pointer;user-select:none;align-items:center;gap:10px;padding:7px 10px 7px 8px;font-size:.875rem;font-weight:520;transition:background .12s,color .12s;display:flex;position:relative}.mega__cat:hover{color:var(--text);background:var(--surface-inset)}.mega__cat:has(.mega__radio:checked){color:var(--text);background:var(--surface-inset);font-weight:620}.mega__cat:has(.mega__radio:focus-visible){outline:2px solid var(--focus);outline-offset:1px}.mega__radio{opacity:0;pointer-events:none;margin:0;position:absolute;inset:0}.mega__cat-icon{border-radius:var(--r-sm);width:28px;height:28px;color:var(--text-subtle);border:1px solid #0000;place-items:center;transition:color .12s,background .12s,border-color .12s;display:inline-grid}.mega__cat:has(.mega__radio:checked) .mega__cat-icon{color:var(--text);background:var(--surface);border-color:var(--border)}.mega__cat-name{flex:1;min-width:0}.mega__cat-count{border-radius:var(--r-full);font-variant-numeric:tabular-nums;text-align:center;min-width:22px;color:var(--text-subtle);padding:1px 6px;font-size:.6875rem;font-weight:560}.mega__cat:has(.mega__radio:checked) .mega__cat-count{background:var(--surface);color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border)}.mega__rail-foot{border-top:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:.6rem;margin-top:auto;padding:.9rem 0 .1rem 8px;display:flex}.mega__search{border-radius:var(--r-md);border:1px solid var(--border-input);background:var(--surface);width:calc(100% + 8px);height:34px;color:var(--text-subtle);font:inherit;cursor:pointer;align-items:center;gap:8px;margin-left:-8px;padding:0 8px 0 10px;font-size:.8125rem;transition:background .15s,color .15s,border-color .15s;display:flex}.mega__search:hover{background:var(--surface-inset);color:var(--text);border-color:var(--border-hover)}.mega__search kbd{font-family:var(--font);border-radius:var(--r-sm);background:var(--surface-inset);border:1px solid var(--border);margin-left:auto;padding:1px 6px;font-size:.6875rem}.megamenu__all{color:var(--text);align-items:center;gap:6px;font-size:.875rem;font-weight:560;text-decoration:none;display:inline-flex}.megamenu__all svg{transition:transform .18s var(--ease)}.megamenu__all:hover svg{transform:translate(3px)}.megamenu__tally{color:var(--text-subtle);font-size:.75rem}.mega__shelves{min-width:0;padding-left:1.75rem;display:grid}.mega__shelf{grid-area:1/1;min-width:0}.mega__head{border-bottom:1px solid var(--border);align-items:center;gap:14px;margin-bottom:10px;padding:2px 0 14px;display:flex}.mega__head-glyph{border-radius:var(--r-lg);width:44px;height:44px;color:var(--text);background:linear-gradient(135deg, var(--surface-inset), var(--surface));border:1px solid var(--border);flex-shrink:0;place-items:center;display:inline-grid}.mega__head-text{flex:1;min-width:0}.mega__title{letter-spacing:-.01em;color:var(--text);margin:0;font-size:1rem;font-weight:640}.mega__title a{color:inherit;text-decoration:none}.mega__title a:hover{text-underline-offset:3px;text-decoration:underline}.mega__blurb{color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:.8125rem;overflow:hidden}.mega__shelf-link{color:var(--text-muted);border-radius:var(--r-full);border:1px solid var(--border-input);flex-shrink:0;align-items:center;gap:5px;padding:6px 10px;font-size:.8125rem;font-weight:560;text-decoration:none;transition:color .12s,background .12s;display:inline-flex}.mega__shelf-link:hover{color:var(--text);background:var(--surface-inset)}.mega__shelf-link svg{transition:transform .18s var(--ease)}.mega__shelf-link:hover svg{transform:translate(2px)}.mega__tools{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2px 8px;margin:0 -10px;padding:0;list-style:none;display:grid}.mega__tool{border-radius:var(--r-md);color:var(--text);border:1px solid #0000;align-items:flex-start;gap:12px;padding:8px 10px;text-decoration:none;transition:background .12s,border-color .12s;display:flex}.mega__tool:hover{background:var(--surface-inset)}.mega__tool[aria-current=page]{border-color:var(--border);background:var(--surface-inset)}.mega__tool-icon{border-radius:var(--r-md);background:var(--surface-inset);border:1px solid var(--border);width:34px;height:34px;color:var(--text-muted);transition:background .15s, color .15s, border-color .15s, transform .2s var(--ease);flex-shrink:0;place-items:center;display:inline-grid}.mega__tool:hover .mega__tool-icon,.mega__tool[aria-current=page] .mega__tool-icon{background:var(--surface);color:var(--text);border-color:var(--border-hover)}.mega__tool:hover .mega__tool-icon{transform:translateY(-1px)}.mega__tool-text{flex-direction:column;min-width:0;display:flex}.mega__tool-name{font-size:.875rem;font-weight:560;line-height:1.3}.mega__tool[aria-current=page] .mega__tool-name{font-weight:640}.mega__tool-desc{-webkit-line-clamp:2;line-clamp:2;color:var(--text-subtle);-webkit-box-orient:vertical;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.mega__soon{align-items:center;gap:10px;margin:12px 0 0;font-size:.8125rem;display:flex}.mega__soon a{color:var(--text-subtle);border-bottom:1px dashed var(--border-input);text-decoration:none}.mega__soon a:hover{color:var(--text)}.mega__soon-dots{gap:3px;display:inline-flex}.mega__soon-dots i{background:var(--text-subtle);opacity:.5;border-radius:50%;width:4px;height:4px}.megamenu__extra{display:none}@supports not selector(:has(*)){.mega{grid-template-columns:minmax(0,1fr)}.mega__rail{display:none}.mega__shelves{gap:1.5rem;padding-left:0}.mega__shelf{grid-area:auto}}@supports selector(:has(*)){.mega__shelf{visibility:hidden;opacity:0}}@media (prefers-reduced-motion:no-preference){.megamenu{animation:nav-drop .18s var(--ease)}.mega__soon-dots i{animation:mega-build 1.4s var(--ease) infinite}.mega__soon-dots i:nth-child(2){animation-delay:.18s}.mega__soon-dots i:nth-child(3){animation-delay:.36s}}@keyframes mega-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.mega__shelf{animation:none!important}}@keyframes mega-build{40%{opacity:1;transform:translateY(-2px)}}@keyframes nav-drop{0%{opacity:0;transform:translateY(-6px)}}.iconsprite{width:0;height:0;position:absolute;overflow:hidden}.icon{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-btn.nav-toggle,.nav-toggle__close,.nav-toggle.is-open .nav-toggle__open{display:none}.nav-toggle.is-open .nav-toggle__close{display:block}@media (width<=860px){.nav{display:none}.icon-btn.nav-toggle{display:inline-grid}.searchbtn{border-radius:var(--r-md);justify-content:center;width:34px;margin-left:auto;padding:0}.searchbtn__label,.searchbtn__key{display:none}.megamenu{box-shadow:none;background:var(--bg);border-bottom:0;position:static}.mega{flex-direction:column;display:flex}.mega__rail{display:contents}.mega__cats{scrollbar-width:none;flex-direction:row;gap:6px;margin:0 -16px 1rem;padding:2px 16px;overflow-x:auto}.mega__cat{border-radius:var(--r-full);border:1px solid var(--border-input);white-space:nowrap;flex-shrink:0;padding:6px 12px 6px 6px}.mega__cat-icon{border-radius:var(--r-full);width:24px;height:24px}.mega__cat-count{display:none}.mega__shelves{order:1;padding-left:0}.mega__rail-foot{order:2;margin-top:1rem;padding-left:0}.mega__search{display:none}.mega__head-glyph{width:38px;height:38px}.mega__shelf-link{display:none}@supports not selector(:has(*)){.mega__cats{display:none}}@supports selector(:has(*)){.mega__shelf{display:none}}.megamenu__extra{border-top:1px solid var(--border);flex-wrap:wrap;gap:2px;margin-top:.9rem;padding-top:.9rem;display:flex}.megamenu__extra a{color:var(--text-muted);border-radius:var(--r-md);margin-left:-10px;padding:8px 10px;font-size:.9375rem;font-weight:520;text-decoration:none}.megamenu__extra a[aria-current=page]{color:var(--text);font-weight:620}}.icon-btn{border-radius:var(--r-md);border:1px solid var(--border-input);background:var(--surface);width:34px;height:34px;color:var(--text-muted);cursor:pointer;flex-shrink:0;place-items:center;transition:background .15s,color .15s,border-color .15s;display:inline-grid}.icon-btn:hover{background:var(--surface-inset);color:var(--text);border-color:var(--border-hover)}.site-header .theme-toggle{border-radius:var(--r-full);width:28px;height:28px}.palette{border:1px solid var(--border-strong);border-radius:var(--r-lg);background:var(--surface);width:min(560px,100vw - 2rem);max-height:min(560px,100dvh - 4rem);color:var(--text);box-shadow:var(--shadow-lg);flex-direction:column;margin:12vh auto auto;padding:0;display:none;overflow:hidden}.palette[open]{display:flex}.palette::backdrop{background:color-mix(in srgb, var(--bg) 65%, transparent);-webkit-backdrop-filter:blur(3px)}@media (prefers-reduced-motion:no-preference){.palette[open]{animation:nav-drop .16s var(--ease)}}.palette__bar{border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:10px;padding:12px 12px 12px 14px;display:flex}.palette__icon{color:var(--text-subtle);flex-shrink:0}.palette__input{min-width:0;color:var(--text);background:0 0;border:0;flex:1;font-family:inherit;font-size:1rem}.palette__input:focus{outline:none}.palette__input::placeholder{color:var(--text-subtle)}.palette__close{border-radius:var(--r-sm);width:26px;height:26px;color:var(--text-subtle);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;display:inline-grid}.palette__close:hover{background:var(--surface-inset);color:var(--text)}.palette__results{overscroll-behavior:contain;flex:1;padding:6px;overflow-y:auto}.palette__group{letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);padding:10px 8px 4px;font-size:.6875rem;font-weight:620}.palette__opt{border-radius:var(--r-md);color:var(--text);align-items:center;gap:10px;padding:8px 10px;scroll-margin:6px;text-decoration:none;display:flex}.palette__opt.is-active{background:var(--surface-inset)}.palette__icon-row{color:var(--text-subtle)}.palette__opt.is-active .palette__icon-row{color:var(--text)}.palette__name{flex:1;min-width:0;font-size:.9375rem;font-weight:520}.palette__meta{color:var(--text-subtle);white-space:nowrap;flex-shrink:0;font-size:.75rem}.palette__opt--soon .palette__name{color:var(--text-muted);font-weight:480}.palette__empty{color:var(--text-muted);padding:1.25rem 1.25rem 1.5rem;font-size:.875rem}.palette__foot{border-top:1px solid var(--border);color:var(--text-subtle);flex-shrink:0;gap:1rem;padding:8px 14px;font-size:.75rem;display:flex}.palette__foot kbd{font-family:var(--font);border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface-inset);margin-right:3px;padding:1px 5px;font-size:.6875rem}@media (width<=620px){.palette{margin-top:5vh}.palette__foot{display:none}}:root[data-theme=dark] .theme-toggle__sun,:root:not([data-theme=light]) .theme-toggle__sun{display:none}:root[data-theme=dark] .theme-toggle__moon,:root:not([data-theme=light]) .theme-toggle__moon,:root[data-theme=light] .theme-toggle__sun{display:block}:root[data-theme=light] .theme-toggle__moon{display:none}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .theme-toggle__sun{display:block}:root:not([data-theme=dark]) .theme-toggle__moon{display:none}}.btn{--btn-bg:var(--surface);--btn-fg:var(--text);--btn-border:var(--border-input);border-radius:var(--r-md);border:1px solid var(--btn-border);background:var(--btn-bg);height:40px;color:var(--btn-fg);cursor:pointer;white-space:nowrap;user-select:none;transition:background .15s var(--ease), border-color .15s, transform 80ms, opacity .15s;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.9375rem;font-weight:560;line-height:1;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:translateY(.5px)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn svg{flex-shrink:0}.btn--primary{--btn-bg:var(--accent);--btn-fg:var(--on-accent);--btn-border:transparent;box-shadow:var(--shadow-sm)}.btn--primary:hover:not(:disabled){--btn-bg:var(--accent-hover);color:var(--on-accent)}.btn--primary:active:not(:disabled){--btn-bg:var(--accent-active)}.btn--secondary:hover:not(:disabled){background:var(--surface-inset);border-color:var(--border-hover);color:var(--text)}.btn--ghost{--btn-bg:transparent;--btn-border:transparent;--btn-fg:var(--text-muted)}.btn--ghost:hover:not(:disabled){background:var(--surface-inset);color:var(--text)}.btn--lg{border-radius:var(--r-md);height:48px;padding:0 24px;font-size:1rem}.btn--sm{border-radius:var(--r-sm);gap:6px;height:32px;padding:0 11px;font-size:.8125rem}.btn--block{width:100%}.btn--danger{--btn-fg:var(--danger)}.btn--danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.btn[aria-pressed=true]{--btn-bg:var(--accent-soft);--btn-fg:var(--accent-text);--btn-border:var(--accent-border)}.btn[aria-pressed=true]:hover:not(:disabled){--btn-bg:color-mix(in srgb, var(--accent-soft) 80%, var(--accent));color:var(--accent-text)}.btn.is-busy{pointer-events:none;position:relative;color:#0000!important}.btn.is-busy>*{visibility:hidden}.btn.is-busy:after{content:"";width:16px;height:16px;color:var(--on-accent);visibility:visible;border:2px solid;border-top-color:#0000;border-radius:50%;margin:-8px 0 0 -8px;animation:.6s linear infinite spin;position:absolute;inset:50% auto auto 50%}.btn--secondary.is-busy:after,.btn--ghost.is-busy:after{color:var(--text-muted)}@keyframes spin{to{transform:rotate(360deg)}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.card--pad{padding:clamp(1rem,.7rem + 1.2vw,1.5rem)}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-md);overflow:hidden}.hero{padding-top:clamp(1.5rem,1rem + 2.4vw,2.75rem);padding-bottom:clamp(1.25rem,.8rem + 1.5vw,2rem)}.hero__grid{align-items:start;gap:clamp(1.5rem,1rem + 3vw,3.5rem);display:grid}.hero__grid--center{align-items:center}@media (width>=900px){.hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}}.hero__wide{min-width:0}@media (width>=900px){.hero__wide{grid-column:1/-1}}@media (width<=899px){.hero__grid:has(>.hero__wide) .hero__proof{order:1}}.hero__copy{min-width:0}.hero h1{text-wrap:balance}.hero--screenshot h1{font-size:clamp(1.75rem,1.4rem + 1.8vw,2.5rem)}.hero p.hero__sub{color:var(--text-muted);max-width:54ch;margin-top:.875rem;margin-bottom:1.5rem;font-size:clamp(1rem,.95rem + .3vw,1.125rem)}.hero__pills{flex-wrap:wrap;gap:7px;margin-bottom:1.125rem;display:flex}.hero__pills span{border-radius:var(--r-full);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);white-space:nowrap;align-items:center;gap:6px;padding:4px 11px;font-size:.78rem;font-weight:520;display:inline-flex}.hero__pills strong{color:var(--text);font-weight:640}.hero__eyebrow{color:var(--accent-text);background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:var(--r-full);align-items:center;gap:7px;margin-bottom:1.125rem;padding:5px 13px;font-size:.8125rem;font-weight:550;display:inline-flex}.hero__eyebrow svg{flex-shrink:0}.hero__trust{color:var(--text-subtle);flex-wrap:wrap;gap:.5rem 1.25rem;margin-top:1.25rem;font-size:.8125rem;display:flex}.hero__trust span{align-items:center;gap:6px;display:inline-flex}.hero__trust svg{color:var(--success);flex-shrink:0}.hero__trust--grid{grid-template-columns:1fr;display:grid}@media (width>=900px){.hero__trust--grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.steps-card{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface-2);padding:clamp(1rem,.7rem + 1vw,1.5rem)}.steps-card ol{counter-reset:step;flex-direction:column;gap:14px;padding:0;list-style:none;display:flex}.steps-card li{grid-template-columns:28px 1fr;align-items:start;gap:12px;display:grid}.steps-card li:before{counter-increment:step;content:counter(step);background:var(--accent);width:28px;height:28px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:.8125rem;font-weight:680;display:grid}.steps-card strong{font-size:.9375rem;font-weight:620;display:block}.steps-card span{color:var(--text-muted);font-size:.8438rem}.steps-card--motion .steps-card__caption{color:var(--text-muted);margin:.875rem 0 0;font-size:.8438rem}.toolmotion{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--bg-subtle);margin-bottom:16px;overflow:hidden}.tm{width:100%;height:auto}.tm *{transform-box:fill-box;transform-origin:50%}.tm .tm-inset{transform-box:view-box;transform-origin:0 0}.tm-panel{fill:var(--surface);stroke:var(--border-strong);stroke-width:1.25px}.tm-outline{fill:none;stroke:var(--border-strong);stroke-width:1.25px}.tm-solid{fill:var(--text)}.tm-knockout{fill:var(--surface)}.tm-accent,.tm-ball,.tm-fill{fill:var(--accent)}.tm-chip{fill:var(--surface);stroke:var(--border);stroke-width:1px}.tm-track,.tm-hill{fill:var(--surface-inset)}.tm-sun{fill:var(--border-strong)}.tm-ground{stroke:var(--border-strong);stroke-width:1.25px}.tm-cell-dot{fill:var(--border-strong)}.tm-ticks line{stroke:var(--border-strong);stroke-width:1px}.tm-drop{stroke:var(--border-strong);stroke-width:2px;stroke-dasharray:7 5}.tm-brackets path{stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.tm-cursor{fill:var(--text);stroke:var(--surface);stroke-width:1.5px;stroke-linejoin:round}.tm-arrow{stroke:var(--on-accent);stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round}.tm-badge{fill:var(--surface);stroke:var(--success);stroke-width:1.5px}.tm-tick{stroke:var(--success);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:14;stroke-dashoffset:0}.tm-url{fill:var(--text-subtle)}.tm-caret{fill:var(--accent);transform:translate(146px)}.tm-label{font-family:var(--font-mono);text-anchor:middle;fill:var(--text-subtle);font-size:8px;font-weight:500}.tm-label--on-accent{fill:var(--on-accent);letter-spacing:.06em;font-size:8.5px}.tm-label--chip{fill:var(--text-muted);font-size:7.5px}.tm-keycap{font-family:var(--font-mono);text-anchor:middle;fill:var(--text);font-size:15px;font-weight:500}.tm-keycap--on-accent{fill:var(--on-accent)}.tm-stat-num{font-family:var(--font-display);letter-spacing:var(--track-display);text-anchor:middle;fill:var(--text);font-size:15px;font-weight:700}.tm-stat-num--on-accent{fill:var(--on-accent)}.tm-code{fill:var(--surface-inset)}.is-workspace :is(.tm,.hm,.cg-svg),.is-workspace :is(.tm,.hm,.cg-svg) *{animation-play-state:paused}@media (prefers-reduced-motion:reduce){:is(.tm,.hm,.cg-svg),:is(.tm,.hm,.cg-svg) *{animation:none!important}}.cg{--cg-cycle:5.2s;--cg-delay:0s;border-radius:var(--r-md);background:var(--accent-soft);border:1px solid var(--accent-border);width:34px;height:34px;color:var(--accent-text);flex-shrink:0;place-items:center;display:grid}.cg-svg{width:22px;height:22px;display:block}.cg-svg *{transform-box:fill-box;transform-origin:50%}.cg-solid{fill:currentColor}.cg-stroke{stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;fill:none}.cg-frame{stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;fill:none}.cg-hair{stroke:currentColor;stroke-width:1.4px;stroke-linejoin:round;fill:none;opacity:.55}.cg-swatch{stroke:currentColor;stroke-width:1.6px;fill:none}.cg-swatch--back{fill:currentColor;fill-opacity:.18}.cg-play{animation:cg-play var(--cg-cycle) var(--ease) var(--cg-delay) infinite backwards}@keyframes cg-play{0%,55%,to{transform:scale(1)}70%{transform:scale(.76)}85%{transform:scale(1.06)}}.cg-type{transform-origin:0;animation:cg-type var(--cg-cycle) var(--ease) var(--cg-delay) infinite backwards}@keyframes cg-type{0%,40%,to{transform:scaleX(1)}55%{transform:scaleX(.18)}75%{transform:scaleX(.62)}}.cg-bracket{animation:cg-bracket var(--cg-cycle) var(--ease) var(--cg-delay) infinite backwards}.cg-bracket--r{animation-name:cg-bracket-r}@keyframes cg-bracket{0%,45%,to{transform:translate(0)}65%{transform:translate(2.2px)}}@keyframes cg-bracket-r{0%,45%,to{transform:translate(0)}65%{transform:translate(-2.2px)}}.cg-scan{animation:cg-scan var(--cg-cycle) var(--ease) var(--cg-delay) infinite backwards}@keyframes cg-scan{0%,30%,to{opacity:1;transform:translateY(0)}55%{opacity:1;transform:translateY(6px)}80%{opacity:1;transform:translateY(3px)}}.cg-cap{animation:cg-cap var(--cg-cycle) var(--ease) var(--cg-delay) infinite backwards}@keyframes cg-cap{0%,50%,to{transform:translateY(0)}65%{transform:translateY(-2px)}80%{transform:translateY(.8px)}}.cg-drift{animation:cg-drift var(--cg-cycle) var(--ease) var(--cg-delay) infinite backwards}@keyframes cg-drift{0%,40%,to{transform:translate(0)}65%{transform:translate(3.4px)}}.entry{border:1px solid var(--border-strong);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-sm);padding:clamp(1rem,.7rem + 1vw,1.375rem)}.entry__label{margin-bottom:9px;font-size:.875rem;font-weight:600;display:block}.entry__note{color:var(--text-subtle);text-wrap:pretty;margin-top:12px;font-size:.8125rem}.entry__or{color:var(--text-muted);margin-top:12px;font-size:.875rem}.linkbtn:hover{color:var(--accent-hover)}.entry__resume{border-top:1px solid var(--border);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;padding-top:14px;font-size:.875rem;display:flex}.urlbar{align-items:stretch;gap:8px;display:flex}.urlbar__field{flex:1;min-width:0;position:relative}.urlbar__field svg{color:var(--text-subtle);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.input{background:var(--surface);border:1px solid var(--border-input);border-radius:var(--r-md);width:100%;height:48px;color:var(--text);padding:0 14px;font-size:.9375rem;transition:border-color .15s,box-shadow .15s}textarea.input{height:auto;min-height:6rem;padding:.75rem .875rem;line-height:1.5}.input::placeholder{color:var(--text-subtle)}.input:hover:not(:focus){border-color:var(--border-hover)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}.input--icon{padding-left:40px;padding-right:78px}.input[aria-invalid=true]{border-color:var(--danger)}.input[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 18%, transparent)}.urlbar__paste{border-radius:var(--r-sm);border:1px solid var(--border-input);background:var(--surface-2);height:30px;color:var(--text-muted);cursor:pointer;padding:0 10px;font-size:.78rem;font-weight:560;transition:background .15s,color .15s;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.urlbar__paste:hover{background:var(--surface-inset);color:var(--text)}@media (width<=560px){.urlbar{flex-direction:column}.urlbar .btn{width:100%}}.field-msg{min-height:1.25rem;color:var(--text-subtle);align-items:flex-start;gap:7px;margin-top:9px;font-size:.8438rem;display:flex}.field-msg svg{flex-shrink:0;margin-top:2px}.field-msg--error{color:var(--danger)}.field-msg--ok{color:var(--success)}.field-msg:empty{display:none}.examples{color:var(--text-subtle);flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px;font-size:.8125rem;display:flex}.chip{border-radius:var(--r-full);border:1px solid var(--border-input);background:var(--surface-2);color:var(--text-muted);font-size:.78rem;font-family:var(--font-mono);cursor:pointer;padding:4px 10px;transition:background .15s,border-color .15s,color .15s}.chip:hover{background:var(--surface-inset);border-color:var(--border-hover);color:var(--text)}.vmeta{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg);align-items:center;gap:14px;padding:12px;display:flex}.vmeta__thumb{aspect-ratio:16/9;object-fit:cover;border-radius:var(--r-sm);background:var(--surface-inset);flex-shrink:0;width:108px}.vmeta__body{flex:1;min-width:0}.vmeta__title{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:.9375rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.vmeta__author{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.8125rem;overflow:hidden}.vmeta__actions{flex-shrink:0}@media (width<=560px){.vmeta__thumb{width:80px}.vmeta__actions .btn span{display:none}}.grid-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.grid-head h3{font-size:1rem;font-weight:620}.grid-head__meta{color:var(--text-subtle);margin-left:8px;font-size:.8125rem;font-weight:400}.thumb-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.thumb{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);transition:border-color .15s, box-shadow .15s, transform .15s var(--ease);position:relative;overflow:hidden}.thumb:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.thumb__imgwrap{aspect-ratio:16/9;background:var(--surface-inset);cursor:zoom-in;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.thumb__imgwrap img{object-fit:cover;width:100%;height:100%;transition:transform .35s var(--ease)}.thumb:hover .thumb__imgwrap img{transform:scale(1.03)}.thumb__badge{z-index:2;border-radius:var(--r-full);color:#fff;letter-spacing:.01em;backdrop-filter:blur(4px);background:#000000b8;padding:3px 8px;font-size:.6875rem;font-weight:600;position:absolute;top:8px;left:8px}.thumb__badge--best{background:var(--accent);color:var(--on-accent)}.thumb__body{justify-content:space-between;align-items:center;gap:10px;padding:11px 12px 12px;display:flex}.thumb__label{min-width:0}.thumb__name{white-space:nowrap;text-overflow:ellipsis;font-size:.8438rem;font-weight:580;overflow:hidden}.thumb__dims{color:var(--text-subtle);font-size:.75rem;font-family:var(--font-mono);margin-top:1px}.thumb__actions{flex-shrink:0;gap:5px;display:flex}.skeleton{background:linear-gradient(90deg, var(--surface-inset) 25%, color-mix(in srgb, var(--surface-inset) 55%, var(--border-strong)) 37%, var(--surface-inset) 63%);border-radius:var(--r-lg);background-size:400% 100%;animation:1.4s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:100%}to{background-position:0}}.skeleton-card{aspect-ratio:16/9.9}.optionbar{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg);flex-wrap:wrap;align-items:center;gap:10px 20px;padding:13px 15px;display:flex}.optgroup{align-items:center;gap:8px;display:flex}.optgroup>label,.optgroup>.optgroup__label{color:var(--text-muted);white-space:nowrap;align-items:center;gap:7px;font-size:.8125rem;font-weight:500;display:inline-flex}.optgroup input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;margin:0}.optgroup>label:has(input[type=checkbox]){cursor:pointer;color:var(--text)}.segmented{background:var(--surface-inset);border:1px solid var(--border-input);border-radius:var(--r-md);gap:2px;padding:2px;display:inline-flex}.segmented button{white-space:nowrap;color:var(--text-muted);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0;padding:4px 11px;font-size:.8125rem;font-weight:550;transition:background .15s,color .15s}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.segmented--fill{width:100%;display:flex}.segmented--fill button{text-align:center;flex:1}.select{border-radius:var(--r-sm);border:1px solid var(--border-input);background-color:var(--surface);height:32px;color:var(--text);padding:0 30px 0 10px;font-size:.8125rem}select:is(.input,.select):not([multiple]):not([size]){cursor:pointer;appearance:none!important;background-image:linear-gradient(45deg, transparent 40%, var(--text-muted) 40% 60%, transparent 60%), linear-gradient(135deg, transparent 40%, var(--text-muted) 40% 60%, transparent 60%)!important;background-position:right 18px center,right 12px center!important;background-repeat:no-repeat!important;background-size:6px 6px,6px 6px!important;padding-inline-end:38px!important}.range{width:110px;accent-color:var(--accent);cursor:pointer}.optvalue{font-family:var(--font-mono);color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;min-width:3.2em;font-size:.78rem}.optionbar__spacer{flex:1}.optionbar__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.dropzone{text-align:center;border:2px dashed var(--border-strong);border-radius:var(--r-xl);background:var(--surface-2);cursor:pointer;transition:border-color .18s, background .18s, transform .18s var(--ease);place-items:center;padding:clamp(2rem,1rem + 5vw,3.75rem) 1.5rem;display:grid;position:relative}.dropzone:hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone.is-dragover{border-color:var(--accent);background:var(--accent-soft);transform:scale(1.005)}.dropzone__icon{color:var(--accent-text);margin-bottom:14px}.dropzone__title{font-size:1.0625rem;font-weight:620}.dropzone__hint{color:var(--text-muted);max-width:46ch;margin-top:6px;font-size:.875rem}.dropzone input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.stage{border-radius:var(--r-lg);aspect-ratio:16/9;background:#000;place-items:center;display:grid;position:relative;overflow:hidden}.stage video,.stage img,.stage iframe{object-fit:contain;border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.stage__hint{color:#fff;text-align:center;pointer-events:none;opacity:0;background:linear-gradient(#0000,#000000bf);padding:10px 14px;font-size:.78rem;transition:opacity .2s;position:absolute;inset:auto 0 0}.stage:hover .stage__hint{opacity:1}.stage--croppable{position:relative}.cropper{cursor:crosshair;touch-action:none;z-index:3;background:0 0;position:absolute;inset:0}.cropper__box{border:2px solid var(--accent);pointer-events:none;position:absolute;box-shadow:0 0 0 9999px #0000008c}.cropper__size{border-radius:var(--r-sm);background:var(--accent);color:var(--on-accent);font-family:var(--font-mono);white-space:nowrap;padding:2px 7px;font-size:.7rem;font-weight:600;position:absolute;top:-26px;left:0}.cropper__box[style*="top: 0px"] .cropper__size{top:2px;left:2px}.cropper__hint{border-radius:var(--r-full);backdrop-filter:blur(4px);text-align:center;color:#fff;pointer-events:none;background:#000000b8;width:max-content;max-width:90%;margin-inline:auto;padding:9px 16px;font-size:.9rem;font-weight:550;position:absolute;inset:50% 0 auto;transform:translateY(-50%)}.transport{background:var(--surface-2);border:1px solid var(--border);border-radius:0 0 var(--r-lg) var(--r-lg);border-top:0;flex-wrap:wrap;align-items:center;gap:8px;padding:12px;display:flex}.scrubber{min-width:140px;accent-color:var(--accent);cursor:pointer;flex:220px;height:22px}.timecode{font-family:var(--font-mono);color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8125rem}.timecode strong{color:var(--text);font-weight:600}.time-input{width:108px;height:32px;font-family:var(--font-mono);border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);color:var(--text);text-align:center;padding:0 9px;font-size:.8125rem}.time-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}.fps-control{align-items:center;gap:5px;display:inline-flex}.fps-control .select{height:30px;font-family:var(--font-mono);max-width:138px;padding-right:26px;font-size:.75rem}kbd,.kbd{border:1px solid var(--border-strong);background:var(--surface);font-family:var(--font-mono);color:var(--text-muted);border-bottom-width:2px;border-radius:4px;padding:1px 5px;font-size:.72rem;line-height:1.5;display:inline-block}.workspace{z-index:90;background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.is-workspace body{overflow:hidden}.is-workspace .site-header,.is-workspace .site-footer{display:none!important}.workspace__bar{border-bottom:1px solid var(--border);background:var(--bg-subtle);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px clamp(.75rem,.4rem + 1.2vw,1.5rem);display:flex}.workspace__title{letter-spacing:-.02em;align-items:center;gap:9px;font-size:.9375rem;font-weight:620;display:inline-flex}.workspace__mark{flex-shrink:0;width:22px;height:22px}.workspace__esc{margin-left:2px}@media (width<=560px){.workspace__esc{display:none}}.workspace__width{align-items:center;gap:8px;display:inline-flex}.workspace__width-label{color:var(--text-muted);font-size:.75rem;font-weight:550}@media (width<=900px){.workspace__width{display:none}}:root{--ws-max:var(--container-wide)}:root[data-workspace-width=narrow]{--ws-max:900px}:root[data-workspace-width=full]{--ws-max:none}.workspace__body>*{max-width:var(--ws-max);margin-inline:auto}.workspace__body--flush>*{max-width:none}.workspace__body{scrollbar-gutter:stable;flex:1;min-height:0;padding:clamp(.75rem,.4rem + 1.2vw,1.25rem);overflow-y:auto}.workspace__split{gap:16px;height:100%;min-height:0;display:grid}.workspace__stage{flex-direction:column;min-width:0;display:flex}@media (width>=1024px){.workspace__split{grid-template-columns:minmax(0,1fr) 300px;align-items:stretch}}.workspace__stage{--stage-h:min(58dvh, 760px)}.is-workspace [data-tool=file]>.entry__note{display:none}.urlbar--lg .input{height:54px;font-size:.9688rem}.urlbar--lg .input--icon{padding-left:44px;padding-right:84px}.urlbar--lg .urlbar__field svg{left:15px}.urlbar--lg .urlbar__paste{height:34px;right:8px}.urlbar--lg .btn--lg{height:54px}.transport__settings{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.is-workspace [data-tool=capture]>.entry__note{display:none}.stage--fill{width:100%;max-width:100%}.tray{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface-2);flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex}@media (width>=1024px){.tray{min-height:0;max-height:100%;overflow:hidden}}.tray__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.tray__title{font-size:.9375rem;font-weight:620}.tray__count{color:var(--text-subtle);font-variant-numeric:tabular-nums;margin-left:7px;font-size:.8125rem;font-weight:400}.tray__actions{flex-shrink:0;gap:6px;display:flex}.tray__empty{color:var(--text-subtle);border:1px dashed var(--border-strong);border-radius:var(--r-md);text-align:center;text-wrap:pretty;padding:16px 14px;font-size:.8438rem}.tray__list{grid-auto-rows:max-content;align-content:start;gap:10px;min-width:0;display:grid}.tray__list:empty{display:none}@media (width>=1024px){.tray__list{grid-template-columns:1fr;min-height:0;margin:-2px;padding:2px;overflow-y:auto}}@media (width<=1023px){.tray__list{scroll-snap-type:x proximity;grid-template-columns:none;padding-bottom:4px;display:flex;overflow-x:auto}.tray__list>*{scroll-snap-align:start;flex:0 0 min(200px,62vw)}}.thumb--tray .thumb__imgwrap{aspect-ratio:var(--shot-ratio,16 / 9);background:#000;max-height:190px}.thumb--tray .thumb__imgwrap img{object-fit:contain}.thumb--tray .thumb__body{gap:6px;padding:6px 8px 7px}.thumb--tray .thumb__name{font-size:.78rem}.thumb--tray .thumb__dims{font-size:.6875rem}.thumb--tray .btn--sm{height:28px;padding:0 8px}.thumb--tray .thumb__actions{gap:4px}.thumb.is-new{animation:tray-in .28s var(--ease)}@keyframes tray-in{0%{opacity:0;transform:translateY(-10px)scale(.97)}}.is-capturing .site-header{position:static}.is-capturing .toaster{left:auto;right:16px;transform:none}.stage.is-crop-target,.stage.is-crop-target iframe{border-radius:0}.stage__flash{z-index:6;opacity:0;pointer-events:none;border-radius:var(--r-lg);background:#fff;position:absolute;inset:0}.stage__flash.is-flashing{animation:.14s ease-out shutter}@keyframes shutter{0%{opacity:.8}to{opacity:0}}.tray.is-pulsing{animation:tray-pulse .42s var(--ease)}@keyframes tray-pulse{0%{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}}.stage__badge{z-index:4;position:absolute;top:8px;left:8px}.stage--mini{border:1px solid var(--border-strong);width:clamp(160px,24%,240px);box-shadow:var(--shadow-md);transition:width .2s var(--ease)}.stage--mini.is-expanded{width:clamp(260px,52%,520px)}.stage--mini.is-frozen{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent), var(--shadow-md)}.stage--croppable.is-frozen:not(.stage--mini){outline:2px solid var(--accent);outline-offset:2px}.stage__pip-btn{z-index:4;border-radius:var(--r-sm);color:#fff;cursor:pointer;opacity:0;background:#0000009e;border:0;place-items:center;width:26px;height:26px;transition:opacity .15s,background .15s;display:grid;position:absolute;top:6px;right:6px}.stage--mini:hover .stage__pip-btn,.stage__pip-btn:focus-visible{opacity:1}.stage__pip-btn:hover{background:#000c}.stat{background:var(--surface);flex-direction:column;gap:2px;padding:12px 14px;display:flex}.stat__value{font-family:var(--font-display);letter-spacing:var(--track-display);font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700;line-height:1.15}.stat__label{color:var(--text-subtle);font-size:.75rem}.stat--lead{background:var(--accent-soft)}.stat--lead .stat__value{font-size:1.5rem}.optgroup__hint{border:1px solid var(--border-input);border-radius:var(--r-full);width:15px;height:15px;color:var(--text-subtle);cursor:help;place-items:center;font-size:.66rem;font-weight:700;display:inline-grid}@media print{@page{margin:12mm}}.notice{border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);align-items:flex-start;gap:11px;padding:13px 15px;font-size:.875rem;display:flex}.notice svg{flex-shrink:0;margin-top:2px}.notice strong{color:var(--text);font-weight:600}.notice>p{margin-block:0}.notice>p+p{margin-top:.75em}.prose>:where(.table-wrap,.notice,.feature-grid)+:where(.table-wrap,.notice,.feature-grid){margin-top:1.5rem}.notice--info{background:var(--info-soft);border-color:color-mix(in srgb, var(--info) 30%, transparent)}.notice--info svg{color:var(--info)}.tool-mobile{display:none}@media (width<=899px),(pointer:coarse){.tool-mobile{display:flex}}.notice--warn{background:var(--warning-soft);border-color:color-mix(in srgb, var(--warning) 30%, transparent)}.notice--warn svg{color:var(--warning)}.notice--accent{background:var(--accent-soft);border-color:var(--accent-border)}.notice--accent svg{color:var(--accent-text)}.notice--success{background:var(--success-soft);border-color:color-mix(in srgb, var(--success) 30%, transparent)}.notice--success svg{color:var(--success)}.toaster{z-index:120;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 32px);display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--r-full);background:light-dark(var(--b-900),var(--b-200));color:light-dark(var(--b-50),var(--b-950));box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-in .28s var(--ease);align-items:center;gap:9px;padding:10px 15px;font-size:.875rem;font-weight:500;display:flex}.toast svg{flex-shrink:0}.toast--error svg{color:light-dark(#ff8095,#c0334a)}.toast--success svg{color:light-dark(#5fd6a4,#1f7a5c)}.toast.is-leaving{animation:toast-out .2s var(--ease) forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}to{opacity:1;transform:none}}@keyframes toast-out{to{opacity:0;transform:translateY(6px)scale(.97)}}dialog.lightbox{max-width:96vw;max-height:96dvh;color:var(--text);background:0 0;border:0;margin:auto;padding:0;overflow:visible}dialog.lightbox::backdrop{backdrop-filter:blur(3px);background:#000000d1}.lightbox__img{object-fit:contain;background:#000;max-width:96vw;max-height:82dvh}.lightbox__note{display:none}.is-capturing .lightbox__note{border-radius:var(--r-md);color:#fff;text-align:center;margin-top:10px;background:#0000008c;max-width:68ch;margin-inline:auto;padding:8px 12px;font-size:.8125rem;display:block}.lightbox__bar{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:12px;display:flex}.lightbox__caption{color:#fff;font-size:.8125rem;font-family:var(--font-mono);margin-right:auto;padding-left:4px}@media (width<=560px){.lightbox__caption{display:none}}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.feature{border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);padding:20px}.feature__icon{border-radius:var(--r-md);background:var(--accent-soft);width:36px;height:36px;color:var(--accent-text);border:1px solid var(--accent-border);place-items:center;margin-bottom:13px;display:grid}.feature :is(h3,h4){margin:0 0 5px;font-size:1rem;font-weight:620}.feature p{color:var(--text-muted);margin:0;font-size:.875rem}.section-head{max-width:62ch;margin-bottom:clamp(1.25rem,1rem + 1.6vw,2rem)}.section-head p{color:var(--text-muted);margin-top:.75rem}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;padding:0;list-style:none;display:grid}.steps li{padding-top:42px;position:relative}.steps li:before{counter-increment:step;content:counter(step);background:var(--accent);width:30px;height:30px;color:var(--on-accent);border-radius:50%;place-items:center;font-size:.875rem;font-weight:680;display:grid;position:absolute;top:0;left:0}.steps :is(h3,h4){margin-bottom:5px;font-size:1rem}.steps p{color:var(--text-muted);margin:0;font-size:.9rem}.steps--channels{grid-template-columns:repeat(3,minmax(0,1fr))}.steps--channels h3{margin-top:0}@media (width<=560px){.steps--channels{grid-template-columns:1fr}}.faq{max-width:var(--container-prose);margin-inline:auto}.faq details{border-bottom:1px solid var(--border)}.faq details[open] summary{color:var(--text)}.faq summary{cursor:pointer;color:var(--text);padding:17px 34px 17px 0;font-size:1rem;font-weight:570;list-style:none;transition:color .15s;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";border-right:2px solid var(--text-subtle);border-bottom:2px solid var(--text-subtle);width:9px;height:9px;transition:transform .2s var(--ease);position:absolute;top:50%;right:6px;transform:translateY(-70%)rotate(45deg)}.faq details[open] summary:after{transform:translateY(-25%)rotate(-135deg)}.faq summary:hover{color:var(--accent-text)}.faq details>div{color:var(--text-muted);max-width:68ch;padding-bottom:18px;font-size:.9375rem}.faq details>div>p+p{margin-top:.75em}.table-wrap{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:460px;font-size:.875rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:11px 15px}th{color:var(--text);background:var(--surface-2);white-space:nowrap;font-weight:600}td{color:var(--text-muted)}tbody tr:last-child td{border-bottom:0}td code,p code,li code{font-family:var(--font-mono);background:var(--surface-inset);color:var(--text);border-radius:4px;padding:1.5px 5px;font-size:.85em}pre{background:var(--surface-inset);border:1px solid var(--border);border-radius:var(--r-md);padding:14px 16px;font-size:.8125rem;line-height:1.6;overflow-x:auto}pre code{font-family:var(--font-mono);background:0 0;padding:0}.linkcards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;display:grid}.paircta+.linkcards:not([class*=mt-]){margin-top:2rem}.linkcard{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);color:var(--text);transition:border-color .15s, box-shadow .15s, transform .15s var(--ease);padding:16px 18px;text-decoration:none;display:block}.linkcard:hover{border-color:var(--accent);box-shadow:var(--shadow-md);color:var(--text);transform:translateY(-1px)}.linkcard strong{margin-bottom:3px;font-size:.9375rem;font-weight:620;display:block}.linkcard span{color:var(--text-muted);font-size:.8438rem}.linkcards--tools{grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:14px}.linkcard--tool{flex-direction:column;padding:20px;display:flex}.linkcard--tool strong{margin-bottom:6px;font-size:1.0625rem}.linkcard--tool>span{flex:1}.linkcard__cta{color:var(--accent-text);align-items:center;gap:6px;margin-top:14px;font-size:.8438rem;font-weight:580;display:inline-flex}.linkcard__cta svg{transition:transform .15s var(--ease)}.linkcard--tool:hover .linkcard__cta svg{transform:translate(3px)}.paircta{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);color:var(--text);transition:border-color .15s, box-shadow .15s, transform .15s var(--ease);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 18px;padding:18px 20px;text-decoration:none;display:grid}.paircta:hover{border-color:var(--accent);box-shadow:var(--shadow-md);color:var(--text);transform:translateY(-1px)}.prose>.paircta{margin-block:2em}.paircta__icon{border-radius:var(--r-md);border:1px solid var(--accent-border);background:var(--accent-soft);width:40px;height:40px;color:var(--accent-text);place-items:center;display:grid}.paircta__eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--text-subtle);font-size:.6875rem;font-weight:640;display:block}.paircta__title{margin-top:3px;font-size:1.0625rem;font-weight:620;line-height:1.3;display:block}.paircta__blurb{color:var(--text-muted);margin-top:4px;font-size:.875rem;line-height:1.5;display:block}.paircta__action{white-space:nowrap;border-radius:var(--r-md);border:1px solid var(--border-input);align-items:center;gap:7px;padding:10px 16px;font-size:.875rem;font-weight:580;display:inline-flex}.paircta__action svg{transition:transform .15s var(--ease)}.paircta:hover .paircta__action svg{transform:translate(3px)}.paircta--tool{background:var(--surface-2)}.paircta--tool .paircta__action{background:var(--accent);color:var(--on-accent);border-color:#0000}.paircta--tool:hover .paircta__action{background:var(--accent-hover)}@media (width<=640px){.paircta{grid-template-columns:auto minmax(0,1fr);padding:16px}.paircta__icon{align-self:start}.paircta__action{grid-column:1/-1;justify-content:center;margin-top:4px}}.crumbs{color:var(--text-subtle);padding-top:20px;font-size:.8125rem}.crumbs ol{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.crumbs li+li:before{content:"/";color:var(--border-strong);margin-right:6px}.crumbs a{color:var(--text-muted);text-decoration:none}.crumbs a:hover{color:var(--accent-text);text-decoration:underline}.site-footer{border-top:1px solid var(--border);background:var(--bg-subtle);margin-top:auto;padding-block:2.5rem 2rem}.footer-grid{grid-template-columns:1.6fr repeat(var(--footer-cols,3), minmax(0, 1fr));gap:2rem;display:grid}@media (width<=760px){.footer-grid{grid-template-columns:1fr 1fr;gap:1.75rem}.footer-grid>:first-child{grid-column:1/-1}}.footer-grid h4{text-transform:uppercase;letter-spacing:.07em;color:var(--text-subtle);margin-bottom:11px;font-size:.78rem;font-weight:620}.footer-grid ul{flex-direction:column;gap:8px;padding:0;list-style:none;display:flex}.footer-grid a{color:var(--text-muted);font-size:.875rem;text-decoration:none}.footer-grid a:hover{color:var(--accent-text);text-decoration:underline}.footer-blurb{color:var(--text-muted);max-width:34ch;margin-top:11px;font-size:.875rem}.footer-bottom{border-top:1px solid var(--border);color:var(--text-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;margin-top:2rem;padding-top:1.25rem;font-size:.8125rem;display:flex}.muted{color:var(--text-muted)}.small{font-size:.875rem}.center{text-align:center}.mt-0{margin-top:0}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row--center{justify-content:center}[hidden]{display:none!important}.badge{border-radius:var(--r-full);letter-spacing:.02em;text-transform:uppercase;background:var(--surface-inset);color:var(--text-muted);border:1px solid var(--border);align-items:center;gap:5px;padding:2px 8px;font-size:.6875rem;font-weight:620;display:inline-flex}.badge--accent{background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent-border)}.badge--success{background:var(--success-soft);color:var(--success);border-color:color-mix(in srgb, var(--success) 35%, transparent)}.dot{background:currentColor;border-radius:50%;width:6px;height:6px}.progress{background:var(--surface-inset);border-radius:var(--r-full);height:5px;overflow:hidden}.progress__bar{background:var(--accent);border-radius:var(--r-full);height:100%;transition:width .25s var(--ease);width:0}.directory{--dir-gap:14px}.directory__bar{top:var(--header-h);z-index:20;background:var(--bg);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px 14px;padding:12px 0;display:flex;position:sticky}.dirsearch{flex:260px;align-items:center;min-width:0;display:flex;position:relative}.dirsearch__icon{color:var(--text-subtle);pointer-events:none;position:absolute;left:13px}.dirsearch__input{border-radius:var(--r-full);border:1px solid var(--border-input);background:var(--surface);width:100%;min-width:0;color:var(--text);font:inherit;padding:11px 44px 11px 40px;font-size:.9375rem}.dirsearch__input::placeholder{color:var(--text-subtle);text-overflow:ellipsis}.dirsearch__input:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-color:#0000}.dirsearch__input::-webkit-search-cancel-button{cursor:pointer}.dirsearch__key{border:1px solid var(--border);background:var(--surface-2);color:var(--text-subtle);font-family:var(--font-mono);pointer-events:none;border-radius:5px;padding:1px 7px;font-size:.75rem;line-height:1.5;display:none;position:absolute;right:12px}@media (width>=700px){.dirsearch__key{display:block}}.dirfilters{scrollbar-width:none;flex-wrap:nowrap;gap:6px;display:flex;overflow-x:auto}.dirfilters::-webkit-scrollbar{display:none}@media (width>=900px){.dirfilters{flex-wrap:wrap;overflow:visible}}.chip{border-radius:var(--r-full);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font:inherit;white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;gap:6px;padding:7px 13px;font-size:.8125rem;font-weight:560;transition:border-color .15s,color .15s,background-color .15s;display:inline-flex}.chip:hover{border-color:var(--border-hover);color:var(--text)}.chip[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:#0000}.chip__n{font-family:var(--font-mono);opacity:.7;font-size:.6875rem}.dircount{color:var(--text-subtle);margin:14px 0 0;font-size:.875rem}.dircount strong{color:var(--text);font-variant-numeric:tabular-nums;font-weight:640}.dirempty{border:1px dashed var(--border-strong);border-radius:var(--r-lg);text-align:center;color:var(--text-muted);text-wrap:pretty;margin-top:28px;padding:28px 24px;font-size:.9375rem}.linkbtn{font:inherit;color:var(--accent-text);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.shelf{margin-top:clamp(1.75rem,1.25rem + 1.6vw,2.75rem)}.cathero{--cathero-h1:clamp(2rem, 1.4rem + 2.6vw, 3.25rem);align-items:flex-start;gap:1rem;display:flex}.cathero h1{margin:0}.cathero .cg{margin-top:calc(.596 * var(--cathero-h1) - 17px)}.cathero__back{color:var(--text-muted);max-width:68ch;font-size:.9375rem}@media (width<=620px){.cathero{gap:.75rem}}.shelf__head{border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;margin-bottom:14px;padding-bottom:12px;display:flex}.shelf__title{flex:1;min-width:0}.shelf__title h3{letter-spacing:var(--track-display);margin:0;font-size:1.125rem;font-weight:640}.shelf__title h3 a{color:inherit;text-decoration:none}.shelf__title h3 a:hover{text-underline-offset:3px;text-decoration:underline}.shelf__title p{color:var(--text-muted);text-wrap:pretty;max-width:68ch;margin:3px 0 0;font-size:.875rem}.shelf__tag{font-family:var(--font-mono);color:var(--text-subtle);white-space:nowrap;flex-shrink:0;align-self:center;font-size:.6875rem}@media (width<=620px){.shelf__head{flex-wrap:wrap}.shelf__tag{order:3;align-self:flex-start;width:100%}}.greading__inner{align-items:end;gap:1.5rem 3rem;display:grid}@media (width>=860px){.greading__inner{grid-template-columns:minmax(0,1fr) auto}}.greading__eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-subtle);margin:0 0 .5rem;font-size:.75rem}.greading .hero__sub{margin-bottom:0}.greading__stats{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.greading__stats>div{flex-direction:column-reverse;justify-content:flex-end;gap:2px;min-width:0;padding:14px 20px;display:flex}.greading__stats>div+div{border-left:1px solid var(--border)}.greading__stats dt{color:var(--text-subtle);font-size:.75rem;line-height:1.3}.greading__stats dd{font-family:var(--font-display);letter-spacing:var(--track-tight);font-variant-numeric:tabular-nums;color:var(--text);margin:0;font-size:clamp(1.75rem,1.4rem + 1.2vw,2.375rem);font-weight:600;line-height:1}@media (width<=480px){.greading__stats>div{padding:12px 14px}}.glab{padding-top:0}.glab__head{flex-wrap:wrap;align-items:baseline;gap:4px 18px;margin-bottom:14px;display:flex}.glab__head h2{letter-spacing:var(--track-display);margin:0;font-size:1.125rem}.glab__head p{color:var(--text-muted);text-wrap:pretty;flex:32ch;margin:0;font-size:.875rem}.glab__list{--glab-grid:color-mix(in srgb, var(--border) 70%, transparent);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}@media (width<=620px){.glab__list{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:78%;grid-auto-flow:column;overflow-x:auto}.glab__list::-webkit-scrollbar{display:none}.glab__card{scroll-snap-align:start}}.glab+.section-tight{padding-top:.5rem}.glab__card{border:1px solid var(--border);border-radius:var(--r-lg);background-color:var(--surface);background-image:linear-gradient(to bottom, transparent 0, var(--surface) 64px), linear-gradient(var(--glab-grid) 1px, transparent 1px), linear-gradient(90deg, var(--glab-grid) 1px, transparent 1px);transition:border-color .15s, box-shadow .15s, transform .15s var(--ease);background-size:100% 100%,12px 12px,12px 12px;flex-direction:column;gap:8px;padding:16px 18px;display:flex;position:relative}.glab__card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.glab__card:has(.glab__link:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.glab__no{font-family:var(--font-mono);color:var(--text-subtle);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:500;line-height:1}.glab__link{color:var(--text);text-wrap:pretty;flex:1;font-size:.9375rem;font-weight:620;line-height:1.35;text-decoration:none}.glab__link:focus-visible{outline:none}.glab__link:after{content:"";border-radius:inherit;position:absolute;inset:0}.glab__meta{font-family:var(--font-mono);color:var(--text-subtle);font-size:.6875rem}.gdir .shelf:first-of-type{margin-top:1.25rem}.gcards{grid-template-columns:repeat(auto-fill,minmax(min(100%,290px),1fr));gap:18px 16px;padding:0 6px 6px 0;display:grid}.gcard{--gcard-sheet:var(--surface-2);--gcard-edge:var(--border);border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:3px 3px 0 -1px var(--gcard-sheet), 3px 3px 0 0 var(--gcard-edge);transition:border-color .18s, box-shadow .22s var(--ease), transform .22s var(--ease);flex-direction:column;gap:8px;padding:16px 18px 14px;display:flex;position:relative}.gcard:hover{border-color:var(--border-hover);box-shadow:5px 5px 0 -1px var(--gcard-sheet), 5px 5px 0 0 var(--gcard-edge), 9px 9px 0 -1px var(--gcard-sheet), 9px 9px 0 0 var(--gcard-edge), var(--shadow-md);transform:translate(-1px,-2px)}.gcard:has(.gcard__link:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.gcard--measured{background-image:repeating-linear-gradient(90deg, var(--border-strong) 0 1px, transparent 1px 8px);background-position:0 0;background-repeat:no-repeat;background-size:100% 5px}.gcard__meta{font-family:var(--font-mono);color:var(--text-subtle);flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;font-size:.6875rem;display:flex}.gcard__kind{letter-spacing:.08em;text-transform:uppercase}.gcard__badge{border-radius:var(--r-full);background:var(--success-soft);color:var(--success);padding:1px 7px;font-weight:600}.gcard__time{font-variant-numeric:tabular-nums;margin-left:auto}.gcard__title{letter-spacing:-.01em;text-wrap:pretty;margin:0;font-size:1rem;font-weight:640;line-height:1.35}.gcard__link{color:var(--text);text-decoration:none}.gcard__link:focus-visible{outline:none}.gcard__link:after{content:"";border-radius:inherit;position:absolute;inset:0}.gcard__blurb{color:var(--text-muted);text-wrap:pretty;flex:1;margin:0;font-size:.875rem}.gcard__pair{border-top:1px dashed var(--border);flex-wrap:wrap;align-items:center;gap:4px 8px;margin:4px 0 0;padding-top:10px;font-size:.8125rem;display:flex}.gcard__pairlabel{color:var(--text-subtle)}.gcard__pair a{z-index:1;color:var(--accent-text);align-items:center;gap:6px;font-weight:580;text-decoration:none;display:inline-flex;position:relative}.gcard__pair a:hover{text-underline-offset:3px;text-decoration:underline}@media (prefers-reduced-motion:reduce){.gcard,.glab__card{transition:none}.gcard:hover,.glab__card:hover{transform:none}}.toolcards{gap:var(--dir-gap,14px);grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));display:grid}.toolcard{border-radius:var(--r-lg);flex-direction:column;gap:6px;min-width:0;padding:16px 18px;display:flex}.toolcard__name{font-family:var(--font-display);letter-spacing:var(--track-display);text-wrap:balance;font-size:.9688rem;font-weight:620}.toolcard__blurb{color:var(--text-muted);text-wrap:pretty;flex:1;font-size:.8438rem;line-height:1.5}.toolcard__foot{justify-content:space-between;align-items:center;gap:10px;margin-top:8px;display:flex}.toolcard--live{border:1px solid var(--border);background:var(--surface);color:var(--text);transition:border-color .15s, box-shadow .15s, transform .15s var(--ease);text-decoration:none}.toolcard--live:hover{border-color:var(--accent);box-shadow:var(--shadow-md);color:var(--text);transform:translateY(-2px)}.toolcard__cta{color:var(--accent-text);align-items:center;gap:5px;font-size:.8125rem;font-weight:600;display:inline-flex}.toolcard__cta svg{transition:transform .15s var(--ease)}.toolcard--live:hover .toolcard__cta svg{transform:translate(3px)}.toolcard__runs{font-family:var(--font-mono);color:var(--text-subtle);white-space:nowrap;font-size:.6563rem}.toolcard--planned{border:1px dashed var(--border-strong);background:0 0}.toolcard--planned .toolcard__name{color:var(--text-muted);font-weight:580}.toolcard--planned .toolcard__blurb{color:var(--text-subtle)}.toolcard__soon{border-radius:var(--r-full);border:1px solid var(--border);background:var(--surface-inset);color:var(--text-subtle);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:5px;padding:2px 9px;font-size:.6563rem;font-weight:620;display:inline-flex}.dropzone--compact{text-align:left;border-radius:var(--r-lg);border-width:2px;align-items:center;gap:14px;padding:18px 20px;display:flex}.dropzone--compact .dropzone__icon{flex-shrink:0;margin-bottom:0}.dropzone--compact .dropzone__title{font-size:.9375rem}.dropzone--compact .dropzone__hint{margin-top:2px;font-size:.8125rem}.range--wide{width:168px}.is-workspace [data-tool=compress]>.entry__note{display:none}.imgconv__support{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);max-width:74ch;color:var(--text-muted);text-wrap:pretty;align-items:flex-start;gap:9px;margin-bottom:16px;padding:10px 13px;font-size:.8125rem;line-height:1.5;display:flex}.imgconv__support svg{color:var(--text-subtle);flex-shrink:0;margin-top:2px}.is-workspace [data-tool=resize]>.entry__note{display:none}.numfield{border:1px solid var(--border-input);border-radius:var(--r-sm);background:var(--surface);align-items:center;gap:5px;height:32px;padding:0 8px;transition:border-color .15s,box-shadow .15s;display:inline-flex}.numfield:hover{border-color:var(--border-hover)}.numfield:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft,#7a86c440)}.numfield__key,.numfield__unit{color:var(--text-subtle);white-space:nowrap;user-select:none;font-size:.75rem;font-weight:500}.numfield input{width:5.5ch;min-width:0;color:var(--text);font-family:var(--font-mono);text-align:right;appearance:textfield;background:0 0;border:0;padding:0;font-size:.8125rem}.numfield input:focus{outline:none}.numfield input::-webkit-outer-spin-button{appearance:none;margin:0}.numfield input::-webkit-inner-spin-button{appearance:none;margin:0}.select--sm{height:32px}.segmented--sm button{padding:3px 9px;font-size:.75rem}.thumb--fit{flex-direction:column;display:flex}.thumb--fit .thumb__imgwrap{aspect-ratio:3/2;cursor:zoom-in;background-color:var(--surface-inset)}.thumb--fit.has-alpha .thumb__imgwrap{--chequer:color-mix(in srgb, var(--border) 55%, transparent);background-image:linear-gradient(45deg, var(--chequer) 25%, transparent 25%), linear-gradient(-45deg, var(--chequer) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--chequer) 75%), linear-gradient(-45deg, transparent 75%, var(--chequer) 75%);background-position:0 0,0 7px,7px -7px,-7px 0;background-size:14px 14px}.thumb--fit .thumb__imgwrap img{object-fit:contain;padding:8px}.thumb--fit .thumb__body{padding:11px 12px 12px;display:block}.thumb--fit .thumb__row{justify-content:space-between;align-items:center;gap:10px;display:flex}.thumb--fit .thumb__name{min-width:0}.thumb--fit .thumb__meta{margin-top:5px;display:block}.thumb--fit .thumb__delta{margin-top:6px;display:inline-block}.thumb--fit .thumb__dims{margin-top:0}.thumb__delta{border-radius:var(--r-full);background:var(--success-soft);color:var(--success);white-space:nowrap;padding:2px 7px;font-size:.6875rem;font-weight:620}.thumb__delta--up{background:var(--warning-soft);color:var(--warning)}.thumb__delta--flat{background:var(--surface-inset);color:var(--text-subtle)}.thumb--fit .thumb__note{color:var(--text-subtle);margin:7px 0 0;font-size:.75rem}.thumb.is-failed{border-style:dashed;align-self:start}.thumb.is-failed .thumb__imgwrap{aspect-ratio:auto;cursor:default;background-image:none;height:46px}.thumb.is-failed .thumb__note{color:var(--danger)}.thumb.is-failed .thumb__note a{color:inherit;text-underline-offset:2px;text-decoration:underline}.is-workspace [data-tool=trim]>.entry__note{display:none}.range--sm{width:96px}.is-workspace [data-tool=pdf]>.entry__note{display:none}@font-face{font-family:Caveat;src:url(/fonts/caveat.woff2)format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Dancing Script;src:url(/fonts/dancing-script.woff2)format("woff2");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:Great Vibes;src:url(/fonts/great-vibes.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Homemade Apple;src:url(/fonts/homemade-apple.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}.workspace__body--flush{min-height:0;padding:0;display:flex}.acct{flex-shrink:0;align-items:center;display:flex}.acct__box{display:none;position:relative}:root[data-auth=in] .acct__signin{display:none}:root[data-auth=in] .acct__box{display:block}.acct__btn{cursor:pointer;border-radius:var(--r-full);background:0 0;border:0;align-items:center;padding:0;display:flex}.avatar{border-radius:var(--r-full);background:var(--surface-inset);border:1px solid var(--border-input);width:28px;height:28px;color:var(--text);font-family:var(--font-display);user-select:none;flex-shrink:0;place-items:center;font-size:.8125rem;font-weight:700;line-height:1;transition:border-color .15s,background .15s;display:grid;position:relative;overflow:hidden}.acct__btn:hover .avatar,.acct__btn.is-open .avatar{border-color:var(--border-hover);background:var(--accent-soft)}.avatar img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.avatar__initial{transform:translateY(.5px)}.avatar img:not([hidden])+.avatar__initial{display:none}.avatar--lg{width:36px;height:36px;font-size:.9375rem}.avatar--xl{border-radius:var(--r-full);width:72px;height:72px;font-size:1.75rem}.acctmenu{z-index:70;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);min-width:232px;box-shadow:var(--shadow-lg);animation:acctmenu-in .16s var(--ease);padding:6px;position:absolute;top:calc(100% + 10px);right:0}@keyframes acctmenu-in{0%{opacity:0;transform:translateY(-4px)}}.acctmenu__who{align-items:center;gap:10px;min-width:0;padding:8px 10px 10px;display:flex}.acctmenu__names{min-width:0;display:grid}.acctmenu__name{font-size:.875rem;font-weight:600;line-height:1.3}.acctmenu__email,.acctmenu__name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.acctmenu__email{color:var(--text-subtle);font-size:.78rem;font-family:var(--font-mono)}.acctmenu__row{border-radius:var(--r-md);width:100%;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 10px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .13s,color .13s;display:flex}.acctmenu__row:hover{background:var(--surface-inset);color:var(--text)}.acctmenu__row svg{color:var(--text-subtle);flex-shrink:0}.acctmenu__row:hover svg{color:var(--text)}.acctmenu__rule{background:var(--border);height:1px;margin:6px 10px}@media (width<=480px){.acct__label{display:none}.acct__signin{padding:0 9px}}.field{gap:7px;display:grid}.field__label{justify-content:space-between;align-items:baseline;gap:12px;font-size:.875rem;font-weight:560;display:flex}.field__aside{font-size:.8125rem;font-weight:500}.field__wrap{display:block;position:relative}.field__wrap .input{padding-right:44px}body.is-modal{overflow:hidden}.crumbs{justify-content:space-between;align-items:center;gap:14px;display:flex}.favbtn{border:1px solid var(--border-input);border-radius:var(--r-full);background:var(--surface);height:28px;color:var(--text-muted);font:inherit;cursor:pointer;flex-shrink:0;align-items:center;gap:6px;padding:0 10px;font-size:.78rem;font-weight:560;transition:color .15s,border-color .15s,background .15s;display:inline-flex}.favbtn svg{color:var(--border-strong);transition:color .15s, transform .2s var(--ease)}.favbtn:hover{color:var(--text);border-color:var(--border-hover)}.favbtn:hover svg{color:var(--text-subtle)}.favbtn[aria-pressed=true]{color:var(--success);border-color:color-mix(in srgb, var(--success) 40%, transparent);background:var(--success-soft)}.favbtn[aria-pressed=true] svg{color:var(--signal)}.favbtn.is-pop svg{animation:fav-pop .3s var(--ease)}@keyframes fav-pop{40%{transform:scale(1.35)}}.optgroup--stack{flex-direction:column;align-items:flex-start;gap:4px}.account-sync-status{color:var(--text-subtle);padding-block:8px;font-size:11px}.tool-saving{display:none}:root[data-auth=in] .tool-saving,.tool-saving:has([data-status=error]){display:block}.tool-saving__disclosure{color:var(--text-muted);margin-block:0 8px;font-size:12px}:root:not([data-auth=in]) .tool-saving__disclosure{display:none}.tool-saving .account-sync-status{min-height:32px;margin:0}@media (width<=600px){.hero--paraphrase .hero__trust{grid-template-columns:1fr 1fr;gap:10px 16px;font-size:11px;display:grid}}.hd__choice{color:var(--text-muted);gap:8px;margin-top:12px;font-size:.8125rem;display:grid}.hd__choice .select{width:100%;min-width:0}:root{--shot-lilac:linear-gradient(135deg, #e9e4ff, #b7c9f4);--shot-mist:linear-gradient(135deg, #e4f4ed, #abd5d0);--shot-peach:linear-gradient(135deg, #ffe9da, #edbfd1);--shot-sand:linear-gradient(135deg, #f6f1e8, #d8c9ae);--shot-dusk:linear-gradient(135deg, #344062, #8b6a96);--shot-ink:linear-gradient(135deg, #161b27, #354057)}.analytics-consent{background:var(--surface);width:min(460px,100vw - 48px);max-width:none;max-height:calc(100dvh - 48px);color:var(--text);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);margin:0;padding:24px;position:fixed;inset:auto 24px 24px auto;overflow:auto}body:has(.analytics-consent[open]){overflow:hidden}.analytics-consent::backdrop{background:color-mix(in srgb, var(--bg) 55%, transparent)}.analytics-consent__heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.analytics-consent__eyebrow{color:var(--text-muted);margin-bottom:6px;font-size:.75rem;font-weight:600;display:block}.analytics-consent h2{letter-spacing:-.025em;margin:0;font-size:1.25rem}.analytics-consent>p{color:var(--text-muted);margin:16px 0 20px;font-size:.9375rem;line-height:1.6}.analytics-consent__close{flex-shrink:0;width:40px;padding:0}.analytics-consent__preference{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-inset);justify-content:space-between;align-items:center;gap:24px;padding:16px;display:flex}.analytics-consent__preference strong{font-size:.9375rem}.analytics-consent__preference p{color:var(--text-muted);margin:4px 0 0;font-size:.8125rem;line-height:1.5}.analytics-consent__switch{border:1px solid var(--border-input);background:var(--surface);cursor:pointer;border-radius:999px;flex-shrink:0;width:48px;height:28px;padding:0;position:relative}.analytics-consent__switch span{background:var(--text-muted);border-radius:50%;width:20px;height:20px;margin-left:3px;display:block}.analytics-consent__switch[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.analytics-consent__switch[aria-checked=true] span{background:var(--on-accent);transform:translate(20px)}.analytics-consent__switch:disabled{opacity:.5;cursor:not-allowed}.analytics-consent__footer{justify-content:space-between;align-items:center;gap:16px;margin-top:20px;display:flex}.analytics-consent__footer a{color:var(--text-muted);text-underline-offset:3px;font-size:.8125rem}@media (prefers-reduced-motion:no-preference){.analytics-consent[open]{animation:analytics-open .18s var(--ease)}.analytics-consent__switch span{transition:transform .15s var(--ease)}@keyframes analytics-open{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}@media (width<=560px){.analytics-consent{inset:auto 12px max(12px, env(safe-area-inset-bottom)) 12px;width:auto;max-height:calc(100dvh - 24px);padding:20px}}.continue-with{grid-column:1/-1;padding-block:1rem}.continue-with__status{color:var(--text-muted);margin-bottom:.75rem}.continue-with__links{flex-wrap:wrap;gap:.5rem;display:flex}.tm-vt-frame,.tm-vt-mini{fill:var(--surface);stroke:var(--border-strong);stroke-width:1.25px}.tm-vt-selection{fill:color-mix(in srgb,var(--accent) 14%,transparent);stroke:var(--accent);stroke-width:1.5px}.tm-vt-edge{stroke:var(--accent);stroke-width:1.5px}.tm-vt-grip{fill:var(--accent)}.tm-vt-out{animation:tm-vt-out 5s var(--ease) infinite;transform-origin:50%}.tm-vt-selection,.tm-vt-edge,.tm-vt-grip{animation:tm-vt-select 5s var(--ease) infinite}@keyframes tm-vt-select{0%,18%{opacity:.2;transform:translate(-30px)}45%,to{opacity:1;transform:translate(0)}}@keyframes tm-vt-out{0%,44%{opacity:0;transform:translateY(8px)}58%,to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.tm-vt-out,.tm-vt-selection,.tm-vt-edge,.tm-vt-grip{animation:none}}
