.ttsl-wrap{max-width:1280px;margin-left:auto !important;margin-right:auto !important;padding:24px 16px;font-family:inherit;width:100%;box-sizing:border-box;font-size:14px !important;line-height:1.6}
.ttsl-wrap, .ttsl-wrap p, .ttsl-wrap li, .ttsl-wrap a, .ttsl-wrap span, .ttsl-wrap div{font-size:14px !important;line-height:inherit}
.ttsl-wrap h1{font-size:26px !important;line-height:1.2;margin:0 0 12px}
.ttsl-wrap h2{font-size:22px !important;line-height:1.25;margin:0 0 12px}
.ttsl-wrap h3{font-size:16px !important;line-height:1.3;margin:0 0 10px}
.ttsl-wrap a{font-size:inherit}
.ttsl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:900px){.ttsl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.ttsl-grid{grid-template-columns:minmax(0,1fr)}}
.ttsl-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.ttsl-card__media{aspect-ratio:16/9;background:#f2f4f7;display:block}
.ttsl-card__media img{width:100%;height:100%;object-fit:cover;display:block}
.ttsl-card__body{padding:14px 14px 16px}
.ttsl-title{font-size:15px;line-height:1.35;margin:0 0 6px}
.ttsl-title a{text-decoration:none}
.ttsl-muted{color:rgba(0,0,0,.62);font-size:13px;line-height:1.5}
.ttsl-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}
.ttsl-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(43,108,255,.08);color:var(--ttsl-primary);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}
.ttsl-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:10px 14px;font-weight:700;text-decoration:none;border:1px solid transparent;cursor:pointer;font-size:13px;line-height:1.2}
.ttsl-btn--primary{background:var(--ttsl-primary);color:#fff}
.ttsl-btn--ghost{background:transparent;border-color:rgba(0,0,0,.14);color:rgba(0,0,0,.86)}
.ttsl-btn[disabled]{opacity:.6;cursor:not-allowed}
.ttsl-course-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}
@media (max-width:900px){.ttsl-course-hero{grid-template-columns:minmax(0,1fr)}}
.ttsl-panel{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:16px;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.ttsl-panel h2,.ttsl-panel h3{margin:0 0 10px}
.ttsl-kv{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 0}
.ttsl-kv__item{flex:1;min-width:160px;background:rgba(0,0,0,.03);border:1px solid rgba(0,0,0,.06);border-radius:12px;padding:10px}
.ttsl-kv__label{font-size:12px;color:rgba(0,0,0,.62)}
.ttsl-kv__value{font-size:14px;font-weight:700;margin-top:2px}
.ttsl-curriculum{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.ttsl-curriculum__item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-radius:12px;border:1px solid rgba(0,0,0,.08);background:#fff}
.ttsl-curriculum__left{min-width:0}
.ttsl-curriculum__title{margin:0;font-size:13px;font-weight:800;line-height:1.3;display:flex;gap:8px;align-items:flex-start}
.ttsl-curriculum__title a{text-decoration:none}
.ttsl-idx{flex:0 0 26px;min-width:26px;text-align:right;color:rgba(0,0,0,.55);font-weight:900}
.ttsl-title-text{min-width:0;flex:1}
.ttsl-badge{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;border:1px solid rgba(0,0,0,.12);color:rgba(0,0,0,.75);background:rgba(0,0,0,.02)}
.ttsl-badge--done{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.25);color:#0f5132}
.ttsl-layout{display:grid !important;grid-template-columns:320px minmax(0,1fr) !important;gap:18px;align-items:start}
@media (max-width:780px){.ttsl-layout{grid-template-columns:minmax(0,1fr) !important}}
.ttsl-sidebar{position:sticky;top:16px}
@media (max-width:780px){.ttsl-sidebar{position:static}}
.ttsl-sidebar-panel{max-height:calc(100vh - 32px);overflow:auto}
.ttsl-sidebar-panel .ttsl-progress{margin-bottom:4px}
.ttsl-sidebar-panel .ttsl-curriculum{gap:8px}
.ttsl-sidebar-panel .ttsl-curriculum__item{padding:10px}
.ttsl-sidebar-panel .ttsl-curriculum__title{font-size:13px}
.ttsl-sidebar-panel .ttsl-badge{font-size:11px;padding:5px 9px}
.ttsl-progress{height:10px;background:rgba(0,0,0,.08);border-radius:999px;overflow:hidden}
.ttsl-progress__bar{height:100%;background:var(--ttsl-primary);width:0}
.ttsl-lesson-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
.ttsl-dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:900px){.ttsl-dashboard{grid-template-columns:minmax(0,1fr)}}
.ttsl-empty{padding:18px;border-radius:12px;border:1px dashed rgba(0,0,0,.18);color:rgba(0,0,0,.68);background:rgba(0,0,0,.02)}
.ttsl-media{border-radius:14px;overflow:hidden;border:1px solid rgba(0,0,0,.08);background:#000}
.ttsl-media__inner{position:relative;width:100%;aspect-ratio:16/9}
.ttsl-media__inner iframe,.ttsl-media__inner video{position:absolute;inset:0;width:100%;height:100%;border:0}
.ttsl-resources h3{margin:0 0 10px}
.ttsl-resources__list{margin:0;padding-left:18px}
.ttsl-resources__list li{margin:6px 0}
 .ttsl-accordion{display:flex;flex-direction:column;gap:10px}
 .ttsl-acc{border:1px solid rgba(0,0,0,.08);border-radius:12px;background:rgba(0,0,0,.01);overflow:hidden}
 .ttsl-acc__summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer;font-weight:900}
 .ttsl-acc__summary::-webkit-details-marker{display:none}
 .ttsl-acc__title{font-size:13px;line-height:1.35;color:rgba(0,0,0,.86)}
 .ttsl-acc__meta{display:inline-flex;align-items:center;gap:8px}
 .ttsl-acc__progress{font-size:12px;font-weight:900;color:rgba(0,0,0,.62)}
 .ttsl-acc__count{font-size:12px;font-weight:900;color:rgba(0,0,0,.62);background:rgba(0,0,0,.06);border-radius:999px;padding:4px 8px}
 .ttsl-acc[open] .ttsl-acc__summary{background:rgba(43,108,255,.08);color:var(--ttsl-primary)}
 .ttsl-acc[open] .ttsl-acc__count{background:rgba(43,108,255,.14);color:var(--ttsl-primary)}
 .ttsl-acc[open] .ttsl-acc__progress{color:var(--ttsl-primary)}
 .ttsl-secbar{height:6px;background:rgba(0,0,0,.08);margin:0 10px 10px;border-radius:999px;overflow:hidden}
 .ttsl-secbar__fill{height:100%;width:0;background:var(--ttsl-primary)}
 .ttsl-acc .ttsl-curriculum{padding:10px}
 .ttsl-curriculum__title a.ttsl-active{color:var(--ttsl-primary)}
 .ttsl-nav{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
 .ttsl-acc-controls{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}
 .ttsl-acc-controls .ttsl-btn{padding:8px 10px;border-radius:10px;font-size:12px}

body.theme-hello-elementor .ttsl-layout{display:grid !important;grid-template-columns:320px minmax(0,1fr) !important}
body.theme-hello-elementor .entry-content .ttsl-wrap{width:100% !important;max-width:100% !important}
body.theme-hello-elementor .entry-content .ttsl-panel{width:100% !important;max-width:100% !important}
body.theme-hello-elementor .entry-content .ttsl-main{grid-column:auto !important;width:100% !important}

