.site-header[data-astro-cid-pux6a34n]{border-bottom:1px solid var(--border-color);background:var(--bg-body);position:sticky;top:0;z-index:100}.site-header__inner[data-astro-cid-pux6a34n]{max-width:1100px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between}.brand[data-astro-cid-pux6a34n]{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-icon[data-astro-cid-pux6a34n]{color:var(--accent-primary)}.brand-name[data-astro-cid-pux6a34n]{font-size:20px;font-weight:700;color:var(--text-primary)}.site-nav[data-astro-cid-pux6a34n]{display:flex;gap:24px}.site-nav__link[data-astro-cid-pux6a34n]{color:var(--text-secondary);font-size:var(--text-sm);font-weight:500;text-decoration:none;transition:color .2s}.site-nav__link[data-astro-cid-pux6a34n]:hover,.site-nav__link[data-astro-cid-pux6a34n].is-active{color:var(--accent-primary)}.hamburger[data-astro-cid-pux6a34n]{display:none;background:none;border:none;cursor:pointer;padding:4px}.hamburger[data-astro-cid-pux6a34n] span[data-astro-cid-pux6a34n]{display:block;width:20px;height:2px;background:var(--text-primary);margin:4px 0;transition:.3s}.theme-toggle[data-astro-cid-pux6a34n]{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);padding:6px;cursor:pointer;display:flex;align-items:center;transition:var(--transition)}.theme-toggle[data-astro-cid-pux6a34n]:hover{color:var(--accent-primary);border-color:var(--accent-primary)}@media(max-width:768px){.hamburger[data-astro-cid-pux6a34n]{display:block}.site-nav[data-astro-cid-pux6a34n]{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-panel);flex-direction:column;padding:16px 20px;border-bottom:1px solid var(--border-color)}.site-nav[data-astro-cid-pux6a34n].is-open{display:flex}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border-color);padding:40px 20px;margin-top:60px}.site-footer__inner[data-astro-cid-sz7xmlte]{max-width:1100px;margin:0 auto;text-align:center}.site-footer__links[data-astro-cid-sz7xmlte]{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:20px}.site-footer__links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--text-secondary);font-size:var(--text-sm);text-decoration:none}.site-footer__links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent-primary)}.site-footer__copy[data-astro-cid-sz7xmlte]{color:var(--text-tertiary);font-size:var(--text-xs);margin:0}:root{--bg-body: #ffffff;--bg-panel: #f8f8f8;--bg-input: #ffffff;--border-color: #e4e4e7;--border-hover: #d4d4d8;--text-primary: #18181b;--text-secondary: #52525b;--text-tertiary: #71717a;--accent-primary: #6366f1;--accent-hover: #4f46e5;--accent-glow: rgba(99, 102, 241, .15);--accent-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--danger: #ef4444;--success: #10b981;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-glow: 0 0 10px rgba(99, 102, 241, .1);--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--font-main: "Inter", "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;--transition: all .2s cubic-bezier(.16, 1, .3, 1);--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .9375rem;--text-lg: 1.125rem;--text-xl: 1.5rem}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-body: #030303;--bg-panel: #0a0a0a;--bg-input: #000000;--border-color: #27272a;--border-hover: #3f3f46;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--accent-primary: #818cf8;--accent-hover: #a5b4fc;--accent-glow: rgba(129, 140, 248, .15);--accent-gradient: linear-gradient(135deg, #818cf8 0%, #a78bfa 100%);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-glow: 0 0 10px rgba(129, 140, 248, .15)}}[data-theme=dark]{--bg-body: #030303;--bg-panel: #0a0a0a;--bg-input: #000000;--border-color: #27272a;--border-hover: #3f3f46;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--accent-primary: #818cf8;--accent-hover: #a5b4fc;--accent-glow: rgba(129, 140, 248, .15);--accent-gradient: linear-gradient(135deg, #818cf8 0%, #a78bfa 100%);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5);--shadow-glow: 0 0 10px rgba(129, 140, 248, .15)}*{box-sizing:border-box}html,body{height:100%;background:var(--bg-body);color:var(--text-primary);margin:0;font-family:var(--font-main);-webkit-font-smoothing:antialiased;line-height:1.6;letter-spacing:-.01em;position:relative}a{color:var(--accent-primary);text-decoration:none;transition:var(--transition)}a:hover{color:var(--accent-hover)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px}.container{max-width:1100px;margin:0 auto;padding:20px;display:flex;flex-direction:column;gap:32px}.hidden{display:none!important}.error-msg{color:var(--danger);font-size:12px;margin-top:6px;display:none}.error-msg.show{display:block}.toast-container{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{background:var(--bg-panel);border:1px solid var(--border-color);color:var(--text-primary);padding:12px 20px;border-radius:var(--radius-sm);font-size:14px;box-shadow:var(--shadow-lg);opacity:0;transform:translateY(20px);transition:all .3s cubic-bezier(.4,0,.2,1);pointer-events:auto;max-width:90vw;text-align:center}.toast.show{opacity:1;transform:translateY(0)}.toast.success{border-color:var(--success);background:#3fb9501a}.toast.error{border-color:var(--danger);background:#f851491a}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.skip-link{position:absolute;top:-100%;left:0;background:var(--accent-primary);color:#fff;padding:12px 24px;z-index:10001;font-weight:600;border-radius:0 0 var(--radius-sm) var(--radius-sm);transition:top .15s}.skip-link:focus{top:0}@media(max-width:900px){.container{padding:24px 16px}}@media(max-width:640px){.container{padding:16px 12px;gap:20px}.toast-container{bottom:80px;left:12px;right:12px;transform:none;max-width:none}.toast{font-size:13px;padding:10px 16px}}
