.site-header{position:sticky;top:0;z-index:100;background:var(--header-bg);color:var(--header-fg);box-shadow:0 1px #ffffff0d}.header-inner{display:flex;align-items:center;height:var(--header-height);gap:var(--space-5)}.header-logo{display:inline-flex;align-items:center;min-height:2.75rem;font-size:var(--font-size-lg);font-weight:600;color:var(--header-fg);text-decoration:none;letter-spacing:0;flex-shrink:0;transition:opacity var(--transition-fast)}.header-logo:hover{opacity:.8}.header-nav{display:flex;align-items:center;gap:var(--space-1);flex:1}.header-nav-link{display:inline-flex;align-items:center;min-height:2.75rem;padding:var(--space-2) var(--space-3);color:var(--header-fg-muted);font-size:var(--font-size-sm);font-weight:500;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast);white-space:nowrap}.header-nav-link:hover{color:var(--header-fg);background:#ffffff14}.header-nav-link[aria-current=page]{color:var(--header-fg)}.header-nav-lang{display:none}.header-controls{display:flex;align-items:center;gap:var(--space-3);margin-left:auto}.lang-picker{display:flex;align-items:center;gap:var(--space-1)}.lang-link{display:inline-flex;align-items:center;justify-content:center;min-height:2.75rem;min-width:2.75rem;padding:var(--space-1) var(--space-2);color:var(--header-fg-muted);font-size:var(--font-size-xs);font-weight:600;letter-spacing:.05em;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast);text-decoration:none}.lang-link:hover{color:var(--header-fg);background:#ffffff14}.lang-link--active{color:var(--header-fg)}.theme-toggle,.hamburger{width:2.75rem;height:2.75rem;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-md);background:#ffffff08;color:var(--header-fg-muted);transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center}.theme-icon{display:flex;align-items:center;justify-content:center;line-height:1}.theme-icon svg{width:16px;height:16px}.theme-icon--sun,html.dark-mode .theme-icon--moon{display:none}html.dark-mode .theme-icon--sun{display:block}.theme-toggle:hover,.hamburger:hover{color:var(--header-fg);border-color:#ffffff47;background:#ffffff14;transform:translateY(-1px)}.theme-toggle:active,.hamburger:active{transform:translateY(0)}.hamburger{display:none;align-items:center;justify-content:center;flex-direction:column;gap:.24rem}.hamburger-line{width:1rem;height:1.5px;border-radius:999px;background:currentColor;transition:transform var(--transition-fast),opacity var(--transition-fast);transform-origin:center}.hamburger[aria-expanded=true] .hamburger-line:nth-child(1){transform:translateY(.39rem) rotate(45deg)}.hamburger[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0}.hamburger[aria-expanded=true] .hamburger-line:nth-child(3){transform:translateY(-.39rem) rotate(-45deg)}@media(max-width:768px){.site-header[data-mobile-open=true]{box-shadow:0 1px #ffffff0d,0 16px 28px #00000029}.header-nav{position:absolute;top:var(--header-height);left:0;right:0;display:none;flex:none;flex-direction:column;align-items:stretch;gap:var(--space-2);padding:var(--space-5) var(--container-pad);background:var(--header-bg);border-top:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px #ffffff0a}.site-header[data-mobile-open=true] .header-nav{display:flex}.header-nav-link{padding:var(--space-3);font-size:var(--font-size-md);border-radius:var(--radius-md)}.header-nav-link[aria-current=page]{background:#ffffff0f}.header-nav-lang{display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-2) 0;border-top:1px solid rgba(255,255,255,.1)}.lang-picker{display:none}.hamburger{display:flex}}.site-footer{background:linear-gradient(180deg,var(--color-surface),var(--color-surface-2));border-top:1px solid var(--color-border);margin-top:auto}.footer-inner{padding-block:var(--space-9) var(--space-6)}.footer-top{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(10rem,12rem) auto;gap:var(--space-8);align-items:start;margin-bottom:var(--space-8)}.footer-logo{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text);text-decoration:none;display:inline-flex;align-items:center;min-height:2.75rem;margin-bottom:var(--space-2)}.footer-tagline{font-size:var(--font-size-sm);color:var(--color-text-muted);max-width:30ch;line-height:1.6}.footer-nav{display:grid;gap:0;align-content:start}.footer-nav-link{display:inline-flex;align-items:center;min-height:2.75rem;color:var(--color-text-muted);font-size:var(--font-size-sm);transition:color var(--transition-fast)}.footer-nav-link:hover{color:var(--color-text)}.footer-social-label{font-size:var(--font-size-sm);font-weight:500;letter-spacing:.02em;color:var(--color-text-muted);margin-bottom:var(--space-3)}.footer-social-links{display:flex;gap:var(--space-2)}.footer-social-link{align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff59;color:var(--color-text-muted);transition:color var(--transition-fast),transform var(--transition-fast);display:flex;position:relative}.footer-social-link:hover{color:var(--color-text);border-color:color-mix(in srgb,var(--color-text-muted) 50%,var(--color-border));background:var(--color-surface);transform:translateY(-2px)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--color-border);padding-top:var(--space-5);gap:var(--space-4);flex-wrap:wrap}.footer-copyright{font-size:var(--font-size-sm);color:var(--color-text-muted)}.footer-policy-links{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.footer-policy-link{display:inline-flex;align-items:center;min-height:2.75rem;font-size:var(--font-size-sm);color:var(--color-text-muted)}.footer-policy-link:hover{color:var(--color-text)}@media(max-width:768px){.footer-top{grid-template-columns:1fr;gap:var(--space-6)}.footer-nav{grid-template-columns:repeat(2,minmax(0,max-content));gap:0 var(--space-5)}}.page-debug-handle{position:fixed;top:50%;right:0;z-index:96;display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:9.8rem;padding:.78rem .4rem;border:1px solid rgba(255,255,255,.08);border-right:0;border-radius:.9rem 0 0 .9rem;background:#09101ee6;color:var(--debug-handle-fg);font:inherit;transform:translateY(-50%);opacity:0;cursor:pointer;transition:opacity var(--transition-normal),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast);box-shadow:-12px 10px 24px #00000029}.page-debug-handle[hidden]{display:none!important}.page-debug-handle[data-visible=true]{opacity:.32}.page-debug-handle[data-drawer-open=true]{border-color:color-mix(in srgb,var(--color-on-dark-accent) 44%,transparent);background:#0d1628f5;box-shadow:-18px 14px 30px #0003;opacity:1}.page-debug-handle[data-release-active=true]{border-color:color-mix(in srgb,var(--color-on-dark-accent) 44%,transparent);background:#122034f0;color:var(--debug-handle-fg-active)}.page-debug-handle:hover{opacity:1}.page-debug-handle-text{display:block;color:var(--debug-handle-text);font-size:.68rem;font-weight:600;letter-spacing:.05em;line-height:1.1;white-space:nowrap;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg)}.page-debug-handle-label{display:none;color:var(--debug-handle-label);font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.page-debug-handle-current{display:none;color:var(--debug-handle-current);font-size:.95rem;font-weight:700;letter-spacing:.01em}@media(max-width:768px){.page-debug-handle{top:auto;right:var(--space-3);bottom:calc(var(--space-3) + 4.1rem);min-width:auto;min-height:auto;display:flex;align-items:center;gap:.45rem;padding:.6rem .9rem;border-right:1px solid rgba(255,255,255,.08);border-radius:999px;transform:none}.page-debug-handle[data-visible=true],.page-debug-handle:hover,.page-debug-handle[data-drawer-open=true]{opacity:.52}.page-debug-handle-text{display:none}.page-debug-handle-label,.page-debug-handle-current{display:block}}
