.pulse{display:block;overflow:visible;--pulse-dur: 2s}.pulse .pulse-bars rect{fill:#101214}.pulse .pulse-caps rect{fill:#ea580c}.pulse .pulse-trace{fill:none;stroke:#ea580c;stroke-width:32;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:100 100;stroke-dashoffset:100;animation:pulseEcg var(--pulse-dur) linear infinite}.pulse .pulse-halo{animation:pulseHeadFade var(--pulse-dur) linear infinite}.pulse .pulse-halo path{fill:none;stroke:#ea580c;stroke-width:32;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(234,88,12,.8)) drop-shadow(0 0 20px rgba(234,88,12,.4));animation-duration:var(--pulse-dur);animation-timing-function:linear;animation-iteration-count:infinite}.pulse .pulse-halo .h4{stroke-dasharray:34 200;opacity:.14;animation-name:pulseSeg8}.pulse .pulse-halo .h3{stroke-dasharray:23.73 200;opacity:.267;animation-name:pulseSeg6}.pulse .pulse-halo .h2{stroke-dasharray:9.98 200;opacity:.54;animation-name:pulseSeg3}.pulse .pulse-halo .h1{stroke-dasharray:2.53 200;opacity:.724;animation-name:pulseSeg1}.pulse .pulse-liseret{animation:pulseHeadFade var(--pulse-dur) linear infinite}.pulse .pulse-liseret path{fill:none;stroke:#fff;stroke-width:11;stroke-linecap:round;stroke-linejoin:round;animation-duration:var(--pulse-dur);animation-timing-function:linear;animation-iteration-count:infinite}.pulse .pulse-liseret .l1{stroke-dasharray:2.53 200;opacity:1;animation-name:pulseSeg1}.pulse .pulse-liseret .l2{stroke-dasharray:6.01 200;opacity:.386;animation-name:pulseSeg2}.pulse .pulse-liseret .l3{stroke-dasharray:9.98 200;opacity:.287;animation-name:pulseSeg3}.pulse .pulse-liseret .l4{stroke-dasharray:14.3 200;opacity:.223;animation-name:pulseSeg4}.pulse .pulse-liseret .l5{stroke-dasharray:18.89 200;opacity:.18;animation-name:pulseSeg5}.pulse .pulse-liseret .l6{stroke-dasharray:23.73 200;opacity:.145;animation-name:pulseSeg6}.pulse .pulse-liseret .l7{stroke-dasharray:28.77 200;opacity:.116;animation-name:pulseSeg7}.pulse .pulse-liseret .l8{stroke-dasharray:34 200;opacity:.107;animation-name:pulseSeg8}.pulse .pulse-bars,.pulse .pulse-caps{transform-box:fill-box;transform-origin:center;animation:pulseThump var(--pulse-dur) ease-out infinite}.pulse.mono .pulse-trace{stroke:currentColor}.pulse.mono .pulse-liseret,.pulse.mono .pulse-halo{display:none}@media (prefers-color-scheme: dark){.pulse:not(.mono) .pulse-bars rect{fill:#f4f5f7}}@keyframes pulseEcg{0%{stroke-dashoffset:100}10.24%{stroke-dashoffset:89.6}18.61%{stroke-dashoffset:67.42}27.84%{stroke-dashoffset:28.78}34.76%{stroke-dashoffset:10.4}45%{stroke-dashoffset:0}52%{stroke-dashoffset:0}62.92%{stroke-dashoffset:-10.4}71.85%{stroke-dashoffset:-32.58}81.69%{stroke-dashoffset:-71.22}89.08%{stroke-dashoffset:-89.6}to{stroke-dashoffset:-100}}@keyframes pulseSeg1{0%{stroke-dashoffset:2.53}10.24%{stroke-dashoffset:-7.87}18.61%{stroke-dashoffset:-30.05}27.84%{stroke-dashoffset:-68.69}34.76%{stroke-dashoffset:-87.07}45%,to{stroke-dashoffset:-97.47}}@keyframes pulseSeg2{0%{stroke-dashoffset:6.01}10.24%{stroke-dashoffset:-4.39}18.61%{stroke-dashoffset:-26.57}27.84%{stroke-dashoffset:-65.21}34.76%{stroke-dashoffset:-83.59}45%,to{stroke-dashoffset:-93.99}}@keyframes pulseSeg3{0%{stroke-dashoffset:9.98}10.24%{stroke-dashoffset:-.42}18.61%{stroke-dashoffset:-22.6}27.84%{stroke-dashoffset:-61.24}34.76%{stroke-dashoffset:-79.62}45%,to{stroke-dashoffset:-90.02}}@keyframes pulseSeg4{0%{stroke-dashoffset:14.3}10.24%{stroke-dashoffset:3.9}18.61%{stroke-dashoffset:-18.28}27.84%{stroke-dashoffset:-56.92}34.76%{stroke-dashoffset:-75.3}45%,to{stroke-dashoffset:-85.7}}@keyframes pulseSeg5{0%{stroke-dashoffset:18.89}10.24%{stroke-dashoffset:8.49}18.61%{stroke-dashoffset:-13.69}27.84%{stroke-dashoffset:-52.33}34.76%{stroke-dashoffset:-70.71}45%,to{stroke-dashoffset:-81.11}}@keyframes pulseSeg6{0%{stroke-dashoffset:23.73}10.24%{stroke-dashoffset:13.33}18.61%{stroke-dashoffset:-8.85}27.84%{stroke-dashoffset:-47.49}34.76%{stroke-dashoffset:-65.87}45%,to{stroke-dashoffset:-76.27}}@keyframes pulseSeg7{0%{stroke-dashoffset:28.77}10.24%{stroke-dashoffset:18.37}18.61%{stroke-dashoffset:-3.81}27.84%{stroke-dashoffset:-42.45}34.76%{stroke-dashoffset:-60.83}45%,to{stroke-dashoffset:-71.23}}@keyframes pulseSeg8{0%{stroke-dashoffset:34}10.24%{stroke-dashoffset:23.6}18.61%{stroke-dashoffset:1.42}27.84%{stroke-dashoffset:-37.22}34.76%{stroke-dashoffset:-55.6}45%,to{stroke-dashoffset:-66}}@keyframes pulseHeadFade{0%,1%{opacity:0}10%{opacity:1}45%{opacity:1}68%{opacity:0}to{opacity:0}}@keyframes pulseThump{0%,24%{transform:scale(1)}27.84%{transform:scale(1.055)}40%,to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.pulse .pulse-trace{animation:none;stroke-dashoffset:0}.pulse .pulse-liseret,.pulse .pulse-halo{display:none}.pulse .pulse-bars,.pulse .pulse-caps{animation:none}}:root{color-scheme:light;--ink: #101214;--ink-2: #4b5563;--ink-3: #9ca3af;--bg: #f4f5f7;--card: #ffffff;--line: rgba(16, 18, 20, .08);--accent: #EA580C;--accent-ink: #ffffff;--accent-soft: #fdeadd;--danger: #b00020;--success: #0a7a32;--radius: 16px;--radius-s: 12px;--shadow: 0 1px 2px rgba(16,18,20,.05), 0 4px 16px rgba(16,18,20,.05);--nav-h: 64px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.45}a{color:inherit}.container{max-width:560px;margin:0 auto;padding:12px 16px calc(16px + env(safe-area-inset-bottom))}.page{padding-bottom:calc(var(--nav-h) + 20px + env(safe-area-inset-bottom))}.spacer{height:12px}.hr{height:1px;background:var(--line);margin:14px 0}.h1{font-size:24px;font-weight:800;margin:4px 0 0;letter-spacing:-.02em}.h2{font-size:17px;font-weight:700;margin:0}.p{margin:0;color:var(--ink-2);line-height:1.5}.small{font-size:13px}.muted{color:var(--ink-3)}.error{color:var(--danger);font-weight:700;font-size:14px}.success{color:var(--success);font-weight:700}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.list{display:flex;flex-direction:column;gap:10px}.row{display:flex;gap:12px;align-items:center}.col{display:flex;flex-direction:column;gap:10px}.disclosure-summary{list-style:none}.disclosure-summary::-webkit-details-marker{display:none}.disclosure-chevron{display:inline-block;transition:transform .15s ease}.disclosure[open] .disclosure-chevron{transform:rotate(90deg)}.grid2{display:grid;grid-template-columns:1fr;gap:12px}.kv{display:grid;grid-template-columns:1fr;gap:2px 8px;font-size:15px}.kv>.k{margin-top:8px}.k{color:var(--ink-3);font-size:13px}.v{font-weight:650}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:14px;min-height:48px;padding:12px 18px;font-size:16px;font-weight:700;cursor:pointer;background:var(--accent);color:#fff;transition:transform .06s ease,opacity .15s ease;touch-action:manipulation}.btn:active{transform:scale(.97)}.btn.secondary{background:#fff;color:var(--ink);border:1px solid rgba(16,18,20,.16)}.btn.ghost{background:transparent;color:var(--ink);border:1px dashed rgba(16,18,20,.25)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}input,select,textarea{width:100%;min-height:48px;padding:12px 14px;border-radius:var(--radius-s);border:1.5px solid rgba(16,18,20,.14);background:#fff;font-size:16px;font-family:inherit;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}textarea{min-height:88px;resize:vertical;line-height:1.4}::placeholder{color:var(--ink-3)}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:650;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:#fff;white-space:nowrap}.gps-dot{width:9px;height:9px;border-radius:999px;flex:none;background:#9ca3af}.gps-dot.searching{background:#f59e0b;animation:gpsPulse 1.2s ease-in-out infinite}.gps-dot.active{background:#22c55e}.gps-dot.weak{background:#d97706}.gps-dot.unavailable{background:#9ca3af}@keyframes gpsPulse{0%,to{opacity:.35;transform:scale(.86)}50%{opacity:1;transform:scale(1.18)}}.bubble{max-width:88%;padding:12px 14px;border-radius:18px;border:1px solid var(--line);font-size:15.5px;line-height:1.45;word-wrap:break-word;white-space:pre-wrap}.bubble .small{margin-bottom:2px}.bubble.coach{background:#fff;align-self:flex-start;border-bottom-left-radius:6px}.bubble.user{background:var(--accent-soft);border-color:#ea580c2e;align-self:flex-end;border-bottom-right-radius:6px}.navbar{position:fixed;left:0;right:0;bottom:0;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:50}.navbar-inner{max-width:560px;margin:0 auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:8px 12px}.navlink{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:48px;text-decoration:none;padding:6px 8px;border-radius:14px;font-size:11.5px;font-weight:650;color:var(--ink-3);white-space:nowrap}.navlink .navicon{font-size:20px;line-height:1}.navlink.active{background:#1012140f;color:var(--accent)}.feedback-fab{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:calc(var(--nav-h) + 14px + env(safe-area-inset-bottom));z-index:55;display:inline-flex;align-items:center;gap:6px;min-height:38px;max-width:min(42vw,150px);padding:8px 11px;border:1px solid rgba(16,18,20,.12);border-radius:999px;background:#fffffff0;color:var(--ink-2);box-shadow:var(--shadow);font-size:13px;font-weight:750;cursor:pointer}.feedback-fab.session{color:#c2410c;border-color:#ea580c33;background:#fdeaddf5}.feedback-fab span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:flex-end;background:#10121459;padding-top:24px}.feedback-sheet{width:100%;max-width:560px;margin:0 auto;background:#fff;border-radius:18px 18px 0 0;padding:10px 16px calc(16px + env(safe-area-inset-bottom));max-height:86vh;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.sheet-handle{width:44px;height:4px;border-radius:999px;background:#10121429;margin:0 auto 2px}.icon-btn{width:36px;height:36px;flex:none;border:0;border-radius:999px;background:#1012140f;color:var(--ink-2);font-size:24px;line-height:1;cursor:pointer}.feedback-categories{display:grid;grid-template-columns:1fr;gap:8px}.feedback-chip{min-height:42px;border:1px solid rgba(16,18,20,.14);border-radius:12px;background:#fff;color:var(--ink);font-size:14px;font-weight:750;cursor:pointer}.feedback-chip.active{background:var(--accent-soft);border-color:#ea580c59;color:#c2410c}.set-row{display:grid;grid-template-columns:34px minmax(0,1fr) 66px;grid-template-areas:"num effort ok" "num load   ok";gap:6px 8px;align-items:end}.set-row>.set-num{grid-area:num;align-self:center}.set-row>.set-effort{grid-area:effort;min-width:0}.set-row>.set-load{grid-area:load;min-width:0}.set-row>.set-ok{grid-area:ok;align-self:stretch;min-height:44px}@media (min-width: 720px){.container{max-width:720px;padding-top:24px}.navbar-inner{max-width:720px}.grid2{grid-template-columns:1fr 1fr}.kv{grid-template-columns:150px 1fr;gap:8px}.kv>.k{margin-top:0}.h1{font-size:28px}.feedback-fab{right:calc((100vw - 720px)/2 + 14px)}.feedback-categories{grid-template-columns:repeat(3,minmax(0,1fr))}}
