:root{--bg:#080d1a;--bg2:#0d1322;--card:#111827;--card2:#1a2338;--text:#fff;--text2:#ffffff85;--text3:#ffffff38;--blue:#00c8d7;--accent:#00c8d7;--accent-dim:#00c8d724;--accent-glow:#00c8d752;--green:#30d158;--green-dim:#30d1582e;--orange:#ff9f0a;--orange-dim:#ff9f0a2e;--red:#ff453a;--red-dim:#ff453a33;--purple:#bf5af2;--teal-light:#5ac8fa;--sep:#ffffff12;--sep-s:#ffffff1a;--fill1:#ffffff1a;--fill2:#ffffff0f;--fill3:#ffffff0a;--nav:#080d1aeb;--shadow-lg:0 10px 20px -4px #00000073, 0 4px 10px -4px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}a{color:var(--accent);text-decoration:none}button{font-family:inherit}button,a,input,select,textarea,.card{transition:color .18s,background-color .18s,border-color .18s,opacity .18s,transform .18s}@media (hover:hover) and (pointer:fine){button:not(:disabled):hover,a:hover,input:not(:disabled):not(.cb):hover,select:not(:disabled):hover,textarea:not(:disabled):hover,.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}button,a,input,select,textarea,.card{transition:none}}.nav{z-index:100;background:var(--nav);-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);border-bottom:1px solid var(--sep);padding-top:env(safe-area-inset-top);position:sticky;top:0}.nav-inner{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;height:48px;padding:0 16px;display:grid}.nav-l{justify-self:start}.nav-t{white-space:nowrap;letter-spacing:-.2px;justify-self:center;font-size:17px;font-weight:700}.nav-r{justify-self:end}.nav-btn{color:var(--accent);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:4px;font-size:17px;display:inline-flex}.nav-btn:active{opacity:.4}.nav-back svg{transform:scaleX(-1)}.tab-bar{z-index:100;background:var(--nav);-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);border-top:1px solid var(--sep);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.tab-item{color:var(--text3);cursor:pointer;-webkit-appearance:none;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:8px 0 6px;font-size:10px;text-decoration:none;transition:color .18s;display:flex}.tab-item svg{stroke:var(--text3);transition:stroke .18s,transform .18s}.tab-item span{font-weight:500;transition:font-weight .18s,color .18s}.tab-item.active{color:var(--accent)}.tab-item.active svg{stroke:var(--accent)}.tab-item.active span{font-weight:700}.tab-item:active svg{transform:scale(.88)}.scroll{padding:0 0 calc(84px + env(safe-area-inset-bottom));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);animation:.36s cubic-bezier(.32,.72,0,1) page-enter}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.large-title{letter-spacing:-.6px;padding:12px 20px 4px;font-size:34px;font-weight:800}.large-sub{color:var(--text2);padding:0 20px 16px;font-size:15px}.list-hdr{text-transform:uppercase;color:var(--text3);letter-spacing:.08em;margin:24px 16px 8px 20px;font-size:12px;font-weight:600}.list-ftr{color:var(--text2);margin:8px 20px 0;font-size:13px}.ios-list{background:var(--card);border:1px solid var(--sep);border-radius:14px;margin:0 16px;overflow:hidden}.ios-item{background:var(--card);align-items:center;min-height:50px;padding:14px 16px;display:flex;position:relative}.ios-item+.ios-item:before{content:"";background:var(--sep);height:1px;position:absolute;top:0;left:56px;right:0}.ios-item.ni+.ios-item:before,.ios-item.ni:before{left:16px}.ios-item.tap:active{background:var(--fill2)}.ios-inp{color:var(--text);-webkit-appearance:none;background:0 0;border:none;outline:none;flex:1;padding:4px 0;font-family:inherit;font-size:16px}.ios-inp::placeholder{color:var(--text2)}.btn-fill{background:var(--accent);color:#000;cursor:pointer;text-align:center;letter-spacing:-.1px;width:calc(100% - 32px);box-shadow:0 4px 20px var(--accent-glow);border:none;border-radius:14px;margin:16px;padding:16px;font-family:inherit;font-size:17px;font-weight:700;display:block}.btn-fill:active{filter:brightness(.88)}.btn-flat{background:var(--card2);color:var(--text);cursor:pointer;text-align:center;border:none;border:1px solid var(--sep);border-radius:12px;width:calc(100% - 32px);margin:8px 16px;padding:13px;font-family:inherit;font-size:17px;display:block}.btn-flat.red{color:var(--red)}.btn-flat:active{background:var(--fill2)}.cb{border:1.5px solid var(--sep-s);appearance:none;cursor:pointer;border-radius:50%;outline:none;flex-shrink:0;width:26px;height:26px;margin-right:14px;transition:transform .15s,background-color .2s,border-color .2s;position:relative}.cb:checked{background:var(--accent);border-color:var(--accent);box-shadow:0 0 10px var(--accent-glow)}.cb:checked:after{content:"";background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-size:contain;width:14px;height:14px;position:absolute;top:4px;left:4.5px}.cb:active{transform:scale(.9)}.wk-hdr{color:var(--text3);text-transform:uppercase;letter-spacing:.08em;margin:20px 16px 6px 20px;font-size:12px;font-weight:600}.day-grid{grid-template-columns:repeat(2,1fr);gap:10px;padding:0 16px;display:grid}.day-card{background:var(--card);color:inherit;cursor:pointer;border:1px solid var(--sep);border-radius:18px;flex-direction:column;min-height:110px;padding:16px;transition:transform .15s;display:flex;position:relative;overflow:hidden}.day-card:after{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff08 0%,#0000 60%);border-radius:18px;position:absolute;inset:0}.day-card:active{transform:scale(.96)}.day-card.rest{background:var(--bg2);border-color:var(--sep)}.day-dot{border-radius:50%;width:9px;height:9px;position:absolute;top:13px;right:13px}.day-date{color:var(--text3);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.day-title{letter-spacing:-.1px;margin-top:5px;font-size:15px;font-weight:700;line-height:1.25}.day-sub{color:var(--text2);margin-top:3px;font-size:12px;line-height:1.3}.day-prog{flex-direction:column;align-items:flex-end;gap:3px;display:flex;position:absolute;bottom:11px;right:11px}.day-prog-bar{background:var(--fill2);border-radius:2px;width:40px;height:4px;overflow:hidden}.day-prog-fill{background:var(--accent);border-radius:2px;height:100%}.day-check{background:var(--accent);color:#000;width:24px;height:24px;box-shadow:0 2px 10px var(--accent-glow);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex;position:absolute;bottom:11px;right:11px}.day-hero{align-items:stretch;gap:14px;padding:4px 20px 16px;display:flex}.hero-bar{border-radius:2px;flex-shrink:0;width:4px}.hero-title{letter-spacing:-.5px;font-size:28px;font-weight:800;line-height:1.15}.hero-sub{color:var(--text2);margin-top:4px;font-size:15px}.prog-wrap{margin:10px 20px 8px}.prog-track{background:var(--fill2);border-radius:3px;height:6px;overflow:hidden}.prog-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .25s}.prog-labels{color:var(--text2);justify-content:space-between;margin-top:6px;font-size:13px;display:flex}.ex-meta{color:var(--text2);margin-top:3px;font-size:14px}.ex-w{color:var(--text);font-weight:600}.weight-row{align-items:center;gap:8px;margin-top:8px;display:flex}.weight-inp{border:1px solid var(--sep);background:var(--fill2);color:var(--text);-webkit-appearance:none;border-radius:10px;outline:none;flex:1;min-width:90px;padding:8px 12px;font-family:inherit;font-size:15px;font-weight:600;transition:border-color .2s,background .2s}.weight-inp::placeholder{color:var(--text3);font-weight:400}.weight-inp:focus{border-color:var(--accent);background:#00c8d70f}.cal-row{background:var(--card2);border:1px solid var(--sep);border-radius:14px;align-items:center;gap:10px;margin:10px 16px 0;padding:13px 16px;display:flex}.cal-inp{color:var(--text);-webkit-appearance:none;background:0 0;border:none;outline:none;width:90px;font-family:inherit;font-size:17px;font-weight:700}.cal-inp::placeholder{color:var(--text2);font-weight:400}.cal-lbl{color:var(--text2);font-size:13px}.tip{background:var(--card2);color:var(--text2);border:1px solid var(--sep);border-radius:16px;gap:10px;margin:20px 16px 16px;padding:14px 16px;font-size:14px;line-height:1.5;transition:border-color .2s;display:flex}.tip:focus-within{border-color:var(--accent)}.tip-icon{color:var(--accent);flex-shrink:0;align-items:flex-start;padding-top:2px;line-height:0;display:flex}.tip-icon svg{stroke:var(--accent)}.tip-textarea{color:var(--text2);resize:none;-webkit-appearance:none;background:0 0;border:none;outline:none;flex:1;min-height:20px;font-family:inherit;font-size:14px;line-height:1.5;overflow:hidden}.tip-textarea::placeholder{color:var(--text3);font-style:italic}.empty{background:var(--card);text-align:center;color:var(--text2);border:1px solid var(--sep);border-radius:16px;margin:24px 16px;padding:40px 20px;font-size:15px;line-height:1.6}.overlay{opacity:0;pointer-events:none;z-index:200;background:#0009;transition:opacity .25s;position:fixed;inset:0}.sheet{background:var(--card);z-index:201;padding-bottom:calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--sep);border-radius:20px 20px 0 0;max-height:88vh;transition:transform .32s cubic-bezier(.32,.72,0,1);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%)}.overlay.show{opacity:1;pointer-events:auto}.sheet.show{transform:translateY(0)}.handle{background:var(--fill1);border-radius:2px;width:40px;height:4px;margin:10px auto 6px}.modal-title{text-align:center;color:var(--text3);text-transform:uppercase;letter-spacing:.08em;margin:12px 16px 4px;font-size:12px;font-weight:600}.modal-msg{text-align:center;min-height:20px;color:var(--text2);margin:8px 16px 0;font-size:14px}.modal-msg.ok{color:var(--accent)}.modal-msg.err{color:var(--red)}.stat-row{grid-template-columns:1fr 1fr;gap:10px;padding:0 16px;display:grid}.stat-card{background:var(--card);border:1px solid var(--sep);border-radius:16px;padding:16px 14px}.stat-val{letter-spacing:-.8px;font-size:30px;font-weight:800;line-height:1}.stat-lbl{color:var(--text2);margin-top:5px;font-size:13px;line-height:1.3}.month-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:8px 16px 12px;display:flex;overflow-x:auto}.month-tabs::-webkit-scrollbar{display:none}.month-tab{white-space:nowrap;background:var(--card2);color:var(--text2);border:1px solid var(--sep);border-radius:20px;flex-shrink:0;padding:7px 16px;font-size:14px;font-weight:500;text-decoration:none}.month-tab.active{background:var(--accent);color:#000;border-color:#0000;font-weight:700}.ring-wrap{flex-shrink:0;width:90px;height:90px;position:relative}.ring-svg{width:90px;height:90px;transform:rotate(-90deg)}.ring-inner{flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex;position:absolute;inset:0}.ring-pct{font-size:20px;font-weight:700;line-height:1}.ring-sub{color:var(--text2);font-size:10px;font-weight:500}.cal-chart{align-items:flex-end;gap:8px;height:140px;padding:0 16px;display:flex}.cal-bar-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:5px;display:flex}.cal-bar-val{color:var(--text2);text-align:center;min-height:14px;font-size:10px;font-weight:500}.cal-bar{background:var(--accent);border-radius:7px 7px 0 0;width:100%;min-height:4px}.cal-bar-lbl{color:var(--text2);font-size:11px;font-weight:400}.prog-ex-card{background:var(--card);border:1px solid var(--sep);border-radius:16px;margin:0 16px 12px;overflow:hidden}.prog-ex-head{border-bottom:1px solid var(--sep);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.prog-ex-name{font-size:15px;font-weight:700}.prog-ex-badge{align-items:center;gap:6px;display:flex}.prog-ex-body{padding:12px 14px}.prog-sparkline{margin-bottom:10px}.prog-table{border-collapse:collapse;width:100%;font-size:13px}.prog-table th{text-align:left;color:var(--text2);text-transform:uppercase;letter-spacing:.06em;padding:4px 6px;font-size:11px}.prog-table td{border-top:1px solid var(--sep);padding:7px 6px}.var-up{color:var(--accent);font-weight:700}.var-dn{color:var(--red);font-weight:700}.var-eq{color:var(--text2)}.type-pill{color:#fff;border-radius:20px;align-items:center;gap:4px;padding:4px 11px;font-size:12px;font-weight:700;display:inline-flex}.filter-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:12px 16px 8px;display:flex;overflow-x:auto}.filter-tabs::-webkit-scrollbar{display:none}.filter-tab{background:var(--card2);color:var(--text2);border:1px solid var(--sep);border-radius:20px;flex-shrink:0;padding:7px 18px;font-size:14px;font-weight:500;text-decoration:none}.filter-tab.active{background:var(--accent);color:#000;border-color:#0000;font-weight:700}.rt-card{background:var(--card);border:1px solid var(--sep);color:var(--text);border-radius:16px;align-items:stretch;margin:0 16px 10px;text-decoration:none;display:flex}.rt-card:active{opacity:.7}.rt-card-bar{border-radius:16px 0 0 16px;flex-shrink:0;width:5px}.rt-card-body{flex:1;min-width:0;padding:14px 12px}.rt-card-name{font-size:16px;font-weight:700}.rt-card-meta{color:var(--text2);margin-top:3px;font-size:13px}.rt-card-chev{color:var(--text3);align-items:center;padding:0 14px;font-size:22px;display:flex}.rt-hero{padding:18px 16px 12px}.rt-hero-name{letter-spacing:-.5px;font-size:26px;font-weight:800;line-height:1.25}.rt-hero-stats{color:var(--text2);margin-top:5px;font-size:15px}.rt-item{background:var(--card);border:1px solid var(--sep);border-radius:14px;align-items:stretch;margin:0 16px 8px;display:flex}.rt-item-bar{border-radius:14px 0 0 14px;flex-shrink:0;width:5px}.rt-item-body{flex:1;min-width:0;padding:13px 12px}.rt-item-name{font-size:15px;font-weight:600}.rt-item-sub{color:var(--text2);margin-top:4px;font-size:13px;line-height:1.55}.rt-item-chev{color:var(--text3);align-items:center;padding:0 14px;font-size:18px;display:flex}.rt-sect-lbl{color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;padding:10px 16px 4px;font-size:12px;font-weight:700}.apply-bar{bottom:calc(49px + env(safe-area-inset-bottom));background:linear-gradient(to top, var(--bg) 75%, transparent);pointer-events:none;z-index:90;justify-content:center;padding:10px 20px 14px;display:flex;position:fixed;left:0;right:0}.apply-bar button{pointer-events:auto;background:var(--red);color:#fff;cursor:pointer;box-shadow:0 4px 20px var(--red-dim);border:none;border-radius:30px;padding:14px 48px;font-size:17px;font-weight:700}.apply-bar button:active{filter:brightness(.88)}.ex-del-btn{background:var(--red-dim);cursor:pointer;-webkit-appearance:none;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-self:flex-start;align-items:center;width:32px;height:32px;margin-top:2px;margin-left:12px;transition:transform .12s;display:none}.ex-del-btn:active{transform:scale(.88)}.day-edit-mode .ex-del-btn{display:flex}.st-hero{align-items:center;gap:16px;padding:8px 16px 24px;display:flex}.st-ring-wrap{flex-shrink:0;width:114px;height:114px;position:relative}.st-ring-svg{width:114px;height:114px;transform:rotate(-90deg)}.st-ring-inner{flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:absolute;inset:0}.st-ring-pct{letter-spacing:-.5px;font-size:26px;font-weight:800;line-height:1}.st-ring-lbl{color:var(--text2);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:600}.st-kpis{flex:1;grid-template-columns:1fr 1fr;gap:8px;display:grid}.st-kpi{background:var(--card);border:1px solid var(--sep);border-radius:16px;padding:12px 13px}.st-kpi-val{letter-spacing:-.5px;font-size:26px;font-weight:800;line-height:1}.st-kpi-lbl{color:var(--text2);margin-top:4px;font-size:11px;font-weight:500;line-height:1.3}.st-types{background:var(--card);border:1px solid var(--sep);border-radius:16px;flex-direction:column;gap:14px;margin:0 16px;padding:16px;display:flex}.st-type-row{grid-template-columns:52px 1fr 24px;align-items:center;gap:10px;display:grid}.st-type-lbl{color:var(--text2);font-size:13px;font-weight:600}.st-type-track{background:var(--fill2);border-radius:6px;height:8px;overflow:hidden}.st-type-fill{border-radius:6px;height:100%}.st-type-n{text-align:right;font-size:14px;font-weight:700}.st-chart{align-items:flex-end;gap:10px;height:170px;padding:4px 16px 0;display:flex}.st-chart-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;display:flex}.st-chart-val{color:var(--text2);text-align:center;min-height:14px;font-size:10px;font-weight:600;line-height:1.2}.st-chart-bar{background:linear-gradient(to top, var(--accent), #00c8d766);border-radius:9px 9px 0 0;width:100%;min-height:6px}.st-chart-lbl{color:var(--text2);font-size:11px;font-weight:400}.pg-list{background:var(--card);border:1px solid var(--sep);border-radius:16px;margin:0 16px;overflow:hidden}.pg-item{cursor:pointer;-webkit-tap-highlight-color:transparent}.pg-item.pg-hidden{display:none}.pg-row{align-items:center;gap:8px;padding:12px 16px;display:flex}.pg-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:600;overflow:hidden}.pg-spark{opacity:.7;flex-shrink:0}.pg-badge{white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:700}.pg-chev{color:var(--text3);flex-shrink:0;font-size:18px;line-height:1;transition:transform .2s}.pg-item.pg-open .pg-chev{transform:rotate(90deg)}.pg-detail{background:var(--fill);border-top:.5px solid var(--sep);padding:2px 16px 10px;display:none}.pg-item.pg-open .pg-detail{display:block}.pg-sess-row{border-bottom:.5px solid var(--sep);align-items:center;gap:8px;padding:7px 0;display:flex}.pg-sess-row:last-child{border-bottom:none}.pg-sess-date{color:var(--text2);flex-shrink:0;width:38px;font-size:13px}.pg-sess-w{flex:1;font-size:14px;font-weight:600}.pg-sep{background:var(--sep);height:.5px}.pg-more-btn{background:var(--fill);width:calc(100% - 32px);color:var(--blue);cursor:pointer;text-align:center;border:none;border-radius:12px;margin:8px 16px 4px;padding:12px;font-size:14px;font-weight:600;display:block}@media (width>=700px){.nav-inner,.tab-bar>*{max-width:700px;margin-left:auto;margin-right:auto}.tab-bar{justify-content:center}.tab-item{max-width:120px}}.ex-edit-tap{cursor:pointer;padding-bottom:2px}.ex-edit-tap:active{opacity:.6}.ex-sheet-title{text-align:center;letter-spacing:-.2px;margin:0;padding:2px 16px 12px;font-size:17px;font-weight:700}.ex-sets-row{background:var(--card2);border:1px solid var(--sep);border-radius:14px;justify-content:space-between;align-items:center;margin:0 16px 8px;padding:14px 16px;display:flex}.ex-sets-label{font-size:16px;font-weight:500}.ex-stepper{background:var(--fill2);border-radius:12px;align-items:center;display:flex;overflow:hidden}.ex-stepper-btn{width:38px;height:38px;color:var(--accent);cursor:pointer;-webkit-appearance:none;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;font-size:24px;display:flex}.ex-stepper-btn:active{background:var(--fill3)}.ex-stepper-val{text-align:center;min-width:38px;font-size:17px;font-weight:700}.ex-param-group{background:var(--card2);border:1px solid var(--sep);border-radius:14px;margin:0 16px 8px;overflow:hidden}.ex-param-row{justify-content:space-between;align-items:center;min-height:48px;padding:14px 16px;display:flex}.ex-param-row+.ex-param-row{border-top:1px solid var(--sep)}.ex-param-label{font-size:16px;font-weight:500}.ex-param-select{color:var(--text2);text-align:right;-webkit-appearance:none;cursor:pointer;background:0 0;border:none;outline:none;max-width:180px;font-family:inherit;font-size:16px}.ex-param-inp{color:var(--text2);text-align:right;-webkit-appearance:none;background:0 0;border:none;outline:none;width:90px;font-family:inherit;font-size:16px}.ex-param-inp::placeholder{color:var(--text3)}.rt-item-tap{cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.rt-item-tap:active{opacity:.6}@media (hover:hover) and (pointer:fine){.rt-item-tap:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}}.ex-detail-sheet-title{text-align:center;letter-spacing:-.3px;margin:0;padding:2px 20px 14px;font-size:18px;font-weight:700}#ex-detail-gallery{background:#fff;border-radius:14px;margin:0 16px;position:relative;overflow:hidden}.ex-detail-main-img{cursor:pointer;background:#fff;width:100%;overflow:hidden}.ex-detail-main-img img{object-fit:contain;width:100%;max-height:220px;display:block}.ex-detail-thumbs{gap:6px;padding:8px 12px;display:flex}.ex-detail-thumb{object-fit:cover;cursor:pointer;border:2px solid #0000;border-radius:8px;width:60px;height:45px}.ex-detail-thumb.active{border-color:var(--accent)}.ex-detail-info{padding:16px 16px 8px}.ex-detail-name{letter-spacing:-.3px;margin-bottom:4px;font-size:22px;font-weight:800;line-height:1.2}.ex-detail-mg{color:var(--text2);margin-bottom:14px;font-size:14px}.ex-detail-section{color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin:16px 0 4px;font-size:12px;font-weight:700}.ex-detail-text{font-size:15px;line-height:1.6}.ex-detail-params{background:var(--sep);border-radius:16px;grid-template-columns:1fr 1fr;gap:1px;margin-bottom:28px;display:grid;overflow:hidden}.ex-detail-param{background:var(--fill);flex-direction:column;gap:5px;padding:16px 18px;display:flex}.ex-detail-param-lbl{color:var(--text3);text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:600}.ex-detail-param-val{letter-spacing:-.6px;font-size:28px;font-weight:700;line-height:1}.ex-detail-param-unit{color:var(--text2);letter-spacing:0;font-size:15px;font-weight:500}.ex-detail-badges{flex-wrap:wrap;gap:6px;margin-bottom:4px;display:flex}.ex-detail-badge{background:var(--fill2);color:var(--text2);border-radius:20px;padding:5px 12px;font-size:13px;font-weight:500}.ex-detail-muted{color:var(--text2)}.ex-edit-img-wrap{background:#fff;border-radius:14px;margin:0 16px 12px;overflow:hidden}.ex-edit-img-wrap img{object-fit:contain;width:100%;max-height:180px;display:block}.drag-handle{width:28px;min-height:44px;color:var(--text3);cursor:grab;touch-action:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:-4px;display:none}.day-edit-mode .drag-handle{display:flex}.edit-draggable.dragging{opacity:.45;z-index:50;position:relative}.edit-draggable.drag-over{box-shadow:0 -2px 0 var(--accent)}.add-ex-bar{bottom:calc(83px + env(safe-area-inset-bottom));z-index:20;pointer-events:none;padding:6px 16px 8px;display:none;position:fixed;left:0;right:0}.add-ex-bar.show{pointer-events:auto;display:flex}.add-ex-bar-btn{background:var(--accent);color:#000;cursor:pointer;box-shadow:0 4px 20px var(--accent-glow);border:none;border-radius:14px;flex:1;padding:15px;font-size:16px;font-weight:700}.add-ex-bar-btn:active{opacity:.8}.add-ex-free-btn{background:var(--accent);color:#000;cursor:pointer;white-space:nowrap;border:none;border-radius:12px;padding:10px 16px;font-family:inherit;font-size:15px;font-weight:700}.add-ex-free-btn:active{opacity:.8}.add-ex-bar-actions{gap:8px;margin-top:6px;display:flex}.add-ex-action-btn{background:var(--card2);color:var(--text);border:1px solid var(--sep);cursor:pointer;text-align:center;border-radius:12px;flex:1;padding:11px 8px;font-family:inherit;font-size:13px;font-weight:500}.add-ex-action-btn:active{opacity:.7}.app-toast{bottom:calc(80px + env(safe-area-inset-bottom));color:#fff;white-space:nowrap;text-overflow:ellipsis;pointer-events:none;opacity:0;z-index:9999;border:1px solid var(--sep);background:#111827f5;border-radius:14px;max-width:calc(100vw - 48px);padding:12px 22px;font-size:14px;font-weight:600;transition:opacity .22s,transform .22s;position:fixed;left:50%;overflow:hidden;transform:translate(-50%)translateY(12px);box-shadow:0 4px 24px #00000080}.app-toast.show{opacity:1;transform:translate(-50%)translateY(0)}.app-toast-ok{border-color:var(--accent);color:var(--accent);background:#00c8d71f}.app-toast-warn{border-color:var(--orange);color:var(--orange);background:#ff9f0a1f}.pwa-update-banner{left:12px;right:12px;bottom:calc(64px + env(safe-area-inset-bottom));z-index:9998;background:var(--card);border:1px solid var(--sep);color:var(--text);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:13.5px;display:flex;position:fixed;box-shadow:0 4px 24px #00000080}.pwa-update-banner button{background:var(--accent);color:#000;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;padding:8px 16px;font-family:inherit;font-size:13.5px;font-weight:700}.pwa-update-banner button:active{filter:brightness(.88)}.day-prog-pct{color:var(--text2);text-align:right;font-size:11px;font-weight:700;line-height:1}.wh-row{border-top:1px solid var(--sep);align-items:center;gap:8px;padding:9px 0;display:flex}.wh-date{color:var(--text2);flex-shrink:0;width:52px;font-size:13px}.wh-val{flex:1;font-size:15px;font-weight:600}.wh-var{text-align:right;width:18px;font-size:12px;font-weight:700}.wh-empty{text-align:center;color:var(--text2);padding:28px 16px;font-size:14px}.photos-grid{grid-template-columns:repeat(3,1fr);gap:4px;padding:0 0 8px;display:grid}.photo-thumb{aspect-ratio:1;background:var(--fill2);border-radius:10px;position:relative;overflow:hidden}.photo-thumb img{object-fit:cover;width:100%;height:100%;display:block}.photo-del-btn{color:#fff;text-align:center;cursor:pointer;background:#000000b3;border:none;border-radius:50%;width:22px;height:22px;padding:0;font-size:13px;line-height:22px;position:absolute;top:4px;right:4px}.photo-date{color:#fff;text-align:center;background:linear-gradient(#0000,#000000bf);padding:10px 4px 3px;font-size:10px;position:absolute;bottom:0;left:0;right:0}.photo-upload-btn{background:var(--fill2);border:1.5px dashed var(--sep-s);aspect-ratio:1;cursor:pointer;color:var(--text2);appearance:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.photo-upload-btn .pu-icon{color:var(--text2);line-height:0}.photo-upload-btn:active{opacity:.6}.photo-empty{text-align:center;color:var(--text2);padding:28px 16px;font-size:14px}.login-screen{min-height:100dvh;padding:calc(env(safe-area-inset-top) + 40px) 24px calc(env(safe-area-inset-bottom) + 40px);background:radial-gradient(ellipse 90% 50% at 50% -5%, #00c8d72e 0%, transparent 65%), var(--bg);flex-direction:column;justify-content:center;align-items:center;display:flex}.login-logo-wrap{flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;display:flex}.login-logo-svg{width:62px;height:56px;color:var(--accent);filter:drop-shadow(0 6px 18px #00c8d761)}.login-brand{letter-spacing:3px;background:linear-gradient(135deg, var(--accent), var(--teal-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:26px;font-weight:900}.login-tagline{color:var(--text2);text-align:center;margin-bottom:44px;font-size:15px;line-height:1.5}.login-form{flex-direction:column;align-items:center;gap:0;width:100%;max-width:380px;display:flex}.login-fields{flex-direction:column;gap:10px;width:100%;margin-bottom:20px;display:flex}.login-field{background:var(--card);border:1.5px solid var(--sep);border-radius:14px;align-items:center;height:58px;padding:0 16px;transition:border-color .2s,background .2s;display:flex}.login-field:focus-within{border-color:var(--accent);background:#00c8d70d}.login-field-icon{color:var(--text3);flex-shrink:0;margin-right:12px}.login-field-icon svg{stroke:currentColor;stroke-width:1.8px;fill:none;width:20px;height:20px}.login-inp{color:var(--text);-webkit-appearance:none;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:16px}.login-inp::placeholder{color:var(--text2)}.login-btn{background:var(--accent);color:#000;cursor:pointer;width:100%;box-shadow:0 6px 28px var(--accent-glow);letter-spacing:-.1px;border:none;border-radius:14px;padding:17px;font-family:inherit;font-size:17px;font-weight:700;transition:filter .15s,transform .1s}.login-btn:active{filter:brightness(.88);transform:scale(.99)}.login-error{color:var(--red);text-align:center;min-height:20px;margin:14px 0 0;font-size:14px}.hero-title-input{letter-spacing:-.5px;border:1.5px solid var(--accent);color:var(--text);-webkit-appearance:none;background:#ffffff12;border-radius:12px;outline:none;width:100%;padding:6px 10px;font-family:inherit;font-size:28px;font-weight:800;line-height:1.15}.rest-toggle-row{background:var(--card);border:1px solid var(--sep);border-radius:14px;justify-content:space-between;align-items:center;margin:2px 20px 12px;padding:13px 16px;display:none}.rest-toggle-label{color:var(--text);align-items:center;gap:10px;font-size:15px;font-weight:500;display:flex}.rest-toggle-label svg{stroke:var(--accent);flex-shrink:0}.ios-toggle-wrap{flex-shrink:0}.ios-toggle{appearance:none;background:var(--fill1);cursor:pointer;border-radius:16px;width:51px;height:31px;transition:background .22s;position:relative}.ios-toggle:after{content:"";background:#fff;border-radius:50%;width:27px;height:27px;transition:transform .22s cubic-bezier(.4,0,.2,1);position:absolute;top:2px;left:2px;box-shadow:0 1px 4px #00000059}.ios-toggle:checked{background:var(--accent)}.ios-toggle:checked:after{transform:translate(20px)}.rest-empty{flex-direction:column;align-items:center;gap:14px;display:flex}.rest-empty-icon svg{stroke:var(--text3)}.cal-icon{color:var(--orange);flex-shrink:0;align-items:center;display:flex}.cal-icon svg{stroke:var(--orange)}.wh-btn{background:var(--fill2);cursor:pointer;-webkit-appearance:none;color:var(--accent);border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:6px 8px;line-height:0;display:flex}.wh-btn svg{stroke:var(--accent)}.wh-btn:active{opacity:.5}.weight-saved{color:var(--accent);opacity:0;white-space:nowrap;max-width:0;font-size:12px;transition:max-width .35s,opacity .35s;overflow:hidden}.weight-saved.show{opacity:1;max-width:80px}.edit-action-bar{bottom:calc(83px + env(safe-area-inset-bottom));z-index:20;pointer-events:none;padding:8px 16px 10px;display:none;position:fixed;left:0;right:0}.edit-action-bar.show{pointer-events:auto;display:block}.edit-action-grid{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.edit-action-item{background:var(--card2);border:none;border:1px solid var(--sep);color:var(--text);cursor:pointer;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px 8px;font-family:inherit;transition:transform .12s,opacity .12s;display:flex;box-shadow:0 2px 16px #00000052}.edit-action-item:active{opacity:.75;transform:scale(.93)}.edit-action-primary{background:var(--accent);color:#000;box-shadow:0 4px 20px var(--accent-glow);border-color:#0000}.edit-action-primary .edit-action-icon svg{stroke:#000}.edit-action-icon{line-height:0}.edit-action-icon svg{stroke:var(--text)}.edit-action-label{text-align:center;font-size:12px;font-weight:600;line-height:1.25}.edit-action-primary .edit-action-label{color:#000}.ob-screen{background:radial-gradient(ellipse 90% 55% at 50% -8%, #00c8d724 0%, transparent 62%), var(--bg);min-height:100dvh;position:relative;overflow:hidden}.ob-step{min-height:100dvh;padding:calc(env(safe-area-inset-top) + 32px) 24px calc(env(safe-area-inset-bottom) + 24px);flex-direction:column;display:none}.ob-step.active{display:flex}.ob-welcome-logo{flex-direction:column;align-items:center;gap:10px;margin-bottom:32px;display:flex}.ob-logo-svg{filter:drop-shadow(0 6px 20px #00c8d766);width:72px;height:64px}.ob-logo-svg path{fill:url(#ob-grad)}.ob-logo-brand{letter-spacing:4px;background:linear-gradient(135deg, var(--accent), var(--teal-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:24px;font-weight:900}.ob-welcome-title{letter-spacing:-.6px;margin:0 0 14px;font-size:36px;font-weight:800;line-height:1.2}.ob-welcome-sub{color:var(--text2);margin:0 0 auto;font-size:16px;line-height:1.6}.ob-step-top{margin-bottom:28px}.ob-step-num{color:var(--accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;font-size:13px;font-weight:700}.ob-step-title{letter-spacing:-.4px;margin:0;font-size:28px;font-weight:800;line-height:1.2}.ob-sex-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:auto;display:grid}.ob-sex-btn{background:var(--card);border:2px solid var(--sep);color:var(--text);cursor:pointer;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:32px 20px;font-family:inherit;font-size:16px;font-weight:600;transition:border-color .2s,background .2s;display:flex}.ob-sex-btn svg{width:44px;height:44px;stroke:var(--text2);transition:stroke .2s}.ob-sex-btn.active{border-color:var(--accent);background:var(--accent-dim)}.ob-sex-btn.active svg{stroke:var(--accent)}.ob-sex-btn:active{opacity:.75}.ob-picker-wrap{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.ob-picker-label{letter-spacing:-1px;color:var(--accent);margin-bottom:4px;font-size:42px;font-weight:800}.ob-drum-wrap{background:var(--card);border:1px solid var(--sep);border-radius:18px;width:200px;height:240px;position:relative;overflow:hidden}.ob-drum-mask{z-index:2;pointer-events:none;background:linear-gradient(to bottom, var(--card) 0%, transparent 30%, transparent 70%, var(--card) 100%);position:absolute;inset:0}.ob-drum-mask:after{content:"";border-top:1.5px solid var(--accent);border-bottom:1.5px solid var(--accent);height:48px;position:absolute;top:calc(50% - 24px);left:0;right:0}.ob-drum{scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;height:100%;overflow-y:scroll}.ob-drum::-webkit-scrollbar{display:none}.ob-drum-item{height:48px;color:var(--text2);scroll-snap-align:center;justify-content:center;align-items:center;font-size:20px;font-weight:600;display:flex}.ob-options-list{flex-direction:column;gap:10px;margin-bottom:auto;display:flex}.ob-option-btn{background:var(--card);border:2px solid var(--sep);color:var(--text);cursor:pointer;text-align:left;border-radius:16px;align-items:center;gap:14px;padding:16px 18px;font-family:inherit;font-size:15px;font-weight:500;line-height:1.3;transition:border-color .2s,background .2s;display:flex}.ob-option-btn svg{width:22px;height:22px;stroke:var(--text3);flex-shrink:0;transition:stroke .2s}.ob-option-btn.active{border-color:var(--accent);background:var(--accent-dim);color:var(--accent)}.ob-option-btn.active svg{stroke:var(--accent)}.ob-option-btn:active{opacity:.75}.ob-photo-hint{color:var(--text2);text-transform:uppercase;letter-spacing:.06em;margin:20px 0 10px;font-size:14px;font-weight:600}.ob-avatar-row{align-items:center;gap:16px;margin-bottom:auto;display:flex}.ob-avatar-preview{background:var(--card2);border:2px solid var(--sep);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.ob-avatar-preview svg{stroke:var(--text3)}.ob-avatar-choose{background:var(--card2);border:1px solid var(--sep);color:var(--accent);cursor:pointer;border-radius:12px;align-items:center;padding:12px 20px;font-size:15px;font-weight:600;display:inline-flex}.ob-avatar-choose:active{opacity:.6}.ob-step-actions{gap:10px;margin-top:24px;display:flex}.ob-btn-primary{background:var(--accent);color:#000;cursor:pointer;box-shadow:0 6px 24px var(--accent-glow);border:none;border-radius:14px;flex:1;padding:17px;font-family:inherit;font-size:17px;font-weight:700;transition:filter .15s,transform .1s}.ob-btn-primary:disabled{opacity:.4;cursor:not-allowed;filter:none;transform:none}.ob-btn-primary:not(:disabled):active{filter:brightness(.88);transform:scale(.99)}.ob-btn-back{background:var(--card2);color:var(--text);border:1px solid var(--sep);cursor:pointer;border-radius:14px;flex:none;padding:17px 20px;font-family:inherit;font-size:17px;font-weight:600}.ob-btn-back:active{opacity:.7}.save-anim-overlay{z-index:10000;background:var(--bg);opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .28s;display:flex;position:fixed;inset:0}.save-anim-overlay.show{opacity:1;pointer-events:auto}.save-anim-box{flex-direction:column;align-items:center;gap:18px;display:flex}.save-anim-spinner{border:3px solid var(--fill1);border-top-color:var(--accent);border-radius:50%;width:44px;height:44px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.save-anim-msg{color:var(--text2);letter-spacing:-.1px;font-size:15px;font-weight:600}.cal-fab{bottom:calc(68px + env(safe-area-inset-bottom));z-index:90;background:var(--accent);color:#000;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 20px var(--accent-glow);border:none;border-radius:30px;align-items:center;gap:8px;padding:13px 20px 13px 18px;font-family:inherit;font-size:13px;font-weight:800;transition:transform .15s,filter .15s;display:flex;position:fixed;right:20px}.cal-fab svg{stroke:#000}.cal-fab:active{filter:brightness(.88);transform:scale(.92)}.crd-type-list{background:var(--card2);border-radius:16px;flex-direction:column;margin:0 16px 8px;display:flex;overflow:hidden}.crd-type-list-row{border:none;border-bottom:1px solid var(--sep);cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;align-items:center;gap:14px;padding:13px 14px;font-family:inherit;transition:background .12s;display:flex}.crd-type-list-row:last-child{border-bottom:none}.crd-type-list-row:active{background:var(--sep)}.crd-type-list-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.crd-type-list-name{color:var(--text);flex:1;font-size:16px;font-weight:500}.day-ex-group{flex-direction:column;padding:0 16px;display:flex}.day-ex-card{background:var(--card2);border:1px solid var(--sep);border-radius:14px;align-items:stretch;margin-bottom:8px;display:flex;position:relative;overflow:hidden}.day-ex-bar{flex-shrink:0;width:5px}.day-ex-body{flex:1;min-width:0}.hero-date-tap{cursor:default;display:inline}.day-edit-mode .hero-date-tap{color:var(--accent);cursor:pointer;border-bottom:1px dashed #00c8d780}.insert-row{cursor:pointer;background:0 0;justify-content:center;align-items:center;height:32px;min-height:0;padding:0;display:none;position:relative}.day-edit-mode .insert-row{margin-bottom:8px;display:flex}.insert-row-btn{background:var(--accent);color:#000;pointer-events:none;width:26px;height:26px;box-shadow:0 2px 10px var(--accent-glow);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:400;line-height:1;display:flex}.insert-row+.ios-item:before{content:"";background:var(--sep);height:1px;position:absolute;top:0;left:56px;right:0}.cal-view-toggle{background:var(--card2);border:1px solid var(--sep);border-radius:11px;gap:0;margin:0 16px 12px;padding:3px;display:flex}.cal-view-btn{color:var(--text2);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:5px;padding:8px 12px;font-family:inherit;font-size:13px;font-weight:600;transition:background .18s,color .18s;display:flex}.cal-view-btn svg{stroke:currentColor}.cal-view-btn.active{background:var(--card);color:var(--text);box-shadow:0 1px 4px #0000004d}.cal-view-btn:active{opacity:.7}.cal-grid-view{padding:0 14px 8px}.cal-grid-head{text-align:center;grid-template-columns:repeat(7,1fr);margin-bottom:5px;display:grid}.cal-grid-head span{color:var(--text3);text-transform:uppercase;padding:4px 0;font-size:11px;font-weight:700}.cal-grid-cells{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.cal-cell{min-height:70px}.cal-cell-inner{background:var(--card);border:1px solid var(--sep);height:100%;min-height:70px;color:inherit;border-radius:11px;flex-direction:column;align-items:center;padding:6px 3px 5px;text-decoration:none;display:flex;position:relative;overflow:hidden}.cal-cell-today .cal-cell-inner{border-color:var(--accent)}.cal-cell-noday .cal-cell-inner,.cal-cell-empty .cal-cell-inner{background:0 0;border-color:#0000}.cal-cell-inner:active{opacity:.7}.cal-cell-day-num{color:var(--text3);margin-bottom:3px;font-size:12px;font-weight:700}.cal-cell-today .cal-cell-day-num{color:var(--accent)}.cal-cell-noday .cal-cell-day-num{color:var(--text3);opacity:.45}.cal-cell-dots{flex-wrap:wrap;justify-content:center;gap:3px;margin-bottom:2px;display:flex}.cal-cell-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.cal-cell-dot.done{box-shadow:0 0 5px #ffffff40}.cal-cell-title{color:var(--text2);text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;width:100%;padding:0 1px;font-size:8px;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.cal-cell-check{color:var(--accent);font-size:10px;font-weight:900;position:absolute;bottom:4px;right:5px}.cal-cell-prog{background:var(--fill2);border-radius:2px;width:calc(100% - 6px);height:3px;margin-top:auto;overflow:hidden}.cal-cell-prog-fill{background:var(--accent);border-radius:2px;height:100%}.cal-list-row{color:var(--text);align-items:center;gap:12px;padding:4px 16px;text-decoration:none;display:flex}.cal-list-row:active{opacity:.7}.cal-list-date{text-align:center;flex-direction:column;flex-shrink:0;align-items:center;gap:0;width:40px;display:flex}.cal-list-dow{color:var(--text2);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:700}.cal-list-num{font-size:22px;font-weight:800;line-height:1.1}.cal-today-num{color:var(--accent)}.cal-list-slot-tag{color:var(--text3);background:var(--fill2);border-radius:8px;padding:3px 8px;font-size:11px;font-weight:700}.cal-list-card{background:var(--card);border:1px solid var(--sep);border-radius:14px;flex:1;align-items:stretch;min-width:0;margin:4px 0;display:flex;overflow:hidden}.cal-list-bar{flex-shrink:0;width:5px}.cal-list-body{flex:1;min-width:0;padding:12px}.cal-list-title{font-size:15px;font-weight:700}.cal-list-stats{color:var(--text2);margin-top:3px;font-size:12px}.cal-list-prog{background:var(--fill2);border-radius:2px;height:3px;margin-top:5px;overflow:hidden}.cal-list-prog-fill{border-radius:2px;height:100%}.cal-list-check{color:var(--accent);flex-shrink:0;align-items:center;padding:0 14px;font-size:16px;font-weight:900;display:flex}.nav-back-btn{font-size:0}.nav-back-btn svg{width:26px;height:26px}.day-empty-add-btn{background:var(--card2);border:2px dashed var(--sep);width:calc(100% - 32px);color:var(--accent);cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:16px;justify-content:center;align-items:center;gap:10px;margin:24px 16px;padding:22px 16px;font-family:inherit;font-size:17px;font-weight:600;display:flex}.day-empty-add-btn:active{opacity:.7}.day-del-btn{color:#ff3b30;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ff3b301a;border:1.5px solid #ff3b304d;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:calc(100% - 32px);margin:24px 16px 8px;padding:14px 16px;font-family:inherit;font-size:15px;font-weight:600;display:none}.day-del-btn:active{opacity:.7}.cal-list-title-row{align-items:center;gap:7px;display:flex}.cal-list-type-icon{border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.cal-day-strip{top:calc(48px + env(safe-area-inset-top));z-index:95;background:var(--nav);-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);border-bottom:1px solid var(--sep);align-items:center;gap:2px;padding:10px 12px;display:flex;position:sticky}.cal-strip-day{color:inherit;flex-direction:column;flex:1;align-items:center;gap:4px;padding:2px 0;text-decoration:none;display:flex}.cal-strip-dow{color:var(--text3);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.cal-strip-num{width:30px;height:30px;color:var(--text2);border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:600;transition:transform .15s,background .15s,color .15s;display:flex}.cal-strip-day:active .cal-strip-num{transform:scale(.88)}.cal-strip-today .cal-strip-num{background:var(--accent);color:#000;box-shadow:0 2px 10px var(--accent-glow);font-weight:800}.cal-strip-today-btn{background:var(--fill2);color:var(--text2);border:1px solid var(--sep);cursor:pointer;-webkit-appearance:none;border-radius:20px;flex-shrink:0;margin-left:4px;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:600}.cal-strip-today-btn:active{opacity:.6}.cal-day-row{scroll-margin-top:calc(48px + env(safe-area-inset-top) + 64px);align-items:flex-start;gap:12px;padding:4px 16px;display:flex}.cal-day-cards{flex-direction:column;flex:1;gap:8px;min-width:0;padding:4px 0;display:flex}@keyframes cal-flash-pulse{0%{background-color:var(--accent-dim)}to{background-color:#0000}}.cal-day-row.cal-flash{border-radius:16px;animation:.9s ease-out cal-flash-pulse}.cal-empty-day-btn{background:var(--card);border:1px solid var(--sep);cursor:pointer;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;border-radius:14px;justify-content:center;align-items:center;width:100%;height:56px;transition:transform .12s,border-color .15s;display:flex}.cal-empty-day-btn:active{transform:scale(.97)}.cal-empty-day-plus{background:var(--accent-dim);width:30px;height:30px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;transition:transform .15s;display:flex}.cal-empty-day-btn:active .cal-empty-day-plus{transform:scale(1.12)}.cal-add-more-btn{border:1.5px dashed var(--sep-s);width:100%;color:var(--text2);cursor:pointer;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:10px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.cal-add-more-btn svg{stroke:var(--accent);width:15px;height:15px}.cal-add-more-btn:active{opacity:.6}.cal-cell-inner-btn{background:var(--card);cursor:pointer;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;border:none;width:100%;font-family:inherit}.cal-cell-plus{color:var(--text3);opacity:.6;margin-top:2px;transition:opacity .15s,transform .15s}.cal-cell-inner-btn:active .cal-cell-plus{opacity:1;color:var(--accent);transform:scale(1.15)}.cal-cell-inner-btn:active{transform:scale(.94)}.sched-option-row{text-align:left;background:var(--card2);border:1px solid var(--sep);cursor:pointer;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;border-radius:16px;align-items:center;gap:14px;width:calc(100% - 32px);margin:0 16px 10px;padding:14px;font-family:inherit;transition:background .15s,transform .12s;display:flex}.sched-option-row:active{background:var(--fill2);transform:scale(.98)}.sched-option-icon{border-radius:13px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.sched-option-icon-create{background:var(--red-dim);color:var(--red)}.sched-option-icon-lib{background:var(--accent-dim);color:var(--accent)}.sched-option-icon svg{stroke:currentColor}.sched-option-body{flex:1;min-width:0}.sched-option-name{color:var(--text);font-size:15px;font-weight:700}.sched-option-sub{color:var(--text2);margin-top:3px;font-size:12.5px;line-height:1.4}.exsel-sheet{z-index:205;background:var(--bg);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;transition:transform .34s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;inset:0;transform:translateY(100%)}.exsel-sheet.show{transform:translateY(0)}#ex-detail-overlay{z-index:206}#ex-detail-sheet{z-index:207}#exadd-overlay{z-index:208}#exadd-sheet{z-index:209}.exsel-hdr{padding:calc(env(safe-area-inset-top) + 12px) 12px 12px;border-bottom:1px solid var(--sep);flex-shrink:0;align-items:center;gap:8px;display:flex}.exsel-back-btn,.exsel-search-btn{width:34px;height:34px;color:var(--text2);cursor:pointer;-webkit-appearance:none;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.exsel-back-btn:active,.exsel-search-btn:active{background:var(--fill2)}.exsel-title{text-align:center;letter-spacing:-.2px;flex:1;font-size:16px;font-weight:700}.exsel-search-inp{background:var(--fill2);border:1px solid var(--sep);color:var(--text);border-radius:10px;outline:none;flex:1;padding:8px 12px;font-family:inherit;font-size:15px}.exsel-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;border-bottom:1px solid var(--sep);flex-shrink:0;display:flex;overflow-x:auto}.exsel-tabs::-webkit-scrollbar{display:none}.exsel-tab{color:var(--text2);cursor:pointer;white-space:nowrap;-webkit-appearance:none;background:0 0;border:none;flex-shrink:0;padding:13px 16px;font-family:inherit;font-size:13.5px;font-weight:600;position:relative}.exsel-tab.active{color:var(--accent)}.exsel-tab.active:after{content:"";background:var(--accent);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:0;left:12px;right:12px}.exsel-body{flex:1;min-height:0;display:flex;overflow:hidden}.exsel-sidebar{border-right:1px solid var(--sep);background:var(--bg2);flex-shrink:0;width:34%;max-width:148px;overflow-y:auto}.exsel-side-item{text-align:left;width:100%;color:var(--text2);border:none;border-bottom:1px solid var(--sep);cursor:pointer;-webkit-appearance:none;background:0 0;padding:13px 12px;font-family:inherit;font-size:12.5px;font-weight:600;line-height:1.3;display:block}.exsel-side-item.active{color:var(--accent);background:var(--fill2);box-shadow:inset 2px 0 0 var(--accent)}.exsel-list{flex-direction:column;flex:1;gap:8px;padding:10px 14px;display:flex;overflow-y:auto}.exsel-row{text-align:left;background:var(--card);border:1px solid var(--sep);cursor:pointer;-webkit-appearance:none;-webkit-tap-highlight-color:transparent;border-radius:14px;align-items:center;gap:12px;width:100%;padding:10px 12px;font-family:inherit;transition:transform .12s,border-color .15s;display:flex}.exsel-row:active{border-color:var(--sep-s);transform:scale(.98)}.exsel-row-thumb{background:var(--card2);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.exsel-thumb-img{object-fit:cover;width:100%;height:100%}.exsel-thumb-icon{display:flex}.exsel-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.exsel-row-name{color:var(--text);font-size:14.5px;font-weight:600}.exsel-row-sub{color:var(--text2);font-size:12.5px}.exsel-empty{text-align:center;color:var(--text2);padding:40px 16px;font-size:14px}@keyframes exsel-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.exsel-list-anim{animation:.3s cubic-bezier(.32,.72,0,1) exsel-fade-in}.exsel-free-row{padding:10px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--sep);background:var(--bg2);flex-shrink:0}.exsel-free-lbl{color:var(--text2);font-size:12.5px}.exsel-free-inputs{gap:8px;margin-top:8px;display:flex}.exsel-free-inputs .ios-inp{background:var(--card2);border:1px solid var(--sep);border-radius:12px;flex:1;padding:10px 12px}.ex-detail-picker-hdr{border-bottom:1px solid var(--sep);justify-content:space-between;align-items:center;margin-bottom:4px;padding:4px 16px 10px}.ex-detail-picker-cancel{color:var(--text2);cursor:pointer;-webkit-appearance:none;background:0 0;border:none;padding:6px 2px;font-family:inherit;font-size:15px}.ex-detail-picker-title{font-size:15px;font-weight:700}.ex-detail-picker-add{background:var(--accent-dim);color:var(--accent);cursor:pointer;-webkit-appearance:none;border:none;border-radius:10px;padding:7px 14px;font-family:inherit;font-size:14px;font-weight:700}.ex-detail-picker-add:active{opacity:.7}#ex-detail-sheet.picker-mode .handle{display:none}.ex-sheet-hint{text-align:center;color:var(--text3);text-transform:uppercase;letter-spacing:.08em;margin:-6px 0 10px;font-size:12px;font-weight:600}.ex-param-hint{color:var(--text2);margin-top:2px;font-size:12px;font-weight:400}.cfm-overlay{z-index:900;opacity:0;pointer-events:none;background:#0000008c;justify-content:center;align-items:center;padding:24px;transition:opacity .2s ease-in-out;display:flex;position:fixed;inset:0}.cfm-overlay.show{opacity:1;pointer-events:auto}.cfm-box{background:var(--card);border:1px solid var(--sep);opacity:0;border-radius:18px;width:100%;max-width:320px;padding:22px 20px;transition:opacity .2s ease-in-out,transform .2s ease-in-out;transform:translateY(16px)}.cfm-overlay.show .cfm-box{opacity:1;transform:translateY(0)}.cfm-title{text-align:center;margin:0 0 6px;font-size:17px;font-weight:700}.cfm-msg{color:var(--text2);text-align:center;margin:0 0 18px;font-size:14px;line-height:1.45}.cfm-actions{gap:10px;display:flex}.cfm-btn{cursor:pointer;-webkit-appearance:none;border:none;border-radius:12px;flex:1;padding:12px;font-family:inherit;font-size:15px;font-weight:600;transition:filter .12s}.cfm-btn:active{filter:brightness(.88)}.cfm-btn-cancel{background:var(--card2);color:var(--text)}.cfm-btn-confirm{background:var(--accent);color:#000}.cfm-btn-danger{background:var(--red);color:#fff}.dd-menu{z-index:800;background:var(--card);border:1px solid var(--sep);min-width:200px;box-shadow:var(--shadow-lg);transform-origin:100% 0;opacity:0;pointer-events:none;border-radius:14px;padding:6px;transition:opacity .15s ease-in-out,transform .15s ease-in-out;position:absolute;transform:scale(.95)}.dd-menu.show{opacity:1;pointer-events:auto;transform:scale(1)}.dd-menu-item{width:100%;color:var(--text);text-align:left;cursor:pointer;-webkit-appearance:none;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:500;display:flex}.dd-menu-item:active{background:var(--fill2)}.dd-menu-sep{background:var(--sep);height:1px;margin:4px 2px}.notif-bell{color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:inline-flex;position:relative}.notif-badge{background:var(--red);color:#fff;text-align:center;min-width:16px;height:16px;box-shadow:0 0 0 2px var(--bg);border-radius:20px;padding:0 3px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:0;right:0}.notif-panel{width:320px;max-width:calc(100vw - 32px);max-height:70vh;padding:4px;overflow-y:auto}.notif-panel-hdr{justify-content:space-between;align-items:center;padding:8px 8px 10px;display:flex}.notif-panel-title{font-size:15px;font-weight:700}.notif-panel-clear{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:4px;font-family:inherit;font-size:12.5px;font-weight:600}.notif-item{border-radius:10px;gap:10px;padding:10px 8px;display:flex}.notif-item.unread{background:var(--accent-dim)}.notif-item-icon{background:var(--fill2);width:30px;height:30px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.notif-item-body{flex:1;min-width:0}.notif-item-msg{color:var(--text);font-size:13.5px;line-height:1.4}.notif-item-time{color:var(--text3);margin-top:2px;font-size:11.5px}.notif-empty{text-align:center;color:var(--text2);padding:30px 16px;font-size:13.5px}@media (prefers-reduced-motion:reduce){.cfm-overlay,.cfm-box,.dd-menu{transition:none}}.page-hdr{justify-content:space-between;align-items:center;gap:12px;padding:12px 16px 4px 20px;display:flex}.act-new-btn{background:var(--accent);color:#000;cursor:pointer;white-space:nowrap;border:none;border-radius:20px;flex-shrink:0;padding:8px 16px;font-family:inherit;font-size:14px;font-weight:700}.act-new-btn:active{filter:brightness(.88)}.rt-card-body{color:var(--text);text-decoration:none}.rt-card-edit{width:40px;color:var(--text2);flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.rt-card-edit:active{color:var(--accent)}.rh-card{background:var(--card);border:1px solid var(--sep);border-radius:16px;margin:14px 16px;padding:4px 16px}.rh-input{width:100%;color:var(--text);background:0 0;border:none;outline:none;padding:12px 0 4px;font-family:inherit;font-size:19px;font-weight:700;display:block}.rh-input::placeholder{color:var(--text3)}.rh-type-badge{border-radius:20px;margin-bottom:10px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.rh-sep{background:var(--sep);height:1px;margin:0 -16px}.rh-desc{width:100%;color:var(--text2);resize:none;background:0 0;border:none;outline:none;padding:10px 0;font-family:inherit;font-size:14px;line-height:1.4;display:block}.rh-desc::placeholder{color:var(--text3)}.routine-builder .drag-handle{display:flex}.act-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-bottom:8px;padding:0 16px;display:grid}.act-card{background:var(--card);border:1px solid var(--sep);color:var(--text);border-radius:14px;padding:12px;text-decoration:none;display:block}.act-card:active{background:var(--fill2)}.act-top{align-items:center;gap:6px;margin-bottom:4px;display:flex}.act-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.act-name{font-size:14.5px;font-weight:600;line-height:1.3}.act-meta{color:var(--text2);font-size:12px;line-height:1.4}.act-form{padding:4px 0 8px}.act-form-row{gap:10px;display:flex}.act-form-row .act-form-fg{flex:1;min-width:0}.act-form-fg{margin-bottom:12px}.act-form-fg label{color:var(--text2);margin-bottom:5px;font-size:12.5px;font-weight:500;display:block}.act-form-inp{background:var(--card2);border:1px solid var(--sep);width:100%;color:var(--text);border-radius:10px;outline:none;padding:9px 11px;font-family:inherit;font-size:14.5px;display:block}.act-form-inp:focus{border-color:var(--accent)}textarea.act-form-inp{resize:vertical}.act-form-section{color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin:18px 0 8px;font-size:11.5px;font-weight:700}.pill-group{flex-wrap:wrap;gap:8px;display:flex}.pill-item{background:var(--card2);border:1px solid var(--sep);color:var(--text2);cursor:pointer;border-radius:20px;padding:7px 14px;font-family:inherit;font-size:13px}.pill-item.sel{background:var(--accent-dim);border-color:var(--accent);color:var(--accent);font-weight:600}:root{--text2:#b8c2d6;--text3:#9aa8c0}:focus-visible{outline-offset:3px;outline:3px solid #70b9ff}button,input,select,textarea{font:inherit}button:disabled{cursor:wait;opacity:.65}.nav,.tab-bar,.apply-bar{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}.nav-inner{grid-template-columns:minmax(44px,1fr) minmax(0,auto) minmax(44px,1fr)}.nav-t{white-space:normal;text-align:center;min-width:0}.nav-btn,.cal-view-btn,.cal-add-more-btn,.wh-btn,.sheet-top button{min-width:44px;min-height:44px}.tab-item{min-height:52px}.cal-grid-head,.cal-grid-cells{grid-template-columns:repeat(7,minmax(0,1fr))}.cal-cell,.cal-cell-inner{width:100%;min-width:0}.cal-cell-inner{color:inherit;text-decoration:none}.cal-cell-title{overflow-wrap:anywhere;font-size:10px}.cal-cell-dots{flex-wrap:wrap;gap:2px}.cal-cell-noday .cal-cell-day-num{opacity:1;color:var(--text3)}.calendar-tools{flex-wrap:wrap;align-items:center;gap:8px;padding:8px 16px;display:flex}.calendar-tools button,.calendar-tools select{background:var(--card2);min-height:44px;color:var(--text);border:1px solid var(--sep);border-radius:10px;max-width:100%;padding:8px}dialog.sheet{border:1px solid var(--sep);color:var(--text);padding:0 0 max(16px, env(safe-area-inset-bottom));overscroll-behavior:contain;border-radius:22px 22px 0 0;width:min(100%,640px);max-width:100%;height:auto;max-height:min(92dvh,900px);margin:0;transition:none;display:none;inset:auto auto 0 50%;overflow-y:auto;transform:translate(-50%)}dialog.sheet[open]{display:block}dialog.sheet::backdrop{background:#000000a6}.sheet-top{justify-content:space-between;align-items:center;gap:12px;padding:8px 16px;display:flex}.sheet-top span{font-weight:600}.sheet-top button{color:var(--text);background:var(--fill2);border:0;border-radius:50%;font-size:25px}.sheet-copy,.field-error{color:var(--text2);padding:0 16px}.field-error{color:#ffb6af;overflow-wrap:anywhere;font-size:14px}.form-field,.saved-field{flex-direction:column;gap:6px;min-width:0;display:flex}.form-field>span,.saved-field>label{color:var(--text2);font-size:13px}.form-field{width:100%;padding:10px 16px}.form-field input,.form-field select,.saved-field input,.saved-field textarea{width:100%;max-width:100%;min-height:44px;color:var(--text);background:var(--fill2);border:1px solid var(--sep);border-radius:9px;padding:10px;font-size:16px}.saved-field{padding:8px 0}.saved-field textarea{resize:vertical;overflow-y:auto}.save-status{color:var(--text2);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.save-status button{min-height:44px;color:var(--accent);background:var(--fill2);border:1px solid var(--sep);border-radius:8px;padding:8px 12px}.ex-name{opacity:1!important}.ex-edit-tap{text-align:left;width:100%;color:inherit;background:0 0;border:0;min-height:44px;padding:0}.cb-hit{flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:flex}.cb-hit .cb{margin:0}.insert-row{background:0 0;border:0;width:100%;min-height:44px}.ex-del-btn{min-width:44px;min-height:44px}.order-buttons{justify-content:flex-end;gap:8px;display:flex}.order-buttons button{border:1px solid var(--sep);min-width:44px;min-height:44px;color:var(--text2);background:var(--fill2);border-radius:8px}.prog-ex-header{width:100%;color:inherit;text-align:left;background:0 0;border:0}.page-state p{margin:12px}@media (height<=500px){dialog.sheet{max-height:96dvh}}.ex-edit-tap:disabled{opacity:1;cursor:default}.weight-row .saved-field,.cal-row .saved-field,.tip .saved-field{flex:1}.hero-date-tap{color:var(--text2);font:inherit;background:0 0;border:0;min-height:44px;padding:0}.inline-field{flex-direction:column;gap:6px;width:100%;display:flex}.inline-field>span{color:var(--text2);font-size:13px}.inline-field input,.inline-field textarea{min-height:44px;font-size:16px}.ex-stepper-btn,.photo-del-btn,.pill-item,.act-new-btn,.pg-more-btn{min-width:44px;min-height:44px}.ex-detail-thumb{border:1px solid var(--sep);background:0 0;padding:0}:root{--radius-card:16px;--radius-control:10px;--space-unit:8px;--motion-control:.18s;--red:#ff867d}input,select,textarea{font-size:max(16px,1em)}button,a{touch-action:manipulation}button:disabled{cursor:default}.btn-fill,.btn-flat,.sheet-go-btn,.exsel-confirm-btn{border-radius:var(--radius-control);min-height:48px}.btn-fill,.apply-bar button,.ob-btn-next,.login-submit{color:#07101b}.nav-t,.rh-input,.ex-name,.pg-name,.rt-item-name,.sheet-copy{overflow-wrap:anywhere}.scroll{animation-duration:.22s}.page-skeleton{gap:12px;padding:16px;display:grid}.skeleton-card{border-radius:var(--radius-card);background:var(--card2);height:76px}.skeleton-card:first-child{height:110px}.page-state{min-height:140px}.app-toast{white-space:normal;overflow-wrap:anywhere;text-overflow:clip;width:max-content;max-width:min(560px,100vw - 32px);padding:12px 18px;line-height:1.45}.app-toast-success{color:#91e5cb;background:#102e2b;border-color:#3a8c77}.app-toast-error{color:#ffb6af;background:#3b2025;border-color:#af645e}.app-toast-info{color:#b8ddfc;background:#172a3d;border-color:#577795}.toast-announcement{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.media-placeholder{background:var(--card2);min-height:44px;color:var(--text2);justify-content:center;align-items:center;display:flex}.media-placeholder button{color:var(--text);border:1px solid var(--sep);background:var(--fill2);border-radius:var(--radius-control);min-height:44px;padding:8px}.upload-results{color:var(--text2);margin:12px 16px}.upload-results p{overflow-wrap:anywhere;margin:8px 0}.rt-item-edit{min-width:0;color:inherit;text-align:left;background:0 0;border:0;flex:1;align-items:center;padding:12px 0;display:flex}.install-help{color:var(--text2);padding:0 16px;line-height:1.6}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (height<=500px){.nav{position:sticky}.sheet-top{background:var(--card);z-index:1;position:sticky;top:0}}.cal-cell-title{overflow-wrap:normal;word-break:normal;white-space:nowrap;text-overflow:ellipsis;max-width:100%;display:block;overflow:hidden}:root{--motion-ease:cubic-bezier(.22,1,.36,1);--experience-surface:#1c242b}button,a{-webkit-tap-highlight-color:transparent}button,.btn-fill,.activity-card,.rt-card,.composer-exercise{transition:transform .18s var(--motion-ease),background-color .18s,opacity .18s}button:active:not(:disabled),.activity-card:active,.composer-exercise:active{transform:scale(.975)}@keyframes experience-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.activity-page-heading{padding:24px 20px 8px}.eyebrow{letter-spacing:1.8px;color:var(--accent,#42d5e6);margin-bottom:8px;font-size:10px;font-weight:700;display:block}.activity-page-heading .large-title{letter-spacing:-1.2px;padding:0;font-size:34px;line-height:1.1}.activity-page-heading p{color:var(--text2);margin:12px 0 0;font-size:13px}.activity-page-heading+.large-sub{display:none}.calendar-tools{margin:12px 16px}.calendar-tools label{flex:1;min-width:0}.calendar-tools select{width:100%;max-width:100%;font-size:13px}.cal-view-toggle{background:#171f26;border-radius:13px;gap:4px;margin:16px;padding:4px}.cal-view-btn{flex:1;justify-content:center;font-size:12px;transition:background .22s,color .22s;border-radius:10px!important;min-height:42px!important}.cal-view-btn.active{color:#effcff;background:#30404b;box-shadow:0 2px 8px #0002}.feed-controls{align-items:center;gap:12px;margin:20px 16px 12px;display:flex}.feed-controls label{color:var(--text2);flex-direction:column;flex:1;gap:5px;min-width:0;font-size:10px;display:flex}.feed-controls select{appearance:none;color:var(--text);font:inherit;background:0 0;border:0;max-width:100%;min-height:34px;font-size:14px;font-weight:600}.feed-controls>button{color:#74e7f1;background:#42d5e612;border:1px solid #42d5e650;border-radius:12px;align-items:center;gap:4px;min-height:44px;padding:0 12px;font-size:12px;font-weight:600;display:flex}.activity-feed{gap:12px;padding:0 16px 110px;display:grid}.activity-card{min-height:190px;color:var(--text);animation:activity-arrive .42s var(--motion-ease) both;background:linear-gradient(125deg,#222c34,#1c242b);border:1px solid #ffffff08;border-radius:22px;text-decoration:none;display:flex;position:relative;overflow:hidden}.activity-card-content{z-index:1;flex:1;min-width:0;padding:20px 0 18px 18px}.activity-card-kind{letter-spacing:1.5px;color:#71dae7;align-items:center;gap:7px;margin-bottom:9px;font-size:9px;font-weight:700;display:flex}.sport-run .activity-card-kind{color:#e7bc50}.sport-rest .activity-card-kind{color:#94a4b0}.activity-card-value{letter-spacing:-1px;white-space:nowrap;font-size:35px;font-weight:750;line-height:1.1}.activity-card-value span{letter-spacing:0;margin-left:6px;font-size:16px;font-weight:500}.sport-rest .activity-card-value{font-size:25px}.activity-card-metrics{color:#a9b5bd;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:8px;margin-top:9px;font-size:11px;display:flex}.activity-card-title{white-space:nowrap;text-overflow:ellipsis;margin-top:16px;font-size:13px;font-weight:600;overflow:hidden}.activity-card-date{color:#8d9da9;flex-wrap:wrap;align-items:center;gap:7px;margin-top:7px;font-size:10px;display:flex}.activity-state{border:1px solid #8c9eab40;border-radius:5px;padding:3px 5px;font-size:8px}.activity-state.recorded{color:#77e1ba;border-color:#77e1ba30}.activity-card-art{flex-direction:column;flex:0 0 120px;justify-content:center;align-items:center;padding:12px 10px 10px 4px;display:flex}.body-map{width:210px;max-width:100%;height:auto;display:block}.muscle-basis{letter-spacing:.2px;color:#8294a2;white-space:nowrap;margin:5px 0 0;font-size:7px}.running-summary{color:#e7bc50;background:radial-gradient(#e7bc5012,#0000 70%);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:150px;display:flex;position:relative}.running-summary>svg{width:39px;height:39px;margin-bottom:14px}.running-summary strong{font-variant-numeric:tabular-nums;font-size:25px}.running-summary small{margin-left:3px;font-size:9px;font-weight:400}.running-summary>span{color:#a49365;margin-top:6px;font-size:8px}.sport-rest .activity-card-art>svg{color:#667987;width:40px;height:40px}.feed-empty{border:1px dashed #4b6477;border-radius:22px;padding:30px 22px}.feed-empty h2{letter-spacing:-.5px;font-size:23px}.feed-empty p{color:var(--text2);font-size:14px;line-height:1.6}.feed-empty a{color:#78e2ee;justify-content:space-between;padding:12px 0;font-size:14px;display:flex}@keyframes activity-arrive{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:none}}.exercise-visual{background:#f5f5f5;border-radius:14px;flex:none;justify-content:center;align-items:center;width:100px;height:112px;display:flex;overflow:hidden}.exercise-visual img{object-fit:contain;width:100%;height:100%}.exercise-visual:has(.body-map){background:#222e37}.exercise-visual .body-map{width:88px;height:108px}.exercise-visual.full{border-radius:16px;width:100%;height:300px}.exercise-visual.full .body-map{width:210px;height:260px}.exercise-image-button{background:0 0;border:0;border-radius:14px;align-self:center;margin:14px 0 14px 14px;padding:0}.day-ex-card{background:var(--experience-surface);border:1px solid #ffffff08;border-radius:20px;align-items:center;margin-top:12px;display:flex;position:relative;overflow:hidden}.day-ex-bar{width:3px}.day-ex-main{flex:1;align-items:flex-start;min-width:0;padding:14px 12px 14px 8px;display:flex}.day-ex-main .cb-hit{flex:0 0 30px;margin-left:0;padding-right:0}.day-ex-body{min-width:0}.day-ex-main .ex-name{font-size:14px!important;font-weight:650!important}.day-ex-main .ex-meta{margin-top:6px;font-size:11px;line-height:1.7}.day-ex-main .weight-row{flex-wrap:wrap;gap:3px;margin-top:10px}.weight-row .saved-field{flex:1;min-width:0}.weight-row .saved-field label,.weight-row .inline-field>span{font-size:9px}.weight-row input{width:100%;max-width:100%;font-size:13px}.ex-edit-tap{text-align:left;white-space:normal;width:100%;min-width:0;display:block}.exercise-completed{border-color:#57d4ba40}.exercise-completed .cb{animation:complete-pop .28s var(--motion-ease)}@keyframes complete-pop{50%{transform:scale(1.18)}}.prog-fill,.cal-list-prog-fill{transition:width .5s var(--motion-ease)}.exercise-info{padding:4px 20px 24px}.exercise-info h2{letter-spacing:-.4px;margin-top:22px;font-size:23px}.exercise-info h3{color:#d6e5eb;margin-top:24px;font-size:14px}.exercise-info>p{color:var(--text2);font-size:13px;line-height:1.7}.exercise-info>.body-map{width:220px;margin:22px auto 8px}.exercise-instructions{white-space:pre-wrap}.muscle-legend{color:var(--text2);justify-content:center;gap:20px;font-size:10px;display:flex}.muscle-legend span:before{content:"";background:#ff656c;border-radius:3px;width:7px;height:7px;margin-right:6px;display:inline-block}.muscle-legend .secondary:before{background:#e8b54e}.composer-sheet{max-height:94dvh!important}.composer-tabs,.routine-owner-tabs{gap:6px;margin:8px 16px 20px;display:flex}.composer-tabs button,.routine-owner-tabs button{color:#9eb0bc;background:#18232b;border:1px solid #ffffff0d;border-radius:12px;flex:1;min-height:44px;padding:8px;font-size:12px}.composer-tabs button[aria-pressed=true],.routine-owner-tabs button[aria-pressed=true]{color:#81e6f0;background:#42d5e618;border-color:#42d5e655}.composer-search{color:var(--text2);margin:0 16px 16px;font-size:11px;display:block}.composer-search input{box-sizing:border-box;width:100%;min-height:46px;color:var(--text);background:#18232b;border:1px solid #ffffff12;border-radius:12px;margin-top:7px;padding:10px 12px;font-size:14px}.composer-filters{gap:10px;margin:0 16px 20px;display:flex}.composer-filters label{min-width:0;color:var(--text2);flex:1;font-size:11px}.composer-filters select{color:#e0edf3;background:#26343e;border:0;border-radius:10px;width:100%;min-height:42px;margin-top:6px;padding:7px;font-size:12px;display:block}.composer-catalog{gap:10px;padding:0 16px 24px;display:grid}.composer-exercise{text-align:left;width:100%;color:var(--text);background:#202c35;border:1px solid #ffffff0a;border-radius:18px;align-items:center;gap:16px;padding:12px;display:flex}.composer-exercise .exercise-visual{width:96px;height:102px}.composer-exercise>span:last-child{min-width:0}.composer-exercise strong{font-size:14px;line-height:1.5;display:block}.composer-exercise small{color:#8eabb9;margin-top:5px;font-size:11px;line-height:1.5;display:block}.composer-exercise em{color:#71e0ef;margin-top:14px;font-size:10px;font-style:normal;display:block}.composer-form{padding:0 20px 24px}.composer-form>label,.composer-two>label{color:#adc0cd;flex-direction:column;gap:7px;margin-bottom:18px;font-size:12px;line-height:1.5;display:flex}.composer-form input,.composer-form select,.composer-form textarea{box-sizing:border-box;color:#edf7fb;width:100%;min-width:0;min-height:46px;font:inherit;background:#19252d;border:1px solid #ffffff15;border-radius:12px;padding:10px 12px;font-size:14px}.composer-form input:disabled{opacity:.4}.composer-two{grid-template-columns:1fr 1fr;gap:12px;display:grid}.composer-selected{align-items:center;gap:16px;margin:0 0 24px;display:flex}.composer-selected h2{margin:5px 0;font-size:19px;line-height:1.4}.composer-selected p{color:var(--text2);font-size:12px}.composer-form .btn-fill{border-radius:14px;width:100%;min-height:50px;margin:16px 0 0!important}.form-error{color:#ff9d9d;font-size:12px;line-height:1.6}.muscle-editor{border:1px solid #ffffff0e;border-radius:16px;margin-bottom:18px;padding:16px}.muscle-editor>.body-map{width:155px;margin:0 auto 18px}.muscle-editor fieldset{border:0;margin:14px 0;padding:0}.muscle-editor legend{color:#c9dbe4;margin-bottom:12px;font-size:12px}.muscle-chips{flex-wrap:wrap;gap:7px;display:flex}.muscle-chips button{color:#b4c6d1;background:#28353e;border:1px solid #51616c80;border-radius:8px;min-height:36px;padding:7px 9px;font-size:10px}.muscle-chips button[aria-pressed=true]{color:#ffadb2;background:#ff656c20;border-color:#ff656c90}.muscle-editor fieldset+fieldset button[aria-pressed=true]{color:#f0cc7d;background:#e8b54e20;border-color:#e8b54e90}.workout-metrics-panel{background:#1d2932;border:1px solid #ffffff09;border-radius:20px;margin:24px 16px;padding:20px}.workout-metrics-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.workout-metrics-heading h2{margin:0;font-size:16px}.workout-metrics-heading button{color:#7de1ec;background:#42d5e618;border:1px solid #42d5e635;border-radius:10px;min-height:42px;padding:0 10px;font-size:11px}.workout-metric-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:24px;display:grid}.workout-metric-grid strong{letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:25px;font-weight:650;display:block}.workout-metric-grid span{color:#8fa7b6;margin-top:7px;font-size:10px;display:block}.workout-metrics-panel>p,.muted-copy{color:var(--text2);font-size:12px;line-height:1.7}.save-workout-routine{padding:0 20px 12px}.save-workout-routine button{text-align:left;color:#84e4ee;background:0 0;border:0;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:0;font-size:13px;display:flex}.save-workout-routine p{color:var(--text2);margin:4px 0;font-size:11px;line-height:1.7}.routine-ownership{letter-spacing:1.4px;color:#81d7e3;margin-bottom:8px;font-size:8px;display:block}.rt-item{align-items:center;gap:12px;padding:12px;border-radius:18px!important}.rt-item .exercise-visual{width:82px;height:94px}.rt-item-edit{align-items:center;gap:12px;min-width:0;display:flex!important}.rt-item-body{min-width:0}.rt-item-name{font-size:14px;line-height:1.5}.rt-item-sub{font-size:11px;line-height:1.6}.rt-hero .eyebrow{padding:0 20px}.personal-copy-row{margin:12px 16px 90px}.tab .tab-lbl{transition:color .2s}.tab.active svg{animation:tab-settle .24s var(--motion-ease)}@keyframes tab-settle{0%{transform:translateY(4px)scale(.9)}to{transform:none}}@media (width<=360px){.activity-card-art{flex-basis:98px;padding-right:6px}.activity-card-art .body-map{width:98px}.activity-card-content{padding-left:14px}.activity-card-value{font-size:31px}.activity-card-value span{font-size:14px}.exercise-visual{width:80px;height:106px}.exercise-image-button{margin-left:10px}.day-ex-main{padding-left:4px}.day-ex-main .cb-hit{flex-basis:24px}.day-ex-main .ex-name{font-size:12px!important}.day-ex-main .ex-meta{font-size:10px}.activity-page-heading .large-title{font-size:31px}.rt-item .exercise-visual{width:64px;height:84px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.muscle-incomplete{color:#aeb2a0;margin-top:4px;font-size:7px}.activity-card-art{flex-basis:128px}.activity-card-art .body-map{width:128px;height:150px}.cal-fab-lib{border-radius:14px!important;width:44px!important;min-width:44px!important;height:44px!important;bottom:90px!important;right:18px!important;box-shadow:0 3px 12px #0004!important}.cal-fab-lib span{display:none!important}.cal-fab-lib svg{width:22px!important;height:22px!important}.tab-item.active svg{animation:tab-settle .25s var(--motion-ease)}dialog.sheet{box-sizing:border-box;margin:0 auto;left:0;right:0;translate:none}.nav-month-picker{appearance:none;color:var(--text);font:inherit;text-align:center;background:0 0;border:0;max-width:100%;min-height:44px;padding:6px 2px}.nav-month-picker option{color:#e3f2fa;background:#1c242b}.scroll:has(.activity-feed){max-width:1040px;margin-left:auto;margin-right:auto}:is(.scroll:has(.day-hero),.scroll:has(.routine-builder),.scroll:has(.rt-hero)){max-width:760px;margin-left:auto;margin-right:auto}.scroll:has(.routine-owner-tabs){max-width:1040px;margin-left:auto;margin-right:auto}@media (width>=720px){.activity-feed{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-card{min-height:215px}.activity-page-heading{padding-top:30px}.activity-page-heading .large-title{font-size:42px}.composer-form{padding-bottom:30px}}.scroll{min-width:0;max-width:760px;margin-left:auto;margin-right:auto}.scroll:has(.act-grid){max-width:1040px}.nav-l,.nav-r,.nav-t{min-width:0}.nav-t{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-height:42px;line-height:1.2;display:-webkit-box;overflow:hidden}.nav-btn>svg{flex:none}.sheet-top>span{overflow-wrap:anywhere;min-width:0}.sheet-top>button{flex:0 0 44px;width:44px;height:44px}.ios-inp,.login-inp{min-width:0}.page-hdr .large-title{min-width:0;margin:0;line-height:1.2}.page-hdr{padding-top:22px;padding-bottom:8px}.filter-tab,.month-tab{justify-content:center;align-items:center;min-height:44px;display:inline-flex}.filter-tabs,.month-tabs{overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#00c8d74d transparent;min-width:0;max-width:100%}.filter-tabs::-webkit-scrollbar{height:3px;display:block}.month-tabs::-webkit-scrollbar{height:3px;display:block}.filter-tabs::-webkit-scrollbar-thumb{background:#00c8d74d;border-radius:3px}.month-tabs::-webkit-scrollbar-thumb{background:#00c8d74d;border-radius:3px}.rt-card-edit{width:44px;min-height:44px}.rt-card-name,.rt-card-meta,.rt-hero-name,.rt-item-name,.rt-item-sub{overflow-wrap:anywhere}.act-card,.act-top,.act-name,.act-meta{min-width:0}.act-name,.act-meta{overflow-wrap:anywhere}.act-form-inp{min-width:0;max-width:100%}.routine-builder .rt-item{grid-template-columns:5px 28px minmax(0,1fr);gap:8px 10px;display:grid}.routine-builder .rt-item-bar{grid-area:1/1/span 2;align-self:stretch}.routine-builder .drag-handle{grid-area:1/2/span 2;align-self:stretch}.routine-builder .rt-item-edit{grid-area:1/3;min-width:0;padding:0}.routine-builder .rt-item-edit .rt-item-body,.routine-builder .rt-item-edit .rt-item-chev{padding:0}.routine-builder .order-buttons{grid-area:2/3;justify-content:flex-end}.apply-bar{padding-top:12px;padding-bottom:max(16px, env(safe-area-inset-bottom));bottom:0}.apply-bar button{background:var(--accent);color:#07101b;width:min(100%,360px);min-height:52px;box-shadow:0 4px 20px var(--accent-glow);border-radius:14px;padding:14px 24px}.personal-copy-row{width:calc(100% - 32px);max-width:728px;margin:12px auto calc(108px + env(safe-area-inset-bottom))}.personal-copy-row .btn-flat{width:100%;margin:0}.scroll:has(.rt-hero):has(+.personal-copy-row){padding-bottom:12px!important}.st-kpis,.workout-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.st-kpi,.workout-metric-grid>div,.st-chart-col{min-width:0}.st-kpi-lbl,.workout-metric-grid span{overflow-wrap:anywhere}.workout-metric-grid strong{font-size:clamp(20px,5.6vw,25px)}.photos-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-left:16px;margin-right:16px}.photo-thumb,.photo-upload-btn{min-width:0}.photo-del-btn{justify-content:center;align-items:center;display:flex}@media (width<=360px){.page-hdr .large-title{font-size:28px}.st-hero{flex-direction:column;gap:16px}.st-kpis{width:100%}.workout-metrics-heading{gap:8px}.workout-metrics-heading>div{min-width:0}.workout-metrics-heading h2{font-size:15px}.workout-metrics-heading>button{flex:none}}@media (width<=430px){.nav-l>.nav-btn:has(svg){gap:0;font-size:0}}h1.nav-t,h1.rt-hero-name{margin:0}.activity-muscle-key{max-width:760px;color:var(--text2);flex-wrap:wrap;gap:10px 16px;margin:8px auto 14px;padding:0 18px;font-size:11px;display:flex}.activity-muscle-key span:before{content:"";background:#ff656c;border-radius:3px;width:8px;height:8px;margin-right:6px;display:inline-block}.activity-muscle-key .secondary:before{background:#e8b54e}.pending-fields{border:0;min-width:0;margin:0;padding:0}.save-status{color:var(--text2);text-align:center;font-size:12px}.running-icon{object-fit:contain;flex-shrink:0;width:39px;height:39px;display:inline-block}.running-summary>.running-icon{margin-bottom:14px}.running-panel-icon{float:right;width:30px;height:30px;margin:0 8px 0 12px}.scroll{animation:.18s ease-out interface-enter}.activity-card{animation:none}@keyframes interface-enter{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.scroll{animation:none}}.ex-param-row .inline-field>span{display:none}.ex-param-row{gap:12px}.ex-param-row>div:first-child{flex:1;min-width:0}.ex-param-row>.inline-field{flex:0 114px;min-width:0}.ex-param-row .ex-param-inp{width:100%;min-width:0;max-width:100%;box-shadow:none;background:#ffffff05;border-radius:8px;padding:8px}.ex-param-select{min-width:0;max-width:55%;min-height:44px}.ex-param-label,.ex-param-hint{overflow-wrap:normal}@media (width<=360px){.ex-param-label,.ex-param-select{font-size:14px}.ex-param-hint{font-size:11px}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0}
