.profile-stats-row{display:grid;grid-template-columns:1fr;gap:var(--space-l)}@media (min-width:64rem){.profile-stats-row{grid-template-columns:1fr 1fr}}.profile-header__container{display:flex;gap:var(--space-xl);align-items:flex-start}.profile-header__avatar-section{position:relative}.profile-header__avatar{width:9.6rem;height:9.6rem}.profile-header__status-badges{position:absolute;top:-.4rem;right:-.4rem;display:flex;gap:var(--space-xs)}.profile-header__status-badge{width:var(--icon-lg);height:var(--icon-lg);border-radius:50%;display:grid;place-items:center}.profile-header__status-badge--verified{background-color:var(--info-subtle)}.profile-header__status-badge--admin{background-color:var(--primary)}.profile-header__status-badge-icon{color:white}.profile-header__info{flex:1;display:flex;flex-direction:column;gap:var(--space-m)}.profile-header__name-row{align-items:center;margin-bottom:var(--space-xs)}.profile-header__badges,.profile-header__name-row{display:flex;gap:var(--space-xs)}.profile-header__bio{max-width:80rem;line-height:1.75}.profile-header__details{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:var(--space-s);font-size:var(--t-s);color:var(--color-muted)}.profile-header__detail{display:flex;align-items:center;gap:var(--space-xs)}.profile-header__social{display:flex;gap:var(--space-m);padding-top:var(--space-xs)}.profile-header__social-link{display:flex;align-items:center;gap:var(--space-xs);color:var(--color-muted);transition:color var(--transition-base)}.profile-header__social-link:hover{color:var(--primary)}.profile-header__actions{display:flex;gap:var(--space-xs)}.profile-section{margin-top:var(--space-2xl)}.profile-setting-item{padding:var(--space-m);display:flex;justify-content:space-between;align-items:center;border-radius:var(--radius-l);border:1px solid var(--border)}.profile-setting-item__content{display:flex;flex-direction:column;gap:var(--space-2xs)}.profile-setting-item__title{font-weight:500}.profile-setting-item__description{font-size:var(--t-s);color:var(--color-muted)}.profile-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:var(--space-s)}.profile-action-button{padding:var(--space-m);height:auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.profile-badges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--space-xs)}.profile-badge-item{background-color:var(--surface-subtle);padding:var(--space-m);border-radius:var(--radius-m);display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.profile-badge-item__icon-wrapper{width:4.8rem;height:4.8rem;background:linear-gradient(to right,var(--warning),var(--error));border-radius:50%;display:grid;place-items:center;margin-bottom:var(--space-xs)}.profile-badge-item__icon{color:white}.profile-badge-item__name{font-size:var(--t-s);font-weight:500;text-align:center;text-transform:capitalize}.profile-header__identity{flex:1}.profile-header__name{font-size:var(--t-2xl);font-weight:700;color:var(--fg)}.profile-header__username{font-size:var(--t-m);color:var(--fg-muted)}.profile-header__detail-label{color:var(--fg-muted);font-size:var(--t-s)}.profile-header__detail-value{color:var(--fg);font-size:var(--t-s)}.profile-header__link{color:var(--primary);text-decoration:none;font-size:var(--t-s);transition:color var(--transition-base)}.profile-header__link:hover{color:var(--primary-hover);text-decoration:underline}.workout-timeline{background-color:var(--surface);border-radius:var(--radius-l);padding:var(--space-l);border:1px solid var(--border)}.workout-timeline--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-m);padding:var(--space-2xl);text-align:center}.workout-timeline__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-l)}.workout-timeline__title{font-size:var(--t-xl);font-weight:600;color:var(--fg)}.workout-timeline__count{font-size:var(--t-s);color:var(--fg-muted)}.workout-timeline__list{display:flex;flex-direction:column;gap:var(--space-m)}.workout-timeline__entry{display:flex;gap:var(--space-m);padding:var(--space-m);border-radius:var(--radius-m);background-color:var(--surface-elevated);transition:background-color var(--transition-base);text-decoration:none;color:inherit;overflow:hidden}.workout-timeline__entry:has(.workout-timeline__thumbnail){padding:0}.workout-timeline__entry:has(.workout-timeline__thumbnail) .workout-timeline__content{padding:var(--space-m) var(--space-m) var(--space-m) 0}.workout-timeline__entry:hover{background-color:var(--surface-hover)}.workout-timeline__entry--link:hover{cursor:pointer}.workout-timeline__thumbnail{position:relative;flex-shrink:0;width:14rem;height:100%;min-height:8rem;overflow:hidden;background-color:var(--surface-subtle)}.workout-timeline__thumbnail-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.workout-timeline__check{position:absolute;bottom:var(--space-xs);right:var(--space-xs);width:2.4rem;height:2.4rem;background-color:var(--success);border-radius:50%;display:grid;place-items:center;color:white;box-shadow:var(--shadow-s)}.workout-timeline__marker{flex-shrink:0;color:var(--success)}.workout-timeline__content{flex:1;min-width:0}.workout-timeline__header-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-s);margin-bottom:var(--space-xs)}.workout-timeline__class-title{font-size:var(--t-m);font-weight:500;color:var(--fg)}.workout-timeline__time{font-size:var(--t-s);color:var(--fg-muted);white-space:nowrap}.workout-timeline__meta{display:flex;flex-wrap:wrap;gap:var(--space-xs);align-items:center}.workout-timeline__duration{color:var(--fg-muted)}.workout-timeline__duration,.workout-timeline__intensity{display:flex;align-items:center;gap:var(--space-2xs);font-size:var(--t-s)}.workout-timeline__intensity{text-transform:capitalize}.workout-timeline__intensity--low{color:var(--info)}.workout-timeline__intensity--medium{color:var(--warning)}.workout-timeline__intensity--high{color:var(--error)}.workout-timeline__footer{margin-top:var(--space-m);text-align:center}.badge-grid{background-color:var(--surface);border-radius:var(--radius-l);padding:var(--space-l);border:1px solid var(--border)}.badge-grid--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-m);padding:var(--space-2xl);text-align:center}.badge-grid__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-l)}.badge-grid__title{font-size:var(--t-xl);font-weight:600;color:var(--fg)}.badge-grid__count{font-size:var(--t-s);color:var(--fg-muted)}.badge-grid__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:var(--space-m)}.badge-card{display:flex;gap:var(--space-m);padding:var(--space-m);border-radius:var(--radius-m);background-color:var(--surface-elevated);border:1px solid var(--border);transition:all var(--transition-base)}.badge-card--earned{background:linear-gradient(135deg,oklch(.95 .05 85),oklch(.92 .08 75));border-color:oklch(.75 .15 75)}.badge-card--earned .badge-card__name{color:oklch(.25 .02 60)}.badge-card--earned .badge-card__description{color:oklch(.4 .03 60)}.badge-card--earned:hover{background:linear-gradient(135deg,oklch(.92 .08 85),oklch(.88 .1 75));transform:translateY(-2px);box-shadow:0 4px 20px oklch(.7 .12 75/.3)}.badge-card--locked{opacity:.5}.badge-card__icon{flex-shrink:0;width:4.8rem;height:4.8rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-m);background:linear-gradient(135deg,oklch(.75 .15 75),oklch(.6 .18 60));color:oklch(.98 .02 90);box-shadow:0 2px 8px oklch(.5 .15 60/.4)}.badge-card--locked .badge-card__icon{background:var(--surface-subtle);color:var(--fg-muted)}.badge-card__image{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.badge-card__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-2xs)}.badge-card__name{font-size:var(--t-m);font-weight:500;color:var(--fg)}.badge-card__description{font-size:var(--t-s);color:var(--fg-muted);line-height:1.5}.badge-card__date{font-size:var(--t-xs);font-weight:500;color:oklch(.55 .14 60);margin-top:var(--space-2xs)}.badge-grid__footer{margin-top:var(--space-m);text-align:center}.category-breakdown{background-color:var(--surface);border-radius:var(--radius-l);padding:var(--space-l);border:1px solid var(--border);max-width:100%;overflow:hidden}.category-breakdown__favorite{display:flex;align-items:center;gap:var(--space-m);padding:var(--space-m);margin-bottom:var(--space-l);background-color:var(--warning-subtle);border-radius:var(--radius-m);border:1px solid var(--warning)}.category-breakdown__favorite-icon{width:3.2rem;height:3.2rem;color:var(--warning);flex-shrink:0}.category-breakdown__favorite-content{display:flex;flex-direction:column;gap:var(--space-3xs)}.category-breakdown__favorite-label{font-size:var(--t-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--warning)}.category-breakdown__favorite-value{font-size:var(--t-xl);font-weight:700;color:var(--fg)}.category-breakdown--empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-m);padding:var(--space-2xl);text-align:center}.category-breakdown__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-l)}.category-breakdown__title{font-size:var(--t-xl);font-weight:600;color:var(--fg)}.category-breakdown__total{font-size:var(--t-s);color:var(--fg-muted)}.category-breakdown__list{display:flex;flex-direction:column;gap:var(--space-m)}.category-breakdown__item{display:flex;flex-direction:column;gap:var(--space-xs)}.category-breakdown__label-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-s)}.category-breakdown__category-name{font-size:var(--t-m);font-weight:500;color:var(--fg)}.category-breakdown__count{font-size:var(--t-s);color:var(--fg-muted);white-space:nowrap}.category-breakdown__bar-container{position:relative;width:100%;height:.8rem;background-color:var(--surface-subtle);border-radius:var(--radius-full);overflow:hidden}.category-breakdown__bar{height:100%;border-radius:var(--radius-full);transition:width .3s ease}.category-breakdown__bar--primary{background-color:var(--primary)}.category-breakdown__bar--success{background-color:var(--success)}.category-breakdown__bar--warning{background-color:var(--warning)}.category-breakdown__bar--error{background-color:var(--error)}.category-breakdown__bar--info{background-color:var(--info)}.category-breakdown__bar--neutral{background-color:var(--fg-muted)}.category-breakdown__time{font-size:var(--t-xs);color:var(--fg-muted)}.intensity-heatmap{background-color:var(--surface);border-radius:var(--radius-l);padding:var(--space-xl);border:1px solid var(--border);max-width:100%;overflow:visible}.intensity-heatmap__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-l)}.intensity-heatmap__title{font-size:var(--t-xl);font-weight:600;color:var(--fg)}.intensity-heatmap__subtitle{font-size:var(--t-s);color:var(--fg-muted)}.intensity-heatmap__grid{display:flex;flex-direction:column;gap:var(--space-m);overflow:visible}.intensity-heatmap__chart{display:flex;gap:var(--space-s);justify-content:flex-start;overflow:visible;max-width:100%}.intensity-heatmap__day-labels{display:flex;flex-direction:column;gap:.4rem;padding-top:0;flex-shrink:0}.intensity-heatmap__day-label{font-size:var(--t-s);color:var(--fg-muted);height:2.8rem;line-height:2.8rem;text-align:right;padding-right:var(--space-xs)}.intensity-heatmap__day-label--hidden{visibility:hidden}.intensity-heatmap__cell--empty{background-color:transparent;pointer-events:none}.intensity-heatmap__cells{display:flex;gap:.4rem;overflow:visible;padding:var(--space-s);margin:calc(-1 * var(--space-s))}.intensity-heatmap__week{display:grid;grid-template-rows:repeat(7,2.8rem);gap:.4rem}.intensity-heatmap__cell{width:2.8rem;height:2.8rem;border-radius:var(--radius-m);background-color:var(--surface-subtle);transition:all var(--transition-base);cursor:pointer;border:1px solid transparent}.intensity-heatmap__cell:hover{transform:scale(1.3);box-shadow:var(--shadow-m);z-index:1}.intensity-heatmap__cell--none{background-color:var(--surface-subtle);border-color:var(--border)}.intensity-heatmap__cell--low{background-color:oklch(.85 .12 145);border-color:oklch(.75 .15 145)}.intensity-heatmap__cell--medium{background-color:oklch(.65 .2 145);border-color:oklch(.55 .22 145)}.intensity-heatmap__cell--high{background-color:oklch(.45 .22 145);border-color:oklch(.35 .2 145)}.intensity-heatmap__legend{display:flex;align-items:center;justify-content:center;gap:var(--space-s);padding-top:var(--space-s)}.intensity-heatmap__legend-scale{display:flex;gap:.4rem}.intensity-heatmap__tooltip{background-color:var(--surface-elevated);color:var(--fg);padding:var(--space-xs) var(--space-s);border-radius:var(--radius-s);font-size:var(--t-s);box-shadow:var(--shadow-m);z-index:var(--z-tooltip);border:1px solid var(--border);animation:tooltip-fade-in .15s ease-out}.intensity-heatmap__tooltip-arrow{fill:var(--surface-elevated)}@keyframes tooltip-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (max-width:767px){.profile-header{background:linear-gradient(135deg,var(--surface-elevated) 0,var(--surface) 50%,var(--surface-elevated) 100%);border-radius:var(--radius-l);padding:var(--space-l);margin-bottom:var(--space-m);border:1px solid var(--border)}.profile-header__container{flex-direction:column;align-items:center;text-align:center;gap:var(--space-m)}.profile-header__avatar-section{position:relative}.profile-header__avatar-section:before{content:"";position:absolute;inset:-4px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary),var(--success),var(--warning));z-index:-1;opacity:.8}.profile-header__avatar{width:7.2rem;height:7.2rem}.profile-header__identity{display:flex;flex-direction:column;align-items:center;gap:var(--space-s);width:100%}.profile-header__identity .stack-tight{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);width:100%}.profile-header__identity .cluster{flex-wrap:wrap;justify-content:center}.profile-header__name{font-size:var(--t-xl);line-height:1.2}.profile-header__details{display:none}.profile-header__username{font-size:var(--t-s)}.profile-header__bio{font-size:var(--t-s);line-height:1.5;max-width:100%}.profile-header__social{justify-content:center;gap:var(--space-s);padding-top:0}.profile-header__social-link{font-size:var(--t-s)}.profile-header__identity .btn{width:100%;justify-content:center}.badge-grid__list{grid-template-columns:1fr}.intensity-heatmap__cells{overflow:visible;padding:var(--space-xs);margin:calc(-1 * var(--space-xs))}.intensity-heatmap{padding:var(--space-m)}.intensity-heatmap__day-label{font-size:var(--t-xs);height:1.6rem;line-height:1.6rem}.intensity-heatmap__week{grid-template-rows:repeat(7,1.6rem);gap:.25rem}.intensity-heatmap__cell{width:1.6rem;height:1.6rem;border-radius:var(--radius-s)}.intensity-heatmap__cells,.intensity-heatmap__day-labels{gap:.25rem}.category-breakdown{padding:var(--space-m)}.category-breakdown__favorite{padding:var(--space-s);gap:var(--space-s)}.category-breakdown__favorite-icon{width:2.4rem;height:2.4rem}.category-breakdown__favorite-value{font-size:var(--t-l)}.workout-timeline__thumbnail{width:10rem;min-height:6rem}}.class__title-wrapper{display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--space-s);align-items:flex-start;justify-content:space-between}.class__title-wrapper h1{font-size:var(--text-4xl);flex:1}.class__title-wrapper .action-buttons{display:flex;flex-direction:row;flex-wrap:nowrap;gap:var(--space-s)}.class-hero,.class-hero__media{position:relative}.class-hero__skeleton{position:absolute;inset:0;border-radius:inherit;z-index:1;transition:opacity .3s ease}.class-hero__skeleton--hidden{opacity:0;pointer-events:none}.class-hero__player{position:relative;z-index:2;width:100%;height:100%}.class-hero__badges .skeleton{min-width:6.4rem;height:calc(var(--t-s) + var(--space-4xs) * 2)}.class-hero__coach .skeleton--line{height:var(--t-s)}@media (max-width:1023px){section.class-hero{padding-top:0;padding-inline:0;border:none;outline:none}.class-hero>.container{max-width:100%;border:none;outline:none}.class-hero .card.class-hero__media,.class-hero .card.class-hero__media .card__media{width:100%;border:none;border-radius:0;outline:none;box-shadow:none}}@media (max-width:767px){.class__title-wrapper h1{font-size:var(--text-2xl)}}.table-wrapper:has(.permissions-matrix){padding:var(--space-m)}.permissions-matrix{border-collapse:separate;border-spacing:0;width:100%}.permissions-matrix .permissions-matrix__row--alt .permissions-matrix__cell,.permissions-matrix .permissions-matrix__row--alt .permissions-matrix__row-head{background:var(--surface-subtle)}.permissions-matrix .permissions-matrix__corner,.permissions-matrix .permissions-matrix__group-head,.permissions-matrix .permissions-matrix__row-head{position:sticky;left:0;background:var(--surface);text-align:left;width:auto}.permissions-matrix .permissions-matrix__corner{z-index:3}.permissions-matrix .permissions-matrix__group-head,.permissions-matrix .permissions-matrix__row-head{z-index:2}.permissions-matrix .permissions-matrix__col-head{height:16rem;vertical-align:bottom;text-align:center;width:4rem;min-width:4rem;max-width:4rem;position:relative}.permissions-matrix .permissions-matrix__col-head>div{transform:rotate(-50deg);transform-origin:left bottom;white-space:nowrap;position:absolute;bottom:var(--space-xs);left:50%;font-size:var(--t-s);line-height:1.2}.permissions-matrix .permissions-matrix__col-head--owner>div{color:var(--front-subtle);font-style:italic}.permissions-matrix .permissions-matrix__cell{width:4rem;min-width:4rem;max-width:4rem;text-align:center}*{border-color:var(--border);outline-color:var(--fg);outline-width:.5px}body{background-color:var(--bg);font-feature-settings:"rlig" 1,"calt" 1}.glass{background:rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .glass{background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1)}html{transition:background-color var(--transition-normal),color var(--transition-normal)}.notifications{padding:0!important;background:transparent!important}