.pwa-installer[data-astro-cid-ysrg3uku]{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:var(--madfam-black, #212121);color:var(--madfam-white, #ffffff);padding:1.5rem;border-radius:.5rem;box-shadow:0 4px 20px var(--cutout-shadow-dark);z-index:1000;max-width:90vw;width:400px;animation:slideUp .3s ease-out}.pwa-installer__content[data-astro-cid-ysrg3uku] h3[data-astro-cid-ysrg3uku]{margin:0 0 .5rem;color:var(--madfam-yellow, #ffc107);font-size:1.25rem}.pwa-installer__content[data-astro-cid-ysrg3uku] p[data-astro-cid-ysrg3uku]{margin:0 0 1rem;opacity:.9}.pwa-installer__buttons[data-astro-cid-ysrg3uku]{display:flex;gap:1rem}.btn[data-astro-cid-ysrg3uku]{padding:.75rem 1.5rem;border:none;border-radius:.25rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;font-family:var(--font-primary, sans-serif)}.btn[data-astro-cid-ysrg3uku]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.btn--primary[data-astro-cid-ysrg3uku]{background:var(--madfam-yellow, #ffc107);color:var(--madfam-black, #212121)}.btn--secondary[data-astro-cid-ysrg3uku]{background:transparent;color:var(--madfam-white, #ffffff);border:1px solid var(--madfam-white, #ffffff)}@keyframes slideUp{0%{transform:translate(-50%) translateY(100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@media (max-width: 480px){.pwa-installer[data-astro-cid-ysrg3uku]{bottom:1rem;padding:1rem}.pwa-installer__buttons[data-astro-cid-ysrg3uku]{flex-direction:column}.btn[data-astro-cid-ysrg3uku]{width:100%}}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.pwa-standalone .nav-standalone{box-shadow:0 2px 10px #0000001a}:root{--bg-primary: #0a0a0b;--bg-secondary: #141416;--bg-tertiary: #1c1c1f;--bg-elevated: #242428;--madfam-yellow-dark: #ffc107;--madfam-green-dark: #66bb6a;--madfam-purple-dark: #9575cd;--madfam-blue-dark: #42a5f5;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .9);--text-tertiary: rgba(255, 255, 255, .7);--text-disabled: rgba(255, 255, 255, .5);--accent-primary: var(--madfam-yellow-dark);--accent-secondary: var(--madfam-green-dark);--accent-tertiary: var(--madfam-purple-dark);--hover-overlay: rgba(255, 255, 255, .08);--focus-overlay: rgba(255, 193, 7, .24);--active-overlay: rgba(255, 255, 255, .16);--border-subtle: rgba(255, 255, 255, .5);--border-default: rgba(255, 255, 255, .6);--border-strong: rgba(255, 255, 255, .8);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .8);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4), 0 2px 4px rgba(0, 0, 0, .6);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .5), 0 5px 10px rgba(0, 0, 0, .7);--shadow-glow: 0 0 20px rgba(255, 193, 7, .3);--link-default: #6bb6ff;--link-hover: #90caf9;--link-visited: #ba68c8;--success: #81c784;--warning: #ffb74d;--error: #e57373;--info: #64b5f6;--text-on-accent: #000000;--text-on-success: #000000;--text-on-warning: #000000;--text-on-error: #ffffff;--text-on-info: #000000;--text-inverse: #000000;--color-eco-green: #81c784;--color-solar-yellow: var( --madfam-yellow-light );--color-comedy-purple: #9575cd;--color-tech-blue: #64b5f6;--color-community-orange: #ff8a65;--paper-texture-opacity: .05;--torn-edge-color: rgba(255, 255, 255, .2);--nav-text: #ffffff;--button-primary-bg: var(--madfam-yellow-light);--button-primary-text: #000000;--shadow-overlay-dark: rgba(0, 0, 0, .24);--shadow-overlay-medium: rgba(0, 0, 0, .16);--shadow-overlay-strong: rgba(0, 0, 0, .2);--shadow-overlay-dark-mode: rgba(0, 0, 0, .5);--shadow-overlay-darkest: rgba(0, 0, 0, .8);--shadow-overlay-dark-medium: rgba(0, 0, 0, .4);--shadow-overlay-dark-strong: rgba(0, 0, 0, .6);--shadow-overlay-dark-stronger: rgba(0, 0, 0, .7);--cutout-shadow-dark: rgba(0, 0, 0, .3);--color-error: #f44336;--color-error-light: #ef5350;--color-error-dark: #d32f2f;--color-warning-light: #ffb74d;--sp-community-light: #ff8a65;--sp-community-dark: #e55100;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-xxl: 3rem;--font-primary: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "Space Mono", "Courier New", monospace;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease}*{box-sizing:border-box}*:focus{outline:none}*:focus-visible{outline:3px solid var(--madfam-yellow-dark);outline-offset:2px;border-radius:4px}html{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-height:100vh;background-color:var(--bg-primary)}::selection{background-color:var(--madfam-yellow-dark);color:var(--bg-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:0;background:var(--madfam-yellow-dark);color:var(--bg-primary);padding:var(--space-sm) var(--space-md);text-decoration:none;border-radius:0 0 .5rem;font-weight:600;z-index:10000;transition:top var(--transition-fast)}.skip-link:focus{top:0}.focus-trap{position:fixed;width:1px;height:1px;opacity:0;pointer-events:none}h1,h2,h3,h4,h5,h6{color:var(--text-primary);line-height:1.2;margin-top:0;margin-bottom:var(--space-md)}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.5rem,4vw,2.25rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}h4{font-size:clamp(1.125rem,2.5vw,1.5rem)}h5{font-size:clamp(1rem,2vw,1.25rem)}h6{font-size:1rem}p{margin-top:0;margin-bottom:var(--space-md);color:var(--text-secondary)}a{color:var(--link-default);text-decoration:none;transition:color var(--transition-fast);position:relative}a:hover{color:var(--link-hover)}a:visited{color:var(--link-visited)}a.nav-link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--madfam-yellow-dark);transition:width var(--transition-normal)}a.nav-link:hover:after,a.nav-link.active:after{width:100%}.btn{font-family:var(--font-primary);font-weight:500;font-size:1rem;padding:var(--space-sm) var(--space-lg);border-radius:.5rem;border:none;cursor:pointer;transition:all var(--transition-normal);position:relative;overflow:hidden;text-decoration:none;display:inline-flex;align-items:center;gap:var(--space-sm);line-height:1.5}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-primary{background-color:var(--madfam-yellow-dark);color:#000;font-weight:600}.btn-primary:hover{background-color:var(--madfam-yellow-light);box-shadow:var(--shadow-lg),var(--shadow-glow)}.btn-secondary{background-color:var(--madfam-green-dark);color:#fff;border:2px solid var(--madfam-green-dark)}.btn-secondary:hover{background-color:var(--madfam-green);border-color:var(--madfam-green);color:#fff}.btn-ghost{background-color:transparent;color:var(--text-secondary);border:none;padding:var(--space-xs) var(--space-sm)}.btn-ghost:hover{background-color:var(--hover-overlay);color:var(--text-primary)}.card{background-color:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:1rem;padding:var(--space-lg);transition:all var(--transition-normal)}.card:hover{background-color:var(--bg-elevated);border-color:var(--border-default);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-title{font-size:1.25rem;font-weight:600;margin-bottom:var(--space-md);color:var(--text-primary)}.card-content{color:var(--text-secondary)}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;color:var(--text-primary);font-weight:500;margin-bottom:var(--space-sm)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-sm) var(--space-md);background-color:var(--bg-elevated);border:2px solid var(--border-default);border-radius:.5rem;color:var(--text-primary);font-size:1rem;font-family:var(--font-primary);transition:all var(--transition-fast)}.form-input:hover,.form-textarea:hover,.form-select:hover{border-color:var(--border-strong)}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--madfam-yellow-dark);background-color:var(--bg-tertiary);box-shadow:0 0 0 3px var(--focus-overlay)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-disabled)}.form-label.required:after{content:" *";color:var(--error)}.form-input.error,.form-textarea.error{border-color:var(--error)}.form-error{color:var(--error);font-size:.875rem;margin-top:var(--space-xs)}.nav-main{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-subtle);backdrop-filter:blur(10px);position:sticky;top:0;z-index:1000}.nav-container{max-width:1400px;margin:0 auto;padding:var(--space-md) var(--space-lg);display:flex;align-items:center;justify-content:space-between}.nav-menu{display:flex;list-style:none;margin:0;padding:0;gap:var(--space-lg)}.nav-link{color:var(--text-secondary);padding:var(--space-sm) 0;transition:all var(--transition-fast);position:relative}.nav-link:hover,.nav-link.active{color:var(--text-primary)}.nav-dropdown{position:relative}.nav-dropdown-toggle{display:flex;align-items:center;gap:var(--space-xs);background:none;border:none;color:inherit;font:inherit;cursor:pointer;padding:var(--space-sm) 0}.nav-dropdown-toggle:after{content:"▼";font-size:.75em;transition:transform var(--transition-fast)}.nav-dropdown-toggle[aria-expanded=true]:after{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:100%;left:0;background-color:var(--bg-elevated);border:1px solid var(--border-default);border-radius:.5rem;padding:var(--space-sm) 0;min-width:200px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast)}.nav-dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown-menu a{display:block;padding:var(--space-sm) var(--space-lg);color:var(--text-secondary);transition:all var(--transition-fast)}.nav-dropdown-menu a:hover{background-color:var(--hover-overlay);color:var(--text-primary)}.nav-mobile-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:var(--space-sm)}.nav-mobile-toggle span{width:24px;height:2px;background-color:var(--text-primary);transition:all var(--transition-fast)}.nav-mobile-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-mobile-toggle.active span:nth-child(2){opacity:0}.nav-mobile-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.badge{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);font-size:.875rem;font-weight:500;border-radius:9999px;transition:all var(--transition-fast)}.badge-primary{background-color:var(--madfam-yellow-dark);color:var(--bg-primary)}.badge-secondary{background-color:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-default)}.badge-success{background-color:var(--success);color:var(--bg-primary)}.badge-warning{background-color:var(--warning);color:var(--bg-primary)}.badge-error{background-color:var(--error);color:var(--text-on-error, #ffffff)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-disabled{color:var(--text-disabled)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-1{margin-top:var(--space-xs)}.mt-2{margin-top:var(--space-sm)}.mt-3{margin-top:var(--space-md)}.mt-4{margin-top:var(--space-lg)}.mt-5{margin-top:var(--space-xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-xs)}.mb-2{margin-bottom:var(--space-sm)}.mb-3{margin-bottom:var(--space-md)}.mb-4{margin-bottom:var(--space-lg)}.mb-5{margin-bottom:var(--space-xl)}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-wrap{flex-wrap:wrap}.gap-1{gap:var(--space-xs)}.gap-2{gap:var(--space-sm)}.gap-3{gap:var(--space-md)}.gap-4{gap:var(--space-lg)}.grid{display:grid;gap:var(--space-lg)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.text-gradient{background:linear-gradient(135deg,var(--madfam-yellow-dark) 0%,var(--madfam-green-dark) 50%,var(--madfam-purple-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn .5s ease-out}.animate-fadeInUp{animation:fadeInUp .5s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@media (max-width: 768px){.nav-menu{position:fixed;top:0;right:-100%;width:80%;max-width:400px;height:100vh;background-color:var(--bg-secondary);flex-direction:column;padding:var(--space-xxl) var(--space-lg);transition:right var(--transition-normal);box-shadow:var(--shadow-lg);overflow-y:auto}.nav-menu.active{right:0}.nav-mobile-toggle{display:flex}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}.theme-toggle{background:none;border:2px solid var(--border-default);border-radius:9999px;padding:var(--space-sm);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;width:40px;height:40px}.theme-toggle:hover{border-color:var(--madfam-yellow-dark);background-color:var(--hover-overlay)}.theme-icon{font-size:1.25rem}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #eeeeee;--bg-elevated: #fafafa;--bg-inverse: #212121;--text-primary: #212121;--text-secondary: rgba(0, 0, 0, .87);--text-tertiary: rgba(0, 0, 0, .75);--text-disabled: rgba(0, 0, 0, .6);--text-inverse: #ffffff;--text-on-accent: #000000;--border-subtle: rgba(0, 0, 0, .38);--border-default: rgba(0, 0, 0, .42);--border-strong: rgba(0, 0, 0, .54);--surface-overlay: rgba(255, 255, 255, .95);--surface-scrim: rgba(0, 0, 0, .04);--hover-overlay: rgba(0, 0, 0, .04);--focus-overlay: rgba(0, 0, 0, .08);--pressed-overlay: rgba(0, 0, 0, .12);--selected-overlay: rgba(0, 0, 0, .08);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .08);--shadow-md: 0 4px 6px rgba(0, 0, 0, .12);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .15);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .18);--nav-bg: #fafafa;--nav-border: rgba(0, 0, 0, .08);--card-bg: #ffffff;--card-border: rgba(0, 0, 0, .08);--input-bg: #ffffff;--input-border: rgba(0, 0, 0, .23);--button-bg: #f5f5f5;--button-hover: #eeeeee;--code-bg: #f8f8f8;--code-text: #333333;--accent-primary-bg: var(--madfam-yellow);--accent-primary-text: rgba(0, 0, 0, .87);--accent-secondary-bg: var(--madfam-green);--accent-secondary-text: rgba(0, 0, 0, .87);--text-on-success: #ffffff;--text-on-warning: #000000;--text-on-error: #ffffff;--text-on-info: #ffffff;--cutout-shadow: rgba(0, 0, 0, .12);--tape-color: rgba(255, 193, 7, .8);--paper-texture: rgba(0, 0, 0, .02);--color-eco-green: #4caf50;--color-solar-yellow: #ffc107;--color-comedy-purple: #663399;--color-tech-blue: #2196f3;--color-community-orange: #ff6b35;--paper-texture-opacity: .1;--torn-edge-color: rgba(0, 0, 0, .12);--nav-text: #212121;--button-primary-bg: #ffc107;--button-primary-text: #212121}@media print{.nav-main,.skip-link,.theme-toggle,.nav-mobile-toggle{display:none!important}body{background:var(--bg-primary, #ffffff);color:var(--text-primary, #000000)}a{color:var(--text-primary, #000000);text-decoration:underline}}.main-container[data-astro-cid-dtk3go3w]{min-height:calc(100vh - 120px);max-width:1400px;margin:0 auto;padding:2rem}.footer-main[data-astro-cid-dtk3go3w]{background-color:var(--bg-secondary);border-top:1px solid var(--border-subtle);padding:var(--space-xxl) 0;margin-top:var(--space-xxl)}.footer-main[data-astro-cid-dtk3go3w] h4[data-astro-cid-dtk3go3w]{color:var(--madfam-yellow-dark);margin-bottom:var(--space-md);font-size:1.125rem}.footer-main[data-astro-cid-dtk3go3w] ul[data-astro-cid-dtk3go3w]{list-style:none;padding:0;margin:0}.footer-main[data-astro-cid-dtk3go3w] li[data-astro-cid-dtk3go3w]{margin-bottom:var(--space-sm)}.footer-main[data-astro-cid-dtk3go3w] a[data-astro-cid-dtk3go3w]{color:var(--text-tertiary);transition:color var(--transition-fast)}.footer-main[data-astro-cid-dtk3go3w] a[data-astro-cid-dtk3go3w]:hover{color:var(--text-primary)}@media (max-width: 768px){.main-container[data-astro-cid-dtk3go3w]{padding:1rem}.grid-cols-3[data-astro-cid-dtk3go3w]{grid-template-columns:1fr;gap:var(--space-xl)}}.breadcrumb-nav[data-astro-cid-fdlnsr2d]{padding:var(--space-md) 0;font-size:.875rem}.breadcrumb-list[data-astro-cid-fdlnsr2d]{display:flex;align-items:center;list-style:none;margin:0;padding:0;flex-wrap:wrap}.breadcrumb-item[data-astro-cid-fdlnsr2d]{display:flex;align-items:center}.breadcrumb-link[data-astro-cid-fdlnsr2d]{color:var(--text-tertiary);transition:color var(--transition-fast);text-decoration:none}.breadcrumb-link[data-astro-cid-fdlnsr2d]:hover{color:var(--madfam-yellow-dark);text-decoration:underline}.breadcrumb-current[data-astro-cid-fdlnsr2d]{color:var(--text-primary);font-weight:500}.breadcrumb-separator[data-astro-cid-fdlnsr2d]{margin:0 var(--space-sm);color:var(--text-disabled)}@media (max-width: 768px){.breadcrumb-nav[data-astro-cid-fdlnsr2d]{font-size:.8rem}}
