:root{--ink:#17283b;--muted:#596878;--blue:#1b55c9;--pale:#f2f5f9;--line:#dce3eb;--white:#fff;--radius:14px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--blue)}button{font:inherit}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #1b55c9;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5;letter-spacing:.015em}h2{font-size:1.65rem}h3{font-size:1.2rem}p{margin-bottom:1.2em}svg{vertical-align:middle;flex-shrink:0}.wrap{width:min(1120px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.header{border-bottom:1px solid var(--line)}.header-main{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px}.logo{text-decoration:none;font-size:1.8rem;font-weight:850;letter-spacing:-.055em;display:inline-flex;align-items:center;gap:11px;line-height:1.1}.logo .off{color:var(--blue)}.logo-mark{border:2px solid var(--blue);border-radius:20px;width:34px;height:21px;display:inline-flex;align-items:center;padding:3px}.logo-mark:before{content:"";width:11px;height:11px;background:var(--blue);border-radius:50%}.header-label{font-size:.875rem;color:var(--muted)}.header-about{font-size:.875rem;text-decoration:none}.nav{display:flex;gap:30px;padding:15px 0;font-size:.875rem;border-top:1px solid #edf0f4;flex-wrap:wrap}.nav a{text-decoration:none;font-weight:600}.nav a[aria-current=page]{color:var(--blue)}.mobile-menu{display:none}.eyebrow{font-size:.8rem;letter-spacing:.14em;font-weight:700;color:var(--blue);margin-bottom:16px}.hero{padding:70px 0 64px;display:grid;grid-template-columns:1.3fr 1fr;gap:60px;align-items:center}.hero h1{font-size:clamp(2.4rem,4vw,3.4rem);line-height:1.55;letter-spacing:.025em;margin-bottom:20px}.hero h1 span{color:var(--blue)}.hero p{color:var(--muted);max-width:35em}.button{display:inline-flex;gap:18px;align-items:center;justify-content:center;min-height:48px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:7px;padding:12px 23px;text-decoration:none;font-weight:600;font-size:.94rem}.button:hover{background:#12429e;color:white}.button.secondary{background:white;color:var(--blue)}.hero .button{margin-top:12px}.work-example{background:var(--pale);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 12px 32px #17283b08}.example-label{font-size:.8rem;font-weight:700;letter-spacing:.07em;color:var(--muted);margin:0 0 12px}.request{padding:18px;background:white;border:1px solid var(--line);border-radius:9px;font-size:.94rem}.formula-demo{background:var(--ink);border-radius:9px;color:white;padding:18px;margin-top:18px;overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:.9rem}.mini-table{width:100%;margin-top:16px;border-collapse:collapse;font-size:.875rem}.mini-table th,.mini-table td{padding:8px;text-align:left;border-bottom:1px solid var(--line)}.mini-table th{color:var(--muted);font-weight:500}.mini-table td:last-child{font-weight:600;color:#245a43}.section{padding:56px 0}.section-tint{background:var(--pale)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.section-head h2{margin:0}.section-head a{font-size:.875rem}.categories{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.category{text-decoration:none;border:1px solid var(--line);padding:22px 16px;background:white;border-radius:var(--radius);display:flex;flex-direction:column;gap:8px;transition:transform .15s,border-color .15s}.category:hover{border-color:var(--blue);transform:translateY(-3px)}.category svg{color:var(--blue);margin-bottom:10px}.category strong{font-size:1rem}.category small{color:var(--muted);font-size:.8rem}.start-card{border-left:4px solid var(--blue);padding:32px;background:white;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;box-shadow:0 5px 18px #17283b06}.start-number{font-size:2.8rem;font-weight:300;letter-spacing:-.08em;color:#a8b6ca}.start-card h3{margin:8px 0}.start-card p{color:var(--muted);margin:0;font-size:.94rem}.tag{display:inline-block;font-size:.75rem;line-height:1.5;letter-spacing:.02em;padding:5px 9px;background:#e8effc;color:#264e95;border-radius:4px;font-weight:600}.article-card{display:grid;grid-template-columns:310px 1fr;gap:30px;align-items:center;border:1px solid var(--line);border-radius:var(--radius);padding:20px;text-decoration:none}.article-cover{background:#eaf0fb;border-radius:8px;min-height:190px;padding:27px;display:flex;flex-direction:column;justify-content:space-between}.article-cover .cover-label{font-size:.8rem;letter-spacing:.1em;color:var(--blue);font-weight:700}.article-cover strong{font-size:1.5rem;line-height:1.5}.cover-formula{font-family:ui-monospace,monospace;font-size:1rem;color:#40628f}.article-card h3{font-size:1.45rem;margin:12px 0}.article-card p{color:var(--muted);font-size:.94rem}.meta{color:var(--muted);font-size:.8rem}.new-row{display:flex;gap:24px;align-items:center;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.new-row h3{margin:0;flex:1;font-size:1.05rem}.new-row a{text-decoration:none}.empty-tool{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px dashed #b9c7d8;padding:25px;border-radius:10px}.empty-tool p{margin:0;color:var(--muted);font-size:.94rem}.footer{background:#122338;color:#e8eef5;padding:50px 0 24px;margin-top:40px}.footer .logo .off{color:#8caefe}.footer-top{display:grid;grid-template-columns:1fr 1.4fr;gap:50px}.footer p{font-size:.875rem;color:#bcc8d6;margin:20px 0}.footer-links{display:flex;gap:12px 28px;flex-wrap:wrap;align-content:start}.footer-links a{font-size:.875rem;text-decoration:none}.footer-bottom{border-top:1px solid #344358;margin-top:35px;padding-top:20px;font-size:.75rem;color:#bcc8d6}.breadcrumbs{display:flex;gap:10px;list-style:none;flex-wrap:wrap;font-size:.8rem;color:var(--muted);padding:20px 0;margin:0}.breadcrumbs li+li:before{content:"/";padding-right:10px;color:#8d98a4}.breadcrumbs a{text-decoration:none}.page-heading{padding:30px 0 38px}.page-heading h1{font-size:2.4rem;margin-bottom:16px}.page-heading p{color:var(--muted);max-width:44em}.category-index{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.empty{padding:36px;border:1px solid var(--line);border-radius:var(--radius);background:var(--pale)}.empty p{color:var(--muted)}.content-grid{display:grid;grid-template-columns:minmax(0,760px) 260px;gap:60px}.article-heading h1{font-size:2.15rem;margin:16px 0 18px}.article-heading{padding:16px 0 28px}.verification{padding:18px 20px;border:1px solid #cfdae9;border-left:4px solid #67819f;border-radius:5px;background:#f5f7fa;font-size:.875rem;margin:24px 0}.verification p{margin:4px 0}.prose{font-size:1rem;line-height:1.95;min-width:0}.prose h2{font-size:1.5rem;margin:56px 0 22px;padding-bottom:12px;border-bottom:2px solid var(--line)}.prose h3{font-size:1.15rem;margin:30px 0 16px}.prose a{color:var(--blue)}.prose ul,.prose ol{padding-left:1.5em}.prose li{margin:8px 0}.prose code{font-family:ui-monospace,SFMono-Regular,monospace;background:#eef2f7;padding:3px 5px;border-radius:4px;font-size:.9em;overflow-wrap:anywhere}.code-wrap{position:relative;margin:24px 0}.prose pre{padding:56px 20px 20px;background:#122338;color:#edf3ff;border-radius:9px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.prose pre code{padding:0;background:none;color:inherit}.copy-button{position:absolute;right:12px;top:12px;background:#273d58;color:white;border:1px solid #61718a;border-radius:4px;font-size:.8rem;padding:5px 12px;cursor:pointer}.table-scroll{overflow-x:auto;margin:24px 0}.prose table{border-collapse:collapse;width:100%;font-size:.94rem;min-width:360px}.prose th{background:#edf2f8;text-align:left}.prose td,.prose th{padding:12px;border-bottom:1px solid var(--line)}.prose blockquote{margin:24px 0;padding:18px 24px;border-left:4px solid var(--blue);background:#f1f5fc}.prose blockquote p:last-child{margin-bottom:0}.toc{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:24px;margin:24px 0 36px}.toc h2{border:0;margin:0 0 12px;padding:0;font-size:1rem}.toc ol{padding-left:1.4em;margin:0}.toc a{font-size:.94rem;text-decoration:none}.aside{padding-top:25px}.aside-inner{position:sticky;top:24px;border-top:3px solid var(--ink);padding-top:20px}.aside h2{font-size:1rem}.aside a{display:block;border-bottom:1px solid var(--line);padding:12px 0;font-size:.875rem;text-decoration:none}.aside p{font-size:.875rem;color:var(--muted)}.page-prose{max-width:780px;margin-bottom:70px}.related{margin-top:48px;padding:28px;background:var(--pale)}.related h2{margin-top:0}.notice{font-size:.8rem;padding:8px 0;color:var(--muted);border-bottom:1px solid var(--line)}.inline-notice{padding:20px;background:var(--pale);border-radius:8px}.tool-card{padding:24px;border:1px solid var(--line);border-radius:10px}.tool-card h3{margin-top:12px}.tool-card p{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(max-width:850px){.wrap{width:calc(100% - 40px)}.hero{gap:30px;grid-template-columns:1.15fr 1fr}.hero h1{font-size:2.35rem}.header-label{display:none}.categories{grid-template-columns:repeat(3,1fr)}.content-grid{grid-template-columns:1fr;gap:15px}.aside{display:none}.article-card{grid-template-columns:240px 1fr}.start-card{grid-template-columns:auto 1fr}.start-card .button{grid-column:2}.footer-top{gap:30px}.category-index{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.header-main{min-height:74px}.logo{font-size:1.55rem}.header-about{display:none}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{font-size:.875rem;cursor:pointer;padding:10px}.mobile-menu[open] .nav{position:absolute;left:0;right:0;top:74px;background:white;padding:20px;z-index:10;box-shadow:0 10px 18px #17283b18;display:grid;grid-template-columns:1fr 1fr;gap:20px}.hero{padding:40px 0;grid-template-columns:1fr;gap:32px}.hero h1{font-size:2.3rem;line-height:1.55}.hero p{font-size:.94rem}.hero .button{width:100%;margin-top:6px}.work-example{padding:22px}.section{padding:36px 0}.section-head{margin-bottom:20px;align-items:baseline}.section-head h2{font-size:1.35rem}.categories{grid-template-columns:repeat(2,1fr);gap:10px}.category{padding:18px 14px}.category:last-child{grid-column:1/-1;display:grid;grid-template-columns:30px 1fr;gap:0 12px}.category:last-child svg{grid-row:span 2;margin:auto}.start-card{padding:24px;grid-template-columns:1fr;gap:10px}.start-number{display:none}.start-card .button{grid-column:auto;margin-top:12px}.article-card{grid-template-columns:1fr;gap:20px;padding:16px}.article-cover{min-height:176px}.article-card h3{font-size:1.25rem}.new-row{gap:12px;flex-wrap:wrap}.new-row h3{flex-basis:100%}.new-row>svg{display:none}.empty-tool{align-items:flex-start;flex-direction:column}.footer{margin-top:25px}.footer-top{grid-template-columns:1fr;gap:20px}.footer-links{gap:16px 24px}.article-heading h1{font-size:1.75rem}.page-heading h1{font-size:1.9rem}.prose h2{font-size:1.3rem;margin-top:40px}.toc{padding:20px}.category-index{grid-template-columns:1fr}.empty{padding:24px}.breadcrumbs{font-size:.75rem}.verification{padding:14px}.prose pre{font-size:.875rem}.page-heading{padding-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.category{transition:none}}
.content-grid>article,.hero>div{min-width:0}.article-heading h1,.prose{overflow-wrap:anywhere}.mobile-menu summary{white-space:nowrap}.mobile-menu{flex-shrink:0}@media(max-width:360px){.header-main{gap:8px}.logo{font-size:1.3rem;gap:8px}.logo-mark{width:30px;height:20px}.mobile-menu summary{padding:8px 0}.hero h1{font-size:2rem}}
