:root{--fbf-ease-spring:cubic-bezier(.32, .72, 0, 1);--fbf-ease-snap:cubic-bezier(.34, 1.56, .64, 1);--fbf-dur-fast:.18s;--fbf-dur-base:.26s;--fbf-dur-slow:.42s;--fbf-shadow-1:0 1px 2px #0000006b, 0 10px 26px -18px #0000008c;--fbf-shadow-2:0 1px 2px #00000080, 0 24px 52px -26px #000000a6;--fbf-shadow-3:0 2px 6px #0000008c, 0 42px 90px -32px #000c;--fbf-hairline:#ffffff12;--fbf-hairline-strong:#ffffff1f;--fbf-top-highlight:inset 0 1px 0 #ffffff0e;--fbf-surface-grad:linear-gradient(180deg, #ffffff06, #fff0 42%), var(--surface);--fbf-surface-elevated-grad:linear-gradient(180deg, #ffffff09, #fff0 46%), var(--surface-elevated);--fbf-r-chip:6px;--fbf-r-btn:8px;--fbf-r-card:10px;--fbf-r-hero:12px;--fbf-glass:#0d0f12b8;--fbf-glass-blur:saturate(160%) blur(22px)}.fbf-app-shell{background-color:var(--background);background-image:radial-gradient(120% 42% at 50% -6%,#e9ecf10b,#e9ecf100 62%);background-attachment:fixed}.fbf-topbar{border-bottom:1px solid var(--fbf-hairline);background:linear-gradient(#0a0b0de0,#0a0b0d9e);box-shadow:0 1px #ffffff08,0 18px 38px -30px #000c}.fbf-app-main .fbf-card,.fbf-app-main .fbf-card-soft,.fbf-app-main .fbf-action-row,.fbf-app-main .fbf-settings-row,.fbf-app-main .fbf-task-row,.fbf-modal .fbf-card,.fbf-modal .fbf-action-row{border-radius:var(--fbf-r-card);border:1px solid var(--fbf-hairline);background:var(--fbf-surface-grad);box-shadow:var(--fbf-top-highlight),var(--fbf-shadow-1);transition:transform var(--fbf-dur-base) var(--fbf-ease-spring),border-color var(--fbf-dur-base) ease,box-shadow var(--fbf-dur-base) ease}@media(hover:hover)and (pointer:fine){.fbf-app-main .fbf-card:hover,.fbf-app-main .fbf-action-row:hover,.fbf-app-main .fbf-task-row:hover{border-color:var(--fbf-hairline-strong);box-shadow:var(--fbf-top-highlight),var(--fbf-shadow-2);transform:translateY(-2px)}}.fbf-app-main .fbf-card:active,.fbf-app-main .fbf-action-row:active,.fbf-app-main .fbf-task-row:active{transform:scale(.985)}.fbf-app-main .fbf-card-accent,.fbf-app-main .fbf-card-signature{border-top-color:#4fd6c66b}.fbf-app-main .fbf-button,.fbf-modal .fbf-button{border-radius:var(--fbf-r-btn);transition:transform var(--fbf-dur-fast) var(--fbf-ease-snap),background-color var(--fbf-dur-fast) ease,border-color var(--fbf-dur-fast) ease,box-shadow var(--fbf-dur-fast) ease,color var(--fbf-dur-fast) ease}.fbf-app-main .fbf-button:active,.fbf-modal .fbf-button:active,.fbf-app-main .fbf-start-cta:active{transform:scale(.975)}.fbf-app-main .fbf-start-cta,.fbf-app-main .fbf-button.fbf-cta-glow,.fbf-modal .fbf-button.fbf-cta-glow{border-radius:var(--fbf-r-btn);transition:transform var(--fbf-dur-fast) var(--fbf-ease-snap),box-shadow var(--fbf-dur-base) ease,filter var(--fbf-dur-fast) ease;box-shadow:inset 0 1px #ffffff47,0 1px 2px #00000073,0 16px 34px -16px #000000b3}.fbf-app-main .fbf-start-cta:hover,.fbf-app-main .fbf-button.fbf-cta-glow:hover,.fbf-modal .fbf-button.fbf-cta-glow:hover{filter:brightness(1.05);box-shadow:inset 0 1px #ffffff57,0 2px 4px #00000073,0 22px 46px -18px #000000bf}.fbf-dock,.app-bottom-nav,.fbf-bottom-nav{background:var(--fbf-glass);-webkit-backdrop-filter:var(--fbf-glass-blur);backdrop-filter:var(--fbf-glass-blur);border-top:1px solid var(--fbf-hairline);box-shadow:inset 0 1px #ffffff0d,0 -1px #0000008c,0 -26px 60px -30px #000000d9}.fbf-dock__item{border-radius:var(--fbf-r-btn);transition:color var(--fbf-dur-fast) ease,background-color var(--fbf-dur-fast) ease,transform var(--fbf-dur-fast) var(--fbf-ease-snap)}.fbf-dock__item:active{transform:scale(.94)}.fbf-dock__item.is-active .fbf-dock__label{letter-spacing:.08em}.fbf-dock__dot{transition:left .39s var(--fbf-ease-snap)}.fbf-dock__log-btn{transition:transform var(--fbf-dur-fast) var(--fbf-ease-snap),box-shadow var(--fbf-dur-fast) ease;box-shadow:inset 0 1px #ffffff52,0 2px 4px #00000080,0 14px 30px -12px #000000bf}.fbf-dock__log-btn:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff61,0 4px 8px #00000080,0 20px 40px -14px #000000c7}.fbf-app-main .fbf-title-display{letter-spacing:.012em;font-weight:700}.fbf-app-main .fbf-label,.fbf-app-main .fbf-card-label,.fbf-modal .fbf-label{letter-spacing:.16em;text-transform:uppercase;color:var(--fbf-dim);font-size:10.5px;font-weight:700}.fbf-app-shell .tabular-nums,.fbf-app-shell [class*=tabular],.fbf-app-shell .font-data{font-variant-numeric:tabular-nums;letter-spacing:-.01em}.fbf-app-main .fbf-progress-rail,.fbf-app-main .fbf-rail{background:#e9ecf112;border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 2px #00000073}.fbf-app-main .fbf-progress-rail>*,.fbf-app-main .fbf-rail>*{background:linear-gradient(90deg,var(--cta),#4fd6c6b8);transition:width .62s var(--fbf-ease-spring);border-radius:999px}.fbf-app-main input:not([type=range]):not([type=checkbox]):not([type=radio]),.fbf-app-main textarea,.fbf-app-main select,.fbf-modal input:not([type=range]):not([type=checkbox]):not([type=radio]),.fbf-modal textarea,.fbf-modal select{border-radius:var(--fbf-r-chip);border:1px solid var(--fbf-hairline);transition:border-color var(--fbf-dur-fast) ease,box-shadow var(--fbf-dur-fast) ease;background:#0a0b0d8c}.fbf-app-main input:focus,.fbf-app-main textarea:focus,.fbf-app-main select:focus,.fbf-modal input:focus,.fbf-modal textarea:focus,.fbf-modal select:focus{border-color:#4fd6c68c;outline:none;box-shadow:0 0 0 3px #4fd6c629}.fbf-app-main .fbf-chip,.fbf-app-main .fbf-chip-shape,.fbf-app-main .fbf-status-pill,.fbf-modal .fbf-chip{border-radius:var(--fbf-r-chip);border:1px solid var(--fbf-hairline);transition:transform var(--fbf-dur-fast) var(--fbf-ease-snap),border-color var(--fbf-dur-fast) ease,background-color var(--fbf-dur-fast) ease;background:#e9ecf10a}.fbf-app-main .fbf-chip:active,.fbf-modal .fbf-chip:active{transform:scale(.96)}.fbf-modal,.fbf-sheet{border-radius:var(--fbf-r-hero);border:1px solid var(--fbf-hairline-strong);background:var(--fbf-surface-elevated-grad);box-shadow:var(--fbf-top-highlight),var(--fbf-shadow-3);animation:fbf-sheet-in var(--fbf-dur-slow) var(--fbf-ease-spring) both}@keyframes fbf-sheet-in{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}.fbf-app-main .fbf-stagger>*{animation:fbf-rise var(--fbf-dur-slow) var(--fbf-ease-spring) both;animation-delay:calc(var(--fbf-stagger-i,0) * 55ms)}.fbf-app-main .fbf-stagger>:first-child{--fbf-stagger-i:0}.fbf-app-main .fbf-stagger>:nth-child(2){--fbf-stagger-i:1}.fbf-app-main .fbf-stagger>:nth-child(3){--fbf-stagger-i:2}.fbf-app-main .fbf-stagger>:nth-child(4){--fbf-stagger-i:3}.fbf-app-main .fbf-stagger>:nth-child(5){--fbf-stagger-i:4}.fbf-app-main .fbf-stagger>:nth-child(6){--fbf-stagger-i:5}.fbf-app-main .fbf-stagger>:nth-child(7){--fbf-stagger-i:6}.fbf-app-main .fbf-stagger>:nth-child(n+8){--fbf-stagger-i:7}@keyframes fbf-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.fbf-app-main .fbf-stagger>*,.fbf-modal,.fbf-sheet{animation:none!important}.fbf-app-main .fbf-card,.fbf-app-main .fbf-card:hover,.fbf-app-main .fbf-action-row,.fbf-app-main .fbf-task-row,.fbf-app-main .fbf-button,.fbf-modal .fbf-button,.fbf-app-main .fbf-start-cta,.fbf-dock__item,.fbf-dock__log-btn,.fbf-dock__dot,.fbf-app-main .fbf-progress-rail>*,.fbf-app-main .fbf-rail>*{transition:none!important;transform:none!important}}.fbf-app-shell :focus-visible{outline-offset:2px;outline:2px solid #4fd6c6bf}:root{--fbf-ember:#ff5a1f;--fbf-ember-wash:#ff5a1f1f}.fbf-app-main .fbf-mega{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-.005em;text-wrap:balance;font-size:clamp(2.1rem,9vw,3.1rem);font-weight:700;line-height:.9}.fbf-app-main .fbf-mega em{color:var(--volt);font-style:normal}.fbf-app-main .fbf-num-huge{font-family:var(--font-mono);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--foreground);font-size:clamp(1.75rem,7vw,2.45rem);font-weight:600;line-height:.95}.fbf-app-main .fbf-num-huge .unit{letter-spacing:.06em;text-transform:uppercase;color:var(--fbf-dim);margin-left:.35em;font-size:.42em;font-weight:500}.fbf-app-main .fbf-stat-slab{border-radius:var(--fbf-r-card);border:1px solid var(--fbf-hairline);background:var(--fbf-surface-grad);box-shadow:var(--fbf-top-highlight),var(--fbf-shadow-1);padding:.85rem .8rem .8rem;position:relative;overflow:hidden}.fbf-app-main .fbf-stat-slab:before{content:"";background:var(--volt);opacity:.7;width:2px;position:absolute;inset:0 auto 0 0}.fbf-app-main .fbf-stat-slab .slab-label{letter-spacing:.18em;text-transform:uppercase;color:var(--fbf-dim);font-size:9.5px;font-weight:700}.fbf-app-main .fbf-stat-slab .slab-sub{color:var(--fbf-dim);font-variant-numeric:tabular-nums;font-size:10px}.fbf-app-main .fbf-bib{border-radius:var(--fbf-r-chip);color:var(--volt);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;background:#4fd6c61f;border:1px solid #4fd6c661;align-items:center;gap:.45rem;padding:.32rem .65rem;font-size:10.5px;font-weight:600;display:inline-flex}.fbf-app-main .fbf-speedbar{background:var(--volt);opacity:.85;pointer-events:none;width:7px;position:absolute;top:-20%;bottom:-20%;transform:skew(-18deg)}.fbf-app-main .fbf-track-day{border-radius:var(--fbf-r-chip);transition:transform var(--fbf-dur-fast) var(--fbf-ease-snap),border-color var(--fbf-dur-fast) ease,background-color var(--fbf-dur-fast) ease;position:relative}.fbf-app-main .fbf-track-day:active{transform:scale(.95)}.fbf-app-main .fbf-track-day.is-today{background:#4fd6c61f;border-color:#4fd6c68c;box-shadow:inset 0 1px #ffffff14}.fbf-app-main .fbf-track-day .lane-tick{transform-origin:0;width:60%;min-width:10px;height:2px;animation:fbf-tick-in .32s var(--fbf-ease-snap) both;border-radius:2px}@keyframes fbf-tick-in{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.fbf-app-main .fbf-track-day.is-finish:after{content:"";background:repeating-linear-gradient(90deg,#e9ecf180 0 3px,#0000 3px 6px);border-radius:2px;height:3px;position:absolute;inset:4px 4px auto}.fbf-app-main .fbf-pr-moment{background:linear-gradient(180deg,#ff5a1f1f,#ff5a1f05),var(--surface);border-color:#ff5a1f80}.fbf-app-main .fbf-pr-moment .pr-tag{border-radius:var(--fbf-r-chip);background:var(--fbf-ember);color:#1a0c04;font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.35rem;padding:.25rem .55rem;font-size:10px;font-weight:700;display:inline-flex}.fbf-app-main .fbf-hero-photo:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0a0b0deb 22%,#0a0b0d59 62%,#0a0b0d8c);position:absolute;inset:0}.fbf-app-main .fbf-set-field input{font-family:var(--font-mono);letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:17px;font-weight:600}.fbf-app-main .fbf-set-row{border-radius:var(--fbf-r-card);border:1px solid var(--fbf-hairline);background:var(--fbf-surface-grad);box-shadow:var(--fbf-top-highlight);transition:border-color var(--fbf-dur-fast) ease,transform var(--fbf-dur-fast) var(--fbf-ease-snap)}.fbf-app-main .fbf-set-row.is-done{border-color:#4fd6c666}.fbf-app-main .fbf-set-row:active{transform:scale(.99)}.fbf-app-main .fbf-stagger>*{animation-duration:.38s;animation-delay:calc(var(--fbf-stagger-i,0) * 45ms)}
