.elms-btn,.elms-chip,.elms-price-line,.elms-price-line .free{font-weight:700}:root{--bg:#0b0d12;--surface:#121212;--raised:#1a1a1a;--text:#e7ecf3;--dim:#b7c1d1;--border:#2e2e2e;--accent:#20c997;--radius:16px}.elms-acc,.elms-tabs{border:1px solid var(--border)}.elms-single{background:var(--bg);color:var(--text)}.elms-hero{position:relative;min-height:300px;display:grid;place-items:center;background:linear-gradient(180deg,#0b0d12,#0f172a)}.elms-hero.has-media{background-size:cover;background-position:center}.elms-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.6))}.elms-hero__inner,.elms-side{position:relative}.elms-hero__inner{text-align:center;padding:40px 16px;max-width:960px}.elms-hero__title{font-size:42px;line-height:1.15;margin:0 0 8px}.elms-hero__subtitle{font-size:18px;color:var(--dim);margin:0}.elms-bc-wrap{width:90%;margin:16px auto 0}.elms-breadcrumbs{color:var(--dim)}.elms-acc__body,.elms-content p,.elms-downloads a,.elms-tabs__nav a{color:var(--text)}.elms-breadcrumbs a,.elms-cur-item a{color:var(--text);text-decoration:none}.elms-shell{width:90%;margin:20px auto 60px;display:grid;grid-template-columns:1fr 340px;gap:24px}@media(max-width:1000px){.elms-shell{grid-template-columns:1fr}}.elms-tabs{background:var(--surface);border-radius:var(--radius)}.elms-tabs__nav{list-style:none;margin:0;padding:8px;display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--border)}.elms-tabs__nav a{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 12px;border-radius:10px;text-decoration:none;background:var(--raised);border:1px solid var(--border)}.elms-cur-item a:hover,.elms-downloads a{text-decoration:underline}.elms-tabs__nav a.is-active,.elms-tabs__nav a[aria-selected=true]{background:#1a1a1a}.elms-tab{display:none;padding:16px}.elms-tab.is-active{display:block}.elms-acc{border-radius:12px;background:var(--raised);margin:12px 0;padding:6px 10px}.elms-acc>summary{cursor:pointer;font-weight:600}.elms-acc__body{padding:8px 4px 6px}.elms-cur-items{list-style:disc;margin:.5rem 0 .5rem 1.25rem;padding:0}.elms-cur-item{margin:.25rem 0}.elms-downloads{list-style:disc;margin:.5rem 0 .5rem 1.25rem}.elms-reviews{padding:12px 4px;background:0 0}.elms-instructor__head{display:flex;gap:14px;align-items:flex-start}.elms-instructor__name{margin:0 0 2px}.elms-instructor__headline{color:var(--dim);margin:0 0 6px}.elms-aside-card{position:sticky;top:24px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.elms-rating{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.elms-btn,.elms-sharebar .share-btn{align-items:center;text-decoration:none}.elms-chip{background:#10b981;color:#05302f;border-radius:999px;padding:2px 8px;font-size:12px}.elms-stars,.elms-stars .star{font-size:22px;cursor:pointer}.elms-chip--best{background:#f59e0b;color:#241400}.elms-price-line .reg{text-decoration:line-through;opacity:.7;margin-left:6px}.elms-btn{display:inline-flex;justify-content:center;height:40px;padding:0 14px;border-radius:10px;border:1px solid var(--border);background:var(--raised);color:var(--text)}.elms-btn--primary{background:var(--accent);color:#062c2c;border-color:transparent}.elms-btn--ghost{background:0 0}.elms-cta{display:grid;gap:10px;margin:10px 0}.elms-cta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.elms-progress{background:#0f172a;border-radius:6px;height:30px;overflow:hidden}.elms-progress span{display:block;height:100%;background:linear-gradient(90deg,#14b8a6,#06b6d4)}.elms-attr{list-style:none;margin:12px 0 0;padding:0}.elms-attr li{padding:6px 0;border-top:1px dashed var(--border)}.elms-attr li:first-child{border-top:0}.elms-comments-wrap{width:90%;margin:30px auto 60px}.elms-stars{display:inline-flex;gap:4px;line-height:1}.elms-stars .star{background:0 0;border:none;color:#464646;padding:0;transition:color .2s}.elms-stars .star:hover,.elms-stars .star:hover~.star{color:#ccc}.elms-stars .star.active,.elms-stars .star.is-on,.elms-stars .star.selected,.elms-stars .star:hover{color:gold}.elms-stars-meta{margin-top:6px;font-size:14px;color:var(--dim,#b7c1d1)}.elms-sharebar{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.elms-sharebar .share-btn{display:inline-flex;justify-content:center;width:34px;height:30px;border-radius:9px;border:1px solid var(--border,#2e2e2e);background:rgba(255,255,255,.04);color:#e7ecf3;transition:transform .15s,border-color .15s,background .15s}.elms-sharebar .share-btn:hover{transform:translateY(-1px);border-color:#fff}.elms-sharebar .wa{color:#25d366}.elms-sharebar .ln{color:#0a66c2}.elms-sharebar .fb{color:#1778f2}.elms-sharebar .tw{color:#e7ecf3}.elms-sharebar .copy{color:#ffd34d}.elms-stars-hint{margin:10px 0 2px;font-size:13px;opacity:.9}.elms-instructor__avatar{width:120px;height:120px;border-radius:50%;object-fit:cover}.elms-link--brand{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(20,184,166,.08);color:#2dd4bf;text-decoration:none;font-weight:600;border:1px solid rgba(45,212,191,.35)}.elms-link--brand:hover{background:rgba(20,184,166,.14);border-color:#2dd4bf}.elms-instructor__links{display:flex;gap:8px;flex-wrap:wrap;margin:.5rem 0 0}.elms-instructor__headline{color:#b7c1d1}