:root{color-scheme:light dark;--bg:#fbfcfb;--bg-subtle:#f2f6f3;--surface:#fff;--border:#dfe8e2;--text:#1a2620;--text-muted:#5c6d64;--accent:#17845a;--accent-hover:#126b49;--accent-soft:#e6f3ec;--on-accent:#fff;--grid-line:#17845a17;--c-diff:#ff0;--c-diff-mark:#ff0;--c-extra:#ff8080;--c-moved:#87ceeb;--c-tab-same:#6ee7e7;--paper:#fff;--paper-line:#d8dfda;--paper-head:#eef2ef;--paper-ink:#21302a;--radius:12px;--radius-sm:8px;--container:1060px;--shadow:0 1px 2px #1020180d, 0 10px 30px #10201814;--font:system-ui, -apple-system, "Segoe UI", "Hiragino Sans", "Noto Sans JP", Meiryo, sans-serif;--mono:ui-monospace, "Cascadia Code", "SFMono-Regular", Consolas, monospace}@media (prefers-color-scheme:dark){:root{--bg:#0f1513;--bg-subtle:#141c18;--surface:#17211b;--border:#263229;--text:#e8efe9;--text-muted:#9eb1a5;--accent:#3cc487;--accent-hover:#58d29b;--accent-soft:#16281f;--on-accent:#07130c;--grid-line:#60c89614;--c-diff-mark:#d9d900;--shadow:0 1px 2px #0006, 0 10px 30px #00000059}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-underline-offset:.18em;line-height:1.8}img,svg,video{max-width:100%;height:auto;display:block}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:.01em;text-wrap:balance;font-weight:800;line-height:1.4}code,pre{font-family:var(--mono)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(1rem,4vw,2rem)}.section{padding-block:clamp(3rem,7vw,5rem)}.section--subtle{background:var(--bg-subtle);border-block:1px solid var(--border)}.section-head{align-items:baseline;gap:.7rem;margin-bottom:.5rem;display:flex}.section-head:before{content:"";border:2px solid var(--accent);background:var(--accent-soft);border-radius:3px;flex:none;align-self:center;width:14px;height:14px}.section-title{font-size:clamp(1.35rem,3vw,1.7rem)}.section-desc{color:var(--text-muted);max-width:52ch;margin-bottom:2rem}.eyebrow{font-family:var(--mono);letter-spacing:.1em;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 25%, transparent);border-radius:999px;padding:.28rem .75rem;font-size:.82rem;font-weight:700;display:inline-block}.lead{color:var(--text-muted);font-size:1.08rem}.btn{border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;gap:.5rem;padding:.72rem 1.4rem;font-size:1rem;font-weight:700;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{color:var(--text);border-color:var(--border);background:0 0}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn-invert{color:#14563c;background:#fff}.btn-invert:hover{background:#eef7f2}.card-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.4rem 1.5rem}.card h3{margin-bottom:.4rem;font-size:1.1rem}.card p{color:var(--text-muted);font-size:.96rem}.page-hero{background:var(--bg-subtle);border-bottom:1px solid var(--border);position:relative;overflow:hidden}.page-hero:before{content:"";background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);pointer-events:none;background-size:26px 26px;position:absolute;inset:0;mask-image:linear-gradient(#000 0%,#0000 100%)}.page-hero-inner{padding-block:clamp(2rem,5vw,3.2rem);position:relative}.page-hero .eyebrow{margin-bottom:.9rem}.page-hero h1{font-size:clamp(1.7rem,4vw,2.4rem)}.page-hero .lead{max-width:56ch;margin-top:.7rem}.breadcrumb{color:var(--text-muted);flex-wrap:wrap;gap:.35rem .5rem;margin-bottom:1rem;font-size:.82rem;display:flex}.breadcrumb a{color:var(--text-muted)}.breadcrumb a:hover{color:var(--accent)}.breadcrumb .sep{opacity:.5}.breadcrumb [aria-current]{color:var(--text)}.prose{max-width:72ch}.prose>*+*{margin-top:1.05rem}.prose h2{align-items:center;gap:.6rem;margin-top:2.6rem;padding-top:.3rem;font-size:1.3rem;display:flex}.prose h2:before{content:"";border:2px solid var(--accent);background:var(--accent-soft);border-radius:3px;flex:none;width:12px;height:12px}.prose h3{margin-top:1.8rem;font-size:1.08rem}.prose ul,.prose ol{color:var(--text-muted);padding-left:1.35rem}.prose li+li{margin-top:.35rem}.prose strong{color:var(--text)}.prose p{color:var(--text-muted)}.prose a{text-decoration:underline}.prose code{background:var(--bg-subtle);border:1px solid var(--border);border-radius:4px;padding:.05rem .35rem;font-size:.9em}.prose pre{background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.85rem 1.1rem;font-size:.87rem;line-height:1.65;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;border:none;padding:0}.table-scroll{overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:.9rem;line-height:1.6}.prose th,.prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:.45rem .7rem}.prose th{background:var(--bg-subtle);font-size:.86rem}.prose td{color:var(--text-muted)}.prose td code{white-space:nowrap}.wip{background:var(--accent-soft);border:1px dashed color-mix(in srgb, var(--accent) 45%, transparent);border-radius:var(--radius-sm);color:var(--text-muted);align-items:flex-start;gap:.7rem;padding:.85rem 1.1rem;font-size:.92rem;display:flex}.wip:before{content:"✎";color:var(--accent);flex:none;font-weight:700}.wip strong{color:var(--accent)}.faq-item{border-top:1px solid var(--border);padding-block:1.1rem}.faq-item:last-child{border-bottom:1px solid var(--border)}.faq-item h3{gap:.55rem;font-size:1.02rem;display:flex}.faq-item h3:before{content:"Q.";color:var(--accent);font-weight:800}.faq-item p{color:var(--text-muted);margin-top:.4rem;padding-left:1.35rem}.skip-link[data-astro-cid-hkbrpulz]{background:var(--accent);color:var(--on-accent);z-index:10;padding:.5rem 1rem;position:absolute;top:0;left:-999px}.skip-link[data-astro-cid-hkbrpulz]:focus{left:0}.site-header[data-astro-cid-hkbrpulz]{z-index:5;background:color-mix(in srgb, var(--bg) 90%, transparent);backdrop-filter:saturate(1.4)blur(8px);border-bottom:1px solid var(--border);position:sticky;top:0}.header-inner[data-astro-cid-hkbrpulz]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;min-height:60px;padding-block:.4rem;display:flex}.brand[data-astro-cid-hkbrpulz]{color:var(--text);align-items:center;gap:.55rem;font-weight:800;display:inline-flex}.brand[data-astro-cid-hkbrpulz]:hover{text-decoration:none}.brand-mark[data-astro-cid-hkbrpulz]{background:var(--accent);width:30px;height:30px;color:var(--on-accent);background-image:linear-gradient(#ffffff40 1px,#0000 1px),linear-gradient(90deg,#ffffff40 1px,#0000 1px);background-size:10px 10px;border-radius:7px;place-items:center;font-size:.95rem;font-weight:700;display:grid}.brand-name[data-astro-cid-hkbrpulz]{letter-spacing:.02em;font-size:1.15rem}.site-nav[data-astro-cid-hkbrpulz]{flex-wrap:wrap;gap:.25rem 1.05rem;display:flex}.nav-link[data-astro-cid-hkbrpulz]{color:var(--text-muted);border-bottom:2px solid #0000;padding:.3rem .1rem;font-size:.93rem;font-weight:500}.nav-link[data-astro-cid-hkbrpulz]:hover{color:var(--text);text-decoration:none}.nav-link[data-astro-cid-hkbrpulz].active{color:var(--accent);border-bottom-color:var(--accent);font-weight:700}.site-footer[data-astro-cid-hkbrpulz]{border-top:1px solid var(--border);background:var(--bg-subtle);margin-top:4rem;padding-block:2rem}.footer-inner[data-astro-cid-hkbrpulz]{flex-direction:column;gap:.8rem;display:flex}.footer-nav[data-astro-cid-hkbrpulz]{flex-wrap:wrap;gap:.5rem 1.25rem;display:flex}.footer-nav[data-astro-cid-hkbrpulz] a[data-astro-cid-hkbrpulz]{color:var(--text-muted);font-size:.9rem}.copyright[data-astro-cid-hkbrpulz]{color:var(--text-muted);font-size:.85rem}
