@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-400.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/space-grotesk-500.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/space-grotesk-600.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-700.woff2)format("woff2")}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-tight-400.woff2)format("woff2")}@font-face{font-family:Inter Tight;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-tight-500.woff2)format("woff2")}@font-face{font-family:Inter Tight;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-tight-600.woff2)format("woff2")}@font-face{font-family:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-tight-700.woff2)format("woff2")}@font-face{font-family:Inter Tight;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/inter-tight-400-italic.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono-400.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-500.woff2)format("woff2")}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-400.woff2)format("woff2");unicode-range:U+E00-E7F,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-500.woff2)format("woff2");unicode-range:U+E00-E7F,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-600.woff2)format("woff2");unicode-range:U+E00-E7F,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-sans-thai-700.woff2)format("woff2");unicode-range:U+E00-E7F,U+200C-200D,U+25CC}@font-face{font-family:Space Grotesk Fallback;src:local(Arial),local(ArialMT);font-weight:100 900;ascent-override:122.58%;descent-override:36.3754%;line-gap-override:0%;size-adjust:80.2741%}@font-face{font-family:Inter Tight Fallback;src:local(Arial),local(ArialMT);font-weight:100 900;ascent-override:137.076%;descent-override:34.1308%;line-gap-override:0%;size-adjust:70.6725%}@font-face{font-family:JetBrains Mono Fallback;src:local(Courier New),local(CourierNewPSMT);font-weight:100 900;ascent-override:102.017%;descent-override:30.0049%;line-gap-override:0%;size-adjust:99.9837%}:root{--c-ink-900:oklch(16.47% .0042 285.9);--c-ink-800:oklch(23.99% .0078 274.6);--c-ink-700:oklch(29.01% .0092 276.8);--c-ink-600:oklch(35.36% .0104 278.3);--c-ink-500:oklch(41.37% .0084 277);--c-ink-400:oklch(52.86% .0079 277.1);--c-ink-300:oklch(69.05% .0088 278.6);--c-ink-200:oklch(78.65% .0071 277.1);--c-paper-0:oklch(99.4% .004 106.5);--c-paper-100:oklch(98.43% .004 106.5);--c-paper-200:oklch(95.38% .0066 106.5);--c-accent-300:oklch(75.33% .1546 41.6);--c-accent-400:oklch(68.6% .1772 38.8);--c-accent-500:oklch(59.17% .1791 36.3);--c-accent-600:oklch(49.59% .1556 34.3);--c-accent-700:oklch(42.93% .1349 34.8);--c-success:oklch(42.65% .0713 151.9);--c-warning:oklch(54.7% .0995 84);--c-error:oklch(55.01% .1891 31.7);--c-info:oklch(42.44% .1809 265.6);--ink:var(--c-ink-900);--ink-soft:var(--c-ink-800);--ink-line:var(--c-ink-700);--ink-line-strong:var(--c-ink-600);--ink-muted:var(--c-ink-200);--ink-faint:var(--c-ink-300);--paper:var(--c-paper-100);--paper-pure:var(--c-paper-0);--paper-deep:var(--c-paper-200);--paper-line:#0e0e101a;--paper-line-strong:#0e0e102e;--graphite:var(--c-ink-500);--graphite-soft:var(--c-ink-400);--fg:var(--ink);--fg-secondary:var(--graphite);--fg-tertiary:var(--graphite-soft);--bg:var(--paper);--bg-raised:var(--paper-pure);--bg-sunken:var(--paper-deep);--line:var(--paper-line);--line-strong:var(--paper-line-strong);--accent-paper:var(--c-accent-500);--accent-ink:var(--c-accent-400);--accent-deep:var(--c-accent-600);--accent-bright:var(--c-accent-300);--accent-tint:#d24a221a;--accent-text:var(--accent-deep);--accent-text-hover:var(--c-accent-700);--accent-on:var(--paper-pure);--mark-bg-paper:#d24a221a;--mark-bg-ink:#f26b3d38;--mark-bg:var(--mark-bg-paper);--accent:var(--accent-paper);--accent-hover:var(--accent-deep);--link:var(--accent-text);--link-hover:var(--accent-text-hover);--success:var(--c-success);--warning:var(--c-warning);--error:var(--c-error);--info:var(--c-info);--focus:var(--accent-text);--focus-bg:color-mix(in srgb, var(--accent) 8%, var(--bg-raised));--field-border:var(--line);--field-focus-edge:var(--accent);--field-pad-y:var(--space-2);--field-pad-x:var(--space-3);--field-radius:var(--radius-1);--font-display:"Space Grotesk", "Space Grotesk Fallback", "IBM Plex Sans Thai", "Söhne Breit", "Geist", system-ui, sans-serif;--font-sans:"Inter Tight", "Inter Tight Fallback", "IBM Plex Sans Thai", "Söhne", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", "JetBrains Mono Fallback", "IBM Plex Sans Thai", "ABC Diatype Mono", "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-mono-xs:.6875rem;--fs-mono-sm:.75rem;--fs-mono-md:.8125rem;--fs-mono-lg:.875rem;--fs-body-sm:.8125rem;--fs-body:1rem;--fs-input:1rem;--fs-h6:1rem;--fs-lead:clamp(1.0625rem, calc(1rem + .27778vw), 1.25rem);--fs-h5:clamp(1rem, calc(.95833rem + .18519vw), 1.125rem);--fs-h4:clamp(1.125rem, calc(1.04167rem + .37037vw), 1.375rem);--fs-h3:clamp(1.25rem, calc(1.125rem + .55556vw), 1.625rem);--fs-h2:clamp(1.5625rem, calc(1.375rem + .83333vw), 2.125rem);--fs-h1:clamp(2rem, calc(1.58333rem + 1.85185vw), 3.25rem);--fs-display:clamp(2.5rem, calc(1.70833rem + 3.51852vw), 4.875rem);--fs-display-xl:clamp(3rem, calc(1.66667rem + 5.92593vw), 7rem);--lh-display-xl:.94;--lh-display:.98;--lh-tight:1.02;--lh-snug:1.14;--lh-h3:1.18;--lh-h4:1.25;--lh-h5:1.3;--lh-h6:1.4;--lh-normal:1.5;--lh-loose:1.65;--tracking-display-xl:-.035em;--tracking-display:-.03em;--tracking-h1:-.03em;--tracking-h2:-.025em;--tracking-h3:-.02em;--tracking-h4:-.015em;--tracking-h5:-.01em;--tracking-h6:-.005em;--tracking-mono-label:.06em;--space-1:4px;--space-2:8px;--space-3:clamp(8px, 1vw, 12px);--space-4:clamp(12px, 1.33vw, 16px);--space-5:clamp(16px, 2vw, 24px);--space-6:clamp(20px, 2.67vw, 32px);--space-7:clamp(28px, 4vw, 48px);--space-8:clamp(36px, 5.33vw, 64px);--space-9:clamp(48px, 8vw, 96px);--space-10:clamp(64px, 10.67vw, 128px);--space-11:clamp(96px, 16vw, 192px);--space-card-padding:var(--space-6);--space-cell-padding:var(--space-4);--space-section-head:var(--space-4);--space-section-body:var(--space-8);--measure-body:clamp(66ch, 30ch + 30vw, 78ch);--measure-section:880px;--container:clamp(360px, 100vw, 1440px);--gutter:clamp(16px, 4vw, 48px);--radius-1:2px;--radius-2:4px;--hairline:1px;--rule-accent-edge:2px solid var(--accent);--nav-paper-translucent:#fafaf7d9;--nav-ink-translucent:#0e0e10b8;--scrim-ink:#0e0e108c;--scrim-hero-img:linear-gradient(118deg, transparent 30%, #000 85%);--scrim-hero-base:linear-gradient(180deg, #0e0e1000 0%, #0e0e108c 52%, #0e0e10e6 100%);--scrim-closing:linear-gradient(180deg, #0a0a0cb8 0%, #0a0a0cb8 50%, #0a0a0ccc 100%);--ink-panel:#1213169e;--nav-h:64px;--scroll-anchor-offset:calc(var(--nav-h) + var(--space-3));--ease-decel:cubic-bezier(.2, 0, 0, 1);--ease-standard:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur-base:.24s;--dur-slow:.4s;--app-fs-xs:.6875rem;--app-fs-sm:.8125rem;--app-fs-body:.875rem;--app-fs-md:1rem;--app-fs-lg:1.0625rem;--app-fs-h3:1.125rem;--app-fs-h2:1.25rem;--app-fs-h1:1.5rem;--status-success-tint:oklch(95.03% .0454 152.2);--status-success-text:oklch(42.1% .0756 151.6);--status-success-fill:oklch(45.9% .0837 152);--status-success-border:oklch(78.05% .0594 151.8);--status-success-on:var(--paper-pure);--status-warning-tint:oklch(94.77% .0593 87);--status-warning-text:oklch(46.08% .0901 83.7);--status-warning-fill:oklch(54.88% .1046 83.8);--status-warning-border:oklch(80% .0797 84.2);--status-warning-on:var(--paper-pure);--status-error-tint:oklch(93.87% .0317 37.1);--status-error-text:oklch(49.94% .1594 31.8);--status-error-fill:oklch(52.05% .1905 31.7);--status-error-border:oklch(77.95% .0899 31.2);--status-error-on:var(--paper-pure);--status-info-tint:oklch(94.79% .0251 255.6);--status-info-text:oklch(45.03% .1589 265.6);--status-info-fill:oklch(48.04% .1794 265.6);--status-info-border:oklch(80.09% .0699 264.9);--status-info-on:var(--paper-pure);--status-neutral-tint:var(--paper-deep);--status-neutral-text:var(--fg-secondary);--status-neutral-fill:var(--fg-secondary);--status-neutral-border:var(--line-strong);--status-neutral-on:var(--paper-pure);--status-success-tint-dark:oklch(27.09% .0459 151.4);--status-success-text-dark:oklch(79.97% .0748 151.8);--status-success-fill-dark:oklch(61.88% .0992 152.2);--status-success-border-dark:oklch(45.02% .0596 152.2);--status-warning-tint-dark:oklch(28.01% .0448 85);--status-warning-text-dark:oklch(82.08% .0907 84.3);--status-warning-fill-dark:oklch(78.13% .1207 84.2);--status-warning-border-dark:oklch(47.94% .0697 84);--status-error-tint-dark:oklch(28.02% .0498 32);--status-error-text-dark:oklch(71.99% .1294 32.1);--status-error-fill-dark:oklch(63.04% .1802 31.7);--status-error-border-dark:oklch(46% .0907 31.9);--status-info-tint-dark:oklch(28.04% .0506 265.8);--status-info-text-dark:oklch(77.95% .1001 265.9);--status-info-fill-dark:oklch(62.02% .1606 265.5);--status-info-border-dark:oklch(47.96% .0801 265.9);--elevation-1:0 1px 2px #0e0e100f, 0 1px 3px #0e0e1014;--elevation-2:0 4px 16px #0e0e101a;--elevation-3:4px 0 24px #0e0e101a;--scrim:var(--scrim-ink);--scrim-soft:#0e0e1040;--z-base:0;--z-sticky:10;--z-nav:80;--z-scrim:90;--z-drawer:100;--z-popover:200;--app-sidebar-w:220px;--app-sidebar-collapsed-w:48px;--app-drawer-w:280px;--app-content-max:1600px;--app-header-h:52px;--density-row-y:var(--space-3);--control-h-sm:28px;--control-h-md:36px;--focus-ring:2px solid var(--focus);--focus-ring-offset:2px;--state-hover-bg:#0e0e100a;--state-active-bg:#0e0e1014;--state-selected-bg:var(--accent-tint);--state-disabled-fg:var(--fg-tertiary);--state-disabled-bg:var(--paper-deep);--state-disabled-opacity:.5;--page-a4-w:210mm;--page-a4-h:297mm;--page-margin-top:28mm;--page-margin-bottom:24mm;--page-margin-x:24mm;--page-body-measure:138mm;--page-body-wide-measure:162mm;--page-foot-bottom:16mm;--slide-w:1920px;--slide-h:1080px;--slide-safe:96px;--fs-slide-cover-title:180px;--fs-slide-closing-title:140px;--fs-slide-display-md:110px;--fs-slide-display:96px;--fs-slide-pull-quote:88px;--fs-slide-pricing-title:56px;--fs-slide-h2:42px;--fs-slide-h3:38px;--fs-slide-data:32px;--fs-slide-body-lg:28px;--fs-slide-mono:26px;--fs-slide-body:24px;--fs-slide-mono-sm:22px;--fs-slide-mono-xs:18px;--slide-img-brightness:.55;--viz-male:#4e7ca8;--viz-female:#c98ba4}*,:before,:after{box-sizing:border-box;min-width:0}[hidden]{display:none!important}picture{display:contents}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern", "liga", "calt", "ss01", "ss02"}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-normal);text-wrap:pretty;-webkit-tap-highlight-color:transparent;margin:0}td,dd,code,a{overflow-wrap:anywhere}main [id]{scroll-margin-top:var(--scroll-anchor-offset)}.surface-ink,[data-theme=dark]{background:var(--ink);color:var(--paper);--fg:var(--paper);--fg-secondary:var(--ink-muted);--fg-tertiary:var(--ink-faint);--bg:var(--ink);--bg-raised:var(--ink-soft);--bg-sunken:var(--ink-soft);--line:var(--ink-line);--line-strong:var(--ink-line-strong);--accent:var(--accent-ink);--accent-hover:var(--accent-bright);--accent-text:var(--accent-ink);--accent-text-hover:var(--accent-bright);--accent-on:var(--ink);--link:var(--accent-text);--link-hover:var(--accent-text-hover);--focus:var(--accent-ink);--mark-bg:var(--mark-bg-ink);--success:var(--status-success-text-dark);--warning:var(--status-warning-text-dark);--error:var(--status-error-text-dark);--info:var(--status-info-text-dark);--status-success-tint:var(--status-success-tint-dark);--status-success-text:var(--status-success-text-dark);--status-success-fill:var(--status-success-fill-dark);--status-success-border:var(--status-success-border-dark);--status-success-on:var(--ink);--status-warning-tint:var(--status-warning-tint-dark);--status-warning-text:var(--status-warning-text-dark);--status-warning-fill:var(--status-warning-fill-dark);--status-warning-border:var(--status-warning-border-dark);--status-warning-on:var(--ink);--status-error-tint:var(--status-error-tint-dark);--status-error-text:var(--status-error-text-dark);--status-error-fill:var(--status-error-fill-dark);--status-error-border:var(--status-error-border-dark);--status-error-on:var(--ink);--status-info-tint:var(--status-info-tint-dark);--status-info-text:var(--status-info-text-dark);--status-info-fill:var(--status-info-fill-dark);--status-info-border:var(--status-info-border-dark);--status-info-on:var(--ink);--status-neutral-tint:var(--ink-soft);--status-neutral-on:var(--ink)}.surface-ink h1,.surface-ink h2,.surface-ink h3,.surface-ink h4,.surface-ink h5,.surface-ink h6,[data-theme=dark] h1,[data-theme=dark] h2,[data-theme=dark] h3,[data-theme=dark] h4,[data-theme=dark] h5,[data-theme=dark] h6{color:var(--paper)}.surface-ink hr,[data-theme=dark] hr{border-top-color:var(--ink-line)}.surface-paper{background:var(--paper);color:var(--ink)}.surface-paper-deep{background:var(--paper-deep);color:var(--ink);--bg-raised:var(--paper)}::selection{background:var(--accent);color:var(--paper)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--ink);text-wrap:balance;margin:0;font-weight:500}h1,.t-h1{font-size:var(--fs-h1);line-height:var(--lh-tight);letter-spacing:var(--tracking-h1);font-weight:500}h2,.t-h2{font-size:var(--fs-h2);line-height:var(--lh-snug);letter-spacing:var(--tracking-h2);font-weight:500}h3,.t-h3{font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--tracking-h3);font-weight:500}h4,.t-h4{font-size:var(--fs-h4);line-height:var(--lh-h4);letter-spacing:var(--tracking-h4);font-weight:500}h5,.t-h5{font-size:var(--fs-h5);line-height:var(--lh-h5);letter-spacing:var(--tracking-h5);font-weight:500}h6,.t-h6{font-size:var(--fs-h6);line-height:var(--lh-h6);letter-spacing:var(--tracking-h6);font-weight:600}p{margin:0 0 var(--space-4)}.t-body{font-size:var(--fs-body);line-height:var(--lh-normal)}.t-body-sm{font-size:var(--fs-body-sm);line-height:var(--lh-normal);color:var(--fg-secondary)}.guri-bio{font-size:var(--fs-body);line-height:var(--lh-loose);color:var(--graphite);max-width:64ch;margin:0}.guri-bio+.guri-bio{margin-top:var(--space-5)}strong{font-weight:600}small{font-size:var(--fs-body-sm);color:var(--fg-tertiary)}mark{background:var(--mark-bg);color:inherit;border-radius:var(--radius-1);padding:0 .15em}blockquote{margin:var(--space-5) 0;padding-left:var(--space-5);border-left:2px solid var(--line-strong);color:var(--fg-secondary);font-size:var(--fs-body);line-height:var(--lh-loose)}dl{margin:var(--space-4) 0}dt{font-weight:600}dd{margin:0 0 var(--space-3)}dd:last-child{margin-bottom:0}.t-display{font-family:var(--font-display);font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--tracking-display);text-wrap:balance;font-weight:500}.t-display-xl{font-family:var(--font-display);font-size:var(--fs-display-xl);line-height:var(--lh-display-xl);letter-spacing:var(--tracking-display-xl);text-wrap:balance;font-weight:500}.t-mono{font-family:var(--font-mono);font-size:var(--fs-mono-sm)}.t-mono-label{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:var(--tracking-mono-label);text-transform:uppercase;color:var(--fg-secondary);white-space:nowrap;font-weight:500}.t-mono-label-wrap{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:var(--tracking-mono-label);text-transform:uppercase;color:var(--fg-secondary);white-space:normal;font-weight:500;line-height:1.35}.t-mono-caption{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:.01em;color:var(--fg-secondary);text-transform:none;font-weight:400}.t-thai-caption{font-family:IBM Plex Sans Thai,Sarabun,Noto Sans Thai,system-ui,sans-serif;font-size:var(--fs-body-sm);color:var(--fg-secondary);font-weight:400}.t-mono-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.t-pull{font-family:var(--font-sans);font-style:italic;font-weight:400;font-size:var(--fs-h3);line-height:var(--lh-h5);letter-spacing:var(--tracking-h6);text-wrap:balance}em{font-style:italic}a{color:var(--link);text-decoration:underline;text-decoration-thickness:var(--hairline);text-decoration-color:var(--line-strong);text-underline-offset:.22em;transition:color var(--dur-fast) var(--ease-standard), text-decoration-color var(--dur-fast) var(--ease-standard)}a:hover{color:var(--link-hover);text-decoration-color:var(--link-hover)}a:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-1)}ul,ol{margin:0 0 var(--space-4);padding-left:0;list-style:none}ul>li,ol>li{margin-bottom:var(--space-3);line-height:var(--lh-normal);position:relative}ul>li:last-child,ol>li:last-child{margin-bottom:0}ul>li{padding-left:var(--space-5)}ul>li:before{content:"–";color:var(--fg-tertiary);position:absolute;left:0}ol{counter-reset:guri-ol;column-gap:var(--space-4);grid-template-columns:auto 1fr;display:grid}ol>li{grid-template-columns:subgrid;counter-increment:guri-ol;grid-column:1/-1;display:grid}ol>li:before{content:counter(guri-ol, decimal-leading-zero) ".";font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:var(--tracking-mono-label);color:var(--fg-tertiary);padding-top:.05em}li>ul,li>ol{margin:var(--space-2) 0 0}code,pre,kbd{font-family:var(--font-mono);font-size:.92em}code{color:var(--ink-soft)}.surface-ink code{color:var(--ink-muted)}kbd{border:var(--hairline) solid var(--line);border-radius:var(--radius-1);background:var(--bg-raised);color:var(--fg);padding:1px 6px;font-size:.85em}hr{border:0;border-top:var(--hairline) solid var(--paper-line);margin:var(--space-7) 0}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:var(--hairline) solid var(--paper-line);font-size:var(--fs-body-sm)}th{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:var(--tracking-mono-label);text-transform:uppercase;color:var(--fg-secondary);font-weight:500}input,textarea,select,button{font:inherit;color:inherit}input[type=text],input[type=email],input[type=url],textarea{border:0;border-bottom:var(--hairline) solid var(--paper-line-strong);width:100%;padding:var(--space-4) var(--field-pad-x);transition:border-color var(--dur-fast) var(--ease-standard);font-family:var(--font-sans);font-size:var(--fs-input);background:0 0;border-radius:0}input:focus,textarea:focus{border-bottom-color:var(--field-focus-edge);outline:none}input:focus-visible,textarea:focus-visible,select:focus-visible{background-color:var(--focus-bg);outline:none}select:focus-visible{border-color:var(--field-focus-edge)}input.guri-input,select.guri-input,textarea.guri-input{font-family:var(--font-sans);font-size:var(--app-fs-body);color:var(--fg);background:var(--bg-raised);border:var(--hairline) solid var(--field-border);border-radius:var(--field-radius);padding:var(--field-pad-y) var(--field-pad-x);box-sizing:border-box;width:100%;transition:border-color var(--dur-fast) var(--ease-standard), background-color var(--dur-fast) var(--ease-standard)}input.guri-input:focus,select.guri-input:focus,textarea.guri-input:focus{border-color:var(--field-focus-edge);outline:none}input.guri-input:focus-visible,select.guri-input:focus-visible,textarea.guri-input:focus-visible{background-color:var(--focus-bg)}input.guri-input:disabled,select.guri-input:disabled,textarea.guri-input:disabled{background:var(--state-disabled-bg);color:var(--state-disabled-fg);opacity:var(--state-disabled-opacity);cursor:not-allowed}.guri-input::placeholder{color:var(--fg-tertiary)}textarea.guri-input{resize:vertical}.guri-input.guri-input--lg{padding:var(--space-3) var(--space-4);font-size:var(--fs-input)}button{cursor:pointer;font-family:var(--font-sans);background:0 0;border:0;padding:0}button:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-1)}.guri-btn-primary,.guri-btn-ghost{align-items:center;gap:var(--space-3);padding:16px var(--space-5);font-family:var(--font-sans);font-size:var(--fs-body-sm);letter-spacing:var(--tracking-h6);border-radius:var(--radius-2);border:var(--hairline) solid transparent;cursor:pointer;transition:all var(--dur-fast) var(--ease-standard);font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.guri-btn-primary{background:var(--accent-text);color:var(--accent-on);border-color:var(--accent-text)}.guri-btn-primary:hover{background:var(--accent-text-hover);border-color:var(--accent-text-hover);color:var(--accent-on);text-decoration:none}.guri-btn-ghost{color:var(--ink);border-color:var(--paper-line-strong);background:0 0}.guri-btn-ghost:hover{border-color:var(--ink);color:var(--ink);text-decoration:none}.surface-ink .guri-btn-ghost{color:var(--paper);border-color:var(--ink-line)}.surface-ink .guri-btn-ghost:hover{border-color:var(--paper);color:var(--paper);text-decoration:none}.guri-btn-primary:focus-visible,.guri-btn-ghost:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.guri-btn-primary:disabled,.guri-btn-primary[aria-disabled=true],.guri-btn-ghost:disabled,.guri-btn-ghost[aria-disabled=true]{opacity:.45;cursor:not-allowed;pointer-events:none}.guri-btn-primary .arrow,.guri-btn-ghost .arrow{font-family:var(--font-mono);font-size:var(--fs-mono-lg);transition:transform var(--dur-fast) var(--ease-standard);line-height:1}.guri-btn-primary:hover .arrow,.guri-btn-ghost:hover .arrow{transform:translate(3px)}.guri-btn-primary:active,.guri-btn-ghost:active{transform:translateY(1px)}.guri-inline-link{align-items:baseline;gap:var(--space-2);color:var(--ink);border-bottom:var(--hairline) solid var(--line-strong);transition:border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);padding-bottom:2px;font-weight:500;text-decoration:none;display:inline-flex}.guri-inline-link:hover{color:var(--accent-text);border-bottom-color:var(--accent);text-decoration:none}.guri-inline-link:active{color:var(--accent-hover);border-bottom-color:var(--accent-hover)}.guri-inline-link:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:var(--radius-1)}.guri-inline-link .arrow{font-family:var(--font-mono);padding-right:var(--space-1);transition:transform var(--dur-fast) var(--ease-standard);font-size:.85em}.guri-inline-link:hover .arrow{transform:translate(3px)}.surface-ink .guri-inline-link{color:var(--paper)}.surface-ink .guri-inline-link:hover{color:var(--paper);border-bottom-color:var(--accent)}.guri-inline-link .arrow.is-external{font-size:.9em}.kicker{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:var(--tracking-mono-label);text-transform:uppercase;color:var(--fg-secondary);align-items:center;gap:var(--space-2);white-space:nowrap;font-weight:500;display:inline-flex}.kicker:before{content:"";background:currentColor;width:24px;height:1px;display:inline-block}.kicker.kicker--bare:before{display:none}.kicker.kicker--canvas{font-size:var(--fs-slide-mono);margin-bottom:calc(0px - var(--space-7))}.responsive-surface{container-type:inline-size}.row-list{column-gap:var(--space-4);row-gap:var(--space-3);grid-template-columns:max-content 1fr;display:grid;container-type:inline-size}.row-list>.row{grid-column:1/-1;grid-template-columns:subgrid;padding:var(--space-2) 0;border-bottom:var(--hairline) solid var(--paper-line);align-items:baseline;display:grid}.row-list>.row:last-child{border-bottom:0}.surface-ink .row-list>.row{border-bottom-color:var(--ink-line)}@container (width<=480px){.row-list{grid-template-columns:1fr}.row-list>.row{row-gap:var(--space-1);padding:var(--space-3) 0;grid-template-columns:1fr}}.container{max-width:var(--container);padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.page-break-before{break-before:page;page-break-before:always}.page-break-after{break-after:page;page-break-after:always}.avoid-break-inside{break-inside:avoid;page-break-inside:avoid}@media print{*,:before,:after{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.guri-timeline{border-top:var(--hairline) solid var(--paper-line);border-bottom:var(--hairline) solid var(--paper-line);margin-top:var(--space-7);max-width:var(--container);grid-template-columns:repeat(4,1fr);margin-left:auto;margin-right:auto;display:grid}.guri-timeline.is-3-up{grid-template-columns:repeat(3,1fr)}.guri-timeline.is-5-up{grid-template-columns:repeat(5,1fr)}@container (width<=800px){.guri-timeline{grid-template-columns:1fr}}.guri-timeline-phase{padding:var(--space-5) var(--space-cell-padding);border-right:var(--hairline) solid var(--paper-line)}.guri-timeline-phase:last-child{border-right:0}.guri-timeline-num{margin-bottom:var(--space-3)}.guri-timeline-title{font-family:var(--font-display);font-size:var(--fs-h4);line-height:var(--lh-h4);letter-spacing:var(--tracking-h4);color:var(--ink);margin-bottom:var(--space-2);font-weight:500}.guri-timeline-window{font-family:var(--font-mono);font-size:var(--fs-mono-xs);color:var(--accent);margin-bottom:var(--space-3)}.guri-timeline-body{font-size:var(--fs-body-sm);line-height:var(--lh-loose);color:var(--ink-soft)}.guri-stat{gap:var(--space-2);flex-direction:column;display:flex}.guri-stat-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-size:var(--fs-display);color:var(--ink);font-weight:500;line-height:1}.guri-accent-rule{width:var(--rule-width,var(--space-8));height:var(--rule-weight,2px);background:var(--accent);display:block}.guri-accent-rule.is-center{margin-left:auto;margin-right:auto}.guri-accent-rule.is-vertical{width:var(--rule-weight,2px);height:auto;position:absolute;top:0;bottom:0;left:0}.guri-card{background:var(--bg-raised);border:var(--hairline) solid var(--line);border-radius:var(--radius-2);padding:var(--space-card-padding);gap:var(--space-3);flex-direction:column;display:flex}.guri-card.is-emphasis{border-left:var(--rule-accent-edge)}.guri-card-label{margin-bottom:var(--space-2)}.guri-card-title{font-family:var(--font-display);font-size:var(--fs-h4);line-height:var(--lh-h4);letter-spacing:var(--tracking-h4);color:var(--ink);margin:0;font-weight:500}.guri-card-body{font-size:var(--fs-body-sm);line-height:var(--lh-loose);color:var(--ink-soft);margin:0}.guri-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.guri-table{border-collapse:collapse;border-top:var(--hairline) solid var(--paper-line);border-bottom:var(--hairline) solid var(--paper-line);width:100%}.guri-table th,.guri-table td{text-align:left;padding:var(--space-3) var(--space-cell-padding);border-bottom:var(--hairline) solid var(--paper-line);font-size:var(--fs-body-sm);vertical-align:top}.guri-table th{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:var(--tracking-mono-label);text-transform:uppercase;color:var(--fg-secondary);white-space:nowrap;border-bottom:var(--hairline) solid var(--paper-line-strong);font-weight:500}.guri-table tbody tr:last-child td{border-bottom:0}.surface-ink .guri-table,.surface-ink .guri-table th,.surface-ink .guri-table td{border-color:var(--ink-line)}.guri-section{padding:var(--space-9) var(--gutter)}.guri-section.surface-ink{background:var(--ink);color:var(--paper)}.guri-section.surface-paper{background:var(--paper);color:var(--ink)}.guri-section.surface-paper-deep{background:var(--paper-deep);color:var(--ink)}.guri-section-inner{max-width:var(--container);margin:0 auto}.guri-section.is-narrow .guri-section-inner{max-width:var(--measure-section)}.guri-section-title{margin-top:var(--space-3);margin-bottom:var(--space-section-head);max-width:18ch}.guri-section-opener--bodygap .guri-section-title{margin-bottom:var(--space-section-body)}.guri-section-opener--rule .guri-section-title{margin-top:var(--space-7);margin-bottom:0}@container (width<=480px){.guri-section{padding:var(--space-8) var(--gutter)}}.guri-wrap{max-width:calc(var(--container) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.guri-section-opener{display:block}.guri-section.is-narrow{padding-left:var(--gutter);padding-right:var(--gutter)}.guri-section.is-narrow>:not(.guri-section-inner){max-width:var(--measure-section);margin-left:auto;margin-right:auto}.guri-section .guri-modes{column-gap:var(--space-7);margin:var(--space-7) auto 0;max-width:var(--container);background:0 0;border:0;grid-template-columns:auto 1fr;row-gap:0;width:100%;display:grid}.guri-mode{grid-template-columns:subgrid;padding:var(--space-7) 0;border-top:var(--hairline) solid var(--line);grid-column:1/-1;align-items:start;display:grid}.guri-mode:last-child{border-bottom:var(--hairline) solid var(--line)}.guri-mode-num{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:var(--tracking-mono-label);color:var(--fg-tertiary);padding-top:var(--space-4)}.guri-mode-body{max-width:60ch}.guri-mode-body h2,.guri-mode-body h3{margin-bottom:var(--space-3);font-weight:500}.guri-mode-body p{color:var(--graphite);font-size:var(--fs-body);line-height:var(--lh-loose);margin-bottom:var(--space-4)}.guri-mode-close{font-size:var(--fs-body-sm);color:var(--ink-soft);padding-top:var(--space-3);border-top:var(--hairline) solid var(--line)}.guri-mode-vignette{margin-top:var(--space-5);padding-left:var(--space-5);border-left:var(--hairline) solid var(--line);color:var(--fg-secondary);font-style:italic}@container (width<=896px){.guri-section .guri-modes{grid-template-columns:1fr;column-gap:0}.guri-mode{padding:var(--space-6) 0;row-gap:var(--space-3)}.guri-mode-num{padding-top:0}}.guri-bullets{margin:0 0 var(--space-4);padding:0;list-style:none}.guri-bullets li{padding-left:var(--space-5);padding-top:var(--space-2);padding-bottom:var(--space-2);font-size:var(--fs-body);color:var(--ink-soft);line-height:var(--lh-loose);margin-bottom:0;position:relative}.guri-bullets li:before{content:"";left:0;top:var(--space-4);width:var(--space-3);background:var(--fg-tertiary);height:1px;position:absolute}.guri-principles{margin:var(--space-7) auto 0;max-width:var(--container);column-gap:var(--space-5);grid-template-columns:auto 1fr;padding:0;list-style:none;display:grid}.guri-principles li{grid-template-columns:subgrid;padding:var(--space-5) 0;border-top:var(--hairline) solid var(--line);font-family:var(--font-display);font-size:var(--fs-h4);color:var(--ink);letter-spacing:var(--tracking-h6);grid-column:1/-1;align-items:baseline;margin-bottom:0;padding-left:0;font-weight:400;line-height:1.35;display:grid}.guri-principles li:last-child{border-bottom:var(--hairline) solid var(--line)}.guri-principles>li:before{content:none}.guri-p-num{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:var(--tracking-mono-label);color:var(--fg-tertiary);padding-top:var(--space-2);font-style:normal}.guri-areas{margin-top:var(--space-7);border-top:var(--hairline) solid var(--line);border-left:var(--hairline) solid var(--line);max-width:var(--container);grid-template-columns:repeat(2,1fr);gap:0;margin-left:auto;margin-right:auto;display:grid}.guri-area{padding:var(--space-7);border-right:var(--hairline) solid var(--line);border-bottom:var(--hairline) solid var(--line);gap:var(--space-3);flex-direction:column;display:flex}.guri-area-num{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:var(--tracking-mono-label);color:var(--accent)}.guri-area-title{margin-bottom:var(--space-2);max-width:18ch;font-weight:500}.guri-area-body{color:var(--graphite);font-size:var(--fs-body);line-height:var(--lh-loose);max-width:50ch;margin:0}@container (width<=896px){.guri-areas{grid-template-columns:1fr}}.guri-pull{font-family:var(--font-sans);font-style:italic;font-size:var(--fs-h3);line-height:var(--lh-normal);letter-spacing:var(--tracking-h5);color:var(--ink);background:var(--paper-deep);border-left:var(--rule-accent-edge);border-radius:0 var(--radius-2) var(--radius-2) 0;padding:var(--space-6)}.surface-ink .guri-pull{color:var(--paper);background:var(--ink-soft)}.guri-pull .accent{color:var(--accent)}.guri-pull{margin:var(--space-6) 0}.guri-dl{margin:var(--space-7) 0 0;gap:var(--space-3) var(--space-6);font-size:var(--fs-body);grid-template-columns:minmax(0,auto) minmax(0,1fr);display:grid}.guri-dl dt{padding-top:var(--space-1);border-top:var(--hairline) solid var(--line)}.guri-dl dd{color:var(--ink);border-top:var(--hairline) solid var(--line);padding-top:var(--space-1);margin:0}@container (width<=896px){.guri-dl{grid-template-columns:1fr;gap:0}.guri-dl dt{border-top:var(--hairline) solid var(--line);padding-top:var(--space-3);white-space:normal}.guri-dl dd{padding-bottom:var(--space-3);border-top:0}}.guri-dl.is-stacked{grid-template-columns:1fr;gap:0}.guri-dl.is-stacked dt{border-top:var(--hairline) solid var(--line);padding-top:var(--space-3);white-space:normal}.guri-dl.is-stacked dd{padding-bottom:var(--space-3);border-top:0}.guri-pull-attribution{margin-top:var(--space-3);font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:var(--tracking-mono-label);color:var(--graphite);font-style:normal;display:block}.guri-pull.is-center{text-align:center;border-left:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
