/* Smart Workout Matching — accessible and mobile friendly */
.matcher-panel{margin:0 0 22px;background:linear-gradient(120deg,#172e37,#182637);border-color:#365867}
.matcher-head{display:flex;align-items:start;justify-content:space-between;gap:18px;flex-wrap:wrap}
.matcher-head h3{font-size:21px;margin:5px 0 6px}.matcher-head p{font-size:12px;color:var(--soft);margin:0;max-width:560px;line-height:1.6}
.matcher-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.matcher-switch{font-size:12px;color:var(--text);display:flex;align-items:center;gap:8px;background:#263c4b;padding:10px 12px;border:1px solid var(--border);border-radius:10px;cursor:pointer}
.matcher-switch input{width:16px;height:16px;accent-color:#c5ee8e}
.matcher-summary{display:flex;gap:16px;flex-wrap:wrap;padding:14px 0 10px;margin-top:12px;border-top:1px solid #304c58}
.matcher-summary span{font-size:12px;color:#cbdde5}.matcher-summary strong{font-size:17px;color:#e3f4d2}
.matcher-panel>.hint{margin:3px 0 0;font-size:11px}
.matcher-current{border:1px solid #4a7764;border-radius:12px;padding:15px;background:#1c3a3c;margin-top:12px}
.matcher-current strong{display:block;font-size:16px}.matcher-current p{font-size:12px;color:#cbdde5;margin:7px 0 0}
.matcher-options{display:grid;gap:8px;margin:14px 0 0;max-height:380px;overflow:auto}
.matcher-option,.matcher-review-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #385566;padding:13px;border-radius:12px;background:#1d3042}
.matcher-option div,.matcher-review-row div{min-width:0}.matcher-option strong,.matcher-review-row strong{display:block;font-size:13px}
.matcher-option small,.matcher-review-row small{display:block;font-size:11px;color:var(--soft);margin-top:5px;line-height:1.35}
.matcher-option button,.matcher-review-row button{flex-shrink:0}
.cal-session.partial{border-left-color:#ffd181;background:#3b3440}.cal-session .cal-matched-tag{display:inline-block;border-color:#66c9ac;color:#ccf7d3;margin-top:5px}
@media(max-width:780px){.matcher-actions{width:100%}.matcher-head{gap:12px}.matcher-summary{gap:9px 16px}}
@media(max-width:430px){.matcher-actions .btn{flex:1 1 auto}.matcher-switch{flex:1 1 100%}.matcher-option,.matcher-review-row{align-items:flex-start;flex-direction:column}.matcher-option button,.matcher-review-row button{width:100%}}
