@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap";:root{--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--paper: oklch(.985 .004 90);--paper-2: oklch(.965 .006 90);--paper-3: oklch(.93 .008 90);--rule: oklch(.86 .01 90);--rule-2: oklch(.78 .012 90);--ink: oklch(.18 .018 250);--ink-2: oklch(.32 .02 250);--ink-3: oklch(.55 .018 250);--signal-h: 38;--signal: oklch(.68 .17 var(--signal-h));--signal-2: oklch(.6 .18 var(--signal-h));--signal-tint: oklch(.95 .04 var(--signal-h));--ok: oklch(.65 .13 150);--warn: oklch(.72 .16 60);--radius: 4px;--pad: 16px;--row-h: 40px;--fs-mono-xs: 10px;--fs-mono-sm: 11px;--fs-mono: 12px;--fs-body: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 28px;--fs-3xl: 40px;--fs-4xl: 56px;--fs-5xl: 80px;--color-bg: var(--paper);--color-fg: var(--ink);--color-fg-muted: var(--ink-2);--color-fg-subtle: var(--ink-3);--color-border: var(--rule);--color-border-strong: var(--rule-2);--color-surface: var(--paper-2);--color-surface-2: var(--paper-3);--color-accent: var(--signal);--color-accent-hover: var(--signal-2);--color-link: var(--ink);--color-link-hover: var(--signal);--color-code-bg: var(--paper-3);--color-code-fg: var(--signal-2);--shadow: 0 0 0 1px var(--rule);--shadow-sm: 0 0 0 1px var(--rule)}@media(prefers-color-scheme:dark){:root{--paper: oklch(.16 .012 250);--paper-2: oklch(.2 .014 250);--paper-3: oklch(.25 .016 250);--rule: oklch(.32 .018 250);--rule-2: oklch(.42 .02 250);--ink: oklch(.96 .006 90);--ink-2: oklch(.82 .01 90);--ink-3: oklch(.62 .012 90);--signal: oklch(.78 .18 var(--signal-h));--signal-2: oklch(.7 .19 var(--signal-h));--signal-tint: oklch(.28 .06 var(--signal-h))}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:var(--fs-body);line-height:1.5;color:var(--ink);background:var(--paper);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto}a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule-2);transition:border-color .12s,color .12s}a:hover{color:var(--signal);border-bottom-color:var(--signal)}.rd-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.rd-mono-xs{font-family:var(--font-mono);font-size:var(--fs-mono-xs);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:uppercase}.rd-mono-sm{font-family:var(--font-mono);font-size:var(--fs-mono-sm);font-variant-numeric:tabular-nums}.rd-h1{font-family:var(--font-sans);font-size:var(--fs-5xl);font-weight:600;line-height:.96;letter-spacing:-.03em}.rd-h2{font-size:var(--fs-3xl);font-weight:600;letter-spacing:-.02em;line-height:1.05}.rd-h3{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;line-height:1.2}.rd-eyebrow{font-family:var(--font-mono);font-size:var(--fs-mono-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.02em;line-height:1.15;font-weight:600;margin:2rem 0 .75rem;color:var(--ink)}h1{font-size:var(--fs-3xl);margin-top:0;line-height:1.05}h2{font-size:var(--fs-2xl);padding-bottom:10px;border-bottom:1px solid var(--rule)}h3{font-size:var(--fs-xl)}h4{font-size:var(--fs-lg)}p{margin:0 0 1rem}ul,ol{padding-left:1.5rem;margin:0 0 1rem}li{margin-bottom:.25rem}hr{border:none;border-top:1px solid var(--rule);margin:2rem 0}blockquote{border-left:4px solid var(--signal);padding:.5rem 0 .5rem 1rem;margin:1rem 0;color:var(--ink-2);background:var(--paper-2);font-family:var(--font-mono);font-size:var(--fs-mono)}code{font-family:var(--font-mono);font-size:.9em;background:var(--paper-3);color:var(--ink);padding:.1rem .35rem;border:1px solid var(--rule)}pre{background:var(--paper-2);border:1px solid var(--rule);padding:16px;overflow-x:auto;font-size:var(--fs-mono);line-height:1.55;margin:1rem 0;font-family:var(--font-mono)}pre code{background:none;border:none;padding:0;font-size:inherit}table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:var(--fs-body);font-family:var(--font-mono);display:block;overflow-x:auto}th,td{padding:10px 14px;text-align:left;border-bottom:1px dashed var(--rule);vertical-align:top}th{background:var(--paper-2);font-family:var(--font-mono);font-size:var(--fs-mono-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--ink)}tr:hover td{background:var(--paper-2)}.rd-header{position:sticky;top:0;display:flex;align-items:stretch;border-bottom:1px solid var(--rule);background:var(--paper);z-index:50;height:56px;flex-shrink:0}.rd-header-logo{display:flex;align-items:center;gap:10px;padding:0 20px;border-right:1px solid var(--rule);font-family:var(--font-mono);font-weight:700;letter-spacing:.02em;font-size:14px;color:var(--ink);text-decoration:none;border-bottom:0}.rd-header-logo:hover{color:var(--ink)}.rd-logo-mark{width:26px;height:26px;border:1.5px solid var(--ink);background:var(--signal);position:relative;flex-shrink:0}.rd-logo-mark:before,.rd-logo-mark:after{content:"";position:absolute;background:var(--ink)}.rd-logo-mark:before{left:-4px;top:4px;width:4px;height:2px;box-shadow:0 5px 0 var(--ink),0 10px 0 var(--ink),0 15px 0 var(--ink)}.rd-logo-mark:after{right:-4px;top:4px;width:4px;height:2px;box-shadow:0 5px 0 var(--ink),0 10px 0 var(--ink),0 15px 0 var(--ink)}.rd-nav{display:flex;align-items:stretch;flex:1}.rd-nav-item{display:inline-flex;align-items:center;padding:0 16px;font-family:var(--font-mono);font-size:12px;color:var(--ink-2);border-right:1px solid var(--rule);border-bottom:0;transition:background .15s,color .15s;text-transform:uppercase;letter-spacing:.06em;text-decoration:none}.rd-nav-item:hover{background:var(--paper-2);color:var(--ink);border-bottom:0}.rd-nav-item.is-active{color:var(--ink);background:var(--paper-2)}.rd-nav-item.is-active:before{content:"";width:6px;height:6px;background:var(--signal);margin-right:8px}.rd-header-actions{display:flex;align-items:stretch;margin-left:auto}.rd-icon-btn{width:56px;display:flex;align-items:center;justify-content:center;border-left:1px solid var(--rule);background:var(--paper);color:var(--ink-2);border-top:0;border-right:0;border-bottom:0;cursor:pointer;position:relative;transition:background .12s;text-decoration:none}.rd-icon-btn:hover{background:var(--paper-2);color:var(--ink);border-bottom:0}.rd-lang-switcher{position:relative;display:flex;align-items:stretch;border-left:1px solid var(--rule)}.rd-lang-trigger{display:inline-flex;align-items:center;gap:6px;padding:0 16px;font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);background:var(--paper);border-bottom:0;transition:background .12s,color .12s;text-decoration:none;cursor:pointer}.rd-lang-trigger:hover{background:var(--paper-2);color:var(--ink);border-bottom:0}.rd-lang-trigger span.arrow{font-size:9px;opacity:.6;transition:transform .15s}.rd-lang-switcher:hover .rd-lang-trigger span.arrow,.rd-lang-switcher:focus-within .rd-lang-trigger span.arrow{transform:rotate(180deg)}.rd-lang-menu{position:absolute;top:100%;right:0;min-width:180px;background:var(--paper);border:1px solid var(--ink);z-index:60;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s,transform .15s,visibility 0s linear .15s}.rd-lang-switcher:hover .rd-lang-menu,.rd-lang-switcher:focus-within .rd-lang-menu{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .15s,transform .15s,visibility 0s linear 0s}.rd-lang-menu a{display:block;padding:10px 16px;font-family:var(--font-mono);font-size:12px;color:var(--ink-2);border-bottom:1px solid var(--rule);text-decoration:none}.rd-lang-menu a:last-child{border-bottom:0}.rd-lang-menu a:hover{background:var(--paper-2);color:var(--ink)}.rd-lang-menu a.is-current{color:var(--ink)}.rd-lang-menu a.is-current:before{content:"";display:inline-block;width:6px;height:6px;background:var(--signal);margin-right:8px;vertical-align:middle}.rd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--row-h);padding:0 18px;font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--ink);background:var(--ink);color:var(--paper);cursor:pointer;transition:background .12s,transform .08s;font-weight:500;text-decoration:none}.rd-btn:hover{background:var(--ink-2);color:var(--paper);border-bottom:1px solid var(--ink)}.rd-btn:active{transform:translateY(1px)}.rd-btn-signal{background:var(--signal);color:var(--ink);border-color:var(--ink)}.rd-btn-signal:hover{background:var(--signal-2);color:var(--ink)}.rd-btn-ghost{background:transparent;color:var(--ink)}.rd-btn-ghost:hover{background:var(--paper-2);color:var(--ink)}.rd-btn-block{width:100%}.rd-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--rule-2);padding:3px 8px;font-family:var(--font-mono);font-size:11px;color:var(--ink-2);background:var(--paper);white-space:nowrap}.rd-chip-strong{border-color:var(--ink);color:var(--ink)}.rd-chip-signal{background:var(--signal);border-color:var(--ink);color:var(--ink)}.rd-section{border-top:1px solid var(--rule);padding:48px 32px;position:relative}.rd-section-tight{padding:28px 32px}.rd-section-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;border-bottom:1px solid var(--rule);padding-bottom:10px}main{max-width:1100px;margin:0 auto;padding:32px 24px 64px}.rd-footer{border-top:1px solid var(--rule);background:var(--paper-2);padding:32px;font-family:var(--font-mono);font-size:11px;color:var(--ink-3);margin-top:auto}.rd-footer a{color:var(--ink-2);border-bottom:1px solid var(--rule-2)}.rd-footer a:hover{color:var(--ink);border-bottom-color:var(--ink)}.rd-pin{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rule-2);padding:4px 10px;font-family:var(--font-mono);font-size:11px;color:var(--ink-2);background:var(--paper)}.rd-pin .dot{width:6px;height:6px;background:var(--signal)}.rd-marker{position:absolute;width:12px;height:12px;border:1px solid var(--ink)}.rd-marker-tl{top:8px;left:8px;border-right:0;border-bottom:0}.rd-marker-tr{top:8px;right:8px;border-left:0;border-bottom:0}.rd-marker-bl{bottom:8px;left:8px;border-right:0;border-top:0}.rd-marker-br{bottom:8px;right:8px;border-left:0;border-top:0}.rd-grid-bg{background-image:linear-gradient(to right,var(--rule) 1px,transparent 1px),linear-gradient(to bottom,var(--rule) 1px,transparent 1px);background-size:40px 40px}.rd-spec{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:var(--fs-mono);display:table}.rd-spec tr{border-bottom:1px dashed var(--rule)}.rd-spec td{padding:8px 0;vertical-align:top}.rd-spec td:first-child{color:var(--ink-3);width:38%;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.rd-spec td:last-child{color:var(--ink);text-align:right}.hero{text-align:left;padding:32px 0 48px;border-bottom:1px solid var(--rule);margin-bottom:32px}.hero h1{font-size:var(--fs-3xl);margin:0 0 12px;letter-spacing:-.02em}.hero p{font-size:var(--fs-lg);color:var(--ink-2);max-width:720px;margin:0}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:0;list-style:none;margin:0 0 32px}.product-grid li{background:var(--paper);border:1px solid var(--rule);padding:16px;margin:0;transition:border-color .12s,transform .12s}.product-grid li:hover{border-color:var(--ink);transform:translateY(-2px)}.product-grid a{display:block;font-family:var(--font-sans);font-weight:500;font-size:var(--fs-body);line-height:1.3;color:var(--ink);border-bottom:0;margin-bottom:6px}.product-grid a:hover{color:var(--signal);border-bottom:0}.product-grid .product-status{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--ink-3);letter-spacing:.02em}.product-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 24px;font-family:var(--font-mono);font-size:var(--fs-mono-sm)}.product-meta .badge{display:inline-flex;align-items:center;background:var(--ink);color:var(--paper);font-size:var(--fs-mono-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;padding:3px 7px;border:1px solid var(--ink)}.product-meta .badge.discontinued{background:var(--paper);color:var(--ink-2);border-color:var(--rule-2)}.product-image{margin:12px 0 24px;background:var(--paper-2);border:1px solid var(--rule);padding:20px;text-align:center;position:relative}.product-image:before,.product-image:after{content:"";position:absolute;width:12px;height:12px;border:1px solid var(--ink)}.product-image:before{top:6px;left:6px;border-right:0;border-bottom:0}.product-image:after{bottom:6px;right:6px;border-left:0;border-top:0}.product-image img{max-width:100%;max-height:480px;height:auto}.product-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin:12px 0 24px}.product-gallery a{display:block;background:var(--paper-2);border:1px solid var(--rule);padding:8px;border-bottom:1px solid var(--rule);transition:border-color .12s}.product-gallery a:hover{border-color:var(--ink)}.product-gallery img{width:100%;height:160px;object-fit:contain;background:#fff}article p img,article li img{display:block;max-width:100%;max-height:480px;height:auto;margin:.75rem auto;border:1px solid var(--rule);background:var(--paper-2);padding:8px}.guide-figure{margin:1.5rem 0;padding:16px;background:var(--paper-2);border:1px solid var(--rule);position:relative}.guide-figure svg{display:block;width:100%;max-width:100%;height:auto}.guide-figure figcaption{margin-top:12px;font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--ink-3);text-align:center;line-height:1.5}.guide-figure-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.guide-figure-row img{width:100%;max-height:240px;object-fit:contain;margin:0;background:#fff;border:1px solid var(--rule);padding:8px;box-sizing:border-box}.tutorial-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:8px 0 24px;font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--ink-3)}.difficulty{display:inline-block;padding:3px 7px;font-family:var(--font-mono);font-size:var(--fs-mono-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--paper);border:1px solid var(--ink)}.difficulty-beginner{background:var(--ok)}.difficulty-intermediate{background:var(--warn);color:var(--ink)}.difficulty-advanced{background:var(--signal);color:var(--ink)}.bom-aside{background:var(--paper-2);border:1px solid var(--rule);border-left:4px solid var(--signal);padding:16px 20px;margin:1.5rem 0;font-family:var(--font-mono);font-size:var(--fs-mono)}.bom-aside h2{font-family:var(--font-sans);font-size:var(--fs-xl);border-bottom:0;padding-bottom:0}.bom-aside ul{margin:0;padding-left:1.2rem}aside{background:var(--paper-2);border:1px solid var(--rule);padding:16px 20px;margin:1.5rem 0}aside h2{margin-top:0;font-size:var(--fs-xl);border-bottom:0;padding-bottom:0}@media print{.rd-header,.rd-footer{display:none}main{max-width:none;padding:0}a{color:inherit;border:none}}@media(max-width:700px){.rd-nav-item{padding:0 12px;font-size:11px}.rd-header-logo{padding:0 12px;font-size:13px}.rd-icon-btn,.rd-lang-trigger{padding:0 12px}.rd-header{height:48px}main{padding:20px 16px 48px}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}.hero h1{font-size:var(--fs-2xl)}.product-meta{font-size:var(--fs-mono-xs)}table{font-size:var(--fs-mono-sm)}}
