:root{color-scheme:light;--ink:oklch(22% .035 55);--ink-soft:oklch(43% .028 55);--paper:oklch(98% .018 88);--paper-deep:oklch(94% .025 88);--surface:oklch(100% 0 0);--line:oklch(81% .03 77);--accent:oklch(62% .2 36);--accent-dark:oklch(49% .17 34);--accent-soft:oklch(93% .055 42);--signal:oklch(82% .19 125);--signal-dark:oklch(38% .09 125);--danger:oklch(54% .2 27);--danger-soft:oklch(95% .045 25);--focus:oklch(53% .19 250);--shadow:0 1px 0 oklch(25% .03 55/.1), 0 16px 40px oklch(25% .03 55/.08);--radius-sm:.5rem;--radius-md:.875rem;--radius-lg:1.5rem;--content:76rem;--reading:68ch;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-9:2.25rem;--space-12:3rem;--space-18:4.5rem;--font-sans:"LINE Seed JP", "Yu Gothic UI", "Hiragino Kaku Gothic ProN", system-ui, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Consolas, monospace}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:20rem;color:var(--ink);font-family:var(--font-sans);text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.65}button,input,select{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-underline-offset:.2em}img,svg,canvas{max-width:100%;display:block}button{color:inherit}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{background:var(--signal);color:var(--ink)}.skip-link{z-index:100;background:var(--ink);color:var(--surface);border-radius:var(--radius-sm);padding:.75rem 1rem;position:fixed;inset-block-start:.75rem;inset-inline-start:-100%}.skip-link:focus{inset-inline-start:.75rem}.shell{width:min(calc(100% - 2rem), var(--content));margin-inline:auto}.reading{max-width:var(--reading)}.eyebrow{margin:0 0 var(--space-3);font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;font-size:.78rem;font-weight:700}.site-header{border-block-end:1px solid var(--line);background:color-mix(in oklch, var(--paper) 92%, transparent)}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.brand{letter-spacing:-.03em;align-items:center;gap:.65rem;font-weight:900;text-decoration:none;display:inline-flex}.brand-mark{grid-template-columns:repeat(3,.55rem);gap:.18rem;display:grid}.brand-mark i{aspect-ratio:1;border:2px solid var(--ink);background:var(--surface);width:.55rem}.brand-mark i:nth-child(2){background:var(--accent)}.brand-mark i:nth-child(3){background:var(--signal)}.site-nav{flex-wrap:wrap;gap:.25rem;display:flex}.site-nav a{border-radius:var(--radius-sm);padding:.55rem .75rem;font-size:.9rem;font-weight:700;text-decoration:none}.site-nav a:hover{background:var(--paper-deep)}.hero{padding-block:clamp(3rem,8vw,7.5rem) clamp(3rem,6vw,5rem);overflow:hidden}.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);align-items:center;gap:clamp(2.25rem,7vw,7rem);display:grid}.hero h1{letter-spacing:-.065em;max-width:12ch;margin:0;font-size:clamp(2.65rem,7vw,3.75rem);line-height:.98}.hero h1 em{color:var(--accent);font-style:normal}.hero-copy{max-width:35rem;color:var(--ink-soft);margin:1.5rem 0 0;font-size:clamp(1.05rem,2vw,1.3rem)}.hero-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-block-start:2rem;display:flex}.button{border:2px solid var(--ink);background:var(--surface);min-height:3rem;color:var(--ink);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.button-primary{background:var(--accent);color:#fff;border-color:var(--accent-dark)}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.55;transform:none}.frame-stage{place-items:center;min-height:26rem;display:grid;position:relative}.frame-stack{aspect-ratio:4/3;width:min(100%,25rem);position:relative}.frame{border:3px solid var(--ink);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow);position:absolute;inset:0}.frame:first-child{background:var(--signal);transform:translate(-2.4rem,2rem)rotate(-6deg)}.frame:nth-child(2){background:var(--accent-soft);transform:translate(1.8rem,-1.25rem)rotate(4deg)}.frame:nth-child(3){place-items:center;padding:2rem;display:grid}.frame-art{aspect-ratio:1;width:58%;height:auto}.frame-label{font-family:var(--font-mono);font-size:.78rem;font-weight:700;position:absolute;inset-block-end:1rem;inset-inline-start:1rem}.privacy-strip{background:var(--signal);border-block:2px solid var(--ink);align-items:center;gap:.65rem;padding:.85rem 1rem;font-weight:800;display:flex}.privacy-strip svg{flex:none}.section{padding-block:clamp(3.5rem,8vw,7rem)}.section-heading{grid-template-columns:.75fr 1.25fr;align-items:end;gap:2rem;margin-block-end:2.25rem;display:grid}.section-heading h2{letter-spacing:-.05em;text-wrap:balance;max-width:18ch;margin:0;font-size:clamp(1.9rem,3.5vw,3rem);line-height:1.05}.section-heading p{max-width:38rem;color:var(--ink-soft);margin:0}.tool-list{border-block-start:2px solid var(--ink)}.tool-link{border-block-end:1px solid var(--line);grid-template-columns:4.5rem 1fr auto;align-items:center;gap:1.5rem;padding-block:1.5rem;text-decoration:none;display:grid}.tool-link:hover{background:var(--surface);padding-inline:1rem}.tool-no{font-family:var(--font-mono);color:var(--ink-soft);font-size:.85rem}.tool-link h3{margin:0;font-size:clamp(1.25rem,2.5vw,1.8rem);line-height:1.2}.tool-link p{color:var(--ink-soft);margin:.25rem 0 0}.tool-arrow{aspect-ratio:1;border:2px solid var(--ink);border-radius:50%;place-items:center;width:2.75rem;font-size:1.35rem;display:grid}.steps{border:2px solid var(--ink);background:var(--ink);grid-template-columns:repeat(3,1fr);gap:2px;display:grid}.step{background:var(--surface);min-height:14rem;padding:1.5rem}.step strong{font-family:var(--font-mono);color:var(--accent-dark);margin-block-end:3.5rem;display:block}.step h3{margin:0 0 .5rem;font-size:1.3rem}.step p{color:var(--ink-soft);margin:0}.faq-list{max-width:52rem;margin-inline-start:auto}details{border-block-start:1px solid var(--line)}details:last-child{border-block-end:1px solid var(--line)}summary{cursor:pointer;padding-block:1.25rem;font-weight:800}details p{color:var(--ink-soft);max-width:60ch;margin:0 0 1.5rem}.page-hero{border-block-end:1px solid var(--line);padding-block:3rem 2rem}.breadcrumbs{color:var(--ink-soft);margin-block-end:2rem;font-size:.88rem}.breadcrumbs ol{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";margin-inline-end:.5rem}.page-hero h1{letter-spacing:-.06em;max-width:15ch;margin:0;font-size:clamp(2.4rem,6vw,3.75rem);line-height:1}.page-hero .lead{max-width:43rem;color:var(--ink-soft);margin:1.25rem 0 0;font-size:1.15rem}.info-grid{grid-template-columns:1fr 1fr;gap:3rem;display:grid}.info-grid h2{margin-top:0}.site-footer{border-block-start:2px solid var(--ink);padding-block:3rem}.footer-inner{justify-content:space-between;align-items:start;gap:2rem;display:flex}.footer-links{flex-wrap:wrap;gap:1rem;display:flex}.muted{color:var(--ink-soft)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=52rem){.header-inner{align-items:flex-start;padding-block:1rem}.site-nav{display:none}.hero-grid,.section-heading,.info-grid{grid-template-columns:1fr}.hero-grid{gap:3rem}.frame-stage{min-height:20rem}.frame-stack{width:min(76vw,22rem)}.steps{grid-template-columns:1fr}.step{min-height:auto}.step strong{margin-block-end:2rem}}@media (width<=36rem){input,select,textarea{font-size:1rem}.shell{width:min(calc(100% - 1.25rem), var(--content))}.tool-link{grid-template-columns:2.5rem 1fr;gap:.75rem}.tool-arrow{display:none}.footer-inner{flex-direction:column}.hero-actions .button{width:100%}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}.button,.tool-link{transition:transform .16s ease-out,background-color .16s ease-out,padding .16s ease-out}.frame:first-child{animation:.55s cubic-bezier(.2,.8,.2,1) both settle-one}.frame:nth-child(2){animation:.65s cubic-bezier(.2,.8,.2,1) 40ms both settle-two}.frame:nth-child(3){animation:.7s cubic-bezier(.2,.8,.2,1) 80ms both settle-three}}@keyframes settle-one{0%{opacity:0;transform:translate(-4rem,4rem)rotate(-12deg)scale(.94)}to{opacity:1;transform:translate(-2.4rem,2rem)rotate(-6deg)}}@keyframes settle-two{0%{opacity:0;transform:translate(4rem,-3rem)rotate(10deg)scale(.94)}to{opacity:1;transform:translate(1.8rem,-1.25rem)rotate(4deg)}}@keyframes settle-three{0%{opacity:0;transform:translateY(2rem)scale(.94)}to{opacity:1;transform:none}}@media (forced-colors:active){.button,.frame,.steps{border-color:canvastext}}
