:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);color-scheme:dark;--bg: #0b0b0c;--bg-gradient: radial-gradient(circle at 50% 0%, #1e1b2e 0%, #0b0b0c 100%);--text: #f8fafc;--muted: #94a3b8;--surface: #131316;--surface-2: #1c1c21;--surface-3: #2a2a30;--surface-glass: rgba(19, 19, 22, .75);--border: rgba(255, 255, 255, .06);--border-2: rgba(255, 255, 255, .12);--accent: #2dd4bf;--accent-gradient: linear-gradient(135deg, #2dd4bf 0%, #0d9488 100%);--accent-hover: #5eead4;--accent-soft: rgba(45, 212, 191, .15);--on-accent: #0f172a;--danger: #fb7185;--danger-hover: #fda4af;--danger-soft: rgba(251, 113, 133, .15);color:var(--text);background:var(--bg);background-image:var(--bg-gradient);background-attachment:fixed;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-weight:500;letter-spacing:-.02em;color:var(--text);margin-top:0}button{font-family:inherit}@media(max-width:1px){:root{color-scheme:light;--bg: #f8fafc;--bg-gradient: radial-gradient(circle at 50% 0%, #f1f5f9 0%, #f8fafc 70%);--text: #0f172a;--muted: #64748b;--surface: #ffffff;--surface-2: #f1f5f9;--surface-3: #e2e8f0;--surface-glass: rgba(255, 255, 255, .85);--border: #e2e8f0;--border-2: #cbd5e1;--accent: #0d9488;--accent-gradient: linear-gradient(135deg, #0d9488 0%, #115e59 100%);--accent-hover: #115e59;--accent-soft: rgba(13, 148, 136, .1);--on-accent: #ffffff;--danger: #e11d48;--danger-hover: #be123c;--danger-soft: rgba(225, 29, 72, .1)}}body{margin:0;width:100%;min-width:320px;min-height:100vh;color:var(--text);transition:color .2s;overflow-x:hidden}button{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:pointer}button:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:var(--accent);text-decoration:none;font-weight:500}a:hover{text-decoration:underline}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:99px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app{max-width:1200px;margin:0 auto;padding:32px 24px;animation:fadeIn .5s ease-out;width:100%}.app--wide{max-width:100%;width:100%;padding:32px 48px}.content{display:grid;gap:24px;grid-template-columns:100%;min-width:0}.content>*{min-width:0;max-width:100%}.heroSection{position:relative;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:0;margin-bottom:48px;background:radial-gradient(circle at 70% 50%,#2a1b3d,#0f0f12 70%);border:1px solid rgba(255,255,255,.05);border-radius:32px;overflow:hidden;transform:translateZ(0);box-shadow:0 24px 64px #0006;min-height:500px}.heroContent{padding:100px 64px 64px;z-index:2;position:relative;max-width:650px}.heroCanvasWrapper{position:absolute;top:0;right:-5%;width:60%;height:100%;z-index:1;pointer-events:none;pointer-events:auto}.heroCanvasFadeTop,.heroCanvasFadeBottom,.heroCanvasFadeLeft{display:none}.heroBadge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffff14;color:#fff;font-size:13px;font-weight:500;border-radius:999px;margin-bottom:32px;border:1px solid rgba(255,255,255,.1)}.heroBadgeDot{width:8px;height:8px;border-radius:50%;background:#2dd4bf;box-shadow:0 0 8px #2dd4bf99}.heroLogo{position:absolute;top:32px;left:32px;display:block;height:48px;width:auto;z-index:20}@media(max-width:800px){.heroLogo{top:24px;left:24px}}.heroTitle{font-size:clamp(40px,5vw,64px);line-height:1.1;font-weight:500;margin:0 0 24px;letter-spacing:-.02em;color:#fff}.textGradient{color:#ffffffe6;font-weight:400}.heroSubtitle{font-size:1.125rem;line-height:1.6;color:#ffffffb3;max-width:480px;margin:0 0 40px}.heroActions{display:flex;gap:16px}.bigButton{height:56px;padding:0 32px;font-size:1rem;border-radius:12px;font-weight:600;display:flex;align-items:center}.heroContent .button.primary{background:#fff;color:#000;border:none}.heroContent .button.primary:hover{background:#f0f0f0;transform:translateY(-2px)}.heroContent .button.secondary{background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff}.heroContent .button.secondary:hover{border-color:#fff;background:#ffffff0d}.dashboardGrid{display:grid;grid-template-columns:2fr 1.2fr;gap:24px;align-items:start}.glassPanel{background:var(--surface-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow)}.panelHeaderPlain{padding:20px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.panelTitlePlain{margin:0;font-size:1.25rem;font-weight:700}.routineGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.summaryCard{background:var(--surface-2);border-radius:18px;border:1px solid transparent;overflow:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.summaryCard:hover{transform:translateY(-2px);border-color:var(--accent-hover);box-shadow:var(--shadow-lg)}.summaryCardInner{padding:20px;flex:1;display:flex;align-items:center;gap:16px;cursor:pointer}.summaryIcon{width:48px;height:48px;border-radius:14px;background:var(--bg);display:flex;align-items:center;justify-content:center;font-size:24px;border:1px solid var(--border)}.summaryContent{flex:1;min-width:0}.summaryContent .routineName{font-size:1.1rem;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summaryArrow{width:32px;height:32px;border-radius:50%;background:var(--surface);display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:700}.summaryIcon svg,.activityIcon svg,.runExpandButton svg{display:block}.summaryFooter{border-top:1px solid var(--border);display:flex;padding:8px;gap:8px;background:#0000001a}.textButton{flex:1;padding:8px;font-size:.85rem;font-weight:600;color:var(--muted);border-radius:8px;transition:.1s}.textButton:hover{background:#ffffff0d;color:var(--text)}.dangerText:hover{color:var(--danger);background:var(--danger-soft)}.scrollableBody{max-height:400px;overflow-y:auto}.activityList{display:grid;gap:12px}.activityItem{display:flex;align-items:center;gap:16px;padding:12px;border-radius:14px;background:var(--bg);border:1px solid var(--border);cursor:pointer;transition:.2s}.activityItem:hover{border-color:var(--border-2);transform:translate(2px)}.activityIcon{width:32px;height:32px;border-radius:50%;background:var(--accent-soft);color:var(--accent-hover);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.activityInfo{flex:1}.activityName{font-weight:600;font-size:.95rem}.activityDate{font-size:.8rem;color:var(--muted)}.emptyMini{font-size:.9rem;color:var(--muted);text-align:center;padding:20px;font-style:italic}@media(max-width:800px){.heroSection{grid-template-columns:1fr;text-align:center;gap:0}.heroContent{padding:32px 24px;position:relative;z-index:2}.heroActions{justify-content:center}.heroCanvasWrapper{width:100%;position:relative;right:auto;top:auto;height:650px;order:-1;margin-bottom:-280px;z-index:1}.dashboardGrid{grid-template-columns:1fr}}.panel{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm);transition:transform .2s,box-shadow .2s}.panel:hover{box-shadow:var(--shadow-lg);border-color:var(--border-2)}.panel>.panelTitle{padding:16px 20px;border-bottom:1px solid var(--border);background:linear-gradient(to right,var(--surface),var(--surface-2))}.runPanel{overflow:visible;max-width:100vw}.panelTitleRow{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--border)}.panelTitle{font-weight:700;font-size:1.1rem;letter-spacing:-.015em;color:var(--text)}.panelBody{padding:20px}.subtitle2{margin-top:6px;color:var(--muted);font-size:14px}.headerRow{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.headerRight{flex:0 0 auto}.headerActions{margin-top:20px}.headerCube{width:100%;height:100%;border:none;border-radius:0;overflow:visible;background:transparent}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1px solid transparent;padding:10px 16px;font-size:14px;font-weight:600;background:var(--surface-2);color:var(--text);cursor:pointer;transition:all .2s ease;line-height:1}.button:hover{background:var(--surface-3);transform:translateY(-1px)}.button:active{transform:translateY(0)}.button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.button.secondary{background:transparent;border:1px solid var(--border);color:var(--muted)}.button.secondary:hover{background:var(--surface-2);color:var(--text);border-color:var(--border-2)}.button.primary{background:var(--accent-gradient);color:#fff;border:1px solid transparent;box-shadow:0 2px 4px #0003;text-shadow:0 1px 2px rgba(0,0,0,.1)}.button.primary:hover{filter:brightness(1.1);box-shadow:0 4px 12px #2dd4bf4d;transform:translateY(-1px)}.button.danger{background:var(--surface);color:var(--danger);border:1px solid var(--danger-soft)}.button.danger:hover{background:var(--danger-soft);border-color:var(--danger)}.button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.field{display:block;margin-bottom:16px}.fieldLabel{font-size:.9rem;font-weight:600;margin-bottom:8px;color:var(--text)}.hint{font-size:.85rem;color:var(--muted);line-height:1.4}.input{box-sizing:border-box;width:100%;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:1rem;transition:all .2s ease}.input:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 3px var(--accent-soft)}.divider{height:1px;background:var(--border);margin:24px 0}.routineCard,.completionRow{position:relative;background:linear-gradient(180deg,var(--surface-2) 0%,var(--surface) 100%);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px;transition:all .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.routineCard:hover,.completionRowButton:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 10px 25px -5px #0000004d,0 0 0 1px var(--accent-soft);border-color:var(--accent-hover)}.routineCard:active{transform:scale(.98)}.rowBetween{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.rowGap{display:flex;align-items:center;gap:12px;padding:2px}.footerRow{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border)}.exerciseList{margin-top:16px;display:grid;gap:12px}.createPanel .exerciseList{gap:20px}.exerciseActions{margin-top:14px;display:flex;justify-content:flex-end}.exerciseRow{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.exerciseDragHandle{cursor:grab;-webkit-user-select:none;user-select:none}.exerciseRowDragOver{background:var(--surface-2)}@media(max-width:1px){.exerciseRowDragOver{background:#00000008}}.exerciseRowActions{display:grid;gap:8px;align-content:start}.createPanel .panelBody{padding:16px}.createPanel .fieldLabel{font-size:13px;letter-spacing:.01em}.createPanel .hint{font-size:13px;color:var(--muted)}.createPanel .panelTitleRow{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%),var(--surface)}.createPanel .divider{margin:16px 0}.createPanel .input{background:var(--surface-2);transition:background .16s ease,border-color .16s ease}.createPanel .input:hover{background:var(--surface-3);border-color:var(--border-2)}.createPanel .input:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-2))}.createPanel .exerciseRow{border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--surface);transition:background .16s ease,border-color .16s ease,transform .12s ease}.createPanel .exerciseRow:hover{background:var(--surface-2);border-color:var(--border-2)}.createPanel .exerciseRow:focus-within{border-color:color-mix(in srgb,var(--accent) 45%,var(--border-2));background:color-mix(in srgb,var(--accent) 8%,var(--surface-2))}.createPanel .exerciseIndex{width:30px;height:30px;background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,var(--border));color:color-mix(in srgb,var(--accent) 70%,var(--text));font-weight:800}.createPanel .iconButton{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--border);border-radius:12px;padding:0;background:var(--surface-2);transition:background .14s ease,border-color .14s ease,transform .12s ease}.createPanel .iconButton:hover{background:var(--surface-3);border-color:var(--border-2)}.createPanel .iconButton:active{transform:translateY(1px)}.createPanel .iconButton:focus-visible{outline:4px auto -webkit-focus-ring-color;outline-offset:2px}.createPanel .iconButton:disabled{opacity:.45}.createPanel .iconButton svg{display:block}.createPanel .iconButtonDanger{background:var(--danger-soft);border-color:color-mix(in srgb,var(--danger) 45%,var(--border))}.createPanel .iconButtonDanger:hover{background:color-mix(in srgb,var(--danger) 14%,var(--surface-3));border-color:color-mix(in srgb,var(--danger) 65%,var(--border-2))}.exerciseIndex{width:26px;height:26px;border-radius:999px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);opacity:.8;font-size:12px}.exerciseFields{display:grid;gap:8px;min-width:0}.exerciseMetaRow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;min-width:0}.exerciseTimeRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}.exerciseImagePreview{width:100%;max-width:420px;margin-top:8px;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--surface)}.exerciseImagePreviewImg{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover}.exerciseImagePreviewFallback{padding:10px 12px;font-size:12px;color:var(--muted);border:1px solid var(--border);border-radius:12px}.metaField{display:grid;gap:6px;min-width:0}.metaLabel{font-size:12px;color:var(--muted);font-weight:650}.metaInput{min-width:0;padding:9px 10px}.createPanel .footerRow{margin-top:18px;padding-top:12px;border-top:1px solid var(--border)}.iconButton{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:transparent;color:inherit;cursor:pointer;font-size:20px;line-height:1}.iconButton:hover{background:var(--surface-2)}.error{margin-top:12px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-2)}.routineList{display:grid;gap:16px}.routineCard{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;min-height:80px}.routineName{font-weight:700}.routineActions{display:flex;gap:10px;padding:2px}.completionList{display:grid;gap:10px}.completionRowButton{cursor:pointer}.completionRowButton:focus-visible{outline:4px auto -webkit-focus-ring-color;outline-offset:4px}.completionBullet{width:10px;height:10px;border-radius:999px;background:color-mix(in srgb,var(--text) 28%,transparent);flex:0 0 auto}.completionName{font-weight:700}.empty{color:var(--muted);padding:32px;border-radius:var(--radius-md);background:var(--surface-2);border:1px dashed var(--border);text-align:center;font-size:.95rem}.scenarioGrid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.scenarioCard{border:1px solid var(--border);border-radius:18px;background:var(--surface-2);overflow:hidden;transition:all .2s ease}.scenarioCard[open]{background:var(--surface);box-shadow:var(--shadow-lg);border-color:var(--accent-hover);grid-row:span 2}.scenarioSummary{list-style:none;cursor:pointer;padding:16px 20px;font-weight:700;display:flex;align-items:center;justify-content:space-between;transition:background .1s}.scenarioSummary:hover{background:#ffffff08}.scenarioSummary::-webkit-details-marker{display:none}.scenarioTitle{font-size:1rem}.scenarioIcon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg);color:var(--muted);font-size:14px;transition:transform .2s;border:1px solid var(--border)}.scenarioCard[open] .scenarioIcon{transform:rotate(180deg);background:var(--accent-soft);color:var(--accent-hover);border-color:transparent}.scenarioContent{border-top:1px solid var(--border);background:var(--bg);padding:4px}.scenarioGif{width:100%;height:auto;display:block;border-radius:12px;border:1px solid var(--border)}.scenarioGifCursor{position:fixed;top:0;left:0;width:18px;height:18px;border-radius:999px;border:2px solid color-mix(in srgb,var(--text) 65%,transparent);background:color-mix(in srgb,var(--accent) 20%,transparent);box-shadow:0 10px 18px #00000059;pointer-events:none;z-index:9999;transform:translate3d(12px,12px,0)}.exerciseRunList{margin-top:12px;display:grid;gap:8px}.runStatus{border:1px solid var(--border);border-radius:14px;padding:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 10%,transparent),transparent 72%),var(--surface)}.runSticky{position:sticky;top:32px;z-index:90;background:var(--surface-glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);width:100%;align-self:flex-start;border-radius:14px 14px 0 0;margin-bottom:-1px}.runStickyRight{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:0 0 auto}.runStatusRow{align-items:center}.runStatusTitle{font-weight:700;margin-bottom:4px;font-size:16px;letter-spacing:-.005em}.runNextName{font-weight:720;color:color-mix(in srgb,var(--accent) 70%,var(--text))}.runGauge{position:relative;width:52px;height:52px;flex:0 0 auto}.runGaugeSvg{display:block;width:52px;height:52px}.runGaugeTrack{stroke:color-mix(in srgb,var(--text) 18%,transparent)}.runGaugeValue{stroke:var(--accent);transform:rotate(-90deg);transform-origin:50% 50%;stroke-linecap:round;transition:stroke-dashoffset .5s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 0 4px var(--accent-soft))}.runGaugeCenter{position:absolute;inset:0;display:grid;place-content:center;text-align:center;pointer-events:none}.runGaugePrimary{font-weight:800;font-size:12px;line-height:1.1}.runGaugeSecondary{margin-top:1px;font-weight:650;font-size:11px;color:var(--muted);line-height:1.1}.runDots{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.runDot{width:10px;height:10px;border-radius:999px;border:1px solid var(--border);opacity:.8}.runDotDone{background:color-mix(in srgb,var(--accent) 40%,var(--text));border-color:color-mix(in srgb,var(--accent) 60%,var(--border));opacity:1}.runDotNext{opacity:1;transform:scale(1.1);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 62%,var(--border-2))}@media(max-width:1px){.runDot{border-color:#00000038;opacity:.85}.runDotDone{background:color-mix(in srgb,var(--accent) 40%,var(--text));border-color:color-mix(in srgb,var(--accent) 65%,rgba(0,0,0,.22));opacity:1}.runDotNext{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 70%,rgba(0,0,0,.28))}}.runRow{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--surface);transition:transform .16s ease,background .16s ease,border-color .16s ease}.runRow:hover{background:var(--surface-2);border-color:var(--border-2)}.runRowMinimized{padding:10px 12px}.runRowHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;cursor:pointer}.runRowHeader:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:3px;border-radius:12px}.runRowHeaderLeft{display:flex;align-items:center;gap:10px;min-width:0}.runRowHeaderRight{display:flex;align-items:center;gap:10px;flex:0 1 auto;min-width:0;justify-content:flex-end}.runMiniMeta{font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.runMiniThumb{width:34px;height:34px;border-radius:10px;object-fit:cover;border:1px solid var(--border)}.runExpandButton{width:36px;height:36px;display:grid;place-items:center;border-radius:999px;padding:0;border:1px solid var(--border);background:var(--surface-2);color:inherit;font-weight:900;font-size:16px;line-height:1;cursor:pointer;transition:transform .14s ease,background .14s ease,border-color .14s ease}.runExpandButton:hover{background:var(--surface-3);border-color:var(--border-2)}.runExpandButton:active{transform:translateY(1px) scale(.98)}.runExpandButton:focus-visible{outline:4px auto -webkit-focus-ring-color;outline-offset:2px}.runRowDone{opacity:.65}.runRowJustDone{opacity:1;background:color-mix(in srgb,var(--accent) 10%,var(--surface-2));border-color:color-mix(in srgb,var(--accent) 30%,var(--border-2));animation:run-pop .42s ease}.runRowTop{display:flex;gap:14px;align-items:flex-start;cursor:pointer;-webkit-user-select:none;user-select:none;min-width:0}.runRowTop .runName{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runCheckboxInput{width:28px;height:28px;flex:0 0 auto;cursor:pointer;accent-color:var(--accent)}.runMeta{margin-top:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.runMetaWide{grid-template-columns:repeat(4,minmax(0,1fr))}.runMetaField{display:grid;gap:6px}.runMetaLabel{font-size:12px;color:var(--muted);font-weight:650}.runMetaInput{box-sizing:border-box;width:100%;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);color:inherit}.runMetaControls{display:flex;align-items:center;justify-content:space-between;gap:10px}.runMetaButtons{display:flex;flex-wrap:wrap;gap:6px}.runMetaButton{border-radius:10px;border:1px solid var(--border);padding:6px 10px;font-size:13px;font-weight:700;background:var(--surface-2);color:inherit;cursor:pointer;line-height:1;transition:background .14s ease,border-color .14s ease,transform .12s ease}.runMetaButton:hover{background:var(--surface-3);border-color:var(--border-2)}.runMetaButton:active{transform:translateY(1px)}.runMetaButton:disabled{opacity:.5;cursor:not-allowed}.runMetaValue{font-size:14px;font-weight:750;min-width:28px;text-align:right}.runMetaValue{font-size:14px;font-weight:650}.runCheckboxInput:focus-visible{outline:4px auto -webkit-focus-ring-color;outline-offset:2px}.runPanel .panelTitleRow{padding:14px}.runPanel .panelTitle{font-size:16px}.runPanel .subtitle2{font-size:15px;opacity:.85}.runStatusAllDone{animation:run-pulse .9s ease}@keyframes run-pop{0%{transform:scale(1)}55%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes run-pulse{0%{transform:scale(1)}40%{transform:scale(1.01)}to{transform:scale(1)}}.dot{margin:0 8px;opacity:.6}.imageStrip{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px}.imageThumb{width:160px;height:90px;object-fit:cover;border-radius:12px;border:1px solid rgba(255,255,255,.16)}.canvasWrap{height:360px}.canvasWrap canvas{display:block}@media(max-width:640px){.app{padding:14px}.headerRow{flex-direction:column;align-items:stretch;gap:12px}.headerRight{width:100%}.headerCube{width:100%;height:800px}.title{font-size:24px}.panelTitleRow{flex-wrap:wrap;align-items:flex-start}.rowGap{flex-wrap:wrap}.headerActions .button{width:100%}.exerciseActions{justify-content:stretch}.exerciseActions .button{width:100%}.routineCard{flex-direction:column;align-items:stretch}.routineActions .button{width:100%}.routineActions{flex-wrap:wrap}.completionRowActions{padding-right:6px}.completionRowActions .button{width:auto}.footerRow{flex-direction:column;align-items:stretch}.footerRow .button{width:100%}.exerciseRow{grid-template-columns:auto 1fr;align-items:start}.createPanel .exerciseRow{padding:12px}.exerciseMetaRow{grid-template-columns:1fr}.iconButton{grid-column:2;justify-self:end}.runStatusRow{flex-direction:column;align-items:stretch}.runStickyRight .button,.runProgress{width:100%}.runRow{padding:12px}.runRowHeader{flex-direction:row;align-items:flex-start;gap:8px}.runRowHeaderRight{display:flex;width:auto;justify-content:flex-end}.runMiniMeta{display:none}.runMiniThumb{width:28px;height:28px}.runMiniMeta .dot{margin:0 4px}.runRowTop{gap:12px}.runCheckboxInput{width:26px;height:26px}.runMeta,.runMetaWide{grid-template-columns:1fr}.runMetaControls{flex-direction:column;align-items:stretch}.runMetaButtons{gap:10px}.runMetaButton{min-height:44px;padding:10px 14px;font-size:15px;border-radius:12px}.runStepperBtn{width:48px;height:48px;font-size:22px;margin:0 2px}.runMetaValue{text-align:left}.imageThumb{width:100%;max-width:420px;height:auto;aspect-ratio:16 / 9}}.runContainer{display:flex;flex-direction:column;gap:24px;max-width:1800px;width:100%;margin:0 auto;min-height:85vh;padding-bottom:120px}.runHeader{display:flex;align-items:center;gap:20px;padding:20px 0;position:relative;z-index:10}.runHeaderContent{flex:1}.runPageTitle{font-size:clamp(32px,5vw,48px);font-weight:800;text-transform:uppercase;letter-spacing:-.03em;line-height:.95;margin:8px 0 0;background:linear-gradient(135deg,#fff 30%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-fill-color:transparent;filter:drop-shadow(0 4px 12px rgba(45,212,191,.2))}.heroBadge{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:6px 12px;background:#2dd4bf1a;color:var(--accent);border-radius:99px;border:1px solid rgba(45,212,191,.2);box-shadow:0 0 12px #2dd4bf1a}.runMainPanel{flex:1;display:flex;flex-direction:column;background:#14141699;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:32px;overflow:visible;box-shadow:0 24px 48px -12px #00000080}.runStatus{position:sticky;top:0;z-index:100;background:#0f0f12d9;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(255,255,255,.08);padding:16px 24px}.runStatusAllDone{animation:bg-pulse-green 1s ease-in-out infinite alternate}@keyframes bg-pulse-green{0%{background:#0f0f12d9;box-shadow:0 0 #2dd4bf00}to{background:#2dd4bf26;box-shadow:0 0 30px #2dd4bf1a}}.runStatusRow{display:flex;align-items:center;justify-content:space-between}.runStatusTitle{font-size:14px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.runNextName{color:var(--text);font-weight:700;font-size:18px;letter-spacing:-.01em}.runStickyRight{display:flex;align-items:center;gap:20px}.runGauge{position:relative;width:64px;height:64px}.runGaugeSvg{transform:rotate(-90deg);width:100%;height:100%}.runGaugeTrack{stroke:#ffffff1a}.runGaugeValue{stroke:var(--accent);stroke-linecap:round;filter:drop-shadow(0 0 6px var(--accent));transition:stroke-dashoffset .6s cubic-bezier(.2,.8,.2,1)}.runGaugeCenter{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.runGaugePrimary{font-size:16px;font-weight:800;color:var(--text);line-height:1}.runGaugeSecondary{font-size:10px;font-weight:700;color:var(--muted);margin-top:2px}.runDots{display:flex;gap:4px;margin-top:16px;justify-content:center}.runDot{width:8px;height:4px;border-radius:2px;background:#ffffff26;transition:all .3s ease}.runDotDone{background:var(--accent);box-shadow:0 0 8px #2dd4bf66}.runDotNext{background:#fff;width:24px}.exerciseRunList{padding:16px;display:flex;flex-direction:column;gap:12px}.runRow{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:20px;overflow:hidden;transition:all .25s cubic-bezier(.25,.46,.45,.94)}.runRowHeader{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;min-height:72px;cursor:pointer}.runRow:hover{background:#ffffff0f;border-color:#ffffff1a;transform:translateY(-1px)}.runRowDone{opacity:.6;filter:grayscale(.8)}.runRowDone:hover{opacity:.8;filter:grayscale(.2)}.runRowJustDone{animation:flash-success .6s ease-out}@keyframes flash-success{0%{background:var(--accent);color:#000;transform:scale(1.02)}to{background:#ffffff08;color:inherit;transform:scale(1)}}.runRowTop{display:flex;align-items:center;gap:16px;flex:1}.runCheckboxInput{appearance:none;width:28px;height:28px;border:2px solid rgba(255,255,255,.3);border-radius:50%;display:grid;place-items:center;transition:all .2s ease;flex-shrink:0}.runCheckboxInput:after{content:"";width:14px;height:14px;background:#000;border-radius:50%;transform:scale(0);transition:transform .2s cubic-bezier(.175,.885,.32,1.275)}.runCheckboxInput:checked{background:var(--accent);border-color:var(--accent);box-shadow:0 0 12px var(--accent-soft)}.runCheckboxInput:checked:after{transform:scale(1)}.runName{font-size:17px;font-weight:600;letter-spacing:-.01em}.runRowHeaderRight{display:flex;align-items:center;gap:16px}.runMiniMeta{text-align:right;font-size:13px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;background:#0003;padding:4px 10px;border-radius:6px}.runExpandButton{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#ffffff0d;color:var(--text);border:none;transition:all .2s}.runExpandButton:hover{background:var(--accent);color:#000;transform:rotate(90deg)}.runCardExpanded{background:#0000004d;border-top:1px solid rgba(255,255,255,.05);padding:24px;animation:slide-down .2s ease-out}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.runMetaGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.runMetaPill{background:#ffffff0a;border-radius:16px;padding:12px;border:1px solid rgba(255,255,255,.04);display:flex;flex-direction:column;gap:10px}.runMetaLabel{font-size:10px;font-weight:800;letter-spacing:.08em;color:#ffffff80;text-transform:uppercase;text-align:center}.runStepper{display:flex;align-items:center;justify-content:space-between;background:transparent;padding:0;border:none;box-shadow:none}.runStepperBtn{width:32px;height:32px;border-radius:10px;background:#ffffff1a;color:#fff;font-size:18px;font-weight:400;border:none;display:grid;place-items:center;transition:all .1s}.runStepperBtn:hover{background:var(--accent);color:#000}.runStepperBtn:active{transform:scale(.9)}.runStepperValue{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;color:#fff;text-align:center}.minWidthTime{font-size:16px}.runImagesGrid{margin-top:24px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.runImageFrame{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--bg);aspect-ratio:16/9;box-shadow:var(--shadow-sm);transition:transform .2s}.runImageFrame:hover{transform:scale(1.02);border-color:var(--accent-soft)}.runImageFull{width:100%;height:100%;object-fit:cover;display:block}.runMiniMeta{font-size:14px;color:var(--muted);font-weight:500;margin-right:12px}.runMiniMeta .unit{font-size:.85em;text-transform:uppercase;opacity:.7;margin-left:2px}@media(min-width:900px){.runCardExpanded{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:start}.runImagesGrid{margin-top:0;grid-template-columns:1fr}.runImagesGrid:has(>.runImageFrame:nth-child(2)){grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}.runRowHeader{min-height:44px;padding:0}.runRowTop{gap:12px;padding:8px 0;flex:1}.runCheckboxInput{margin:2px 0 0;width:22px;height:22px;border-radius:6px;cursor:pointer;transition:transform .1s ease;flex-shrink:0}.runCheckboxInput:active{transform:scale(.9)}.runName{font-weight:600;font-size:16px;line-height:1.3}.runExpandButton{margin-left:4px;width:32px;height:32px;background:transparent;border:1px solid transparent;color:var(--muted)}.runExpandButton:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-2)}.runRowHeaderRight{gap:16px}.runRow,.runRowMinimized{padding:0!important;overflow:visible;overflow:hidden}.runRowHeader{padding:12px 16px!important;min-height:56px}.runExpandButton{margin-left:8px;width:36px;height:36px;border-radius:50%;transition:all .2s ease;background:transparent;color:var(--muted);border:none}.runExpandButton:hover{background:var(--surface-3);color:var(--text);transform:translateY(0)}.runCardExpanded{background:#0003!important;border-top:1px solid rgba(255,255,255,.08)}@media(max-width:1px){.runPageTitle{background:linear-gradient(135deg,var(--text) 30%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;filter:none}.runMainPanel{background:#ffffffa6;border-color:#00000014;box-shadow:0 24px 48px -12px #0000001a}.runStatus{background:#f5f5f7e6;border-bottom:1px solid rgba(0,0,0,.08)}.runStatusAllDone{animation:bg-pulse-green-light 1s ease-in-out infinite alternate}@keyframes bg-pulse-green-light{0%{background:#f5f5f7e6;box-shadow:0 0 #2dd4bf00}to{background:#2dd4bf26;box-shadow:0 0 30px #2dd4bf1a}}.runStatusTitle{color:var(--muted)}.runNextName{color:var(--text)}.runGaugeTrack{stroke:#00000014}.runGaugePrimary{color:var(--text)}.runDot{background:#00000026}.runDotDone{background:var(--accent)}.runDotNext{background:var(--text)}.runRow{background:#fff9;border-color:#00000014}.runRow:hover{background:#fff;border-color:var(--accent)}.runRowDone{opacity:.7;filter:grayscale(.6)}@keyframes flash-success{0%{background:var(--accent);color:#fff;transform:scale(1.02)}to{background:#fff9;color:inherit;transform:scale(1)}}.runCheckboxInput{border-color:#0003}.runCheckboxInput:checked{border-color:var(--accent);color:#fff}.runExpandButton{background:#0000000a;color:var(--muted)}.runExpandButton:hover{background:var(--accent);color:#fff}.runMiniMeta{background:#0000000f;color:var(--text-2)}.runCardExpanded{background:#00000008!important;border-top:1px solid rgba(0,0,0,.08)}.runMetaPill{background:#fff;border-color:#0000000f}.runMetaLabel{color:var(--muted)}.runStepperBtn{background:#0000000a;color:var(--text)}.runStepperBtn:hover{background:var(--accent);color:#fff}.runStepperValue{color:var(--text)}.runImageFrame{border-color:#0000001a;box-shadow:0 4px 12px #0000000f}}.modalOverlay{position:fixed;inset:0;z-index:9999;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.modalContent{background:var(--surface);border:1px solid var(--border);border-radius:24px;padding:24px;box-shadow:0 24px 48px #00000080;animation:slide-up .3s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}@keyframes slide-up{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.plateCalcControls{position:absolute;top:24px;left:24px;right:24px;z-index:10;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.plateCalcPanel{pointer-events:auto;background:#141417d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:12px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;gap:12px}.plateCalcWeight{display:flex;align-items:baseline;gap:4px;color:#fff;font-weight:800;font-size:1.5rem;line-height:1;text-shadow:0 2px 10px rgba(0,0,0,.5);padding-left:4px}.plateCalcWeight .unit{font-size:.7rem;font-weight:700;opacity:.6;text-transform:uppercase;letter-spacing:.05em}.plateCalcButtonGroup{display:flex;gap:6px;align-items:center}.plateCalcBtn{height:36px;min-width:42px;padding:0 12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#ffffffe6;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.25,.46,.45,.94);display:flex;align-items:center;justify-content:center}.plateCalcBtn:hover:not(:disabled){background:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.plateCalcBtn:active:not(:disabled){transform:translateY(0);background:#ffffff1a}.plateCalcBtn:disabled{opacity:.3;cursor:not-allowed}.plateCalcClose{pointer-events:auto;width:40px;height:40px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.plateCalcClose:hover{background:#fff3;transform:rotate(90deg)}@media(max-width:600px){.plateCalcControls{top:16px;left:16px;right:16px}.plateCalcPanel{padding:10px 14px;gap:8px}.plateCalcWeight{font-size:1.25rem}.plateCalcButtonGroup{gap:4px}.plateCalcBtn{min-width:36px;padding:0 8px;height:36px;font-size:13px}}.infoContainer{margin-bottom:0;position:relative;z-index:1}.infoGrid{display:grid;grid-template-columns:300px 1fr;gap:32px;align-items:center;position:relative}.infoConnections{position:absolute;top:0;left:150px;width:180px;height:100%;pointer-events:none;z-index:0;opacity:.6}.infoLine{fill:none;stroke:#ffffff1a;stroke-width:2;transition:all .3s ease;stroke-dasharray:10;opacity:.3}.infoLine.active{stroke:var(--accent);stroke-width:3;opacity:1;stroke-dasharray:0;filter:drop-shadow(0 0 6px var(--accent))}.infoLine.dimmed{opacity:.1}.infoHubWrapper{position:relative;width:260px;height:260px;display:flex;align-items:center;justify-content:center;margin:0 auto;z-index:2;cursor:pointer}.infoHub{position:relative;width:200px;height:200px;border-radius:50%;background:var(--surface);border:1px solid var(--border);box-shadow:0 24px 64px #0006;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);display:flex;align-items:center;justify-content:center}.infoHub:hover{transform:scale(1.05);border-color:var(--accent-soft)}.infoHub.active{border-color:var(--accent);box-shadow:0 0 32px #2dd4bf33}.infoHubRing{position:absolute;inset:-10px;border-radius:50%;border:2px dashed rgba(255,255,255,.2);animation:spin 60s linear infinite;pointer-events:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.infoHubInner{text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px}.infoHubIconWrapper{color:var(--accent);margin-bottom:8px}.infoHubValue{font-size:3rem;font-weight:800;line-height:1;color:#fff;font-variant-numeric:tabular-nums}.infoHubLabel{font-size:.9rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.infoHubGlow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,var(--accent-soft) 0%,transparent 70%);opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:-1}.infoHubGlow.active{opacity:1;width:180%;height:180%}.infoCardsCol{display:flex;flex-direction:column;gap:16px;position:relative;z-index:2;width:100%}.infoCard{background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:20px;display:flex;align-items:center;gap:16px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.infoCard:hover{background:#ffffff0f;transform:translateY(-2px)}.infoCard.active,.infoCard.selected{background:var(--surface-2);border-color:var(--accent-soft);box-shadow:0 12px 32px #0003}.infoCardIcon{width:48px;height:48px;border-radius:14px;background:#ffffff0d;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all .2s ease}.infoCard.active .infoCardIcon,.infoCard:hover .infoCardIcon{background:var(--accent);color:#000}.infoCardPink.active .infoCardIcon{background:#f472b6}.infoCardPurple.active .infoCardIcon{background:#a78bfa}.infoCardOrange.active .infoCardIcon{background:#fb923c}.infoCardTeal.active .infoCardIcon{background:#2dd4bf}.infoCardContent{flex:1}.infoCardLabel{font-size:.8rem;font-weight:600;color:var(--muted);margin-bottom:2px}.infoCardValue{font-size:1.25rem;font-weight:700;color:#fff}.infoCardValue .unit{font-size:.8rem;opacity:.6;font-weight:600}@media(max-width:900px){.infoGrid{grid-template-columns:1fr;gap:40px}.infoConnections{display:none}.infoHubWrapper{margin-bottom:0}.infoCardsCol{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.infoCardsCol{grid-template-columns:1fr}}
