/* Readable routines in both themes, using the existing Alira palette. */
.routine-page{max-width:1040px}
.routine-page h1{font-size:clamp(30px,3.5vw,46px);line-height:1.15;letter-spacing:-1px;max-width:850px}
.routine-page>.sub{max-width:720px;margin-bottom:26px}
.routine-overview{display:flex;flex-wrap:wrap;gap:16px 36px;padding:22px 0;margin:16px 0 8px;border-top:1px solid var(--line)}
.routine-overview p{margin:0;font-size:13px;color:var(--muted)}
.routine-overview strong{font-size:24px;font-weight:500;color:var(--teal);margin-right:5px;font-variant-numeric:tabular-nums}
.routine-overview .routine-completion{margin-left:auto}
.routine-disclosure{padding:2px 0;border-bottom:1px solid var(--line)}
.routine-disclosure>summary{display:flex;align-items:center;gap:16px;list-style:none;padding:19px 0;cursor:pointer;font-size:15px;font-weight:500;line-height:1.5}
.routine-disclosure>summary::-webkit-details-marker{display:none}
.routine-disclosure>summary::after{content:'+';font-size:22px;font-weight:400;color:var(--teal);margin-left:6px}
.routine-disclosure[open]>summary::after{content:'−'}
.routine-disclosure>summary:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.routine-disclosure>summary:hover{color:var(--teal)}
.routine-disclosure .fold-hint{margin-left:auto;color:var(--muted);font-size:12px;font-weight:400;text-align:right}
.routine-bullets{padding:0 0 4px 21px;margin:0 0 22px;max-width:800px;color:var(--muted);font-size:15px;line-height:1.75}
.routine-bullets li{padding-left:4px;margin:0 0 12px;overflow-wrap:anywhere}
.routine-bullets li::marker{color:var(--teal)}
.routine-exercises{margin-top:22px}
.routine-page .exercise{padding:30px 0 22px}
.routine-page .exercise-heading{margin-bottom:14px;gap:24px;align-items:center}
.exercise-copy{flex:1;min-width:0}
.routine-page .exercise-heading h2{font-size:clamp(20px,2.4vw,28px);line-height:1.25;margin:8px 0 18px}
.routine-page .routine-art{width:104px;height:104px}
.routine-page .routine-art:hover{outline:1px solid var(--teal);outline-offset:5px}
.exercise-dose{display:flex;flex-wrap:wrap;gap:14px 30px;margin:0}
.exercise-dose dt{color:var(--muted);font-size:11px;margin-bottom:5px}
.exercise-dose dd{margin:0;font-size:16px;font-weight:500;line-height:1.4;color:var(--teal)}
.exercise .routine-disclosure{border-bottom:0}
.exercise .routine-disclosure>summary{padding:12px 0;font-size:13px;color:var(--teal)}
.exercise .routine-disclosure>summary::after{font-size:19px}
.exercise .routine-bullets{font-size:14px}
.set-disclosure .notice{margin:15px 0}
.session-finish form{margin:20px 0}
.routine-page .routine-rating{margin:22px 0 0;border-bottom:0}
.routine-page .routine-rating summary{font-size:16px}
.routine-page .actions{align-items:center;font-size:12px;gap:12px 24px}
.routine-page .actions .text-btn{padding-left:0}
.routine-mode-update{display:block;max-width:840px;margin:30px 0;padding:26px;border:1px solid var(--line);border-left:3px solid var(--lime,#b5ed25);background:color-mix(in srgb,var(--lime,#b5ed25) 6%,var(--canvas,#fff))}
.routine-mode-update .eyebrow{margin:0 0 14px}
.routine-mode-update h2{font-size:clamp(21px,2.5vw,26px);line-height:1.3;margin:0 0 14px;color:var(--ink)}
.routine-mode-update>p:not(.eyebrow){max-width:650px;font-size:14px;line-height:1.7;color:var(--muted);margin:0}
.routine-mode-update dl{display:flex;flex-wrap:wrap;gap:20px 48px;margin:24px 0}
.routine-mode-update dt{font-size:12px;color:var(--muted);margin-bottom:6px}
.routine-mode-update dd{font-size:17px;color:var(--ink);margin:0}
.routine-mode-update .primary{display:inline-block;text-decoration:none}
@media(max-width:600px){
 .routine-overview{gap:12px 18px;padding:18px 0}
 .routine-overview strong{font-size:19px}
 .routine-overview p{font-size:11px}
 .routine-overview .routine-completion{margin-left:0}
 .routine-page .exercise-heading{align-items:start;gap:16px}
 .routine-page .routine-art{width:72px;height:82px}
 .routine-page .exercise-heading h2{margin-top:8px;margin-bottom:16px}
 .exercise-dose{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .exercise-dose dd{font-size:14px}
 .routine-disclosure>summary{gap:10px;font-size:14px}
 .routine-disclosure .fold-hint{font-size:11px;max-width:105px}
 .routine-bullets{font-size:14px}
}
.gym-thinking{display:grid;grid-template-columns:156px minmax(0,1fr);align-items:center;gap:26px;margin:32px 0;padding:24px 26px;border-block:1px solid var(--line);border-left:3px solid var(--lime,#b5ed25);background:color-mix(in srgb,var(--teal) 5%,var(--canvas,#fff));max-width:840px}
.gym-thinking>img{width:156px;height:156px;object-fit:contain;animation:alira-think-float 3.6s ease-in-out infinite}
.gym-thinking .eyebrow{margin:0 0 12px;font-size:10px;color:var(--teal)}
.gym-thinking h2{font-size:clamp(22px,3vw,28px);line-height:1.3;margin:0 0 12px;color:var(--ink)}
.gym-thinking p{font-size:14px;line-height:1.65;margin:0 0 10px;color:var(--ink)}
.gym-thinking small{display:block;font-size:12px;line-height:1.6;color:var(--muted)}
.thinking-dots{display:inline-flex;gap:4px;margin-left:8px;vertical-align:baseline}
.thinking-dots i{width:4px;height:4px;background:var(--teal);animation:alira-think-dot 1.6s ease-in-out infinite}
.thinking-dots i:nth-child(2){animation-delay:.2s}.thinking-dots i:nth-child(3){animation-delay:.4s}
@keyframes alira-think-float{50%{transform:translateY(-5px)}}
@keyframes alira-think-dot{0%,80%,100%{opacity:.25}40%{opacity:1}}
@media(max-width:600px){.gym-thinking{grid-template-columns:100px minmax(0,1fr);gap:16px;padding:20px 14px}.gym-thinking>img{width:100px;height:126px}.gym-thinking h2{font-size:21px}.gym-thinking small{font-size:11px}}
@media(max-width:380px){.gym-thinking{grid-template-columns:1fr}.gym-thinking>img{margin:auto}}
@media(prefers-reduced-motion:reduce){.gym-thinking>img,.thinking-dots i{animation:none}}
