.landing{--paper: #f5f2ea;--card: #fffdf8;--list-bg: #f8f4f4;--ink: #201e1d;--ink-2: #4a4643;--ink-3: #6f6a65;--ink-4: #9b948d;--rule: #e4ddd0;--rule-strong: #c9c0b0;--ink-line: rgba(245, 242, 234, .14);--primary: #e9750a;--on-primary: #fff;--demo-tint: #fdf1e6;--ok: #2f6b3e;--danger: #a13a2c;--wheat: #efe3c4;--fs-hero: clamp(2rem, 5vw, 3.2rem);--fs-heading: clamp(1.2rem, 2.2vw, 1.5rem);--fs-text: .9375rem;--font: "Mona Sans Variable", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--radius-sharp: 0;--radius-sm: 0;--radius-soft: 0;--radius-lg: 0;--radius-note: 0px;--radius-icon: 0;--radius-pill: 999px;--shell: 1180px;--gutter: clamp(1.15rem, 4vw, 3rem);--section-gap: clamp(3.5rem, 9.5vh, 7rem);--section-top: clamp(2.5rem, 7vh, 5rem);--dur: .16s;--dur-2: .32s;--dur-3: .62s;--ease: cubic-bezier(.2, 0, .1, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--shadow: 0 16px 40px rgba(32, 30, 29, .07)}.landing,.landing *,.landing *:before,.landing *:after{box-sizing:border-box}.landing [hidden]{display:none!important}.landing{display:block;min-height:100vh;margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--fs-text);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.landing h1,.landing h2,.landing h3,.landing h4{margin:0;line-height:1.12;letter-spacing:-.02em;font-weight:800;color:var(--ink)}.landing h1{font-size:var(--fs-hero);letter-spacing:-.032em}.landing h2,.landing h3{font-size:var(--fs-heading)}.landing h4{font-size:var(--fs-text)}.landing p{margin:0}.landing img,.landing svg{display:block;max-width:100%}.landing button,.landing input,.landing select,.landing textarea{font:inherit;color:inherit}.landing a{color:var(--ink)}.landing :focus-visible{outline:2px solid var(--ink);outline-offset:2px}.landing .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.landing .page{position:relative;z-index:1;pointer-events:none}.landing .page :is(.panel,a,button,input,textarea,select,h1,h2,h3,h4,p,li,label,img,figure){pointer-events:auto}.landing .shell{max-width:var(--shell);margin-left:auto;margin-right:auto;padding-left:var(--gutter);padding-right:var(--gutter)}.landing #main{display:flow-root;padding-bottom:var(--section-gap)}.landing main>*>*{margin-top:var(--section-gap)}.landing main>*>*:first-child{margin-top:var(--section-top)}.landing [id]{scroll-margin-top:96px}.landing .panel{background:var(--card);border:1px solid var(--rule-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.landing .panel.glass{background:#fffdf857;border-color:#ffffffa6;box-shadow:0 14px 38px #201e1d17,inset 0 1px #ffffffb3;backdrop-filter:blur(26px) saturate(185%);-webkit-backdrop-filter:blur(26px) saturate(185%)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.landing .panel.glass{background:#fffdf8f0}}.landing .block{padding:clamp(1.5rem,4vw,3rem)}.landing .block--dark{background:var(--ink);border-color:var(--ink);color:var(--paper)}.landing .block--dark h2,.landing .block--dark h3{color:var(--paper)}.landing .block-head{margin-bottom:clamp(1.25rem,3vw,2rem)}.landing .lede{color:var(--ink-2)}.landing .muted{color:var(--ink-3)}.landing .notice{display:block;padding:.8rem 1rem;border:1px solid var(--rule);border-radius:var(--radius-note);background:var(--list-bg);color:var(--ink-2)}.landing .notice strong{color:var(--ink)}.landing .notice--draft{border-style:dashed;border-color:var(--rule-strong)}.landing .notice--bad{border-color:#a13a2c59;background:#a13a2c0f;color:var(--danger)}.landing .notice--ok{border-color:#2f6b3e59;background:#2f6b3e14;color:var(--ok)}.landing .pill{display:inline-block;padding:0 .6rem;border-radius:var(--radius-pill);font-weight:700;line-height:1.6}.landing .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--ink);border-radius:var(--radius-sharp);background-color:var(--ink);color:var(--paper);padding:.62rem 1.15rem;font-weight:700;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;background-image:linear-gradient(var(--primary),var(--primary));background-repeat:no-repeat;background-position:left center;background-size:0% 100%;transition:background-size .38s var(--ease-out),color .2s var(--ease),border-color .2s var(--ease)}.landing .btn:hover:not([disabled]){background-size:100% 100%;color:var(--on-primary);border-color:var(--primary)}.landing .btn[disabled]{opacity:.45;cursor:not-allowed}.landing .btn--ghost{background-color:var(--card);color:var(--ink)}.landing .btn--on-dark{background-color:transparent;border-color:#f5f2ea73;color:#f5f2eae6}.landing .btn-soft{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid var(--rule-strong);border-radius:var(--radius-sharp);background-color:var(--card);color:var(--ink);padding:.6rem 1.2rem;font-weight:700;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;position:relative;overflow:hidden;transition:background-color .22s var(--ease),border-color .2s var(--ease),color .2s var(--ease)}.landing .btn-soft:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease-out)}.landing .btn-soft:hover:not([disabled]){border-color:var(--ink);background-color:var(--list-bg)}.landing .btn-soft:hover:not([disabled]):after{transform:scaleX(1)}.landing .btn-soft svg{width:.85em;height:.85em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.landing .btn-soft--ink{background-color:var(--ink);border-color:var(--ink);color:var(--paper);position:relative;overflow:hidden;transition:background-color .22s var(--ease),border-color .2s var(--ease),color .2s var(--ease)}.landing .btn-soft--ink:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease-out)}.landing .btn-soft--ink:hover:not([disabled]){border-color:var(--ink);background-color:#36322f}.landing .btn-soft--ink:hover:not([disabled]):after{transform:scaleX(1)}.landing .btn-soft--primary{background-color:var(--primary);border-color:var(--primary);color:var(--on-primary);position:relative;overflow:hidden;transition:background-color .22s var(--ease),border-color .2s var(--ease),color .2s var(--ease)}.landing .btn-soft--primary:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease-out)}.landing .btn-soft--primary:hover:not([disabled]){border-color:var(--ink);background-color:#cf6708}.landing .btn-soft--primary:hover:not([disabled]):after{transform:scaleX(1)}.landing .btn-soft--primary:hover:not([disabled]){border-color:#cf6708;color:var(--on-primary)}.landing .ticks{display:grid;gap:.45rem;margin:.9rem 0 0;padding:0;list-style:none;color:var(--ink-2)}.landing .ticks li{position:relative;padding-left:1.6rem}.landing .ticks li:before{content:"";position:absolute;left:.1rem;top:.42em;width:.75rem;height:.4rem;border-left:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(-45deg)}.landing .reveal{opacity:0;transform:translateY(20px);transition:opacity var(--dur-3) var(--ease-out) var(--d, 0ms),transform var(--dur-3) var(--ease-out) var(--d, 0ms)}.landing .reveal.is-in{opacity:1;transform:none}.landing .stagger{opacity:0;transform:translateY(14px)}.landing .is-in .stagger{opacity:1;transform:none;transition:opacity var(--dur-3) var(--ease-out) var(--d, 0ms),transform var(--dur-3) var(--ease-out) var(--d, 0ms)}.landing .is-arrived{animation:arrive 1.3s var(--ease-out)}@media(prefers-reduced-motion:reduce){.landing,.landing *,.landing *:before,.landing *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.landing .reveal,.landing .stagger{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}html.has-full,html.has-full body{overflow:hidden}@keyframes arrive{0%{box-shadow:0 0 #201e1d59,var(--shadow)}to{box-shadow:0 0 0 22px #201e1d00,var(--shadow)}}html.is-routing .landing main{view-transition-name:page}html.is-routing app-site-header{view-transition-name:site-header}::view-transition-old(page){animation:page-out .18s cubic-bezier(.2,0,.1,1) both}::view-transition-new(page){animation:page-in .46s cubic-bezier(.16,1,.3,1) both}@keyframes page-out{to{opacity:0;transform:translateY(-14px)}}@keyframes page-in{0%{opacity:0;transform:translateY(24px)}}.landing #tile-field{position:fixed;inset:0;z-index:0;display:grid;overflow:hidden;background:var(--paper)}.landing .tile{width:100%;height:100%;position:relative;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;outline:2px solid transparent;outline-offset:-2px;transition:transform var(--dur) var(--ease),filter var(--dur) var(--ease),outline-color .1s linear}.landing .tile:focus-visible{outline-color:var(--ink);z-index:4}.landing .tile.is-picked{outline:2px solid var(--ink);filter:brightness(.96);z-index:3}.landing .tile.is-picked:after{content:"";position:absolute;inset:6px;border:1px dashed rgba(32,30,29,.45)}.landing .tile.is-dragging{opacity:.35;transform:scale(.94);z-index:10}.landing .tile.is-target{outline:2px dashed var(--ink);z-index:3}.landing .tile.just-swapped{animation:tile-settle .32s var(--ease)}.landing .tile.has-sparkle{z-index:5}@media(hover:hover){.landing .tile:hover{filter:brightness(.965);z-index:2}}.landing .sparkle{position:absolute;left:50%;top:50%;width:var(--s, 10px);height:var(--s, 10px);margin:calc(var(--s, 10px) / -2) 0 0 calc(var(--s, 10px) / -2);background:var(--ink);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);pointer-events:none;animation:sparkle .82s var(--ease-out) both}@media(prefers-reduced-motion:reduce){.landing .sparkle{display:none}}@keyframes sparkle{0%{transform:translate(0) scale(0) rotate(0);opacity:1}45%{transform:translate(calc(var(--dx) * .65),calc(var(--dy) * .65)) scale(1) rotate(var(--r));opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(.2) rotate(calc(var(--r) * 2));opacity:0}}@keyframes tile-settle{0%{transform:scale(.9)}65%{transform:scale(1.025)}to{transform:scale(1)}}.landing .page-head .block{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(1rem,3vw,2.5rem);align-items:center;padding:clamp(1.5rem,4vw,2.75rem)}.landing .page-head h1{max-width:18ch}.landing .page-head .intro{margin:0;max-width:46ch;color:var(--ink-2)}@media(max-width:760px){.landing .page-head .block{grid-template-columns:minmax(0,1fr)}}.landing .doc{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:clamp(1rem,2.2vw,1.5rem);align-items:start}.landing .toc{position:sticky;top:84px;padding:1.25rem}.landing .toc h4{margin-bottom:.6rem;color:var(--ink-3);font-weight:600}.landing .toc a{display:block;padding:.45rem 0;color:var(--ink-2);font-weight:600;text-decoration:none;border-bottom:1px solid var(--rule);transition:color var(--dur) var(--ease),padding-left var(--dur) var(--ease)}.landing .toc a:last-child{border-bottom:0}.landing .toc a:hover{color:var(--primary);padding-left:.3rem}@media(max-width:860px){.landing .doc{grid-template-columns:minmax(0,1fr)}.landing .toc{position:static}}.landing .prose{max-width:68ch}.landing .prose h2{color:var(--ink)}.landing .prose p{margin-top:.85rem;color:var(--ink-2);line-height:1.75}.landing .prose p strong{color:var(--ink);font-weight:700}.landing .prose .notice{margin-top:1rem}.landing .prose-sec+.prose-sec{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--rule)}.landing .cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem;margin-top:2.25rem;padding:1.5rem;background:var(--wheat)}.landing .cta p{margin-top:.35rem;color:var(--ink-2)}.landing .td{--td-ink: #23211f;--td-ink-2: #56514c;--td-ink-3: #837c74;--td-line: #e2ddd3;--td-line-2: #cec7ba;--td-fill: #faf8f3;display:block;font-size:var(--fs-text);line-height:1.55;color:var(--td-ink)}.landing .td *{box-sizing:border-box}.landing .td input,.landing .td select,.landing .td textarea{width:100%;border:1px solid var(--td-line-2);border-radius:0;background:#fff;padding:.45rem .6rem;color:var(--td-ink);transition:border-color .14s linear}.landing .td input:focus,.landing .td select:focus,.landing .td textarea:focus{outline:none;border-color:var(--td-ink)}.landing .td-lede{margin:0 0 .5rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--td-ink-3)}.landing .td-lede+*+.td-lede{margin-top:1.1rem}.landing .td-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.6rem}.landing .td-field{display:block}.landing .td-field>span{display:block;margin-bottom:.25rem;font-weight:600;color:var(--td-ink-2)}.landing .td-btn{border:1px solid var(--td-ink);border-radius:0;background-color:var(--td-ink);color:#fff;padding:.45rem .85rem;font-weight:700;cursor:pointer;background-image:linear-gradient(var(--primary),var(--primary));background-repeat:no-repeat;background-position:left center;background-size:0% 100%;transition:background-size .38s var(--ease-out),color .2s var(--ease),border-color .2s var(--ease)}.landing .td-btn:hover:not([disabled]){background-size:100% 100%;color:var(--on-primary);border-color:var(--primary)}.landing .td-btn[disabled]{opacity:.4;cursor:not-allowed}.landing .td-btn--ghost{background-color:#fff;color:var(--td-ink)}.landing .td-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.7rem}.landing .td-out{margin-top:1.1rem}.landing .td-headline{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding-bottom:.6rem;border-bottom:2px solid var(--td-ink)}.landing .td-label{font-weight:600;color:var(--td-ink-3)}.landing .td-big{font-size:var(--fs-heading);font-weight:800;letter-spacing:-.02em;line-height:1}.landing .td-rows{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 .75rem;margin:.75rem 0 0}.landing .td-rows dt{padding:.3rem 0;border-bottom:1px solid var(--td-line);color:var(--td-ink-2)}.landing .td-rows dd{margin:0;padding:.3rem 0;border-bottom:1px solid var(--td-line);font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.landing .td-hint{margin:.85rem 0 0;color:var(--td-ink-3)}
