.ff-skeleton-block{position:relative;overflow:hidden;border:1px solid var(--ff-btn-border-secondary);border-radius:.5rem;background:var(--ff-btn-gradient-secondary);box-shadow:var(--ff-btn-shadow-secondary)}.ff-skeleton-block:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.06),hsla(0,0%,100%,.08),transparent);animation:ff-cockpit-sweep 1.3s linear infinite}.ff-cockpit-loading-rail{position:relative;height:.375rem;overflow:hidden;border-radius:9999px;background:linear-gradient(180deg,rgba(32,32,32,.9),hsla(0,0%,8%,.95));border:1px solid var(--ff-btn-border-secondary)}.ff-cockpit-loading-rail-bar{position:absolute;inset:0 auto 0 0;width:30%;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),hsla(0,0%,100%,.4),transparent);animation:ff-cockpit-rail 1.15s ease-in-out infinite}.ff-cockpit-sweep-overlay{background:linear-gradient(180deg,hsla(0,0%,8%,.6),hsla(0,0%,5%,.4)),repeating-linear-gradient(180deg,hsla(0,0%,100%,.02),hsla(0,0%,100%,.02) 1px,transparent 0,transparent 9px)}.ff-cockpit-sweep-overlay:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,hsla(0,0%,100%,.06),transparent);animation:ff-cockpit-sweep 1.6s linear infinite}.ff-inline-busy-dot{height:.5rem;width:.5rem;border-radius:9999px;background:hsla(0,0%,100%,.7);box-shadow:0 0 8px hsla(0,0%,100%,.3);animation:ff-inline-pulse .9s ease-in-out infinite}.ff-launch-loading-screen{min-height:100svh;min-height:100dvh;display:grid;place-items:center;padding:max(1.5rem,env(safe-area-inset-top)) 1.25rem max(1.5rem,env(safe-area-inset-bottom));background:radial-gradient(circle at 18% 12%,hsla(0,0%,100%,.04),transparent 22%),radial-gradient(circle at 82% 14%,hsla(0,0%,100%,.03),transparent 20%),linear-gradient(180deg,#0c0c0c,rgb(var(--color-background)) 34%)}.ff-launch-loading-panel{width:min(100%,21rem);display:grid;gap:1rem;justify-items:center;padding:1.5rem 1.25rem;border:1px solid var(--ff-btn-border-primary);border-radius:1.5rem;background:var(--ff-btn-gradient-primary);box-shadow:var(--ff-glass-shadow-elevated)}.ff-launch-loading-logo-shell{display:grid;place-items:center;width:5rem;height:5rem;border-radius:1.6rem;border:1px solid var(--ff-btn-border-secondary);background:var(--ff-btn-gradient-secondary);box-shadow:var(--ff-btn-shadow-primary)}.ff-launch-loading-logo{width:2.9rem;height:2.9rem;animation:ff-launch-float 1.6s ease-in-out infinite}.ff-launch-loading-dots{display:inline-flex;gap:.45rem}.ff-launch-loading-dot{width:.55rem;height:.55rem;border-radius:9999px;background:hsla(0,0%,100%,.6);box-shadow:0 0 10px hsla(0,0%,100%,.25);animation:ff-launch-pulse .9s ease-in-out infinite}.ff-launch-loading-dot:nth-child(2){animation-delay:.12s}.ff-launch-loading-dot:nth-child(3){animation-delay:.24s}.ff-nav-pending{position:relative}.ff-nav-pending:after{content:"";position:absolute;right:.45rem;top:.45rem;height:.42rem;width:.42rem;border-radius:9999px;background:hsla(0,0%,100%,.7);box-shadow:0 0 8px hsla(0,0%,100%,.3);animation:ff-inline-pulse .9s ease-in-out infinite}@keyframes ff-cockpit-rail{0%{transform:translateX(-120%)}to{transform:translateX(340%)}}@keyframes ff-cockpit-sweep{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}@keyframes ff-inline-pulse{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}@keyframes ff-launch-float{0%,to{opacity:.88;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}@keyframes ff-launch-pulse{0%,to{opacity:.38;transform:scale(.86)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ff-cockpit-loading-rail-bar,.ff-cockpit-sweep-overlay:after,.ff-inline-busy-dot,.ff-launch-loading-dot,.ff-launch-loading-logo,.ff-nav-pending:after,.ff-skeleton-block:after{animation:none}.ff-cockpit-loading-rail-bar{transform:translateX(100%)}}.ff-shell-backdrop{height:100svh;height:100dvh;min-height:100svh;min-height:100dvh;position:relative}.ff-shell-backdrop:before{content:"";inset:0;pointer-events:none;position:absolute;background:radial-gradient(ellipse 70% 45% at 12% 0,hsla(0,0%,8%,.6),transparent 40%),radial-gradient(ellipse 55% 40% at 88% 8%,hsla(0,0%,6%,.5),transparent 35%);opacity:.8}.ff-shell-header{background:var(--ff-bg-shell-header);border-bottom:1px solid var(--ff-glass-border);box-shadow:var(--ff-glass-shadow);min-height:calc(3.5rem + env(safe-area-inset-top))}.ff-shell-header,.ff-shell-sidebar{backdrop-filter:var(--ff-glass-filter-lg)}.ff-shell-sidebar{background:var(--ff-bg-shell-sidebar);border-right:1px solid var(--ff-glass-border-subtle)}.ff-shell-main-frame{background:transparent;border:none;border-radius:0;min-height:100%;position:relative}.ff-shell-main-frame:before{display:none}.ff-mobile-bottom-dock{backdrop-filter:var(--ff-glass-filter-vibrant);background:var(--ff-bg-mobile-dock);border-top:1px solid var(--ff-glass-border-top);box-shadow:0 -4px 24px rgba(0,0,0,.3)}.ff-mobile-bottom-dock-wrap{padding-bottom:max(.75rem,env(safe-area-inset-bottom))}.ff-shell-backdrop[data-display-mode=standalone] .ff-mobile-bottom-dock-wrap{padding-bottom:clamp(.2rem,calc(env(safe-area-inset-bottom) * .2),.45rem)}.ff-mobile-screen-body{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}.ff-shell-backdrop[data-display-mode=standalone] .ff-mobile-screen-body{padding-bottom:5rem}.ff-mobile-scroll-rail{padding-bottom:calc(5.25rem + env(safe-area-inset-bottom))}.ff-shell-backdrop[data-display-mode=standalone] .ff-mobile-scroll-rail{padding-bottom:5.25rem}.ff-surface-card{backdrop-filter:var(--ff-glass-filter-md);background:var(--ff-bg-card);border:1px solid var(--ff-glass-border);border-top-color:var(--ff-glass-border-top);border-radius:1rem;box-shadow:var(--ff-glass-shadow);position:relative}.ff-surface-card:before{display:none}.ff-surface-card-subtle{backdrop-filter:var(--ff-glass-filter-sm);background:var(--ff-glass-gradient-subtle);border:1px solid var(--ff-glass-border-subtle);box-shadow:none}.ff-surface-card-hero{backdrop-filter:var(--ff-glass-filter-lg);background:var(--ff-bg-card-elevated);border:1px solid var(--ff-glass-border-strong);border-top-color:var(--ff-glass-border-top);box-shadow:var(--ff-glass-shadow-lg)}.ff-weekly-today-wrapper{background:var(--ff-gradient-today-border);padding:1px}.ff-weekly-today-card{border-color:hsla(0,0%,100%,.18)!important}.ff-weekly-active-wrapper{background:linear-gradient(145deg,hsla(0,0%,100%,.3),hsla(0,0%,100%,.08) 40%,hsla(0,0%,100%,.18));padding:2px}.ff-weekly-active-card{border:none!important;background:#080808!important}.ff-surface-card-tight{padding:.625rem}.ff-surface-card-default{padding:.875rem}.ff-surface-header{align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between}.ff-surface-header-copy{display:grid;gap:.2rem;min-width:0}.ff-surface-eyebrow{color:rgb(var(--color-foreground-muted)/.8);font-family:var(--ff-font-mono);font-size:.6875rem;letter-spacing:.16em;line-height:1;text-transform:uppercase}.ff-surface-title{color:rgb(var(--color-foreground));font-size:.95rem;font-weight:600;line-height:1.2}.ff-surface-description{color:rgb(var(--color-foreground-muted)/.88);font-size:.75rem;line-height:1.35}.ff-surface-meta{color:rgb(var(--color-foreground-muted)/.78);font-family:var(--ff-font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.ff-hero-pill{backdrop-filter:var(--ff-glass-filter-sm);align-items:flex-start;background:var(--ff-glass-bg-light);border:1px solid var(--ff-glass-border);border-radius:9999px;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.06);display:inline-flex;flex-direction:column;gap:.125rem;min-width:6.25rem;padding:.4rem .7rem}.ff-hero-pill-label{color:rgb(var(--color-foreground-muted)/.78);font-family:var(--ff-font-mono);font-size:.625rem;letter-spacing:.14em;line-height:1;text-transform:uppercase}.ff-hero-pill-value{color:rgb(var(--color-foreground));font-size:.75rem;font-weight:600;line-height:1.1}.ff-hero-pill-primary{border-color:rgb(var(--color-primary)/.18);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.05),0 0 0 1px rgb(var(--color-primary)/.04)}.ff-hero-pill-focus{border-color:rgb(var(--color-focus)/.18)}.ff-hero-pill-success{border-color:rgb(var(--color-success)/.18)}.ff-nav-link{position:relative;transition:border-color .14s ease,background-color .14s ease,color .14s ease,transform .14s ease}.ff-nav-link:hover{border-color:rgb(var(--color-border)/.14);color:rgb(var(--color-foreground));transform:translateY(-1px)}.ff-nav-link-active{background:linear-gradient(165deg,rgba(45,45,45,.9),rgba(28,28,28,.95) 50%,#121212);border-color:hsla(0,0%,100%,.12);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.08),0 4px 16px rgba(0,0,0,.4);color:rgb(var(--color-foreground))}.ff-nav-link-active:before{content:"";inset:0;position:absolute;padding:1px;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,hsla(0,0%,100%,.15),hsla(0,0%,100%,.08) 50%,hsla(0,0%,100%,.04));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.ff-shell-pending-overlay{background:linear-gradient(180deg,rgb(var(--color-background)/.12),rgb(var(--color-background)/.03)),repeating-linear-gradient(180deg,rgba(148,163,184,.028) 0,rgba(148,163,184,.028) 1px,transparent 1px,transparent 9px)}@media (prefers-reduced-motion:reduce){.ff-nav-link{transition:none}.ff-nav-link:hover{transform:none}}@media (max-width:767px){.ff-shell-main-frame{background:var(--ff-bg-shell-main);border-bottom:0;border-left:0;border-radius:0;border-right:0;box-shadow:none}.ff-shell-main-frame:before{display:none}}