.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--accent: #ff5b00;--accent-hover: #e64f00;--text: #0f0f10;--muted: rgba(15, 15, 16, .55);--border: #ececec;--border-strong: #d8d8d8;--error: #c20034;--success: #1e9a4a;--bg: #fafafa;--card-bg: #ffffff;--card-elev-bg: #ffffff;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica Neue,Arial,system-ui,sans-serif;font-feature-settings:"tnum" 1,"cv11" 1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;color:var(--text);background:var(--bg)}@media(prefers-color-scheme:dark){:root{--text: #f5f5f5;--muted: rgba(245, 245, 245, .6);--border: #1f1f1f;--border-strong: #333;--bg: #0b0b0c;--card-bg: #131315;--card-elev-bg: #18181b;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3)}}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;min-height:100dvh;background:var(--bg)}html{height:100%;-webkit-text-size-adjust:100%}#root{min-height:100vh}a{color:var(--accent);font-weight:600;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}h1{font-size:clamp(1.35rem,5vw,1.75rem);font-weight:700;margin:0 0 .5rem;letter-spacing:-.01em}h2{font-size:1.2rem;font-weight:600;margin:0 0 .4rem;letter-spacing:-.005em}h3{font-size:1.05rem;font-weight:600;margin:0;letter-spacing:-.005em}.muted{color:var(--muted)}.stack{display:flex;flex-direction:column;gap:.85rem}.page{max-width:44rem;margin:0 auto;padding:1.5rem max(1.25rem,env(safe-area-inset-left,0px)) 5rem max(1.25rem,env(safe-area-inset-right,0px))}.page.pageWide{max-width:60rem}.page.pageDashWide,.page.pageAccountWide{max-width:min(1320px,calc(100vw - 2rem));width:100%}@media(min-width:900px){.page.pageDashWide,.page.pageAccountWide{max-width:min(1320px,calc(100vw - 2.5rem))}}.input{width:100%;padding:.75rem .95rem;font-size:1rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text);transition:border-color .12s ease,box-shadow .12s ease}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.btn,.btnGhost{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.25rem;font-size:1rem;font-weight:600;border-radius:999px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease,transform 80ms ease;font-family:inherit}.btn:active,.btnGhost:active{transform:scale(.985)}.btn{border:none;background:var(--accent);color:#fff}.btn:hover:not(:disabled){background:var(--accent-hover)}.btn:disabled{opacity:.55;cursor:not-allowed}.btnPrimary{border:none;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.25rem;font-size:1rem;font-weight:600;border-radius:999px;cursor:pointer;transition:background .12s ease,color .12s ease,border-color .12s ease,transform 80ms ease;font-family:inherit}.btnPrimary:hover:not(:disabled){background:var(--accent-hover)}.btnPrimary:active:not(:disabled){transform:scale(.985)}.btnPrimary:disabled{opacity:.55;cursor:not-allowed}.btnGhost{background:transparent;color:var(--text);border:1px solid var(--border-strong)}.btnGhost:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.btnGhost:disabled{opacity:.55;cursor:not-allowed}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.6rem 1rem;border-radius:999px;border:1px solid var(--border-strong);background:var(--card-bg);color:var(--text);font-size:.95rem;cursor:pointer;font-family:inherit;transition:background .12s ease,color .12s ease,border-color .12s ease}.chip:hover{border-color:var(--accent);color:var(--accent)}.chipOn{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.chipOn:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.chipRow{display:block;width:100%;text-align:left;padding:.85rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--card-bg);color:var(--text);cursor:pointer;font-size:1rem;font-family:inherit;transition:background .12s ease,color .12s ease,border-color .12s ease}.chipRow:hover{border-color:var(--accent)}.chipRow.chipOn{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.chipRow.chipDisabled{opacity:.45;cursor:not-allowed}.chipRow.chipDisabled:hover{border-color:var(--border-strong)}.card{padding:1.1rem 1.15rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg);line-height:1.5;box-shadow:var(--shadow-sm)}.cardElev{padding:1.5rem 1.4rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm)}.dataTable{width:100%;border-collapse:collapse;font-size:.92rem}.dataTable th,.dataTable td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--border)}.dataTable th{color:var(--muted);font-weight:600}.err{color:var(--error);margin-top:.25rem}.center{display:flex;align-items:center;justify-content:center;min-height:50vh;min-height:100dvh;padding:max(1rem,env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) max(1rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px))}.spinner{width:2rem;height:2rem;border:2.5px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.appShell{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.appShell--withSidebar{flex-direction:row;width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}.appMain{flex:1 0 auto;width:100%}.appShell--withSidebar .appMain{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.appSidebar{width:240px;flex-shrink:0;display:flex;flex-direction:column;gap:.5rem;padding:1.1rem .85rem;border-right:1px solid var(--border);background:var(--card-elev-bg);box-sizing:border-box;transition:width .2s ease,padding .2s ease}.appSidebarHeader{display:flex;flex-direction:column;align-items:stretch;gap:.45rem;padding-bottom:.65rem;margin-bottom:.35rem;border-bottom:1px solid var(--border)}.appSidebarBrand{padding:.25rem .5rem 0}.appSidebarBrandMark{display:block;font-weight:800;font-size:1.05rem;letter-spacing:-.02em;color:var(--text)}.appSidebarCollapseBtn{display:none;align-items:center;justify-content:center;width:100%;min-height:36px;padding:.3rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--muted);cursor:pointer;flex-shrink:0}.appSidebarCollapseBtn:hover{color:var(--text);background:color-mix(in srgb,var(--text) 6%,transparent)}.appSidebarCollapseBtn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.appSideNav{display:flex;flex-direction:column;gap:.15rem;flex:1;min-height:0}.appSideNavPrimary,.appSideNavYou{display:flex;flex-direction:column;gap:.15rem}.appSideNavPrimary{flex:1;min-height:0}@media(min-width:768px){.appSideNavYou{order:-1;margin-bottom:.35rem;padding-bottom:.5rem;border-bottom:1px solid var(--border)}}@media(max-width:767px){.appSideNavYou{margin-top:.35rem;padding-top:.5rem;border-top:1px solid var(--border)}}.appNavUserAvatar{width:22px;height:22px;border-radius:50%;object-fit:cover;display:block;flex-shrink:0}.appSideLink--active .appNavUserAvatar,.tabBarLink.active .appNavUserAvatar{box-shadow:0 0 0 2px var(--accent)}.accountProfilePhotoRow{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:.5rem}.accountProfilePhotoPreview{width:5.5rem;height:5.5rem;border-radius:50%;object-fit:cover;border:1px solid var(--border)}.accountProfilePhotoPlaceholder{width:5.5rem;height:5.5rem;border-radius:50%;border:1px dashed var(--border-strong);display:flex;align-items:center;justify-content:center;text-align:center;font-size:.8rem;font-weight:600;padding:.5rem;box-sizing:border-box}.accountProfilePhotoActions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.accountProfilePhotoUpload{cursor:pointer;display:inline-block}.accountProfilePhotoUpload--busy{opacity:.7;pointer-events:none}.appSideLink{position:relative;display:flex;align-items:center;gap:.65rem;padding:.45rem .65rem;border-radius:var(--radius-sm);color:var(--muted);font-weight:600;font-size:.9rem;text-decoration:none;border:1px solid transparent}.appSideLinkIcon{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;min-width:22px}.appSideLinkText{min-width:0;flex:1}.appSideLinkDot{position:absolute;top:-.02rem;right:-.2rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--card-elev-bg)}.appSideLink:hover{color:var(--text);background:color-mix(in srgb,var(--text) 6%,transparent);text-decoration:none}.appSideLink--active{color:var(--text);background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.appShellColumn{flex:1;display:flex;flex-direction:column;min-width:0;min-height:100vh;min-height:100dvh;box-sizing:border-box}.appShellTopbar{display:flex;align-items:center;gap:.65rem;padding:max(.65rem,env(safe-area-inset-top,0px)) max(.85rem,env(safe-area-inset-right)) .65rem max(.85rem,env(safe-area-inset-left));border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);flex-shrink:0;max-width:100%;box-sizing:border-box}.appShellMenuBtn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text);cursor:pointer;flex-shrink:0}.appShellTopbarTitle{margin:0;flex:1;min-width:0;font-size:1.05rem;font-weight:700;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appShellTopbarMeta{display:flex;align-items:center;gap:.65rem;flex-shrink:0;min-width:0}.appShellTopbarEmail{font-size:.8rem;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appShellDrawerScrim{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1005;border:none;padding:0;margin:0;background:#00000073;cursor:pointer}@media(max-width:767px){.appShell--withSidebar .appSidebar{position:fixed;top:0;left:0;bottom:0;z-index:1010;width:min(240px,88vw);max-width:88vw;transform:translate(-102%);transition:transform .2s ease;box-shadow:8px 0 28px #0000001f}@media(prefers-color-scheme:dark){.appShell--withSidebar .appSidebar{box-shadow:8px 0 28px #00000073}}.appShell--withSidebar.appShell--drawerOpen .appSidebar{transform:translate(0)}.appShell--withSidebar.appShell--drawerOpen .appShellDrawerScrim{display:block}.appShell--withSidebar .appShellMenuBtn{display:flex}.appShellTopbarEmail{display:none}}@media(min-width:768px){.appShell--withSidebar .appShellTopbar{padding-top:.65rem}.appSidebarCollapseBtn{display:flex}.appShell--withSidebar.appShell--sidebarCollapsed .appSidebar{width:58px;padding:1.1rem .4rem}.appShell--withSidebar.appShell--sidebarCollapsed .appSidebarHeader{align-items:center}.appShell--withSidebar.appShell--sidebarCollapsed .appSidebarBrand{padding-left:0;padding-right:0;text-align:center}.appShell--withSidebar.appShell--sidebarCollapsed .appSidebarBrandMark{font-size:1.2rem;letter-spacing:-.04em}.appShell--withSidebar.appShell--sidebarCollapsed .appSidebarCollapseBtn{min-height:32px;padding:.25rem}.appShell--withSidebar.appShell--sidebarCollapsed .appSideLink{justify-content:center;gap:0;padding:.5rem .35rem}.appShell--withSidebar.appShell--sidebarCollapsed .appSideLinkText{display:none}}.appTopBar{display:none;position:sticky;top:0;z-index:900;align-items:center;justify-content:space-between;gap:.75rem;padding:max(.5rem,env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) .5rem max(1rem,env(safe-area-inset-left,0px));min-height:calc(2.65rem + env(safe-area-inset-top,0px));background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--border)}.appShell--reference .appTopBar{backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--bg)}@media(max-width:900px){.appShell--reference .appTopBar{position:relative}}.appShell--reference .appMain{isolation:isolate;position:relative;z-index:0}.appShell--reference select.btnGhost{min-height:44px;padding:.35rem .75rem!important;font-size:max(16px,.92rem)!important;line-height:1.2}.appShell--reference .refToolBar{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center}.appShell--reference .refPdfBtn{margin-left:auto}@media(max-width:600px){.appShell--reference .refToolBar{flex-direction:column;align-items:stretch}.appShell--reference .refPdfBtn{margin-left:0;width:100%}.appShell--reference label:has(select){display:flex;flex-direction:column;align-items:stretch;gap:.35rem;width:100%;max-width:100%}.appShell--reference label:has(select) select{width:100%;max-width:100%}.appShell--reference .refInlineFields{flex-direction:column!important;align-items:stretch!important}.appShell--reference .refInlineFields>label{width:100%;max-width:100%}}@media(max-width:767px){.appShell--reference .page{padding-bottom:max(1.5rem,env(safe-area-inset-bottom,0px))}}.appTopBarBrand{font-size:1rem;flex-shrink:0}.appTopBarTitle{font-size:.92rem;font-weight:700;letter-spacing:-.02em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right;min-width:0;flex:1}.tabBar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:1000;box-sizing:border-box;justify-content:space-around;align-items:stretch;min-height:calc(3.35rem + env(safe-area-inset-bottom,0px));padding:.3rem .15rem max(.35rem,env(safe-area-inset-bottom,0px));margin:0;list-style:none;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-top:1px solid var(--border);box-shadow:0 -6px 24px #0000000f}@media(prefers-color-scheme:dark){.tabBar{box-shadow:0 -6px 28px #00000073}}.tabBarLink{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;min-width:0;max-width:6rem;margin:0 auto;padding:.3rem .15rem;text-decoration:none!important;color:inherit;font-weight:600;border-radius:var(--radius-sm);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.tabBarLink:active{opacity:.88;transform:scale(.97)}.tabBarLink:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tabBarLabel{font-size:.625rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabBarLink.active .tabBarLabel{color:var(--accent)}.stat{display:flex;flex-direction:column;gap:.1rem}.stat .statValue{font-size:1.8rem;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.stat .statLabel{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}.statGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:1rem}.todayHero{padding:1.5rem 1.4rem;border-radius:var(--radius-lg);background:var(--card-elev-bg);border:1px solid var(--border);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1.1rem}.todayHero .eyebrow{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.todayHero h2{font-size:1.65rem;letter-spacing:-.015em;margin:0}.todayHero .objective{color:var(--muted);margin:0}.planDayList{display:flex;flex-direction:column;gap:.6rem}.planDay{display:grid;grid-template-columns:5.5rem 1fr auto;gap:1rem;align-items:center;padding:.95rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);box-shadow:var(--shadow-sm)}.planDay .planDayDate{font-variant-numeric:tabular-nums;font-weight:700;font-size:.95rem;color:var(--text)}.planDay .planDayDate small{display:block;font-weight:500;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.planDay .planDayBody h3{font-size:1rem;margin:0}.planDay .planDayBody p{margin:.15rem 0 0;color:var(--muted);font-size:.88rem}.planDay .planDayMeta{font-size:.85rem;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;min-width:6.5rem;display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.planDayDistance{font-weight:700;font-size:.98rem;color:var(--text);line-height:1.25}.planDayDistanceEst .planDayDistanceHint{font-size:.68rem;font-weight:600;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.planDayTime{color:var(--text);font-weight:600;font-size:.88rem}.planDayPace{margin:0}.planDayTapHint{display:block;margin-top:.4rem;font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;font-weight:600;color:var(--muted)}.planDayWrap{display:block;width:100%;margin:0;padding:0;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit;border-radius:var(--radius-md)}.planDayWrap:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.planDayWrap:hover .planDay{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.planDay.rest{opacity:.7}.planDay.long_run{border-left:4px solid var(--accent);padding-left:.85rem}.planDay.tempo,.planDay.intervals{border-left:4px solid #1f6feb;padding-left:.85rem}.planDay.recovery{border-left:4px solid #1e9a4a;padding-left:.85rem}.planDay.easy{border-left:4px solid #2e7d32;padding-left:.85rem}.planDay.strides{border-left:4px solid #00695c;padding-left:.85rem}.planDayTitleRow{display:flex;align-items:flex-start;gap:.45rem}.planDayTitleRow h3{flex:1;min-width:0}.planDayDoneBadge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;margin-top:.05rem;border-radius:50%;background:color-mix(in srgb,#1e9a4a 85%,transparent);color:#fff;font-size:.8rem;font-weight:800;line-height:1}.planDaySkippedBadge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;margin-top:.05rem;border-radius:50%;background:color-mix(in srgb,var(--muted) 35%,transparent);color:var(--muted);font-size:.85rem;font-weight:700;line-height:1}.planDayRating{margin:.35rem 0 0;font-size:.8rem;font-weight:600;color:color-mix(in srgb,var(--text) 82%,var(--muted))}.planDayRunLink{display:inline-block;margin-top:.35rem;font-size:.82rem;font-weight:700;color:var(--accent);text-decoration:none}.planDayRunLink:hover{text-decoration:underline}.planDayCompleted{border-color:color-mix(in srgb,#1e9a4a 38%,var(--border));background:color-mix(in srgb,#1e9a4a 6%,var(--card-bg))}.planDaySkipped .planDayBody p{opacity:.85}.planWeekList{display:flex;flex-direction:column;gap:1.35rem}.workoutDetailBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000007a;z-index:80;display:flex;align-items:flex-end;justify-content:center;padding:0}@media(min-width:560px){.workoutDetailBackdrop{align-items:center;padding:1.5rem}}.workoutDetailModal{background:var(--card-elev-bg);border:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:34rem;width:100%;max-height:min(90vh,44rem);overflow:auto;padding:1.2rem 1.25rem 1.4rem;box-shadow:var(--shadow-lg);z-index:81}@media(min-width:560px){.workoutDetailModal{border-radius:var(--radius-lg)}}.workoutDetailModal header{display:flex;justify-content:space-between;align-items:flex-start;gap:.85rem;margin-bottom:.65rem}.weekReportSummaryModal{display:flex;flex-direction:column;overflow:hidden}.weekReportSummaryModal .workoutDetailSteps{margin:0;padding-left:0;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto}@media(min-width:900px){.weekReportSummaryModal{max-width:min(56rem,calc(100vw - 3rem));max-height:min(92vh,56rem);padding:1.35rem 1.5rem 1.5rem}.weekReportSummaryModal header h2{font-size:1.35rem}}.workoutDetailModal .workoutDetailMeta{margin:0 0 .85rem;font-size:.88rem;color:var(--muted);line-height:1.45}.workoutDetailSteps{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.5rem}.workoutDetailSteps li{line-height:1.45;font-size:.92rem}.workoutDetailSchema{font-size:.72rem;color:var(--muted);margin:.85rem 0 0;letter-spacing:.03em}.workoutDetailCompletion{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.workoutDetailCompletionTitle{margin:0;font-weight:700;font-size:.95rem;display:flex;align-items:center;gap:.35rem}.workoutDetailCompletionMeta{margin:.35rem 0 0;font-size:.88rem;color:var(--muted);line-height:1.45}.workoutDetailCompletionSkipped{color:var(--muted);font-weight:600}.planDayDoneIcon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;background:color-mix(in srgb,#1e9a4a 85%,transparent);color:#fff;font-size:.72rem;font-weight:800}.workoutDetailRunLink{display:inline-block;margin-top:.5rem;font-weight:700;color:var(--accent);text-decoration:none}.workoutDetailRunLink:hover{text-decoration:underline}.planBlockSummary{padding:1.35rem 1.3rem;border-radius:var(--radius-lg);background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 14%,var(--card-elev-bg)) 0%,var(--card-elev-bg) 55%);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:1rem}.planBlockSummary .planBlockSummaryEyebrow{margin:0;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--accent)}.planBlockSummary .planBlockSummaryTitle{margin:0;font-size:1.45rem;font-weight:800;letter-spacing:-.02em;line-height:1.2;color:var(--text)}.planBlockSummarySub{margin:0;font-size:.9rem;color:var(--muted);line-height:1.45}.planBlockSummaryGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:1rem 1.1rem}.planBlockStat{display:flex;flex-direction:column;gap:.15rem;min-width:0}.planBlockStatValue{font-size:1.28rem;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text);line-height:1.15}.planBlockStatLabel{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);line-height:1.35}.planBlockSummaryFoot{margin:0;padding-top:.15rem;border-top:1px solid var(--border)}.planWeekSection{display:flex;flex-direction:column;gap:.65rem}.planWeekHeader{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem;padding:.15rem 0 .35rem;border-bottom:1px solid var(--border)}.planWeekHeader h2{font-size:1.02rem;font-weight:700;margin:0;letter-spacing:-.012em;color:var(--text)}.planWeekMeta{margin:0;font-size:.82rem;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:500}.planWeekDays{display:flex;flex-direction:column;gap:.6rem}.planColorLegend{margin-top:1rem;padding:1rem 1.1rem!important}.planColorLegendTitle{margin:0;font-size:1rem;font-weight:700}.planColorLegendSub{margin:.35rem 0 .75rem}.planColorLegendList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.planColorLegendItem{display:flex;align-items:flex-start;gap:.65rem;font-size:.88rem;line-height:1.4;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.planColorLegendItem strong{color:var(--text);font-weight:600}.planLegendStripe{flex-shrink:0;width:4px;min-height:2.5rem;border-radius:2px;margin-top:.12rem}.planLegendStripe--long{background:var(--accent)}.planLegendStripe--quality{background:#1f6feb}.planLegendStripe--recovery{background:#1e9a4a}.planLegendStripe--progressive{background:#6a1b9a}.planLegendStripe--rest{background:color-mix(in srgb,var(--muted) 45%,var(--card-bg));border:1px solid var(--border);min-height:2.25rem}.planLegendStripe--easy{background:var(--card-bg);border:2px solid var(--border)}.planPdfDownloadRow{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.5rem;margin:.5rem 0 .15rem}.planDash{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:none}display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; } .planDashTitleBlock{display:flex;flex-direction:column;gap:.25rem;min-width:0}.planDashTitle{margin:0;font-size:clamp(1.85rem,4vw,2.35rem);font-weight:800;letter-spacing:-.035em;line-height:1.1}.planDashSub{margin:0;font-size:.95rem;color:var(--muted);line-height:1.4}.planDashWizBtn{flex-shrink:0;display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .85rem;border-radius:999px;border:1.5px solid var(--accent);background:var(--card-elev-bg);color:var(--accent);font-weight:700;font-size:.82rem;text-decoration:none!important;transition:border-color .12s ease,box-shadow .12s ease;white-space:nowrap}.planDashWizBtn:hover{box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 15%,transparent)}.planBlockHero{display:block;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1rem 1.15rem;text-decoration:none!important;color:inherit!important;transition:border-color .12s ease,box-shadow .12s ease}.planBlockHero:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.planPeriodization{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1rem 1.15rem;display:flex;flex-direction:column;gap:.65rem}.planPeriodizationKicker{margin:0;font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.planPeriodizationTitle{margin:0;font-size:1.05rem;font-weight:800}.planPeriodizationPills{display:flex;flex-wrap:wrap;gap:.45rem}.planPeriodizationPill{font-size:.75rem;font-weight:700;border:1px solid var(--border);border-radius:999px;padding:.2rem .55rem}.planPeriodizationPillMuted{color:var(--muted)}.planPeriodizationStats{display:flex;flex-wrap:wrap;gap:1rem}.planPeriodizationStatVal{margin:0;font-size:1rem;font-weight:800}.planPeriodizationStatLbl{margin:.15rem 0 0;font-size:.72rem;font-weight:600;color:var(--muted)}.planPeriodizationChartLbl{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--muted)}.planPeriodizationChartTrack{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--border)}.planPeriodizationChartSeg{display:block;min-width:4px;height:10px}.planPeriodizationLegend{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.35rem}.planPeriodizationLegendItem{display:inline-flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:600;color:var(--muted)}.planPeriodizationLegendDot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.planPeriodizationNote{margin:0}.planPeriodizationRisk{border-radius:var(--radius-md);border:1px solid var(--border);padding:.65rem .75rem}.planPeriodizationRisk--danger{border-color:#f87171;background:color-mix(in srgb,#f87171 12%,transparent)}.planPeriodizationRisk--warn{border-color:#fbbf24;background:color-mix(in srgb,#fbbf24 12%,transparent)}.planPeriodizationRisk--ok{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,transparent)}.planPeriodizationRiskTitle{margin:0 0 .25rem;font-size:.88rem;font-weight:800}.planPeriodizationRiskBody{margin:0;font-size:.82rem;line-height:1.45;color:var(--muted)}.planPeriodizationRiskMeta{margin:.35rem 0 0}.planPeriodizationNotes{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.25rem;font-size:.82rem;line-height:1.45;color:var(--muted)}.planPeriodizationRoadmap{display:flex;flex-direction:column;gap:.35rem}.planPeriodizationRoadmapToggle{display:flex;align-items:center;gap:.45rem;width:100%;margin:0;padding:.15rem 0;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit}.planPeriodizationRoadmapToggle:hover .planPeriodizationChartLbl{color:var(--text)}.planPeriodizationRoadmapToggle:focus-visible{outline:2px solid var(--accent, #ff5b00);outline-offset:2px;border-radius:4px}.planPeriodizationRoadmapChev{flex-shrink:0;width:1.15rem;height:1.15rem;position:relative;display:flex;align-items:center;justify-content:center;color:var(--muted)}.planPeriodizationRoadmapChev:before{content:"";display:block;width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);margin-bottom:.12rem;transition:transform .18s ease}.planPeriodizationRoadmapChev--open:before{transform:rotate(45deg);margin-bottom:0;margin-top:.1rem}.planPeriodizationRoadmapToggle .planPeriodizationChartLbl{flex:1;margin:0}.planPeriodizationRoadmapCount{margin:0;font-weight:600}.planPeriodizationRoadmapList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.planPeriodizationRoadmapRow{display:flex;align-items:center;gap:.65rem;padding:.55rem 0;border-bottom:1px solid var(--border)}.planPeriodizationRoadmapRow:last-child{border-bottom:none}.planPeriodizationRoadmapDot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.planPeriodizationRoadmapMain{flex:1;min-width:0;display:flex;flex-direction:column;gap:.1rem}.planPeriodizationRoadmapTitle{font-size:.88rem;font-weight:800}.planPeriodizationRoadmapMeta{margin:0}.planPeriodizationRoadmapFocus{display:block;margin-top:.15rem;line-height:1.35}.planVolumeProgression{margin:.75rem 0 0;padding:1rem 1.1rem;border-radius:var(--radius-lg, 12px);border:1px solid var(--border);background:var(--card-elev-bg)}.planVolumeProgressionToggle{display:flex;align-items:flex-start;gap:.55rem;width:100%;text-align:left;padding:0;border:none;background:transparent;color:inherit;cursor:pointer}.planVolumeProgressionToggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.planVolumeProgressionChev{flex-shrink:0;width:.45rem;height:.45rem;margin-top:.35rem;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform .15s ease}.planVolumeProgressionChev--open{transform:rotate(45deg);margin-top:.2rem}.planVolumeProgressionToggleMain{flex:1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.planVolumeProgressionTitle{font-weight:800;font-size:.95rem}.planVolumeProgressionSub{font-size:.78rem;line-height:1.4;margin:0}.planVolumeProgressionCount{font-size:.72rem;font-weight:600;max-width:7rem;text-align:right;flex-shrink:0}.planVolumeProgressionBody{margin-top:.85rem;display:flex;flex-direction:column;gap:.65rem}.planVolumeProgressionNote{border-radius:var(--radius-md, 8px);border:1px solid;padding:.65rem .75rem}.planVolumeProgressionNote--warn{border-color:color-mix(in srgb,#fbbf24 35%,var(--border));background:color-mix(in srgb,#fbbf24 8%,var(--card-elev-bg))}.planVolumeProgressionNoteTitle{margin:0;font-size:.78rem;font-weight:800;color:#fbbf24}.planVolumeProgressionNoteBody{margin:.25rem 0 0;font-size:.78rem;line-height:1.4}.planVolumeProgressionList{list-style:none;margin:0;padding:0}.planVolumeProgressionRow{display:flex;align-items:flex-start;gap:.65rem;padding:.55rem 0;border-bottom:1px solid var(--border)}.planVolumeProgressionRow:last-child{border-bottom:none}.planVolumeProgressionDot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:.35rem}.planVolumeProgressionRowMain{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.planVolumeProgressionRowTop{display:flex;align-items:center;flex-wrap:wrap;gap:.45rem}.planVolumeProgressionRowWeek{font-size:.82rem;font-weight:800}.planVolumeProgressionRowKind{font-size:.72rem;font-weight:800;letter-spacing:.02em}.planVolumeProgressionRowTarget{margin-left:auto;font-size:.78rem;font-weight:700}.planVolumeProgressionRowMode{font-size:.72rem;font-weight:600}.planVolumeProgressionRowReason{margin:0;font-size:.75rem;line-height:1.4}.planVolumeWeekNote{margin:.45rem 0 .35rem;padding:.55rem .65rem;border-radius:var(--radius-md, 8px);border:1px solid}.planVolumeWeekNoteHead{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.planVolumeWeekNoteKind{font-size:.75rem;font-weight:800;letter-spacing:.03em}.planVolumeWeekNoteTarget{font-size:.75rem;font-weight:700}.planVolumeWeekNoteReason{margin:.25rem 0 0;font-size:.75rem;line-height:1.4}.planVolumeWeekChip{display:inline-flex;align-items:center;gap:.35rem;margin-top:.25rem;padding:.15rem .55rem;border-radius:999px;border:1px solid;align-self:flex-start}.planVolumeWeekChipDot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.planVolumeWeekChipKind{font-size:.68rem;font-weight:800}.planVolumeWeekChipDelta{font-size:.68rem;font-weight:600}.planRecalibrateTrigger{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;width:100%;text-align:left;padding:1rem 1.1rem;margin:.75rem 0 0;border-radius:var(--radius-lg, 12px);border:1.5px solid color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--card-elev-bg);color:var(--text);cursor:pointer}.planRecalibrateTrigger:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--card-elev-bg))}.planRecalibrateTriggerTitle{font-weight:800;font-size:1rem}.planRecalibrateTriggerSub{line-height:1.4}.planRecalibrateBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;background:#00000094;display:flex;align-items:center;justify-content:center;padding:1rem}.planRecalibrateModal{position:relative;z-index:1;width:min(520px,100%);max-height:min(85vh,720px);overflow:auto;background:var(--card-elev-bg);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-lg, 12px);box-shadow:0 20px 60px #00000073}.planRecalibrateModalHead{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.1rem;border-bottom:1px solid var(--border);background:var(--card-elev-bg);position:sticky;top:0;z-index:2}.planRecalibrateModalTitle{margin:0;font-size:1.1rem}.planRecalibrateModalBody{padding:1rem 1.1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem;background:var(--card-elev-bg)}.planRecalibrateInfoBox{border:1px solid var(--border);border-radius:var(--radius-md, 10px);padding:.75rem .85rem;background:color-mix(in srgb,var(--accent) 8%,var(--card-elev-bg));display:flex;flex-direction:column;gap:.35rem}.planRecalibrateInfoTitle{margin:0;font-weight:800;font-size:.88rem}.planRecalibrateInfoBody{margin:0;font-size:.85rem;line-height:1.45;color:var(--muted)}.planRecalibrateInfoNote{margin:0;font-size:.8rem;font-weight:700;color:#34d399}.planRecalibrateHeadline{margin:0;font-size:1.25rem;line-height:1.3}.planRecalibrateSummary{margin:0;line-height:1.45}.planRecalibrateProposalList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.planRecalibrateProposal{border:1px solid var(--border);border-radius:var(--radius-md, 10px);padding:.75rem .85rem;display:flex;flex-direction:column;gap:.35rem}.planRecalibrateProposalHead{margin:0;font-weight:800;font-size:.9rem}.planRecalibrateSuccess{margin:0;color:#34d399;font-weight:700}.planPeriodizationRoadmapBadge{font-size:.62rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:.2rem .45rem;flex-shrink:0}.planPeriodizationRoadmapBadge--scheduled{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.planPeriodizationRoadmapBadge--partial{background:color-mix(in srgb,#fbbf24 18%,transparent);color:#fbbf24}.planPeriodizationRoadmapBadge--preview{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.planBlockHeroKicker{margin:0 0 .5rem;font-size:.65rem;font-weight:800;letter-spacing:.1em;color:var(--muted)}.planBlockHeroTop{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.planBlockHeroMain{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.planBlockHeroDates{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:-.02em;line-height:1.25}.planBlockHeroPillRow{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.planWeekCountPill{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;background:#34d39933;color:#34d399;font-size:.72rem;font-weight:800}.planBlockPhaseLine{margin:0;font-size:.88rem;font-weight:600;color:var(--muted)}.planBlockWeekLine{margin:.15rem 0 0;font-size:.78rem;font-weight:700;color:var(--muted)}.planBlockProgTrack{margin-top:.35rem;height:.38rem;border-radius:999px;background:color-mix(in srgb,var(--text) 10%,transparent);overflow:hidden}.planBlockProgFill{height:100%;border-radius:999px;background:var(--accent);transition:width .2s ease}.planBlockHeroRight{display:flex;flex-direction:row;align-items:center;gap:.65rem;flex-shrink:0}.planFitBox{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.planFitLbl{margin:0;font-size:.58rem;font-weight:800;letter-spacing:.06em;color:var(--muted)}.planFitValRow{display:flex;align-items:center;gap:.35rem}.planFitVal{font-size:1.35rem;font-weight:800;letter-spacing:-.03em;line-height:1}.planTrendBadge{padding:.12rem .35rem;border-radius:.35rem;background:#34d39938;color:#34d399;font-size:.65rem;font-weight:800}.planReadinessLbl{margin:0;font-size:.72rem;font-weight:700;color:#34d399}.planWeekDonut{display:flex;flex-direction:row;width:4.75rem;height:4.75rem;border-radius:50%;overflow:hidden;flex-shrink:0}.planWeekDonutSeg{flex:1;min-width:0}.planWeekDonutRest{flex:1;background:color-mix(in srgb,var(--muted) 35%,transparent)}.planWeekDonutCenter{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.planDonutWrap{position:relative;width:4.75rem;height:4.75rem;flex-shrink:0}.planDonutNum{font-size:1.05rem;font-weight:800;line-height:1}.planDonutCap{font-size:.58rem;font-weight:700;color:var(--muted);margin-top:.05rem}.planHeroChev{font-size:1.1rem;color:var(--muted);line-height:1;opacity:.75}.planMetricGrid{display:flex;flex-direction:row;flex-wrap:wrap;gap:.65rem}.planMetricCell{flex:1 1 9.5rem;min-width:min(100%,9rem);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:.75rem .85rem;display:flex;flex-direction:column;gap:.25rem}.planMetricIcon{font-size:.95rem;line-height:1}.planMetricBig{font-size:1.15rem;font-weight:800;letter-spacing:-.02em}.planMetricCap{font-size:.68rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.planMetricDelta{font-size:.72rem;font-weight:800}.planMetricDeltaPos{color:#34d399}.planMetricDeltaNeg{color:#f87171}.planMetricStatus{font-size:.72rem;font-weight:800;color:var(--accent)}.planAiCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:.95rem 1rem;display:flex;flex-direction:row;align-items:center;gap:.85rem}.planAiCardBody{flex:1;min-width:0;display:flex;flex-direction:column;gap:.4rem}.planAiHead{display:flex;align-items:center;gap:.35rem}.planAiKicker{margin:0;font-size:.65rem;font-weight:800;letter-spacing:.08em;color:#a78bfa}.planAiBody{margin:0;font-size:.9rem;line-height:1.45;color:var(--muted)}.planSectionRow{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.15rem}.planSectionK{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.08em}.planSectionAccent{font-size:.82rem;font-weight:700;color:var(--accent)}.planDayStripWrap{overflow-x:auto;margin:0 -.15rem;padding:.15rem .15rem .35rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.planDayStrip{display:flex;flex-direction:row;gap:.65rem}.planDayChip{scroll-snap-align:start;flex:0 0 7.25rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);padding:.65rem .7rem;cursor:pointer;text-align:left;display:flex;flex-direction:column;gap:.35rem;transition:border-color .12s ease,box-shadow .12s ease;color:inherit;font:inherit}.planDayChip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.planDayChip:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.planDayChipToday{border-width:2px;border-color:var(--accent);box-shadow:0 2px 12px color-mix(in srgb,var(--accent) 12%,transparent)}.planDayChipTop{font-size:.62rem;font-weight:700;color:var(--muted)}.planDayChipTitle{margin:0;font-size:.82rem;font-weight:800;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.planDayChipMeta{font-size:.68rem;font-weight:600;color:var(--muted)}.planDayChipRating{font-size:.62rem;font-weight:700;color:#34d399;line-height:1.25}.planWorkoutsHead{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.planCalLink{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;font-size:.88rem;color:var(--accent);text-decoration:none!important}.planCalLink:hover{text-decoration:underline!important}.planWorkRow{position:relative;display:flex;flex-direction:row;align-items:center;gap:.55rem;padding:.88rem .85rem .88rem calc(4px + .7rem);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;overflow:hidden;transition:border-color .12s ease,box-shadow .12s ease,transform .12s ease}.planWorkRow--rest{opacity:.92}.planWorkRow:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.planWorkRow:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:0 4px 16px color-mix(in srgb,#000 6%,transparent)}.planWorkAccent{position:absolute;left:0;top:0;bottom:0;width:4px}.planWorkIcon{flex-shrink:0;width:2.6rem;height:2.6rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;line-height:1;background:color-mix(in srgb,var(--muted) 12%,var(--card-bg));border:1px solid var(--border);box-shadow:0 1px color-mix(in srgb,#fff 5%,transparent)}.planWorkIcon--easy{background:color-mix(in srgb,#ff5b00 14%,var(--card-bg));border-color:color-mix(in srgb,#ff5b00 35%,var(--border))}.planWorkIcon--recovery{background:color-mix(in srgb,#34d399 14%,var(--card-bg));border-color:color-mix(in srgb,#34d399 30%,var(--border))}.planWorkIcon--long_run,.planWorkIcon--long_run_fast_finish{background:color-mix(in srgb,#ef4444 14%,var(--card-bg));border-color:color-mix(in srgb,#ef4444 32%,var(--border))}.planWorkIcon--tempo,.planWorkIcon--intervals{background:color-mix(in srgb,#a78bfa 16%,var(--card-bg));border-color:color-mix(in srgb,#a78bfa 32%,var(--border))}.planWorkIcon--rest{font-size:1.5rem;opacity:.5;background:color-mix(in srgb,var(--muted) 8%,var(--card-bg))}.planWorkMain{flex:1;min-width:0;padding-left:0;display:flex;flex-direction:column;gap:.22rem}.planWorkDate{font-size:.58rem;font-weight:800;letter-spacing:.07em;color:var(--muted)}.planWorkTitle{margin:0;font-size:1rem;font-weight:800;letter-spacing:-.02em}.planWorkMeta{margin:0;font-size:.8rem;color:var(--muted)}.planWorkStatusRow{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;margin-top:.05rem}.planWorkDone{font-size:.78rem;font-weight:800;color:#34d399;display:inline-flex;align-items:center;gap:.35rem}.planWorkDoneDot{width:.55rem;height:.55rem;border-radius:50%;background:#34d399;box-shadow:0 0 0 3px color-mix(in srgb,#34d399 22%,transparent)}.planWorkUpcoming{font-size:.78rem;font-weight:700;color:var(--muted);display:inline-flex;align-items:center;gap:.35rem}.planWorkUpcomingIcon{width:.85rem;height:.85rem;border-radius:50%;border:2px solid color-mix(in srgb,var(--muted) 45%,var(--border));position:relative}.planWorkUpcomingIcon:after{content:"";position:absolute;left:50%;top:50%;width:.35rem;height:2px;background:var(--muted);transform:translate(-50%,-50%);border-radius:1px}.planWorkToday{font-size:.78rem;font-weight:700;color:#38bdf8;display:inline-flex;align-items:center;gap:.35rem}.planWorkTodayIcon{width:.85rem;height:.85rem;border-radius:50%;border:2px solid color-mix(in srgb,#38bdf8 55%,var(--border));position:relative;box-shadow:0 0 0 3px color-mix(in srgb,#38bdf8 18%,transparent)}.planWorkTodayIcon:after{content:"";position:absolute;left:50%;top:50%;width:.35rem;height:.35rem;background:#38bdf8;transform:translate(-50%,-50%);border-radius:50%}.planWorkMissed{font-size:.78rem;font-weight:700;color:#fb7185;display:inline-flex;align-items:center;gap:.35rem}.planWorkMissedIcon{width:.85rem;height:.85rem;border-radius:50%;border:2px solid color-mix(in srgb,#fb7185 55%,var(--border));position:relative}.planWorkMissedIcon:after{content:"";position:absolute;left:50%;top:50%;width:.45rem;height:2px;background:#fb7185;transform:translate(-50%,-50%) rotate(-40deg);border-radius:1px}.planWorkMissedIcon:before{content:"";position:absolute;left:50%;top:50%;width:.45rem;height:2px;background:#fb7185;transform:translate(-50%,-50%) rotate(40deg);border-radius:1px}.planWorkSkip{font-size:.82rem;font-weight:700;color:#f59e0b}.planWorkPace{margin:0;font-size:.76rem;color:var(--muted);display:flex;align-items:center;gap:.35rem}.planWorkPaceIcon{width:.65rem;height:.65rem;border:2px solid var(--muted);border-radius:50%;flex-shrink:0;opacity:.75}.planWorkPaceIcon:after{content:"";display:block;width:2px;height:.28rem;margin:.08rem auto 0;background:var(--muted);border-radius:1px}.planWorkRating{font-size:.78rem;font-weight:600;color:#34d399;line-height:1.3}.planWorkMicroBars{display:flex;flex-direction:row;align-items:flex-end;gap:3px;height:1rem;width:2.25rem;flex-shrink:0}.planWorkMicroBar{width:5px;border-radius:2px;opacity:.88}.planWorkChev{color:var(--muted);font-size:.85rem;flex-shrink:0;opacity:.7}.planWorkBarsSpacer{width:2.25rem;flex-shrink:0}.planWeekDivider{margin:.85rem 0 .35rem;display:flex;flex-direction:column;gap:.15rem}.planWeekDivider--toggle{margin:.85rem 0 .35rem;padding:.65rem .65rem .65rem .5rem;width:100%;text-align:left;cursor:pointer;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--muted) 7%,var(--card-bg));border-radius:var(--radius-md, 10px);display:flex;flex-direction:row;align-items:flex-start;gap:.55rem;color:inherit;font:inherit;box-sizing:border-box;transition:background .15s ease,border-color .15s ease}.planWeekDivider--toggleExpanded{border-color:color-mix(in srgb,var(--accent, #ff5b00) 35%,var(--border));background:color-mix(in srgb,var(--accent, #ff5b00) 6%,var(--card-bg))}.planWeekDivider--toggleCollapsed{border-style:dashed;opacity:.97}.planWeekDivider--toggle:hover{background:color-mix(in srgb,var(--muted) 11%,var(--card-bg))}.planWeekDivider--toggleExpanded:hover{background:color-mix(in srgb,var(--accent, #ff5b00) 9%,var(--card-bg))}.planWeekDivider--toggle:focus-visible{outline:2px solid var(--accent, #ff5b00);outline-offset:2px}.planWeekDividerChev{flex-shrink:0;width:1.15rem;height:1.15rem;margin-top:.2rem;position:relative;display:flex;align-items:center;justify-content:center;color:var(--muted)}.planWeekDividerChev:before{content:"";display:block;width:.45rem;height:.45rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);margin-bottom:.12rem;transition:transform .18s ease}.planWeekDividerChev--open:before{transform:rotate(45deg);margin-bottom:0;margin-top:.1rem}.planWeekDividerTextCol{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1}.planWeekDividerLabelRow{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.planWeekDividerLabelRow .planWeekBadge--open,.planWeekDividerLabelRow .planWeekBadge--shut{margin-left:auto}.planWeekBadge{font-size:.65rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:.18rem .45rem;border-radius:999px;border:1px solid var(--border);background:var(--card-bg);color:var(--muted)}.planWeekBadge--current{border-color:color-mix(in srgb,var(--accent, #ff5b00) 45%,var(--border));color:var(--accent, #ff5b00);background:color-mix(in srgb,var(--accent, #ff5b00) 10%,var(--card-bg))}.planWeekBadge--open{border-color:color-mix(in srgb,#1e9a4a 40%,var(--border));color:#147a3a;background:color-mix(in srgb,#1e9a4a 12%,var(--card-bg))}.planWeekBadge--shut{border-color:color-mix(in srgb,var(--muted) 40%,var(--border));color:var(--muted);background:color-mix(in srgb,var(--muted) 10%,var(--card-bg))}.planWeekDividerHint{margin:0;font-size:.74rem;font-weight:500;color:var(--muted);line-height:1.35}.planWeekCollapsible{display:flex;flex-direction:column;gap:.55rem}.planWeekCollapsible--shut .planWeekDivider--toggleCollapsed{margin-bottom:0}.planWeekCollapsibleBody{display:flex;flex-direction:column;gap:.55rem}.planWeekCollapsibleBody--modern{gap:.65rem}.planWeekHero{position:relative;border-radius:var(--radius-lg, 16px);border:1px solid color-mix(in srgb,var(--accent, #ff5b00) 28%,var(--border));background:linear-gradient(145deg,color-mix(in srgb,var(--card-elev-bg) 92%,#0f172a) 0%,var(--card-elev-bg) 48%,color-mix(in srgb,var(--card-elev-bg) 88%,#1e293b) 100%);padding:1rem 1.05rem 1.1rem;overflow:hidden;box-shadow:0 4px 24px color-mix(in srgb,#000 18%,transparent)}.planWeekHeroGlow{position:absolute;pointer-events:none;right:-18%;top:-35%;width:55%;height:85%;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent, #ff5b00) 22%,transparent),transparent 72%);opacity:.9}.planWeekHeroTopBar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.planWeekHeroKickerRow{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.planWeekPhaseBadge{display:inline-flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border);border-radius:999px;padding:.15rem .55rem}.planWeekPhaseBadge--compact{font-size:.62rem;padding:.1rem .45rem}.planWeekPhaseDot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.planWeekPhaseTarget{text-transform:none;font-weight:600;letter-spacing:0}.planWeekHeroKicker{font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.planWeekHeroKicker--current{color:var(--accent, #ff5b00)}.planWeekHeroCollapseBtn{flex-shrink:0;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--muted) 8%,var(--card-bg));cursor:pointer;color:inherit;transition:background .15s ease}.planWeekHeroCollapseBtn:hover{background:color-mix(in srgb,var(--muted) 14%,var(--card-bg))}.planWeekHeroCollapseBtn:focus-visible{outline:2px solid var(--accent, #ff5b00);outline-offset:2px}.planWeekHeroCollapseChev:before{content:"";display:block;width:.45rem;height:.45rem;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-135deg);margin-top:.2rem}.planWeekHeroRange{position:relative;margin:0;font-size:clamp(1.35rem,3.8vw,1.75rem);font-weight:800;letter-spacing:-.03em;line-height:1.15}.planWeekHeroPlanned{position:relative;margin:.2rem 0 0;font-size:.88rem;font-weight:600;color:var(--muted)}.planWeekHeroGrid{position:relative;display:flex;flex-wrap:wrap;gap:1rem 1.25rem;align-items:flex-start;margin-top:1rem}.planWeekHeroStatus{flex:1 1 12rem;min-width:0;display:flex;flex-direction:column;gap:.35rem}.planWeekHeroStatStack{display:flex;flex-direction:column;gap:.45rem;flex:1 1 8rem;max-width:13rem;min-width:7rem}@media(max-width:520px){.planWeekHeroStatStack{flex-direction:row;flex:1 1 100%;max-width:none}.planWeekHeroStatCard{flex:1}}.planWeekRing{position:relative;width:5.4rem;height:5.4rem;flex-shrink:0}.planWeekRingGrad{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%}.planWeekRingHole{position:absolute;top:11px;right:11px;bottom:11px;left:11px;border-radius:50%;background:var(--card-elev-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:inset 0 1px color-mix(in srgb,#fff 6%,transparent)}.planWeekRingNum{font-size:1.15rem;font-weight:800;letter-spacing:-.03em;line-height:1}.planWeekRingSlash{font-weight:700;opacity:.45;margin:0 .05em}.planWeekRingCap{font-size:.58rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:.15rem}.planWeekHeroStatusLine{margin:0;font-size:.92rem;font-weight:800;display:flex;align-items:center;gap:.35rem}.planWeekHeroStatusLine--ok{color:#34d399}.planWeekHeroCheck{width:1rem;height:1rem;border-radius:50%;background:color-mix(in srgb,#34d399 22%,transparent);flex-shrink:0;position:relative}.planWeekHeroCheck:after{content:"";position:absolute;left:50%;top:45%;width:.25rem;height:.45rem;border:solid #34d399;border-width:0 2px 2px 0;transform:translate(-50%,-50%) rotate(45deg)}.planWeekHeroBarTrack{height:.42rem;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);overflow:hidden}.planWeekHeroBarFill{height:100%;border-radius:999px;background:linear-gradient(90deg,#34d399,#10b981);transition:width .25s ease}.planWeekHeroProgressCopy{margin:0;font-size:.78rem;font-weight:600;color:var(--muted)}.planWeekHeroPct{margin:0;font-size:.72rem;font-weight:800;color:var(--muted);letter-spacing:.02em}.planWeekHeroWeekMatch{margin:.2rem 0 0;font-size:.72rem;font-weight:800;color:#a7f3d0;letter-spacing:.02em}.planWeekHeroStatStack{display:flex;flex-direction:column;gap:.45rem;min-width:7rem}.planWeekHeroStatCard{display:flex;align-items:center;gap:.45rem;padding:.45rem .5rem;border-radius:12px;border:1px solid var(--border);background:color-mix(in srgb,var(--muted) 6%,var(--card-bg))}.planWeekHeroStatIcon{font-size:1rem;line-height:1;opacity:.9}.planWeekHeroStatText{display:flex;flex-direction:column;gap:.05rem;min-width:0}.planWeekHeroStatVal{font-size:.88rem;font-weight:800;letter-spacing:-.02em}.planWeekHeroStatLbl{font-size:.62rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.planWeekHeroStatSub{display:block;margin-top:.15rem;font-size:.62rem;line-height:1.25;font-weight:500}.planWeekDividerLabel{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.06em;color:var(--muted)}.planWeekDividerMeta{margin:0;font-size:.82rem;font-weight:600;color:var(--text)}.planWeekDividerFirst,.planWeekDivider--toggle.planWeekDividerFirst{margin-top:0}.planFooterMeta{margin:0;font-size:.82rem;color:var(--muted);text-align:center}.planDashActions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.15rem}.planDashActionsSpacer{margin-left:auto}.planDetailsBlock{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg);overflow:hidden}.planDetailsBlock summary{cursor:pointer;padding:.75rem .9rem;font-weight:700;font-size:.88rem;list-style:none}.planDetailsBlock summary::-webkit-details-marker{display:none}.planDetailsInner{padding:0 .9rem .9rem;border-top:1px solid var(--border)}.planDetailsInner .planColorLegend.card{border:none;box-shadow:none;background:transparent;padding:0;margin:0}.planModernSummary{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm)}.planDayChip{border-radius:var(--radius-md)}.planDay.long_run_fast_finish{border-left:4px solid #6a1b9a;padding-left:.85rem}.runsDash{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:none}.runsTopRow{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.runsTopActions{display:flex;flex-direction:column;align-items:flex-end;gap:.65rem;flex-shrink:0}.runsDedupeBtn{white-space:nowrap}.runsTitleBlock{flex:1;min-width:0}.runsTitle{margin:0;font-size:clamp(1.85rem,4vw,2.35rem);font-weight:800;letter-spacing:-.035em;line-height:1.1}.runsSub{margin:.35rem 0 0;font-size:.95rem;color:var(--muted);line-height:1.45}.runsRangeSeg{display:flex;flex-direction:column;gap:.35rem;flex-shrink:0}.runsRangeLabel{margin:0;font-size:.58rem;font-weight:800;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}.runsRangeBtns{display:flex;flex-wrap:wrap;gap:.35rem;justify-content:flex-end}.runsRangeBtn{padding:.38rem .55rem;border-radius:999px;border:1px solid var(--border);background:var(--card-elev-bg);font-size:.68rem;font-weight:700;color:var(--muted);cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.runsRangeBtn:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));color:var(--text)}.runsRangeBtnOn{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.runsSummaryGrid{display:flex;flex-direction:row;flex-wrap:wrap;gap:.65rem}.runsSumCell{flex:1 1 9.5rem;min-width:min(100%,9.5rem);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:.75rem .85rem;display:flex;flex-direction:column;gap:.25rem}.runsSumIcon{font-size:.95rem;line-height:1}.runsSumLabel{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.runsSumValue{font-size:1.1rem;font-weight:800;letter-spacing:-.02em}.runsSumDelta{font-size:.72rem;font-weight:700}.runsSumDeltaAccent{color:var(--accent)}.runsSumDeltaPos{color:#34d399}.runsSumDeltaNeg{color:#f87171}.runsInsightCard{display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1rem 1.1rem;align-items:stretch}.runsInsightCol{flex:1 1 11rem;min-width:0;display:flex;flex-direction:column;gap:.45rem}.runsInsightColRight{border-left:1px solid var(--border);padding-left:1rem}@media(max-width:640px){.runsInsightColRight{border-left:none;padding-left:0;padding-top:.85rem;border-top:1px solid var(--border);width:100%}}.runsStatusKicker{display:flex;align-items:center;gap:.45rem}.runsStatusDot{width:.45rem;height:.45rem;border-radius:50%;flex-shrink:0}.runsStatusKickerLab{margin:0;font-size:.65rem;font-weight:800;letter-spacing:.07em;color:var(--muted);text-transform:uppercase}.runsStatusBig{margin:0;font-size:1.35rem;font-weight:800;letter-spacing:-.02em}.runsStatusHint{margin:0;font-size:.85rem;line-height:1.45;color:var(--muted)}.runsFitnessLink{align-self:flex-start;margin-top:.15rem;padding:.45rem .75rem;border-radius:.65rem;border:1px solid var(--accent);font-weight:800;font-size:.82rem;color:var(--accent);text-decoration:none!important;transition:background .12s ease}.runsFitnessLink:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.runsEstKicker{margin:0;font-size:.65rem;font-weight:800;letter-spacing:.05em;color:var(--muted)}.runsEstTime{margin:0;font-size:1.65rem;font-weight:800;letter-spacing:-.03em}.runsEstPace{margin:0;font-size:.88rem;font-weight:600;color:var(--muted)}.runsSnapshotHint{margin:.35rem 0 0;font-size:.78rem;color:var(--muted);line-height:1.35}.runsBarSpark{display:flex;align-items:flex-end;gap:4px;height:4.5rem;margin-top:.5rem;width:100%;max-width:14rem}.runsBarSparkTrack{flex:1;height:100%;border-radius:4px;background:color-mix(in srgb,var(--text) 8%,transparent);display:flex;align-items:flex-end;min-width:0}.runsBarSparkFill{width:100%;border-radius:4px 4px 2px 2px;background:var(--accent);min-height:3px}.runsBarSparkLabs{display:flex;flex-direction:row;justify-content:space-between;margin-top:.25rem;max-width:14rem;gap:2px}.runsBarSparkLab{flex:1;font-size:.58rem;font-weight:700;color:var(--muted);text-align:center;min-width:0}.runsSectionHead{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.runsSectionTitle{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:-.02em}.runsChipStripWrap{overflow-x:auto;margin:0 -.15rem;padding:.15rem .15rem .25rem;-webkit-overflow-scrolling:touch}.runsChipStrip{display:flex;flex-direction:row;gap:.45rem;align-items:center}.runsFilterChip{flex-shrink:0;padding:.45rem .75rem;border-radius:999px;border:1px solid var(--border);background:var(--card-elev-bg);font-size:.78rem;font-weight:800;color:var(--muted);cursor:pointer;transition:border-color .12s ease,background .12s ease,color .12s ease}.runsFilterChip:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.runsFilterChipOn{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.runsFilterChipIcon{padding:.45rem .65rem;line-height:1}.runsFilterChipIcon a{text-decoration:none!important;color:inherit}.runsActList{display:flex;flex-direction:column;gap:.55rem}.runsActRow{position:relative;display:flex;flex-direction:row;align-items:stretch;gap:.65rem;padding:.75rem .75rem .75rem 0;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);text-decoration:none!important;color:inherit!important;overflow:hidden;transition:border-color .12s ease,box-shadow .12s ease}.runsActRow:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.runsActAccent{position:absolute;left:0;top:0;bottom:0;width:4px}.runsActBody{flex:1;min-width:0;padding-left:.95rem;display:flex;flex-direction:column;gap:.35rem}.runsActMeta{font-size:.58rem;font-weight:800;letter-spacing:.06em;color:var(--muted)}.runsActTitle{margin:0;font-size:1rem;font-weight:800;letter-spacing:-.02em}.runsActStats{display:flex;flex-direction:row;flex-wrap:wrap;gap:.65rem 1rem;margin-top:.15rem}.runsActStat{min-width:3.5rem}.runsActStatLbl{font-size:.58rem;font-weight:700;text-transform:uppercase;color:var(--muted)}.runsActStatVal{font-size:.78rem;font-weight:700}.runsActRight{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;flex-shrink:0;padding-right:.35rem}.runsProviderBadge{padding:.15rem .35rem;border-radius:.35rem;border:1px solid var(--border);font-size:.55rem;font-weight:900;letter-spacing:.04em;color:var(--muted)}.runsActThumb{width:2.75rem;height:2.75rem;border-radius:.65rem;border:1px solid var(--border);background:var(--card-bg);display:flex;align-items:center;justify-content:center;font-size:1.15rem;overflow:hidden;flex-shrink:0}.runsActThumb--route{padding:3px;background:color-mix(in srgb,var(--card-bg) 88%,var(--bg))}.runsActRouteSvg{width:100%;height:100%;display:block}.runsActChev{color:var(--muted);font-size:.85rem;opacity:.65}.runsToolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.runsEmpty{text-align:center;padding:2rem .5rem;color:var(--muted);line-height:1.5}.workoutLine{font-size:.95rem;margin:.25rem 0 0;padding-left:.6rem;border-left:3px solid var(--accent)}.wizardSteps{display:flex;gap:.4rem;align-items:center;margin-bottom:.5rem}.wizardStep{flex:1;height:4px;background:var(--border);border-radius:999px;overflow:hidden}.wizardStep.done{background:var(--accent)}.wizardStep.current{background:color-mix(in srgb,var(--accent) 60%,var(--border) 40%)}.planWizardDash{display:flex;flex-direction:column;gap:1.1rem;max-width:42rem;margin:0 auto}@media(min-width:900px){.planWizardDash{max-width:52rem}}.planWizardHeader{display:flex;flex-direction:column;gap:.65rem}.planWizardHeaderMain{display:flex;flex-direction:column;gap:.5rem}.planWizardBack{align-self:flex-start;font-size:.88rem;font-weight:600;color:var(--accent);text-decoration:none!important;padding:.25rem 0}.planWizardBack:hover{text-decoration:underline!important}.planWizardTitleBlock{display:flex;flex-direction:column;gap:.35rem}.planWizardTitle{margin:0;font-size:clamp(1.75rem,4vw,2.1rem);font-weight:800;letter-spacing:-.035em;line-height:1.1}.planWizardSub{margin:0;font-size:.95rem;color:var(--muted);line-height:1.45;max-width:40rem}.planWizardProgress{display:flex;flex-direction:column;gap:.45rem}.planWizardStepLabel{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.planWizardSteps.wizardSteps{gap:.45rem;margin-bottom:0}.planWizardSteps .wizardStep{height:5px;border-radius:999px;box-shadow:inset 0 1px color-mix(in srgb,var(--text) 8%,transparent)}.planWizardSteps .wizardStep.current{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}.planWizardContent{display:flex;flex-direction:column;gap:1rem}.planWizardQCard{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-elev-bg);padding:1.05rem 1.15rem;display:flex;flex-direction:column;gap:.65rem;box-shadow:0 1px color-mix(in srgb,var(--border) 45%,transparent)}.accountPanel{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-elev-bg);padding:1.15rem 1.2rem;display:flex;flex-direction:column;gap:.85rem;box-shadow:var(--shadow-sm)}.lifestyleCardGrid>.accountPanel--spanFull{grid-column:1 / -1}.lifestyleCardGrid>.accountHrZonesRow{grid-column:1 / -1;display:grid;gap:1rem;grid-template-columns:1fr;align-items:start}@media(min-width:880px){.lifestyleCardGrid>.accountHrZonesRow{grid-template-columns:repeat(2,minmax(0,1fr))}}.accountPanelTitle{margin:0;font-size:1.12rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.accountPanelLead{margin:0;font-size:.88rem;line-height:1.5;color:color-mix(in srgb,var(--text) 72%,var(--muted))}.accountPanelLead a{font-weight:600;color:var(--accent);text-decoration:none}.accountPanelLead a:hover{text-decoration:underline}.accountPanel .btn{align-self:flex-start}.accountPageDash{display:flex;flex-direction:column;gap:1rem}.accountProfileHeader{display:flex;flex-direction:column;gap:.4rem}.accountProfileTitle{margin:0;font-size:clamp(1.45rem,3.5vw,1.85rem);font-weight:800;letter-spacing:-.03em;line-height:1.15}.accountProfileSub{margin:0;font-size:.95rem;color:var(--muted);line-height:1.45;max-width:40rem}.accountProfileMeta{margin:0;font-size:.86rem;line-height:1.45}.accountProfileMeta a{font-weight:600;color:var(--accent);text-decoration:none}.accountProfileMeta a:hover{text-decoration:underline}.accountDash{display:flex;flex-direction:column;gap:1.1rem;max-width:42rem;margin:0 auto}.accountDash.accountDash--wide{max-width:min(1320px,calc(100vw - 2rem))}@media(min-width:900px){.accountDash{max-width:52rem}.accountDash.accountDash--wide{max-width:min(1320px,calc(100vw - 2.5rem))}}.accountTabPage{display:flex;flex-direction:column;gap:1.25rem;width:100%}.lifestylePageHeader{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem}.lifestylePageHeading{flex:1;min-width:16rem}.lifestylePageTitle{margin:0;font-size:clamp(1.5rem,3vw,1.95rem);font-weight:800;letter-spacing:-.03em;line-height:1.15}.lifestylePageSub{margin:.35rem 0 0;font-size:.95rem;color:var(--muted);line-height:1.45;max-width:min(48rem,100%)}.lifestylePageToolbar{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.lifestylePageToolbar span{font-size:.82rem;color:var(--muted)}.lifestyleIconBtn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:color-mix(in srgb,var(--text) 5%,transparent);color:var(--text);cursor:pointer}.lifestyleIconBtn:hover{border-color:var(--accent);color:var(--accent)}.lifestyleIconBtn:disabled{opacity:.45;cursor:not-allowed}.lifestyleSummaryGrid{display:grid;gap:.75rem;grid-template-columns:1fr}@media(min-width:640px){.lifestyleSummaryGrid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.lifestyleSummaryGrid{grid-template-columns:repeat(4,1fr)}}.lifestyleSummaryCard{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);padding:1rem 1.05rem;box-shadow:var(--shadow-sm);display:flex;gap:.85rem;align-items:flex-start;min-height:5.5rem}.lifestyleSummaryCardIcon{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent)}.lifestyleSummaryCardBody{min-width:0}.lifestyleSummaryCardLabel{margin:0;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.lifestyleSummaryCardText{margin:.25rem 0 0;font-size:.9rem;font-weight:600;color:var(--text);line-height:1.35}.lifestyleSummaryCardList{margin:.35rem 0 0;padding-left:1.1rem;font-size:.82rem;color:color-mix(in srgb,var(--text) 88%,var(--muted));line-height:1.4}.lifestyleCardGrid{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:880px){.lifestyleCardGrid{grid-template-columns:repeat(2,1fr)}}.lifestyleFormCard{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-elev-bg);padding:1.15rem 1.2rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.85rem}.lifestyleFormCard--wide{grid-column:1 / -1}.lifestyleFormCardTitle{margin:0;font-size:1rem;font-weight:700;letter-spacing:-.02em}.lifestyleFormCardHint{margin:0;font-size:.82rem;color:var(--muted);line-height:1.45}.lifestyleFormRow2{display:grid;gap:.75rem}@media(min-width:520px){.lifestyleFormRow2{grid-template-columns:1fr 1fr}}.lifestyleRange{display:flex;flex-direction:column;gap:.35rem}.lifestyleRangeTop{display:flex;justify-content:space-between;align-items:baseline;font-size:.82rem;color:var(--muted)}.lifestyleRangeTop output{font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}.lifestyleRange input[type=range]{width:100%;accent-color:var(--accent)}.lifestyleIntensityRow{display:flex;flex-wrap:wrap;gap:.4rem}.lifestyleIntensityBtn{min-width:2.5rem;padding:.45rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:color-mix(in srgb,var(--text) 4%,transparent);color:var(--text);font-size:.88rem;font-weight:600;cursor:pointer}.lifestyleIntensityBtn:hover{border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}.lifestyleIntensityBtn[data-on=true]{background:var(--accent);border-color:var(--accent);color:#fff}.lifestyleSwitchRow{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.lifestyleSwitch{position:relative;width:2.75rem;height:1.5rem;flex-shrink:0}.lifestyleSwitch input{opacity:0;width:0;height:0;position:absolute}.lifestyleSwitchSlab{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:color-mix(in srgb,var(--text) 18%,var(--border));transition:background .15s ease;cursor:pointer}.lifestyleSwitchSlab:after{content:"";position:absolute;top:2px;left:2px;width:calc(1.5rem - 4px);height:calc(1.5rem - 4px);border-radius:50%;background:var(--card-bg);box-shadow:0 1px 2px #00000026;transition:transform .15s ease}.lifestyleSwitch input:checked+.lifestyleSwitchSlab{background:var(--accent)}.lifestyleSwitch input:checked+.lifestyleSwitchSlab:after{transform:translate(1.25rem)}.lifestyleChipRow{display:flex;flex-wrap:wrap;gap:.45rem}.lifestyleChip{padding:.35rem .75rem;border-radius:999px;border:1px solid var(--border);background:transparent;font-size:.82rem;color:var(--text);cursor:pointer}.lifestyleChip:hover{border-color:var(--accent)}.lifestyleChip[data-on=true]{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:var(--accent);font-weight:600}.lifestyleCallout{padding:.75rem 1rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--text) 6%,transparent);border:1px solid var(--border);font-size:.86rem;line-height:1.45;color:var(--text)}.lifestyleCallout strong{font-weight:700}.lifestyleCallout--accent{background:color-mix(in srgb,var(--accent) 10%,transparent);border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}.lifestyleRoutinePreview{border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in srgb,var(--text) 5%,transparent);padding:.85rem 1rem;font-size:.84rem;line-height:1.5}.lifestyleRoutinePreview ul{margin:.35rem 0 0;padding-left:1.15rem}.lifestyleDisclaimer{margin:0;font-size:.78rem;color:var(--muted);text-align:center;padding:.75rem 0 0}.accountLayoutHeader{display:flex;flex-direction:column;gap:.35rem}.accountLayoutTitle{margin:0;font-size:clamp(1.75rem,4vw,2.05rem);font-weight:800;letter-spacing:-.035em;line-height:1.1}.accountLayoutEmail{margin:0;font-size:.92rem;color:var(--muted);line-height:1.4}.accountLayoutEmail strong{color:var(--text);font-weight:600}.accountSubnavBar{border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 92%,var(--bg));padding:.45rem .55rem}.accountSubnavBar .accountSubnav{margin-bottom:0;padding-bottom:0;border-bottom:none}.accountSignOut{align-self:flex-start;margin-top:.25rem}.planWizardQTitle{margin:0;font-size:1.08rem;font-weight:700;letter-spacing:-.02em;line-height:1.25}.planWizardQHelp{margin:0;font-size:.88rem;line-height:1.5;color:color-mix(in srgb,var(--text) 72%,var(--muted))}.planWizardQCard .chipRow{text-align:left;border-radius:var(--radius-md);padding:.85rem 1rem;line-height:1.35;transition:border-color .12s ease,background .12s ease}.planWizardQCard .chipRow strong{font-size:.96rem}.planWizardQCard .chips{gap:.4rem}.planWizardQCard .chip{padding:.38rem .8rem;font-weight:600;font-size:.86rem}.planWizardRaceRow{display:flex;flex-direction:column;gap:.4rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--bg) 55%,var(--card-bg))}.planWizardUnitNote{margin:0;font-size:.82rem;color:var(--muted)}.planWizardNotice{border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--card-bg));padding:.85rem 1rem}.planWizardFooter.footerBar{margin-top:.25rem;padding-top:1.15rem;padding-bottom:.35rem;border-top:1px solid var(--border);background:var(--bg);box-shadow:0 -8px 24px color-mix(in srgb,var(--text) 4%,transparent)}.planWizardFooter.footerBar .btn{font-weight:700}.checkboxRow{display:flex;align-items:flex-start;gap:.65rem;font-size:.95rem;line-height:1.4}.checkboxRow input{margin-top:.2rem}.smallNote{font-size:.85rem;line-height:1.4}.dayRow{border-bottom:1px solid var(--border);padding:.75rem 0}.switchRow{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.switchLabel{width:2.25rem;font-size:.75rem;color:var(--muted)}.footerBar{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:1rem 0 0;margin-top:1.25rem;border-top:1px solid var(--border);background:var(--bg)}.footerBar .btn,.footerBar .btnGhost{flex:1}.footerBar .btnGhost{flex:0 0 auto;min-width:5rem}.accountSubnav{display:flex;gap:.4rem;flex-wrap:wrap;padding-bottom:.5rem;margin-bottom:.25rem;border-bottom:1px solid var(--border)}.accountSubnav a{padding:.5rem .95rem;border-radius:999px;font-weight:500;font-size:.92rem;color:var(--muted);border:1px solid transparent}.accountSubnav a:hover{color:var(--text)}.accountSubnav a.active{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);text-decoration:none;border-color:color-mix(in srgb,var(--accent) 28%,transparent)}.connectionBlock{padding:1.15rem 1.2rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card-elev-bg);display:flex;flex-direction:column;gap:.85rem;box-shadow:var(--shadow-sm)}.connectionBlockMUTED{opacity:.86}.connectionBlockHeader{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.connectionBlock h3{font-size:1.05rem;font-weight:600}.badge{font-size:.7rem;font-weight:700;padding:.22rem .6rem;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);color:var(--text);letter-spacing:.05em;text-transform:uppercase}.badge.badgeOk{background:color-mix(in srgb,var(--success) 18%,transparent);color:var(--success)}.badge.badgeAccent{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.linkButtonDanger{align-self:flex-start;padding:0;border:none;background:none;color:var(--error);font-weight:600;cursor:pointer;font-size:.95rem;text-decoration:underline;text-underline-offset:3px;font-family:inherit}.linkButtonDanger:hover:not(:disabled){opacity:.85}.linkButtonDanger:disabled{opacity:.5;cursor:not-allowed}.activityCard{padding:1rem 1.05rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg);box-shadow:var(--shadow-sm)}.activityCardHeader{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.activityBadge{font-size:.7rem;font-weight:700;padding:.22rem .55rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);letter-spacing:.05em;text-transform:uppercase}.activityStats{margin:0;display:flex;flex-direction:column;gap:0}.activityStatRow{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;border-top:1px solid var(--border);font-size:.95rem}.activityStatRow:first-child{border-top:0}.activityStatRow dt{margin:0;color:var(--muted);font-weight:400}.activityStatRow dd{margin:0;font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.activityTitleLink{color:inherit;text-decoration:none}.activityTitleLink:hover{text-decoration:underline;color:var(--accent)}.activityDetailPage{max-width:56rem;margin:0 auto}.runsDetailDash{display:flex;flex-direction:column;gap:1rem}.runsDetailTopBar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.runsDetailBack{display:inline-flex;align-items:center;gap:.35rem;font-weight:700;color:var(--accent);text-decoration:none!important}.runsDetailBack:hover{text-decoration:underline!important}.runsDetailHero{display:flex;flex-direction:row;align-items:flex-start;gap:1rem}.runsDetailHeroIcon{width:3.5rem;height:3.5rem;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.runsDetailHeroText{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.runsDetailHeroTitle{margin:0;font-size:clamp(1.5rem,3.5vw,1.85rem);font-weight:800;letter-spacing:-.03em;line-height:1.15;text-transform:capitalize}.runsDetailHeroMeta{margin:0;font-size:.92rem;color:var(--muted)}.runsDetailProviderPill{align-self:flex-start;padding:.28rem .65rem;border-radius:999px;background:var(--accent);color:#0b0b0c;font-size:.65rem;font-weight:900;letter-spacing:.05em}.runsDetailCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1rem 1.1rem}.runsDetailSummaryRow{display:flex;flex-direction:row;flex-wrap:wrap;gap:1rem;align-items:stretch}.runsDetailMetrics{flex:1 1 14rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem;min-width:0}.runsDetailMetric{display:flex;flex-direction:column;gap:.2rem;padding:.65rem .75rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg)}.runsDetailMetricIcon{font-size:.95rem;line-height:1}.runsDetailMetricLbl{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.runsDetailMetricVal{font-size:1.02rem;font-weight:800;letter-spacing:-.02em;line-height:1.2}.runsDetailMapWrap{flex:1 1 16rem;min-width:min(100%,12rem);min-height:12.5rem;display:flex;flex-direction:column}.runsDetailMapPlaceholder{flex:1;min-height:12rem;border-radius:var(--radius-md);border:1px dashed var(--border);display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:2rem;background:color-mix(in srgb,var(--text) 4%,transparent)}.runsDetailSeg{display:flex;flex-direction:row;flex-wrap:wrap;gap:.25rem;padding:.25rem;border-radius:.65rem;background:color-mix(in srgb,var(--text) 5%,transparent);margin-bottom:.65rem}.runsDetailSegBtn{flex:1 1 auto;min-width:5rem;padding:.45rem .5rem;border:none;border-radius:.5rem;background:transparent;font-size:.68rem;font-weight:800;color:var(--muted);cursor:pointer;transition:background .12s ease,color .12s ease}.runsDetailSegBtn:hover{color:var(--text)}.runsDetailSegBtnOn{background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--accent)}.runsDetailChartStats{display:flex;flex-wrap:wrap;gap:.65rem 1rem;margin-bottom:.35rem;font-size:.82rem}.runsDetailChartStats strong{font-weight:800}.runsDetailChart{display:block;width:100%;height:auto;border-radius:var(--radius-sm)}.runsDetailChartWrap{position:relative;width:100%;cursor:crosshair}.runsDetailChartTooltip{position:absolute;top:0;left:0;transform:translate(-50%,calc(-100% - 6px));pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:.12rem;padding:.35rem .55rem;border-radius:var(--radius-sm);background:var(--card-elev, var(--card-bg));border:1px solid var(--border);box-shadow:0 4px 16px #00000024;z-index:2;min-width:4.75rem;text-align:center}.runsDetailChartTooltipVal{font-size:.88rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.runsDetailChartTooltipMeta{font-size:.72rem;color:var(--muted);font-variant-numeric:tabular-nums}.runsDetailChart text{fill:var(--muted)}.runsDetailCoachKicker{display:flex;align-items:center;gap:.4rem;margin-bottom:.35rem}.runsDetailCoachKicker span:first-child{font-size:1rem}.runsDetailCoachKickerText{margin:0;font-size:.88rem;font-weight:800}.runsDetailCoachHeadline{margin:0;font-size:1.05rem;font-weight:800;line-height:1.3;letter-spacing:-.02em}.runsDetailCoachBody{margin:.5rem 0 0;font-size:.9rem;line-height:1.5;color:var(--muted)}.runsDetailInsightGrid{display:flex;flex-direction:row;flex-wrap:wrap;gap:.55rem;margin-top:.85rem}.runsDetailInsightCell{flex:1 1 7rem;min-width:0;padding:.55rem .65rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg);display:flex;flex-direction:column;gap:.2rem}.runsDetailInsightVal{font-size:.95rem;font-weight:800;line-height:1.25;overflow-wrap:anywhere}.runsDetailInsightTitle{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.runsDetailInsightSub{font-size:.72rem;color:var(--muted);line-height:1.3}.runsDetailSectionTitle{margin:0 0 .5rem;font-size:1.05rem;font-weight:800;letter-spacing:-.02em}.runsDetailSplitsHead{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.runsDetailSplitsCard{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);overflow:hidden}.runsDetailSplitHead{display:flex;flex-direction:row;gap:.4rem;padding:.6rem .85rem;border-bottom:1px solid var(--border);font-size:.58rem;font-weight:800;letter-spacing:.06em;color:var(--muted)}.runsDetailSplitRow{display:flex;flex-direction:row;align-items:center;gap:.4rem;padding:.65rem .85rem;border-bottom:1px solid var(--border);font-size:.82rem}.runsDetailSplitRow:last-child{border-bottom:none}.runsDetailSplitThCol{flex:.45;min-width:0}.runsDetailSplitPaceCol{flex:1.1;min-width:0}.runsDetailSplitElevCol{flex:.75;min-width:0}.runsDetailSplitHrCol{flex:.5;min-width:0;text-align:right}.runsDetailPaceBarTrack{height:4px;border-radius:3px;background:color-mix(in srgb,var(--text) 8%,transparent);overflow:hidden;margin-bottom:.25rem}.runsDetailPaceBarFill{height:100%;border-radius:3px;background:var(--accent)}.runsDetailLinkBtn{background:none;border:none;padding:0;font-weight:800;font-size:.82rem;color:var(--accent);cursor:pointer}.runsDetailLinkBtn:disabled{opacity:.4;cursor:default}.runsDetailMoreGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.55rem}.runsDetailMoreStat{padding:.55rem .65rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg);display:flex;flex-direction:column;gap:.15rem}.runsDetailMoreStat .lbl{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.runsDetailMoreStat .val{font-size:.92rem;font-weight:700;font-variant-numeric:tabular-nums}.detailGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.75rem}.detailStat{display:flex;flex-direction:column;gap:.15rem;padding:.7rem .8rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card-bg)}.detailStat strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.detailSection h2{font-size:1.15rem;margin:1.25rem 0 .5rem}.chartGrid{display:flex;flex-direction:column;gap:1rem}.chartBlockHeader{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;flex-wrap:wrap;margin-bottom:.25rem}.activityChart,.routeMap{display:block;border-radius:var(--radius-sm)}.zoneBar{display:flex;width:100%;height:28px;border-radius:var(--radius-sm);overflow:hidden}.zoneLegend{margin:.5rem 0 0;padding-left:1.1rem;font-size:.88rem;color:var(--muted)}.zoneLegend li{margin:.2rem 0}.zoneDot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;margin-right:.35rem;vertical-align:middle}.splitTable{width:100%;border-collapse:collapse;font-size:.85rem}.splitTable th,.splitTable td{border:1px solid var(--border);padding:.4rem .55rem;text-align:left}.splitTable th{background:color-mix(in srgb,var(--text) 4%,transparent)}.bignum{font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em}@media(max-width:767px){.appTopBar,.tabBar{display:flex}.appShell .page{padding-bottom:calc(5.1rem + env(safe-area-inset-bottom,0px))}.appShell .footerBar{position:sticky;bottom:calc(3.25rem + env(safe-area-inset-bottom,0px));margin-bottom:0;padding-bottom:.85rem;background:var(--bg)}.accountSubnav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:.35rem;padding-bottom:.65rem;margin-left:-.15rem;margin-right:-.15rem;padding-left:.15rem;padding-right:.15rem;scrollbar-width:none}.accountSubnav::-webkit-scrollbar{display:none}.accountSubnav a{flex-shrink:0}.detailGrid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr))}}@media(max-width:520px){.planDay{grid-template-columns:1fr;gap:.65rem;align-items:start}.planDay .planDayMeta{text-align:left;align-items:flex-start;min-width:0}}.activityRouteMap .leaflet-container{z-index:1;font-family:inherit}.routeHeatmapLeaflet{width:100%;height:min(68vh,560px);min-height:280px;border-radius:0;border:none;overflow:hidden}.routeHeatmapMapShell{position:relative;width:100%;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:0 1px color-mix(in srgb,var(--border) 45%,transparent);overflow:hidden}.routeHeatmapFsBtn{position:absolute;top:12px;right:12px;z-index:1000;font-size:.82rem;padding:.38rem .75rem;font-weight:600;border-radius:999px;box-shadow:0 2px 10px color-mix(in srgb,var(--text) 12%,transparent);background:var(--card-elev-bg)!important;border:1px solid var(--border)!important}.routeHeatmapLegend{position:absolute;left:12px;bottom:52px;z-index:1000;max-width:min(420px,calc(100% - 24px));padding:.55rem .7rem .5rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--card-elev-bg) 94%,transparent);border:1px solid var(--border);box-shadow:0 2px 12px color-mix(in srgb,var(--text) 8%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}.routeHeatmapLegendTitle{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:.35rem;color:var(--muted)}.routeHeatmapLegendBar{height:10px;border-radius:999px;margin:.25rem 0 .3rem;border:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.routeHeatmapLegendScale{display:flex;justify-content:space-between;gap:.5rem;font-size:.72rem;margin-top:.35rem;color:var(--text);line-height:1.3;font-weight:500}.routeHeatmapLegendHint{display:block;margin-top:.25rem;font-size:.68rem;text-align:center}.routeHeatmapDash{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:42rem;margin:0 auto}@media(min-width:900px){.routeHeatmapDash{max-width:56rem}}.routeHeatmapHeader{display:flex;flex-direction:column;gap:.4rem}.routeHeatmapTitle{margin:0;font-size:clamp(1.75rem,4vw,2.15rem);font-weight:800;letter-spacing:-.035em;line-height:1.1}.routeHeatmapSub{margin:0;font-size:.95rem;color:var(--muted);line-height:1.45;max-width:40rem}.routeHeatmapMeta{margin:0 auto;font-size:.82rem;line-height:1.45;color:var(--muted);width:100%;max-width:42rem;padding:0 .15rem;box-sizing:border-box}@media(min-width:900px){.routeHeatmapMeta{max-width:56rem}}.routeHeatmapMapBlock{display:flex;flex-direction:column;gap:.55rem;width:100%;align-items:stretch}.routeHeatmapMapShell:fullscreen{width:100%;height:100%;background:var(--bg);display:flex;flex-direction:column;border-radius:0;border:none;box-shadow:none}.routeHeatmapMapShell:fullscreen .routeHeatmapFsBtn{position:fixed;top:12px;right:12px}.routeHeatmapMapShell:fullscreen .routeHeatmapLeaflet{flex:1;min-height:0;height:auto;border-radius:0;border:none}@media(min-width:900px){.routeHeatmapPage.page.pageWide{max-width:min(1180px,94vw)}.routeHeatmapLeaflet{height:min(80vh,900px);min-height:480px}}.routeHeatmapLeaflet .leaflet-container{z-index:1;font-family:inherit;height:100%;outline:none;background:#252525}.premiumPaywallBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0f0f107a;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box}.premiumPaywallCard{width:100%}.homeSectionTitle{font-size:1.05rem;font-weight:600;margin:0;letter-spacing:-.01em}.homeDash{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:none;margin:0}display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; } .homeDashTitleBlock{display:flex;flex-direction:column;gap:.15rem}.homeDashTitle{margin:0;font-size:clamp(1.85rem,4vw,2.15rem);font-weight:800;letter-spacing:-.035em;line-height:1.1}.homeDashDate{margin:0;font-size:.95rem;color:var(--muted);font-weight:500}.homeDashGreet{margin:0;font-size:.95rem;color:var(--muted)}.homeNotifBtn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);color:var(--text);text-decoration:none!important;flex-shrink:0;transition:border-color .12s ease,box-shadow .12s ease}.homeNotifBtn:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.homeNotifDot{position:absolute;top:.35rem;right:.35rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent)}.homeMetricStripWrap{overflow-x:auto;margin:0 -.25rem;padding:.25rem .25rem .35rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.homeWellnessSummaryCard{display:block;margin:.35rem 0 0;padding:1rem 1.05rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:border-color .15s ease,box-shadow .15s ease}.homeWellnessSummaryCard:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:var(--shadow-md)}.homeWellnessSummaryHead{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.homeWellnessSummaryTitle{margin:.15rem 0 0;font-size:1.05rem;font-weight:800;color:var(--text)}.homeWellnessSummarySub{margin:.25rem 0 0;font-size:.82rem;line-height:1.4;color:var(--muted)}.homeWellnessChevron{font-size:1.35rem;line-height:1;color:var(--muted);font-weight:600}.homeWellnessSummaryChips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.homeWellnessSummaryChip{display:flex;flex-direction:column;gap:.1rem;padding:.45rem .65rem;border-radius:10px;border:1px solid var(--border);min-width:5.5rem}.homeWellnessSummaryChipLbl{font-size:.68rem;font-weight:600;color:var(--muted)}.homeWellnessSummaryChipVal{font-size:.9rem;font-weight:800;color:var(--text)}.wellnessDash{display:flex;flex-direction:column;gap:var(--ds-gap);width:100%;max-width:none}.wellnessDashLead{margin:0;font-size:.9375rem;line-height:1.45;color:var(--muted)}.wellnessDashNote{margin:-.35rem 0 0;font-size:.8125rem;font-style:italic}.wellnessOverviewList{display:flex;flex-direction:column;gap:1rem}.sleepStagesChart{margin:.5rem 0 .75rem;padding:1rem 1.05rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);display:flex;flex-direction:column;gap:.85rem}.sleepStagesHero{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.sleepStagesHeroLbl{font-size:.8125rem;font-weight:600;color:var(--muted)}.sleepStagesHeroVal{font-size:1.75rem;font-weight:800;letter-spacing:-.03em;color:var(--text)}.sleepStagesBar{display:flex;height:14px;border-radius:7px;overflow:hidden;background:#80808026}.sleepStagesBarSeg{min-width:2px;height:100%}.sleepStagesLegend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.sleepStagesLegend li{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.sleepStagesDot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sleepStagesLegLbl{flex:1;font-weight:600;color:var(--text)}.sleepStagesLegVal{font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums}.homeWellnessCard{margin:.35rem 0 0;padding:1rem 1.05rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm)}.homeWellnessHead{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.homeWellnessEyebrow{margin:0;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.homeWellnessTitle{margin:.15rem 0 0;font-size:1.05rem;font-weight:800;letter-spacing:-.02em;line-height:1.25;color:var(--text)}.homeWellnessBadge{flex-shrink:0;font-size:.68rem;font-weight:700;padding:.3rem .55rem;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.homeWellnessDivider{height:1px;margin:.65rem 0 .15rem;background:var(--border);opacity:.85}.homeWellnessSubhead{margin:.65rem 0 .15rem;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.homeWellnessRow{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.5rem 0;border-bottom:1px solid color-mix(in srgb,var(--border) 45%,transparent)}.homeWellnessRow:last-child{border-bottom:none}.homeWellnessRowText{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.homeWellnessLbl{font-size:.8rem;font-weight:600;color:var(--muted)}.homeWellnessHint{font-size:.72rem;line-height:1.35;color:var(--muted);opacity:.92}.homeWellnessVal{flex-shrink:0;font-size:.88rem;font-weight:800;color:var(--text);text-align:right;max-width:46%}.homeMetricStrip{display:flex;flex-direction:row;gap:.65rem}.homeMetricCard{flex:0 0 8rem;scroll-snap-align:start;padding:.75rem .85rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.25rem;min-height:5.5rem}@media(min-width:640px){.homeMetricStripWrap{overflow-x:visible;margin:0;padding:0}.homeMetricStrip{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem}.homeMetricCard{flex:unset;min-height:unset}}.homeMetricIcon{font-size:1.05rem;line-height:1}.homeMetricVal{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-top:.1rem}.homeMetricCap{font-size:.72rem;font-weight:700}.homeMetricLbl{font-size:.68rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.homeMetricCardWide{min-width:16rem;padding:.9rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);text-align:center;color:var(--muted);font-size:.9rem}.homeHeroModern{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1.1rem 1.15rem;display:flex;flex-direction:column;gap:1rem}.homeHeroTop{display:flex;flex-direction:row;align-items:center;gap:1.1rem}.homeReadinessGauge{flex-shrink:0;width:5.75rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.homeReadinessPct{font-size:1.65rem;font-weight:800;color:var(--accent);letter-spacing:-.03em}.homeReadinessTrack{width:100%;height:.5rem;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);overflow:hidden}.homeReadinessFill{height:100%;border-radius:999px;background:var(--accent);transition:width .2s ease}.homeHeroCopy{flex:1;min-width:0;display:flex;flex-direction:column;gap:.35rem}.homeHeroTitle{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:-.02em}.homeHeroBody{margin:0;font-size:.95rem;line-height:1.45;color:var(--muted)}.homeHeroAi{margin:0;font-size:.85rem;line-height:1.4;color:var(--muted)}.homeHeroCta{display:flex;align-items:center;gap:.65rem;padding:.75rem .9rem;border-radius:.85rem;background:color-mix(in srgb,var(--accent) 12%,transparent);text-decoration:none!important;color:var(--accent);font-weight:700;font-size:.95rem;transition:background .12s ease}.homeHeroCta:hover{background:color-mix(in srgb,var(--accent) 18%,transparent)}.homeHeroCta span:last-child{margin-left:auto;font-size:1.1rem;opacity:.85}.homeSectionRow{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.15rem}.homeSectionTitleLg{margin:0;font-size:1.2rem;font-weight:800;letter-spacing:-.02em}.homeSectionLink{font-weight:700;font-size:.95rem;color:var(--accent);text-decoration:none!important}.homeSectionLink:hover{text-decoration:underline!important}.homeWorkCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.65rem}.homeWorkEyebrow{font-size:.68rem;font-weight:800;letter-spacing:.06em;color:var(--accent)}.homeWorkTitle{margin:0;font-size:1.15rem;font-weight:800;letter-spacing:-.02em}.homeWorkBody{margin:0;font-size:.95rem;line-height:1.45;color:var(--muted)}.homeCompletedBadge{font-size:.85rem;font-weight:800;color:#34d399}.homeMatchLine{font-size:.9rem;font-weight:600;color:#34d399;margin:0}.homeDetailGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem .85rem;margin-top:.35rem}@media(min-width:640px){.homeDetailGrid{grid-template-columns:repeat(4,1fr)}}.homeDetailCell{min-width:0}.homeDetailCellWide{grid-column:1 / -1}.homeDetailLbl{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.homeDetailVal{font-size:.9rem;font-weight:600;margin-top:.15rem}.homeWeatherCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.75rem}.homeWeatherHead{display:flex;flex-direction:column;gap:.2rem}.homeWeatherTitle{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:-.02em}.homeWeatherMeta{margin:0;font-size:.78rem;line-height:1.35}.homeWeatherCurrent{display:flex;align-items:flex-start;gap:1rem;flex-wrap:wrap}.homeWeatherNowTemp{font-size:2rem;font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--accent)}.homeWeatherNowDetail{display:flex;flex-direction:column;gap:.2rem;font-size:.9rem;min-width:0}.homeWeatherDaily{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.15rem;margin:0 -.15rem;scroll-snap-type:x proximity}.homeWeatherDayChip{flex:0 0 auto;scroll-snap-align:start;min-width:6.85rem;padding:.55rem .65rem;border-radius:.75rem;border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 70%,transparent)}.homeWeatherDayDow{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.homeWeatherDayDate{font-size:.68rem;margin-top:.1rem}.homeWeatherDayTemps{font-size:.88rem;font-weight:700;margin-top:.35rem}.homeWeatherDaySub{font-size:.72rem;margin-top:.15rem;line-height:1.3}.homeWeatherSubhead{margin:0;font-size:.92rem;font-weight:800;letter-spacing:-.02em}.homeWeatherSubsub{margin:.5rem 0 .15rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.homeWeatherAi{display:flex;flex-direction:column;gap:.35rem;padding:.65rem .75rem;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 6%,var(--card-bg))}.homeWeatherAlerts{display:flex;flex-direction:column;gap:.55rem}.homeWeatherAlert{padding:.55rem .65rem;border-radius:.65rem;border:1px solid color-mix(in srgb,#f87171 45%,var(--border));background:color-mix(in srgb,#f87171 8%,var(--card-bg))}.homeWeatherAlertTitle{font-weight:800;font-size:.9rem}.homeWeatherAlertMeta{font-size:.75rem;margin-top:.15rem}.homeWeatherHourlyBlock{display:flex;flex-direction:column;gap:.35rem}.homeWeatherHourly{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.1rem;scroll-snap-type:x proximity}.homeWeatherHourChip{flex:0 0 auto;scroll-snap-align:start;min-width:4rem;padding:.45rem .5rem;border-radius:.65rem;border:1px solid var(--border);font-size:.78rem;text-align:center;background:color-mix(in srgb,var(--card-bg) 70%,transparent)}.homeWeatherHourTime{font-weight:700;color:var(--accent)}.homeWeatherHourTemp{font-weight:600;margin-top:.15rem}.homeWeatherHourSub{font-size:.7rem;margin-top:.1rem}.homeWorkoutWxLbl{font-weight:700;color:var(--text)}.twShell{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1.15rem 1.2rem;display:flex;flex-direction:column;gap:1rem}.twHeader{display:flex;flex-direction:column;gap:.35rem}.twTitle{margin:0;font-size:clamp(1.25rem,2.5vw,1.55rem);font-weight:800;letter-spacing:-.025em;line-height:1.15}.twLocation{margin:0;display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;line-height:1.35}.twLocIcon{flex-shrink:0;opacity:.85;color:var(--accent)}.twLead{margin:0;font-size:.92rem;line-height:1.45}.twMobileAlert{display:none;align-items:center;gap:.5rem;padding:.55rem .75rem;border-radius:.65rem;font-size:.82rem;font-weight:600;background:color-mix(in srgb,var(--accent) 14%,var(--card-bg));border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));color:var(--text)}.twMobileAlertDot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.twMobileAlertChevron{margin-left:auto;opacity:.7}.twTopGrid{display:grid;grid-template-columns:1fr;gap:.75rem}@media(min-width:900px){.twTopGrid{grid-template-columns:1.15fr 1fr .95fr;gap:.85rem;align-items:stretch}.twMobileAlert,.twBestWindow{display:none!important}}@media(max-width:899px){.twMobileAlert{display:flex}}.twCard{border-radius:.85rem;border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 82%,transparent);padding:.85rem .95rem;display:flex;flex-direction:column;gap:.6rem;min-width:0}.twCardCurrent{gap:.75rem}.twCurrentHero{display:flex;align-items:center;gap:.85rem}.twCurrentIcon{font-size:2.75rem;line-height:1}.twCurrentTemp{font-size:2.35rem;font-weight:800;letter-spacing:-.04em;line-height:1;color:var(--accent)}.twCurrentSky{font-size:.95rem;font-weight:600;margin-top:.15rem}.twStatGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem .75rem}@media(min-width:520px){.twStatGrid{grid-template-columns:repeat(3,1fr)}}.twStat{display:flex;flex-direction:column;gap:.12rem;min-width:0}.twStatLbl{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.twStatVal{font-size:.82rem;font-weight:600;line-height:1.3;word-break:break-word}.twCardFooter{display:flex;flex-wrap:wrap;gap:.5rem 1rem;font-size:.76rem;padding-top:.35rem;border-top:1px solid color-mix(in srgb,var(--border) 70%,transparent)}.twCardTitleRow{display:flex;align-items:center;gap:.4rem}.twCardTitleIcon{color:var(--accent);flex-shrink:0}.twTomIcon{font-size:1.2rem;line-height:1}.twCardH{margin:0;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.twRecHeadline{margin:.15rem 0 0;font-size:1.05rem;font-weight:800;letter-spacing:-.02em;line-height:1.25}.twRecSub{margin:0;font-size:.84rem;line-height:1.45}.twTagRow{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem}.twTag{font-size:.72rem;font-weight:700;padding:.3rem .55rem;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 60%,transparent)}.twTag_best{border-color:color-mix(in srgb,var(--accent) 65%,var(--border));color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--card-bg))}.twTag_hydrate{border-color:color-mix(in srgb,#60a5fa 55%,var(--border));color:#93c5fd;background:color-mix(in srgb,#3b82f6 12%,var(--card-bg))}.twTag_uv{border-color:color-mix(in srgb,#f87171 55%,var(--border));color:#fca5a5;background:color-mix(in srgb,#ef4444 10%,var(--card-bg))}.twTomorrowTemps{font-size:1.2rem;font-weight:800;letter-spacing:-.02em}.twTomorrowSky{margin:0;font-size:.88rem}.twRecHeadline+.twTomorrowSky{margin-top:0}.twTomorrowHint{margin:0;font-size:.8rem;line-height:1.4}.twTomorrowFoot{margin-top:auto}.twBestWindow{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;border-radius:.85rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--card-bg))}.twBestWindow_off{opacity:.92}.twBestClock{flex-shrink:0;color:var(--accent)}.twBestKicker{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.twBestRange{font-size:1.15rem;font-weight:800;margin-top:.15rem;letter-spacing:-.02em}.twBestNote{font-size:.78rem;line-height:1.4;margin-top:.25rem}.twMinuteLine{margin-top:-.25rem!important}.twAiCard{border-radius:.85rem;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border));background:color-mix(in srgb,var(--accent) 5%,var(--card-bg));overflow:hidden}.twAiToggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;margin:0;border:none;background:transparent;color:inherit;font:inherit;cursor:pointer;text-align:left}.twAiToggle:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.twAiToggleLeft{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.twAiSpark{flex-shrink:0;color:var(--accent)}.twAlertsToggleIcon{flex-shrink:0;font-size:1rem;line-height:1}.twAiToggleTitle{font-weight:800;font-size:.92rem;letter-spacing:-.02em}.twAiChevron{flex-shrink:0;font-size:1.1rem;line-height:1;transition:transform .2s ease;opacity:.75}.twAiChevronOpen{transform:rotate(180deg)}.twAiBody{padding:0 .9rem .85rem;display:flex;flex-direction:column;gap:.5rem}.twAiPara{margin:0;font-size:.88rem;line-height:1.5}.twAiSub{margin:.25rem 0 0;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.twAlerts{display:flex;flex-direction:column;gap:.55rem}.twAlert{padding:.55rem .65rem;border-radius:.65rem;border:1px solid color-mix(in srgb,#f87171 45%,var(--border));background:color-mix(in srgb,#f87171 8%,var(--card-bg))}.twAlertTitle{font-weight:800;font-size:.9rem}.twAlertMeta{font-size:.75rem;margin-top:.15rem}.twAlertBody{margin:.35rem 0 0;font-size:.82rem;line-height:1.45;white-space:pre-wrap}.twSectionTitle{margin:0 0 .35rem;font-size:.95rem;font-weight:800;letter-spacing:-.02em}.twForecastBlock{display:flex;flex-direction:column;gap:.45rem}.twHourlyTrack{display:flex;gap:.45rem;overflow-x:auto;padding:.15rem .1rem .35rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.twHourChip{position:relative;flex:0 0 auto;scroll-snap-align:start;min-width:4.35rem;padding:.5rem .45rem .55rem;border-radius:.75rem;border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 72%,transparent);text-align:center}.twHourChipHi{border-color:color-mix(in srgb,var(--accent) 70%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 10%,var(--card-bg))}.twHourTime{font-size:.72rem;font-weight:800;color:var(--accent)}.twHourEmoji{font-size:1.15rem;line-height:1.2;margin:.15rem 0}.twHourTemp{font-size:.82rem;font-weight:700}.twHourWind{font-size:.68rem;margin-top:.12rem}.twHourUnderline{position:absolute;left:12%;right:12%;bottom:4px;height:3px;border-radius:999px;background:var(--accent)}.twDailyDesktop{display:none;gap:.5rem;overflow-x:auto;padding-bottom:.15rem;scroll-snap-type:x proximity}.twDailyMobile{display:flex;flex-direction:column;gap:.35rem}@media(min-width:900px){.twDailyDesktop{display:flex}.twDailyMobile{display:none}}.twDayCard{flex:0 0 auto;scroll-snap-align:start;min-width:7.5rem;max-width:7.5rem;padding:.6rem .65rem;border-radius:.75rem;border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 70%,transparent)}.twDayTop{display:flex;flex-direction:column;gap:.05rem}.twDayDow{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--accent)}.twDayDate{font-size:.68rem}.twDayIcon{font-size:1.35rem;margin:.35rem 0 .15rem;line-height:1}.twDayTemps{font-size:.88rem;font-weight:700}.twDaySub{font-size:.7rem;line-height:1.3;margin-top:.15rem}.twDayFoot{display:flex;flex-wrap:wrap;gap:.35rem .6rem;margin-top:.35rem;font-size:.68rem}.twDayRow{display:flex;align-items:center;gap:.65rem;width:100%;padding:.65rem .55rem;border-radius:.75rem;border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 72%,transparent);color:inherit;font:inherit;text-align:left;cursor:default}.twDayRowIcon{font-size:1.35rem;line-height:1}.twDayRowMain{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.twDayRowLine1{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;font-size:.88rem}.twDayRowTemps{font-weight:800;color:var(--accent)}.twDayRowLine2{font-size:.75rem;line-height:1.35}.twDayRowChev{font-size:1rem;flex-shrink:0}.homeChartCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.65rem}.homeChartHead{display:flex;align-items:flex-start;justify-content:space-between;gap:.65rem}.homeChartTitle{margin:0;font-size:1.05rem;font-weight:800}.homeChartMeta{margin:.2rem 0 0;font-size:.82rem;line-height:1.35;color:var(--muted)}.homeChartToggle{flex-shrink:0;padding:.45rem .65rem;border-radius:.65rem;border:1px solid var(--border);background:var(--card-bg);font-size:.72rem;font-weight:800;cursor:pointer;color:var(--muted)}.homeChartToggleOn{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.homeLoadChartShell{width:100%;margin-top:.25rem;--home-load-plot-h: clamp(10rem, 26vw, 15.5rem)}.homeLoadChartGrid{display:grid;grid-template-columns:minmax(2.75rem,auto) minmax(0,1fr);gap:0 .65rem;align-items:stretch;width:100%}.homeLoadYAxis{display:flex;flex-direction:column;gap:.35rem;min-width:0}.homeLoadYAxisLbl{font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);text-align:right;line-height:1.2}.homeLoadYAlign{display:flex;flex-direction:column;gap:.3rem;flex:1;min-height:0}.homeLoadYSpacer{flex-shrink:0;min-height:.85rem}.homeLoadYTicks{flex-shrink:0;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;height:var(--home-load-plot-h);min-height:var(--home-load-plot-h);font-size:.68rem;font-weight:700;color:var(--muted);line-height:1;padding-right:.15rem}.homeLoadYXlabPad{flex-shrink:0;min-height:1.15rem}.homeLoadYTick{display:block}.homeLoadPlot{min-width:0;display:flex;flex-direction:column;gap:.3rem}.homeLoadValueStrip{display:flex;align-items:flex-end;gap:clamp(.25rem,1.5vw,.55rem);width:100%}.homeLoadValueCell{flex:1;min-width:0;display:flex;justify-content:center}.homeLoadDayValue{font-size:.62rem;font-weight:800;color:var(--text);line-height:1;min-height:.85rem;text-align:center}.homeLoadBars{display:flex;align-items:flex-end;gap:clamp(.25rem,1.5vw,.55rem);width:100%}.homeLoadDay{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.35rem}.homeLoadBarPair{flex-shrink:0;width:100%;display:flex;flex-direction:row;align-items:flex-end;justify-content:center;gap:4px;height:var(--home-load-plot-h);min-height:var(--home-load-plot-h)}.homeLoadBar{flex:1;min-width:2px;max-width:100%;border-radius:5px 5px 2px 2px;background:var(--accent);min-height:0;transition:height .18s ease}.homeLoadBarSingle{flex:0 1 auto;width:min(5.25rem,88%)}.homeLoadBarCompare{background:color-mix(in srgb,var(--muted) 55%,var(--text));opacity:.55}.homeLoadXlab{font-size:.62rem;font-weight:700;color:var(--muted);text-align:center}.homeLoadFootnote{margin:.5rem 0 0;font-size:.68rem;line-height:1.35;color:var(--muted);font-weight:500}.homeChartLegend{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:.15rem}.homeChartLegendItem{display:flex;align-items:center;gap:.35rem;font-size:.68rem;font-weight:600;color:var(--muted)}.homeChartSwatch{width:.55rem;height:.55rem;border-radius:2px;background:var(--accent)}.homeChartSwatchMuted{background:color-mix(in srgb,var(--muted) 55%,var(--text));opacity:.55}.homeStatRow{display:flex;flex-wrap:wrap;gap:.65rem}.homeStatBox{flex:1 1 7rem;min-width:6.5rem;padding:.75rem .85rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:.25rem}.homeStatLbl{font-size:.68rem;font-weight:700;color:var(--muted)}.homeStatVal{font-size:1.05rem;font-weight:800}.homeDeltaPill{align-self:flex-start;padding:.15rem .45rem;border-radius:999px;font-size:.72rem;font-weight:800}.homeDeviceBanner{border-radius:var(--radius-md);border:1px solid var(--border);padding:.9rem 1rem;display:flex;flex-direction:column;gap:.35rem;background:var(--card-bg)}.homeDeviceTitle{margin:0;font-weight:700;font-size:1rem}.homeDeviceBody{margin:0;font-size:.88rem;color:var(--muted);line-height:1.4}.homeDeviceBtn{align-self:flex-start;margin-top:.25rem}.homeCoachCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:var(--shadow-sm);padding:1.1rem 1.15rem}.homeQuickLinksModern{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.65rem}@media(min-width:640px){.homeQuickLinksModern{grid-template-columns:repeat(3,1fr)}}.homeQuickLink{display:flex;flex-direction:column;gap:.2rem;padding:.9rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-bg);color:inherit;text-decoration:none!important;transition:border-color .12s ease,box-shadow .12s ease;box-shadow:var(--shadow-sm)}.homeQuickLink:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));text-decoration:none!important}.homeQuickLinkTitle{font-weight:700;font-size:.95rem}.homeQuickLinkSub{font-size:.78rem;color:var(--muted);line-height:1.35}.homeAlertCard{padding:1rem!important}.homeUnreadLine{margin:0 0 .65rem;font-size:.85rem;font-weight:700;color:var(--accent)}.homeAlertList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.homeAlertItem{padding-bottom:.75rem;border-bottom:1px solid var(--border)}.homeAlertItem:last-of-type{border-bottom:none;padding-bottom:0}.homeAlertItemUnread{padding:.65rem;margin:0 -.35rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--accent) 10%,transparent);border-bottom:none!important}.homeAlertTitle{margin:0;font-weight:600;font-size:.95rem}.homeAlertBody{margin:.35rem 0 0;font-size:.88rem;line-height:1.45;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.homeAlertMeta{margin:.35rem 0 0;font-size:.75rem;color:var(--muted)}.homeAlertActions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.5rem}.homeAlertBtn{padding:.45rem .85rem!important;font-size:.85rem!important}.homeSeeAllAlerts{display:inline-block;margin-top:.85rem;font-weight:700}.homeAdherenceCard{padding:1rem!important}.homeAdherenceBreakdown{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem .85rem}.homeAdherenceBreakdown li{display:inline-flex;align-items:baseline;gap:.35rem;font-size:.82rem;color:var(--muted)}.homeAdherenceBreakdown strong{color:var(--text);font-weight:700}.homeAdherenceActLink{font-weight:700;color:inherit}.homeAdherenceAi{margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--border)}.navLinkInner{display:inline-flex;align-items:center;gap:.4rem}.navBadge{display:inline-flex;align-items:center;justify-content:center;min-width:1.2rem;height:1.2rem;padding:0 .32rem;font-size:.62rem;font-weight:800;color:#fff;background:var(--accent);border-radius:999px;line-height:1}.tabBarDot{position:absolute;top:.05rem;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent);z-index:1;left:calc(50% + .85rem);box-shadow:0 0 0 2px var(--bg)}.notifList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.notifListItem{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);padding:0;overflow:hidden;box-shadow:var(--shadow-sm)}.notifListItemUnread{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));background:color-mix(in srgb,var(--accent) 8%,var(--card-bg))}.notifListBody{padding:1rem}.notifListTitle{margin:0;font-weight:600}.notifListText{margin:.45rem 0 0;font-size:.9rem;line-height:1.45;color:color-mix(in srgb,var(--text) 90%,var(--muted))}.notifListMeta{margin:.5rem 0 0;font-size:.78rem;color:var(--muted)}.notifListActions{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.65rem}.notifListBtn{padding:.45rem .85rem!important;font-size:.85rem!important}.landing{min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text)}.landingMain{flex:1 0 auto}.landingNav{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--bg) 88%,var(--card-bg));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.landingNavInner{max-width:68rem;margin:0 auto;padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.landingBrand{font-size:1.1rem}.landingBrandWithLogo{display:inline-flex;align-items:center;gap:.45rem;font-weight:650}.landingBrandLogo{display:block;width:40px;height:40px;object-fit:contain;flex-shrink:0}.landingNavActions{display:flex;align-items:center;gap:.5rem}.landingNavBtn{padding:.55rem 1rem!important;font-size:.92rem!important}.landingHero{padding:clamp(2rem,5vw,3.5rem) 1.25rem 2.5rem}.landingHeroGrid{max-width:68rem;margin:0 auto;display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}@media(min-width:900px){.landingHeroGrid{grid-template-columns:1.05fr .95fr;gap:3rem}}.landingKicker{margin:0;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--accent)}.landingHeadline{margin:.65rem 0 0;font-size:clamp(1.85rem,4.5vw,2.65rem);font-weight:800;line-height:1.12;letter-spacing:-.03em}.landingSub{margin:1rem 0 0;font-size:1.05rem;line-height:1.55;color:color-mix(in srgb,var(--text) 72%,var(--muted));max-width:36rem}.landingCtas{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.5rem}.landingCtaPrimary{padding:.95rem 1.5rem!important}.landingCtaSecondary{padding:.95rem 1.35rem!important}.landingFinePrint{margin:1rem 0 0;max-width:32rem}.landingMockCard{padding:1.15rem 1.25rem;border-radius:var(--radius-lg);box-shadow:0 1px color-mix(in srgb,var(--border) 45%,transparent);border:1px solid var(--border);background:var(--card-elev-bg)}.landingHeroCard{overflow:hidden}.landingFitnessSvg{width:100%;height:auto;margin-top:.65rem;display:block}.landingLegendRow{display:flex;gap:1.25rem;margin-top:.35rem}.landingDot{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;margin-right:.35rem;vertical-align:.05em}.landingSection{padding:2.5rem 1.25rem 3rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 32%,var(--bg))}.landingTools{padding:2.5rem 1.25rem 3rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 18%,var(--bg))}.landingSectionInner{max-width:68rem;margin:0 auto}.landingSectionEyebrow{margin:0 0 .35rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.landingSectionTitle{margin:0;font-size:clamp(1.5rem,3.2vw,2.05rem);font-weight:800;letter-spacing:-.035em;line-height:1.12}.landingSectionLead{margin:.65rem 0 0;font-size:1.02rem;max-width:44rem;line-height:1.55;color:color-mix(in srgb,var(--text) 78%,var(--muted))}.landingFeatureGrid{margin-top:2rem;display:grid;grid-template-columns:1fr;gap:1.1rem}@media(min-width:720px){.landingFeatureGrid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1100px){.landingFeatureGrid--dense{grid-template-columns:repeat(3,1fr)}}.landingFeature{padding:1.15rem 1.2rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);box-shadow:0 1px color-mix(in srgb,var(--border) 45%,transparent)}.landingFeatureKicker{margin:0 0 .2rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.landingFeature h3{margin:0 0 .35rem;font-size:1.08rem;font-weight:700;letter-spacing:-.02em;line-height:1.25}.landingAnalyticsChart{margin-top:.85rem;border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 82%,var(--bg));padding:.55rem .7rem .45rem}.landingAnalyticsSvg{width:100%;height:auto;display:block}.landingAnalyticsCaption{margin:.4rem 0 0;text-align:center;font-size:.72rem;line-height:1.35}.landingProfileMock{margin-top:.85rem;border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 82%,var(--bg));padding:.75rem .85rem .55rem;display:flex;flex-direction:column;gap:.65rem}.landingProfileMockHeader{display:flex;align-items:center;gap:.65rem}.landingProfileMockAvatar{width:2.5rem;height:2.5rem;border-radius:50%;flex-shrink:0;background:color-mix(in srgb,var(--accent) 28%,var(--border));border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border))}.landingProfileMockLines{flex:1;min-width:0;display:flex;flex-direction:column;gap:.38rem}.landingProfileMockLine{display:block;height:6px;border-radius:999px;background:color-mix(in srgb,var(--text) 11%,var(--border));width:70%}.landingProfileMockLine--lg{width:92%;height:8px}.landingProfileMockBlock{display:flex;flex-direction:column;gap:.35rem}.landingProfileMockLabel{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.landingProfileMockHrBars{display:flex;align-items:flex-end;justify-content:stretch;gap:5px;height:44px}.landingProfileMockHrBar{flex:1;min-height:6px;border-radius:4px 4px 2px 2px;background:var(--accent)}.landingProfileMockCoach{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem .55rem;border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 7%,var(--card-bg));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}.landingProfileMockCoachDot{width:.4rem;height:.4rem;margin-top:.32rem;border-radius:50%;flex-shrink:0;background:#1e9a4a}.landingProfileMockCoachLines{flex:1;display:flex;flex-direction:column;gap:.28rem;min-width:0}.landingProfileMockCoachLine{display:block;height:5px;border-radius:999px;background:color-mix(in srgb,var(--text) 13%,var(--border));width:100%}.landingProfileMockCoachLine--short{width:68%}.landingProfileMockFooter{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.landingProfileMockPill{font-size:.68rem;font-weight:700;padding:.24rem .58rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border))}.landingProfileMockPill--muted{background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--muted);border-color:var(--border)}.landingProfileMockBell{margin-left:auto;width:1.45rem;height:1.45rem;border-radius:50%;flex-shrink:0;background:var(--card-elev-bg);border:1px solid var(--border);position:relative;box-shadow:0 1px color-mix(in srgb,var(--border) 50%,transparent)}.landingProfileMockBell:after{content:"";position:absolute;top:5px;right:5px;width:6px;height:6px;border-radius:50%;background:#ff5b00;border:1px solid color-mix(in srgb,var(--card-elev-bg) 80%,transparent)}.landingIncludes{margin-top:2.25rem;padding:1.1rem 1.2rem;border-radius:var(--radius-lg);border:1px solid var(--border);background:color-mix(in srgb,var(--card-elev-bg) 88%,var(--bg));box-shadow:0 1px color-mix(in srgb,var(--border) 40%,transparent)}.landingIncludesTitle{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.landingIncludesGrid{margin:.85rem 0 0;padding:0;list-style:none;display:grid;grid-template-columns:1fr;gap:.55rem 1.5rem}@media(min-width:560px){.landingIncludesGrid{grid-template-columns:repeat(2,1fr)}}@media(min-width:900px){.landingIncludesGrid{grid-template-columns:repeat(3,1fr)}}.landingIncludesItem{margin:0;padding-left:1rem;position:relative;font-size:.9rem;line-height:1.45;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.landingIncludesItem:before{content:"";position:absolute;left:0;top:.55em;width:.35rem;height:.35rem;border-radius:50%;background:color-mix(in srgb,var(--accent) 85%,var(--text))}.landingWeekStrip{display:flex;gap:.35rem;margin-top:1rem;overflow-x:auto;padding-bottom:.25rem}.landingWeekDay{flex:1;min-width:2.5rem;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--card-bg);overflow:hidden;display:flex;flex-direction:column;align-items:stretch}.landingWeekDayLetter{display:block;text-align:center;font-size:.72rem;font-weight:700;padding:.35rem .25rem .15rem;color:var(--muted)}.landingWeekDayCap{height:3px;width:100%}.landingWeekDay--long_run .landingWeekDayCap{background:#ff5b00}.landingWeekDay--tempo .landingWeekDayCap,.landingWeekDay--intervals .landingWeekDayCap{background:#1f6feb}.landingWeekDay--recovery .landingWeekDayCap{background:#1e9a4a}.landingWeekDay--rest .landingWeekDayCap{background:#babec6}.landingWeekDay--easy .landingWeekDayCap,.landingWeekDay--strides .landingWeekDayCap{background:#c8ceda}.landingWeekStrip--ghost .landingWeekDay{border-style:dashed;border-color:color-mix(in srgb,var(--border-strong) 80%,var(--muted));background:color-mix(in srgb,var(--card-bg) 92%,var(--bg))}.landingAdaptiveWeekBlock{margin-top:.75rem}.landingAdaptiveWeekBlock .landingWeekStrip{margin-top:.35rem}.landingAdaptiveWeekLabel{margin:0;font-weight:600}.landingResilienceStack{display:flex;flex-direction:column;gap:1.1rem;margin-top:.35rem}.landingInset{margin-top:.75rem;padding:.5rem 0;border-radius:var(--radius-md);background:color-mix(in srgb,var(--card-bg) 70%,var(--bg))}.landingRunList{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.65rem}.landingRunRow{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border)}.landingRunRow:last-child{border-bottom:none}.landingRunTitle{font-weight:600;font-size:.9rem}.landingZones{margin-top:.85rem;display:flex;flex-direction:column;gap:.45rem}.landingZoneRow{display:grid;grid-template-columns:5.5rem 1fr 2.25rem;align-items:center;gap:.5rem;font-size:.82rem}.landingZoneBarTrack{height:6px;border-radius:999px;background:color-mix(in srgb,var(--muted) 18%,var(--border));overflow:hidden}.landingZoneBarFill{height:100%;border-radius:999px;min-width:4px}.landingRaceEquiv{margin:0}.landingInjuryCare{margin-top:.5rem;display:flex;flex-wrap:wrap;align-items:flex-start;gap:1rem 1.25rem}.landingInjuryCareShield{display:flex;flex-direction:column;align-items:center;gap:.35rem;flex-shrink:0}.landingInjuryCareShieldCap{margin:0;text-align:center;max-width:7.5rem;line-height:1.25}.landingInjuryCareBars{flex:1;min-width:10rem;display:flex;flex-direction:column;gap:.45rem}.landingInjuryCareRow{display:grid;grid-template-columns:7.75rem 1fr 2.25rem;align-items:center;gap:.45rem}.landingInjuryCareLabel{font-weight:600}.landingInjuryCarePct{text-align:right;font-variant-numeric:tabular-nums}@media(max-width:719px){.landingFeatureGrid>.landingFeature{min-width:0;max-width:100%}.landingWeekStrip{justify-content:stretch;gap:.28rem;overflow-x:visible;padding-left:0;padding-right:0}.landingWeekDay{flex:1 1 0;min-width:0}.landingRunRow{flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:.5rem}.landingInset{padding-left:.75rem;padding-right:.75rem}.landingInset .landingFitnessSvg{margin-left:auto;margin-right:auto}.landingZoneRow{grid-template-columns:1fr;justify-items:stretch;text-align:center;gap:.4rem}.landingZoneLabel,.landingZonePct{justify-self:center}.landingInjuryCare{flex-direction:column;align-items:stretch}.landingInjuryCareShield{flex-direction:row;justify-content:center;width:100%;gap:.75rem}.landingInjuryCareShieldCap{text-align:left;max-width:none;align-self:center}.landingInjuryCareRow{grid-template-columns:1fr;text-align:center;gap:.35rem}.landingInjuryCarePct{text-align:center}}.landingToolsGrid{margin-top:1.5rem;display:grid;grid-template-columns:1fr;gap:.85rem}@media(min-width:640px){.landingToolsGrid{grid-template-columns:repeat(3,1fr)}}.landingToolCard{display:flex;flex-direction:column;gap:.35rem;text-decoration:none!important;color:inherit!important;padding:1.05rem 1.15rem;border-radius:var(--radius-lg);background:var(--card-elev-bg);border:1px solid var(--border);box-shadow:0 1px color-mix(in srgb,var(--border) 45%,transparent);transition:border-color .14s ease,box-shadow .14s ease}.landingToolCard:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));box-shadow:0 2px 14px color-mix(in srgb,var(--accent) 8%,transparent)}.landingToolTitle{font-weight:700;font-size:1rem}.workoutCodeBadge{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .55rem;border-radius:8px;border:1px solid var(--border);background:var(--card-elev-bg);font-size:.72rem;line-height:1.2;width:fit-content}.workoutCodeBadge--compact{padding:.12rem .4rem}.workoutCodeBadgeCode{font-weight:800;letter-spacing:.04em;color:var(--accent)}.workoutCodeBadgeName{color:var(--muted);font-weight:600}.workoutCatalogLabel{display:flex;flex-direction:column;gap:.35rem}.workoutCatalogLabel--compact .workoutCatalogLabelRow{gap:.35rem}.workoutCatalogLabelTitle{font-size:1rem}.workoutCatalogLabelRow{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}.workoutCatalogFocus{display:inline-flex;padding:.18rem .55rem;border-radius:8px;border:1px solid var(--border);background:var(--card-elev-bg);font-size:.72rem;font-weight:700;color:var(--text)}.helpfulResources{gap:.75rem}.helpfulResourcesGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.55rem}.helpfulResourceCard{display:flex;flex-direction:column;gap:.2rem;padding:.75rem .85rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);text-decoration:none!important;color:inherit!important;transition:border-color .14s ease}.helpfulResourceCard:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.helpfulResourceTitle{font-weight:700;font-size:.88rem}.referenceIndexRow{display:flex;flex-direction:column;gap:.25rem;padding:.95rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card-elev-bg);text-decoration:none!important;color:inherit!important;transition:border-color .14s ease}.referenceIndexRow:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.referenceIndexRowTitle{font-weight:700;font-size:1rem}.workoutLibPage{max-width:52rem;gap:1.25rem}.workoutLibGroup{gap:.55rem}.workoutLibGroupTitle{margin:0;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.workoutLibCard{gap:.55rem;padding:.85rem 1rem}.workoutLibCardHead{display:flex;align-items:flex-start;gap:.65rem;width:100%;padding:0;border:none;background:none;color:inherit;text-align:left;cursor:pointer;font:inherit}.workoutLibCardTitles{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0}.workoutLibToggle{font-weight:700;color:var(--accent);font-size:1.1rem;line-height:1}.workoutLibPurpose{margin:0;font-size:.9rem;line-height:1.5;color:var(--text)}.workoutLibDetail{gap:.75rem;padding-top:.25rem}.workoutLibDetailLabel{margin:0 0 .35rem;font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.workoutLibList{margin:0;padding-left:1.1rem;font-size:.88rem;line-height:1.45}.workoutLibProgression{margin:0;font-size:.88rem;line-height:1.45}.workoutLibFamily{margin-bottom:1.5rem}.workoutLibFamilyTitle{margin:0 0 .35rem;font-size:1.05rem;font-weight:700;color:var(--text)}.workoutLibFamilyPurpose{margin:0 0 .65rem;font-size:.88rem;line-height:1.5}.workoutLibTableWrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card-bg)}.workoutLibTable{width:100%;border-collapse:collapse;font-size:.88rem;line-height:1.45}.workoutLibTable th,.workoutLibTable td{padding:.55rem .75rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--border)}.workoutLibTable thead th{font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--card-elev)}.workoutLibTable tbody tr:last-child td{border-bottom:none}.workoutLibTable th:first-child,.workoutLibTable td:first-child{width:5.5rem;white-space:nowrap}.workoutLibTable th:nth-child(2),.workoutLibTable td:nth-child(2){width:5rem;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.workoutLibVarCode{font-weight:800;font-size:.85rem;color:var(--accent);background:transparent}.landingFooter{padding:2rem 1.25rem 2.5rem;border-top:1px solid var(--border);background:var(--card-bg)}.landingFooterInner{max-width:68rem;margin:0 auto;display:flex;flex-direction:column;gap:.65rem;align-items:flex-start}@media(min-width:560px){.landingFooterInner{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}}.landingFooterLinks{display:flex;flex-wrap:wrap;gap:.65rem 1rem}.legalDoc{max-width:42rem;margin:0 auto;padding:2.5rem 1.25rem 3.5rem;color:var(--text)}.legalDoc h2{margin:2rem 0 .65rem;font-size:1.12rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.legalDoc p,.legalDoc li{line-height:1.68;color:color-mix(in srgb,var(--text) 88%,var(--muted));font-size:.98rem}.legalDoc ul{margin:.5rem 0 0;padding-left:1.35rem;display:flex;flex-direction:column;gap:.5rem}.authLegalFooter{display:flex;align-items:center;justify-content:center;gap:.45rem;margin-top:1.5rem;padding-bottom:.5rem;font-size:.88rem}.authLegalFooterLink{color:var(--muted);text-decoration:none;font-weight:600}.authLegalFooterLink:hover{color:var(--accent);text-decoration:underline}.authLegalFooterSep{color:var(--border-strong);-webkit-user-select:none;user-select:none}.aboutSectionWide{max-width:52rem}.aboutSectionRead{max-width:40rem}.aboutLeadCard{gap:1rem;padding:1.35rem 1.5rem;margin-top:1.5rem;max-width:42rem}.aboutBand{background:color-mix(in srgb,var(--card-bg) 88%,var(--bg));border-block:1px solid var(--border)}.aboutHero .landingSectionInner,.aboutClosing .landingSectionInner{margin-left:auto;margin-right:auto}.aboutGrid{margin-top:1.75rem;display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.aboutGrid{grid-template-columns:repeat(3,1fr);gap:1.15rem}}.aboutPillar{padding:1.15rem 1.25rem;display:flex;flex-direction:column;gap:.45rem}.aboutPillarTitle{margin:0;font-size:1.02rem;font-weight:700}.aboutList{margin:1rem 0 0;padding-left:1.25rem;line-height:1.75;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.aboutList a{font-weight:600;color:var(--accent);text-decoration:none}.aboutList a:hover{text-decoration:underline}.aboutClosing{padding-bottom:2.5rem}.fitnessDash{display:flex;flex-direction:column;gap:1.1rem;width:100%;max-width:none;margin:0}display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; flex-wrap: wrap; } .fitnessDashTitleBlock{flex:1;min-width:12rem}.fitnessDashTitle{margin:0;font-size:clamp(1.85rem,4vw,2.15rem);font-weight:800;letter-spacing:-.035em;line-height:1.1}.fitnessDashSub{margin:.35rem 0 0;font-size:.95rem;color:var(--muted);line-height:1.45;max-width:36rem}.fitnessHeatmapBtn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .85rem;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-size:.88rem;font-weight:600;text-decoration:none!important;flex-shrink:0;transition:background .12s ease,border-color .12s ease}.fitnessHeatmapBtn:hover{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.fitnessToolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .75rem;padding:.55rem .65rem;border-radius:var(--radius-md);border:1px solid var(--border);background:color-mix(in srgb,var(--card-bg) 92%,var(--bg))}.fitnessToolbarLbl{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:.15rem}.fitnessSegRow{display:flex;flex-wrap:wrap;gap:.35rem}.fitnessSegBtn{border:1px solid var(--border);background:var(--card-elev-bg);color:var(--text);padding:.32rem .65rem;border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.fitnessSegBtn:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.fitnessSegBtn:disabled{opacity:.55;cursor:not-allowed}.fitnessSegBtnOn{background:color-mix(in srgb,var(--accent) 22%,transparent);border-color:color-mix(in srgb,var(--accent) 50%,var(--border));color:var(--accent)}.fitnessSectionTitle{margin:.15rem 0 0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.fitnessStatusCard{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-elev-bg);overflow:hidden;box-shadow:0 1px color-mix(in srgb,var(--border) 50%,transparent)}.fitnessStatusCardInner{padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.65rem}.fitnessStatusHeaderRow{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.fitnessStatusKicker{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.fitnessStatusDatePill{font-size:.72rem;color:var(--muted);padding:.2rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--text) 6%,transparent)}.fitnessStatusHeadline{margin:0;font-size:clamp(1.55rem,3.5vw,1.95rem);font-weight:800;letter-spacing:-.03em;line-height:1.08}.fitnessStatusBlurb{margin:0;font-size:.92rem;line-height:1.5;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.fitnessFfbGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:.2rem}@media(max-width:520px){.fitnessFfbGrid{grid-template-columns:1fr}}.fitnessFfbCell{display:flex;flex-direction:column;gap:.15rem;padding:.55rem .65rem;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--bg) 70%,var(--card-bg));border:1px solid var(--border)}.fitnessFfbLabel{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.fitnessFfbValue{font-size:1.25rem;font-weight:800;font-variant-numeric:tabular-nums}.fitnessRainbowRule{height:3px;width:100%;background:linear-gradient(90deg,#34d399,#3b82f6,#a855f7,#ef4444,var(--accent))}.fitnessSignalsPanel{padding:1rem 1.05rem;gap:.75rem!important}.fitnessSignalsPanel .fitnessSectionTitle{margin:0}.fitnessGlossary{margin-top:.25rem}.fitnessGlossarySummary{cursor:pointer;font-weight:700;font-size:.9rem;padding:.15rem 0;list-style:none}.fitnessGlossarySummary::-webkit-details-marker{display:none}.fitnessGlossary summary::marker{content:""}.appShell--adminFullBleed{min-height:100vh;min-height:100dvh;width:100%;max-width:100%;overflow-x:hidden}.adminShell{--admin-bg: #0b0b0c;--admin-surface: #131315;--admin-elev: #18181b;--admin-border: #252528;--admin-text: #f4f4f5;--admin-muted: rgba(244, 244, 245, .58);--admin-accent: #ff5b00;--admin-accent-dim: rgba(255, 91, 0, .2);display:flex;width:100%;max-width:100%;min-height:100vh;min-height:100dvh;background:var(--admin-bg);color:var(--admin-text);overflow-x:hidden;box-sizing:border-box}.adminShell .muted{color:var(--admin-muted)!important}.adminSidebar{width:240px;flex-shrink:0;display:flex;flex-direction:column;gap:.5rem;padding:1.1rem .85rem;border-right:1px solid var(--admin-border);background:var(--admin-surface);box-sizing:border-box;transition:width .2s ease,padding .2s ease}.adminSidebarHeader{display:flex;flex-direction:column;align-items:stretch;gap:.45rem;padding-bottom:.65rem;margin-bottom:.35rem;border-bottom:1px solid var(--admin-border)}.adminBrand{display:flex;flex-direction:column;gap:.1rem;padding:.25rem .5rem 0}.adminBrandMark{font-weight:800;font-size:1.05rem;letter-spacing:-.02em}.adminBrandSub{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--admin-accent)}.adminSidebarCollapseBtn{display:none;align-items:center;justify-content:center;width:100%;min-height:36px;padding:.3rem;border:1px solid var(--admin-border);border-radius:var(--radius-sm);background:var(--admin-elev);color:var(--admin-muted);cursor:pointer;flex-shrink:0}.adminSidebarCollapseBtn:hover{color:var(--admin-text);background:color-mix(in srgb,var(--admin-elev) 70%,transparent)}.adminSidebarCollapseBtn:focus-visible{outline:2px solid var(--admin-accent);outline-offset:2px}.adminSideNav{display:flex;flex-direction:column;gap:.15rem;flex:1;min-height:0}.adminSideLink{position:relative;display:flex;align-items:center;gap:.65rem;padding:.45rem .65rem;border-radius:var(--radius-sm);color:var(--admin-muted);font-weight:600;font-size:.9rem;text-decoration:none;border:1px solid transparent}.adminSideLinkIcon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;min-width:22px}.adminSideLinkText{min-width:0;flex:1}.adminSideLink:hover{color:var(--admin-text);background:color-mix(in srgb,var(--admin-elev) 70%,transparent);text-decoration:none}.adminSideLink--active{color:var(--admin-text);background:var(--admin-accent-dim);border-color:color-mix(in srgb,var(--admin-accent) 35%,var(--admin-border))}.adminBackToApp{margin-top:auto;display:flex;align-items:center;gap:.5rem;padding:.55rem .65rem;font-size:.85rem;font-weight:600;color:var(--admin-accent);text-decoration:none;border-radius:var(--radius-sm)}.adminBackToAppIcon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:22px;min-width:22px}.adminBackToAppText{min-width:0}.adminBackToApp:hover{background:var(--admin-accent-dim);text-decoration:none}.adminColumn{flex:1;display:flex;flex-direction:column;min-width:0;min-height:100vh;min-height:100dvh}.adminTopbar{display:flex;align-items:center;gap:.65rem;padding:.65rem max(.85rem,env(safe-area-inset-left)) .65rem max(.85rem,env(safe-area-inset-right));border-bottom:1px solid var(--admin-border);background:color-mix(in srgb,var(--admin-surface) 80%,var(--admin-bg));max-width:100%;min-width:0;box-sizing:border-box}.adminMenuBtn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--admin-border);border-radius:var(--radius-sm);background:var(--admin-elev);color:var(--admin-text);cursor:pointer}.adminTopbarTitle{margin:0;flex:1;min-width:0;font-size:1.05rem;font-weight:700;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adminTopbarMeta{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.adminTopbarEmail{font-size:.8rem;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adminNotifBell{font-size:1.1rem;opacity:.85}.adminMain{flex:1;overflow-y:auto;overflow-x:hidden;padding:1rem max(.85rem,env(safe-area-inset-left)) 5.5rem max(.85rem,env(safe-area-inset-right));max-width:100%;min-width:0;box-sizing:border-box;-webkit-overflow-scrolling:touch}.adminMobileTabBar{display:none;position:fixed;left:0;right:0;bottom:0;max-width:100%;box-sizing:border-box;padding:.35rem max(.5rem,env(safe-area-inset-left)) calc(.35rem + env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-right));border-top:1px solid var(--admin-border);background:color-mix(in srgb,var(--admin-surface) 96%,black);z-index:40}.adminMobTab{flex:1;display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.35rem .2rem;min-width:0;font-size:.65rem;font-weight:600;color:var(--admin-muted);text-decoration:none}.adminMobTab--active{color:var(--admin-accent)}.adminMobTabLabel{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adminDrawerScrim{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;border:none;padding:0;margin:0;background:#00000080;cursor:pointer}@media(max-width:840px){.adminColumn{width:100%;max-width:100%}.adminSidebar{position:fixed;top:0;left:0;bottom:0;z-index:50;width:min(240px,88vw);max-width:88vw;transform:translate(-102%);transition:transform .2s ease;box-shadow:8px 0 28px #00000059}.adminSidebarCollapseBtn{display:none!important}.adminShell--drawerOpen .adminSidebar{transform:translate(0)}.adminShell--drawerOpen .adminDrawerScrim{display:block}.adminMenuBtn{display:flex}.adminTopbarEmail{display:none}.adminMobileTabBar{display:flex}.adminMain{padding-bottom:5.5rem}}@media(min-width:841px){.adminMobileTabBar{display:none!important}.adminMain{padding-bottom:1.5rem}.adminSidebarCollapseBtn{display:flex}.adminShell--sidebarCollapsed .adminSidebar{width:58px;padding:1.1rem .4rem}.adminShell--sidebarCollapsed .adminSidebarHeader{align-items:center}.adminShell--sidebarCollapsed .adminBrand{padding-left:0;padding-right:0;text-align:center}.adminShell--sidebarCollapsed .adminBrandMark{font-size:1.2rem;letter-spacing:-.04em}.adminShell--sidebarCollapsed .adminSidebarCollapseBtn{min-height:32px;padding:.25rem}.adminShell--sidebarCollapsed .adminSideLink{justify-content:center;gap:0;padding:.5rem .35rem}.adminShell--sidebarCollapsed .adminSideLinkText{display:none}.adminShell--sidebarCollapsed .adminBackToApp{justify-content:center;padding:.55rem .35rem}.adminShell--sidebarCollapsed .adminBackToAppText{display:none}}.adminPage{max-width:min(1200px,100%);width:100%;margin:0 auto;min-width:0;box-sizing:border-box}.adminPage.stack>*{min-width:0}.adminPageHeader{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem}.adminPageHeader>*{min-width:0}.adminPageHeading{margin:0;font-size:1.35rem;font-weight:750;letter-spacing:-.02em}.adminPageLead{font-size:.95rem;line-height:1.45;margin:0}.adminDateRange{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.adminDateRangeLabel{font-size:.88rem;font-weight:600;font-variant-numeric:tabular-nums}.adminPill{font-size:.72rem;font-weight:600;padding:.2rem .45rem;border-radius:999px;border:1px solid var(--admin-border)}.adminPill--muted{color:var(--admin-muted)}.adminBanner{margin:0;padding:.55rem .65rem;border-radius:var(--radius-sm);border:1px dashed color-mix(in srgb,var(--admin-accent) 40%,var(--admin-border));background:var(--admin-accent-dim)}.adminToolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem}.adminSearchField{flex:1;min-width:12rem;max-width:26rem;padding:.45rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--admin-border);background:var(--admin-elev);color:var(--admin-text);font-size:.9rem}.adminSearchField::placeholder{color:var(--admin-muted)}.adminSelectField{padding:.45rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--admin-border);background:var(--admin-elev);color:var(--admin-text);font-size:.9rem;min-width:9rem}.adminPager{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.82rem;color:var(--admin-muted)}.adminPagerBtn{font:inherit;font-size:.82rem;font-weight:600;padding:.35rem .65rem;border-radius:var(--radius-sm);border:1px solid var(--admin-border);background:var(--admin-elev);color:var(--admin-text);cursor:pointer}.adminPagerBtn:disabled{opacity:.45;cursor:not-allowed}.adminKpiGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}@media(max-width:900px){.adminKpiGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.adminKpiGrid{grid-template-columns:minmax(0,1fr)}}.adminKpiCard{padding:.85rem 1rem;border-radius:var(--radius-md);background:var(--admin-elev);border:1px solid var(--admin-border)}.adminKpiLabel{margin:0 0 .35rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-muted)}.adminKpiValue{margin:0;font-size:1.55rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.adminKpiDelta{margin:.35rem 0 0;font-size:.8rem;font-weight:600}.adminKpiDelta--up{color:#34d399}.adminKpiDelta--down{color:#f87171}.adminGrid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;align-items:stretch}.adminGrid2--bottom{align-items:start}@media(max-width:840px){.adminGrid2{grid-template-columns:minmax(0,1fr)}}.adminPanel{padding:1rem 1.05rem;border-radius:var(--radius-md);background:var(--admin-elev);border:1px solid var(--admin-border);min-width:0;max-width:100%;box-sizing:border-box}.adminPanelTitle{margin:0 0 .65rem;font-size:.95rem;font-weight:700}.adminChartPh{border-radius:var(--radius-sm);background:color-mix(in srgb,var(--admin-bg) 65%,var(--admin-surface));border:1px solid var(--admin-border);min-height:140px;max-width:100%;overflow:hidden}.adminChartPh--line{padding:0}.adminSparkSvg{width:100%;max-width:100%;height:auto;display:block}.adminDonutRow{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;min-width:0;max-width:100%}.adminDonut{width:112px;height:112px;max-width:min(112px,40vw);max-height:min(112px,40vw);border-radius:50%;flex-shrink:0}.adminLegend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem;font-size:.88rem;min-width:0;flex:1 1 140px}.adminSwatch{display:inline-block;width:.65rem;height:.65rem;border-radius:2px;margin-right:.4rem;vertical-align:middle}.adminTableWrap{overflow-x:auto;overflow-y:visible;margin:0;max-width:100%;-webkit-overflow-scrolling:touch}.adminTable{width:100%;max-width:100%;border-collapse:collapse;font-size:.85rem;table-layout:fixed}.adminTable th,.adminTable td{text-align:left;padding:.5rem .45rem;border-bottom:1px solid var(--admin-border);overflow-wrap:anywhere;word-break:break-word}.adminTable th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-muted)}.adminStatus{font-size:.78rem;font-weight:600;color:var(--admin-muted)}.adminStatus--ok{color:#34d399}.adminStatus--warn{color:#fbbf24}.adminBarList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.adminBarRow{display:grid;grid-template-columns:minmax(0,1fr) minmax(5rem,1.2fr);gap:.5rem;align-items:center;font-size:.85rem;min-width:0}.adminBarRowHead{display:flex;align-items:baseline;gap:.4rem;min-width:0}.adminBarLabel{flex:1;color:var(--admin-muted);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.adminBarCount{flex-shrink:0;font-weight:700;font-variant-numeric:tabular-nums;color:var(--admin-text);font-size:.8rem}.adminBarTrack{height:8px;border-radius:999px;background:color-mix(in srgb,var(--admin-text) 10%,var(--admin-bg));overflow:hidden;min-width:0}.adminBarFill{height:100%;border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--admin-accent) 80%,transparent),var(--admin-accent))}.adminRoadmap{margin-top:.25rem}.adminRoadmapCols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem}@media(max-width:700px){.adminRoadmapCols{grid-template-columns:minmax(0,1fr)}}.adminRoadmapSub{margin:0 0 .45rem;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-muted)}.adminBulletList{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.35rem;font-size:.88rem;line-height:1.4}.adminMoreList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.adminMoreCard{display:flex;flex-direction:column;gap:.2rem;padding:.85rem 1rem;border-radius:var(--radius-md);background:var(--admin-elev);border:1px solid var(--admin-border);text-decoration:none;color:inherit}.adminMoreCard:hover{border-color:color-mix(in srgb,var(--admin-accent) 45%,var(--admin-border));text-decoration:none}.adminMoreTitle{font-weight:700;font-size:.98rem}.adminMoreHint{font-size:.85rem}.adminShell a.adminSideLink--active{text-decoration:none}.adminTable tr.adminTableRowBtn{cursor:pointer}.adminTable tr.adminTableRowBtn:hover{background:color-mix(in srgb,var(--admin-accent) 7%,transparent)}.adminTable tr.adminTableRowBtn:focus-visible{outline:2px solid var(--admin-accent);outline-offset:-2px}.adminModalScrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;border:none;padding:0;margin:0;background:#0000007a;cursor:pointer}.adminUserDetailModal{position:fixed;z-index:85;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 2rem));max-height:min(90vh,760px);overflow:auto;padding:1.25rem 1.35rem 1.35rem;border-radius:var(--radius-lg);border:1px solid var(--admin-border);background:var(--admin-surface);box-shadow:0 24px 64px #0006}.adminUserDetailHead{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.adminUserDetailTitle{margin:0;font-size:1.15rem;font-weight:800;letter-spacing:-.02em;color:var(--admin-text)}.adminUserDetailBody.stack{display:flex;flex-direction:column;gap:.55rem}.adminUserDetailAthleteCard{margin-top:.5rem;padding:1rem 1.05rem;border-radius:var(--radius-md);border:1px solid var(--admin-border);background:var(--admin-elev)}.adminUserDetailSectionTitle{margin:0 0 .35rem;font-size:.95rem;font-weight:800;color:var(--admin-text)}.adminUserDetailActions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.adminAthletePrimaryBtn{display:inline-flex;align-items:center;justify-content:center;padding:.45rem .9rem;border-radius:var(--radius-md);border:1px solid color-mix(in srgb,var(--admin-accent) 55%,var(--admin-border));background:color-mix(in srgb,var(--admin-accent) 14%,var(--admin-surface));color:var(--admin-text);font-weight:700;font-size:.88rem;cursor:pointer}.adminAthletePrimaryBtn:hover:not(:disabled){background:color-mix(in srgb,var(--admin-accent) 22%,var(--admin-surface))}.adminAthletePrimaryBtn:disabled{opacity:.55;cursor:not-allowed}:root{--status-ready: #22c55e;--status-recovery: #3b82f6;--status-caution: #f59e0b;--status-warn: #ef4444;--status-strength: #8b5cf6;--status-neutral: #71717a;--ds-card-radius: 22px;--ds-card-pad: 16px;--ds-gap: 12px}.todayDash{display:flex;flex-direction:column;gap:var(--ds-gap);width:100%;max-width:none}.todayDashFull{width:100%;min-width:0}.todayDashCol{display:flex;flex-direction:column;gap:var(--ds-gap);min-width:0}@media(min-width:900px){.todayDash{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 20px;align-items:start}.todayDashFull{grid-column:1 / -1}.dsPrimaryCard .dsPrimaryMetrics{gap:24px 32px}.dsPrimaryCardHead{align-items:center}}@media(min-width:1200px){.todayDash{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}.todayDashGreet{margin:-.25rem 0 0;font-size:.875rem;font-weight:500;color:var(--muted)}.dsScreenHeader{display:flex;align-items:flex-end;gap:12px;padding:4px 0 12px}.dsScreenHeaderCenter{flex:1;min-width:0}.dsScreenTitle{margin:0;font-size:clamp(1.75rem,5vw,2rem);font-weight:800;letter-spacing:-.03em;line-height:1.15}.dsScreenSubtitle{margin:2px 0 0;font-size:.875rem;font-weight:500;color:var(--muted)}.dsScreenHeaderRight{display:flex;align-items:center;gap:8px}.dsNotifBtn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;color:var(--text);border-radius:10px;text-decoration:none;cursor:pointer}.dsNotifBtn:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}.dsNotifDot{position:absolute;top:8px;right:8px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.dsPrimaryCard{border-radius:var(--ds-card-radius);border:1px solid var(--border);padding:var(--ds-card-pad);display:flex;flex-direction:column;gap:10px}.dsPrimaryCardHead{display:flex;align-items:flex-start;gap:12px}.dsPrimaryCardHeadLeft{flex:1;min-width:0}.dsEyebrowRow{display:flex;align-items:center;gap:6px;margin-bottom:4px}.dsEyebrowDot{width:7px;height:7px;border-radius:4px}.dsEyebrow{font-size:.68rem;font-weight:800;letter-spacing:.08em}.dsPrimaryTitle{margin:0;font-size:1.05rem;font-weight:700;line-height:1.35}.dsPrimaryCopy{margin:0;font-size:.875rem;line-height:1.45;color:var(--muted)}.dsPrimaryMetrics{display:flex;flex-wrap:wrap;gap:16px;margin-top:4px}.dsPrimaryAction{margin-top:6px;display:inline-flex;align-items:center;justify-content:center;width:100%;padding:12px 14px;border:none;border-radius:12px;font-size:.94rem;font-weight:800;letter-spacing:.01em;text-decoration:none;cursor:pointer;color:#fff}.dsPrimaryAction:hover{filter:brightness(1.05);text-decoration:none}.dsReadinessBlock{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.dsReadinessPct{font-size:1.75rem;font-weight:800;letter-spacing:-.03em;line-height:1}.dsMetricChip{display:flex;flex-direction:column;gap:2px;min-width:0}.dsMetricLabel{font-size:.75rem;font-weight:600;color:var(--muted)}.dsMetricValue{font-size:1.125rem;font-weight:700;line-height:1.2}.dsMetricSub{font-size:.68rem;font-weight:500;color:var(--muted)}.dsStatusPill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:.75rem;font-weight:700}.dsStatusPillDot{width:7px;height:7px;border-radius:4px}.dsCoachNote{border-radius:var(--ds-card-radius);border:1px solid var(--border);border-left:3px solid var(--accent);padding:12px var(--ds-card-pad);background:var(--card-elev-bg)}.todayDashCoachNote{margin-top:1rem}.dsCoachKicker{margin:0 0 4px;font-size:.62rem;font-weight:800;letter-spacing:.09em;color:var(--accent)}.dsCoachBody{margin:0;font-size:.875rem;line-height:1.45;font-weight:500}.dsSectionHead{display:flex;align-items:center;justify-content:space-between;margin:4px 0 8px}.dsSectionTitle{margin:0;font-size:1.125rem;font-weight:700;letter-spacing:-.01em}.dsSectionLink{font-size:.8125rem;font-weight:700;color:var(--accent);text-decoration:none}.dsSectionLink:hover{text-decoration:underline}.dsWorkCard{border-radius:var(--ds-card-radius);border:1px solid var(--border);padding:var(--ds-card-pad);background:var(--card-elev-bg);display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit}.dsWorkCard:hover{border-color:var(--border-strong)}.dsWorkHeadRow{display:flex;align-items:center;justify-content:space-between;gap:8px}.dsWorkEyebrow{font-size:.68rem;font-weight:800;letter-spacing:.06em}.dsWorkTitle{margin:0;font-size:1.125rem;font-weight:800;line-height:1.3}.dsWorkBody{margin:0;font-size:.8125rem;line-height:1.45;color:var(--muted)}.dsWorkMetrics{display:flex;flex-wrap:wrap;gap:14px;margin-top:4px}.dsWorkMatch{margin:4px 0 0;font-size:.75rem;font-weight:700;color:var(--status-ready)}.dsDim{font-size:.75rem;color:var(--muted);margin:0 0 4px}.dsExpandable{border-radius:var(--ds-card-radius);border:1px solid var(--border);background:var(--card-elev-bg);overflow:hidden}.dsExpandableHead{display:flex;align-items:center;gap:8px;width:100%;padding:14px var(--ds-card-pad);border:none;background:transparent;cursor:pointer;text-align:left;color:inherit}.dsExpandableHead:hover{background:color-mix(in srgb,var(--text) 3%,transparent)}.dsExpandableTitle{margin:0;font-size:1rem;font-weight:700}.dsExpandableSummary{margin:2px 0 0;font-size:.75rem;color:var(--muted);font-weight:500}.dsExpandableChev{font-size:1.35rem;font-weight:600;color:var(--muted);width:18px;text-align:right}.dsExpandableBody{padding:0 var(--ds-card-pad) var(--ds-card-pad)}.dsWeekCard{border-radius:var(--ds-card-radius);border:1px solid var(--border);padding:var(--ds-card-pad);background:var(--card-elev-bg);display:flex;flex-direction:column;gap:10px}.dsWeekTrack{height:6px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--text) 8%,transparent);margin-top:2px}.dsWeekFill{height:100%;border-radius:999px}.dsSkeleton{border-radius:var(--ds-card-radius);border:1px solid var(--border);padding:var(--ds-card-pad);background:var(--card-elev-bg);display:flex;flex-direction:column;gap:10px}.dsSkeletonLine{height:12px;border-radius:6px;background:linear-gradient(90deg,color-mix(in srgb,var(--text) 6%,transparent) 25%,color-mix(in srgb,var(--text) 12%,transparent),color-mix(in srgb,var(--text) 6%,transparent) 75%);background-size:200% 100%;animation:dsShimmer 1.2s ease-in-out infinite}@keyframes dsShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}
