.race-modal-content{position:relative;padding:48px 24px 24px;min-height:460px}.race-modal-stage{flex:1;position:relative;width:100%;min-height:300px;display:flex;flex-direction:column}.transition-step-grid{display:flex;flex-direction:column;gap:20px;margin:8px 0 24px}.transition-step-row{display:flex;align-items:center;justify-content:center;gap:16px}.transition-step-label{font-family:JetBrains Mono,monospace;font-size:.85rem;font-weight:800;color:#888;letter-spacing:1px;min-width:28px}.time-dial-wrap--transition{flex:0 1 auto}.dash-widget-title{font-size:.65rem;color:#888;font-weight:800;font-family:JetBrains Mono,monospace;letter-spacing:1px;text-transform:uppercase}.dash-widget-value{font-size:1.5rem;color:#fff;font-weight:900;font-family:Manrope,sans-serif;line-height:1}.dash-widget-value-large{font-size:2rem;color:var(--active-color, #00ffc3);font-weight:900;font-family:Manrope,sans-serif;line-height:1}.dash-widget-subtext{font-size:.55rem;color:#888;font-family:JetBrains Mono,monospace;margin-top:2px}.dash-empty-state-text{color:#888;font-size:.85rem;font-family:Manrope,sans-serif;line-height:1.5;max-width:90%;text-align:center}.dash-icon-large{font-size:28px;margin-bottom:4px}.dash-flex-col-center{display:flex;flex-direction:column;align-items:center;gap:8px}.dash-divider-vert{width:1px;background:#ffffff0d;margin:0 8px}.hub-overlay{position:fixed;inset:0;background:#0b0d17f2;backdrop-filter:blur(10px);z-index:999999;opacity:0;pointer-events:none;transition:opacity .3s ease;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto}.hub-overlay.is-open{opacity:1;pointer-events:auto}.hub-container{width:100%;max-width:var(--shell-wide);margin:auto;animation:slideUp .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:var(--widget-gap, 24px);padding-bottom:60px}.hub-overlay.is-open .hub-container{transform:translateY(0)}.hub-header{display:flex;justify-content:space-between;align-items:flex-end;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:var(--widget-gap, 24px)}.hub-title{font-size:clamp(28px,4vw,42px);color:#fff;margin:0;text-transform:uppercase;font-weight:900;letter-spacing:-1px}.hub-subtitle{font-family:JetBrains Mono,monospace;font-size:.75rem;color:#888;font-weight:800;letter-spacing:1px;display:block;margin-top:8px;text-transform:uppercase;transition:color .3s}.hub-container .icon-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50%;color:#aaa;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;width:44px;height:44px;outline:none}.hub-container .icon-btn:hover{color:#fff;background:#ffffff1a;border-color:#ffffff4d;transform:scale(1.05)}.hub-grid{display:grid;width:100%;column-gap:var(--widget-gap, 24px);row-gap:var(--widget-gap, 24px)}.hub-grid.grid-3-col{grid-template-columns:repeat(3,1fr)}.hub-grid.grid-4-col{grid-template-columns:repeat(4,1fr)}.hub-grid.grid-2-1-col{grid-template-columns:2fr 1fr}.hub-container .widget-card{display:flex;flex-direction:column;transition:border-color .3s;position:relative}.hub-container .widget-card:hover{border-color:#ffffff1a}.hub-container .widget-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:var(--widget-gap, 24px);border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:16px}.hub-container .widget-title{font-size:.8rem;color:#888;font-weight:800;letter-spacing:2px;text-transform:uppercase;font-family:JetBrains Mono,monospace;display:flex;align-items:center;gap:8px}.hub-ghost-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;background:transparent;border:1px solid rgba(255,255,255,.2);color:#888;border-radius:8px;font-size:.75rem;font-weight:800;letter-spacing:1px;transition:all .2s;text-transform:uppercase;font-family:JetBrains Mono,monospace;white-space:nowrap;cursor:pointer;outline:none;text-decoration:none}.hub-ghost-btn:hover{border-color:#fff6;color:#fff;background:#ffffff0d}.hub-ghost-btn.is-active{background:var(--active-color);color:#000;border-color:var(--active-color)}.hub-container .inline-action-btn{background:transparent;border:1px solid rgba(255,255,255,.2);color:#888;text-decoration:none;border-radius:8px;font-size:.65rem;font-weight:800;letter-spacing:1px;transition:all .2s;text-transform:uppercase;padding:10px 16px;cursor:pointer;outline:none;text-align:center}.hub-container .plan-card,.hub-container .health-card{display:flex;flex-direction:column;justify-content:space-between}.health-card #inp-weight::-webkit-outer-spin-button,.health-card #inp-weight::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.health-card #inp-weight{-moz-appearance:textfield}.health-card .weight-arrow.hub-weight-step{background:transparent;border:none;color:#888;cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:0;border-radius:12px;transition:color .15s ease,background .15s ease,transform .1s ease;touch-action:manipulation;-webkit-user-select:none;user-select:none}.health-card .weight-arrow.hub-weight-step:hover{color:#fff;background:#ffffff0f}.health-card .weight-arrow.hub-weight-step:active{transform:scale(.94);background:#ffffff1a}.hub-container .health-header{position:absolute;top:var(--widget-gap, 24px);right:var(--card-pad-x);font-size:.7rem;color:#888;font-weight:800;letter-spacing:2px;text-transform:uppercase;font-family:JetBrains Mono,monospace}.hub-container .health-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;margin:var(--widget-gap, 24px) 0}.hub-container .plan-hero{display:flex;flex-direction:column;gap:4px;margin-bottom:var(--widget-gap, 24px)}.hub-container .plan-hero-title{font-size:clamp(2rem,3vw,2.5rem);color:#fff;font-weight:900;line-height:1;font-family:Manrope,sans-serif;letter-spacing:-1px;text-transform:uppercase}.hub-container .plan-hero-subtitle{font-size:1.1rem;color:var(--active-color);font-weight:800;font-family:JetBrains Mono,monospace;text-transform:uppercase}.hub-container .plan-stats-grid{display:flex;gap:var(--widget-gap, 24px);align-items:center;padding-top:var(--widget-gap, 24px);margin-bottom:var(--widget-gap, 24px);border-top:1px solid rgba(255,255,255,.1)}.hub-container .plan-stat{display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1}.hub-container .plan-stat span{font-size:.6rem;color:#888;font-family:JetBrains Mono,monospace;font-weight:800;letter-spacing:1px;text-transform:uppercase}.hub-container .plan-stat strong{font-size:1.25rem;color:#fff;font-family:JetBrains Mono,monospace;font-weight:900}.hub-container .discipline-header{display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:16px;margin-bottom:var(--widget-gap, 24px)}.hub-container .discipline-icon{font-size:28px}.hub-container .discipline-title{font-size:1.1rem;color:#fff;font-weight:900;letter-spacing:2px;font-family:JetBrains Mono,monospace}.swim-card .discipline-icon,.swim-card .discipline-title{color:var(--swim, #00d2ff)}.bike-card .discipline-icon,.bike-card .discipline-title{color:var(--bike, #00ffc3)}.run-card .discipline-icon,.run-card .discipline-title{color:var(--run, #FF5900)}.swim-card .inline-action-btn:hover{border-color:var(--swim);color:#fff;background:color-mix(in srgb,var(--swim) 15%,transparent);box-shadow:0 0 15px color-mix(in srgb,var(--swim) 20%,transparent)}.bike-card .inline-action-btn:hover{border-color:var(--bike);color:#fff;background:color-mix(in srgb,var(--bike) 15%,transparent);box-shadow:0 0 15px color-mix(in srgb,var(--bike) 20%,transparent)}.run-card .inline-action-btn:hover{border-color:var(--run);color:#fff;background:color-mix(in srgb,var(--run) 15%,transparent);box-shadow:0 0 15px color-mix(in srgb,var(--run) 20%,transparent)}.swim-card .editable-anchor:hover{color:var(--swim);border-color:var(--swim)}.bike-card .editable-anchor:hover{color:var(--bike);border-color:var(--bike)}.run-card .editable-anchor:hover{color:var(--run);border-color:var(--run)}.hub-container .metric-chunk{display:flex;flex-direction:column;gap:8px}.hub-container .chunk-label{font-size:.65rem;color:#555;font-family:JetBrains Mono,monospace;font-weight:800;letter-spacing:1px;text-transform:uppercase}.hub-container .chunk-val{font-size:1.25rem;color:#fff;font-weight:900;font-family:JetBrains Mono,monospace;transition:color .2s}.hub-container .btn-dual-row{display:flex;gap:8px;margin-top:auto;padding-top:var(--widget-gap, 24px)}.hub-container .editable-anchor{cursor:pointer;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:2px}.hub-container .locked-anchor{cursor:not-allowed}.hub-container .predictor-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:16px;margin-bottom:var(--widget-gap, 24px);flex-wrap:wrap;gap:16px}.hub-container .pred-mode-toggle{display:flex;gap:8px}.hub-container .predictor-tabs{display:flex;gap:8px;flex-wrap:wrap}.hub-container .predictor-result-grid{display:flex;justify-content:space-around;align-items:center;text-align:center;flex-wrap:wrap;gap:16px;margin-bottom:var(--widget-gap, 24px)}.hub-container .pred-stat{display:flex;flex-direction:column;gap:4px}.hub-container .pred-stat span{font-size:.65rem;color:#888;font-family:JetBrains Mono,monospace;font-weight:800;letter-spacing:1px;text-transform:uppercase}.hub-container .pred-stat strong{font-size:1.5rem;color:#fff;font-weight:900;font-family:Manrope,sans-serif}.hub-container .total-stat strong{font-size:2rem;color:var(--active-color)}.hub-container .pr-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:16px}.hub-container .pr-label{font-size:.7rem;color:#fff;font-weight:800;text-transform:uppercase;font-family:JetBrains Mono,monospace}.hub-container .pr-time{font-size:1.1rem;color:var(--bike, #00ffc3);font-weight:400;font-family:JetBrains Mono,monospace}.hub-container .pr-empty{font-size:.8rem;color:#555;font-family:JetBrains Mono,monospace;text-align:center;display:block;margin:auto 0}.hub-container .matrix-dna-row{display:flex;justify-content:space-around;align-items:center;text-align:center;font-family:JetBrains Mono,monospace;font-size:1.2rem;font-weight:900;color:#fff;padding-bottom:var(--widget-gap, 24px);border-bottom:1px solid rgba(255,255,255,.05)}.hub-container .tool-grid-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:var(--widget-gap, 24px);background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:12px;text-decoration:none;color:#aaa;transition:all .2s;font-family:JetBrains Mono,monospace;font-size:.7rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;text-align:center}.hub-container .tool-grid-btn:hover{background:#ffffff0d;border-color:#fff3;color:#fff;transform:translateY(-2px)}.hub-container .tool-grid-btn .material-symbols-outlined{font-size:32px;color:#fff;transition:color .2s}.hub-container .tool-grid-btn:hover .material-symbols-outlined{color:var(--active-color)}.hub-modal-content{background:#12141d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:var(--widget-gap, 24px) var(--card-pad-x);width:100%;max-width:450px;box-shadow:0 20px 40px #00000080;overflow:hidden;position:relative}.hub-modal-content .card-wrap{animation:slideInRight .3s forwards}.hub-modal-content .card-wrap.exit{animation:slideOutLeft .3s forwards;position:absolute;top:var(--card-pad-x);left:var(--card-pad-x);width:calc(100% - 2 * var(--card-pad-x))}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-20px)}}.hub-modal-content .hero-prompt{font-size:1.5rem;font-family:Manrope,sans-serif;font-weight:900;color:#fff;text-align:center;margin:0 0 var(--widget-gap, 24px) 0;letter-spacing:-.5px}.hub-modal-content .preset-grid{display:flex;flex-direction:column;gap:12px}.hub-modal-content .preset-row{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#ffffff05;border:1px solid rgba(255,255,255,.05);border-radius:8px;cursor:pointer;transition:all .2s}.hub-modal-content .preset-row:hover{background:#ffffff0d;border-color:var(--active-color)}.hub-modal-content .preset-name{font-family:JetBrains Mono,monospace;font-size:.9rem;font-weight:800;color:#fff}.hub-modal-content .preset-meta{font-family:JetBrains Mono,monospace;font-size:.65rem;color:#888}.hub-modal-content .sleek-input{width:100%;background:transparent;border:none;border-bottom:2px solid rgba(255,255,255,.1);color:#fff;font-size:1.5rem;font-weight:900;text-align:center;padding:12px 0;outline:none;font-family:JetBrains Mono,monospace;border-radius:0}.hub-modal-content .sleek-input:focus{border-color:var(--active-color)}.hub-modal-content .cockpit-row{display:flex;flex-direction:column;gap:var(--widget-gap, 24px);margin-bottom:var(--widget-gap, 24px)}.hub-modal-content .stepper-wrap{display:flex;align-items:center;justify-content:space-between;border:1px solid;border-radius:12px;padding:12px;background:#0003}.hub-modal-content .stepper-btn{background:transparent;border:none;color:#fff;font-size:1.5rem;font-weight:900;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.hub-modal-content .stepper-val{font-size:2rem;font-weight:900;font-family:JetBrains Mono,monospace;color:#fff}.hub-modal-content .stepper-unit{font-size:.8rem;color:#888}.hub-modal-content .time-dial-wrap{display:flex;justify-content:center;align-items:center;gap:8px;border:1px solid;border-radius:12px;padding:16px;background:#0003}.hub-modal-content .time-segment{display:flex;flex-direction:column;align-items:center}.hub-modal-content .time-arrow{background:transparent;border:none;color:#888;font-size:.8rem;cursor:pointer;padding:4px}.hub-modal-content .time-arrow:hover{color:#fff}.hub-modal-content .time-input{background:transparent;border:none;color:#fff;font-size:2.5rem;font-weight:900;font-family:JetBrains Mono,monospace;width:60px;text-align:center;appearance:none;outline:none;margin:0;padding:0}.hub-modal-content .time-input::-webkit-outer-spin-button,.time-modal-content .time-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.hub-modal-content .time-colon{font-size:2rem;font-weight:900;color:#555;font-family:JetBrains Mono,monospace;margin-top:16px}.hub-modal-label{font-size:.65rem;color:#888;font-family:JetBrains Mono,monospace;letter-spacing:1px;text-transform:uppercase;display:block;margin-bottom:8px}.hub-modal-input,.hub-modal-select{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(255,255,255,.2);color:#fff;padding:12px 0;font-family:JetBrains Mono,monospace;font-size:1rem;outline:none}.hub-modal-select{appearance:none}.hub-modal-select option{background:#12141d;color:#fff}@media(max-width:850px){.hub-page.master-container .hub-container .widget-card{padding:var(--card-pad-y) var(--page-pad-x) var(--card-pad-b)!important;width:100%!important;box-sizing:border-box}.hub-page.master-container .hub-grid{column-gap:var(--widget-gap);row-gap:var(--widget-gap)}.hub-container .widget-card{padding:var(--card-pad-y) var(--page-pad-x) var(--card-pad-b)}.hub-grid.grid-3-col,.hub-grid.grid-4-col,.hub-grid.grid-2-1-col{grid-template-columns:1fr}.hub-container .plan-hero-title{font-size:2rem}.hub-container .total-stat strong{font-size:1.5rem}.hub-container .pred-stat strong{font-size:1.25rem}.hub-container .health-header{position:relative;top:0;right:0;text-align:left;width:100%;margin-bottom:16px}.hub-container .plan-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px 0 0}.hub-container .predictor-header{flex-direction:column;gap:16px;align-items:stretch}.hub-container .predictor-header-left{width:100%}.hub-container .pred-mode-toggle{width:100%;display:grid;grid-template-columns:1fr 1fr;max-width:100%}.hub-container .pred-mode-toggle .hub-route-btn,.hub-container .pred-mode-toggle .pred-tab{width:100%!important}.hub-container .predictor-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.hub-container .predictor-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;text-align:left}.hub-container .btn-dual-row{flex-direction:column;gap:12px}.hub-container .btn-dual-row .inline-action-btn{width:100%}.hub-page .widget-header{flex-wrap:wrap;gap:12px}.hub-page .hub-ghost-btn{margin-left:auto}}html:has(.hub-page) .minimal-footer,html:has(.hub-container) .minimal-footer{position:relative!important;bottom:auto!important;margin-top:64px!important;padding-bottom:32px!important;z-index:10!important}.pred-tab{background:transparent!important;border:1px solid rgba(255,255,255,.1)!important;color:#888!important;transition:all .2s ease!important}.pred-tab:hover:not(.is-active){background:#ffffff0d!important;color:#fff!important;border-color:#ffffff4d!important}.pred-tab.is-active{background:#00ffc30d!important;border-color:var(--active-color, #00ffc3)!important;color:var(--active-color, #00ffc3)!important;box-shadow:0 0 10px #00ffc31a!important}.widget-action-header{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#888;transition:all .2s ease;cursor:pointer;padding:4px 8px 4px 0;border-radius:4px}.widget-action-header .widget-title{color:inherit;margin:0;border:none;padding:0;transition:color .2s ease}.widget-action-header .action-icon{font-size:18px;transition:transform .2s ease,color .2s ease}.widget-action-header:hover{color:var(--hover-color, #fff)}.widget-action-header:hover .action-icon{transform:scale(1.1)}.inline-pb-badge{display:inline-block;background:#f59e0b;color:#000;font-family:JetBrains Mono,monospace;font-size:.65rem;padding:2px 6px;border-radius:4px;font-weight:900;vertical-align:top;margin-left:4px;line-height:1;letter-spacing:.5px}.hub-pb-list{display:flex;flex-direction:column;height:100%;justify-content:flex-start;padding-top:8px}.hub-pb-row{display:flex;justify-content:space-between;align-items:baseline;width:calc(100% + 12px);margin:0 0 12px -6px;padding:4px 6px;border:none;border-radius:8px;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:background .15s ease}.hub-pb-row:hover,.hub-pb-row:focus-visible{background:#ffffff0d;outline:none}.hub-pb-row:hover .hub-pb-row__time,.hub-pb-row:focus-visible .hub-pb-row__time{color:var(--active-color, #00ffc3)}.hub-pb-row--empty{cursor:default;pointer-events:none}.hub-pb-row--empty .hub-pb-row__log{pointer-events:auto}.hub-pb-row__label{font-size:.75rem;color:#888;font-weight:800;font-family:JetBrains Mono,monospace}.hub-pb-row__label--empty{color:#555}.hub-pb-row__time{font-size:1.1rem;color:#fff;font-weight:900;font-family:JetBrains Mono,monospace;transition:color .15s ease}.hub-pb-row__log{font-size:.75rem;color:var(--active-color);font-weight:800;font-family:JetBrains Mono,monospace;text-decoration:none;display:flex;align-items:center;gap:4px}.hub-pb-row__log .material-symbols-outlined{font-size:14px}.hub-page .hub-container{width:100%;max-width:none;height:auto;max-height:none;background:transparent;border:none;box-shadow:none;padding:0}.hub-page .hub-header{margin-bottom:var(--widget-gap)}.hub-page .hub-title{font-size:2rem}.hub-page .hub-subtitle{font-size:.8rem;color:var(--bike, #00ffc3);line-height:1.45;max-width:42rem}.hub-page .hub-subtitle.is-hidden{display:none}.hub-empty-hint{color:#666;font-size:.75rem;font-family:Manrope,sans-serif;line-height:1.45;text-align:center;margin:8px 0 0;max-width:92%}.hub-empty-state{text-align:center;color:#666;font-size:.85rem;margin:auto;display:flex;flex-direction:column;align-items:center;gap:10px;font-family:Manrope,sans-serif;line-height:1.45;max-width:92%}.hub-empty-state__action{font-size:18px;color:var(--active-color);cursor:pointer}.hub-injury-status-link{text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:transform .2s ease}.hub-injury-status-link:hover{transform:scale(1.05)}.hub-injury-subtext{font-size:.6rem;color:#555;font-family:Manrope,sans-serif;font-weight:500;line-height:1.35;text-align:center;text-transform:none;letter-spacing:0;max-width:11rem}.hub-page .hub-injury-banner{display:none;align-items:center;gap:8px;background:#f59e0b14;border:1px solid rgba(245,158,11,.3);color:#f59e0b;font-family:JetBrains Mono,monospace;font-size:.72rem;font-weight:800;letter-spacing:1px;padding:10px 16px;border-radius:8px;width:100%;box-sizing:border-box}.hub-page .hub-injury-banner .material-symbols-outlined{font-size:16px}.hub-page .hub-grid{display:grid;width:100%;column-gap:var(--widget-gap);row-gap:var(--widget-gap)}.hub-page .hub-grid.grid-3-col{grid-template-columns:repeat(3,1fr)}.hub-page .hub-grid.grid-4-col,.hub-page .hub-plan-pb-row{grid-template-columns:repeat(4,1fr)}.hub-page .hub-grid--spaced{margin-top:var(--widget-gap);width:100%;clear:both}.hub-page .widget-card{display:flex;flex-direction:column;align-items:stretch;text-align:left}.hub-page .plan-card{grid-column:span 2}.hub-page .dna-card,.hub-page .pb-card{grid-column:span 1}.hub-page .predictor-card{grid-column:span 2;width:100%}.hub-page .hub-card-body{flex:1;display:flex;flex-direction:column}.hub-page .hub-card-body--center{justify-content:center}.hub-page .hub-card-body--garage{gap:12px}.hub-page .hub-card-header{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.05)}.hub-page .hub-card-header.widget-section-header{margin-bottom:16px}.hub-widget-header-link{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:inherit;transition:color .2s ease;min-height:28px}.hub-widget-header-link:hover{color:var(--hover-color, #fff)}.hub-widget-header-link:hover .hub-link-cue{opacity:1}.hub-widget-header-link:hover .hub-widget-header-icon{transform:scale(1.05)}.hub-widget-header-static{display:inline-flex;align-items:center;gap:8px;min-height:28px}.hub-widget-header-static .data-tag,.hub-widget-header-link .data-tag{margin-bottom:0;line-height:1}.hub-widget-header-icon{font-size:18px;flex-shrink:0;line-height:1;transition:transform .2s ease}.hub-link-cue{font-size:14px;opacity:.4;margin-left:4px;line-height:1;transition:opacity .2s ease}.hub-page .hub-card-header .inline-action-btn{width:auto;height:24px;padding:0 8px;border-radius:4px;font-size:.55rem;white-space:nowrap}.hub-plan-week-headline{font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#6b7280;margin-bottom:12px;margin-top:auto}.hub-plan-block-started{font-family:JetBrains Mono,monospace;font-size:.65rem;color:#888;font-weight:800;text-transform:uppercase;margin-bottom:12px}.hub-plan-block-started span{color:#fff}.hub-page .hub-plan-stats{margin-top:0}.hub-page .hub-predictor-header{margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:16px;flex-wrap:wrap}.hub-page .hub-predictor-header-left{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-width:0}.hub-page .pred-mode-toggle{background:#ffffff0d;border-radius:6px;padding:2px;display:flex;align-items:center}.hub-page .pred-mode-toggle .pred-tab{width:80px;height:24px;padding:0;border-radius:4px;font-size:.55rem;white-space:nowrap;text-align:center;display:flex;align-items:center;justify-content:center}.hub-page #predictor-selectors{display:flex;gap:12px;align-items:center}.hub-page .hub-predictor-selector{display:flex;align-items:center;background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:6px;height:28px}.hub-page .hub-predictor-selector button{background:transparent;border:none;color:#888;cursor:pointer;padding:0 8px;display:flex;align-items:center;transition:color .2s}.hub-page .hub-predictor-selector button:hover{color:#fff}.hub-page .hub-predictor-selector button .material-symbols-outlined{font-size:16px}.hub-page .hub-predictor-selector-label{font-family:JetBrains Mono,monospace;font-size:.65rem;font-weight:800;color:#fff;width:70px;text-align:center;white-space:nowrap}.hub-page .hub-predictor-selector-label--course{display:flex;align-items:center;justify-content:center;gap:4px}.hub-page .hub-predictor-selector-label--course .material-symbols-outlined{font-size:12px;color:var(--bike)}.hub-widget-header-link--button{background:transparent;border:none;padding:0;cursor:pointer;font:inherit}.hub-page .hub-section-header{flex-direction:row!important;align-items:center!important;justify-content:space-between;margin-bottom:16px;padding-bottom:0;border:none;flex-wrap:nowrap}.hub-page .hub-section-header .hub-ghost-btn{padding:4px 12px;font-size:.6rem;margin:0}@media(max-width:1024px){.hub-page .hub-plan-pb-row{grid-template-columns:repeat(2,1fr)!important}.hub-page .plan-card{grid-column:span 2!important}}@media(max-width:850px){.hub-page .hub-grid.grid-3-col,.hub-page .hub-grid.grid-4-col{grid-template-columns:1fr!important}.hub-page .plan-card,.hub-page .predictor-card{grid-column:span 1!important}.hub-page .hub-plan-pb-row{display:flex!important;flex-direction:column!important}.hub-page .plan-card{order:1}.hub-page .dna-card{order:2}.hub-page .pb-card{order:3}.hub-page .maintenance-row{display:flex!important;flex-direction:column!important}.hub-page .health-card{order:1}.hub-page .pressure-card{order:2}.hub-page .bike-garage-card{order:3}.hub-page .shoe-rack-card{order:4}.hub-page .hub-header{margin-bottom:var(--widget-gap)!important}.hub-page .hub-title{font-size:1.5rem!important}.hub-page .hub-predictor-header{flex-direction:column!important;align-items:stretch!important;gap:16px!important;height:auto!important;flex-wrap:wrap!important;overflow-x:visible!important}.hub-page #predictor-selectors{width:100%;display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-top:0}.hub-page #predictor-selectors>div{flex:1 1 auto;min-width:0;justify-content:space-between}.hub-page .predictor-body>div{grid-template-columns:1fr 1fr!important;gap:20px 16px!important}.hub-page .predictor-body>div>div:last-child{grid-column:span 2;padding-top:16px;border-top:1px solid rgba(255,255,255,.05)}}.hub-page .hub-plan-card-header.widget-section-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.hub-page .hub-plan-card-header .widget-header-primary{width:auto;flex:0 1 auto}.hub-plan-switcher-mount{flex:1 1 160px;min-width:0;max-width:280px;margin-left:auto}.hub-plan-switcher{display:flex;flex-direction:column;align-items:flex-end;gap:4px;width:100%}.hub-plan-switcher-label{font-size:.5rem;color:#555;font-family:JetBrains Mono,monospace;font-weight:800;letter-spacing:1px;text-transform:uppercase}.hub-plan-switcher-select{width:100%;background:#111;color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:8px 10px;font-family:JetBrains Mono,monospace;font-size:.62rem;cursor:pointer}.hub-plan-bike-course .course-cta-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.hub-plan-bike-course .course-cta-or{color:#666;font-family:JetBrains Mono,monospace;font-size:.62rem;font-weight:800;letter-spacing:1px;text-transform:uppercase}.hub-plan-bike-course .course-cta-or[hidden]{display:none}.hub-plan-bike-course .course-dropzone,.hub-plan-bike-course .course-library-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;border-radius:8px;padding:6px 8px;font-family:JetBrains Mono,monospace;font-size:.62rem;font-weight:800;letter-spacing:1px;text-transform:uppercase;cursor:pointer;transition:all .2s}.hub-plan-bike-course .course-dropzone{color:var(--bike, #00ffc3)}.hub-plan-bike-course .course-dropzone:hover{background:#00ffc31f}.hub-plan-bike-course .course-dropzone .material-symbols-outlined{font-size:18px}.hub-plan-bike-course .course-library-btn{color:var(--swim, #00d2ff)}.hub-plan-bike-course .course-library-btn:hover{background:#00d2ff1f}.hub-plan-bike-course .course-library-btn .material-symbols-outlined{font-size:18px}.hub-plan-bike-course .course-library-btn[hidden]{display:none}.hub-plan-bike-course-linked{font-size:.62rem;color:#666;font-family:JetBrains Mono,monospace;font-weight:800;letter-spacing:.04em;margin-bottom:2px}.hub-plan-bike-course-linked button{background:none;border:none;padding:0;margin:0;color:#666;font:inherit;letter-spacing:inherit;font-weight:800;cursor:pointer}.hub-plan-bike-course-linked .hub-plan-course-name{color:var(--bike, #00ffc3)}.hub-plan-bike-course-linked .hub-plan-course-unlink:hover{color:#aaa}
