.nav-bar{z-index:50;background-color:var(--bg-surface);border-bottom:1px solid var(--border-muted);opacity:0;transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1);position:fixed;top:0;left:0;right:0;transform:translateY(-8px)}.nav-bar.nav-visible{opacity:1;transform:translateY(0)}.nav-inner{height:var(--nav-height);justify-content:flex-start;align-items:center;display:flex}.nav-back{min-height:44px;color:var(--text-secondary);font-family:var(--font-family);font-size:var(--font-size-row-value);font-weight:var(--font-weight-semibold);letter-spacing:-.005em;border-radius:var(--radius-sm);transition:color .16s var(--ease-out-quart),background .16s var(--ease-out-quart);-webkit-tap-highlight-color:transparent;align-items:center;gap:6px;margin-left:-14px;padding:8px 14px;text-decoration:none;display:inline-flex}.nav-back:hover{color:var(--text-primary);background:var(--bg-surface-2)}.nav-back svg{transition:transform .16s var(--ease-out-quart)}.nav-back:hover svg{transform:translate(-2px)}.nav-back:focus-visible{outline:var(--focus-ring-width)solid var(--accent-primary-text);outline-offset:2px}
.text-link{cursor:pointer;text-decoration:none;position:relative}.text-link:focus-visible{outline:var(--focus-ring-width)solid var(--accent-primary-text);outline-offset:var(--focus-ring-offset);border-radius:2px}.text-link-nav{color:var(--text-secondary);font-weight:500;font-size:var(--font-size-ui);transition:color .3s var(--ease-out-quart)}.text-link-nav:after{content:"";background:var(--accent-primary);transform-origin:0;width:100%;height:1.5px;transition:transform .4s var(--ease-out-quart);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.text-link-nav:hover{color:var(--text-primary)}.text-link-nav:hover:after{transform:scaleX(1)}.text-link-body{color:var(--accent-primary-text);text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--accent-primary-muted);text-decoration-color:var(--accent-primary-muted);transition:color .3s var(--ease-out-quart),text-decoration-color .3s var(--ease-out-quart)}.text-link-body:hover{color:var(--accent-primary-hover);-webkit-text-decoration-color:var(--accent-primary-hover);text-decoration-color:var(--accent-primary-hover)}@media (prefers-reduced-motion:reduce){.text-link-nav:after{transition-duration:.01ms!important}}
.footer{padding:var(--space-element)var(--container-padding);background-color:var(--bg-surface);position:relative;overflow:hidden}.footer-glow{pointer-events:none;height:1px;position:absolute;top:0;left:0;right:0}.footer-glow:before{content:"";background:linear-gradient(to right,transparent 0%,color-mix(in oklch,var(--accent-primary)50%,transparent)50%,transparent 100%);position:absolute;inset:0}.footer-glow:after{content:"";background:color-mix(in oklch,var(--accent-primary)18%,transparent);filter:blur(12px);opacity:.8;height:14px;position:absolute;top:-6px;left:20%;right:20%}.footer-inner{z-index:1;max-width:var(--container-max);align-items:center;gap:var(--space-stack);text-align:center;opacity:0;transition:opacity .6s var(--ease-out-quart),transform .6s var(--ease-out-quart);flex-direction:column;margin:0 auto;display:flex;position:relative;transform:translateY(12px)}.footer.is-visible .footer-inner{opacity:1;transform:translateY(0)}.footer-attribution{font-family:var(--font-family);font-size:var(--font-size-body-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);letter-spacing:-.005em;margin:0}.footer-links{flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.footer-link-item{align-items:center;display:inline-flex}.footer-link-sep{color:var(--text-muted);margin:0 var(--space-inline);-webkit-user-select:none;user-select:none}@media (prefers-reduced-motion:reduce){.footer-inner{transition-duration:.01ms!important}}@media (max-width:480px){.footer-links{gap:8px var(--space-inline)}}
