.account-link{font-size:12px;font-weight:700;white-space:nowrap}.account-register{display:none}.account-shell{padding-top:40px;padding-bottom:75px;min-height:70vh}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;max-width:1000px;margin:35px auto}.auth-story h1{font-size:60px;line-height:1.05;letter-spacing:-2.5px;margin:22px 0}.auth-story>p:not(.eyebrow){color:var(--muted);line-height:1.7}.auth-story img{margin-top:30px}.panel-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;display:grid;gap:14px;min-width:0}.panel-card h3{font-size:20px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.panel-card p{font-size:14px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.panel-card h4{font-weight:700}.panel-card .panel-card{background:#f5f6ed;border-radius:13px;padding:16px}.auth-card h2{font-size:30px;letter-spacing:-1px}.account-shell form{display:grid;gap:18px}.account-shell label{display:grid;gap:7px;font-size:13px;font-weight:600}.account-shell input,.account-shell select,.account-shell textarea{width:100%;min-width:0;border:1px solid #b7c4b4;border-radius:10px;background:#fafbf6;color:#101f19;padding:12px;font:inherit;font-size:15px;outline-offset:3px}.account-shell textarea{min-height:100px;resize:vertical}.account-shell .checkbox-field{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.6}.account-shell input[type=checkbox]{width:18px;height:18px;min-width:18px;margin-top:3px;accent-color:#30503a}.account-shell .form-note,.account-shell .muted{color:#546453;font-size:12px;line-height:1.7}.auth-switch{font-size:13px;line-height:1.8}.auth-switch a{font-weight:700;text-decoration:underline;text-underline-offset:3px}.panel-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:40px}.panel-sidebar h1{font-size:25px;font-weight:700;letter-spacing:-1px;margin:15px 0 30px}.panel-sidebar{min-width:0;align-self:start;position:sticky;top:24px}.panel-sidebar nav{display:grid;gap:6px}.panel-sidebar nav button,.panel-logout{border:0;background:none;text-align:left;border-radius:12px;padding:13px 16px;font:inherit;font-size:14px;cursor:pointer;color:#344c34}.panel-sidebar nav button.active{background:var(--forest);color:var(--lime);font-weight:700}.panel-sidebar nav button:hover{background:#e5ecd9}.panel-sidebar nav button.active:hover{background:var(--forest)}.panel-logout{margin-top:25px;text-decoration:underline}.panel-toolbar,.section-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.panel-toolbar{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}.panel-toolbar>p{font-weight:700}.section-toolbar{margin-bottom:18px}.section-toolbar h2{font-size:28px;letter-spacing:-1px}.panel-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.panel-button{display:inline-flex;justify-content:center;align-items:center;gap:8px;border:1px solid #b9c6ad;border-radius:10px;padding:10px 14px;min-height:42px;background:transparent;color:var(--forest);font:inherit;font-size:12px;font-weight:700;cursor:pointer;text-decoration:none;max-width:100%;line-height:1.5}.panel-button:hover{background:#e6efda}.panel-button.primary{background:var(--forest);color:var(--lime);border-color:var(--forest)}.panel-button:disabled,.account-shell button:disabled{opacity:.55;cursor:wait}.panel-button:focus-visible,.panel-sidebar button:focus-visible{outline:3px solid #6f9939;outline-offset:3px}.panel-list{display:grid;gap:18px}.panel-main{min-width:0}#panel-content{display:grid;gap:20px}#panel-message,#auth-message{font-size:14px;line-height:1.7;color:#36562d;overflow-wrap:anywhere}#panel-message:not(:empty){background:#e5efd5;border-radius:10px;padding:12px;margin-bottom:20px}#panel-message.error,.form-error,#auth-message{color:#9a3428}#panel-message.error{background:#f9e6df}.panel-badge{display:inline-block;border-radius:7px;background:#eff3e5;padding:5px 9px;font-size:11px;font-weight:700;line-height:1.5}.panel-badge.done{background:#def0d5}.panel-badge.partial{background:#f5e6bf}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.metric-value{font-size:45px;letter-spacing:-2px}.coach-feedback{background:#edf2e4;border-radius:12px;padding:15px;white-space:pre-wrap}.volume-chart{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.volume-chart .panel-card{padding:15px}.friend-line{color:#416132;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.account-shell fieldset{border:1px solid #b7c4b4;padding:15px;border-radius:12px}.account-shell legend{font-size:13px;padding:0 5px}.account-shell dialog{border:1px solid #b9c6ad;background:#f7f9f1;color:var(--forest);border-radius:22px;max-width:760px;width:calc(100% - 32px);max-height:90svh;padding:28px;overflow:auto}.account-shell dialog::backdrop{background:#101f19a6}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.dialog-heading h2{font-size:26px;letter-spacing:-1px}.step-editor{display:grid;gap:20px}.step-row{border:1px solid #b9c6ad;border-radius:14px;padding:16px;display:grid;gap:14px;background:white}.step-row .section-toolbar{margin:0}.step-row h2{font-size:16px;letter-spacing:0}.child-step{background:#fafbf6}.account-shell details summary{cursor:pointer;font-size:13px;font-weight:700}.account-shell details p{margin-top:8px}@media(max-width:900px){.header-cta{display:none}.account-register{display:inline-flex}.auth-layout{gap:30px}.auth-story h1{font-size:45px}.panel-layout{grid-template-columns:180px minmax(0,1fr);gap:22px}}@media(max-width:600px){.account-shell{padding-top:20px}.header-actions{gap:10px}.account-link{font-size:11px}.account-register{display:none}.auth-layout{grid-template-columns:1fr;margin:15px 0;gap:25px}.auth-story h1{font-size:39px}.auth-story img{display:none}.auth-card{padding:22px}.panel-layout{grid-template-columns:minmax(0,1fr);gap:20px}.panel-sidebar{position:static}.panel-sidebar h1{margin-bottom:15px}.panel-sidebar nav{display:flex;overflow-x:auto;padding-bottom:8px}.panel-sidebar nav button{white-space:nowrap;flex-shrink:0;padding:10px 13px;font-size:12px}.panel-logout{margin-top:5px;font-size:12px}.panel-card{padding:18px}.section-toolbar h2{font-size:25px}.form-grid{grid-template-columns:1fr}.volume-chart{grid-template-columns:repeat(2,minmax(0,1fr))}.account-shell dialog{padding:20px}.dialog-heading h2{font-size:23px}.metric-value{font-size:36px}.panel-button{font-size:11px}.panel-card .panel-card{padding:12px}}

.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekday{text-align:center;color:#546453;font-size:11px;padding:8px 0}.calendar-day{min-height:60px;background:#f5f7ed;border:1px solid transparent;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;font:inherit;font-size:14px}.calendar-day.selected{background:var(--forest);color:var(--lime)}.calendar-day.is-today{border-color:#446938}.calendar-dot{font-size:10px;background:#d2ed99;color:#101f19;border-radius:20px;padding:0 6px}.volume-chart meter{width:100%;height:18px}@media(max-width:600px){.calendar-day{min-height:51px}.calendar-grid{gap:4px}}

@media(min-width:901px){.account-link.signed-in{display:none}}

.recovery-card{background:#edf2e4;border-color:#c9d7b9}.recovery-card h3{font-size:28px;letter-spacing:-.7px}.recovery-card .panel-badge{justify-self:start;background:#d7e8be}

.coach-conversation,.coach-transcript{display:grid;gap:16px}.coach-message time{font-size:11px;color:#546453;margin-left:auto}.coach-message.from-user{background:#f0f4e8;border-left:4px solid #688d37}.coach-message.from-coach{border-left:4px solid #1d4030}.coach-message p{white-space:pre-wrap;line-height:1.8}.coach-message .panel-badge{font-size:10px}.coach-conversation>.section-toolbar{margin-bottom:0}.coach-composer textarea{min-height:90px}

.event-advanced summary{cursor:pointer;font-weight:650;padding:12px 0;color:#3d553c}.event-filter-grid{margin:12px 0}.geo-credit{font-size:.8rem;color:#52654e;display:block;margin:18px 0}.event-advanced[open]{border-top:1px solid #dce1d3;margin-top:12px}

.coach-keyboard-note{font-size:12px!important;color:#546453;margin:0}.coach-send-status{font-size:13px!important;color:#416132;min-height:24px;margin:0;transition:background-color .25s}.coach-send-status.ready{background:#e6f1d6;border-radius:9px;padding:10px 12px;font-weight:650}.coach-send-status.error{color:#9a3428}.coach-composer button[type=submit]{min-width:100px}.coach-delivery[hidden]{display:none}.coach-delivery{background:#deedc8;color:#315522}.coach-message{scroll-margin-top:110px}.coach-new-reply{background:#f4f9e9;border-color:#9eb878;box-shadow:0 0 0 2px #bdd89555}.coach-send-failed{border-color:#cf9e8b}.coach-send-failed .coach-delivery{background:#f9e6df;color:#9a3428}.coach-thinking{background:#f0f5e7;border-style:dashed}.coach-thinking strong{font-size:14px}.coach-typing-dots{display:inline-flex;gap:5px;align-items:center;min-height:20px}.coach-typing-dots i{width:7px;height:7px;background:#658f35;border-radius:50%;animation:coach-dot 1.2s ease-in-out infinite}.coach-typing-dots i:nth-child(2){animation-delay:.15s}.coach-typing-dots i:nth-child(3){animation-delay:.3s}.coach-entering{animation:coach-appear .65s cubic-bezier(.16,1,.3,1) both}.coach-new-reply.coach-entering{animation:coach-appear .65s cubic-bezier(.16,1,.3,1) both,coach-highlight 2.2s ease-out both}.coach-more:empty{display:none}@keyframes coach-appear{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes coach-highlight{from{background:#dceeaf;box-shadow:0 0 0 4px #abc87688}to{background:#f4f9e9;box-shadow:0 0 0 2px #bdd89555}}@keyframes coach-dot{0%,70%,100%{opacity:.45;transform:translateY(0)}35%{opacity:1;transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.coach-entering,.coach-new-reply.coach-entering,.coach-typing-dots i{animation:none!important}.coach-send-status{transition:none}}

.event-distance-preset,.event-filter-grid>.form-note{grid-column:1/-1}

.panel-sidebar button[hidden]{display:none}.admin-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.admin-results{display:grid;gap:18px}.admin-search{margin:20px 0}.admin-stat-grid .metric-value{font-size:36px}@media(max-width:600px){.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.activity-route{display:grid;gap:12px;min-width:0}.activity-route-svg{display:block;width:100%;height:auto;min-height:120px;border-radius:12px;background:#f3f6ed}
.activity-title.panel-button{padding:0;border:0;background:none;font-size:inherit;font-weight:inherit;text-align:left;color:inherit;width:auto;min-height:0}.activity-title:hover{text-decoration:underline;text-underline-offset:4px}.activity-details{display:grid;gap:20px}.activity-details>h2{font-size:28px}.training-map{height:360px;width:100%;border-radius:14px;background:#eef2e8;z-index:0;touch-action:none}.map-notice:empty{display:none}.map-tools{display:flex;gap:10px}.detail-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.detail-stat{font-size:26px;line-height:1.3}.activity-chart{display:block;width:100%;height:auto;touch-action:pan-y;background:#f6f8ef;border-radius:12px}.activity-chart text{font-size:14px;fill:#546453}.chart-readout{font-weight:700;font-size:14px}.account-shell input[type=range]{padding:0;accent-color:#567f29}.split-table-wrap{overflow:auto}.split-table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:13px}.split-table th,.split-table td{text-align:left;padding:12px 9px;border-bottom:1px solid #dde4d6}.split-table th{font-weight:700}.split-area{display:grid;gap:12px}@media(max-width:600px){.detail-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.detail-stats .panel-card{padding:16px}.detail-stat{font-size:20px}.training-map{height:300px}.activity-details>.panel-card{padding:18px}.split-table th,.split-table td{padding:10px 6px;font-size:11px}}
.route-gap-note{background:#fff6df;border:1px solid #e2c581;border-radius:12px;padding:15px;display:grid;gap:8px}.route-gap-note>p:first-child{font-weight:700;color:#78521f}.route-gap-note .panel-button{justify-self:start}

/* Keep each weekday directly above its checkbox on every screen size. */
.weekday-choices{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;width:100%}.account-shell .weekday-choice{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;min-width:0;padding:6px 0;font-weight:400;line-height:1.4;cursor:pointer}.account-shell .weekday-choice span{white-space:nowrap}.account-shell .weekday-choice input[type=checkbox]{margin:0;flex-shrink:0}

.plan-cycle{display:grid;gap:12px}.cycle-phase{border-left:3px solid #a4be72;padding:9px 12px;margin-top:12px}.cycle-phase strong{font-size:13px}

.missed-summary{border-left:4px solid #a8cf4d;background:#f2f6e9}.missed-summary h3{margin:.7rem 0}.missed-summary .panel-actions{margin-top:1rem;flex-wrap:wrap}.missed-summary .panel-button{white-space:normal}
