/* Shared presentation layer: black, green, clear hierarchy and flexible actions. */
:root{--cs-ink:#101c18;--cs-line:#dce5df;--cs-soft:#f4f7f4;--cs-accent:#c4ed65}
.cs-account-layout,.cs-library-page,.cs-discovery{color:var(--cs-ink)}
.cs-page-header{gap:24px;margin-bottom:28px;align-items:center}
.cs-page-header h1{line-height:1.12;letter-spacing:-.025em;overflow-wrap:anywhere}
.cs-eyebrow{letter-spacing:.12em;color:#41602e}
.cs-account-nav{background:#111d18;border:1px solid #24372b;box-shadow:0 8px 28px #101c1810;border-radius:18px;padding:12px}
.cs-account-nav a{color:#e6ede7;border-radius:10px;min-height:44px}
.cs-account-nav a:hover,.cs-account-nav a[aria-current=page],.cs-account-nav a.is-active{background:var(--cs-accent);color:#142015}
.cs-panel,.cs-filterbar,.cs-plan-row,.cs-exercise-card{border-color:var(--cs-line);box-shadow:0 4px 18px #101c1806}
.cs-btn,.csd-view-3d{white-space:normal;line-height:1.35;text-align:center}
.cs-btn i{flex-shrink:0}
.cs-btn:focus-visible,.csd-view-3d:focus-visible,.cs-session-tabs button:focus-visible{outline:3px solid #578324;outline-offset:3px}
.cs-exercise-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:24px;align-items:stretch}
.cs-exercise-card{display:flex;flex-direction:column;border-radius:18px;min-width:0;overflow:hidden;background:#fff}
.cs-exercise-card__visual{flex-shrink:0;background:#edf3ed;overflow:hidden}
.cs-exercise-card__visual img{object-fit:contain;display:block}
.cs-exercise-card__body{display:flex;flex-direction:column;align-items:stretch;flex:1;gap:12px;padding:20px;min-width:0}
.cs-exercise-card__body>.cs-tag{align-self:flex-start}
.cs-exercise-card h3{margin:0;font-size:1.2rem;line-height:1.35;text-transform:none;letter-spacing:-.015em;overflow-wrap:anywhere}
.cs-exercise-card .cs-personal-exercise__description{margin:0;line-height:1.6}
.cs-exercise-card .cs-meta{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px 14px}
.cs-exercise-card .cs-rating{margin:0;min-width:0;flex-wrap:wrap}
.cs-exercise-card .cs-rating__editor{flex-wrap:wrap}
.cs-exercise-card__body>.cs-btn,.cs-exercise-card__body>.csd-view-3d{width:100%;min-height:44px;margin:0;padding:11px 14px;box-sizing:border-box;font-size:.875rem;overflow-wrap:anywhere}
.cs-exercise-card .cs-favorite{position:static;align-self:flex-end;flex-shrink:0;width:44px;height:44px;margin:0}
.cs-personal-exercise{display:grid;grid-template-columns:160px minmax(0,1fr) minmax(180px,220px);gap:24px;align-items:center;padding:22px;border-radius:16px;background:#fff}
.cs-personal-exercise:not(:has(>.cs-personal-exercise__image)){grid-template-columns:minmax(0,1fr) minmax(180px,220px)}
.cs-personal-exercise__image{width:160px;height:110px;object-fit:contain;border:1px solid var(--cs-line);background:var(--cs-soft)}
.cs-personal-exercise h2{font-size:1.25rem;line-height:1.3;text-transform:none;margin:10px 0}
.cs-personal-exercise>.cs-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;width:100%;justify-content:flex-end;align-items:stretch}
.cs-personal-exercise>.cs-actions>button,.cs-personal-exercise>.cs-actions>a{flex:1 1 150px;min-width:0;width:auto!important;min-height:44px;padding:10px 12px;white-space:normal;font-size:.875rem;box-sizing:border-box}
.cs-personal-exercise>.cs-actions>.cs-icon-btn{flex:0 0 44px;width:44px!important}
.cs-library-item{min-width:0;border-color:var(--cs-line);border-radius:14px}
.cs-library-item__content{min-width:0}
.cs-library-item .cs-rating,.cs-library-item .cs-rating__editor{flex-wrap:wrap;min-width:0}
.cs-exercise-card h3,.cs-personal-exercise h2,.cs-library-item h3,.cs-session-summary__item h3{font-family:Inter,system-ui,sans-serif;font-weight:700;letter-spacing:-.025em}
.cs-session-summary--v2 .cs-session-summary__hero{background:linear-gradient(125deg,#101b16,#213828)}
.cs-session-summary--v2 .cs-session-summary__item{border-radius:16px}
.cs-library-item__content>.cs-btn,.cs-library-item__content>.csd-view-3d{max-width:100%;min-height:44px;height:auto;white-space:normal;box-sizing:border-box;overflow-wrap:anywhere}
.cs-filterbar{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));padding:18px;border-radius:16px;align-items:end}
.cs-filterbar input,.cs-filterbar select{width:100%;min-width:0;min-height:44px}
.cs-library-intro{max-width:78ch;line-height:1.7;color:#526157;margin:0 0 24px}
.cs-library-links{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 26px}
.cs-library-links a{padding:9px 14px;border:1px solid var(--cs-line);border-radius:24px;color:#27412d;background:#fff;text-decoration:none;font-size:.875rem}
.cs-library-links a:hover{background:#ecf5de;border-color:#84a858}
.cs-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:32px 0}
.cs-pagination .page-numbers{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;box-sizing:border-box;border:1px solid var(--cs-line);border-radius:10px;text-decoration:none;color:var(--cs-ink);background:#fff}
.cs-pagination .current{background:var(--cs-ink);color:var(--cs-accent)}
.cs-session-summary__hero{border-radius:20px;background:#122019;color:#fff;padding:28px;border:1px solid #31452e}
.cs-session-summary__hero .cs-eyebrow,.cs-session-summary__hero small{color:#c4d4c2}
.cs-session-summary__hero h1{color:#fff;line-height:1.15;overflow-wrap:anywhere}
.cs-session-summary__hero-top{gap:24px;flex-wrap:wrap}
.cs-session-summary__hero-top>div{min-width:0}
.cs-session-summary__hero .cs-actions{display:flex;flex-wrap:wrap;gap:10px}
.cs-session-summary__hero .cs-btn{min-height:44px}
.cs-session-summary__facts{gap:18px}
.cs-session-summary__facts>div{min-width:0}
.cs-session-summary__facts strong{color:#fff;overflow-wrap:anywhere}
.cs-session-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:6px;margin:24px 0;background:#eaf0e8;border-radius:14px}
.cs-session-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;flex:1 1 140px;min-height:48px;padding:10px 14px;border:0;border-radius:10px;background:transparent;color:#3a4f40;font:600 .92rem/1.3 var(--cs-font-body, sans-serif);cursor:pointer}
.cs-session-tabs button[aria-selected=true]{background:#15241a;color:#d5f59a;box-shadow:0 3px 8px #10201014}
.cs-session-tabpanel{min-width:0;outline-offset:4px}
.cs-session-tabpanel[hidden]{display:none!important}
.cs-session-summary__item{border:1px solid var(--cs-line);border-radius:16px;box-shadow:0 4px 18px #101c1806}
.cs-session-summary__item-content{min-width:0}
.cs-session-summary__item-content h3{line-height:1.3;overflow-wrap:anywhere;text-transform:none}
.cs-session-summary__brief,.cs-session-summary__equipment{border:1px solid var(--cs-line);border-radius:16px}
@media(max-width:1100px){.cs-personal-exercise{grid-template-columns:120px minmax(0,1fr)}.cs-personal-exercise__image{width:120px}.cs-personal-exercise>.cs-actions{grid-column:1/-1}.cs-personal-exercise:not(:has(>.cs-personal-exercise__image)){grid-template-columns:minmax(0,1fr)}}
@media(max-width:620px){.cs-personal-exercise{grid-template-columns:minmax(0,1fr);gap:16px;padding:18px}.cs-personal-exercise__image{width:100%;height:180px}.cs-page-header{align-items:flex-start}.cs-session-summary__hero{padding:20px}.cs-session-summary__hero .cs-actions{width:100%}.cs-session-summary__hero .cs-actions>.cs-btn{flex:1 1 135px}.cs-session-tabs{gap:4px}.cs-session-tabs button{flex:1 1 90px;font-size:.8rem;padding:10px 5px;flex-direction:column}.cs-exercise-card__body{padding:18px}}
@media print{.cs-session-tabs{display:none!important}.cs-session-tabpanel[hidden]{display:block!important}.cs-session-summary__hero{background:#fff;color:#111}.cs-session-summary__hero h1,.cs-session-summary__facts strong{color:#111}}
