.btn{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-s) var(--space-m);border-radius:var(--radius-s);font-size:var(--text-button);font-weight:500;line-height:1;text-transform:uppercase;letter-spacing:.05em;text-decoration:none;border:none;cursor:pointer;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all var(--transition-fast);position:relative;outline:none;background-color:var(--btn-bg);color:var(--btn-text);border:1px solid var(--btn-border);box-shadow:var(--shadow-xs);&:hover{background-color:var(--btn-bg-hover);color:var(--btn-text-hover);border-color:var(--btn-border-hover)}&:active{transform:scale(.98)}&.w-full{width:100%}}.btn:disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.btn:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.btn:active{transform:scale(.98)}.btn svg{width:1.6rem;height:1.6rem;flex-shrink:0}.btn--primary{background-color:var(--btn-bg);color:var(--btn-text);border:1px solid var(--btn-border);box-shadow:var(--shadow-xs)}.btn--primary:hover{background-color:var(--btn-bg-hover);color:var(--btn-text-hover);border-color:var(--btn-border-hover);box-shadow:var(--shadow-s)}.btn--secondary{background-color:var(--secondary);color:var(--secondary-foreground);box-shadow:var(--shadow-xs)}.btn--secondary:hover{background-color:var(--secondary-muted);box-shadow:var(--shadow-s)}.btn--outline{--btn-text:var(--fg);--btn-border:var(--fg);--btn-border-hover:var(--fg);--btn-bg:transparent}.btn--outline:hover{--btn-text-hover:var(--fg);background-color:var(--btn-bg-hover);color:var(--btn-text-hover);border-color:var(--btn-border-hover)}.btn.btn--white{--btn-bg:oklch(1 0 0);--btn-text:oklch(0.20 0 0);--btn-border:oklch(1 0 0)}.btn--outline.btn--white:not(:hover){background-color:transparent;color:oklch(1 0 0)}.btn--ghost{background-color:transparent;color:var(--fg);border:none}.btn--destructive{background-color:var(--error);color:var(--error-foreground);box-shadow:var(--shadow-xs)}.btn--destructive:hover{background-color:var(--error-muted);box-shadow:var(--shadow-s)}.btn--success{background-color:var(--success);color:var(--success-foreground);box-shadow:var(--shadow-xs)}.btn--success:hover{background-color:var(--success-muted);box-shadow:var(--shadow-s)}.btn--link{background-color:transparent;color:var(--primary);text-decoration:underline;text-underline-offset:.2em;padding:0;border-radius:0;border:none}.btn--link:hover{color:var(--primary-muted)}.btn--link:active{transform:none}.btn--xs{padding:var(--space-3xs) var(--space-xs);font-size:var(--t-xs);gap:var(--space-4xs)}.btn--xs svg{width:1.2rem;height:1.2rem}.btn--sm{padding:var(--space-xs) var(--space-s);font-size:var(--t-s);gap:var(--space-3xs)}.btn--sm svg{width:1.4rem;height:1.4rem}.btn--md{padding:var(--space-s) var(--space-m);font-size:var(--text-button)}.btn--lg{padding:var(--space-m) var(--space-l);font-size:var(--t-l);gap:var(--space-s)}.btn--lg svg{width:1.8rem;height:1.8rem}.btn--xl{padding:var(--space-l) var(--space-xl);font-size:var(--t-xl);gap:var(--space-s)}.btn--xl svg{width:2rem;height:2rem}.btn--pill{border-radius:var(--radius-full)}.btn--icon{padding:var(--space-s);aspect-ratio:1}.btn--icon svg{width:1.8rem;height:1.8rem}.btn--icon.btn--sm{padding:var(--space-xs)}.btn--icon.btn--sm svg{width:1.6rem;height:1.6rem}.btn--icon.btn--lg{padding:var(--space-m)}.btn--icon.btn--lg svg{width:2rem;height:2rem}.btn--loading{position:relative;pointer-events:none;color:transparent}.btn--loading:after{content:"";position:absolute;width:1.6rem;height:1.6rem;top:50%;left:50%;margin-left:-.8rem;margin-top:-.8rem;border-radius:50%;border:2px solid;border-top:2px solid transparent;animation:spin .6s linear infinite}.btn--full{width:100%}.btn--auto{width:auto}.btn-group{display:flex;gap:var(--space-s)}.btn-group--vertical{flex-direction:column}.btn-group--attached .btn{border-radius:0}.btn-group--attached .btn:first-child{border-top-left-radius:var(--radius-s);border-bottom-left-radius:var(--radius-s)}.btn-group--attached .btn:last-child{border-top-right-radius:var(--radius-s);border-bottom-right-radius:var(--radius-s)}.btn-group--attached.btn-group--vertical .btn:first-child{border-top-left-radius:var(--radius-s);border-top-right-radius:var(--radius-s);border-bottom-left-radius:0}.btn-group--attached.btn-group--vertical .btn:last-child{border-bottom-left-radius:var(--radius-s);border-bottom-right-radius:var(--radius-s);border-top-right-radius:0}.input{display:flex;width:100%;padding:var(--space-s) var(--space-m);font-size:var(--t-m);line-height:1.5;color:var(--fg);background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);transition:all var(--transition-fast);outline:none}.input::placeholder{color:var(--fg-muted)}.input:hover{border-color:var(--border-strong)}.input:focus{border-color:var(--primary);box-shadow:0 0 0 3px hsla(from var(--primary) h s l/.1)}.input:disabled{opacity:.5;cursor:not-allowed;background-color:var(--surface-subtle)}.input--sm{padding:var(--space-xs) var(--space-s);font-size:var(--t-s)}.input--lg{padding:var(--space-m) var(--space-l);font-size:var(--t-l)}.input--error,.input--error:focus{border-color:var(--error)}.input--error:focus{box-shadow:0 0 0 3px hsla(from var(--error) h s l/.1)}.input--success{border-color:var(--success)}.input-group{display:flex;gap:var(--space-xs);align-items:stretch}.input-group .input{flex:1 1}.input-wrapper{position:relative;display:flex;align-items:center}.input-wrapper__icon{position:absolute;left:var(--space-m);color:var(--fg-muted);pointer-events:none}.input-wrapper__icon svg{width:1.8rem;height:1.8rem}.input-wrapper .input{padding-left:calc(var(--space-m) * 2 + 1.8rem)}.form-field{display:flex;flex-direction:column;gap:var(--space-xs)}.label{display:block;font-size:var(--t-s);font-weight:500;color:var(--fg)}.label--required:after{content:" *";color:var(--error)}.input-helper{display:block;font-size:var(--t-s);color:var(--fg-subtle)}.input-helper--error{color:var(--error)}.textarea{min-height:10rem;resize:vertical;font-family:inherit}.input-with-icon{position:relative;display:flex;align-items:center;width:100%}.input-with-icon__icon{position:absolute;left:var(--space-m);top:50%;transform:translateY(-50%);color:var(--fg-muted);pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:1}.input-with-icon__icon svg{width:1.8rem;height:1.8rem}.input-with-icon .input{padding-left:calc(var(--space-m) * 2 + 2rem)}.input-with-icon--right .input-with-icon__icon{left:auto;right:var(--space-m)}.input-with-icon--right .input{padding-left:var(--space-m);padding-right:calc(var(--space-m) * 2 + 2rem)}.input-with-icon--sm .input-with-icon__icon{left:var(--space-s)}.input-with-icon--sm .input-with-icon__icon svg{width:1.6rem;height:1.6rem}.input-with-icon--sm .input{padding-left:calc(var(--space-s) * 2 + 1.6rem)}.input-with-icon--lg .input-with-icon__icon{left:var(--space-l)}.input-with-icon--lg .input-with-icon__icon svg{width:2rem;height:2rem}.input-with-icon--lg .input{padding-left:calc(var(--space-l) * 2 + 2.4rem)}.input-otp__container{display:flex;align-items:center;gap:var(--space-xs)}.input-otp__container:has(:disabled){opacity:.5}.input-otp__input:disabled{cursor:not-allowed}.input-otp__group,.input-otp__slot{display:flex;align-items:center}.input-otp__slot{position:relative;justify-content:center;height:3.6rem;width:3.6rem;border:1px solid var(--border);background-color:var(--surface);font-size:var(--t-m);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.input-otp__slot:first-child{border-top-left-radius:var(--radius-s);border-bottom-left-radius:var(--radius-s)}.input-otp__slot:last-child{border-top-right-radius:var(--radius-s);border-bottom-right-radius:var(--radius-s)}.input-otp__slot:not(:first-child){border-left-width:0}.input-otp__slot[data-active=true]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-subtle);z-index:1}.input-otp__caret-wrapper{pointer-events:none;position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.input-otp__caret{height:1.6rem;width:1px;background-color:var(--fg);animation:input-otp-caret-blink 1s infinite}.input-otp__separator{display:flex;align-items:center;color:var(--fg-muted)}@keyframes input-otp-caret-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.alert{padding:var(--space-m);border-radius:var(--radius-s);border:1px solid;display:flex;gap:var(--space-s)}.alert__icon{flex-shrink:0;width:2rem;height:2rem}.alert__content{flex:1 1}.alert__title{font-weight:600;margin-bottom:var(--space-xs)}.alert__description{font-size:var(--t-s);opacity:.9}.alert--info{background-color:var(--info-subtle);border-color:var(--info);color:var(--info)}.alert--success{background-color:var(--success-subtle);border-color:var(--success);color:var(--success)}.alert--warning{background-color:var(--warning-subtle);border-color:var(--warning);color:var(--warning)}.alert--error{background-color:var(--error-subtle);border-color:var(--error);color:var(--error)}.badge{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-4xs);padding:var(--space-3xs) var(--space-xs);border-radius:var(--radius-s);font-size:var(--t-xs);font-weight:500;line-height:1;white-space:nowrap;border:1px solid transparent;transition:all var(--transition-fast);color:var(--text-body);background-color:var(--surface-elevated)}.badge svg{width:1.2rem;height:1.2rem;flex-shrink:0}.badge--default{background-color:var(--surface-elevated);color:var(--fg);border-color:var(--border)}.badge--primary{background-color:var(--primary);color:var(--primary-foreground)}.badge--secondary{background-color:var(--secondary);color:var(--secondary-foreground)}.badge--success{background-color:var(--success);color:var(--success-foreground)}.badge--warning{background-color:var(--warning);color:var(--warning-foreground)}.badge--error{background-color:var(--error);color:var(--error-foreground)}.badge--info{background-color:var(--info);color:var(--info-foreground)}.badge--primary-subtle{background-color:var(--primary-subtle);color:var(--primary);border-color:var(--primary)}.badge--success-subtle{background-color:var(--success-subtle);color:var(--success);border-color:var(--success)}.badge--warning-subtle{background-color:var(--warning-subtle);color:var(--warning);border-color:var(--warning)}.badge--error-subtle{background-color:var(--error-subtle);color:var(--error);border-color:var(--error)}.badge--info-subtle{background-color:var(--info-subtle);color:var(--info);border-color:var(--info)}.badge--primary-soft{background-color:hsla(from var(--primary) h s l/.1);color:var(--primary);border-color:transparent}.badge--success-soft{background-color:hsla(from var(--success) h s l/.1);color:var(--success);border-color:transparent}.badge--warning-soft{background-color:hsla(from var(--warning) h s l/.1);color:var(--warning);border-color:transparent}.badge--error-soft{background-color:hsla(from var(--error) h s l/.1);color:var(--error);border-color:transparent}.badge--info-soft{background-color:hsla(from var(--info) h s l/.1);color:var(--info);border-color:transparent}.badge--outline{background-color:transparent;border:1px solid var(--border);color:var(--fg-subtle);border-color:var(--border)}.badge--outline-primary{background-color:transparent;color:var(--primary);border-color:var(--primary)}.badge--outline-success{background-color:transparent;color:var(--success);border-color:var(--success)}.badge--outline-warning{background-color:transparent;color:var(--warning);border-color:var(--warning)}.badge--outline-error{background-color:transparent;color:var(--error);border-color:var(--error)}.badge--outline-info{background-color:transparent;color:var(--info);border-color:var(--info)}.badge.difficulty-1{background-color:var(--difficulty-1-subtle);color:var(--difficulty-1);border:1px solid var(--difficulty-1)}.badge.difficulty-2{background-color:var(--difficulty-2-subtle);color:var(--difficulty-2);border:1px solid var(--difficulty-2)}.badge.difficulty-3{background-color:var(--difficulty-3-subtle);color:var(--difficulty-3);border:1px solid var(--difficulty-3)}.badge.difficulty-4{background-color:var(--difficulty-4-subtle);color:var(--difficulty-4);border:1px solid var(--difficulty-4)}.badge.difficulty-5{background-color:var(--difficulty-5-subtle);color:var(--difficulty-5);border:1px solid var(--difficulty-5)}.badge--xs{padding:.15rem .4rem;font-size:1rem}.badge--xs svg{width:.9rem;height:.9rem}.badge--sm{padding:.2rem .5rem;font-size:1.1rem}.badge--sm svg{width:1rem;height:1rem}.badge--lg{padding:.3rem .8rem;font-size:1.3rem}.badge--lg svg{width:1.4rem;height:1.4rem}.badge--dot{padding-left:.5rem}.badge--dot:before{content:"";width:.6rem;height:.6rem;border-radius:50%;background-color:currentColor}.badge--category,.badge--category-cardio{background-color:var(--category-cardio);color:white}.badge--category-strength{background-color:var(--category-strength);color:white}.badge--category-yoga{background-color:var(--category-yoga);color:white}.badge--category-pilates{background-color:var(--category-pilates);color:white}.badge--category-hiit{background-color:var(--category-hiit);color:white}.badge--category-flexibility{background-color:var(--category-flexibility);color:white}.badge--category-recovery{background-color:var(--category-recovery);color:white}.badge--category-dance{background-color:var(--category-dance);color:white}.badge--interactive{cursor:pointer}.badge--interactive:hover{opacity:.9;transform:scale(1.05)}.badge--interactive:active{transform:scale(.95)}.badge--removable{padding-right:.3rem}.badge__remove{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;border-radius:50%;background:none;border:none;cursor:pointer;color:currentColor;opacity:.7;transition:opacity var(--transition-fast)}.badge__remove:hover{opacity:1;background-color:rgba(0,0,0,.1)}.badge__remove svg{width:1rem;height:1rem}.badge--tiny-new{display:inline-flex;align-items:center;justify-content:center;padding:.1rem .4rem;border-radius:var(--radius-xs);font-size:1rem;font-weight:600;line-height:1;text-transform:uppercase;letter-spacing:.05em;background-color:var(--primary);color:var(--primary-foreground);border:none;margin-left:var(--space-2xs);vertical-align:middle}.card{position:relative;display:flex;flex-direction:column;gap:var(--card-gap);padding:var(--card-padding);background-color:var(--surface);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:0 1px 2px 0 rgba(0,0,0,.05);transition:all var(--transition-base);font-size:var(--t-s)}.card h3,.card__title{font-size:var(--card-title-size);font-weight:600;line-height:1.3;margin:0}.card__title.text-l{font-size:var(--t-l)}.card__description{font-size:var(--t-s);line-height:1.5;margin:0}.card--default{gap:var(--card-gap);padding:var(--card-padding)}.card--l{gap:var(--space-m);padding:var(--space-m)}.card--xl{gap:var(--space-l);padding:var(--space-l)}.card--2xl{gap:var(--space-xl);padding:var(--space-xl)}.card--media{position:relative;padding:0;gap:0;overflow:hidden;height:100%}.card--compact{gap:var(--space-xs);padding:var(--space-xs);border-radius:var(--radius-s)}.card--elevated{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.card--subtle{background-color:var(--surface-subtle);border:none;box-shadow:none}.card--warning{background-color:var(--warning-subtle);border-left:4px solid var(--warning);border-radius:var(--radius-m)}.card .card--kpi,.card--kpi{--align-items:center;--align-content:center;--justify-items:center;--justify-content:center;--text-align:center;align-items:var(--align-items,initial);align-content:var(--align-content,initial);justify-items:var(--justify-items,initial);justify-content:var(--justify-content,initial);text-align:var(--text-align,inherit)}.card--kpi-unified{display:flex;flex-direction:row;gap:var(--space-m);padding:var(--space-m) var(--space-m);align-items:center;justify-content:center}.card--kpi-unified__item{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);flex:1 1;min-width:0}.card--kpi-unified__divider{width:1px;height:40px;background-color:var(--border);flex-shrink:0}.card--kpi-unified__value{font-size:var(--t-2xl);font-weight:700;line-height:1;color:var(--fg)}.card--kpi-unified__label{font-size:var(--t-xs);color:var(--fg-muted);text-align:center}.card--kpi-unified__item .icon{width:2rem;height:2rem;color:var(--fg-muted);flex-shrink:0}@media (max-width:767px){.card--kpi-unified{width:100%;justify-content:center;border:0;padding:0}}.card--kpi-unified--compact{padding:var(--space-xs) var(--space-s);gap:var(--space-s)}.card--kpi-unified--compact .card--kpi-unified__value{font-size:var(--t-xl)}.card__header{display:flex;flex-direction:column;gap:var(--space-2xs)}.card__row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-m);gap:var(--space-m);background-color:var(--surface);border-radius:var(--radius-m);transition:background-color var(--transition-base)}.card__row:hover{background-color:var(--surface-subtle)}.card__content{flex-direction:column;gap:var(--space-xs)}.card--media .card__content,.card__content{display:flex;padding:var(--card-padding);flex:1 1}.card--media .card__content{flex-direction:column;justify-content:space-between}.card__footer{display:flex;align-items:center;gap:var(--space-s);padding-top:var(--space-s);border-top:1px solid var(--border)}.card__media{position:relative;width:100%;overflow:hidden;border-radius:var(--radius-m) var(--radius-m) 0 0}.card__media img,.card__media-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--transition-normal)}.card__progress{position:absolute;bottom:0;left:0;right:0;height:4px;background:rgba(0,0,0,.3);z-index:10}.card__progress-bar{height:100%;background:var(--action);transition:width .3s ease}.card--media:hover .card__media img,.card--media:hover .card__media-image{transform:scale(1.05)}.video-card--loading{pointer-events:none}.video-card--loading .card__media{background-color:transparent}.video-card .card__media{aspect-ratio:16/9;background-color:var(--surface-subtle)}.course-card .card__media{aspect-ratio:16/9;background-color:var(--surface-subtle)}.card__media-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(0,0,0,0) 0,rgba(0,0,0,.3));opacity:0;transition:opacity var(--transition-base);z-index:1}.card--media:hover .card__media-overlay{opacity:1}.card__play-button{opacity:0;transform:translateY(.5rem);transition:all var(--transition-base);z-index:2}.card--media:hover .card__play-button{opacity:1;transform:translateY(0)}.video-card__meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-s);font-size:var(--t-s);color:var(--fg-muted);margin-top:auto}.video-card__meta-item{display:flex;align-items:center;gap:var(--space-3xs)}.video-card__meta-item svg{width:1.4rem;height:1.4rem;flex-shrink:0}.card--interactive{cursor:pointer}.card--interactive:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}a .card,a .card *,a:hover .card,a:hover .card *{text-decoration:none}.card-grid{display:grid;grid-gap:var(--grid-gap);gap:var(--grid-gap);grid-template-columns:repeat(auto-fill,minmax(35rem,1fr))}.card-grid--2{grid-template-columns:repeat(auto-fill,minmax(50rem,1fr))}.card-grid--3{grid-template-columns:repeat(auto-fill,minmax(40rem,1fr))}.card-grid--4{grid-template-columns:repeat(auto-fill,minmax(30rem,1fr))}@media (max-width:767px){.card-grid,.card-grid--2,.card-grid--3,.card-grid--4{grid-template-columns:1fr}}.card:focus-within{outline:var(--focus-ring-width) solid var(--primary);outline-offset:var(--focus-ring-offset)}.card__description{color:var(--fg-muted)}.card__title-link{color:inherit;text-decoration:none}.card__title-link:hover{color:var(--primary);text-decoration:none}.card.clickable-parent:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);transform:translateY(-2px)}.card.clickable-parent:active{transform:translateY(0)}.card__action{align-self:start;justify-self:end;grid-column:2;grid-row:1/-1}.media-content{position:relative;overflow:hidden;background-color:var(--surface-subtle);display:flex;align-items:center;justify-content:center}.media-content--video{aspect-ratio:16/9}.media-content--square{aspect-ratio:1/1}.media-content--portrait{aspect-ratio:3/4}.media-content__frame,.media-content__image,.media-content__video{width:100%;height:100%;object-fit:cover;border:0}.media-content__placeholder{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--fg-muted)}.media-content__play-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:hsla(0,0%,0%,.2);opacity:0;transition:opacity .3s ease-out}.media-content:hover .media-content__play-overlay{opacity:1}.media-content__play-button{border-radius:999px;padding:0;width:5.6rem;height:5.6rem;background-color:hsla(0,0%,100%,.9);color:var(--fg)}.media-info{padding:var(--space-m);border-top:1px solid var(--border)}.media-details{padding:0 var(--space-l) var(--space-l)}.chart{display:flex;justify-content:center;aspect-ratio:16/9;font-size:var(--t-s)}.chart__tooltip{display:grid;min-width:8rem;align-items:start;grid-gap:var(--space-2xs);gap:var(--space-2xs);border:1px solid var(--border-subtle);background-color:var(--surface-elevated);padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-m);font-size:var(--t-s);box-shadow:var(--shadow-xl)}.chart__tooltip-label{font-weight:500}.chart__tooltip-items{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.chart__tooltip-item{display:flex;width:100%;flex-wrap:wrap;align-items:stretch;gap:var(--space-xs)}.chart__tooltip-indicator{flex-shrink:0;border-radius:2px;background-color:var(--color-bg);border-color:var(--color-border)}.chart__tooltip-indicator--dot{height:.6rem;width:.6rem}.chart__tooltip-indicator--line{width:.25rem;height:100%}.chart__tooltip-indicator--dashed{width:0;border:1.5px dashed var(--color-border);background-color:transparent}.chart__tooltip-item-content{display:flex;flex:1 1;justify-content:space-between;align-items:center;line-height:1}.chart__tooltip-item-meta{display:grid;grid-gap:var(--space-2xs);gap:var(--space-2xs)}.chart__tooltip-item-value{font-family:monospace;font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.chart__legend{display:flex;align-items:center;justify-content:center;gap:var(--space-m)}.chart__legend--top{padding-bottom:var(--space-s)}.chart__legend--bottom{padding-top:var(--space-s)}.chart__legend-item{display:inline-flex;align-items:center;gap:var(--space-2xs)}.chart__legend-swatch{height:.6rem;width:.6rem;flex-shrink:0;border-radius:2px}.select__trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:var(--space-xs);width:-moz-fit-content;width:fit-content;padding:var(--space-s) var(--space-m);font-size:var(--t-m);line-height:1.5;color:var(--fg);background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-s);cursor:pointer;transition:all var(--transition-fast);outline:none}.select__trigger:hover{border-color:var(--border-strong)}.select__trigger:focus{border-color:var(--primary);box-shadow:0 0 0 3px hsla(from var(--primary) h s l/.1)}.select__trigger[data-placeholder]{color:var(--fg-muted)}.select__trigger:disabled{opacity:.5;cursor:not-allowed;background-color:var(--surface-subtle)}.select__trigger-icon{width:1.6rem;height:1.6rem;flex-shrink:0;transition:transform var(--transition-fast)}.select__trigger[data-state=open] .select__trigger-icon{transform:rotate(180deg)}.select__content{position:relative;z-index:var(--z-dropdown);min-width:8rem;max-height:38rem;overflow:hidden;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.select__viewport{padding:var(--space-2xs)}.select__item{position:relative;display:flex;align-items:center;gap:var(--space-xs);width:100%;padding:var(--space-xs) var(--space-s);font-size:var(--t-m);line-height:1.5;color:var(--fg);background-color:transparent;border-radius:var(--radius-xs);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;outline:none;transition:all var(--transition-fast)}.select__item:hover,.select__item[data-highlighted]{background-color:var(--surface-elevated)}.select__item[data-state=checked]{background-color:var(--primary-subtle);color:var(--primary);font-weight:500}.select__item:disabled,.select__item[data-disabled]{opacity:.5;pointer-events:none}.select__item-indicator{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem}.select__item-text{flex:1 1}.select__label{padding:var(--space-xs) var(--space-s);font-size:var(--t-s);font-weight:600;color:var(--fg-muted)}.select__separator{height:1px;margin:var(--space-2xs) 0;background-color:var(--border)}.select__scroll-button{display:flex;align-items:center;justify-content:center;height:2.5rem;background-color:var(--surface);border:none;cursor:pointer;color:var(--fg)}.select__scroll-button:hover{background-color:var(--surface-elevated)}.select__trigger--sm{padding:var(--space-xs) var(--space-s);font-size:var(--t-s)}.select__trigger--lg{padding:var(--space-m) var(--space-l);font-size:var(--t-l)}.dropdown__content{min-width:20rem;max-height:40rem;overflow-y:auto;background-color:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:var(--shadow-l);padding:var(--space-xs);z-index:var(--z-dropdown);animation:dropdown-slide-down var(--transition-fast)}.dropdown__item{position:relative;display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);font-size:var(--t-s);color:var(--fg);border-radius:var(--radius-s);cursor:pointer;transition:background-color var(--transition-fast);outline:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dropdown__item:hover{background-color:var(--surface-subtle)}.dropdown__item:focus-visible{background-color:var(--surface-subtle)}.dropdown__item[data-disabled]{opacity:.5;pointer-events:none}.dropdown__item--inset{padding-left:var(--space-xl)}.dropdown__item svg{width:1.6rem;height:1.6rem;flex-shrink:0}.dropdown__item--checkbox,.dropdown__item--radio{padding-left:calc(var(--space-m) + 2rem + var(--space-xs))}.dropdown__item-indicator{position:absolute;left:var(--space-m);display:flex;align-items:center;justify-content:center;width:2rem;height:2rem}.dropdown__item--checkbox .dropdown__item-indicator:before{content:"";position:absolute;display:block;width:1.6rem;height:1.6rem;border:2px solid var(--border);border-radius:var(--radius-xs);background-color:var(--surface);transition:all var(--transition-fast);z-index:1}.dropdown__item--checkbox[data-state=checked] .dropdown__item-indicator:before{background-color:var(--accent);border-color:var(--accent)}.dropdown__item-indicator svg{position:relative;z-index:2;color:var(--accent-fg)}.dropdown__label{padding:var(--space-xs) var(--space-m);font-size:var(--t-xs);font-weight:600;color:var(--fg-muted);text-transform:uppercase;letter-spacing:.05em}.dropdown__label--inset{padding-left:var(--space-xl)}.dropdown__separator{height:1px;background-color:var(--border);margin:var(--space-xs) 0}.dropdown__shortcut{margin-left:auto;font-size:var(--t-xs);color:var(--fg-muted);letter-spacing:.05em}@keyframes dropdown-slide-down{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}body{display:grid;grid-template-columns:1fr;min-height:100vh}@media (min-width:1024px){body{grid-template-columns:auto 1fr;grid-template-rows:1fr auto;grid-template-areas:"sidebar main" "sidebar footer"}body.logged-out[data-section=admin]{grid-template-columns:1fr}}main,main.site-layout__main{min-height:100vh;background-color:var(--bg);max-width:100%;overflow-x:hidden}@media (min-width:1024px){main.site-layout__main,main:not(main main){grid-area:main;min-height:0}}.sidebar{height:100vh;background-color:var(--surface-elevated);border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width var(--transition-slow);overflow:hidden;position:-webkit-sticky;position:sticky;top:0}@media (min-width:1024px){.sidebar{grid-area:sidebar}}.sidebar--collapsed{width:var(--sidebar-width-collapsed)}.sidebar--expanded{width:var(--sidebar-width-expanded)}.sidebar--hidden{width:0!important;border-right:none;overflow:hidden;pointer-events:none}@media (max-width:1023px){.sidebar{display:none}}.sidebar__container{height:100%;width:100%}.sidebar__container,.sidebar__top{display:flex;flex-direction:column}.sidebar__top{gap:var(--space-3xs);padding:var(--space-m);padding-bottom:var(--space-s);border-bottom:1px solid var(--border);flex-shrink:0}.sidebar__logo{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);font-size:var(--t-s);font-weight:700;text-decoration:none;white-space:nowrap;border-radius:var(--radius-s);transition:all var(--transition-fast);align-self:flex-start;width:100%}.sidebar--collapsed .sidebar__logo{justify-content:center;padding:var(--space-s)}.sidebar__logo-icon{width:var(--space-l);height:var(--space-l);color:var(--primary);flex-shrink:0}.sidebar__logo-text{color:var(--fg);opacity:1;transition:opacity var(--transition-fast)}.sidebar--collapsed .sidebar__logo-text{opacity:0;width:0;overflow:hidden}.sidebar__toggle{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);border-radius:var(--radius-s);background-color:transparent;border:none;font-size:var(--t-s);font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;text-align:left;width:100%}.sidebar--collapsed .sidebar__toggle{justify-content:center;padding:var(--space-s)}.sidebar__toggle:hover{background-color:var(--surface-subtle);color:var(--fg)}.sidebar__toggle svg{width:var(--space-l);height:var(--space-l);flex-shrink:0}.sidebar__toggle span,.sidebar__toggle svg{color:var(--fg-subtle);transition:color var(--transition-fast)}.sidebar__toggle:hover span,.sidebar__toggle:hover svg{color:var(--fg)}.sidebar__header{min-height:6.4rem}.sidebar__header,.sidebar__user{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-m);border-bottom:1px solid var(--border)}.sidebar__user-avatar{width:4rem;height:4rem;border-radius:var(--radius-full);object-fit:cover}.sidebar__user-info{flex:1 1;min-width:0}.sidebar__user-name{font-size:var(--t-s);font-weight:600;color:var(--fg)}.sidebar__user-email,.sidebar__user-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__user-email{font-size:1.2rem;color:var(--fg-subtle)}.sidebar__nav{flex:1 1;overflow-y:auto;overflow-x:hidden;padding:var(--space-m)}.sidebar__nav--spaced{display:flex;flex-direction:column;justify-content:space-between}.sidebar__nav-list{display:flex;flex-direction:column;gap:var(--space-3xs);list-style:none;margin:0;padding:0}.sidebar__nav-list--bottom{margin-top:auto;padding-top:var(--space-m);border-top:1px solid var(--border)}.sidebar__nav-item{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);border-radius:var(--radius-s);text-decoration:none;font-size:var(--t-s);font-weight:500;transition:all var(--transition-fast);white-space:nowrap;position:relative;width:100%;background:transparent;border:none;cursor:pointer;text-align:left;color:inherit}.sidebar--collapsed .sidebar__nav-item{justify-content:center;padding:var(--space-s)}.sidebar__nav-item:hover{background-color:var(--surface-subtle)}.sidebar__nav-item--active{background-color:var(--primary)}.sidebar__nav-item--active:hover{background-color:var(--primary-muted)}.sidebar__nav-icon{width:var(--space-l);height:var(--space-l);flex-shrink:0;color:var(--fg-subtle);transition:color var(--transition-fast)}.sidebar__nav-item:hover .sidebar__nav-icon{color:var(--fg)}.sidebar__nav-item--active .sidebar__nav-icon{color:var(--primary-foreground)}.sidebar__nav-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.sidebar__nav-badge{position:absolute;top:-.3rem;right:-.3rem;width:1rem;height:1rem;background-color:var(--error);border-radius:var(--radius-full);border:.15rem solid var(--surface-elevated);box-shadow:0 0 0 1px var(--error);animation:sidebar-badge-pulse 2.4s ease-in-out infinite}@keyframes sidebar-badge-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.85}}@media (prefers-reduced-motion:reduce){.sidebar__nav-badge{animation:none}}.sidebar__nav-item--has-unread:not(.sidebar__nav-item--active) .sidebar__nav-icon{color:var(--error);fill:currentColor}.sidebar__nav-count{margin-left:auto;min-width:1.6rem;padding:0 var(--space-2xs);font-size:var(--t-xs);font-weight:600;line-height:1.6rem;text-align:center;background-color:var(--error);color:var(--error-foreground);border-radius:var(--radius-full)}.sidebar__nav-label{opacity:1;color:var(--fg-subtle);transition:all var(--transition-fast)}.sidebar__nav-item:hover .sidebar__nav-label{color:var(--fg)}.sidebar__nav-item--active .sidebar__nav-label{color:var(--primary-foreground)}.sidebar--collapsed .sidebar__nav-label{opacity:0;width:0;overflow:hidden}.sidebar__nav-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)}.sidebar__nav-tooltip-arrow{fill:var(--border)}.sidebar__back{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);margin-bottom:var(--space-s);border-radius:var(--radius-s);color:var(--fg-subtle);text-decoration:none;font-size:var(--t-s);font-weight:500;transition:all var(--transition-fast);white-space:nowrap;width:100%}.sidebar--collapsed .sidebar__back{justify-content:center;padding:var(--space-s)}.sidebar__back:hover{background-color:var(--surface-subtle);color:var(--fg)}.sidebar__back svg{width:var(--space-l);height:var(--space-l);flex-shrink:0;transition:color var(--transition-fast)}.sidebar__back span{opacity:1;transition:opacity var(--transition-fast)}.sidebar--collapsed .sidebar__back span{opacity:0;width:0;overflow:hidden}.sidebar__section{padding:var(--space-s) var(--space-m);margin-top:var(--space-m);margin-bottom:var(--space-2xs)}.sidebar__section-title{font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--fg-muted)}.sidebar__bottom{margin-top:auto;padding:var(--space-m);border-top:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;gap:var(--space-m)}.sidebar__divider{height:1px;background-color:var(--border);margin:0 calc(-1 * var(--space-m));margin-bottom:var(--space-s)}.sidebar__bottom-shortcut:after{content:"";position:absolute;left:0;right:0;bottom:calc(var(--space-m) / -2);height:1px;background-color:var(--border-subtle)}.sidebar__theme{display:flex!important;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m)!important;border-radius:var(--radius-s);transition:all var(--transition-fast);cursor:pointer;width:100%!important;height:auto!important;background:transparent;border:none;text-align:left;position:relative}.sidebar__theme .theme-toggle__icon{position:static!important;pointer-events:none!important}.sidebar__theme .theme-toggle__icon *{pointer-events:none!important}.sidebar__theme:hover{background-color:var(--surface-subtle)}.sidebar__theme:hover .sidebar__theme-label{color:var(--fg)}.sidebar--collapsed .sidebar__theme{justify-content:center;padding:var(--space-s)!important}.sidebar__theme-label{font-size:var(--t-s);font-weight:500;color:var(--fg-subtle);white-space:nowrap;opacity:1;transition:all var(--transition-fast)}.sidebar--collapsed .sidebar__theme-label{opacity:0;width:0;overflow:hidden}.sidebar__profile-trigger{display:flex;align-items:center;gap:var(--space-s);width:100%;padding:var(--space-s);border-radius:var(--radius-s);background-color:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);text-align:left}.sidebar__profile-trigger:hover{background-color:var(--surface-subtle)}.sidebar--collapsed .sidebar__profile-trigger{justify-content:center;padding:var(--space-xs)}.sidebar__avatar{width:var(--space-xl);height:var(--space-xl);border-radius:var(--radius-full);flex-shrink:0}.sidebar__profile-info{flex:1 1;min-width:0;opacity:1;transition:opacity var(--transition-fast)}.sidebar__profile-info p{margin-bottom:0}.sidebar--collapsed .sidebar__profile-info{opacity:0;width:0;overflow:hidden}.sidebar__profile-name{font-size:var(--t-s);font-weight:600;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__profile-trigger:hover .sidebar__profile-name{color:var(--fg)}.sidebar__profile-status{font-size:var(--t-xs);color:var(--fg-subtle);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__profile-trigger:hover .sidebar__profile-status{color:var(--fg)}.sidebar__profile-menu{min-width:24rem;background-color:var(--surface-elevated);border:1px solid var(--border);border-radius:var(--radius-m);padding:var(--space-s);box-shadow:var(--shadow-xl);z-index:var(--z-popover)}.sidebar__profile-menu-header{padding:var(--space-m);padding-bottom:var(--space-s)}.sidebar__profile-menu-name{font-size:var(--t-m);font-weight:600;color:var(--fg);margin-bottom:var(--space-3xs)}.sidebar__profile-menu-email{font-size:var(--t-s);color:var(--fg-subtle);margin-bottom:var(--space-s)}.sidebar__profile-menu-separator{height:1px;background-color:var(--border);margin:var(--space-s) 0}.sidebar__profile-menu-item{display:flex;align-items:center;gap:var(--space-s);padding:var(--space-s) var(--space-m);border-radius:var(--radius-s);color:var(--fg);text-decoration:none;font-size:var(--t-s);cursor:pointer;transition:all var(--transition-fast);outline:none;width:100%}.sidebar__profile-menu-item:focus,.sidebar__profile-menu-item:hover{background-color:var(--surface-subtle)}.sidebar__profile-menu-item svg{width:1.6rem;height:1.6rem;color:var(--fg-subtle)}.sidebar__profile-menu-item--danger,.sidebar__profile-menu-item--danger svg{color:var(--danger)}.sidebar__profile-menu-icon-wrapper{position:relative;display:inline-flex}.sidebar__profile-menu-badge{position:absolute;top:-.2rem;right:-.2rem;width:.8rem;height:.8rem;background-color:var(--error);border-radius:var(--radius-full)}.sidebar__profile-menu-item .sidebar__nav-badge{position:static;margin-left:auto;width:auto;height:auto;min-width:1.6rem;padding:0 var(--space-2xs);font-size:var(--t-xs);font-weight:600;line-height:1.6rem;text-align:center;border:none}.sidebar__footer{padding:var(--space-m);border-top:1px solid var(--border)}.sidebar__subscription-badge{padding:var(--space-s);background-color:var(--surface-subtle);border-radius:var(--radius-s);border:1px solid var(--border)}.sidebar__subscription-badge--upgrade{background:linear-gradient(135deg,var(--primary),var(--info));color:var(--primary-foreground);cursor:pointer;transition:opacity var(--transition-fast)}.sidebar__subscription-badge--upgrade:hover{opacity:.9}.main-content{min-height:100vh;transition:margin-left var(--transition-slow)}@media (min-width:1024px){.main-content--with-sidebar{margin-left:var(--sidebar-width)}}.site-footer{background-color:var(--surface-elevated);border-top:1px solid var(--border)}@media (min-width:1024px){.site-footer{grid-area:footer}}.site-footer section{padding-block:var(--section-space-m)}.site-footer__logo{opacity:.8;transition:opacity var(--transition-fast);display:flex;align-items:center}.site-footer__logo:hover{opacity:1}.site-footer__logo-svg{opacity:.9;filter:none;transition:filter var(--transition-fast),opacity var(--transition-fast)}[data-theme=dark] .site-footer__logo-svg{filter:invert(1) brightness(1)}.site-footer__nav{display:flex;gap:var(--space-l)}.site-footer__link{color:var(--fg-subtle);text-decoration:none;font-size:var(--t-s);transition:color var(--transition-fast)}.site-footer__link:hover{color:var(--fg)}.sidebar__nav-group{list-style:none;margin:0;padding:0}.sidebar__nav-group+.sidebar__nav-group{margin-top:var(--space-xs)}.sidebar__nav-group-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-xxs) var(--space-sm);background:transparent;border:0;color:var(--fg-muted);font-size:var(--t-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.sidebar__nav-group-header:hover{color:var(--fg);background:var(--bg-subtle)}.sidebar__nav-group-chevron{width:1.4rem;height:1.4rem;transition:transform var(--transition-fast)}.sidebar__nav-group-chevron--open{transform:rotate(0deg)}.sidebar__nav-group-chevron:not(.sidebar__nav-group-chevron--open){transform:rotate(-90deg)}.sidebar__nav-group-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-xxs)}.ui-sidebar--mobile,.ui-sidebar--static{display:flex;flex-direction:column}.tabs,[data-slot=tabs]{display:flex;flex-direction:column}.tabs__list{display:flex;gap:var(--space-xs);border-bottom:1px solid var(--border)}.tabs__trigger{display:inline-flex;align-items:center;gap:var(--space-2xs);padding:var(--space-s) var(--space-m);font-size:var(--t-s);font-weight:500;color:var(--fg-subtle);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);position:relative;bottom:-1px;white-space:nowrap;text-decoration:none}.tabs__trigger:focus,.tabs__trigger:hover{color:var(--fg);background-color:var(--surface-elevated);text-decoration:none}.tabs__trigger[data-state=active]{color:var(--primary);border-bottom-color:var(--primary)}.tabs__trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.tabs__content{padding-block:var(--space-m);animation:fade-in .2s ease-out}.tabs__content:focus-visible{outline:none}.tabs-root{display:flex;flex-direction:column}.tabs-list{display:flex;gap:var(--space-xs);border-bottom:1px solid var(--border)}.tabs-trigger{display:inline-flex;align-items:center;gap:var(--space-2xs);padding:var(--space-s) var(--space-m);font-size:var(--t-s);font-weight:500;color:var(--fg-subtle);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);position:relative;bottom:-1px}.tabs-trigger:hover{color:var(--fg);background-color:var(--surface-elevated)}.tabs-trigger[data-state=active]{color:var(--primary);border-bottom-color:var(--primary)}.tabs-content{padding:var(--space-m) 0;animation:fade-in .2s ease-out}.table-wrapper{width:100%;overflow-x:auto;border-radius:var(--radius-m);border:1px solid var(--border)}.table{width:100%;caption-side:bottom;border-collapse:collapse;font-size:var(--t-s)}.table caption{-webkit-padding-before:var(--space-m);padding-block-start:var(--space-m);font-size:var(--t-xs);color:var(--fg-muted);text-align:left}.table thead,.table thead tr{border-bottom:1px solid var(--border)}.table thead tr{transition:colors var(--transition-fast)}.table th{height:4.8rem;padding:var(--space-s) var(--space-m);text-align:left;align-items:center;font-weight:600;color:var(--fg);background-color:var(--surface-elevated)}.table tbody tr{border-bottom:1px solid var(--border);transition:background-color var(--transition-fast)}.table tbody tr:last-child{border-bottom:none}.table tbody tr:hover{background-color:var(--surface-elevated)}.table tbody tr[data-state=selected]{background-color:var(--surface-subtle)}.table td{padding:var(--space-s) var(--space-m);align-items:center;color:var(--fg)}.table tfoot{border-top:1px solid var(--border);font-weight:500}.table tfoot tr:last-child{border-bottom:none}.table tfoot td{background-color:var(--surface-elevated)}.table--striped tbody tr:nth-child(2n){background-color:var(--surface-subtle)}.table--striped tbody tr:nth-child(2n):hover{background-color:var(--surface-elevated)}.table--compact td,.table--compact th{padding:var(--space-xs) var(--space-s)}.table--compact th{height:3.6rem}.table--bordered td,.table--bordered th{border:1px solid var(--border)}.table__sortable-header{display:inline-flex;align-items:center;gap:var(--space-2xs);background:none;border:none;padding:0;margin:0;font:inherit;font-weight:600;color:var(--fg);cursor:pointer;transition:color var(--transition-fast)}.table__sortable-header:hover{color:var(--primary)}.table__sortable-header:hover .table__sort-icon{color:var(--primary);opacity:1}.table__sortable-header:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-xs)}.table__sort-icon{width:1.4rem;height:1.4rem;flex-shrink:0;opacity:.4;transition:opacity var(--transition-fast),color var(--transition-fast)}.table__sort-icon--active{opacity:1;color:var(--primary)}.table td.width-auto,.table th.width-auto{width:1%;white-space:nowrap}@media (max-width:767px){.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.table{min-width:60rem}.table--responsive{min-width:100%;display:block}.table--responsive thead{display:none}.table--responsive tbody{display:block}.table--responsive tr{display:block;margin-bottom:var(--space-m);border:1px solid var(--border);border-radius:var(--radius-s)}.table--responsive td{display:block;text-align:right;padding:var(--space-s);border-bottom:1px solid var(--border-subtle)}.table--responsive td:last-child{border-bottom:none}.table--responsive td:before{content:attr(data-label);float:left;font-weight:600;color:var(--fg-subtle)}}.editable-cell{cursor:pointer;padding:var(--space-3xs) var(--space-2xs);border-radius:var(--radius-xs);transition:background-color var(--transition-fast);display:inline-block;min-width:3rem}.editable-cell:hover{background-color:var(--surface-subtle)}.editable-cell:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.input--inline{width:100%;padding:var(--space-3xs) var(--space-2xs);font-size:inherit;border:1px solid var(--accent);border-radius:var(--radius-xs);background-color:var(--surface);box-shadow:0 0 0 3px var(--accent-subtle)}.tooltip-content{z-index:var(--z-tooltip);overflow:hidden;border-radius:var(--radius-s);background-color:var(--surface-elevated);color:var(--fg);padding:var(--space-xs) var(--space-s);font-size:var(--t-xs);line-height:1.4;box-shadow:var(--shadow-l);border:1px solid var(--border);-webkit-user-select:none;-moz-user-select:none;user-select:none;animation-duration:.2s;animation-timing-function:cubic-bezier(.16,1,.3,1);will-change:transform,opacity;max-width:30rem}.tooltip-content[data-state=delayed-open][data-side=top]{animation-name:tooltip-slide-down-fade}.tooltip-content[data-state=delayed-open][data-side=right]{animation-name:tooltip-slide-left-fade}.tooltip-content[data-state=delayed-open][data-side=bottom]{animation-name:tooltip-slide-up-fade}.tooltip-content[data-state=delayed-open][data-side=left]{animation-name:tooltip-slide-right-fade}.tooltip-arrow{fill:var(--surface-elevated)}@keyframes tooltip-slide-up-fade{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes tooltip-slide-down-fade{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes tooltip-slide-left-fade{0%{opacity:0;transform:translateX(.5rem)}to{opacity:1;transform:translateX(0)}}@keyframes tooltip-slide-right-fade{0%{opacity:0;transform:translateX(-.5rem)}to{opacity:1;transform:translateX(0)}}.tooltip-content--dark{background-color:var(--fg);color:var(--bg)}.tooltip-content--light{background-color:var(--bg);color:var(--fg);border:1px solid var(--border)}.tooltip-content--light .tooltip-arrow{fill:var(--bg);stroke:var(--border);stroke-width:1px}.popover__content{z-index:var(--z-popover);width:100%;max-width:32rem;border-radius:var(--radius-m);border:1px solid var(--border);background-color:var(--surface-elevated);padding:var(--space-m);box-shadow:var(--shadow-l);outline:none;animation-duration:.2s;animation-timing-function:cubic-bezier(.16,1,.3,1);will-change:transform,opacity}.popover__content[data-state=open][data-side=top]{animation-name:popover-slide-down-fade}.popover__content[data-state=open][data-side=right]{animation-name:popover-slide-left-fade}.popover__content[data-state=open][data-side=bottom]{animation-name:popover-slide-up-fade}.popover__content[data-state=open][data-side=left]{animation-name:popover-slide-right-fade}.popover__arrow{fill:var(--surface-elevated);stroke:var(--border);stroke-width:1px}@keyframes popover-slide-up-fade{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes popover-slide-down-fade{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes popover-slide-left-fade{0%{opacity:0;transform:translateX(.5rem)}to{opacity:1;transform:translateX(0)}}@keyframes popover-slide-right-fade{0%{opacity:0;transform:translateX(-.5rem)}to{opacity:1;transform:translateX(0)}}.popover__content--wide{max-width:48rem}.popover__content--narrow{max-width:24rem}.skeleton{background:linear-gradient(90deg,var(--surface-elevated) 0,var(--surface-subtle) 50%,var(--surface-elevated) 100%);background-size:200% 100%;animation:skeleton-loading 2s ease-in-out infinite;border-radius:var(--radius-s);color:transparent}@keyframes skeleton-loading{0%{background-position:150% 0}to{background-position:-150% 0}}.skeleton--text{height:var(--t-s);width:100%}.skeleton--title{height:var(--card-title-size);width:60%}.skeleton--avatar{width:4rem;height:4rem;border-radius:var(--radius-full)}.skeleton--button{height:3.6rem;width:12rem}.skeleton--media{width:100%;height:100%;border-radius:var(--radius-m)}.skeleton--chip{height:calc(var(--t-s) + var(--space-3xs) * 2);min-width:clamp(5.6rem,12vw,7.2rem);border-radius:var(--radius-s)}.skeleton--icon{width:1.4rem;height:1.4rem;border-radius:var(--radius-full)}.skeleton--icon-button{width:calc(var(--space-s) * 2 + var(--t-s));height:calc(var(--space-xs) * 2 + var(--t-s));border-radius:var(--radius-full)}.skeleton--inline{display:inline-flex}.skeleton--line{display:block;height:1em;border-radius:var(--radius-xs)}.skeleton--title-line{height:var(--card-title-size)}.skeleton--meta-line{height:var(--t-s)}.skeleton--badge{display:inline-flex;align-items:center;justify-content:center;min-height:calc(var(--t-s) + var(--space-4xs) * 2);padding:0 var(--space-xs);border-radius:var(--radius-s);width:auto}.skeleton--card{height:20rem}.switch{all:unset;position:relative;width:4.4rem;height:2.4rem;background-color:var(--switch-track-bg,var(--fg-muted));border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast)}.switch:hover{background-color:var(--switch-track-bg-hover,var(--fg-subtle))}.switch:focus-visible{outline:var(--focus-ring-width) solid var(--primary);outline-offset:var(--focus-ring-offset)}.switch[data-state=checked]{background-color:var(--switch-track-bg-checked,var(--fg))}.switch[data-state=checked]:hover{background-color:var(--switch-track-bg-checked-hover,var(--fg-subtle))}.switch:disabled{opacity:.5;cursor:not-allowed}.switch__thumb{display:block;width:2rem;height:2rem;background-color:var(--bg);border-radius:var(--radius-full);box-shadow:var(--shadow-s);transition:transform var(--transition-fast);transform:translateX(.2rem);will-change:transform}.switch[data-state=checked] .switch__thumb{transform:translateX(2.2rem)}.switch--sm{width:3.6rem;height:2rem}.switch--sm .switch__thumb{width:1.6rem;height:1.6rem}.switch--sm[data-state=checked] .switch__thumb{transform:translateX(1.8rem)}.switch--lg{width:5.2rem;height:2.8rem}.switch--lg .switch__thumb{width:2.4rem;height:2.4rem}.switch--lg[data-state=checked] .switch__thumb{transform:translateX(2.6rem)}.checkbox{all:unset;position:relative;width:2rem;height:2rem;border-radius:var(--radius-xs);display:inline-flex;align-items:center;justify-content:center;background-color:var(--surface);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.checkbox:hover{background-color:var(--surface-elevated);border-color:var(--border-strong)}.checkbox:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.checkbox[data-state=checked]{background-color:var(--primary);border-color:var(--primary)}.checkbox[data-state=checked]:hover{background-color:var(--primary-muted);border-color:var(--primary-muted)}.checkbox[data-disabled]{opacity:.5;pointer-events:none;cursor:not-allowed}.checkbox__indicator{display:flex;align-items:center;justify-content:center;color:var(--primary-foreground);width:100%;height:100%}.checkbox__indicator svg{width:1.4rem;height:1.4rem}.checkbox--sm{width:1.6rem;height:1.6rem}.checkbox--sm .checkbox__indicator svg{width:1.2rem;height:1.2rem}.checkbox--md{width:2rem;height:2rem}.checkbox--md .checkbox__indicator svg{width:1.4rem;height:1.4rem}.checkbox--lg{width:2.4rem;height:2.4rem}.checkbox--lg .checkbox__indicator svg{width:1.8rem;height:1.8rem}.checkbox-wrapper{display:flex;align-items:center;gap:var(--space-s)}.checkbox-label{font-size:var(--t-s);color:var(--fg);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:1.5}.checkbox-label--disabled{opacity:.5;cursor:not-allowed}.checkbox-helper{font-size:var(--t-xs);color:var(--fg-muted);margin-top:var(--space-2xs);margin-left:calc(2rem + var(--space-s))}.checkbox[data-state=indeterminate]{background-color:var(--primary);border-color:var(--primary)}.radio{all:unset;position:relative;width:2rem;height:2rem;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;background-color:var(--surface);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.radio:hover{background-color:var(--surface-elevated);border-color:var(--border-strong)}.radio:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.radio[data-state=checked]{border-color:var(--primary)}.radio[data-state=checked]:hover{border-color:var(--primary-muted)}.radio[data-disabled]{opacity:.5;pointer-events:none;cursor:not-allowed}.radio__indicator{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.radio__indicator:after{content:"";display:block;width:1rem;height:1rem;border-radius:var(--radius-full);background-color:var(--primary)}.radio--sm{width:1.6rem;height:1.6rem}.radio--sm .radio__indicator:after{width:.8rem;height:.8rem}.radio--md{width:2rem;height:2rem}.radio--md .radio__indicator:after{width:1rem;height:1rem}.radio--lg{width:2.4rem;height:2.4rem}.radio--lg .radio__indicator:after{width:1.2rem;height:1.2rem}.radio-group{display:flex;flex-direction:column;gap:var(--space-s)}.radio-group--horizontal{flex-direction:row;flex-wrap:wrap}.radio-item{display:flex;align-items:center;gap:var(--space-s)}.radio-label{font-size:var(--t-s);color:var(--fg);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:1.5}.radio-label--disabled{opacity:.5;cursor:not-allowed}.radio-helper{font-size:var(--t-xs);color:var(--fg-muted);margin-top:var(--space-2xs);margin-left:calc(2rem + var(--space-s))}.radio-group-label{font-size:var(--t-m);font-weight:500;color:var(--fg);margin-bottom:var(--space-xs)}.radio-group-description{font-size:var(--t-s);color:var(--fg-muted);margin-bottom:var(--space-s)}.progress{position:relative;height:.8rem;overflow:hidden;background-color:var(--surface-subtle)}.progress,.progress__indicator{width:100%;border-radius:var(--radius-full)}.progress__indicator{height:100%;flex:1 1;background-color:var(--primary);transition:transform var(--transition-normal)}.progress--success .progress__indicator{background-color:var(--success)}.progress--warning .progress__indicator{background-color:var(--warning)}.progress--error .progress__indicator{background-color:var(--error)}.progress--info .progress__indicator{background-color:var(--info)}.progress--sm{height:.4rem}.progress--md{height:.8rem}.progress--lg{height:1.2rem}.progress--xl{height:1.6rem}.progress--indeterminate .progress__indicator{width:40%;animation:progress-indeterminate 2s ease-in-out infinite}@keyframes progress-indeterminate{0%{transform:translateX(-100%)}50%{transform:translateX(250%)}to{transform:translateX(-100%)}}.progress-circular{position:relative;width:4rem;height:4rem}.progress-circular svg{transform:rotate(-90deg)}.progress-circular__track{fill:none;stroke:var(--surface-subtle);stroke-width:4}.progress-circular__indicator{fill:none;stroke:var(--primary);stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset var(--transition-normal)}.progress-circular--success .progress-circular__indicator{stroke:var(--success)}.progress-circular--warning .progress-circular__indicator{stroke:var(--warning)}.progress-circular--error .progress-circular__indicator{stroke:var(--error)}.circular-progress{position:relative;display:inline-flex;align-items:center;justify-content:center}.circular-progress__svg{transform:rotate(-90deg)}.circular-progress__track{color:var(--border);opacity:.4}.circular-progress__progress{transition:stroke-dashoffset var(--transition-default) ease-in-out}.circular-progress__progress--active{color:var(--accent)}.circular-progress__progress--complete{color:var(--success)}.circular-progress__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.circular-progress__label{font-size:var(--t-s);font-weight:500;color:var(--fg)}.avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;border-radius:var(--radius-full);overflow:hidden;background-color:var(--surface-elevated);color:var(--fg);font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.avatar__image{width:100%;height:100%;object-fit:cover}.avatar__fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--primary);color:var(--primary-foreground);font-size:var(--t-m);text-transform:uppercase}.avatar--xs{width:2.4rem;height:2.4rem;font-size:var(--t-s)}.avatar--sm{width:3.2rem;height:3.2rem;font-size:var(--t-s)}.avatar--md{width:4rem;height:4rem;font-size:var(--t-m)}.avatar--lg{width:5.6rem;height:5.6rem;font-size:var(--t-l)}.avatar--xl{width:8rem;height:8rem;font-size:var(--t-xl)}.avatar--rounded{border-radius:var(--radius-m)}.avatar--square{border-radius:var(--radius-s)}.avatar--with-status{position:relative}.avatar__status{position:absolute;bottom:0;right:0;width:1.2rem;height:1.2rem;border-radius:var(--radius-full);border:2px solid var(--surface);background-color:var(--success)}.avatar__status--offline{background-color:var(--fg-muted)}.avatar__status--busy{background-color:var(--error)}.avatar__status--away{background-color:var(--warning)}.empty-state{text-align:center;padding:var(--space-3xl) var(--space-m);display:flex;flex-direction:column;align-items:center;gap:var(--space-m)}.empty-state__icon{width:6.4rem;height:6.4rem;color:var(--color-muted);margin-bottom:var(--space-s)}.empty-state__title{font-size:var(--t-l);font-weight:500;color:var(--fg);margin-bottom:var(--space-xs)}.empty-state__description{color:var(--color-muted);max-width:50rem;margin-bottom:var(--space-s)}.empty-state__actions{-webkit-padding-before:var(--space-xs);padding-block-start:var(--space-xs)}.empty-state--compact{padding:var(--space-xl) var(--space-m)}.empty-state--compact .empty-state__icon{width:4.8rem;height:4.8rem}