.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}.cookie-consent[data-astro-cid-garwan2p][hidden]{display:none}.cookie-consent[data-astro-cid-garwan2p]{position:fixed;z-index:2147483646;left:0;right:0;bottom:0;display:flex;justify-content:stretch;align-items:flex-end;padding:0;margin:0}.cookie-consent-inner[data-astro-cid-garwan2p]{position:relative;width:100%;max-width:none;margin:0;padding:.55rem max(.75rem,env(safe-area-inset-right)) max(1rem,calc(env(safe-area-inset-bottom,0px) + .5rem)) max(.75rem,env(safe-area-inset-left));border-radius:10px 10px 0 0;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);box-shadow:var(--card-shadow-hover, 0 8px 32px rgba(0, 0, 0, .35))}.cookie-consent-title[data-astro-cid-garwan2p]{margin:0 0 .2rem;font-size:.75rem;font-weight:600;line-height:1.25}.cookie-consent-desc[data-astro-cid-garwan2p]{margin:0 0 .45rem;font-size:.6875rem;color:var(--muted);line-height:1.32}.cookie-consent-desc[data-astro-cid-garwan2p] a[data-astro-cid-garwan2p]{color:var(--accent)}.cookie-consent-actions[data-astro-cid-garwan2p]{display:flex;flex-wrap:wrap;gap:.3rem;justify-content:flex-end}.cookie-btn[data-astro-cid-garwan2p]{font:inherit;font-size:.6875rem;font-weight:600;padding:.28rem .55rem;border-radius:6px;cursor:pointer;border:1px solid var(--chip-border);background:var(--chip-bg);color:var(--chip-text)}.cookie-btn-primary[data-astro-cid-garwan2p]{border-color:var(--chip-active-border);background:var(--chip-active-bg);color:var(--chip-active-text)}.cookie-btn-secondary[data-astro-cid-garwan2p]:hover,.cookie-btn-primary[data-astro-cid-garwan2p]:hover{border-color:var(--chip-border-hover)}@media(min-width:768px){.cookie-consent[data-astro-cid-garwan2p]{justify-content:flex-end;align-items:flex-end;padding:.75rem max(1rem,env(safe-area-inset-right)) 0 max(1rem,env(safe-area-inset-left));margin-bottom:.85rem}.cookie-consent-inner[data-astro-cid-garwan2p]{width:auto;max-width:19rem;margin-bottom:0;padding:.6rem .75rem max(.85rem,calc(env(safe-area-inset-bottom,0px) + .45rem));border-radius:10px}.cookie-consent-title[data-astro-cid-garwan2p]{font-size:.8125rem}.cookie-consent-desc[data-astro-cid-garwan2p]{font-size:.72rem;margin-bottom:.55rem}.cookie-consent-actions[data-astro-cid-garwan2p]{gap:.35rem}.cookie-btn[data-astro-cid-garwan2p]{font-size:.72rem;padding:.3rem .65rem}}[data-theme=dark]{--bg: #0c0d10;--bg-elevated: #14161c;--border: #252830;--text: #e8eaef;--muted: #8b919d;--accent: #c084fc;--accent-dim: #a855f7;--chip-bg: #16161e;--chip-border: #3b3b4f;--chip-border-hover: #524d6a;--chip-text: #d1d5dc;--chip-active-bg: color-mix(in srgb, var(--accent) 14%, transparent);--chip-active-border: #a855f7;--chip-active-text: #ede9fe;--danger: #f87171;--card-shadow-hover: 0 8px 32px rgba(0, 0, 0, .35);--body-gradient-a: rgba(192, 132, 252, .14);--body-gradient-b: rgba(90, 110, 220, .07)}[data-theme=light]{--bg: #f0f2f5;--bg-elevated: #ffffff;--border: #d8dde6;--text: #14161c;--muted: #5c6473;--accent: #7c3aed;--accent-dim: #6d28d9;--chip-bg: #ffffff;--chip-border: #cfd6e8;--chip-border-hover: #a89fd4;--chip-text: #3f4554;--chip-active-bg: color-mix(in srgb, var(--accent) 10%, transparent);--chip-active-border: var(--accent);--chip-active-text: #5b21b6;--danger: #dc2626;--card-shadow-hover: 0 8px 28px rgba(20, 22, 28, .08);--body-gradient-a: rgba(124, 58, 237, .1);--body-gradient-b: rgba(80, 100, 200, .05)}:root{--radius: 12px;--font: "DM Sans", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font);font-size:16px;line-height:1.5;color:var(--text);background:var(--bg);background-image:radial-gradient(ellipse 120% 80% at 50% -30%,var(--body-gradient-a),transparent),radial-gradient(ellipse 60% 40% at 100% 0%,var(--body-gradient-b),transparent);transition:background-color .2s ease,color .2s ease}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}code{font-family:var(--mono);font-size:.9em}
