/* Scoped layout repairs */
.club-roster>.btn{margin-top:18px;width:100%;white-space:normal}.club-roster .eyebrow{display:block;letter-spacing:1.4px;font-size:clamp(10px,1vw,12px);overflow-wrap:anywhere}.club-quick-links{flex-wrap:wrap}.club-quick-links a{min-width:90px}.calorie-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.calorie-layout>.panel{min-width:0}.calorie-basket .chip-row{display:grid;grid-template-columns:1fr;gap:10px}.calorie-basket .btn{width:100%;white-space:normal;padding:14px 12px;min-width:0;font-size:13px}.basket-row{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;gap:10px}.basket-row>label{grid-column:2;width:145px;max-width:100%;justify-self:start}.basket-row>button{grid-column:3;grid-row:1;min-width:28px;min-height:32px}.basket-row .number-control{width:100%;min-width:0;display:flex;gap:4px;padding:5px}.basket-row .number-control button{width:30px;height:32px;flex:0 0 30px}.basket-row .number-control input{width:0;min-width:0;flex:1;padding:5px 0;font-size:15px}.basket-row b{overflow-wrap:anywhere}.calorie-total strong{font-size:clamp(38px,4vw,65px);overflow-wrap:anywhere;letter-spacing:-1px}.food-tile>span:nth-child(2){min-width:0;overflow-wrap:anywhere}.food-tile strong{flex-shrink:0}.food-tile strong small{display:block;font-size:8px}.club-roster p,.club-roster strong{overflow-wrap:anywhere}#club-item,#custom-food,#room-form,#video-form,#category-form{display:grid;gap:16px}#dialog textarea{width:100%;min-height:100px;padding:14px;border:1px solid #b9ebc43b;border-radius:14px;background:#0c2922;color:#e9f6ed;font:inherit;resize:vertical}#dialog .form-grid>*{min-width:0}#dialog .number-control input{min-width:0;width:0;flex:1}#dialog .number-control{max-width:100%}#nav a[href="#trainer"],#nav a[href="#studio"],#nav a[href="#room"]{display:none}
.trainer-grid,.room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.trainer-card,.room-card{min-width:0;padding:20px;overflow:hidden}.trainer-cover,.room-art{height:165px;position:relative;display:flex;align-items:center;justify-content:center;isolation:isolate;background:radial-gradient(ellipse at 90% 10%,#bcff5e42,transparent 65%),linear-gradient(140deg,#1f4935,#08251c);border:1px solid #c1ec9630;border-radius:20px;overflow:hidden}.trainer-cover:after,.room-art:after{content:'';position:absolute;inset:-40%;background:repeating-linear-gradient(120deg,transparent 0 65px,#bbfd7820 66px 67px,transparent 68px 110px);z-index:-1}.trainer-cover>span,.room-art>span{position:absolute;top:15px;right:17px;font:700 10px Arial;letter-spacing:2px;color:#d9ffae}.trainer-cover>svg,.room-art>svg{width:65px;height:65px;color:#d3ff9770;transform:rotate(-18deg)}.trainer-cover>b,.room-art>b{position:absolute;bottom:-12px;left:12px;font:800 100px SportDigits,Arial;color:#d4ff9818}.trainer-cover.mint{background:radial-gradient(ellipse at top,#3ce4be40,transparent),#092d26}.trainer-cover.peach{background:radial-gradient(ellipse at top,#eac07330,transparent),#252d20}.trainer-card>.club-avatar{margin-top:-20px;position:relative;width:49px;height:49px;border:3px solid #163e2e}.trainer-card h2{margin:16px 0 8px;font-size:22px}.trainer-card p{color:#bdcdbd;font-size:13px}.trainer-card>small{display:block;color:#8fb4a0;margin:15px 0}.trainer-card>.btn{width:100%;margin-top:8px}.trainer-intro{display:flex;align-items:center;gap:28px;margin-bottom:30px}.trainer-intro p{color:#b4cbbb;line-height:2}.trainer-monogram{width:110px;height:125px;flex-shrink:0;display:grid;place-items:center;background:linear-gradient(135deg,#c9fa8050,#64debc18);border:1px solid #d2ffa552;border-radius:28px;font-size:55px;font-weight:700}.trainer-intro h2{font-size:32px;margin:12px 0}.room-meta{display:flex;justify-content:space-between;gap:10px;color:#a7cbb3;font-size:10px;margin:18px 0}.room-card h3{font-size:19px}.room-card p{color:#9fbca9;font-size:12px;line-height:1.9;min-height:45px}.room-price{font-size:19px;color:#e1ffc0;margin:20px 0}.room-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.room-buttons .btn{white-space:normal;flex:1;min-width:120px;padding:13px 15px}.room-hero{margin-bottom:24px;background:radial-gradient(ellipse at top left,#b6e96628,transparent 65%),#10392c}.room-hero h2{margin:20px 0;font-size:clamp(22px,3vw,34px)}.room-hero p{color:#bad2c1}.lesson-list{display:grid;gap:12px}.lesson-row{width:100%;display:flex;align-items:center;gap:22px;text-align:right;padding:22px;transition:transform .25s,border-color .25s}.lesson-row:hover{transform:translateY(-3px);border-color:#c5f68580}.lesson-row>strong{font:700 35px SportDigits,Arial;color:#d6fda6}.lesson-row>span:last-child{margin-right:auto;color:#c6f981}.lesson-row small{display:block;margin-top:8px;color:#9db9a7}.lesson-player{width:100%;max-height:60vh;border-radius:18px;background:#07150f}.video-placeholder{padding:70px 20px;text-align:center;border:1px solid #b7ed8033;border-radius:20px;background:linear-gradient(130deg,#234d31,#07261e);font-size:35px;color:#caff86}.video-placeholder p{font-size:18px}.video-placeholder small{font-size:12px;color:#a4bca7}.trainer-card,.room-card{animation:room-appear .45s both}.trainer-card:nth-child(2),.room-card:nth-child(2){animation-delay:.07s}.trainer-card:nth-child(3){animation-delay:.14s}@keyframes room-appear{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:1200px){.trainer-grid,.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calorie-layout{grid-template-columns:1fr}.calorie-basket{position:static}.calorie-basket .chip-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.trainer-grid,.room-grid{grid-template-columns:1fr}.trainer-intro{align-items:flex-start;flex-direction:column;padding:22px}.trainer-intro h2{font-size:26px}.trainer-monogram{width:75px;height:80px;font-size:38px}.room-hero{padding:22px}.lesson-row{gap:12px;padding:18px}.lesson-row b{font-size:13px}.calorie-basket .chip-row{grid-template-columns:1fr}.club-quick-links a{font-size:10px}.food-tile{padding:10px 8px;gap:6px}.food-tile b{font-size:11px}.food-tile strong{font-size:18px}}
@media(prefers-reduced-motion:reduce){.trainer-card,.room-card,.lesson-row{animation:none;transition:none}}
