.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:200;background-color:var(--bg-primary);border-bottom:1px solid var(--border-subtle);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.header-container[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;height:4.25rem;gap:var(--space-4)}.brand-logo[data-astro-cid-3ef6ksr2]{font-family:var(--font-editorial);font-size:var(--text-xl);font-weight:800;text-decoration:none;letter-spacing:-.03em;color:var(--text-primary);display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-1);border-radius:var(--radius-sm)}.logo-prefix[data-astro-cid-3ef6ksr2]{color:var(--text-primary)}.logo-dot[data-astro-cid-3ef6ksr2]{color:var(--accent)}.logo-suffix[data-astro-cid-3ef6ksr2]{color:var(--text-muted);font-weight:500}.desktop-nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center}.nav-list[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;list-style:none;padding:0;margin:0;gap:var(--space-1)}.nav-item[data-astro-cid-3ef6ksr2]{position:relative}.nav-link[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:var(--space-1);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);text-decoration:none;padding:var(--space-2) var(--space-3);min-height:44px;border-radius:var(--radius-md);transition:color var(--transition-fast),background-color var(--transition-fast);border:none;background:transparent;cursor:pointer}.nav-link[data-astro-cid-3ef6ksr2]:hover{color:var(--accent);background-color:var(--bg-tertiary)}.nav-link[data-astro-cid-3ef6ksr2].active{color:var(--accent);font-weight:600;background-color:var(--accent-subtle)}.header-actions[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:var(--space-2)}.theme-toggle-btn[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;border-radius:var(--radius-md);background-color:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:0}.theme-toggle-btn[data-astro-cid-3ef6ksr2]:hover{color:var(--accent);border-color:var(--accent)}:root .sun-icon[data-astro-cid-3ef6ksr2]{display:block}:root .moon-icon[data-astro-cid-3ef6ksr2]{display:none}:root[data-theme=dark] .sun-icon[data-astro-cid-3ef6ksr2]{display:none}:root[data-theme=dark] .moon-icon[data-astro-cid-3ef6ksr2]{display:block}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .sun-icon[data-astro-cid-3ef6ksr2]{display:none}:root:not([data-theme=light]) .moon-icon[data-astro-cid-3ef6ksr2]{display:block}}.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:none;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;background-color:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;padding:0;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.mobile-menu-btn[data-astro-cid-3ef6ksr2]:hover{border-color:var(--accent)}.hamburger-box[data-astro-cid-3ef6ksr2]{display:flex;flex-direction:column;justify-content:space-between;width:20px;height:14px;position:relative}.hamburger-line[data-astro-cid-3ef6ksr2]{display:block;width:100%;height:2px;background-color:currentColor;border-radius:2px;transition:transform .2s ease,opacity .2s ease}.mobile-menu-btn[data-astro-cid-3ef6ksr2][aria-expanded=true] .top[data-astro-cid-3ef6ksr2]{transform:translateY(6px) rotate(45deg)}.mobile-menu-btn[data-astro-cid-3ef6ksr2][aria-expanded=true] .mid[data-astro-cid-3ef6ksr2]{opacity:0}.mobile-menu-btn[data-astro-cid-3ef6ksr2][aria-expanded=true] .bot[data-astro-cid-3ef6ksr2]{transform:translateY(-6px) rotate(-45deg)}.mobile-nav-backdrop[data-astro-cid-3ef6ksr2]{display:none;position:fixed;top:4.25rem;left:0;right:0;bottom:0;background-color:#00000073;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:180;opacity:0;transition:opacity .22s ease}.mobile-nav-drawer[data-astro-cid-3ef6ksr2]{display:none;position:fixed;top:4.25rem;left:0;right:0;max-height:calc(100vh - 4.25rem);overflow-y:auto;background-color:var(--bg-primary);border-bottom:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);z-index:190;transform:translateY(-10px);opacity:0;transition:transform .22s ease,opacity .22s ease;padding:var(--space-4) 0 var(--space-6)}.mobile-nav-backdrop[data-astro-cid-3ef6ksr2].open{display:block;opacity:1}.mobile-nav-drawer[data-astro-cid-3ef6ksr2].open{display:block;transform:translateY(0);opacity:1}.mobile-nav-inner[data-astro-cid-3ef6ksr2]{width:100%;max-width:var(--max-width-container);margin:0 auto;padding:0 var(--space-4)}.mobile-nav-list[data-astro-cid-3ef6ksr2]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-1)}.mobile-nav-link[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);font-weight:500;color:var(--text-primary);text-decoration:none;border-radius:var(--radius-md);background-color:transparent;transition:background-color var(--transition-fast),color var(--transition-fast)}.mobile-nav-link[data-astro-cid-3ef6ksr2]:hover,.mobile-nav-link[data-astro-cid-3ef6ksr2]:focus{background-color:var(--bg-tertiary);color:var(--accent)}.mobile-nav-link[data-astro-cid-3ef6ksr2].active{color:var(--accent);font-weight:600;background-color:var(--accent-subtle)}.active-dot[data-astro-cid-3ef6ksr2]{width:8px;height:8px;border-radius:var(--radius-full);background-color:var(--accent)}@media(max-width:860px){.desktop-nav[data-astro-cid-3ef6ksr2]{display:none}.mobile-menu-btn[data-astro-cid-3ef6ksr2]{display:inline-flex}}@media(min-width:861px){.mobile-nav-backdrop[data-astro-cid-3ef6ksr2],.mobile-nav-drawer[data-astro-cid-3ef6ksr2]{display:none!important}}.site-footer[data-astro-cid-sz7xmlte]{border-top:1px solid var(--border-subtle);background-color:var(--bg-secondary);padding:var(--space-12) 0 var(--space-8) 0;margin-top:var(--space-16);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.footer-container[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-8)}.footer-primary[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-8)}.footer-brand[data-astro-cid-sz7xmlte]{max-width:320px}.brand-title[data-astro-cid-sz7xmlte]{font-family:var(--font-editorial);font-size:var(--text-lg);font-weight:700;color:var(--text-primary);display:block;margin-bottom:var(--space-2)}.brand-role[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--accent-text);margin:0 0 var(--space-2)}.brand-desc[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:var(--text-muted);line-height:1.5;margin:0}.footer-disclaimer[data-astro-cid-sz7xmlte]{padding:var(--space-4) 0;border-top:1px solid var(--border-subtle)}.footer-disclaimer[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);color:var(--text-muted);line-height:1.6;margin:0;font-style:italic}.footer-nav[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;gap:var(--space-12)}.nav-column[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;gap:var(--space-3)}.column-title[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--text-primary)}.nav-column[data-astro-cid-sz7xmlte] ul[data-astro-cid-sz7xmlte]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.nav-column[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:var(--text-sm);color:var(--text-secondary);text-decoration:none;transition:color var(--transition-fast)}.nav-column[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}.footer-bottom[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--border-subtle)}.copyright[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);color:var(--text-muted);margin:0}.legal-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{font-size:var(--text-xs);color:var(--text-muted);text-decoration:none}.legal-links[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent);text-decoration:underline}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/jetbrains-mono.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/outfit.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light dark;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-editorial: "Outfit", var(--font-sans);--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--text-xs: clamp(.75rem, .72rem + .15vw, .8125rem);--text-sm: clamp(.84rem, .8rem + .2vw, .875rem);--text-base: clamp(1rem, .96rem + .2vw, 1.0625rem);--text-lg: clamp(1.125rem, 1.05rem + .35vw, 1.25rem);--text-xl: clamp(1.25rem, 1.15rem + .5vw, 1.45rem);--text-2xl: clamp(1.5rem, 1.35rem + .75vw, 1.85rem);--text-3xl: clamp(1.85rem, 1.6rem + 1.2vw, 2.35rem);--text-4xl: clamp(2.25rem, 1.9rem + 1.7vw, 2.95rem);--text-5xl: clamp(2.75rem, 2.3rem + 2.2vw, 3.75rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--space-16: 4rem;--space-24: 6rem;--max-width-content: 72ch;--max-width-container: 1180px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--transition-fast: .16s cubic-bezier(.16, 1, .3, 1);--transition-normal: .25s cubic-bezier(.16, 1, .3, 1);--bg-primary-light: #ffffff;--bg-secondary-light: #f8fafc;--bg-tertiary-light: #f1f5f9;--bg-card-light: #ffffff;--border-subtle-light: #e2e8f0;--border-strong-light: #cbd5e1;--text-primary-light: #090d16;--text-secondary-light: #334155;--text-muted-light: #64748b;--accent-light: #0284c7;--accent-hover-light: #0369a1;--accent-subtle-light: #e0f2fe;--accent-text-light: #075985;--success-text-light: #047857;--btn-primary-bg-light: #0369a1;--btn-primary-bg-hover-light: #075985;--btn-primary-text-light: #ffffff;--accent-secondary-light: #4f46e5;--accent-secondary-hover-light: #4338ca;--accent-secondary-subtle-light: #eef2ff;--badge-bg-light: #f1f5f9;--badge-text-light: #0f172a;--shadow-sm-light: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md-light: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .04);--shadow-lg-light: 0 10px 15px -3px rgba(0, 0, 0, .07), 0 4px 6px -4px rgba(0, 0, 0, .03);--bg-primary-dark: #07090e;--bg-secondary-dark: #0d121d;--bg-tertiary-dark: #141c2e;--bg-card-dark: #0e1524;--border-subtle-dark: #1e293b;--border-strong-dark: #334155;--text-primary-dark: #f8fafc;--text-secondary-dark: #cbd5e1;--text-muted-dark: #94a3b8;--accent-dark: #38bdf8;--accent-hover-dark: #7dd3fc;--accent-subtle-dark: rgba(56, 189, 248, .12);--accent-text-dark: #38bdf8;--success-text-dark: #10b981;--btn-primary-bg-dark: #38bdf8;--btn-primary-bg-hover-dark: #7dd3fc;--btn-primary-text-dark: #07090e;--accent-secondary-dark: #818cf8;--accent-secondary-hover-dark: #a5b4fc;--accent-secondary-subtle-dark: rgba(129, 140, 248, .14);--badge-bg-dark: #1e293b;--badge-text-dark: #f8fafc;--shadow-sm-dark: 0 1px 2px 0 rgba(0, 0, 0, .4);--shadow-md-dark: 0 4px 6px -1px rgba(0, 0, 0, .45);--shadow-lg-dark: 0 10px 15px -3px rgba(0, 0, 0, .55);--bg-primary: var(--bg-primary-light);--bg-secondary: var(--bg-secondary-light);--bg-tertiary: var(--bg-tertiary-light);--bg-card: var(--bg-card-light);--border-subtle: var(--border-subtle-light);--border-strong: var(--border-strong-light);--text-primary: var(--text-primary-light);--text-secondary: var(--text-secondary-light);--text-muted: var(--text-muted-light);--accent: var(--accent-light);--accent-hover: var(--accent-hover-light);--accent-subtle: var(--accent-subtle-light);--accent-text: var(--accent-text-light);--success-text: var(--success-text-light);--btn-primary-bg: var(--btn-primary-bg-light);--btn-primary-bg-hover: var(--btn-primary-bg-hover-light);--btn-primary-text: var(--btn-primary-text-light);--accent-secondary: var(--accent-secondary-light);--accent-secondary-hover: var(--accent-secondary-hover-light);--accent-secondary-subtle: var(--accent-secondary-subtle-light);--badge-bg: var(--badge-bg-light);--badge-text: var(--badge-text-light);--shadow-sm: var(--shadow-sm-light);--shadow-md: var(--shadow-md-light);--shadow-lg: var(--shadow-lg-light)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-primary: var(--bg-primary-dark);--bg-secondary: var(--bg-secondary-dark);--bg-tertiary: var(--bg-tertiary-dark);--bg-card: var(--bg-card-dark);--border-subtle: var(--border-subtle-dark);--border-strong: var(--border-strong-dark);--text-primary: var(--text-primary-dark);--text-secondary: var(--text-secondary-dark);--text-muted: var(--text-muted-dark);--accent: var(--accent-dark);--accent-hover: var(--accent-hover-dark);--accent-subtle: var(--accent-subtle-dark);--accent-text: var(--accent-text-dark);--success-text: var(--success-text-dark);--btn-primary-bg: var(--btn-primary-bg-dark);--btn-primary-bg-hover: var(--btn-primary-bg-hover-dark);--btn-primary-text: var(--btn-primary-text-dark);--accent-secondary: var(--accent-secondary-dark);--accent-secondary-hover: var(--accent-secondary-hover-dark);--accent-secondary-subtle: var(--accent-secondary-subtle-dark);--badge-bg: var(--badge-bg-dark);--badge-text: var(--badge-text-dark);--shadow-sm: var(--shadow-sm-dark);--shadow-md: var(--shadow-md-dark);--shadow-lg: var(--shadow-lg-dark)}}:root[data-theme=dark]{--bg-primary: var(--bg-primary-dark);--bg-secondary: var(--bg-secondary-dark);--bg-tertiary: var(--bg-tertiary-dark);--bg-card: var(--bg-card-dark);--border-subtle: var(--border-subtle-dark);--border-strong: var(--border-strong-dark);--text-primary: var(--text-primary-dark);--text-secondary: var(--text-secondary-dark);--text-muted: var(--text-muted-dark);--accent: var(--accent-dark);--accent-hover: var(--accent-hover-dark);--accent-subtle: var(--accent-subtle-dark);--accent-text: var(--accent-text-dark);--success-text: var(--success-text-dark);--btn-primary-bg: var(--btn-primary-bg-dark);--btn-primary-bg-hover: var(--btn-primary-bg-hover-dark);--btn-primary-text: var(--btn-primary-text-dark);--accent-secondary: var(--accent-secondary-dark);--accent-secondary-hover: var(--accent-secondary-hover-dark);--accent-secondary-subtle: var(--accent-secondary-subtle-dark);--badge-bg: var(--badge-bg-dark);--badge-text: var(--badge-text-dark);--shadow-sm: var(--shadow-sm-dark);--shadow-md: var(--shadow-md-dark);--shadow-lg: var(--shadow-lg-dark)}:root[data-theme=light]{--bg-primary: var(--bg-primary-light);--bg-secondary: var(--bg-secondary-light);--bg-tertiary: var(--bg-tertiary-light);--bg-card: var(--bg-card-light);--border-subtle: var(--border-subtle-light);--border-strong: var(--border-strong-light);--text-primary: var(--text-primary-light);--text-secondary: var(--text-secondary-light);--text-muted: var(--text-muted-light);--accent: var(--accent-light);--accent-hover: var(--accent-hover-light);--accent-subtle: var(--accent-subtle-light);--accent-text: var(--accent-text-light);--success-text: var(--success-text-light);--btn-primary-bg: var(--btn-primary-bg-light);--btn-primary-bg-hover: var(--btn-primary-bg-hover-light);--btn-primary-text: var(--btn-primary-text-light);--accent-secondary: var(--accent-secondary-light);--accent-secondary-hover: var(--accent-secondary-hover-light);--accent-secondary-subtle: var(--accent-secondary-subtle-light);--badge-bg: var(--badge-bg-light);--badge-text: var(--badge-text-light);--shadow-sm: var(--shadow-sm-light);--shadow-md: var(--shadow-md-light);--shadow-lg: var(--shadow-lg-light)}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:1.65;color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-editorial);color:var(--text-primary);font-weight:700;line-height:1.25;letter-spacing:-.025em;margin-top:0}h1{font-size:clamp(2rem,5vw,3rem);line-height:1.15;margin-bottom:var(--space-4)}h2{font-size:clamp(1.5rem,3.5vw,2rem);margin-top:var(--space-8);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle)}h3{font-size:clamp(1.25rem,2.5vw,1.5rem);margin-top:var(--space-6);margin-bottom:var(--space-2)}h4{font-size:var(--text-lg);margin-top:var(--space-4);margin-bottom:var(--space-2)}p{margin-top:0;margin-bottom:var(--space-4);color:var(--text-secondary)}strong,b{font-weight:600;color:var(--text-primary)}a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;transition:color var(--transition-fast)}a:hover{color:var(--accent-hover)}pre{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.6;padding:var(--space-4);border-radius:var(--radius-md);background-color:#121620!important;border:1px solid var(--border-subtle);overflow-x:auto;margin:var(--space-6) 0;position:relative}code{font-family:var(--font-mono);font-size:.9em;padding:.2em .4em;border-radius:var(--radius-sm);background-color:var(--bg-tertiary);color:var(--accent)}pre code{background-color:transparent;padding:0;color:inherit;font-size:inherit}.callout{padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);margin:var(--space-6) 0;border-left:4px solid var(--accent);background-color:var(--bg-secondary)}.callout.callout-warning{border-left-color:#f59e0b;background-color:#f59e0b14}.callout.callout-decision{border-left-color:#10b981;background-color:#10b98114}.callout-title{font-family:var(--font-editorial);font-weight:600;font-size:var(--text-base);color:var(--text-primary);margin-bottom:var(--space-1)}ul,ol{padding-left:var(--space-6);margin-top:0;margin-bottom:var(--space-4);color:var(--text-secondary)}li{margin-bottom:var(--space-2)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}.skip-link{position:absolute;top:-100px;left:var(--space-4);background-color:var(--accent);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);z-index:1000;text-decoration:none;font-weight:600;font-size:var(--text-sm);transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-4);outline:2px solid #ffffff}.container{width:100%;max-width:var(--max-width-container);margin-left:auto;margin-right:auto;padding-left:var(--space-4);padding-right:var(--space-4)}.content-container{width:100%;max-width:var(--max-width-content);margin-left:auto;margin-right:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;min-width:44px;padding:var(--space-2) var(--space-5, 1.25rem);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;text-decoration:none;cursor:pointer;transition:transform var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);border:1px solid transparent}.btn:active{transform:translateY(1px)}.btn-primary{background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg);box-shadow:0 1px 3px #0000001a}.btn-primary:hover{background-color:var(--btn-primary-bg-hover);color:var(--btn-primary-text);border-color:var(--btn-primary-bg-hover);text-decoration:none;box-shadow:0 2px 6px #0284c740}.btn-secondary{background-color:var(--bg-card);color:var(--text-primary);border-color:var(--border-strong)}.btn-secondary:hover{background-color:var(--bg-tertiary);color:var(--text-primary);border-color:var(--accent);text-decoration:none}.card{background-color:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-lg);padding:var(--space-6);transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);position:relative}.card:hover{border-color:var(--accent);transform:translateY(-2.5px);box-shadow:var(--shadow-md)}.card-featured{border-left:3px solid var(--accent)}.card-project,.card-article{display:flex;flex-direction:column;height:100%}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.25rem .65rem;border-radius:var(--radius-full);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;background-color:var(--badge-bg);color:var(--badge-text);border:1px solid var(--border-subtle);text-decoration:none;line-height:1.2}.badge-secondary{background-color:var(--accent-secondary-subtle);color:var(--accent-secondary);border-color:transparent}.badge:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.grid-responsive-300{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--space-6)}.grid-responsive-360{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:var(--space-6)}.grid-responsive-260{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--space-6)}.tech-subtle-bg{background-color:var(--bg-primary);background-image:radial-gradient(ellipse 80% 50% at 50% -20%,var(--accent-subtle) 0%,transparent 70%),linear-gradient(to right,var(--border-subtle) 1px,transparent 1px),linear-gradient(to bottom,var(--border-subtle) 1px,transparent 1px);background-size:100% 100%,40px 40px,40px 40px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.card:hover,.btn:active{transform:none!important}}
