.extraction-review{background:#e7eff8;border:1px solid #B9CDDF;border-radius:12px;padding:16px;margin-bottom:24px;color:var(--navy);font-size:13px}.extraction-review strong{font-size:15px}.extraction-review p{margin:7px 0;color:var(--muted);line-height:1.45}.extraction-review ul{margin:10px 0;padding-left:20px;line-height:1.55}.extraction-sources{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.extraction-review a,.new-distance-fields .state-hint a{color:var(--blue);font-weight:700}.race-overview{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px}.race-overview-facts{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:14px}.race-overview-facts>div{display:grid;gap:4px;min-width:0}.race-overview-facts span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.race-overview-facts b{font:700 21px Barlow Condensed,sans-serif;overflow-wrap:anywhere}.race-location-link{color:var(--blue);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:2px;justify-self:start}.race-location-link:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:2px}.race-overview .race-resource-links{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.distance-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.distance-section .distance-section-heading h2,.manual-form .distance-section-heading h2{margin:0}.distance-add-link{border:0;background:transparent;color:var(--blue);font-size:13px;font-weight:700;padding:9px 4px}.distance-add-link:disabled{opacity:.5}.distance-section .distance-options,.manual-form .distance-options{flex-wrap:nowrap;overflow-x:auto;padding:0 0 7px;scrollbar-width:thin}.distance-options button{min-width:112px;flex:none;text-align:left}.distance-options button:focus-visible,.distance-add-link:focus-visible,.season-month-race:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.distance-workspace{display:grid;gap:18px;background:#ebeff3;border:1px solid var(--line);border-radius:16px;padding:20px}.distance-workspace-heading h2{font-size:30px;margin:0}.distance-workspace-heading .eyebrow{margin-bottom:4px}.distance-workspace .detail-stats{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.distance-workspace .elevation-empty-action{background:#fff;border-radius:12px;padding:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:13px}.distance-workspace .detail-section,.distance-workspace .detail-panel{margin:0}.distance-links{display:flex;gap:8px;flex-wrap:wrap}.race-edit-form h3:not(:first-child){margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.new-distance-fields{margin:12px 0;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--ground)}.manual-form>.distance-section-heading{margin-top:30px}.season-months{margin-top:22px;border-top:1px solid rgba(255,255,255,.2);padding-top:20px}.season-months>h3{font-size:22px;margin-bottom:10px}.season-months>p{color:#c9d3e3;font-size:13px}.season-month-group{border:1px solid var(--line);border-radius:12px;margin:10px 0;overflow:hidden;background:#fff;color:var(--ink)}.season-month-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#ebeff3}.season-month-heading h4{font:700 19px Barlow Condensed,sans-serif;margin:0}.season-month-heading span{font-size:12px;color:var(--muted)}.season-month-race{width:100%;display:flex;align-items:center;gap:12px;padding:11px 16px;text-align:left;border:0;border-top:1px solid var(--line);background:#fff;color:var(--ink)}.season-month-race:hover{background:#f5f7f9}.season-month-date{min-width:48px;font-size:11px;color:var(--muted)}.season-month-race b{flex:1;min-width:0;font-size:13px}.season-month-race small{font-size:12px;color:var(--muted);font-weight:500}.season-month-counts{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.season-month-counts .status-badge{white-space:nowrap;margin:0}@media(max-width:700px){.race-overview-facts{grid-template-columns:1fr}.distance-workspace{padding:14px}.distance-workspace .detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.distance-workspace .detail-stats b{font-size:20px}.season-month-heading{align-items:flex-start;flex-direction:column;gap:2px}.season-month-race{display:grid;grid-template-columns:48px minmax(0,1fr);gap:5px 8px}.season-month-counts{grid-column:2}}:root{--navy:#12305A;--blue:#1D4E89;--yellow:#D89A1C;--ground:#F2F1EC;--ink:#12203A;--muted:#56607A;--line:#D8DBE2;--white:#fff}*{box-sizing:border-box}html,body{margin:0;background:var(--ground);color:var(--ink);font-family:Work Sans,sans-serif}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{height:72px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1120px)/2));position:sticky;top:0;z-index:10}.brand{border:0;background:none;color:#fff;font-family:Barlow Condensed;font-weight:700;font-size:22px;letter-spacing:.04em;display:flex;gap:12px;align-items:center}.mark{display:grid;place-items:center;background:var(--yellow);color:var(--navy);width:34px;height:34px;border-radius:8px}.avatar,.member-avatar{display:grid;place-items:center;border:2px solid rgba(255,255,255,.6);background:#e4ecf6;color:var(--navy);font-weight:700;border-radius:50%;width:40px;height:40px}.avatar{border-color:#fff}.page{max-width:1120px;margin:auto;padding:54px 24px 120px}.narrow{max-width:780px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:32px}h1,h2,h3{font-family:Barlow Condensed,sans-serif;margin-top:0}h1{font-size:clamp(40px,7vw,58px);line-height:.95;margin-bottom:16px}h2{font-size:26px}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700;color:var(--blue);margin:0 0 10px}.lead{color:var(--muted);font-size:18px;line-height:1.55}.muted{color:var(--muted)}.small{font-size:13px;color:var(--muted);text-align:center}.login-screen{min-height:100vh;display:grid;place-items:center;padding:32px;background:linear-gradient(135deg,var(--ground) 0 62%,#E2E8EE 62%)}.login-card{width:min(440px,100%);padding:40px;background:#fff;border-radius:20px;box-shadow:0 20px 60px #12305a1f}.mountain-mark{font-size:42px;color:var(--yellow)}label{display:grid;gap:8px;font-size:13px;font-weight:600;margin:20px 0}input{height:50px;border:1px solid #C9CED8;border-radius:10px;padding:0 14px;background:#fff;color:var(--ink)}input:focus{outline:3px solid #DCE7F4;border-color:var(--blue)}.primary,.secondary,.yellow{border:0;border-radius:10px;padding:13px 18px;font-weight:600}.primary{background:var(--blue);color:#fff}.secondary{background:#fff;color:var(--navy);border:1px solid #C9CED8}.yellow{background:var(--yellow);color:#231800}.wide{width:100%}.or{display:flex;gap:10px;align-items:center;color:#8a92a6;font-size:12px;margin:18px 0}.or span{height:1px;background:var(--line);flex:1}.segmented{display:inline-flex;background:#e5e4df;border-radius:11px;padding:4px;margin-bottom:22px}.segmented button{border:0;background:none;border-radius:8px;padding:9px 24px;text-transform:capitalize}.segmented .active{background:#fff;color:var(--blue);box-shadow:0 1px 3px #bbc0c8}.race-list{display:grid;gap:12px}.race-row{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:18px;display:grid;grid-template-columns:66px 1fr auto 20px;align-items:center;text-align:left;gap:18px;color:var(--ink)}.race-row:hover{border-color:var(--blue);transform:translateY(-1px)}.date-tile{height:64px;border-radius:10px;background:var(--ground);display:grid;place-content:center;text-align:center}.date-tile b{font:700 28px/1 Barlow Condensed}.date-tile span{text-transform:uppercase;font-size:11px}.race-copy h2{margin:5px 0}.race-copy p,.member-row p{margin:0;color:var(--muted);font-size:13px}.target{color:#7a5200;background:#fff1c9;font-size:10px;font-weight:700;letter-spacing:.08em;padding:5px 8px;border-radius:5px}.votes{display:grid;text-align:center}.votes b{font:700 24px Barlow Condensed}.votes span{font-size:11px;color:var(--muted)}.chevron{font-size:28px;color:var(--muted)}.back{border:0;background:none;color:var(--blue);font-weight:600;padding:12px 0;margin-bottom:28px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin:30px 0}.stats div{background:#fff;padding:22px;display:grid}.stats b{font:700 26px Barlow Condensed}.stats span{font-size:12px;color:var(--muted)}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;margin:18px 0}.choice-row{display:flex;gap:10px;flex-wrap:wrap}.choice-row button,.role{border:1px solid #C9CED8;background:#fff;border-radius:9px;padding:10px 14px}.choice-row .active{background:#e4ecf6;border-color:var(--blue);color:var(--blue);font-weight:700}.action-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.action-card p{margin:0;color:var(--muted)}.form-card{padding:28px}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checklist h3{grid-column:1/-1}.checklist span{background:#fff;border:1px solid var(--line);padding:14px;border-radius:10px}.season-card{background:var(--navy);color:#fff;border-radius:18px;padding:30px;overflow:hidden}.season-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px}.season-grid>div{background:#ffffff1a;padding:18px;border-radius:12px;display:grid;justify-items:start;gap:10px}.invite{display:flex;gap:10px;align-items:center}.invite code{flex:1;background:var(--ground);padding:15px;border-radius:8px;overflow:auto}.member-row{display:grid;grid-template-columns:45px 1fr auto auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}.notice{background:#eef5e7;color:#365826;padding:12px;border-radius:8px}.bottom-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);display:flex;justify-content:center;padding:max(8px,env(safe-area-inset-bottom));gap:5vw}.bottom-nav button{border:0;background:none;color:var(--muted);font-size:11px;display:grid;gap:4px;place-items:center;padding:6px}.bottom-nav button span{font-size:20px}.bottom-nav .active{color:var(--blue);font-weight:700}@media(max-width:700px){.topbar{height:62px;padding:0 16px}.page{padding:32px 16px 105px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading .primary{width:100%}.race-row{grid-template-columns:52px 1fr auto 12px;padding:12px;gap:10px}.date-tile{height:52px}.date-tile b{font-size:24px}.race-copy h2,.votes b{font-size:18px}.stats{grid-template-columns:1fr}.action-card{align-items:stretch;flex-direction:column}.season-grid,.checklist{grid-template-columns:1fr}.login-screen{padding:16px;background:var(--ground)}.login-card{padding:28px 22px}.bottom-nav{gap:2vw}.bottom-nav button{font-size:9px}.invite{align-items:stretch;flex-direction:column}}.season-stats{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0 16px;padding:12px 16px;background:#ffffff0d;border-radius:12px;flex-wrap:wrap}.season-navigation{display:flex;align-items:center;gap:12px}.season-navigation b{font-size:22px;font-family:Barlow Condensed,sans-serif}.season-navigation button{border:0;background:#ffffff1a;color:#fff;width:32px;height:32px;border-radius:6px;display:grid;place-items:center;font-size:20px}.season-summary{margin:0;font-size:13px;color:#cfd9e8}.season-matrix-wrap{margin:0 -30px;overflow-x:auto;-webkit-overflow-scrolling:touch}.season-matrix{min-width:680px;padding:0 30px}.matrix-header{display:flex;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.matrix-corner{width:160px;flex-shrink:0}.matrix-month{flex:1;text-align:center;font-size:10px;font-weight:700;letter-spacing:.05em;color:#8596b0}.matrix-row{display:flex;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.05)}.matrix-member{width:160px;flex-shrink:0;display:flex;align-items:center;gap:10px}.matrix-member img,.matrix-member span{width:32px;height:32px;border-radius:50%;object-fit:cover;background:#e4ecf6;color:var(--navy);display:grid;place-items:center;font-size:11px;font-weight:700;flex-shrink:0}.matrix-member>div{flex:1;min-width:0}.matrix-member b{font-size:13px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matrix-member p{margin:0;font-size:11px;color:#8596b0}.matrix-cell{flex:1;display:grid;place-items:center}.cell-entries{display:flex;flex-wrap:wrap;gap:2px;justify-content:center;max-width:24px}.entry-dot{width:10px;height:10px;border-radius:3px}.entry-dot.registered{background:var(--blue);border:1px solid rgba(255,255,255,.2)}.entry-dot.interested{border:1.5px solid var(--blue);background:transparent}.entry-dot.is-team-target{background:var(--yellow);border-color:var(--yellow)}.entry-dot.is-team-target.interested{background:transparent;border:1.5px solid var(--yellow)}.season-legend .entry-dot.is-team-target.registered,.matrix-cell .entry-dot.is-team-target.registered{background:var(--yellow);border-color:var(--yellow)}.form-error{background:#fde8e8;color:#8b1e1e;border-radius:8px;padding:11px 13px;font-size:13px}button:disabled{cursor:not-allowed;opacity:.62}.month-view,.year-view{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.month-title{display:flex;align-items:center;justify-content:center;gap:24px}.month-title button{border:0;background:none;font-size:28px}.weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}.weekdays span{font-size:10px;color:var(--muted);padding:10px;text-align:center}.month-grid>div{min-height:86px;border-top:1px solid var(--line);padding:8px;font-size:12px}.month-grid button{display:block;border:0;background:#fff1c9;color:#5a3d00;border-radius:6px;margin-top:6px;padding:5px;width:100%;font-size:10px;text-align:left}.event-day{background:#fff9ea}.year-view{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:transparent;border:0;padding:0}.year-view article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;min-height:120px}.year-view h3{margin-bottom:12px}.year-view p{font-size:12px;color:var(--blue);font-weight:600}.year-view span{font-size:11px;color:var(--muted)}@media(max-width:700px){.year-view{grid-template-columns:repeat(1,1fr)}.month-view{padding:10px}.month-grid>div{min-height:58px;padding:2px}.month-grid button{font-size:8px;padding:3px}.weekdays span{padding:7px 2px;font-size:8px}}.race-row.target-race{border-color:var(--yellow);border-left:4px solid var(--yellow);background:#fbf3e0}.race-row.target-race:hover{border-color:#ad760e}.status-badge{display:inline-flex;align-items:center;width:max-content;padding:4px 9px;margin-top:8px;border-radius:999px;background:#e4ecf6;color:var(--blue);font-size:11px;font-weight:700;white-space:nowrap}.status-badge.registered{background:var(--blue);color:#fff}.state-hint{font-size:12px;color:var(--muted);margin:12px 0 0}.month-title button,.year-navigation button{color:var(--blue);min-width:36px;min-height:36px;border-radius:8px}.month-title button:hover,.year-navigation button:hover{background:#e4ecf6}.month-grid .empty-day{background:#f8f8f5}.month-grid button{background:#e4ecf6;color:var(--blue);overflow:hidden;text-overflow:ellipsis}.month-grid button.target-event{background:#fbf3e0;color:#7a5200;border-left:3px solid var(--yellow)}.year-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;flex-wrap:wrap}.year-navigation{display:flex;align-items:center;gap:18px}.year-navigation h2{margin:0;font-size:30px}.year-navigation button{border:0;background:transparent;font-size:28px}.year-scopes{display:flex;gap:8px}.year-scopes button{border:1px solid #C9CED8;background:#fff;color:var(--ink);border-radius:999px;padding:8px 13px;font-size:13px;font-weight:600}.year-scopes button.active{background:var(--blue);color:#fff;border-color:var(--blue)}.year-view{display:flex;flex-direction:column;gap:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 18px}.year-month{display:flex;gap:12px;padding:8px 0;min-height:48px;border-bottom:1px solid #EDF0F3}.year-month:last-child{border-bottom:0}.year-month-label{width:40px;flex-shrink:0;padding-top:9px;font:700 17px Barlow Condensed,sans-serif;letter-spacing:.04em;color:#9aa1b2}.year-month-label.with-events{color:var(--ink)}.year-month-events{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.year-event{width:100%;display:flex;align-items:center;gap:9px;min-height:42px;text-align:left;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:10px;background:#fff;color:var(--ink);padding:5px 9px;font-size:13px}.year-event.target-event{border-color:var(--yellow);border-left:4px solid var(--yellow);background:#fbf3e0}.year-event>b{font:700 18px Barlow Condensed,sans-serif;min-width:22px}.year-event-name{flex:1;min-width:0;display:flex;align-items:center;gap:5px;font-weight:600;line-height:1.2}.target-star{color:var(--yellow);font-size:16px}.year-event .status-badge{margin:0;flex-shrink:0}@media(max-width:700px){.year-view{display:flex;padding:10px 8px}.year-toolbar{align-items:flex-start}.year-event{gap:6px;font-size:11px}.year-event .status-badge{font-size:10px;padding:3px 6px}.year-month{gap:7px}.year-month-label{width:35px;font-size:15px}.month-grid button{font-size:9px;line-height:1.2}.month-title h2{font-size:22px}}.calendar-filters{display:flex;gap:8px;flex-wrap:wrap;margin:-8px 0 22px}.calendar-filters button{min-height:38px;padding:8px 13px;border-radius:999px;border:1px solid #C9CED8;background:#fff;color:var(--ink);font-size:13px;font-weight:600}.calendar-filters button.active{background:var(--blue);border-color:var(--blue);color:#fff}.calendar-filters button:first-child.active{background:#fbf3e0;color:#7a5200;border-color:var(--yellow)}.calendar-empty{margin:12px 0 18px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--muted);font-size:14px}.race-detail{min-height:100vh;padding-bottom:94px}.race-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:#fff}.race-hero-image{position:absolute;z-index:0;inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px);object-fit:cover;filter:blur(3px) saturate(1.1)}.race-hero.has-image:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,#0e1f3994,#0e1f3963 65%,#0e1f3940)}.race-hero-inner{position:relative;z-index:2;max-width:780px;margin:auto;padding:12px 24px 28px}.race-hero-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.race-hero-actions button{display:grid;place-items:center;border:0;background:none;color:#fff;width:44px;height:44px;border-radius:50%;font-size:34px;line-height:1}.race-hero-actions button:hover{background:#ffffff20}.race-hero-badge{display:inline-block;border-radius:999px;padding:4px 10px;background:#ffffff29;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em}.race-hero-badge.is-target{background:var(--yellow);color:var(--navy)}.race-hero h1{font-size:clamp(36px,6vw,46px);line-height:1.02;margin:10px 0;text-shadow:0 2px 10px rgba(6,19,37,.55)}.race-hero p{margin:0;color:#c9d3e3;font-size:12px}.race-detail-body{max-width:780px;margin:auto;padding:20px 24px 32px;display:grid;gap:20px}.detail-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-stats>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:3px;min-width:0}.detail-stats span{font-size:12px;color:var(--muted)}.detail-stats b{font:700 24px Barlow Condensed,sans-serif;overflow-wrap:anywhere}.detail-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.detail-panel-heading,.detail-section h2{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-family:Work Sans,sans-serif;font-weight:600;margin:0 0 10px}.elevation-panel p{min-height:70px;display:grid;place-items:center;margin:0;color:var(--muted);font-size:13px;background:#f5f7fa;border-radius:8px}.race-resources{display:flex;align-items:center;justify-content:space-between;gap:8px 14px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px}.race-resource-place{flex:1 1 140px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;color:var(--muted)}.race-resource-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.race-resource-links a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--blue);font-size:12px;font-weight:600;text-align:center;text-decoration:none;white-space:nowrap}.race-resource-links a.resource-primary{background:var(--blue);border-color:var(--blue);color:#fff}.race-resource-links a:focus-visible{outline:3px solid var(--blue);outline-offset:2px}@media(max-width:700px){.race-resource-place{flex-basis:100%}.race-resource-links{width:100%}.race-resource-links a{flex:1 1 auto}}.detail-section h2{margin-bottom:10px}.distance-options{display:flex;gap:8px;flex-wrap:wrap}.distance-options span,.distance-options button{padding:8px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;cursor:pointer}.distance-options span.selected,.distance-options button.selected{background:var(--navy);color:#fff;border-color:var(--navy)}.distance-options button small{display:block;font-size:10px;font-weight:500;opacity:.75}.elevation-panel svg{display:block;width:100%;height:110px}.detail-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.detail-panel-heading>span{font-size:12px;color:var(--muted)}.detail-status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;background:transparent}.detail-status button{min-height:50px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-size:14px;font-weight:600;box-shadow:0 1px 3px #12203a0f;transition:background .15s,border-color .15s,box-shadow .15s}.detail-status button.active{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:0 3px 9px #1d4e8933}.state-hint{text-align:center}.elevation-empty-action{display:flex;justify-content:flex-end}@media(max-width:700px){.calendar-filters button:last-child{grid-column:1/-1}.detail-status{gap:10px}.detail-status button{min-height:52px}.elevation-empty-action .secondary{width:100%}}.athlete-list{padding:0}.athlete-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid #ECEEF2}.athlete-row:last-child{border:0}.athlete-avatar{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:50%;background:var(--blue);color:#fff;font-size:12px;font-weight:600}.athlete-row b{flex:1;min-width:0;font-size:14px;font-weight:500}.athlete-row small{font-size:12px}.athlete-row .status-badge{margin:0}.athlete-list>p{padding:16px;margin:0;color:var(--muted);font-size:13px}@media(max-width:700px){.race-hero-inner{padding:12px 20px 24px}.race-detail-body{padding:20px 20px 30px}.race-hero h1{font-size:38px}.page-heading{margin-bottom:24px}}.bottom-nav{height:calc(80px + env(safe-area-inset-bottom));padding:0 16px env(safe-area-inset-bottom);gap:0;align-items:center}.bottom-nav-inner{width:min(390px,100%);height:100%;display:flex;align-items:center;justify-content:space-around}.bottom-nav-inner>button:not(.nav-suggest){flex:1;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:0;border:0;background:none;color:var(--muted);font-size:12px;font-weight:500}.bottom-nav-inner>button:not(.nav-suggest).active{color:var(--blue);font-weight:600}.bottom-nav-inner svg{width:24px;height:24px}.bottom-nav-inner .nav-suggest{flex:0 0 60px;width:60px;height:60px;margin:-30px 0 0;border-radius:50%;border:4px solid white;background:var(--yellow);color:var(--ink);box-shadow:0 6px 16px #12203a47;display:grid;place-items:center;padding:0}.bottom-nav-inner .nav-suggest svg{width:26px;height:26px}.bottom-nav-inner .nav-suggest.active{background:#c88b12}.bottom-nav-inner>button:focus-visible,.gpx-upload:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gpx-upload{display:block;margin:14px auto 0;border:1px solid var(--blue);background:#fff;color:var(--blue);padding:9px 16px;border-radius:10px;font-size:13px;font-weight:700}.manual-form .muted{margin:0 0 14px;font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.manual-form input{width:100%}.team-title{display:flex;align-items:center;gap:14px}.team-title img,.team-title .mark{width:52px;height:52px;object-fit:contain;border-radius:10px;background:#fff;color:var(--navy);flex-shrink:0}.team-title h2{margin:0 0 4px}.team-title p{margin:0;color:#cfd9e8}.team-tools{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}.brand-logo{width:34px;height:34px;object-fit:contain;border-radius:8px;background:#fff}.logo-preview{border:1px solid var(--line);background:var(--ground);border-radius:10px;padding:12px;width:max-content;max-width:100%}.logo-preview img{max-width:150px;max-height:90px;object-fit:contain}.user-menu-trigger{border:0;background:none;padding:0;border-radius:24px;position:relative;cursor:pointer;display:flex;align-items:center;gap:10px;color:#fff;font-weight:600;font-size:14px}.user-menu-trigger img{width:40px;height:40px;border:2px solid rgba(255,255,255,.6)}.topbar-user-initials{font:700 17px Barlow Condensed,sans-serif;letter-spacing:.04em}.topbar-team-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .brand{min-width:0;text-align:left}.topbar .user-menu-wrap{flex-shrink:0;margin-left:12px}@media(max-width:700px){.topbar{padding:0 16px}.topbar .brand{font-size:19px;gap:8px}.topbar-team-name{max-width:calc(100vw - 188px)}}.user-menu-trigger:focus-visible{outline:3px solid #DCE7F4;outline-offset:2px}.user-menu-wrap{position:relative}.user-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px #12203a1a;width:220px;padding:8px;display:flex;flex-direction:column;gap:4px;z-index:30;color:var(--ink)}.user-menu-header{padding:12px;border-bottom:1px solid var(--line);margin-bottom:4px;display:flex;flex-direction:column;gap:2px}.user-menu-header b{font-size:14px;font-weight:600}.user-menu-header span{font-size:12px;color:var(--muted)}.user-menu button{border:0;background:none;padding:10px 12px;text-align:left;border-radius:8px;font-size:13px;font-weight:500;color:var(--ink);display:flex;align-items:center;gap:10px}.user-menu button:hover{background:var(--ground)}.user-menu button.logout{color:#d93025;margin-top:4px;border-top:1px solid var(--line);border-radius:0 0 8px 8px}.race-management h2{margin:0 0 12px;font-size:22px}.race-management-actions{display:flex;flex-wrap:wrap;gap:10px}.race-management-actions button{min-height:44px;padding:8px 14px}.race-delete{border:1px solid #B43C39;border-radius:10px;color:#a52f2c;background:#fff;font-weight:600}.race-edit-form{margin-top:16px;border-top:1px solid var(--line);padding-top:4px}.role-badge{display:inline-block;padding:3px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#e4ecf6;color:var(--blue)}.role-badge.admin{background:#fff1c9;color:#7a5200}.profile-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px}.profile-card form{width:100%;text-align:left}.profile-card select{width:100%;height:44px;border:1px solid #C9CED8;border-radius:10px;padding:0 12px;background:#fff;color:var(--ink)}.profile-card select:focus{outline:3px solid #DCE7F4;border-color:var(--blue)}.profile-card .form-grid{width:100%;text-align:left}.category-result{background:#e4ecf6;border-radius:10px;padding:12px 14px;color:var(--navy);font-size:13px;text-align:left}.category-result strong{font-size:17px}.category-explanation{font-size:12px;line-height:1.5;color:var(--muted);text-align:left}.matrix-member .category-badge{display:inline-block;margin-left:3px;border-radius:5px;padding:1px 4px;font-size:9px;font-weight:700;background:#e7eff8;color:var(--blue);vertical-align:middle}.profile-avatar{width:80px;height:80px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font:700 28px Barlow Condensed;letter-spacing:.04em;overflow:hidden}img.member-avatar,img.athlete-avatar,.profile-avatar img,.user-menu-trigger img{object-fit:cover;border-radius:50%}.profile-avatar img{width:100%;height:100%}.image-upload{display:flex;flex-direction:column;gap:6px;padding:16px;background:#f9fafb;border:1px dashed #C9CED8;border-radius:12px;font-size:13px;margin:12px 0;width:100%;text-align:left}.image-upload label{margin:0;color:var(--blue);cursor:pointer;font-weight:700}.image-upload small{color:var(--muted);font-weight:400}.image-upload input{height:auto;padding:0;border:0;background:none;border-radius:0;outline:none}.invite-panel{background:var(--navy);color:#fff;border-radius:16px;padding:24px;display:grid;gap:16px}.invite-panel,.invite-panel .invite{min-width:0;max-width:100%}.invite-panel .invite code{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-all;white-space:normal}.invite-panel h3{font-size:24px;margin:0}.invite-panel p{color:#cfd9e8;font-size:14px;margin:0}.invite-status{display:flex;align-items:center;gap:8px;padding:12px;background:#ffffff1a;border-radius:10px;font-size:13px}.pending-list{display:grid;gap:8px;margin-top:16px}.pending-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:12px}.pending-row>div:first-child{display:grid;gap:2px}.pending-row>div:last-child{display:flex;gap:8px}.pending-row b{font-size:14px}.pending-row small{font-size:12px;color:var(--muted)}.pending-row button{padding:8px 14px;font-size:12px}.role-hint{font-size:11px;color:var(--muted);text-align:right}.member-info{min-width:0}.member-info b{overflow-wrap:anywhere}.member-info .member-category{margin:4px 0 0;color:var(--blue);font-size:12px;font-weight:700}.member-info p{margin-top:2px}.member-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.member-actions button{min-height:40px;font-size:12px;font-weight:700;padding:7px 10px}.member-remove{border:1px solid #B43C39;border-radius:9px;background:#fff;color:#a52f2c}.member-remove:hover:not(:disabled){background:#fcebe9}.member-actions button:disabled{opacity:.55;cursor:not-allowed}.member-actions button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}@media(max-width:700px){.member-row .member-actions{grid-column:2/-1;justify-content:flex-start}.member-row .role-hint,.member-row .role{grid-column:auto;text-align:left}}.invitation-card{background:#e4ecf6;border:1px solid var(--blue);border-radius:12px;padding:20px;text-align:center;margin-bottom:24px}.invitation-card p{color:var(--navy);font-size:14px;margin:0;font-weight:600}.login-team-logo{width:112px;height:112px;border-radius:12px;background:var(--ground);display:grid;place-items:center;margin-bottom:4px;overflow:hidden}.login-team-logo img{display:block;width:100%;height:100%;object-fit:contain}.login-error{color:#a12620;font-size:14px;margin:0 0 18px}.login-error button{border:0;background:none;color:var(--blue);text-decoration:underline;padding:0}.toast-overlay{position:fixed;bottom:max(80px,calc(80px + env(safe-area-inset-bottom)));left:0;right:0;z-index:100;display:flex;justify-content:center;padding:16px;pointer-events:none}.toast{pointer-events:auto;background:var(--navy);color:#fff;padding:12px 16px;border-radius:12px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:16px;box-shadow:0 8px 24px #12203a33;animation:slide-up .3s cubic-bezier(.16,1,.3,1)}.toast button{background:none;border:0;color:#fff9;padding:4px;margin:-4px;border-radius:50%;display:grid;place-items:center}.toast-error{background:#d93025}.calendar-controls{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:-5px 0 16px}.calendar-controls .calendar-view-switch{margin:0;padding:3px;border-radius:9px;flex:none}.calendar-controls .calendar-view-switch button{min-height:36px;padding:6px 12px;font-size:12px;border-radius:7px}.calendar-controls .calendar-filters{display:flex;align-items:center;gap:5px;margin:0}.calendar-controls .calendar-filters button{min-height:36px;padding:6px 10px;font-size:11px;white-space:nowrap}.admin-import-entry{display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-import-entry h3{margin:0 0 5px;font-size:23px}.admin-import-entry p{margin:0;color:var(--muted);font-size:13px}.admin-import-entry button{flex:none}.import-page .lead{font-size:15px;margin-bottom:20px}.import-step{display:flex;align-items:flex-start;gap:13px;margin:20px 0 12px}.import-step>span{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:#e4ecf6;color:var(--blue);font-size:13px;font-weight:700}.import-step h2{font-size:21px;margin:0 0 5px}.import-step p{font-size:13px;color:var(--muted);line-height:1.5;margin:0}.import-upload .secondary{margin:2px 0 10px}.import-file-label{display:inline-flex;align-items:center;background:var(--blue);color:#fff;border-radius:9px;padding:11px 16px;font-size:13px;cursor:pointer;margin:4px 0}.import-file-label:focus-within{outline:3px solid #DCE7F4}.import-file-label input{position:absolute;width:1px;height:1px;padding:0;opacity:0}.import-upload>.muted{font-size:12px;overflow-wrap:anywhere}.import-error,.profile-error{border-radius:9px;background:#fcebe9;color:#84231e;padding:12px 14px;font-size:13px;line-height:1.5}.import-error p{margin:0 0 4px}.import-table-wrap{max-width:100%;overflow-x:auto;margin:14px 0 18px;border:1px solid var(--line);border-radius:10px}.import-table-wrap table{border-collapse:collapse;width:100%;min-width:590px;font-size:12px;text-align:left}.import-table-wrap th,.import-table-wrap td{padding:10px;border-bottom:1px solid var(--line);vertical-align:top}.import-table-wrap th{background:#f4f6f8;color:var(--muted);white-space:nowrap}.import-table-wrap tr:last-child td{border-bottom:0}.import-table-wrap tr.invalid{background:#fff5f3;color:#84231e}.import-table-wrap th:last-child,.import-table-wrap td:last-child{position:sticky;right:0;background:#fff}.import-table-wrap th:last-child{background:#f4f6f8}.import-table-wrap tr.invalid td:last-child{background:#fff5f3}.import-row-remove{min-height:36px;border:1px solid #B43C39;border-radius:8px;padding:6px 10px;background:#fff;color:#a52f2c;font-size:12px;font-weight:700;white-space:nowrap}.import-row-remove:hover:not(:disabled){background:#fcebe9}.import-row-remove:disabled{opacity:.5;cursor:not-allowed}.import-row-remove:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.race-removal-dialog{width:min(440px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);padding:26px;box-shadow:0 24px 72px #12203a47}.race-removal-dialog::backdrop{background:#12305a99}.race-removal-icon{width:38px;height:38px;border-radius:11px;background:#fcebe9;color:#a52f2c;font-size:23px;font-weight:700;display:grid;place-items:center;margin-bottom:14px}.race-removal-dialog h2{font:700 28px/1.1 Barlow Condensed,sans-serif;margin:0 0 12px}.race-removal-dialog p{font-size:14px;line-height:1.5;color:var(--muted);margin:0 0 22px;overflow-wrap:anywhere}.race-removal-dialog p strong{color:var(--ink)}.race-removal-dialog .profile-error{color:#84231e;margin-bottom:16px}.race-removal-actions{display:flex;justify-content:flex-end;gap:10px}.race-removal-actions button{min-height:44px;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:700}.race-removal-confirm{border:0;background:#b43c39;color:#fff}.race-removal-confirm:hover:not(:disabled){background:#a52f2c}.race-removal-confirm:disabled{opacity:.6;cursor:not-allowed}.race-removal-actions button:focus-visible{outline:3px solid var(--blue);outline-offset:2px}@media(max-width:440px){.race-removal-dialog{padding:20px}.race-removal-actions button{flex:1}}.import-preview .primary:disabled{opacity:.5;cursor:not-allowed}@media(max-width:700px){.admin-import-entry{align-items:stretch;flex-direction:column}.calendar-controls{gap:8px}.calendar-controls .calendar-filters button{padding:6px 9px}}@keyframes slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:700px){.bottom-nav button{font-size:12px}.form-grid{grid-template-columns:1fr}.team-tools .secondary{flex:1}.brand{font-size:19px}}.page{padding-top:38px}.page-heading{margin-bottom:22px}h1{font-size:clamp(36px,5vw,50px);margin-bottom:10px}h2{font-size:23px}.card,.form-card{padding:20px}.primary,.secondary,.yellow{font-size:13px;padding:11px 15px}input{height:44px}label{margin:15px 0}.race-list{gap:9px}.race-row{padding:14px;gap:12px}.race-copy{min-width:0}.race-copy h2{font-size:22px;line-height:1.08}.race-copy p{line-height:1.3}.season-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:-6px 0 14px;color:var(--muted);font-size:11px}.season-legend span{display:inline-flex;align-items:center;gap:5px}.season-legend .entry-dot{display:inline-block;flex:none}.matrix-member{border:0;background:transparent;text-align:left;color:var(--ink);cursor:pointer;padding:0 4px 0 0}.matrix-member:focus-visible{outline:2px solid var(--blue);outline-offset:-2px;border-radius:4px}.matrix-member:hover b{text-decoration:underline}.season-breakdown{margin-top:12px;background:#fff;color:var(--ink);border-radius:12px;padding:12px 16px}.season-breakdown-heading{display:flex;justify-content:space-between;align-items:center}.season-breakdown-heading h3{margin:0;font-size:18px}.season-breakdown-heading button{min-width:42px;min-height:42px;border:0;background:transparent;color:var(--ink);font-size:23px}.season-breakdown>p{font-size:12px;color:var(--muted)}.season-breakdown-race{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:8px;align-items:center;border-top:1px solid var(--line);padding:8px 0;font-size:12px}.season-breakdown-race time{color:var(--muted);text-transform:uppercase;font-size:10px}.season-breakdown-race b{min-width:0;overflow-wrap:anywhere}.season-breakdown-race .status-badge{margin:0}.segmented button{min-height:42px}.calendar-filters{margin:-5px 0 16px}.calendar-filters button{min-height:42px}.month-empty{color:var(--muted);text-align:center;font-size:13px;margin:14px 0}.year-event{min-height:44px}.race-row.no-interest,.year-event.no-interest,.month-grid button.no-interest,.season-month-race.no-interest{filter:grayscale(1);background:#f0f1f2;border-color:#d7dbe0;color:#5a626d}.race-row.no-interest .date-tile{background:#e2e4e7}.race-row.target-race.no-interest,.year-event.target-event.no-interest,.month-grid button.target-event.no-interest{border-left-color:#abb1b9}.season-month-race.no-interest:hover{background:#e9ecef}.season-no-interest{font-size:12px;color:#5a626d}.calendar-page .race-row{grid-template-columns:64px minmax(0,1fr) 16px}@media(max-width:700px){.calendar-page .race-row{grid-template-columns:46px minmax(0,1fr)}}.season-card{padding:22px}.season-matrix-wrap{margin:0;background:#fff;color:var(--ink);border-radius:12px;overflow-x:auto}.season-matrix{min-width:0;padding:7px 14px}.matrix-header,.matrix-row{border-color:#eceef2}.matrix-month{color:#56607a}.matrix-member p{color:#687384}.matrix-member .role-badge{display:inline-block;margin-top:2px;font-size:9px;padding:1px 5px}.matrix-cell{min-width:0}.matrix-empty{display:block;width:11px;height:11px;border-radius:2px;background:#eef0f2}.entry-dot.registered{background:var(--blue);border-color:var(--blue)}.entry-dot.interested{border-color:var(--blue)}@media(max-width:700px){.page{padding:20px 14px 100px}.page-heading{gap:10px;margin-bottom:16px}.page-heading .primary{width:auto;min-height:42px}h1{font-size:36px}h2{font-size:21px}.eyebrow{font-size:10px;margin-bottom:6px}.card,.form-card{padding:16px;margin:12px 0}.lead{font-size:14px}.segmented{display:flex;width:100%;margin-bottom:14px}.segmented button{flex:1;padding:8px;min-height:42px;font-size:12px}.calendar-filters{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 14px}.calendar-filters button{min-height:42px;padding:6px;font-size:11px}.race-row{grid-template-columns:46px minmax(0,1fr) auto;gap:8px;padding:10px;min-height:78px}.race-row .chevron{display:none}.date-tile{height:48px}.date-tile b{font-size:22px}.race-copy h2{font-size:16px}.race-copy p{font-size:10px}.race-copy .status-badge{font-size:9px;margin-top:4px;padding:2px 6px}.target{font-size:8px;padding:3px 5px}.votes b{font-size:17px}.votes span{font-size:9px}.month-view{padding:12px}.month-title{gap:8px}.month-title button{min-width:44px;min-height:44px}.weekdays{display:none}.month-grid{display:block}.month-grid>div{display:none}.month-grid>div.event-day{display:grid;grid-template-columns:30px minmax(0,1fr);gap:5px;align-items:center;min-height:50px;padding:5px 0;background:transparent}.month-grid>div.event-day>b{grid-column:1;grid-row:1;align-self:start;padding-top:12px;text-align:center;font-size:14px}.month-grid>div.event-day button{grid-column:2;min-height:44px;margin:0;padding:8px;font-size:11px;white-space:normal}.year-event{gap:6px;padding:7px}.year-event-name{font-size:11px}.year-event-votes{font-size:10px}.season-card{padding:14px}.team-title img,.team-title .mark{width:38px;height:38px}.team-title h2{font-size:20px}.team-title p{font-size:11px}.season-stats{margin:13px 0 10px;padding:8px;gap:8px}.season-summary{font-size:11px}.season-navigation button{width:44px;height:44px}.season-matrix{min-width:0;padding:6px}.matrix-corner,.matrix-member{width:98px}.matrix-header{padding-bottom:6px}.matrix-month{font-size:8px;letter-spacing:0}.matrix-row{min-height:48px;padding:6px 0}.matrix-member{gap:5px}.matrix-member img,.matrix-member span:not(.role-badge){width:24px;height:24px;font-size:8px}.matrix-member b{font-size:10px}.matrix-member p{font-size:8px}.matrix-member .role-badge{font-size:8px;padding:1px 3px}.matrix-empty{width:9px;height:9px}.cell-entries{max-width:16px;gap:1px}.entry-dot{width:8px;height:8px}.member-row{grid-template-columns:36px minmax(0,1fr) auto;gap:8px}.member-row .member-avatar{width:32px;height:32px}.member-row .role-hint{grid-column:2/-1;text-align:left}.member-row .role{grid-column:3}.toast-overlay{padding:10px}.toast{width:min(100%,390px);font-size:12px;line-height:1.35}.toast button{min-width:32px;min-height:32px}.season-legend{gap:8px;font-size:9px;margin:0 0 10px}.season-breakdown{padding:8px}.season-breakdown-race{grid-template-columns:48px minmax(0,1fr);gap:4px}.season-breakdown-race .status-badge{grid-column:2;justify-self:start}}.calendar-page{padding-top:16px}.calendar-page .calendar-controls{margin-top:0}.profile-email{display:grid;gap:5px;background:#e4ecf6;border:1px solid #C9CED8;border-radius:10px;padding:14px 16px;overflow-wrap:anywhere}.profile-email span{font-size:12px;font-weight:700;color:var(--blue)}.profile-email strong{font-size:16px;color:var(--navy)}.strava-card{margin-top:16px}.strava-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.strava-heading h2{margin:0}.strava-heading .eyebrow{margin-bottom:4px}.strava-connected{color:var(--blue);border:1px solid var(--line);padding:5px 9px;border-radius:20px;font-size:12px;font-weight:700}.strava-public-link{display:inline-block;color:var(--blue);font-weight:700;margin:8px 0 16px;text-decoration:underline;text-underline-offset:3px}.strava-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.strava-details{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.strava-details summary{cursor:pointer;color:var(--blue);font-weight:700}.strava-details dl{margin:14px 0 0;display:grid;gap:0}.strava-details dl>div{padding:10px 0;border-bottom:1px solid var(--line)}.strava-details dt{font-size:11px;text-transform:uppercase;font-weight:700;color:var(--muted)}.strava-details dd{margin:4px 0 0;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.bottom-nav{height:calc(60px + env(safe-area-inset-bottom));padding:0 12px env(safe-area-inset-bottom)}.bottom-nav-inner{width:min(340px,100%)}.bottom-nav-inner>button:not(.nav-suggest){min-height:44px;gap:2px;font-size:10px}.bottom-nav-inner>button:not(.nav-suggest) span{font-size:10px;line-height:1.1}.bottom-nav-inner svg{width:20px;height:20px}.bottom-nav-inner .nav-suggest{flex-basis:44px;width:44px;height:44px;margin:-12px 0 0;border-width:3px;box-shadow:0 3px 9px #12203a33}.bottom-nav-inner .nav-suggest svg{width:22px;height:22px}@media(max-width:700px){.page{padding-bottom:80px}.calendar-page{padding-top:12px}}
