:root{color-scheme:dark;--ink: #eef7ff;--text: var(--ink);--muted: #91a8bc;--line: #203447;--paper: #07131f;--surface: #0d1c2b;--surface-2: #13283b;--surface-3: #172f45;--run: #3ea7ff;--bike: #24d99b;--swim: #6bd8ff;--strength: #7c9cff;--primary: #0f7cff;--primary-strong: #0649d8;--primary-soft: rgba(15, 124, 255, .16);--blue: var(--primary);--blue-strong: var(--primary-strong);--accent: #30e59f;--accent-2: var(--accent);--accent-strong: #17bf7f;--danger: #ff6b7a;--danger-bg: #37151d;--danger-line: #74303a;--shadow: rgba(0, 0, 0, .32);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(15,124,255,.18),transparent 34rem),radial-gradient(circle at 82% 10%,rgba(48,229,159,.08),transparent 28rem),linear-gradient(180deg,#09192a 0%,var(--paper) 42%);color:var(--ink)}button,select,input,textarea{font:inherit}button{border:1px solid var(--line);background:linear-gradient(180deg,var(--primary),var(--primary-strong));color:#f4f9ff;min-height:40px;padding:0 14px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:.88rem;font-weight:650;letter-spacing:0;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}button:hover{border-color:#4d9aff94;background:linear-gradient(180deg,#157eea,#0758cf);color:#fff;box-shadow:0 6px 16px #0077ff24;filter:none}button:active{box-shadow:inset 0 1px 8px #00000029}button:disabled{cursor:not-allowed;opacity:.54;box-shadow:none}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(15,124,255,.34);outline-offset:2px}main{width:min(1480px,100%);margin:0 auto;padding:20px}.topbar{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line)}.brand,.actions,.sectionTitle,.sessionTop,.chips{display:flex;align-items:center}.brand{gap:12px}.brand img{display:block;width:clamp(168px,18vw,230px);height:auto;border-radius:8px}h1,h2,h3,p{margin:0}h1{font-size:1.55rem;line-height:1.1}.brand p,.weekHeader p,.hint,.session p{color:var(--muted)}.actions{gap:10px}.authShell{min-height:100vh;width:min(1180px,100%);display:grid;align-content:center;gap:18px;padding:24px}.landingHero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:20px;align-items:stretch}.landingCopy,.landingAuthCard,.landingFeature,.landingPricing{background:#0d1c2be0;border:1px solid var(--line);border-radius:8px;box-shadow:0 22px 60px var(--shadow)}.landingCopy{min-height:540px;padding:clamp(24px,4vw,48px);display:grid;align-content:center;gap:18px;overflow:hidden;position:relative}.landingCopy:after{content:"";position:absolute;inset:auto -18% -32% 34%;height:260px;background:linear-gradient(90deg,#0f7cff57,#30e59f29);filter:blur(80px);pointer-events:none}.landingBrand img{display:block;width:min(330px,78vw);height:auto}.landingKicker{width:fit-content;display:inline-flex;align-items:center;gap:8px;color:#b9dcff;background:#0f7cff24;border:1px solid rgba(77,154,255,.34);border-radius:999px;padding:7px 10px;font-size:.82rem;font-weight:700}.landingKicker.small{margin-bottom:10px}.landingCopy h1{max-width:700px;font-size:clamp(2.2rem,5vw,4.8rem);line-height:.98;letter-spacing:0}.landingLead{max-width:720px;color:#abc4d9;font-size:clamp(1rem,1.7vw,1.2rem);line-height:1.65}.landingActions,.landingProof,.landingSections{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.landingActions{margin-top:6px}.landingProof{color:var(--muted);font-size:.9rem}.landingProof span,.landingSecurity{display:inline-flex;align-items:center;gap:8px}.landingProof svg,.landingFeature svg,.landingSecurity svg{color:var(--accent)}.landingAuthCard{padding:22px;display:grid;align-content:center;gap:18px}.landingAuthCard .authBrand{gap:8px}.landingAuthCard .authBrand strong{font-size:1.25rem;line-height:1.25}.landingSections{align-items:stretch}.landingFeature{flex:1 1 240px;padding:18px;display:grid;gap:10px}.landingFeature h2,.landingPricing h2{font-size:1.12rem}.landingFeature p,.landingPricing p,.landingSecurity small{color:var(--muted);line-height:1.5}.landingPricing{padding:20px;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.55fr) minmax(220px,.55fr);gap:16px;align-items:center}.landingSecurity{align-items:flex-start;flex-direction:column;padding:14px;border:1px solid rgba(77,154,255,.22);background:#13283bbd;border-radius:8px}.landingSecurity span{font-weight:750}.authBrand{display:grid;gap:14px}.authBrand img{display:block;width:min(320px,100%);height:auto;border-radius:8px}.authBrand p,.authNotice p,.authStatus{color:var(--muted)}.authForm,.authNotice{display:grid;gap:14px}.authHint{color:var(--muted);margin:0}.authActions,.accountBar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.authActions button{flex:1}.textButton{min-height:auto;padding:0;border:0;background:transparent;color:var(--accent);justify-self:start}.textButton:disabled{color:var(--muted);cursor:not-allowed}.accountBar{display:grid;gap:12px;background:linear-gradient(145deg,#0f7cff2e,#30e59f0f),var(--surface);border:1px solid rgba(77,154,255,.28);border-radius:8px;padding:12px;box-shadow:inset 0 1px #ffffff0a}.syncMenu{position:relative}.syncMenuButton{position:relative;min-height:40px;padding:0 13px 0 9px;border-color:#4d9aff57;background:linear-gradient(180deg,#144b84f5,#092038f5);color:#eef7ff;box-shadow:inset 0 1px #ffffff14,0 8px 24px #0003}.syncMenuButton.active{border-color:#0f7cffb3;background:linear-gradient(180deg,#0f7cff57,#0a2746fa);color:#fff}.syncMenuButton:hover{border-color:#30e59f7a;background:linear-gradient(180deg,#185c9efa,#0b2f4efa);box-shadow:0 10px 28px #0f7cff2e}.syncOrb{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.3),transparent 34%),linear-gradient(180deg,var(--primary),var(--primary-strong));color:#fff}.syncMenuLabel{font-size:.84rem;font-weight:800}.syncMenuCount{position:absolute;top:-7px;right:-7px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--paper);border-radius:999px;background:var(--accent);color:#032015;font-size:.66rem;font-weight:800}.syncMenuPopover{position:absolute;top:calc(100% + 10px);right:0;z-index:60;width:min(360px,calc(100vw - 28px));box-shadow:0 18px 48px var(--shadow)}.syncMenuPopover .accountBar{width:100%}.accountMeta{display:grid;gap:2px;min-width:0}.accountHeader,.accountCloudLine{display:flex;align-items:center;gap:10px}.accountHeader{min-width:0}.accountAvatar{width:38px;height:38px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(48,229,159,.36);border-radius:999px;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.28),transparent 36%),linear-gradient(145deg,var(--primary),#082c83);color:#fff;font-weight:900}.accountCloudLine{justify-content:space-between;flex-wrap:wrap}.accountSyncState{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 9px;border:1px solid rgba(77,154,255,.28);border-radius:999px;background:#0f7cff1a;color:#cfe6ff;font-size:.76rem;font-weight:750}.accountSyncState span{width:7px;height:7px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 4px #30e59f1f}.accountMeta strong,.accountMeta small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.syncBadge{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 10px;border-radius:8px;background:#31e69f1f;color:var(--accent);font-weight:700}.accountMeta strong{color:var(--text);font-size:.86rem}.accountMeta small{color:var(--muted);font-size:.75rem}.cloudNotice{position:fixed;top:18px;right:18px;z-index:80;display:flex;align-items:center;gap:10px;width:min(420px,calc(100vw - 32px));border:1px solid rgba(57,211,138,.34);border-radius:8px;background:#0a1826f0;box-shadow:0 14px 38px #00000047;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink);padding:9px 12px;pointer-events:none}.cloudNotice.warning{border-color:#6bd8ff5c;background:#0a1826f0}.cloudNotice svg{color:var(--accent-2);flex:0 0 auto}.cloudNotice span{min-width:0;flex:1;overflow-wrap:anywhere}.iconOnly{width:34px;min-height:34px;padding:0;justify-content:center}.workspace{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:18px;padding-top:18px;align-items:start}.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px}.controls{display:grid;gap:16px;position:sticky;top:12px}.sectionTitle{gap:8px;font-size:.92rem;text-transform:uppercase;letter-spacing:0;color:var(--ink)}label{display:grid;gap:7px;color:var(--muted);font-size:.9rem}select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--ink);padding:0 12px}input,textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--ink);padding:10px 12px}textarea{min-height:86px;resize:vertical}.tabs{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:14px 0;flex-wrap:wrap}.tabs button{background:var(--surface);color:var(--ink)}.tabs button.active{background:#0f7cff38;border-color:#30e59f94;color:#f4f9ff;box-shadow:inset 0 0 0 1px #30e59f2e}.menuUtilities{display:inline-flex;align-items:center;gap:7px;margin-left:auto;padding-left:12px}.menuUtilities button{min-height:34px;padding:0 10px;font-size:.8rem;border-color:#4d9aff40;background:#0d1c2bb3}.hint{font-size:.88rem;line-height:1.4}.range span{display:flex;justify-content:space-between;gap:8px}.range strong{color:var(--ink)}.numberSetting span{display:flex;justify-content:space-between;gap:8px}.numberSetting strong{color:var(--ink);font-size:.82rem}.numberSetting input{min-height:38px}input[type=range]{width:100%;accent-color:var(--primary)}.mainview{min-width:0}.homeWorkspace{display:grid;gap:18px;padding-top:18px}.homeHero{display:flex;align-items:center;justify-content:space-between;gap:18px}.homeHero h2{margin-top:8px;font-size:1.35rem}.homeHero p,.nextWorkoutPanel p{color:var(--muted);line-height:1.42}.dashboardGrid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px}.clickablePanel,.clickableRow{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.clickablePanel:hover,.clickablePanel:focus-visible,.clickableRow:hover,.clickableRow:focus-visible{border-color:#2f7affb8;box-shadow:0 0 0 3px #2f7aff1f;outline:none}.clickablePanel:hover,.clickableRow:hover{transform:translateY(-1px)}.dashboardHeroActions,.weekDashboardHeader,.weekDashboardHeader>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dashboardHeroActions{justify-content:flex-end}.weekDashboardHeader{justify-content:space-between}.weekDashboardTitle{display:grid;gap:3px}.weekDashboardTitle span{color:var(--muted);font-size:.86rem}.tsbPanel,.nextWorkoutPanel,.weekDashboard{display:grid;gap:14px}.tsbScore{display:flex;align-items:baseline;gap:12px}.tsbScore strong{color:var(--accent);font-size:3rem;line-height:1}.tsbScore span{color:var(--ink);font-size:1rem;font-weight:700}.tsbBars{display:grid;gap:10px}.tsbBars div{display:grid;grid-template-columns:42px 44px minmax(0,1fr);gap:8px;align-items:center}.tsbBars span{color:var(--muted);font-size:.82rem}.tsbBars strong{font-size:.9rem}.tsbBars i{display:block;height:9px;max-width:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--accent))}.weekSessionList{display:grid;gap:8px}.weekSessionItem{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);padding:10px 12px}.weekSessionItem.completed{background:#30e59f1f}.weekSessionItem strong{display:block;font-size:.94rem}.weekSessionItem span{color:var(--muted);font-size:.84rem}.successPill,.pendingPill{flex:0 0 auto;border-radius:999px;padding:5px 8px;font-size:.78rem}.successPill{background:#30e59f29;color:#8ff5ca}.pendingPill{background:var(--surface-3);color:var(--muted)}.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}.metric{border-bottom:3px solid var(--accent);background:var(--surface);border-radius:8px;padding:9px 11px;min-height:58px}.metric span{color:var(--muted);font-size:.74rem}.metric strong{display:block;margin-top:5px;font-size:1.12rem;line-height:1.05}.weekNav{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:6px;margin:16px 0}.weekNav button{padding:0;min-height:38px;background:var(--surface);color:var(--ink)}.weekNav button.active{background:linear-gradient(135deg,var(--accent),#16c884);border-color:#30e59fb8;color:#061421}.weekHeader{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:16px 0}.weekHeader h2{font-size:1.35rem}.weekHeader strong{background:var(--surface-2);border-radius:8px;min-width:82px;text-align:center;padding:12px}.weekHeaderMetrics{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.weekHeaderMetrics strong{min-width:92px}.sessions{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.generatorHero{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.generatorHero>div:first-child{min-width:240px}.generatorHero h2{margin-top:8px;font-size:1.25rem}.generatorHero p{color:var(--muted);margin-top:6px;max-width:720px}.generatorHeroActions{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:10px;align-items:end;min-width:min(100%,520px)}.generatorHeroActions button,.generatorHeroActions label{margin:0}.generatorHeroActions label{font-size:.78rem}.generatorHeroActions input{margin-top:6px}.generatorHeroActions button{min-height:44px}.generatorHeroActions .setupWizardButton{grid-column:1 / -1}.setupWizardButton{border-color:#3ea4ff8c;background:#0f7cff2e;color:#eaf4ff}.generatorWeekGrid{display:grid;grid-template-columns:repeat(7,minmax(128px,1fr));gap:10px;align-items:stretch;overflow-x:auto;padding-bottom:4px}.generatorDayColumn{min-width:128px;background:#0d1c2ba3;border:1px solid var(--line);border-radius:8px;padding:8px;display:grid;align-content:start;gap:8px}.generatorDayHeader{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 2px 7px;border-bottom:1px solid rgba(144,166,191,.16)}.generatorDayHeader strong{font-size:.92rem}.generatorDayHeader span{color:var(--muted);font-size:.76rem;font-weight:800}.generatorRestDay{min-height:92px;display:grid;place-items:center;border:1px dashed rgba(144,166,191,.24);border-radius:8px;color:var(--muted);font-size:.82rem}.compactGeneratorSession{min-height:0;padding:10px;gap:8px}.compactGeneratorSession .sessionTop{justify-content:flex-end}.compactGeneratorSession h3{font-size:.92rem;line-height:1.2}.compactGeneratorSession p{font-size:.82rem;line-height:1.35;flex:initial}.compactGeneratorSession .ghost{width:100%;min-height:34px;justify-content:center}.session{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:8px;min-height:240px;padding:14px;display:flex;flex-direction:column;gap:10px}.session.run{border-top-color:var(--run)}.session.bike{border-top-color:var(--bike)}.session.swim{border-top-color:var(--swim)}.session.strength{border-top-color:var(--strength)}.sessionTop{justify-content:space-between}.sessionMetrics{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.sessionDurationBadge,.sessionTssBadge{display:inline-flex;align-items:center;min-height:25px;border-radius:8px;padding:0 8px;font-weight:800;line-height:1;white-space:nowrap}.sessionDurationBadge{border:1px solid rgba(15,124,255,.48);background:#0f7cff2e;color:#d9ebff;font-size:.86rem}.sessionTssBadge{border:1px solid rgba(48,229,159,.34);background:#30e59f1a;color:#a9f7d6;font-size:.72rem}.day{font-weight:700;color:var(--muted)}.session h3{font-size:1.05rem}.session p{line-height:1.45;flex:1}.intervalSummary{display:grid;gap:6px;border-left:3px solid var(--accent);background:#30e59f14;border-radius:8px;padding:8px 10px}.intervalSummary.compact{padding:7px 9px}.intervalSummary span{display:grid;gap:2px;color:var(--muted);font-size:.78rem;line-height:1.3}.intervalSummary strong{color:var(--ink);font-size:.78rem}.chips{flex-wrap:wrap;gap:6px}.chips span{background:var(--surface-2);border-radius:999px;color:var(--ink);font-size:.78rem;padding:5px 8px}.ghost{background:var(--surface-2);color:var(--ink);width:fit-content}.ghost:hover,.secondary:hover{border-color:#4d9aff8f;background:#0f7cff29;color:#fff}.wide{width:100%}.secondary{background:var(--surface-2);color:var(--ink)}.danger{background:var(--danger-bg);color:#ffd6dc;border-color:var(--danger-line)}.danger:hover{border-color:#ff6b7a9e;background:#461722;color:#fff}.emptyLibrary{color:var(--muted);font-size:.88rem;line-height:1.35}.libraryList{display:grid;gap:6px}.libraryPanel{display:grid;gap:12px}.libraryWorkspace{display:grid;gap:18px;padding-top:18px}.libraryGroup{display:grid;gap:8px;min-width:0}.libraryGroupHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-bottom:8px}.libraryGroup h3{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:0}.folderCreateButton{min-height:34px;white-space:nowrap}.folderModalOverlay{z-index:35}.folderModal{width:min(440px,100%);display:grid;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 24px 80px var(--shadow)}.folderForm{display:grid;gap:16px;padding:18px}.folderForm label{display:grid;gap:8px;color:var(--muted);font-size:.84rem}.folderForm input{min-height:40px;padding:0 12px}.folderedLibrary{display:grid;gap:8px}.folderSection{display:grid;gap:6px;border:1px solid var(--line);border-radius:8px;background:#0a16236b;padding:7px}.folderTitle{display:flex;align-items:center;gap:7px;color:var(--ink)}.folderToggle{width:100%;min-height:34px;border:0;background:transparent;justify-content:flex-start;padding:0;text-align:left}.folderToggle:hover{filter:none;color:var(--primary)}.folderChevron{color:var(--muted)!important;flex:0 0 auto;transition:transform .16s ease}.folderChevron.open{transform:rotate(90deg)}.folderContent{display:grid;gap:6px}.folderTitle svg{color:var(--blue)}.folderTitle span{margin-left:auto;min-width:24px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:.76rem;text-align:center;padding:2px 7px}.libraryItem{display:grid;gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);padding:8px}.libraryItem.draggableTemplate{cursor:grab}.libraryItem.draggableTemplate:active{cursor:grabbing}.libraryItemTitle{display:flex;align-items:flex-start;gap:8px}.libraryItemTitle svg{color:var(--accent);flex:0 0 auto;margin-top:2px}.libraryItem strong{display:block;font-size:.9rem}.libraryItem span{color:var(--muted);font-size:.8rem}.folderSelect{display:grid;gap:4px;color:var(--muted);font-size:.76rem}.folderSelect select{min-height:34px;font-size:.84rem}.libraryActions{display:flex;gap:6px;align-items:center;justify-content:space-between}.libraryActions .ghost{min-height:34px;font-size:.84rem}.stackedActions{align-items:stretch}.stackedActions button{flex:1;justify-content:center;min-height:34px;font-size:.84rem}.scheduledPlanItem{background:#30e59f14}.scheduledPlanItem .danger{justify-content:center;min-height:34px;font-size:.84rem}.libraryColumns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}.libraryImportBar{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,230px) auto;align-items:end;gap:10px;border:1px solid var(--line);border-radius:8px;background:#0a162385;padding:10px}.libraryImportTitle{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:800;font-size:.92rem}.compactImportField{display:grid;gap:5px;color:var(--muted);font-size:.76rem}.compactImportField select{min-height:38px;padding:0 10px}.importButton{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(44,126,255,.58);border-radius:8px;background:linear-gradient(135deg,var(--blue),var(--blue-strong));color:#fff;cursor:pointer;font-weight:800;padding:0 13px;white-space:nowrap}.importButton:hover{border-color:#30e59fb8;background:linear-gradient(135deg,var(--blue),#0a66ee);color:#fff}.importButton input{display:none}.importMessage{color:var(--muted);font-size:.84rem;line-height:1.35}.calendarWorkspace{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding-top:18px;align-items:start}.compactCalendar.withSidebar{grid-template-columns:320px minmax(0,1fr)}.compactCalendar.sidebarClosed{grid-template-columns:46px minmax(0,1fr)}.compactCalendar .compactSummary{grid-template-columns:repeat(4,minmax(92px,1fr));gap:8px}.calendarMetricsSplit{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr);gap:10px}.calendarMetricsSplit>div{display:grid;gap:6px}.metricsLabel{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.compactCalendar .weekSummary{grid-template-columns:repeat(3,minmax(90px,1fr))}.compactCalendar .weekSummary .metric{border-bottom-color:var(--blue)}.compactCalendar .metric{min-height:58px;padding:9px 10px}.compactCalendar .metric span{font-size:.74rem}.compactCalendar .metric strong{margin-top:4px;font-size:1.08rem}.calendarContent{display:grid;gap:12px;min-width:0}.calendarLibrarySidebar{display:grid;gap:12px;max-height:calc(100vh - 190px);overflow:auto;position:sticky;top:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:12px}.sidebarHeader,.sidebarFolderTitle{display:flex;align-items:center;justify-content:space-between;gap:8px}.libraryRail{position:sticky;top:12px;min-height:150px;writing-mode:vertical-rl;text-orientation:mixed;justify-content:center;gap:8px;padding:10px 0;background:var(--surface);color:var(--ink)}.compactLibrarySidebarContent,.sidebarWorkoutList,.sidebarFolder{display:grid;gap:10px}.sidebarFolderTitle{color:var(--muted);font-size:.78rem;text-transform:uppercase}.sidebarFolderTitle.folderToggle{min-height:30px;color:var(--muted);text-transform:none}.sidebarFolderTitle svg{color:var(--blue)}.sidebarFolderTitle span{border-radius:999px;background:var(--surface-2);padding:2px 7px}.sidebarWorkoutItem{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);cursor:grab;padding:8px}.sidebarWorkoutItem:active{cursor:grabbing}.sidebarWorkoutItem svg{color:var(--accent);flex:0 0 auto;margin-top:2px}.sidebarWorkoutItem strong,.sidebarWorkoutItem span{display:block}.sidebarWorkoutItem strong{font-size:.84rem;line-height:1.2}.sidebarWorkoutItem span{color:var(--muted);font-size:.76rem}.sidebarDangerZone{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:end;border:1px solid var(--danger-line);border-radius:8px;background:#ff6b7a14;padding:8px}.sidebarDangerZone .sectionTitle{color:#ffd6dc;grid-column:1 / -1;font-size:.82rem;margin-bottom:-2px}.sidebarDangerZone .sectionTitle svg{width:14px;height:14px}.dateRangeFields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;min-width:0}.dateRangeFields label{gap:3px;font-size:.72rem}.dateRangeFields input{min-height:30px;padding:6px 7px;font-size:.76rem}.compactDangerButton{min-height:30px;padding:6px 9px;font-size:.78rem;white-space:nowrap}.compactCalendar .calendarHeader{grid-template-columns:34px minmax(0,1fr) auto minmax(0,1fr) 34px;gap:8px}.compactCalendar .calendarHeader h2{font-size:1.08rem}.compactCalendar .calendarHeader p{font-size:.82rem}.compactCalendar .calendarHeader .iconButton{min-width:34px;min-height:34px}.compactCalendar .todayButton{min-height:34px;padding:0 10px;font-size:.82rem}.calendarFilterBar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.calendarFilterRows{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.75fr);gap:8px;min-width:0}.calendarFilterGroup{display:flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:4px;min-width:0}.calendarFilterGroup.filtered{border-color:#30e59fb3;box-shadow:0 0 0 3px #30e59f1a}.calendarFilterChip{flex:1 1 0;min-width:0;min-height:32px;padding:4px 7px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-size:.72rem;font-weight:650;white-space:nowrap;position:relative}.calendarFilterChip svg{width:14px;height:14px}.calendarFilterChip.active{background:#0f7cff47;color:#fff;box-shadow:inset 0 0 0 1px #4d9aff47}.calendarFilterChip.filtered{background:#30e59f2e;color:#c7ffe7;box-shadow:inset 0 0 0 1px #30e59f42;text-shadow:none}.calendarFilterChip.filtered svg,.calendarFilterChip.active svg{color:currentColor;stroke-width:2.4}.calendarFilterChip.filtered:after{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 2px #04111f6b}.calendarFilterChip:not(.active):hover{background:#0f7cff33;color:#fff}.activeFilterSummary{min-height:34px;padding:0 9px;border-color:#30e59fa8;background:#30e59f1f;color:var(--accent);font-size:.76rem;font-weight:650;white-space:nowrap}.activeFilterSummary span{max-width:160px;overflow:hidden;text-overflow:ellipsis}.compactCalendar .dayHeader{min-height:38px}.compactCalendar .dayHeader strong{font-size:.82rem}.compactCalendar .dayHeader span{font-size:.72rem}.compactCalendar .todayPill{padding:2px 5px}.compactCalendar .sessionTop span{font-size:.7rem}.compactCalendar .sessionDurationBadge{min-height:22px;padding:0 6px;font-size:.74rem}.compactCalendar .sessionTssBadge{min-height:22px;padding:0 6px;font-size:.66rem}.compactCalendar .miniChart{height:28px;border-radius:6px;padding:3px}.compactCalendar .miniBlock{min-width:4px;border-radius:2px 2px 0 0}.compactCalendar .chips{gap:4px}.compactCalendar .chips span{padding:3px 6px;font-size:.66rem}.quickLoadGrid.compact{grid-template-columns:1fr;gap:8px}.quickLoadGrid.compact label{gap:4px}.quickLoadGrid.compact button{min-height:36px;width:100%}.settingsWorkspace{display:grid;grid-template-columns:1fr;gap:18px;padding-top:18px;align-items:start}.settingsCalculatorGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.settingsPanel{display:grid;gap:16px}.settingsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settingsGrid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.settingsGrid.two,.settingsCalculatorGrid .settingsGrid.three,.settingsCalculatorGrid .paceSummary{grid-template-columns:repeat(2,minmax(0,1fr))}.settingsSnapshot{display:grid;gap:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);padding:10px}.settingsSnapshot span{color:var(--muted);font-size:.88rem}.paceSummary{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:10px}.performanceTargetBox{display:grid;gap:10px}.performanceAssessment{display:grid;gap:10px;border:1px solid rgba(48,229,159,.28);border-radius:8px;background:#30e59f14;padding:10px}.performanceAssessment.warning{border-color:#627cff6b;background:#627cff1f}.performanceAssessment.danger{border-color:#ff637c70;background:#ff637c1a}.performanceAssessmentHeader{display:flex;justify-content:space-between;gap:10px;align-items:center}.performanceAssessmentHeader span{color:var(--muted);font-size:.82rem;font-weight:800}.performanceAssessmentHeader strong{color:var(--ink);font-size:.9rem;text-align:right}.performanceMetrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.performanceMetrics .metric{min-height:66px;padding:10px}.performanceMetrics .metric strong{font-size:1.06rem}.performanceAdvice{margin:0;padding-left:18px;color:var(--muted);display:grid;gap:5px;font-size:.84rem;line-height:1.35}.applyThresholdButton{border-color:#30e59f9e;background:#30e59f2e;color:#c7ffe7;box-shadow:inset 0 0 0 1px #30e59f1f;font-weight:700}.applyThresholdButton:hover{border-color:#4d9affad;background:#0f7cff38;color:#fff;box-shadow:0 6px 16px #0f7cff24}.zoneTable{display:grid;overflow-x:auto;border:1px solid var(--line);border-radius:8px}.zoneHeader,.zoneRow{display:grid;grid-template-columns:68px minmax(150px,1fr) minmax(140px,.8fr) minmax(130px,.75fr);gap:10px;align-items:center;min-width:620px;padding:10px 12px}.zoneHeader{background:var(--surface-3);color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase}.zoneRow{border-top:1px solid var(--line);background:var(--surface-2);font-size:.9rem}.zoneRow strong{color:var(--accent)}.zoneRow span{color:var(--ink)}.calendarTools{display:grid;gap:14px;position:sticky;top:12px}.calendarControls{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:10px}.calendarClearButton{justify-self:end;min-height:36px;min-width:36px;width:36px}.calendarControlGrid{display:grid;grid-template-columns:minmax(160px,.85fr) minmax(240px,1.4fr) auto;gap:12px;align-items:end}.calendarNote{display:grid;gap:4px;border-left:3px solid var(--accent);padding-left:10px}.calendarNote span{color:var(--muted);font-size:.9rem}.calendarLibrary{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:12px}.loadedPlansHeader{display:grid;gap:8px}.loadedPlanList{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px}.loadedPlanItem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;border:1px solid rgba(48,229,159,.26);border-radius:8px;background:#30e59f14;padding:8px}.loadedPlanItem strong,.loadedPlanItem span{display:block}.loadedPlanItem span{color:var(--muted);font-size:.82rem}.loadedPlanItem .libraryActions{justify-content:flex-end}.loadedPlanItem .stackedActions{align-items:center}.loadedPlanItem .stackedActions button{flex:0 0 auto;white-space:nowrap}.loadedPlanItem .stackedActions .iconButton{min-height:34px;min-width:34px;width:34px}.planAdjustIcon{border-color:#2c7eff57;color:var(--blue-soft)}.planAdjustIcon:hover{border-color:#30e59fb8;background:#2c7eff33;color:#fff}.planAdjustmentDialog{max-width:520px}.planAdjustmentForm{display:grid;gap:12px}.planAdjustmentForm label{color:var(--muted);font-size:.8rem}.planAdjustmentForm input,.planAdjustmentForm select{margin-top:6px;width:100%}.planAdjustmentMode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.planAdjustmentMode button{justify-content:center;min-height:38px}.planAdjustmentMode button.active{border-color:#30e59f94;background:#0f7cff38;color:#f4f9ff;box-shadow:inset 0 0 0 1px #30e59f24}.calendarMain{min-width:0}.calendarQuickLoad{display:grid;gap:12px}.quickLoadGrid{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(220px,1fr) auto minmax(220px,1fr) auto;gap:12px;align-items:end}.quickLoadGrid button{min-height:42px;white-space:nowrap}.emptyCalendar{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:24px}.emptyCalendar svg{color:var(--accent)}.emptyCalendar p{color:var(--muted);max-width:520px}.calendarHeader{display:grid;grid-template-columns:42px minmax(0,1fr) auto minmax(0,1fr) 42px;align-items:center;gap:12px;margin:12px 0}.calendarHeader .todayButton{justify-self:center}.calendarHeader .iconButton:last-child{grid-column:5}.calendarHeader h2{font-size:1.28rem}.calendarHeader p{color:var(--muted)}.iconButton{min-width:42px;padding:0;background:var(--surface-2);color:var(--ink)}.todayButton{min-height:38px;padding:0 14px;background:linear-gradient(135deg,var(--blue),var(--blue-strong));color:#fff;white-space:nowrap}.todayButton:hover{border-color:#30e59fb8;background:linear-gradient(135deg,#1689ff,#075de8);color:#fff}.calendarGrid{display:grid;grid-template-columns:repeat(7,minmax(118px,1fr));gap:8px;padding-bottom:8px}.dayColumn{min-width:0;background:#0d1c2bd1;border:1px solid var(--line);border-radius:8px;min-height:245px;overflow:hidden}.dayColumn:has(.daySessions:hover){background:#13283bf5}.dayColumn.dropTarget{border-color:#3ea4fff2;background:#0d44746b;box-shadow:inset 0 0 0 2px #27e89a6b,0 14px 34px #0077ff2e}.dayColumn.todayColumn{border-color:#3ea4ffc7;box-shadow:inset 0 0 0 1px #27e89a52}.dayColumn.dropTarget .dayHeader{border-bottom-color:#3ea4ffa6}.dayHeader{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 8px;min-height:48px;padding:8px;border-bottom:1px solid var(--line)}.weatherBadge{display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(107,216,255,.46);border-radius:999px;background:#2c7eff33;color:#fff!important;font-size:.72rem!important;font-weight:900;line-height:1;padding:4px 6px;white-space:nowrap;box-shadow:inset 0 0 0 1px #ffffff0f}.weatherBadge svg{color:var(--accent);flex:0 0 auto;stroke-width:2.4}.dayHeader span{color:var(--muted);font-size:.82rem;white-space:nowrap}.dayHeader strong{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px;min-width:0;grid-column:1}.todayPill{padding:3px 7px;border:1px solid rgba(39,232,154,.42);border-radius:999px;background:#07f3;color:var(--ink)!important;font-size:.68rem!important;line-height:1}.daySessions{display:grid;gap:6px;padding:7px}.restDay{color:var(--muted);font-size:.88rem;padding:10px}.calendarCard{display:grid;gap:6px;background:var(--surface-2);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:8px;padding:8px;cursor:grab}.calendarCard.completed{background:#24d99b21;border-color:#24d99b70}.calendarCard.completed h3,.calendarCard.completed p{opacity:.72}.calendarCard:hover{border-color:#30e59f75;box-shadow:0 12px 28px var(--shadow)}.calendarCard:focus-visible{outline:3px solid rgba(48,229,159,.32);outline-offset:2px}.calendarCard:active{cursor:grabbing}.editorCard{cursor:default;grid-column:1 / -1}.calendarCard.run{border-left-color:var(--run)}.calendarCard.bike{border-left-color:var(--bike)}.calendarCard.swim{border-left-color:var(--swim)}.calendarCard.strength{border-left-color:var(--strength)}.calendarCard h3{font-size:.86rem;line-height:1.18;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.calendarCard p{color:var(--muted);font-size:.86rem;line-height:1.35;overflow-wrap:anywhere}.actualMetricsPreview{display:flex;flex-wrap:wrap;gap:5px}.actualMetricsPreview span{display:inline-flex;align-items:center;gap:4px;min-height:21px;border:1px solid rgba(48,229,159,.24);border-radius:999px;background:#30e59f1c;color:#9ff7d0;font-size:.68rem;font-weight:800;line-height:1;padding:0 6px;white-space:nowrap}.actualMetricsPreview span.distance{border-color:#ff994057;background:#ff994021;color:#ffbd7c}.actualMetricsPreview span.heart{border-color:#ff56705c;background:#ff567021;color:#ff8fa0}.actualMetricsPreview span.power{border-color:#a86fff61;background:#a86fff24;color:#c6a3ff}.actualMetricsPreview span.effort{border-color:color-mix(in srgb,var(--metric-color, #30e59f) 34%,transparent);background:color-mix(in srgb,var(--metric-color, #30e59f) 13%,transparent);color:var(--metric-color, #30e59f)}.completionToggle{justify-self:start;min-height:24px;padding:0 7px;border-color:var(--line);background:var(--surface);color:var(--ink);font-size:.7rem}.completionToggle.done,.success{background:#30e59f29;border-color:#30e59f8c;color:#8ff5ca}.workoutSummary{display:flex;justify-content:space-between;gap:8px;background:var(--surface-3);border-radius:8px;padding:8px 10px}.workoutSummary span{color:var(--muted)}.miniChart{height:48px;display:flex;align-items:end;gap:2px;background:#081827;border:1px solid var(--line);border-radius:8px;padding:5px}.miniChart.interactive{height:58px}.miniBlock{display:block;min-width:5px;min-height:auto;flex:0 0 auto;border-radius:3px 3px 0 0;background:#1f77c7;border:0;padding:0;color:transparent;gap:0;cursor:default;transition:filter .16s ease,outline-color .16s ease,transform .16s ease}.miniChart.interactive .miniBlock{cursor:pointer}.miniBlock.active{outline:2px solid var(--primary);outline-offset:2px;filter:brightness(1.2);transform:translateY(-2px)}.miniBlock:disabled{opacity:1}.miniBlock.warmup{background:#4fb6e8}.miniBlock.work{background:var(--primary)}.miniBlock.recovery{background:#57708a}.miniBlock.cooldown{background:#34506a}.blockEditor{display:grid;gap:8px}.intervalDetails{display:grid;gap:9px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);padding:10px}.intervalDetailsHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.intervalDetailsHeader h3{font-size:.92rem}.intervalDetailsHeader span{color:var(--muted);font-size:.78rem}.intervalDetailGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.intervalDetailRow{display:grid;gap:5px;border:1px solid var(--line);border-radius:8px;background:#0b1c2c94;color:var(--ink);padding:8px 9px;text-align:left;cursor:pointer}.intervalDetailRow:hover{border-color:#3ea4ff85;filter:none}.intervalDetailRow.active{border-color:#0f7cffc7;background:var(--primary-soft)}.intervalDetailTop{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.intervalDetailRow strong{min-width:0;font-size:.84rem;line-height:1.2}.intervalDetailTop span{flex:0 0 auto;border-radius:999px;background:var(--surface-3);color:var(--muted);font-size:.74rem;font-weight:800;padding:2px 7px}.intervalGuidance{color:var(--muted);font-size:.8rem;line-height:1.3}.blockLegend{display:none}.blockRow{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;align-items:end;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);padding:9px;transition:background .16s ease,box-shadow .16s ease;cursor:grab}.blockRow.active{background:var(--primary-soft);box-shadow:inset 0 0 0 1px #0f7cff94}.blockRow.dropTarget{border-color:#3ea4fff2;box-shadow:inset 0 0 0 2px #27e89a57,0 14px 30px #0077ff2e}.blockDragHandle{grid-column:span 1;display:grid;place-items:center;gap:3px;min-height:32px;border:1px solid var(--line);border-radius:8px;background:var(--surface-3);color:var(--muted);cursor:grab}.blockDragHandle span{font-size:.72rem;font-weight:800}.blockDragHandle svg{color:var(--blue)}.blockRow:active .blockDragHandle{cursor:grabbing}.blockField{grid-column:span 3;display:grid;gap:4px;min-width:0;color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase}.blockField.name,.blockField.pace{grid-column:span 4}.blockField.paceMode,.blockField.paceSplit{grid-column:span 3}.blockField.small{grid-column:span 2}.blockField input,.blockField select{min-height:32px;padding:5px 7px;font-size:.8rem;text-transform:none;font-weight:500}.blockRowActions{grid-column:span 2;display:flex;gap:4px;align-items:center;align-self:end}.blockRowActions>span{display:none}.computedTarget{min-height:32px;display:flex;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--surface-3);color:var(--ink);padding:5px 7px;font-size:.8rem;white-space:nowrap}.cardActions,.editRow{display:flex;gap:6px}.cardActions{flex-wrap:wrap}.cardActions button{min-height:34px;padding:0 10px;font-size:.84rem}.editRow label{flex:1}.modalOverlay{position:fixed;inset:0;z-index:20;display:grid;place-items:center;background:#01080eb8;padding:24px}.confirmOverlay{z-index:30}.planSaveDialog label{margin:2px 0 4px}.setupWizardOverlay{z-index:28}.setupWizardModal{width:min(860px,100%);max-height:min(820px,calc(100vh - 48px));display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 28px 80px var(--shadow);overflow:hidden}.setupWizardHeader p{color:var(--muted);margin-top:4px}.setupWizardProgress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:12px 18px;border-bottom:1px solid var(--line);background:#0d1c2bb8}.setupWizardProgress button{min-height:42px;justify-content:flex-start;gap:8px;padding:0 10px;background:var(--surface-2);color:var(--muted);font-size:.82rem}.setupWizardProgress button span{width:22px;height:22px;display:grid;place-items:center;border-radius:999px;background:#90a6bf29;color:var(--ink);font-size:.72rem;font-weight:800}.setupWizardProgress button.active,.setupWizardProgress button.done{border-color:#3ea4ff85;color:var(--ink)}.setupWizardProgress button.active{background:#0f7cff38}.setupWizardProgress button.done span{background:#30e59f38;color:#a9f7d6}.setupWizardBody{overflow:auto;padding:18px}.setupWizardStep{display:grid;gap:14px}.wizardCoachNote,.wizardCoachPanel,.wizardFinalVerdict,.wizardWarningBox{display:grid;gap:7px;border-radius:8px;padding:12px}.wizardCoachNote{border:1px solid rgba(62,164,255,.34);background:#0f7cff1a}.wizardCoachNote strong,.wizardCoachPanel strong,.wizardFinalVerdict strong{color:var(--ink)}.wizardCoachNote span,.wizardCoachPanel span,.wizardCoachPanel small,.wizardFinalVerdict span,.wizardFinalVerdict small{color:var(--muted);line-height:1.35}.wizardWarningBox{border:1px solid rgba(255,99,124,.38);background:#ff637c17}.wizardWarningBox span{color:#ffd3da;font-size:.84rem;line-height:1.35}.wizardActionGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px}.wizardActionGrid button{width:100%;justify-content:center}.wizardCoachPanel.success,.wizardFinalVerdict.success{border:1px solid rgba(48,229,159,.34);background:#30e59f17}.wizardCoachPanel.warning,.wizardFinalVerdict.warning{border:1px solid rgba(98,124,255,.44);background:#627cff1f}.wizardCoachPanel.danger,.wizardFinalVerdict.danger{border:1px solid rgba(255,99,124,.46);background:#ff637c1f}.confirmDialog{width:min(440px,100%);display:grid;gap:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 22px 70px var(--shadow);padding:20px}.confirmDialog h2{font-size:1.18rem;margin-bottom:8px}.confirmDialog p{color:var(--muted);line-height:1.45}.confirmActions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.workoutModal{width:min(920px,100%);max-height:min(860px,calc(100vh - 48px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 28px 80px var(--shadow)}.modalHeader,.modalFooter{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px}.modalHeader{border-bottom:1px solid var(--line)}.modalHeader span{color:var(--muted);font-size:.88rem}.modalHeader h2{margin-top:2px;font-size:1.24rem}.modalSubtitle{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}.modalDurationBadge,.modalTargetBadge{display:inline-flex;align-items:center;min-height:30px;border-radius:8px;padding:0 10px;font-weight:800;line-height:1}.modalDurationBadge{border:1px solid rgba(15,124,255,.55);background:#0f7cff33;color:#dbeeff;font-size:.96rem}.modalTargetBadge{border:1px solid rgba(48,229,159,.4);background:#30e59f1a;color:#9ff4d0;font-size:.82rem}.actualWorkoutPanel{display:grid;gap:12px;border:1px solid rgba(15,124,255,.32);border-radius:10px;padding:14px;background:linear-gradient(135deg,#0f7cff24,#30e59f14)}.actualWorkoutPanel h3{margin:2px 0 0;font-size:.98rem}.panelEyebrow{color:var(--blue-200);font-size:.72rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.actualWorkoutGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px}.actualWorkoutMetric{display:grid;gap:4px;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:10px;background:#05121f75}.actualWorkoutMetric span{color:var(--muted);font-size:.76rem;font-weight:700}.actualWorkoutMetric strong{color:var(--text);font-size:1rem}.modalBody{display:grid;gap:14px;overflow:auto;padding:18px}.modalFooter{border-top:1px solid var(--line)}.modalFooterActions{display:flex;gap:8px}@media(max-width:1120px){.workspace{grid-template-columns:280px minmax(0,1fr)}.calendarWorkspace{grid-template-columns:1fr}.compactCalendar.withSidebar{grid-template-columns:minmax(260px,.32fr) minmax(0,1fr)}.compactCalendar.sidebarClosed{grid-template-columns:42px minmax(0,1fr)}.calendarControlGrid,.quickLoadGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendarGrid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.compactCalendar .calendarGrid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.calendarMetricsSplit,.calendarFilterBar,.calendarFilterRows{grid-template-columns:1fr}.activeFilterSummary{justify-content:center;width:100%}.dashboardGrid,.settingsWorkspace,.settingsCalculatorGrid{grid-template-columns:1fr}.calendarTools{position:static}.libraryImportBar{grid-template-columns:minmax(0,1fr) minmax(170px,220px) auto}}@media(max-width:760px){main{padding:14px}.authShell{padding:14px}.landingHero,.landingPricing{grid-template-columns:1fr}.landingCopy{min-height:auto;padding:22px}.landingAuthCard{padding:18px}.landingActions button,.landingAuthCard .authActions button{width:100%}.topbar{align-items:flex-start;flex-direction:column;padding-bottom:14px}.actions{width:100%}.actions button,.tabs button{flex:1}.workspace{grid-template-columns:1fr}.summary{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}.generatorHero{align-items:flex-start;flex-direction:column}.generatorHeroActions{grid-template-columns:1fr;min-width:0;width:100%}.generatorHero button{width:100%}.setupWizardProgress{grid-template-columns:1fr}.setupWizardProgress button{min-height:36px}.compactCalendar.withSidebar,.compactCalendar.sidebarClosed,.compactCalendar .compactSummary,.compactCalendar .weekSummary{grid-template-columns:1fr}.calendarLibrarySidebar{max-height:none;position:static}.libraryRail{min-height:42px;padding:0 12px;position:static;text-orientation:initial;writing-mode:horizontal-tb;width:100%}.settingsGrid,.settingsGrid.three,.settingsCalculatorGrid .settingsGrid.three,.settingsCalculatorGrid .paceSummary,.paceSummary{grid-template-columns:1fr}.controls{position:static}.weekHeader{align-items:flex-start;flex-direction:column}.calendarControlGrid,.quickLoadGrid,.loadedPlanItem{grid-template-columns:1fr}.calendarHeader{grid-template-columns:42px minmax(0,1fr) 42px}.calendarHeader .iconButton:last-child{grid-column:3}.calendarHeader .todayButton{grid-column:1 / -1;width:max-content;justify-self:center}.homeHero,.weekSessionItem,.libraryGroupHeader{align-items:stretch;flex-direction:column}.tabs{overflow-x:auto}.menuUtilities{flex:0 0 100%;margin-left:0;padding-left:0}.menuUtilities button{flex:0 0 auto}.calendarGrid{grid-template-columns:1fr;overflow:visible}.dayColumn{min-height:auto;min-width:0}.calendarHeader{grid-template-columns:38px minmax(0,1fr) 38px}.compactCalendar .calendarHeader{grid-template-columns:36px minmax(0,1fr) 36px}.compactCalendar .calendarHeader .iconButton:last-child{grid-column:3}.compactCalendar .calendarHeader .todayButton{grid-column:1 / -1;width:max-content;justify-self:center}.calendarFilterGroup{overflow-x:auto}.calendarFilterChip{flex:0 0 auto}.blockRow{grid-template-columns:1fr}.blockField,.blockField.name,.blockField.pace,.blockField.small,.blockDragHandle,.blockRowActions{grid-column:1 / -1}.intervalDetailGrid{grid-template-columns:1fr}.modalOverlay{padding:10px}.workoutModal{max-height:calc(100vh - 20px)}.modalFooter{align-items:stretch;flex-direction:column-reverse}.modalFooterActions{display:grid;grid-template-columns:1fr 1fr}}@media(max-width:620px){.libraryColumns,.libraryImportBar{grid-template-columns:1fr}.importButton{width:100%}}
