:root{--primary: #fa058a;--secondary: #92c2ef;--blue: #1c39bb;--navy: #002147;--background: #f3f8fd;--surface: #ffffff;--ink: #002147;--muted: #3b4d61;--danger: #a11226;--shadow: 0 10px 28px rgba(0, 33, 71, .1)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,#e4f1fd 0%,var(--background) 24rem);color:var(--ink);font:1rem/1.55 Arial,Helvetica,sans-serif}a{color:var(--blue);font-weight:700;text-underline-offset:.2em}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}:focus-visible{outline:3px solid var(--secondary);outline-offset:3px}.app-shell{width:min(100% - 1.25rem,70rem);margin:0 auto;padding:.5rem 0 2rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0 1rem}.brand{display:inline-flex;align-items:center;gap:.65rem;color:var(--navy);font-size:1.15rem;text-decoration:none}.brand-mark{display:inline-block;width:3rem;height:3rem;flex:0 0 auto;border-radius:.6rem;background:var(--surface) url(/build/assets/logo-DsJKTjL-.jpeg) center / contain no-repeat}.lang-switch{display:flex;gap:.2rem;padding:.2rem;border:1px solid rgba(0,33,71,.2);border-radius:999px;background:var(--surface)}.lang-switch a{display:inline-flex;min-width:2.8rem;min-height:2.8rem;align-items:center;justify-content:center;border-radius:999px;color:var(--navy);text-decoration:none}.lang-switch .active{background:var(--navy);color:#fff}.main-nav{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-bottom:1rem;padding:.4rem;border-radius:1rem;background:var(--navy)}.main-nav a,.nav-button{display:inline-flex;min-height:2.8rem;align-items:center;justify-content:center;padding:.5rem .8rem;border:0;border-radius:.75rem;background:transparent;color:#fff;font-size:1rem;text-decoration:none}.main-nav a:hover,.nav-button:hover{background:var(--secondary);color:var(--navy)}.main-nav form{margin:0}.card{margin-bottom:1rem;padding:1.15rem;border:1px solid rgba(0,33,71,.1);border-radius:1.1rem;background:var(--surface);box-shadow:var(--shadow)}.hero{margin-bottom:1rem;padding:1.5rem 1.2rem;border-radius:1.35rem;background:linear-gradient(125deg,#ffeb30,#ffcb00);color:var(--navy);box-shadow:var(--shadow)}.hero h1{margin:0;font-size:clamp(1.8rem,6vw,2.5rem);line-height:1.2}.hero p{max-width:42rem;margin:.8rem 0 0;font-size:1.1rem}.hero-actions{display:grid;gap:.75rem;margin-top:1.25rem}.page-title{margin:0 0 1rem;font-size:clamp(1.6rem,5vw,2.2rem)}.section-title{margin:0 0 .8rem;font-size:1.25rem;line-height:1.3}.section-heading{display:grid;gap:.7rem;margin-bottom:.8rem}.primary-button,.secondary-button,.danger-button{display:inline-flex;width:100%;min-height:3.5rem;align-items:center;justify-content:center;padding:.8rem 1rem;border:2px solid transparent;border-radius:.8rem;font-size:1.05rem;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}.primary-button{background:var(--primary);color:var(--navy)}.primary-button:hover{background:#d90074;color:#fff}.secondary-button{border-color:var(--navy);background:var(--secondary);color:var(--navy)}.secondary-button:hover{background:#b7dcfa}.danger-button{min-height:3rem;border-color:var(--danger);background:#fff;color:var(--danger)}.row-delete-form{justify-self:end}.delete-icon-button{display:inline-grid;width:2.75rem;height:2.75rem;place-items:center;padding:0;border:1px solid transparent;border-radius:.65rem;background:transparent;color:var(--danger);cursor:pointer}.delete-icon-button:hover{border-color:var(--danger);background:#fff1f1}.delete-icon-button:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.delete-icon-button svg{width:1.35rem;height:1.35rem}.form-grid{display:grid;gap:1rem}.overall-leaderboard{display:grid;gap:.75rem}.kilometer-leaderboard{margin-top:.1rem;color:#002147b8;font-size:.85rem}.kilometer-leaderboard h3{margin:0 0 .25rem;font-size:.85rem;font-weight:600}.kilometer-leaderboard ol{display:grid;gap:.15rem;margin:0;padding-left:1.5rem}.kilometer-leaderboard li{display:flex;justify-content:space-between;gap:.75rem}.full-leaderboard-entry{display:grid;grid-template-columns:2.4rem minmax(0,1fr);align-items:center;gap:.75rem}.full-leaderboard-entry .rank{height:1.8rem;color:#fff;text-shadow:0 1px 3px var(--navy),0 0 2px var(--navy)}.full-leaderboard-list{display:grid;gap:.35rem}.overall-leader{display:grid;grid-template-columns:1.8rem minmax(0,1fr);align-items:center;gap:.5rem}.overall-leader .rank{width:1.8rem;height:1.8rem;color:#fff;font-size:.95rem;text-shadow:0 1px 3px var(--navy),0 0 2px var(--navy)}.overall-leader.is-current-user .overall-leader-track{outline:2px solid var(--navy);outline-offset:2px}.overall-leader-name{overflow:hidden;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.overall-leader-track .overall-leader-name{position:absolute;inset:50% 4rem auto .65rem;color:#fff;line-height:1;text-shadow:0 1px 3px var(--navy),0 0 2px var(--navy);transform:translateY(-50%)}.overall-leader-track{position:relative;height:1.5rem;overflow:hidden;border-radius:999px;background:#0021471f}.overall-leader-bar{display:block;height:100%;min-width:0;border-radius:inherit;background:var(--primary)}.overall-leader-points{position:absolute;inset:50% .65rem auto auto;color:var(--navy);font-size:1rem;line-height:1;text-align:right;transform:translateY(-50%)}.overall-leader-points.over-filled-bar{color:#fff}.full-leaderboard-button{width:-moz-fit-content;width:fit-content;min-width:min(100%,15rem);justify-self:center;margin-top:.5rem}.standings-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:.6rem}.standings-layout .card{min-width:0;padding:.75rem .55rem}.standings-layout .leader{grid-template-columns:minmax(0,1fr);gap:.35rem;padding:.55rem .4rem}.leader-identity{display:flex;min-width:0;align-items:flex-start;gap:.6rem}.leader-identity .rank{margin-top:.1rem}.leader-metrics{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;padding-left:3rem}.standings-layout .leader-name{min-width:0;overflow-wrap:anywhere;white-space:normal}.standings-layout .leader-metrics{padding-left:2.2rem}.standings-layout .leader-metrics .points{grid-column:auto;text-align:left;white-space:normal}.standings-layout .rank{width:1.8rem;height:1.8rem;font-size:.95rem}.standings-layout .leader-meta{font-size:.8rem}.standings-layout .points{font-size:.9rem}.statistics-period{margin-top:-.6rem;color:var(--muted)}.rank-change-up .points{color:#176b3a}.rank-change-down .points{color:#a52828}.recent-sessions{margin-top:1rem}.recent-session{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem .75rem;padding:.8rem 0;border-bottom:1px solid rgba(0,33,71,.16)}.recent-session:last-child{border-bottom:0}.recent-session-rower{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-session>:nth-child(2n){text-align:right}.field label{display:block;margin-bottom:.4rem;font-weight:700}.field input,.field select{width:100%;min-height:3.25rem;padding:.75rem .85rem;border:2px solid #6f879f;border-radius:.7rem;background:#fff;color:var(--ink);font-size:1rem}.field-error{margin:.3rem 0 0;color:var(--danger);font-weight:700}.checkbox-field{display:flex;min-height:3rem;align-items:center;gap:.75rem;font-weight:700}.checkbox-field input{width:1.4rem;height:1.4rem;accent-color:var(--blue)}.leaderboard,.table-list{display:grid;gap:.7rem}.leader{display:grid;grid-template-columns:minmax(0,1fr);gap:.75rem;padding:.8rem;border:1px solid rgba(0,33,71,.16);border-radius:.8rem;background:#f8fbff}.leader-identity .rank{flex:0 0 auto}.leader-identity .leader-name{min-width:0;margin:0;overflow-wrap:anywhere;white-space:normal}.leader-metrics .leader-meta{margin:0}.leader-metrics .points{grid-column:auto}.rank{display:inline-flex;width:2.4rem;height:2.4rem;align-items:center;justify-content:center;border-radius:.7rem;background:var(--primary);color:var(--navy);font-size:1.1rem;font-weight:700}.leader-name{margin:0;font-size:1rem}.leader-meta{margin:.15rem 0 0;color:var(--muted)}.points{color:var(--navy);font-size:1.05rem}.row-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem;padding:.85rem;border:1px solid rgba(0,33,71,.16);border-radius:.8rem;background:#f8fbff}.row-item-content{display:grid;min-width:0;gap:.55rem}.row-item p{margin:0}.row-item-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem}.notice{padding:.85rem 1rem;border:1px solid #1e6b37;border-radius:.75rem;background:#effaf2;color:#123e22;font-weight:700}.chart-card{overflow:hidden}.tv-rotation-timer{height:4px;margin-bottom:.5rem;overflow:hidden;border-radius:999px;background:#0021472e}.tv-rotation-timer span{display:block;width:100%;height:100%;transform:scaleX(1);transform-origin:left center;background:var(--primary)}.chart-legend{display:flex;flex-wrap:wrap;gap:.6rem 1rem;margin:1rem 0 0;padding:0;list-style:none}.chart-legend li{display:inline-flex;align-items:center;gap:.4rem}.legend-swatch{width:1rem;height:1rem;flex:0 0 auto;border:1px solid var(--navy);border-radius:.2rem}.weekly-chart{display:grid;gap:.5rem}.chart-row{display:grid;grid-template-columns:3.2rem minmax(0,1fr) 4.5rem;align-items:center;gap:.45rem}.chart-week,.chart-total{font-size:.85rem;font-variant-numeric:tabular-nums}.chart-total{text-align:right}.chart-track{display:flex;height:1.2rem;overflow:hidden;border-radius:.3rem;background:#fce3f0}.account-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-bottom:1rem;padding:.35rem;border-radius:.9rem;background:#fce3f0}.account-card{max-width:36rem;margin-right:auto;margin-left:auto}.account-tab{min-height:3.25rem;padding:.65rem .8rem;border:0;border-radius:.65rem;background:transparent;color:var(--navy);font-weight:700;cursor:pointer}.account-tab[aria-selected=true]{background:var(--primary);color:var(--navy)}.account-panel[hidden]{display:none}.chart-segment{display:block;min-width:2px;height:100%}.install-help{margin:.8rem 0;color:var(--muted)}.site-footer{padding:.5rem .2rem;color:var(--muted);text-align:center}.site-footer p{margin:.5rem 0}.tv-link{margin-top:1rem}.tv-page{min-width:320px}.tv-page .app-shell{width:100%;max-width:none;margin:0;padding:1rem}.tv-page .topbar,.tv-page .main-nav{display:none}.tv-display{min-height:calc(100vh - 2rem)}.tv-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.tv-toolbar h1{margin:0;font-size:clamp(1.4rem,3vw,2.2rem)}.tv-toolbar p{margin:.25rem 0 0;color:var(--muted)}.tv-controls{display:flex;flex-wrap:wrap;gap:.5rem}.tv-controls .secondary-button{width:auto;min-height:2.8rem;padding:.5rem .8rem;font-size:.95rem}.tv-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.tv-panel{min-width:0;min-height:min(76vh,48rem);margin:0;padding:clamp(1rem,2vw,2rem);overflow:hidden}.tv-panel-fade-out{animation:tv-panel-fade-out .45s ease both}.tv-panel-fade-in{animation:tv-panel-fade-in .45s ease both}@keyframes tv-panel-fade-out{to{opacity:0}}@keyframes tv-panel-fade-in{0%{opacity:0}to{opacity:1}}.tv-panel .section-title{margin-bottom:1.25rem;font-size:clamp(1.3rem,2.2vw,2rem)}.tv-panel .overall-leaderboard,.tv-panel .leaderboard{gap:clamp(.75rem,2vh,1.5rem)}.tv-panel .overall-leader{grid-template-columns:2.8rem minmax(0,1fr);gap:.8rem}.tv-panel .overall-leader .rank,.tv-panel .leader .rank{width:2.8rem;height:2.8rem;font-size:1.3rem}.tv-panel .overall-leader-track{height:2.5rem}.tv-panel .overall-leader-track .overall-leader-name{inset-inline-start:1rem}.tv-panel .leader{grid-template-columns:minmax(0,1fr);gap:.5rem;padding:.5rem .8rem}.tv-panel-description{margin:-.75rem 0 1rem;color:var(--muted);font-size:.95rem}.tv-panel .leader .points{grid-column:auto}.tv-panel .leader-metrics{padding-left:3.7rem}.tv-panel .leader-name,.tv-panel .points{font-size:clamp(1.1rem,1.5vw,1.5rem)}.tv-chart-panel,.tv-chart-panel .chart-card{height:100%}.tv-chart-panel .weekly-chart{gap:clamp(.55rem,1.4vh,1rem)}.boat-total-card{height:100%}.boat-total-card .section-title{margin-bottom:.75rem}.boat-total-card{display:flex;flex-direction:column}.boat-total-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px .75rem;min-height:0}.boat-total-row .chart-track{grid-column:1 / -1;height:.6rem}.boat-total-name,.boat-total-value{font-size:clamp(.8rem,1.1vw,1.1rem)}.boat-total-name{overflow-wrap:anywhere}.boat-total-value{text-align:right;white-space:nowrap}.boat-total-bar{display:block;min-width:2px;height:100%;border-radius:inherit;background:var(--primary)}.tv-chart-panel .chart-row{grid-template-columns:4.5rem minmax(0,1fr) 5.5rem;gap:.7rem}.tv-chart-panel .chart-week,.tv-chart-panel .chart-total{font-size:clamp(.9rem,1.2vw,1.15rem)}.tv-chart-panel .chart-track{height:clamp(1.2rem,2.4vh,2rem)}.tv-chart-panel .chart-legend{gap:.7rem 1rem;font-size:clamp(.85rem,1.1vw,1.1rem)}.tv-panel[data-tv-panel=male] .leader,.tv-panel[data-tv-panel=female] .leader,.tv-panel[data-tv-panel=risers] .leader{gap:.6rem;padding:.4rem .65rem}.tv-panel[data-tv-panel=male] .leader .rank,.tv-panel[data-tv-panel=female] .leader .rank,.tv-panel[data-tv-panel=risers] .leader .rank{width:2.2rem;height:2.2rem}.tv-display:fullscreen{padding:1.5rem;overflow:auto;background:var(--background)}@media(max-width:700px){.tv-page .app-shell{padding:.75rem}.tv-toolbar{align-items:flex-start;flex-direction:column}.tv-panels{grid-template-columns:minmax(0,1fr)}.tv-panel{min-height:auto;max-height:70vh;overflow:auto}.tv-panel .leader{grid-template-columns:minmax(0,1fr)}.tv-panel .leader .points{grid-column:auto}}[hidden]{display:none!important}@media(prefers-reduced-motion:reduce){.tv-panel-fade-in,.tv-panel-fade-out{animation-duration:1ms}}@media(min-width:640px){.app-shell{padding-top:1rem}.hero{padding:2rem}.hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));max-width:34rem}.section-heading{grid-template-columns:1fr auto;align-items:center}.section-heading .primary-button{width:auto}.dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:1rem}.standings-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.standings-layout .card{padding:1.15rem}.standings-layout .leader{grid-template-columns:minmax(0,1fr);gap:.75rem;padding:.8rem}.standings-layout .rank{width:2.4rem;height:2.4rem;font-size:1.1rem}.standings-layout .leader-metrics{padding-left:3rem}.standings-layout .leader-meta{font-size:.95rem}.standings-layout .points{font-size:1.05rem}.recent-session{grid-template-columns:minmax(0,1.3fr) auto minmax(5rem,.7fr) minmax(0,1.2fr) auto;align-items:center;gap:.75rem}}
