@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Noto+Sans+JP:wght@400;500;700&display=swap";*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;width:100%;touch-action:manipulation}:root{--background: #ffffff;--surface: #f6f8fa;--elevated: #eaeef2;--text-main: #1f2328;--text-muted: #656d76;--border-color: #d0d7de;--accent-blue: #0e7490;--accent-rev: #22d3ee;--accent-secondary: #2563eb;--code-bg: #f6f8fa;--code-text: #cf222e;--spec-label: #0e7490;--text-yellow-custom: #9a6700;--category-title: #0e7490;--badge-bg: #eaeef2;--badge-text: #656d76;--brand-zenn: #3ea8ff;--brand-note: #41c9b4;--brand-qiita: #55c500;--radius: 4px;--max-width: 1100px;--max-width-narrow: 900px;--ease-out: cubic-bezier(.22, 1, .36, 1);--shadow-offset: 5px 5px 0 var(--accent-blue);--glass-bg: #ffffff;--glass-blur: none;--font-mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace;--font-sans: -apple-system, BlinkMacSystemFont, "游ゴシック", "Yu Gothic", YuGothic, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif}html.dark{--background: #0d1117;--surface: #161b22;--elevated: #21262d;--text-main: #e6edf3;--text-muted: #7d8590;--border-color: #30363d;--accent-blue: #22d3ee;--accent-rev: #0e7490;--accent-secondary: #60a5fa;--code-bg: #161b22;--code-text: #ff7b72;--spec-label: var(--accent-blue);--text-yellow-custom: #d29922;--category-title: var(--accent-blue);--badge-bg: #21262d;--badge-text: var(--text-muted);--glass-bg: #161b22;--glass-blur: none}html{background-color:var(--background);color:var(--text-main);font-family:var(--font-sans);line-height:1.6;transition:background-color .3s ease,color .3s ease;scroll-padding-top:80px;scrollbar-gutter:stable;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@supports not (scrollbar-gutter: stable){html{overflow-y:scroll}}main{max-width:var(--max-width);margin:0 auto;padding:3rem 1.5rem}h1,h2,h3,h4,h5{color:var(--text-main);line-height:1.3;margin-top:2.5rem;margin-bottom:1rem;font-weight:700;letter-spacing:0}h1{font-size:2.5rem;color:var(--accent-blue);display:inline-block}h2{margin-top:4rem;margin-bottom:1.5rem}h4{font-size:1.25rem}p{margin-bottom:1.5rem;color:var(--text-main)}strong,b{color:var(--text-main);font-weight:700}a{color:var(--accent-blue);text-decoration:underline;text-underline-offset:4px;transition:color .2s ease}a:hover{color:var(--accent-secondary)}img{max-width:100%;height:auto;border-radius:var(--radius)}code{font-family:var(--font-mono);background-color:var(--code-bg);color:var(--code-text);border:1px solid var(--border-color);padding:.2em .4em;border-radius:4px;font-size:.9em}pre{background-color:#1e293b;padding:1.5rem;border-radius:var(--radius);overflow-x:auto;border:1px solid rgba(255,255,255,.1)}pre>code{background:none;color:#f8fafc;padding:0;border:none}blockquote{border-left:4px solid var(--accent-blue);background:#0ea5e91a;margin:1.5rem 0;padding:1rem 1.5rem;border-radius:0 var(--radius) var(--radius) 0;color:var(--text-muted)}hr{border:none;border-top:1px solid var(--border-color);margin:3rem 0}@media(max-width:720px){main{padding:2rem 1rem}h1{font-size:2rem}}.spec-label{color:var(--spec-label);font-weight:800}.text-yellow,.text-yellow-small{color:var(--text-yellow-custom);font-weight:700}.category-title{color:var(--category-title)}.mission-title{font-weight:700}html:not(.dark) .mission-title{color:#1e293b}.coming-soon-badge{background:var(--badge-bg);color:var(--badge-text);border:1px solid var(--border-color)}.ui-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius)}.ui-card-hover,.ui-card-link{transition:border-color .18s ease,box-shadow .35s var(--ease-out)}@media(hover:hover){.ui-card-hover:hover,.ui-card-link:hover{border-color:var(--accent-blue)}.ui-card-link:hover{box-shadow:var(--shadow-offset)}}.ui-card-link:focus-visible{outline:2px solid var(--accent-blue);outline-offset:3px;border-color:var(--accent-blue)}[data-reveal]{opacity:0}[data-reveal].is-visible{opacity:1;animation:reveal-in .55s var(--ease-out) backwards;animation-delay:calc(var(--i, 0) * 40ms)}@keyframes reveal-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1}[data-reveal].is-visible{animation:none}.ui-card-link{transition:none}}html.theme-transitioning::view-transition-old(root),html.theme-transitioning::view-transition-new(root){animation:none;mix-blend-mode:normal}html.theme-transitioning::view-transition-old(root){z-index:1}html.theme-transitioning::view-transition-new(root){z-index:9999;animation:circle-reveal .5s ease-in-out}@keyframes circle-reveal{0%{clip-path:circle(0% at var(--tx, 50%) var(--ty, 50%))}to{clip-path:circle(150% at var(--tx, 50%) var(--ty, 50%))}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
