/* PULSE: shared spacing and interactive states for the routine workspace. */
.routine-plan-hint{display:block;color:var(--muted);font-size:.73rem;line-height:1.6;margin-top:6px}.routine-card>.routine-plan-hint{margin-bottom:16px}
.routine-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,1fr);gap:24px;align-items:start}
.routine-editor{display:grid;gap:16px}.editor-intro,.plan-exercise,.routine-summary,.creator-card,.social-panel,.install-panel,.danger-zone{padding:24px}
.editor-intro{display:grid;gap:20px}.editor-intro input{font-size:1.15rem}.field textarea{font:inherit;resize:vertical;width:100%;color:var(--text);background:#14111b;border:1px solid #3c3247;border-radius:9px;padding:12px;line-height:1.6}
.plan-heading{display:flex;align-items:center;gap:12px;margin-bottom:20px}.plan-heading>div:not(.reorder){flex:1}.plan-heading h2{font-size:1rem;line-height:1.5}.plan-heading p{color:var(--muted);font-size:.78rem;margin-top:4px}.reorder{display:flex}.reorder .icon-button{width:30px;font-size:1.1rem}
.plan-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.plan-fields label{display:grid;gap:8px;font-size:.75rem;color:#b7a8c7}.plan-fields input{width:100%;padding:11px 7px;text-align:center;font-size:1rem;font-variant-numeric:tabular-nums}.plan-exercise>.form-hint{margin-top:14px}
.add-movement{justify-content:center;min-height:62px;border:1px dashed #816198;background:#a880e510;color:#c6a4f2}.add-movement:hover{background:#a880e520}.creator-card{display:flex;align-items:center;gap:13px;margin-bottom:16px}.creator-card small,.creator-card strong{display:block}.creator-card small{color:var(--muted);font-size:.75rem;margin-bottom:4px}.creator-card .avatar{width:46px;height:46px}
.summary-title h2{margin-top:8px}.summary-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0 5px}.summary-numbers strong,.summary-numbers span{display:block}.summary-numbers strong{font-size:1.6rem;font-weight:550;color:#e4d6f7}.summary-numbers strong small{font-size:.8rem}.summary-numbers span{font-size:.72rem;color:var(--muted);margin-top:5px}
.summary-bodies{display:flex;justify-content:center;gap:12px;padding:12px 0}.summary-bodies .body-view{width:48%;margin:0}.summary-bodies svg{height:250px;width:100%}.summary-bodies figcaption{font-size:.62rem;color:#7f718b}
.contribution-legend{display:flex;gap:15px;font-size:.68rem;color:#ac9bba;margin:12px 0}.contribution-legend span{display:flex;align-items:center;gap:5px}.contribution-legend i{width:9px;height:9px;border-radius:3px;background:#a57bdc}.contribution-legend span+span i{background:#50435e}
.muscle-distribution{display:grid;gap:13px;margin:16px 0 22px}.muscle-distribution>div{display:grid;grid-template-columns:100px 1fr 48px;gap:8px;align-items:center;font-size:.72rem}.muscle-distribution strong{font-weight:500;text-align:right;color:#cfb4f1}.muscle-distribution small{color:#8f819e}.contribution-bar{height:9px;border-radius:9px;overflow:hidden;background:#221b2d;display:flex}.contribution-bar i{background:#a57bdc;height:100%;transition:width .3s}.contribution-bar b{background:#50435e;height:100%;transition:width .3s}
.routine-view-actions{display:grid;gap:9px;margin-bottom:16px}.routine-overview{padding:4px 26px}.overview-exercise{display:flex;gap:18px;padding:27px 0;border-bottom:1px solid var(--line)}.overview-exercise:last-child{border:0}.overview-exercise h2{font-size:1rem;margin-bottom:10px}.overview-exercise p{font-size:.88rem;margin:12px 0 7px}.overview-exercise small{font-size:.8rem;color:#bba6d2}.overview-exercise .icon{width:14px;height:14px;vertical-align:-2px}.overview-exercise .exercise-number{margin-top:3px;flex-shrink:0}
.catalog-picker{max-height:50vh;margin-top:18px}.catalog-picker .exercise-option>div{flex:1}.catalog-picker .exercise-option strong{font-size:.83rem}.catalog-picker .exercise-option button{flex-shrink:0}
.target-line{color:#c6ade2!important;background:#a37be110;padding:9px 12px;border-left:2px solid #ac80e2;margin-top:12px!important;border-radius:0 6px 6px 0}
.rest-timer:empty{display:none}.rest-timer{position:sticky;bottom:92px;z-index:5;display:flex;justify-content:center;align-items:center;gap:12px;padding:13px 18px;margin:16px 0;background:#312044f5;border:1px solid #8e69ad;border-radius:12px;box-shadow:0 8px 28px #0004}.rest-timer strong{font-size:.9rem;font-variant-numeric:tabular-nums}
.social-panel,.install-panel,.danger-zone{margin-top:22px}.social-panel h2{margin-top:7px}.social-panel h3{margin:28px 0 14px}.friend-code{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#241c30;border:1px solid #473355;border-radius:12px;padding:18px}.friend-code small{display:block;color:#a794b9;font-size:.75rem;margin-bottom:7px}.friend-code strong{letter-spacing:1px;font-size:.94rem}.friend-search{margin:18px 0}.friend-search input{flex:1;min-width:0}.friends-list article,.shared-list article{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.friends-list article>div:first-of-type,.shared-list article>div:first-child{flex:1}.friends-list small,.shared-list small{display:block;font-size:.73rem;margin-top:6px;color:var(--muted)}
.install-panel{display:flex;align-items:center;justify-content:space-between;gap:18px}.install-panel p,.danger-zone p{font-size:.83rem;color:var(--muted);line-height:1.6;margin:8px 0 15px}.install-steps{padding-left:20px;line-height:2.2;color:#cdbde0}.danger-zone{border-color:#55333e}.danger-zone h2{font-size:1rem}.auth-providers{grid-template-columns:1fr}
button:not(:disabled){transition:transform .17s,background .17s,border-color .17s,box-shadow .17s}button:active:not(:disabled){transform:scale(.97)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #c29af6;outline-offset:3px}.button.primary:hover{box-shadow:0 4px 22px #a879e329}.plan-exercise,.overview-exercise{animation:page-in .22s ease-out both}
.muscle-shape{stroke:#827d8d;stroke-width:3;stroke-linejoin:round}.muscle-interactive:hover .muscle-shape{filter:brightness(1.2);stroke:#bba1f0;stroke-width:4}.muscle-interactive.selected .muscle-shape,.muscle-interactive:focus-visible .muscle-shape{stroke:#c3a5ff;stroke-width:4.5;filter:drop-shadow(0 0 3px #a16dfb40)}
.organize-hint{font-size:.76rem;color:var(--muted);line-height:1.7;margin:0 0 20px}.folder-section{margin:0 0 26px;border:1px solid var(--line);border-radius:16px;padding:18px}.folder-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px;min-height:36px}.folder-heading h2{font-size:1rem;display:flex;align-items:center;gap:10px}.folder-heading>span{font-size:.72rem;color:var(--muted)}.folder-heading .reorder{margin-left:auto}.folder-empty{padding:26px;color:var(--muted);font-size:.85rem;border:1px dashed #4c405b;border-radius:12px;text-align:center;grid-column:1/-1;min-height:90px}.routine-folder{display:flex;align-items:center;gap:12px;font-size:.75rem;color:var(--muted);margin:12px 0}.routine-folder select{flex:1;min-width:0;font-size:.78rem;padding:8px}
.exercise-options{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.exercise-options label,.rest-control,.rest-custom label{display:grid;gap:8px;font-size:.76rem;color:#b7a8c7}.exercise-options select,.rest-control select{width:100%;font-variant-numeric:tabular-nums}.plan-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.plan-fields[data-reps-mode="fixed"]{grid-template-columns:repeat(3,minmax(0,1fr))}.exercise-note-editor{margin:20px 0 16px;font-size:.8rem}.exercise-note-editor summary{cursor:pointer;color:#c7b4df;padding:8px 0}.exercise-note-editor textarea{width:100%;font:inherit;line-height:1.65;color:var(--text);background:#14111b;border:1px solid #3c3247;border-radius:9px;padding:12px;resize:vertical;min-height:70px;margin-top:8px}.exercise-note{white-space:pre-wrap;overflow-wrap:anywhere;border-left:2px solid #806099;padding:8px 12px;color:#bdaeC9;font-size:.83rem;line-height:1.65;background:#a880e50b;border-radius:0 6px 6px 0}.session-options{display:flex;justify-content:flex-end;margin:20px 0 0}.session-options .rest-control{width:185px}.session-exercise-heading>div:not(.reorder){flex:1}.session-exercise-heading .reorder{align-self:flex-start;margin-left:auto}.rest-custom{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.rest-custom input{width:100%;font-size:1.1rem}
[data-drag-surface]{cursor:grab}.drag-active,.drag-active *{cursor:grabbing!important;user-select:none!important}.is-dragging{opacity:.35}.drop-before{box-shadow:0 -4px 0 #b788ef!important}.drop-after{box-shadow:0 4px 0 #b788ef!important}.drop-folder{border-color:#b788ef;background:#a880e50b}.drag-ghost{position:fixed!important;left:0;top:0;z-index:100;pointer-events:none!important;max-height:160px;overflow:hidden;opacity:.94;box-shadow:0 12px 42px #0009!important;margin:0!important;animation:none!important;transition:none!important;border-color:#b788ef!important}
@media(any-pointer:coarse){[data-drag-surface]{touch-action:none;-webkit-user-select:none;user-select:none}}
@media(max-width:760px){.folder-section{padding:12px;margin-bottom:18px}.folder-heading{flex-wrap:wrap;gap:8px}.folder-heading h2{font-size:.88rem;max-width:60%;overflow-wrap:anywhere}.folder-heading>span{font-size:.65rem}.exercise-options{gap:10px}.plan-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-fields[data-reps-mode="fixed"]{grid-template-columns:repeat(3,minmax(0,1fr))}.session-exercise-heading{flex-wrap:wrap}.session-options{justify-content:flex-start}.session-options .rest-control{width:100%}}
@media(min-width:1250px){.routine-workspace>aside{position:sticky;top:24px}}
@media(max-width:1100px){.routine-workspace{grid-template-columns:minmax(0,1fr)}.routine-workspace>aside{display:grid;grid-template-columns:1fr;gap:0}.summary-bodies svg{height:290px}.routine-summary{max-width:100%}.summary-numbers{max-width:450px}.muscle-distribution>div{grid-template-columns:150px 1fr 55px}}
@media(max-width:760px){.editor-intro,.plan-exercise,.routine-summary,.creator-card,.social-panel,.install-panel,.danger-zone{padding:18px}.plan-heading{flex-wrap:wrap}.plan-heading .reorder{margin-left:auto}.plan-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.plan-fields label:nth-child(4),.plan-fields label:nth-child(5){grid-column:span 1}.routine-overview{padding:0 18px}.overview-exercise{padding:22px 0;gap:12px}.summary-bodies .body-view{max-width:200px}.summary-bodies svg{height:260px}.muscle-distribution>div{grid-template-columns:110px 1fr 50px}.rest-timer{bottom:145px;gap:7px;padding:10px;flex-wrap:wrap}.rest-timer strong{font-size:.8rem}.friend-code,.install-panel{align-items:flex-start;flex-direction:column}.friends-list article,.shared-list article{flex-wrap:wrap}.friends-list .actions,.shared-list .actions{width:100%;justify-content:flex-end}.routine-view-actions{grid-template-columns:1fr}.plan-fields input{min-height:44px}.button,.icon-button{min-height:40px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
