/* The approved journey direction, scoped to profiles and weekly highlights. */
.speed-page .brand{font-weight:800;letter-spacing:-1px}.speed-page .brand span{font-weight:500;opacity:.65}
.player-page .board{max-width:960px;margin-inline:auto}.player-page .player-hero{background:none;border:0;padding:0;box-shadow:none}.player-page .player-hero h1{font-size:clamp(2rem,6vw,3.2rem);letter-spacing:-1.4px;margin:.25rem 0}.journey-identity{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0}.journey-identity .eyebrow{font-size:.65rem;margin:0;letter-spacing:1.5px}.journey-share-open{background:#80d2ff!important;color:#071422!important;border:0!important;font-weight:700;font-size:.8rem;white-space:nowrap}.player-page .filter-disclosure{margin-block:20px}.journey-achievements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.journey-achievement{display:flex;flex-direction:column;min-width:0;padding:24px;border:1px solid #294358;border-radius:18px;text-decoration:none;color:#eef5fc;background:linear-gradient(135deg,#1c3651,#112137)}.journey-achievement.gain{background:linear-gradient(135deg,#143a38,#10262e);border-color:#28534e}.journey-metric-label{font-size:.85rem;font-weight:650}.journey-achievement>strong{font-size:clamp(2rem,6vw,4.3rem);letter-spacing:-2px;line-height:1.15;margin:18px 0 6px;overflow-wrap:anywhere}.journey-achievement.gain>strong{color:#92e8c1}.journey-achievement small{color:#a4b9cc;font-size:.8rem}.journey-metric-foot{font-size:.7rem;color:#a4b9cc;margin-top:24px}.player-page .progress-card{border-radius:18px;padding:24px}.player-page .progress-card>h3{font-size:1.15rem;color:#eef5fc;margin-bottom:8px}.player-page .progress-card>svg{background:transparent;border:0}.player-page .progress-card>.meta{font-size:.75rem}.player-page .attempt-history-heading{font-size:1.3rem;margin-top:30px}.player-page .player-invitation{margin-top:35px}.journey-weekly{margin:25px 0;padding-top:22px;border-top:1px solid #294358}.journey-weekly>.eyebrow{font-size:.65rem;color:#a4b9cc;margin-bottom:6px}.journey-weekly>h2{font-size:1.4rem;margin:0 0 18px}.journey-week-category>h3{font-size:.9rem;margin:20px 0 10px}.journey-weekly-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.journey-award{border:1px solid #294358;border-radius:18px;padding:24px;background:#102238}.journey-award>h3{color:#f0cf85;font-size:.75rem;text-transform:uppercase;letter-spacing:1px;margin:0 0 16px}.journey-award.improved>h3,.journey-award.improved strong{color:#92e8c1}.journey-award-player+.journey-award-player{border-top:1px solid #294358;margin-top:20px;padding-top:20px}.journey-award-player h4,.journey-award-name{font-size:1.25rem;margin:0 0 5px;overflow-wrap:anywhere}.journey-award-player>strong{font-size:2.6rem;letter-spacing:-1px}.journey-award-player>.meta{font-size:.75rem;margin:3px 0 16px}.journey-award-player>a{font-size:.8rem;color:#80d2ff}.journey-award-rules{color:#a4b9cc;font-size:.75rem;margin-top:12px}.journey-award-rules summary{min-height:44px;align-content:center;cursor:pointer}.journey-award-rules p{max-width:75ch;line-height:1.7}.journey-share-dialog{background:#0a1727;color:#eef5fc;border:1px solid #294358;border-radius:20px;padding:24px;width:min(560px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto}.journey-share-dialog::backdrop{background:#030a13d9}.journey-share-close{position:absolute;right:8px;top:8px;width:44px;border:0;background:transparent;color:#a4b9cc;font-size:26px}.journey-share-dialog>h2{font-size:1rem;margin:0 40px 20px 0}.journey-share-card{padding:24px;background:linear-gradient(145deg,#173b51,#0b1a2e 70%);border:1px solid #2d5767;border-radius:15px}.journey-wordmark{font-weight:800;font-size:1.2rem;margin-bottom:28px}.journey-share-card>h3{font-size:2rem;letter-spacing:-1px;margin:0;overflow-wrap:anywhere}.journey-share-card>.eyebrow{font-size:.6rem}.journey-share-card .journey-achievement{padding:0;background:none;border:0;border-radius:0}.journey-share-card .journey-metric-label{font-size:.65rem}.journey-share-card .journey-achievement>strong{font-size:2.5rem;margin-top:6px}.journey-share-card .journey-achievement small{font-size:.65rem}.journey-share-card .journey-metric-foot{display:none}.journey-share-card .progress-card{padding:0!important;margin:0!important;background:none!important;border:0!important}.journey-share-card .progress-card>h3,.journey-share-card .progress-card>.chart-summary,.journey-share-card .progress-card>.meta{display:none}.journey-share-card .progress-card>svg{width:100%;background:transparent;border:0}.journey-share-dialog>button:not(.journey-share-close){margin-right:8px}.journey-share-dialog .meta{font-size:.75rem}
@media(max-width:600px){.journey-identity{gap:10px}.journey-share-open{font-size:.7rem;padding:9px}.journey-achievements{gap:10px}.journey-achievement{padding:17px 14px;border-radius:14px}.journey-metric-label{font-size:.7rem}.journey-achievement>strong{font-size:clamp(1.8rem,10vw,2.8rem)}.journey-achievement small{font-size:.65rem}.journey-metric-foot{font-size:.6rem;margin-top:18px}.player-page .progress-card{padding:16px}.journey-weekly-grid{grid-template-columns:1fr}.journey-award{padding:20px}.journey-share-dialog{padding:20px}.journey-share-card{padding:20px 16px}}

.speed-page .brand span{display:inline;font-size:inherit;line-height:inherit;letter-spacing:inherit;margin:0}.speed-page.player-page{background:radial-gradient(ellipse at 0 0,#143151 0,transparent 50%),#081321}.player-page .journey-identity .eyebrow{margin:0}.player-page .progress-card>svg{background:transparent;border:0}

.journey-share-card.journey-image-preview{padding:0;overflow:hidden}.journey-image-preview canvas{display:block;width:100%;height:auto;border-radius:14px}.journey-image-actions{display:flex;gap:10px;margin:16px 0;flex-wrap:wrap}.journey-image-actions button:first-child{background:#80d2ff;color:#071422;font-weight:700;border-color:#80d2ff}.journey-image-actions button:disabled{opacity:.5}

/* Focused chart followed by the selected attempt and navigation. */
.journey-explorer{--jt-blue:#80d2ff;--jt-surface:#14273d;--jt-muted:#a9bbce;--jt-line:#2c435b;margin:24px 0;min-width:0;color:#eef5fc}
.jt-focus text{font:11px system-ui,sans-serif;fill:var(--jt-muted)}
.jt-selected-dot,.jt-best{fill:var(--jt-blue)}.jt-hit{fill:transparent;cursor:crosshair}
.jt-zoom{display:flex;gap:4px;padding:3px;border-radius:10px;background:var(--jt-surface)}.jt-zoom button{flex:1;min-width:0;border:0;background:transparent;color:var(--jt-muted);font-size:.8rem;padding:8px 4px;min-height:44px}.jt-zoom button[aria-pressed=true]{background:#233c56;color:#eef5fc}
.jt-period{display:flex;align-items:center;justify-content:space-between;gap:5px;margin:6px 0}.jt-period button{background:#203d56;border:1px solid #416681;border-radius:10px;color:var(--jt-blue);font-size:1.4rem;width:44px;min-width:44px;min-height:44px;padding:4px}.jt-period strong{font-size:.8rem;font-weight:550;text-align:center}
.jt-result{padding:14px 16px;border-radius:15px;background:var(--jt-surface);margin-bottom:8px}.jt-result-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.jt-result h3{font-size:.95rem;margin:0}.jt-result-top .meta{font-size:.7rem;margin:4px 0 0}.jt-score{text-align:right;flex-shrink:0}.jt-score strong{display:block;font-size:1.9rem;line-height:1.1;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.jt-score small{display:block;color:var(--jt-muted);font-size:.7rem}
.jt-note-preview{font-size:.85rem;line-height:1.5;color:var(--jt-muted);margin:10px 0;min-height:2.5em;white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.jt-open-detail{width:100%;background:#1b3a52;color:var(--jt-blue);border:0;font-size:.8rem;min-height:44px}
.jt-plot-wrap{position:relative}.jt-focus{width:100%;height:190px;display:block;touch-action:pan-y}.jt-grid,.jt-guide{stroke:var(--jt-line);stroke-width:1}.jt-range{fill:#46647e}.jt-dot{fill:var(--jt-muted);opacity:.7}.jt-halo{fill:var(--jt-blue);opacity:.2}.jt-point-label{position:absolute;right:10px;top:8px;font-size:.7rem;color:#eef5fc;background:var(--jt-surface);border-radius:5px;padding:3px 6px;pointer-events:none}.jt-legend{font-size:.7rem;color:var(--jt-muted);margin:3px 0 10px}
.jt-detail{position:fixed;box-sizing:border-box;width:min(720px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0 20px 20px;overflow:auto;overscroll-behavior:contain;background:#0b192a;color:#eef5fc;border:1px solid #416681;border-radius:18px;box-shadow:0 20px 70px #0009;touch-action:manipulation}
.jt-detail::backdrop{background:#030a13ed;backdrop-filter:blur(6px)}
html:has(.jt-detail[open]){overflow:hidden}
.jt-detail-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;margin-bottom:12px;background:#0b192a;border-bottom:1px solid #2c435b}
.jt-detail-header h2{font-size:1rem;line-height:1.4;margin:0}
.jt-detail-close{flex-shrink:0;min-height:44px;padding:8px 12px;background:#203d56;border:1px solid #416681;border-radius:10px;color:#80d2ff;font-size:.8rem;touch-action:manipulation}
.jt-period button:focus-visible,.jt-card-arrow:focus-visible,.jt-detail-close:focus-visible{outline:2px solid #80d2ff;outline-offset:3px}
@media(hover:hover){.jt-period button:enabled:hover,.jt-card-arrow:enabled:hover,.jt-detail-close:hover{background:#2c506e}}
.jt-result-detail .public-attempt-note{margin:0 0 18px}.jt-result-detail .public-attempt-note p{white-space:pre-wrap;overflow-wrap:anywhere}.jt-result-detail .video-tile{margin-bottom:20px}
@media(min-width:700px){.journey-explorer{max-width:680px;margin-inline:auto}.jt-result{padding:18px 22px}.jt-note-preview{min-height:1.5em}}
@media(max-width:360px){.jt-result{padding:12px}.jt-result h3{font-size:.85rem}.jt-score strong{font-size:1.6rem}.jt-period strong{font-size:.7rem}}
.jt-card-strip{margin-top:16px;min-width:0}
.jt-card-navigation{display:grid;grid-template-columns:78px minmax(0,1fr) 78px;align-items:center;gap:12px;margin-top:6px}
.journey-explorer button{touch-action:manipulation}
.jt-card-navigation>.jt-card-arrow{width:78px;min-height:44px;padding:8px;background:#203d56;border:1px solid #416681;border-radius:10px;color:var(--jt-blue);font-size:.8rem;font-weight:650;white-space:nowrap;user-select:none;-webkit-user-select:none}
.jt-card-navigation>.jt-card-arrow:disabled,.jt-period button:disabled{opacity:.16;cursor:default}
.jt-card-strip>.jt-result{height:184px;min-width:0;margin:0;padding:12px 14px;display:flex;flex-direction:column;touch-action:pan-y;user-select:none}
.jt-card-strip .jt-result-top{min-height:44px;gap:8px}
.jt-card-strip .jt-result h3{font-size:.85rem;white-space:nowrap}
.jt-card-strip .jt-result-top .meta{font-size:.7rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.jt-card-strip .jt-score strong{font-size:1.65rem}
.jt-card-strip .jt-note-preview{font-size:.8rem;height:3em;min-height:3em;margin:8px 0;flex-shrink:0}
.jt-card-strip .jt-open-detail{margin-top:auto;padding:8px 4px;flex-shrink:0;font-size:.75rem}
.jt-position{text-align:center;color:var(--jt-muted);font-size:.72rem;line-height:1.4;margin:0;font-variant-numeric:tabular-nums}
.jt-zoom{gap:1px}.jt-zoom button{font-size:.73rem;white-space:nowrap;padding-inline:2px}
@media(max-width:360px){.jt-zoom button{font-size:.7rem}.jt-card-strip>.jt-result{padding-inline:10px}.jt-card-strip .jt-score strong{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.jt-result{scroll-behavior:auto}}
