.exercise-catalogue{width:min(1080px,94vw);max-height:90dvh;padding:28px;border:1px solid #d7d7d7;border-radius:20px;background:#fafafa;color:#171717;box-shadow:0 24px 100px #0005;overflow:auto}.exercise-catalogue::backdrop{background:#0009}.catalogue-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.catalogue-header h2{margin:6px 0;font-size:30px}.catalogue-header p{margin:4px 0 18px}.catalogue-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:12px}.catalogue-filters label,.catalogue-detail label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}.catalogue-filters input,.catalogue-filters select,.catalogue-detail select{width:100%;background:white;color:#171717;border:1px solid #ccc;border-radius:8px;padding:10px}.catalogue-filters .catalogue-check{grid-column:1/-1;flex-direction:row;align-items:center}.catalogue-check input{width:auto}.catalogue-count{color:#666;font-size:13px}.catalogue-body{display:grid;grid-template-columns:1fr 1fr;gap:24px}.catalogue-results{max-height:48vh;overflow:auto;display:flex;flex-direction:column;gap:8px}.catalogue-results button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:5px;padding:15px;border:1px solid #ddd;border-radius:10px;background:white;color:#191919;cursor:pointer}.catalogue-results button[aria-pressed=true]{border-color:#222;background:#eee}.catalogue-results span,.catalogue-results small{font-size:12px;color:#666}.catalogue-detail{min-width:0;padding:18px;border:1px solid #ddd;border-radius:12px;background:white}.catalogue-detail h3{margin:8px 0;font-size:23px}.catalogue-avatar{display:block;width:100%;height:220px;object-fit:contain;background:#f5f5f5;border-radius:8px}.catalogue-detail small{display:block;color:#777;font-size:12px;margin:8px 0}.catalogue-placeholder{display:grid;place-items:center;height:110px;background:#f4f4f4;border-radius:8px;color:#777}.catalogue-detail dl{display:grid;grid-template-columns:140px 1fr;gap:8px;font-size:13px}.catalogue-detail dt{font-weight:600}.catalogue-detail dd{margin:0}.catalogue-hint{font-size:13px;color:#666}.catalogue-use{width:100%}.catalogue-launch{margin:8px 0}.exercise-catalogue button:focus-visible{outline:3px solid #777;outline-offset:2px}@media(max-width:650px){.exercise-catalogue{padding:16px;width:96vw}.catalogue-filters{grid-template-columns:1fr 1fr}.catalogue-filters label:first-child{grid-column:1/-1}.catalogue-body{grid-template-columns:1fr}.catalogue-results{max-height:220px}.catalogue-header h2{font-size:24px}.catalogue-avatar{height:180px}}
.client-exercise-guide{width:min(580px,94vw)}.client-exercise-guide .catalogue-avatar{height:260px}.client-exercise-guide li{margin:10px 0;line-height:1.5}.view-exercise{margin:4px 0 10px;font-weight:600}

.client-exercise-guide .eyebrow{color:#555}

/* Keep the guide action clearly visible in both workout themes. */
body .session-exercise .view-exercise{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;margin:10px 0 2px;border:1px solid #587e91;border-radius:10px;background:#203c4b;color:#eef9ff;font-size:14px;font-weight:650;line-height:1.25;text-decoration:none;cursor:pointer;box-shadow:0 2px 6px #0002}
body .session-exercise .view-exercise svg{width:22px;height:22px;flex:none;color:inherit}
body .session-exercise .view-exercise span{color:inherit}
body .session-exercise .view-exercise:hover{background:#2d5265;border-color:#9bc9df}
body .session-exercise .view-exercise:focus-visible{outline:3px solid #89d6ff;outline-offset:3px}
body.client-light-mode .session-exercise .view-exercise{background:#e3f1f8;color:#173f53;border-color:#739caf;box-shadow:none}
body.client-light-mode .session-exercise .view-exercise:hover{background:#cce5f1;border-color:#426e84}
body.client-light-mode .session-exercise .view-exercise:focus-visible{outline-color:#225f7e}

#movement-library{margin:28px 0;padding:24px;border:1px solid #52636d;border-radius:18px;background:#19242c;color:#f1f7fa}#movement-library header h3{font-size:25px;color:#f1f7fa;margin:6px 0}#movement-library header p,#movement-library .eyebrow{color:#c0d0d9}#movement-library .movement-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;margin:20px 0}#movement-library label{display:flex;flex-direction:column;gap:7px;font-size:13px;color:inherit}#movement-library input,#movement-library select{width:100%;padding:11px;border:1px solid #708795;border-radius:8px;background:#101a21;color:#f1f7fa}#movement-library input::placeholder{color:#b5c5cf}#movement-library .movement-preview-filter{grid-column:1/-1;flex-direction:row;align-items:center}#movement-library input[type=checkbox]{width:auto}#movement-library .movement-count{font-size:13px;color:#bfced7}.movement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}#movement-library .movement-card{overflow:hidden;text-align:left;padding:0;border:1px solid #586e7b;border-radius:12px;background:#253641;color:#f4f9fc;cursor:pointer}#movement-library .movement-card:hover{border-color:#a2d7f1}#movement-library .movement-card img{display:block;width:100%;height:130px;object-fit:contain;background:#f5f5f5}.movement-no-preview{height:130px;display:grid;place-items:center;font-size:32px;background:#1d2e39}.movement-card-copy{padding:14px;display:flex;flex-direction:column;gap:9px}#movement-library .movement-card-copy strong{color:inherit;font-size:15px}#movement-library .movement-card-copy span,#movement-library .movement-card-copy small{color:#c5dbe7;font-size:12px}#movement-library .movement-more{margin-top:18px;min-height:44px;border:1px solid #84a9bc;background:#294657;color:#fff;border-radius:9px;padding:10px 16px;cursor:pointer}#movement-library button:focus-visible{outline:3px solid #89d6ff;outline-offset:3px}body.client-light-mode #movement-library{background:#f3f8fb;color:#173442;border-color:#aec5d1}body.client-light-mode #movement-library header h3{color:#173442}body.client-light-mode #movement-library header p,body.client-light-mode #movement-library .eyebrow,body.client-light-mode #movement-library .movement-count{color:#47616f}body.client-light-mode #movement-library input,body.client-light-mode #movement-library select{background:#fff;color:#173442;border-color:#8ea9b8}body.client-light-mode #movement-library input::placeholder{color:#566e7b}body.client-light-mode #movement-library .movement-card{background:white;color:#173442;border-color:#a9c1ce}body.client-light-mode #movement-library .movement-card-copy span,body.client-light-mode #movement-library .movement-card-copy small{color:#426273}body.client-light-mode .movement-no-preview{background:#e0edf4;color:#305369}@media(max-width:700px){#movement-library{padding:16px}.movement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#movement-library .movement-filters{grid-template-columns:1fr 1fr}#movement-library .movement-filters label:first-child{grid-column:1/-1}}@media(max-width:380px){.movement-grid{grid-template-columns:1fr}}

#movement-library .movement-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}#movement-library .movement-pagination[hidden]{display:none}#movement-library .movement-pagination button{min-height:44px;padding:10px 14px;border:1px solid #84a9bc;border-radius:9px;background:#294657;color:#fff;cursor:pointer}#movement-library .movement-pagination button:disabled{opacity:.4;cursor:default}#movement-library .movement-page-status{font-size:13px;color:inherit;text-align:center}#movement-library .movement-grid{scroll-margin-top:170px}body.client-light-mode #movement-library .movement-pagination button{background:#e3f1f8;color:#173f53;border-color:#739caf}

.admin-library-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0;padding:24px;border:1px solid #b9ccd6;border-radius:16px;background:linear-gradient(120deg,#eef5f8,#fff);color:#243d4b}.admin-library-entry h3{margin:5px 0;font-size:23px}.admin-library-entry p{margin:6px 0;color:#526b78}.admin-library-entry button{flex:none}.catalogue-assignment-help{padding:14px;background:#edf4f7;color:#314f60;border-radius:10px;font-size:13px;line-height:1.6}@media(max-width:620px){.admin-library-entry{align-items:stretch;flex-direction:column;padding:20px}}
