.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;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}.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%;-o-object-fit:cover;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;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)}