/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--ease-out:cubic-bezier(.2, 0, 0, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-ui:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--text-h2:19px;--text-h3:16px;--text-prose:15.5px;--text-row:13.5px;--text-chrome:13px;--text-btn:12.5px;--text-meta:12px;--text-fine:11.5px;--text-micro:11px;--weight-title:700;--weight-heading:650;--weight-name:600;--weight-medium:500;--tracking-title:-.015em;--tracking-label:.02em;--h-cell:33px;--h-row:32px;--h-th:30px;--h-srow:28px;--radius-pill:999px;--dur-hover:.12s;--dur-fade:.15s;--dur-slide:.22s;--z-hud:2;--z-peek:3;--z-status:5;--z-resizer:6;--z-anchored:20}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components,utilities;:root,[data-mode=dark]{--base:oklch(14.7% 0 0);--panel:oklch(18.7% 0 0);--elevated:oklch(22.2% 0 0);--sunken:oklch(12.8% 0 0);--border:oklch(27.2% 0 0);--border-soft:oklch(22.8% 0 0);--ink-1:oklch(92.8% 0 0);--ink-2:oklch(71.2% 0 0);--ink-3:oklch(58.5% 0 0);--wash:oklch(92.8% 0 0/.055);--wash-2:oklch(92.8% 0 0/.09);--auth-glow:radial-gradient(ellipse 90% 55% at 50% -18%, oklch(26% 0 0/.55), transparent 72%);--ok:oklch(74% .14 155);--warn:oklch(80% .12 85);--bad:oklch(70% .17 25);--chip-a:12%;--chip-red:oklch(72% .15 20);--chip-orange:oklch(76% .14 55);--chip-yellow:oklch(82% .12 95);--chip-green:oklch(76% .13 145);--chip-teal:oklch(78% .11 190);--chip-blue:oklch(74% .12 240);--chip-purple:oklch(74% .13 295);--chip-pink:oklch(76% .13 340);--veil:oklch(0% 0 0/.52);--shadow-pop:0 16px 60px oklch(0% 0 0/.5), 0 2px 8px oklch(0% 0 0/.35);--shadow-peek:-12px 0 40px oklch(0% 0 0/.28)}[data-mode=light]{--base:oklch(96.5% 0 0);--panel:oklch(99.5% 0 0);--elevated:oklch(100% 0 0);--sunken:oklch(93.8% 0 0);--border:oklch(87.2% 0 0);--border-soft:oklch(91.2% 0 0);--ink-1:oklch(23.5% 0 0);--ink-2:oklch(47% 0 0);--ink-3:oklch(53.8% 0 0);--wash:oklch(23.5% 0 0/.05);--wash-2:oklch(23.5% 0 0/.085);--auth-glow:none;--ok:oklch(54.5% .14 155);--warn:oklch(58.5% .125 75);--bad:oklch(54.5% .185 27);--chip-a:11%;--chip-red:oklch(55% .17 22);--chip-orange:oklch(60% .14 55);--chip-yellow:oklch(62% .12 90);--chip-green:oklch(56% .13 148);--chip-teal:oklch(56% .11 195);--chip-blue:oklch(54% .13 245);--chip-purple:oklch(53% .15 295);--chip-pink:oklch(56% .15 345);--veil:oklch(20% 0 0/.32);--shadow-pop:0 16px 50px oklch(30% 0 0/.18), 0 2px 10px oklch(30% 0 0/.1);--shadow-peek:-12px 0 36px oklch(30% 0 0/.1)}:root{--on-accent:oklch(99% 0 0)}:root,[data-accent=iris]{--accent:oklch(56% .125 285);--accent-ink:oklch(78% .1 285)}[data-mode=light],[data-mode=light][data-accent=iris]{--accent:oklch(54% .165 282);--accent-ink:oklch(51% .17 282)}[data-accent=terracotta]{--accent:oklch(70.5% .115 45);--accent-ink:oklch(78% .1 48)}[data-mode=light][data-accent=terracotta]{--accent:oklch(57.5% .135 42);--accent-ink:oklch(54.5% .14 42)}[data-accent=cobalt]{--accent:oklch(68.5% .135 252);--accent-ink:oklch(77.5% .105 252)}[data-mode=light][data-accent=cobalt]{--accent:oklch(52.5% .175 255);--accent-ink:oklch(50% .18 255)}@font-face{font-family:Inter;src:url(/fonts/InterVariable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono%5Bwght%5D.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap}body{background:var(--base);color:var(--ink-1);font-family:var(--font-ui);font-size:var(--text-chrome);-webkit-font-smoothing:antialiased;line-height:1.5}.ld-root{--ld-text-hero:clamp(44px, 7.5vw, 84px);--ld-text-close:clamp(28px, 4.4vw, 44px);--ld-text-panel-title:24px;--ld-text-brand:17px;--ld-text-cap:16.5px;--ld-text-body:14.5px;--ld-text-btn:14px;--ld-text-label:10.5px;--ld-text-tick:10px;--ld-weight-brand:800;--ld-track-brand:-.045em;--ld-dur-enter:.4s;--ld-dur-assemble:.5s;--ld-dur-caret:1.1s;--ld-dur-cue:2.6s;background:var(--base);color:var(--ink-1);font-family:var(--font-ui);font-size:var(--text-chrome);color-scheme:dark;line-height:1.6}.ld-root ::selection{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-root ::selection{background:color-mix(in oklch,var(--accent) 30%,transparent)}}.ld-topbar{z-index:var(--z-anchored);pointer-events:none;justify-content:space-between;align-items:center;padding:18px 28px;display:flex;position:fixed;inset:0 0 auto}.ld-topbar>*{pointer-events:auto}.ld-brand{color:var(--ink-1);align-items:baseline;gap:2px;text-decoration:none;display:flex}.ld-brand .ld-brand-name{font-family:var(--font-mono);font-weight:var(--ld-weight-brand);letter-spacing:var(--ld-track-brand);font-size:var(--ld-text-brand)}.ld-brand .ld-brand-cursor{background:var(--accent);border-radius:1px;width:8px;height:17px;transform:translateY(2px)}.ld-nav{align-items:center;gap:8px;display:flex}.ld-nav a{color:var(--ink-2);font-size:var(--text-chrome);font-weight:var(--weight-medium);border-radius:var(--radius-sm);transition:color var(--dur-hover) var(--ease-out),background var(--dur-hover) var(--ease-out);padding:7px 14px;text-decoration:none}.ld-nav a:hover{color:var(--ink-1);background:var(--wash)}.ld-nav a.ld-solid{color:var(--on-accent);background:var(--accent);font-weight:var(--weight-name)}.ld-nav a.ld-solid:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-nav a.ld-solid:hover{background:color-mix(in oklch,var(--accent) 88%,var(--ink-1))}}.ld-journey{height:640vh;position:relative}.ld-stage{background:var(--auth-glow),var(--base);height:100svh;position:sticky;top:0;overflow:hidden}.ld-gutter{width:92px;z-index:var(--z-hud);pointer-events:none;border-right:1px solid var(--border-soft);position:absolute;top:0;bottom:0;left:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 16% 84%,#0000);mask-image:linear-gradient(#0000,#000 16%,#000 84%,#0000)}.ld-gutter .ld-grows{will-change:transform;width:100%;position:absolute;top:0;left:0}.ld-grow{height:26px;font-family:var(--font-mono);position:relative}.ld-grow span{font-size:var(--ld-text-tick);color:var(--ink-3);opacity:.55;letter-spacing:var(--tracking-label);font-variant-numeric:tabular-nums;position:absolute;top:2px;right:40px}.ld-grow:after{content:"";background:var(--border-soft);width:8px;height:1px;position:absolute;top:12px;right:24px}.ld-grow.ld-maj:after{background:var(--border);width:14px}.ld-gmark{z-index:var(--z-peek);pointer-events:none;align-items:center;gap:8px;display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}.ld-gmark:before{content:"";background:var(--accent);width:92px;height:1px;box-shadow:0 0 10px var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-gmark:before{box-shadow:0 0 10px color-mix(in oklch,var(--accent) 60%,transparent)}}.ld-gmark .ld-ro{font-family:var(--font-mono);font-size:var(--ld-text-label);color:var(--accent-ink);letter-spacing:var(--tracking-label);font-variant-numeric:tabular-nums;background:var(--base)}@supports (color:color-mix(in lab,red,red)){.ld-gmark .ld-ro{background:color-mix(in oklch,var(--base) 78%,transparent)}}.ld-gmark .ld-ro{border-radius:var(--radius-sm);border:1px solid var(--border-soft);margin-left:-14px;padding:3px 8px}.ld-part{opacity:0;visibility:hidden;will-change:opacity;place-items:center;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.ld-part.ld-part-hero{opacity:1;visibility:visible}.ld-part .ld-art{will-change:transform;width:min(820px,84vw)}.ld-caption{text-align:center;width:min(640px,84vw);z-index:var(--z-peek);opacity:0;pointer-events:none;will-change:opacity;position:absolute;bottom:10.5vh;left:50%;transform:translate(-50%)}.ld-caption .ld-kicker{font-family:var(--font-mono);font-size:var(--ld-text-label);letter-spacing:.22em;color:var(--ink-3);text-transform:uppercase;margin:0 0 10px}.ld-caption p{font-size:var(--ld-text-cap);color:var(--ink-1);text-wrap:balance;margin:0}.ld-caption p b{color:var(--ink-1);font-weight:var(--weight-title)}.ld-caption .ld-sub{font-size:var(--text-chrome);color:var(--ink-2);margin-top:8px;line-height:1.55}.ld-caption .ld-wl{color:var(--accent-ink)}.ld-hero{text-align:center}.ld-hero h1{font-family:var(--font-mono);font-size:var(--ld-text-hero);font-weight:var(--ld-weight-brand);letter-spacing:var(--ld-track-brand);color:var(--ink-1);align-items:baseline;gap:4px;margin:0;line-height:1.05;display:inline-flex}.ld-hero .ld-caret{background:var(--accent);border-radius:2px;width:.13em;height:.82em;transform:translateY(.08em)}.ld-hero .ld-tag{color:var(--ink-2);font-size:var(--text-prose);margin:18px 0 0}.ld-hero .ld-tag b{color:var(--ink-1);font-weight:var(--weight-name)}.ld-hero .ld-chips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:22px;display:flex}.ld-hero .ld-chip{font-family:var(--font-mono);font-size:var(--ld-text-label);letter-spacing:.1em;color:var(--ink-2);border:1px solid var(--border-soft);border-radius:var(--radius-pill);transition:border-color var(--dur-slide) var(--ease-out),color var(--dur-slide) var(--ease-out);padding:4px 11px}.ld-hero .ld-chip.ld-lit{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-hero .ld-chip.ld-lit{border-color:color-mix(in oklch,var(--accent) 55%,transparent)}}.ld-hero .ld-chip.ld-lit{color:var(--ink-1)}.ld-scrollcue{color:var(--ink-3);line-height:0;position:absolute;bottom:9vh;left:50%;transform:translate(-50%)}.ld-panelbox{background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-pop)}.ld-doc{text-align:left;max-width:560px;margin:0 auto;padding:30px 38px 34px}.ld-doc .ld-dtitle{font-size:var(--ld-text-panel-title);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);color:var(--ink-1);margin:0 0 14px}.ld-dblock{opacity:0;transition:opacity var(--ld-dur-enter) var(--ease-out),transform var(--ld-dur-enter) var(--ease-out),background var(--dur-fade) var(--ease-out),box-shadow var(--dur-fade) var(--ease-out);font-size:var(--ld-text-body);color:var(--ink-2);margin:7px 0 7px -8px;padding-left:8px;line-height:1.62;transform:translateY(10px)}.ld-dblock.ld-in{opacity:1;transform:none}.ld-dblock.ld-cur{background:var(--wash);box-shadow:inset 2px 0 0 var(--accent);border-radius:var(--radius-xs)}.ld-dblock .ld-h{color:var(--ink-1);font-weight:var(--weight-heading);font-size:var(--text-h3)}.ld-dblock .ld-wl{color:var(--accent-ink);border-bottom:1px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-dblock .ld-wl{border-bottom:1px solid color-mix(in oklch,var(--accent) 45%,transparent)}}.ld-dblock .ld-wl{padding-bottom:1px}.ld-dblock.ld-todo{align-items:baseline;gap:9px;display:flex}.ld-dblock .ld-box{border:1.5px solid var(--border);border-radius:var(--radius-xs);width:13px;height:13px;transition:background var(--dur-slide) var(--ease-out),border-color var(--dur-slide) var(--ease-out);flex:none;position:relative;transform:translateY(2px)}.ld-dblock.ld-done .ld-box{background:var(--accent);border-color:var(--accent)}.ld-dblock.ld-done .ld-box:after{content:"✓";color:var(--on-accent);font-size:var(--ld-text-tick);text-align:center;line-height:13px;position:absolute;top:0;right:0;bottom:0;left:0}.ld-dblock.ld-done .ld-txt{color:var(--ink-3);text-decoration:line-through;-webkit-text-decoration-color:var(--ink-3);text-decoration-color:var(--ink-3)}.ld-dblock .ld-slash{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--ink-3);background:var(--elevated);border:1px solid var(--border-soft);border-radius:var(--radius-xs);padding:1px 7px;display:inline-block}.ld-dblock .ld-ghosttext{color:var(--ink-3)}.ld-grid{text-align:left;overflow:hidden}.ld-grid table{border-collapse:collapse;width:100%;font-size:var(--text-chrome)}.ld-grid th{font-family:var(--font-mono);font-size:var(--ld-text-tick);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);font-weight:var(--weight-medium);text-align:left;border-bottom:1px solid var(--border-soft);background:var(--elevated);padding:9px 14px}.ld-grid td{height:var(--h-cell);color:var(--ink-2);border-bottom:1px solid var(--border-soft);white-space:nowrap;transition:opacity var(--dur-slide) var(--ease-out),transform var(--dur-slide) var(--ease-out),background var(--dur-hover) var(--ease-out);padding:0 14px}.ld-grid tr.ld-rec td{opacity:0;transform:translate(-8px)}.ld-grid tr.ld-rec.ld-in td{opacity:1;transform:none}.ld-grid tr.ld-rcur td{background:var(--wash)}.ld-grid tr.ld-rcur td:first-child{box-shadow:inset 2px 0 0 var(--accent)}.ld-grid td.ld-name{color:var(--ink-1);font-weight:var(--weight-medium)}.ld-stat{font-size:var(--text-micro);font-weight:var(--weight-medium);border-radius:var(--radius-pill);padding:2px 9px;display:inline-block}.ld-stat.ld-st-done{color:var(--ok);background:var(--ok)}@supports (color:color-mix(in lab,red,red)){.ld-stat.ld-st-done{background:color-mix(in oklch,var(--ok) var(--chip-a),transparent)}}.ld-stat.ld-st-prog{color:var(--warn);background:var(--warn)}@supports (color:color-mix(in lab,red,red)){.ld-stat.ld-st-prog{background:color-mix(in oklch,var(--warn) var(--chip-a),transparent)}}.ld-stat.ld-st-tri{color:var(--accent-ink);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-stat.ld-st-tri{background:color-mix(in oklch,var(--accent) var(--chip-a),transparent)}}.ld-grid td.ld-fx{font-family:var(--font-mono);font-size:var(--text-meta);color:var(--ink-3)}.ld-grid td.ld-fx .ld-val{color:var(--ink-1);opacity:0;transition:opacity var(--dur-slide) var(--ease-out),color var(--dur-slide) var(--ease-out)}.ld-grid td.ld-fx.ld-calc .ld-val{opacity:1}.ld-grid td.ld-fx.ld-hot .ld-val{color:var(--accent-ink)}.ld-grid td.ld-fx .ld-fxtag{font-size:var(--ld-text-tick);letter-spacing:var(--tracking-label);opacity:.8;margin-right:7px}.ld-board{text-align:left;grid-template-columns:repeat(3,1fr);gap:12px;display:grid;position:relative}.ld-col{background:var(--sunken);border:1px solid var(--border-soft);border-radius:var(--radius-md);min-height:240px;padding:10px}.ld-col .ld-chead{font-family:var(--font-mono);font-size:var(--ld-text-tick);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);justify-content:space-between;padding:2px 6px 10px;display:flex}.ld-card{background:var(--panel);border:1px solid var(--border-soft);border-radius:var(--radius-sm);font-size:var(--text-btn);color:var(--ink-1);font-weight:var(--weight-medium);opacity:0;transition:opacity var(--dur-slide) var(--ease-out),transform var(--dur-slide) var(--ease-out);margin-bottom:8px;padding:9px 11px;transform:translateY(8px)}.ld-card .ld-cmeta,.ld-mover .ld-cmeta{font-family:var(--font-mono);font-size:var(--ld-text-tick);color:var(--ink-3);letter-spacing:.06em;margin-top:5px;font-weight:400;display:block}.ld-card.ld-in{opacity:1;transform:none}.ld-card.ld-ghosted{opacity:.18}.ld-mover{z-index:var(--z-status);background:var(--elevated);border:1px solid var(--accent);border-radius:var(--radius-sm);width:calc(33.3333% - 28px);font-size:var(--text-btn);color:var(--ink-1);font-weight:var(--weight-medium);box-shadow:var(--shadow-pop);opacity:0;will-change:transform;padding:9px 11px;position:absolute;top:46px;left:10px}.ld-mover .ld-cmeta{color:var(--accent-ink)}.ld-graphwrap{position:relative}.ld-graphwrap svg{width:100%;height:auto;max-height:44svh;margin:0 auto;display:block}.ld-gnode{transition:opacity var(--ld-dur-enter) var(--ease-out);opacity:0}.ld-gnode.ld-in{opacity:1}.ld-gnode circle{fill:var(--elevated);stroke:var(--border);stroke-width:1px}.ld-gnode.ld-hub circle{fill:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-gnode.ld-hub circle{fill:color-mix(in oklch,var(--accent) 30%,var(--panel))}}.ld-gnode.ld-hub circle{stroke:var(--accent)}.ld-gnode text{fill:var(--ink-2);font-family:var(--font-ui);font-size:var(--text-micro);font-weight:var(--weight-medium)}.ld-gnode.ld-hub text{fill:var(--ink-1);font-weight:var(--weight-name)}.ld-gedge{stroke:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-gedge{stroke:color-mix(in oklch,var(--accent) 40%,var(--border))}}.ld-gedge{stroke-width:1px;fill:none}.ld-pulse{fill:var(--accent-ink);opacity:0}.ld-backchips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:20px;display:flex}.ld-bchip{font-size:var(--text-fine);letter-spacing:normal;color:var(--ink-2);border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--panel);opacity:0;transition:opacity var(--dur-slide) var(--ease-out),transform var(--dur-slide) var(--ease-out);padding:4px 10px;font-weight:400;transform:translateY(6px)}.ld-bchip b{color:var(--accent-ink);font-weight:var(--weight-medium)}.ld-bchip.ld-in{opacity:1;transform:none}.ld-shell{text-align:left;grid-template-columns:168px 1fr;height:min(430px,56svh);display:grid;position:relative;overflow:hidden}.ld-side{background:var(--sunken);border-right:1px solid var(--border-soft);transition:transform var(--ld-dur-assemble) var(--ease-out);padding:12px 8px;transform:translate(-100%)}.ld-shell.ld-s-side .ld-side{transform:none}.ld-side .ld-ws{align-items:center;gap:7px;padding:4px 8px 12px;display:flex}.ld-side .ld-wsq{border-radius:var(--radius-xs);background:var(--accent);width:16px;height:16px}@supports (color:color-mix(in lab,red,red)){.ld-side .ld-wsq{background:color-mix(in oklch,var(--accent) 24%,var(--panel))}}.ld-side .ld-wsq{border:1px solid var(--accent)}.ld-side .ld-wsn{font-size:var(--text-meta);font-weight:var(--weight-name);color:var(--ink-1)}.ld-side .ld-sec{font-family:var(--font-mono);font-size:var(--ld-text-tick);letter-spacing:.14em;color:var(--ink-3);text-transform:uppercase;padding:8px 8px 4px}.ld-srow{border-radius:var(--radius-sm);height:26px;font-size:var(--text-meta);color:var(--ink-2);opacity:0;transition:opacity var(--dur-slide) var(--ease-out);align-items:center;gap:7px;padding:0 8px;display:flex}.ld-shell.ld-s-side .ld-srow{opacity:1}.ld-srow.ld-on{background:var(--wash);color:var(--ink-1)}.ld-srow .ld-ico{font-size:var(--ld-text-tick);color:var(--ink-3);text-align:center;width:12px}.ld-main{padding:22px 26px;overflow:hidden}.ld-main .ld-mtitle{font-size:var(--text-h2);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);color:var(--ink-1);opacity:0;transition:opacity var(--ld-dur-enter) var(--ease-out),transform var(--ld-dur-enter) var(--ease-out);margin:0 0 8px;transform:translateY(8px)}.ld-main .ld-mline{font-size:var(--text-btn);color:var(--ink-2);opacity:0;transition:opacity var(--ld-dur-enter) var(--ease-out),transform var(--ld-dur-enter) var(--ease-out);margin:4px 0;font-weight:400;line-height:1.6;transform:translateY(8px)}.ld-shell.ld-s-doc .ld-mtitle,.ld-shell.ld-s-doc .ld-mline{opacity:1;transform:none}.ld-embed{border:1px solid var(--border-soft);border-radius:var(--radius-md);opacity:0;transition:opacity var(--ld-dur-enter) var(--ease-out),transform var(--ld-dur-enter) var(--ease-out);margin-top:14px;overflow:hidden;transform:translateY(10px)}.ld-shell.ld-s-embed .ld-embed{opacity:1;transform:none}.ld-embed .ld-etool{height:var(--h-th);background:var(--elevated);border-bottom:1px solid var(--border-soft);font-family:var(--font-mono);font-size:var(--ld-text-tick);letter-spacing:var(--tracking-label);color:var(--ink-3);text-transform:uppercase;align-items:center;gap:8px;padding:0 12px;display:flex}.ld-embed .ld-etool .ld-efilter{margin-left:auto}.ld-embed .ld-erow{height:var(--h-srow);font-size:var(--text-meta);color:var(--ink-2);border-bottom:1px solid var(--border-soft);grid-template-columns:1fr 84px 70px;align-items:center;gap:10px;padding:0 12px;display:grid}.ld-embed .ld-erow:last-child{border-bottom:0}.ld-embed .ld-erow .ld-en{color:var(--ink-1);font-weight:var(--weight-medium)}.ld-embed .ld-erow .ld-ed{font-family:var(--font-mono);font-size:var(--ld-text-label);color:var(--ink-3);text-align:right}.ld-palette{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(400px,78%);box-shadow:var(--shadow-pop);z-index:var(--z-resizer);opacity:0;transition:opacity var(--dur-slide) var(--ease-out),transform var(--dur-slide) var(--ease-out);position:absolute;top:16%;left:50%;transform:translate(-50%,8px)}.ld-shell.ld-s-pal .ld-palette{opacity:1;transform:translate(-50%)}.ld-palette .ld-pin{border-bottom:1px solid var(--border-soft);height:42px;font-size:var(--text-row);color:var(--ink-1);align-items:center;gap:10px;padding:0 14px;display:flex}.ld-palette .ld-pin .ld-ph2{color:var(--ink-3)}.ld-palette .ld-kbd{font-family:var(--font-mono);font-size:var(--ld-text-tick);color:var(--ink-3);border:1px solid var(--border-soft);border-radius:var(--radius-xs);margin-left:auto;padding:2px 6px}.ld-palette .ld-prow{height:var(--h-row);font-size:var(--text-btn);color:var(--ink-2);opacity:0;transition:opacity var(--dur-fade) var(--ease-out),background var(--dur-fade) var(--ease-out);align-items:center;gap:10px;padding:0 14px;font-weight:400;display:flex}.ld-shell.ld-s-pal .ld-prow{opacity:1}.ld-palette .ld-prow.ld-hot{background:var(--wash);color:var(--ink-1)}.ld-palette .ld-prow .ld-k{font-family:var(--font-mono);font-size:var(--ld-text-tick);color:var(--ink-3);letter-spacing:.06em;margin-left:auto}.ld-cta{text-align:center}.ld-cta h2{font-size:var(--ld-text-close);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);color:var(--ink-1);text-wrap:balance;margin:0}.ld-cta p{color:var(--ink-2);font-size:var(--ld-text-btn);margin:16px 0 30px}.ld-cta .ld-row{justify-content:center;gap:12px;display:flex}.ld-btn{font-family:var(--font-ui);font-size:var(--ld-text-btn);font-weight:var(--weight-name);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--dur-hover) var(--ease-out),background var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out);padding:12px 26px;text-decoration:none}.ld-btn:active{transform:translateY(1px)}.ld-btn.ld-primary{background:var(--accent);color:var(--on-accent);border:1px solid var(--accent)}.ld-btn.ld-primary:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-btn.ld-primary:hover{background:color-mix(in oklch,var(--accent) 88%,var(--ink-1))}}.ld-btn.ld-ghost{color:var(--ink-1);border:1px solid var(--border);background:0 0}.ld-btn.ld-ghost:hover{border-color:var(--ink-3);background:var(--wash)}.ld-cta .ld-fine{font-family:var(--font-mono);font-size:var(--ld-text-label);color:var(--ink-2);letter-spacing:.14em;margin-top:28px}.ld-contactpage{flex-direction:column;min-height:100svh;display:flex}.ld-contact{flex:1;width:min(560px,88vw);margin:0 auto;padding:130px 0 90px}.ld-contact h1{font-size:var(--ld-text-close);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);color:var(--ink-1);margin:0}.ld-contact .ld-csub{color:var(--ink-2);font-size:var(--ld-text-body);margin:12px 0 34px;line-height:1.6}.ld-cform{flex-direction:column;gap:6px;display:flex}.ld-clabel{font-family:var(--font-mono);font-size:var(--ld-text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-2);margin-top:14px}.ld-cinput{font-family:var(--font-ui);font-size:var(--ld-text-body);color:var(--ink-1);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--dur-hover) var(--ease-out),background var(--dur-hover) var(--ease-out);padding:10px 12px}.ld-cinput:hover{border-color:var(--ink-3)}.ld-cinput:disabled{opacity:.6}.ld-carea{resize:vertical;min-height:120px;line-height:1.6}.ld-chp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.ld-csend{border:1px solid var(--accent);align-self:flex-start;margin-top:22px}.ld-csend:disabled{opacity:.6;cursor:default}.ld-cstatus{min-height:22px;font-size:var(--text-chrome);color:var(--ink-2);margin:12px 0 0}.ld-cstatus a{color:var(--accent-ink)}.ld-legal{width:min(640px,88vw)}.ld-legal h2{font-size:var(--ld-text-body);font-weight:var(--weight-title);letter-spacing:var(--tracking-title);color:var(--ink-1);margin:34px 0 10px}.ld-legal p{color:var(--ink-2);font-size:var(--ld-text-body);margin:0 0 12px;line-height:1.7}.ld-legal p strong{color:var(--ink-1);font-weight:var(--weight-title)}.ld-legal p a{color:var(--accent-ink)}.ld-footer{background:var(--sunken);border-top:1px solid var(--border-soft);font-size:var(--text-fine);letter-spacing:.02em;color:var(--ink-2);justify-content:space-between;align-items:center;padding:24px 28px;font-weight:400;display:flex}.ld-footer a{color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.ld-footer a{-webkit-text-decoration-color:color-mix(in oklch,var(--accent) 45%,transparent);text-decoration-color:color-mix(in oklch,var(--accent) 45%,transparent)}}.ld-footer a:hover{color:var(--ink-1)}@media(prefers-reduced-motion:no-preference){.ld-hero .ld-caret{animation:ld-blink var(--ld-dur-caret) steps(1) infinite}.ld-hero h1[data-typing] .ld-caret{animation:none}@keyframes ld-blink{50%{opacity:0}}.ld-scrollcue svg{animation:ld-cue var(--ld-dur-cue) var(--ease-out) infinite}@keyframes ld-cue{0%,to{opacity:.55;transform:translateY(0)}45%{opacity:1;transform:translateY(6px)}}}@media(max-height:560px){.ld-caption{bottom:3vh}.ld-caption .ld-sub{display:none}.ld-shell{height:min(430px,48svh)}.ld-graphwrap svg{max-height:34svh}.ld-doc{padding:18px 26px 20px}}@media(prefers-reduced-motion:reduce){.ld-journey{height:auto}.ld-stage{height:auto;position:static;overflow:visible}.ld-gutter,.ld-gmark,.ld-scrollcue,.ld-mover,.ld-palette{display:none}.ld-part{opacity:1;visibility:visible;min-height:70vh;padding:50px 0;position:static;transform:none}.ld-caption{opacity:1;pointer-events:auto;margin:26px auto 0;position:static;transform:none}.ld-dblock,.ld-grid tr.ld-rec td,.ld-card,.ld-bchip,.ld-gnode,.ld-side,.ld-srow,.ld-main .ld-mtitle,.ld-main .ld-mline,.ld-embed{opacity:1;transform:none}.ld-grid td.ld-fx .ld-val{opacity:1}.ld-gedge{stroke-dasharray:none}}@media(max-width:700px){.ld-gutter,.ld-gmark{display:none}.ld-part{padding-left:8px;padding-right:8px}.ld-part .ld-art{width:100%}.ld-caption{width:min(640px,100vw - 24px)}.ld-grid{overflow-x:auto}.ld-board{grid-template-columns:1fr 1fr}.ld-col.ld-col-done,.ld-grid th:nth-child(4),.ld-grid td:nth-child(4){display:none}.ld-shell{grid-template-columns:1fr}.ld-side{display:none}}
