:root{--color-bg: #ffffff;--color-bg-secondary: #f8f9fa;--color-text: #1a1a2e;--color-text-secondary: #4a4a68;--color-accent: #5558e3;--color-accent-hover: #4338ca;--color-accent-secondary: var(--color-accent);--color-border: #e2e8f0;--color-card-bg: #ffffff;--color-card-bg-secondary: #f8f9fa;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--max-width: 1200px;--content-width: 960px}@media(prefers-color-scheme:dark){:root{--color-bg: #0f0f1a;--color-bg-secondary: #1a1a2e;--color-text: #f0f0f5;--color-text-secondary: #d4d4ff;--color-accent-secondary: #818cf8;--color-border: #2a2a40;--color-card-bg: #1a1a2e;--color-card-bg-secondary: #0f0f1a;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .4)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:sans-serif;background-color:var(--color-bg);color:var(--color-text);line-height:1.7;min-height:100vh;display:flex;flex-direction:column}main{flex:1}.container{max-width:var(--max-width);margin:0 auto;padding:0 2rem}.content-container{max-width:var(--content-width);margin:0 auto;padding:0 2rem}h1,h2,h3,h4,h5,h6{line-height:1.3;font-weight:600;color:var(--color-text)}h1{font-size:2.5rem;margin-bottom:1.5rem}h2{font-size:1.875rem;margin-bottom:1.25rem}h3{font-size:1.5rem;margin-bottom:1rem}p{margin-bottom:1.25rem;color:var(--color-text-secondary)}a{color:var(--color-accent);text-decoration:none;transition:color .2s ease;&:hover{color:var(--color-accent-hover);text-decoration:underline}}.btn{display:inline-block;padding:.875rem 1.75rem;background-color:var(--color-accent);color:#fff;font-weight:500;border-radius:8px;transition:background-color .2s ease;&:hover{background-color:var(--color-accent-hover);color:#fff;text-decoration:none}}.btn-secondary{background-color:transparent;color:var(--color-accent-secondary);border:1px solid var(--color-accent-secondary);&:hover{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.page-header{padding:2rem 0;border-bottom:1px solid var(--color-border);margin-bottom:2rem;h1{margin-bottom:.5rem}}.page-content{padding-bottom:4rem}.page-content,.article-content{h2{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border);&:first-child{margin-top:0;padding-top:0;border-top:none}}h3{margin-top:2rem}ul,ol{margin-bottom:1.25rem;padding-left:1.5rem}li{margin-bottom:.5rem;color:var(--color-text-secondary)}blockquote{margin:1.5rem 0;padding:1.25rem 1.5rem;background-color:var(--color-bg-secondary);border-left:4px solid var(--color-accent);border-radius:0 8px 8px 0;p{margin-bottom:0;font-size:.95rem}p:last-child{margin-bottom:0}}strong{color:var(--color-text)}code{background-color:var(--color-bg-secondary);padding:.2rem .4rem;border-radius:4px;font-size:.9em}.footnotes{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border);font-size:.9rem;ol{padding-left:1.25rem}}}@media(max-width:900px){h1{font-size:2rem}h2{font-size:1.5rem}}@media(max-width:600px){.container,.content-container{padding:0 1.25rem}}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}.site-footer[data-astro-cid-sz7xmlte]{background-color:var(--color-bg-secondary);border-top:1px solid var(--color-border);padding:3rem 2rem;margin-top:auto}.footer-inner[data-astro-cid-sz7xmlte]{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-links[data-astro-cid-sz7xmlte]{display:flex;gap:2rem;a{color:var(--color-text-secondary);font-size:.9rem;&:hover{color:var(--color-accent)}}}.footer-copy[data-astro-cid-sz7xmlte]{color:var(--color-text-secondary);font-size:.875rem}@media(max-width:600px){.footer-inner[data-astro-cid-sz7xmlte]{flex-direction:column;gap:1rem;text-align:center}.footer-links[data-astro-cid-sz7xmlte]{flex-direction:column;flex-wrap:wrap;justify-content:center;gap:1rem}.footer-copy[data-astro-cid-sz7xmlte]{padding-top:1rem;width:100%;border-top:1px solid var(--color-border)}}.site-header[data-astro-cid-3ef6ksr2]{background-color:var(--color-bg);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.header-inner[data-astro-cid-3ef6ksr2]{max-width:var(--max-width);margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.logo[data-astro-cid-3ef6ksr2]{font-size:1.5rem;font-weight:700;color:var(--color-text);text-decoration:none}.logo[data-astro-cid-3ef6ksr2]:hover{color:var(--color-accent);text-decoration:none}.main-nav[data-astro-cid-3ef6ksr2] ul[data-astro-cid-3ef6ksr2]{display:flex;gap:2rem;list-style:none;text-align:center}.main-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{color:var(--color-text-secondary);font-weight:500;font-size:.95rem;transition:color .2s ease}.main-nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--color-accent);text-decoration:none}.hamburger[data-astro-cid-3ef6ksr2]{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem;z-index:101}.hamburger-line[data-astro-cid-3ef6ksr2]{display:block;width:24px;height:2px;background-color:var(--color-text);transition:transform .3s ease,opacity .3s ease}.hamburger[data-astro-cid-3ef6ksr2].open .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger[data-astro-cid-3ef6ksr2].open .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(2){opacity:0}.hamburger[data-astro-cid-3ef6ksr2].open .hamburger-line[data-astro-cid-3ef6ksr2]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:720px){.hamburger[data-astro-cid-3ef6ksr2]{display:flex}.main-nav[data-astro-cid-3ef6ksr2]{position:absolute;top:100%;left:0;right:0;background-color:var(--color-bg);border-bottom:1px solid var(--color-border);padding:1rem 2rem;display:none;transform:scaleY(0);transform-origin:top;transition:transform .3s ease-in-out;&.opening{display:block}&.open{transform:scaleY(1)}ul{flex-direction:column;gap:1rem;align-items:center}}}
