.hv2 .player-wrap{max-width:1240px;margin:0 auto;padding:0 8px;display:grid;gap:8px}.hv2 .player-grid-bg{display:none}.hv2 .player-header{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;background:rgba(244,246,250,.8);box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);border-radius:var(--r-xl);padding:14px 18px}.hv2 .player-breadcrumb{display:inline-flex;align-items:center;gap:4px;font-size:14px;color:var(--muted);text-decoration:none;padding:6px 0}.hv2 .player-breadcrumb svg{color:var(--muted)}.hv2 .player-breadcrumb-sep{color:var(--muted);opacity:.5}.hv2 .player-course-title{font:600 15px var(--display);letter-spacing:-.02em;color:var(--ink)}.hv2 .player-progress{margin-left:auto;display:flex;align-items:center;gap:10px}.hv2 .player-progress-txt{font:500 12px var(--mono);color:var(--muted)}.hv2 .player-progress-bar{width:96px;height:6px;border-radius:99px;background:rgba(12,14,17,.1);overflow:hidden}.hv2 .player-progress-fill{display:block;height:100%;background:var(--accent);border-radius:99px;transition:width .35s var(--ease-out)}@media (hover:hover) and (pointer:fine){.hv2 .player-breadcrumb:hover{color:var(--accent)}}.hv2 .player-layout{display:grid;gap:8px;grid-template-columns:1fr}.hv2 .player-main{background:rgba(244,246,250,.8);box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);border-radius:var(--r-xl);padding:14px 12px 26px;order:1}.hv2 .player-stage{max-width:880px;margin:0 auto}.hv2 .player-sidebar{background:rgba(244,246,250,.8);box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);border-radius:var(--r-xl);order:2;padding-bottom:10px}@media (min-width:1000px){.hv2 .player-layout{grid-template-columns:1fr 380px;align-items:start}.hv2 .player-main{padding:20px 20px 36px}.hv2 .player-sidebar{position:sticky;top:88px;max-height:calc(100svh - 104px);overflow-y:auto;order:2}}.hv2 .player-sidebar-header{display:flex;align-items:center;gap:10px;padding:18px 18px 10px;font:600 20px var(--display);letter-spacing:-.03em}.hv2 .player-sidebar-count{font:500 12px var(--mono);color:var(--muted);background:var(--tile);border-radius:99px;padding:3px 9px;letter-spacing:0}.hv2 .player-sidebar-prog{padding:4px 18px 12px}.hv2 .player-sidebar-prog-top{display:flex;justify-content:space-between;font:12px var(--mono);color:var(--muted);margin-bottom:8px}.hv2 .player-sidebar-prog-bar{height:6px;border-radius:99px;background:rgba(12,14,17,.1);overflow:hidden}.hv2 .player-sidebar-prog-bar>i{display:block;height:100%;border-radius:99px;background:var(--accent);transition:width .4s var(--ease-out)}.hv2 .sidebar-list{display:grid;gap:6px;padding:6px 10px}.hv2 .sidebar-item{display:grid;grid-template-columns:38px 1fr 16px;gap:12px;align-items:center;width:100%;text-align:left;cursor:pointer;padding:12px;border-radius:var(--r);border:0;background:var(--tile);color:var(--ink);font-family:var(--font);transition:background-color .2s var(--ease-out),transform .2s var(--ease-out)}.hv2 .sidebar-item:active{transform:scale(.985)}@media (hover:hover) and (pointer:fine){.hv2 .sidebar-item:hover:not(.active){background:#fff;box-shadow:0 8px 20px -14px rgba(12,14,17,.5)}}.hv2 .sidebar-item.active{background:var(--ink);color:#fff}.hv2 .sidebar-item.locked:not(.active){opacity:.65}.hv2 .sidebar-badge{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font:600 13px var(--mono);background:rgba(12,14,17,.07);color:var(--muted)}.hv2 .sidebar-item.active .sidebar-badge{background:var(--accent);color:#fff}.hv2 .sidebar-item.done .sidebar-badge{background:rgba(31,157,85,.16);color:#17803f}.hv2 .sidebar-item.active.done .sidebar-badge{background:#1f9d55;color:#fff}.hv2 .sidebar-content{display:grid;gap:4px;min-width:0}.hv2 .sidebar-title{font:500 14.5px/1.35 var(--font);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hv2 .sidebar-item.active .sidebar-title{font-weight:600}.hv2 .sidebar-sub{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hv2 .sidebar-free-tag{font:500 10.5px var(--mono);color:#17803f;background:rgba(31,157,85,.14);border-radius:99px;padding:3px 8px}.hv2 .sidebar-item.active .sidebar-free-tag{background:rgba(255,255,255,.16);color:#a8f0c4}.hv2 .sidebar-dur{font:12px var(--mono);color:var(--muted)}.hv2 .sidebar-item.active .sidebar-dur{color:#A9B1BB}.hv2 .sidebar-arrow{color:var(--muted);opacity:.6}.hv2 .sidebar-item.active .sidebar-arrow{color:#fff;opacity:1}.hv2 .player-video-frame{position:relative;max-width:780px;margin:0 auto;border-radius:var(--r);overflow:hidden;background:#000;box-shadow:0 24px 50px -28px rgba(12,14,17,.6)}.hv2 .player-video{width:100%;aspect-ratio:16/9;display:block;background:#000}.hv2 .player-video-placeholder{width:100%;aspect-ratio:16/9;background:var(--night-2);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#A9B1BB}.hv2 .player-lesson-head{margin-top:22px;max-width:780px;margin-left:auto;margin-right:auto}.hv2 .lp-eyebrow,.hv2 .player-eyebrow{display:block;font:500 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.hv2 .player-lesson-title{font:600 clamp(26px,7.4vw,42px)/1.05 var(--display);letter-spacing:-.04em;max-width:22ch;text-wrap:balance}.hv2 .player-mark-row{margin-top:16px}.hv2 .player-mark-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 22px;border-radius:99px;font:600 15px var(--font);border:0;cursor:pointer;transition:transform .16s var(--ease-out),background-color .2s var(--ease-out)}.hv2 .player-mark-btn.todo{background:var(--accent);color:#fff;width:100%}.hv2 .player-mark-btn.todo:active{transform:scale(.97)}.hv2 .player-mark-btn.done{background:rgba(31,157,85,.14);color:#17803f;cursor:default}.hv2 .player-mark-btn:disabled{opacity:.8}@media (min-width:560px){.hv2 .player-mark-btn.todo{width:auto}}.hv2 .player-actions{display:flex;gap:8px;flex-wrap:wrap;margin:18px auto 0;max-width:780px}.hv2 .player-act{flex:1 1 140px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 20px;border-radius:99px;cursor:pointer;font:600 15px var(--font);color:var(--ink);background:var(--tile);border:1px solid var(--line);transition:border-color .2s var(--ease-out),transform .16s var(--ease-out)}.hv2 .player-act:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.hv2 .player-act:hover{border-color:var(--ink)}}.hv2 .player-act-count{font:600 11px var(--mono);background:var(--accent);color:#fff;border-radius:99px;padding:2px 8px}.hv2 .player-nav{display:grid;gap:8px;margin:28px auto 0;max-width:780px}.hv2 .player-nav-btn{display:flex;align-items:center;gap:12px;min-width:0;padding:14px 16px;border-radius:var(--r);cursor:pointer;text-align:left;background:var(--tile);border:1px solid transparent;font-family:var(--font);color:var(--ink);transition:border-color .2s var(--ease-out),transform .16s var(--ease-out)}.hv2 .player-nav-btn:active:not(:disabled){transform:scale(.985)}@media (hover:hover) and (pointer:fine){.hv2 .player-nav-btn:hover:not(:disabled){border-color:var(--ink)}}.hv2 .player-nav-btn:disabled{opacity:.45;cursor:default}.hv2 .player-nav-btn--next{justify-content:space-between;text-align:right}.hv2 .player-nav-btn--next .player-nav-txt{margin-left:auto}.hv2 .player-nav-ico{color:var(--accent);flex:none}.hv2 .player-nav-txt{display:flex;flex-direction:column;gap:3px;min-width:0}.hv2 .player-nav-label{font:500 11px var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.hv2 .player-nav-name{font:600 14.5px var(--font);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width:640px){.hv2 .player-nav{grid-template-columns:1fr 1fr}}.hv2 .player-modal{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));background:rgba(7,8,10,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:pm-fade .18s ease}@keyframes pm-fade{0%{opacity:0}to{opacity:1}}.hv2 .player-modal-card{width:100%;max-width:780px;max-height:100%;display:flex;flex-direction:column;background:#EEF1F4;border-radius:var(--r-xl);overflow:hidden;box-shadow:0 30px 80px -20px rgba(7,8,10,.6);animation:pm-rise .26s var(--ease-out)}@keyframes pm-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (max-width:560px){.hv2 .player-modal{padding:0}.hv2 .player-modal-card{max-width:none;height:100%;border-radius:0}.hv2 .player-modal-head{padding-top:calc(14px + env(safe-area-inset-top))}}.hv2 .player-modal-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.6)}.hv2 .player-modal-title{font:600 18px var(--display);letter-spacing:-.03em}.hv2 .player-modal-head-acts{display:flex;align-items:center;gap:8px}.hv2 .player-modal-dl{text-decoration:none;display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 16px;border-radius:99px;cursor:pointer;background:var(--ink);color:#fff;border:0;font:600 14px var(--font)}.hv2 .player-modal-close{width:42px;height:42px;border-radius:50%;border:0;cursor:pointer;background:var(--tile);color:var(--ink);display:grid;place-items:center}.hv2 .player-modal-body{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:24px 18px calc(30px + env(safe-area-inset-bottom))}@media (min-width:561px){.hv2 .player-modal-body{padding:32px 34px 40px}}.hv2 .player-modal-note{display:flex;align-items:center;gap:8px;margin:12px 16px 0;padding:12px 14px;border-radius:var(--r-s);background:var(--accent-soft);color:var(--accent-ink);font-size:14px;line-height:1.4}.hv2 .player-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:44px 22px;text-align:center;border-radius:var(--r);background:var(--tile)}.hv2 .player-empty svg{color:var(--accent)}.hv2 .player-empty-title{font:600 18px var(--display);letter-spacing:-.03em}.hv2 .player-empty-text{margin:0;font-size:15px;line-height:1.5;color:var(--muted);max-width:40ch}.hv2 .player-res-list{display:grid;gap:8px}.hv2 .player-res{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:12px 14px;width:100%;border:0;border-radius:var(--r);text-align:left;cursor:pointer;background:var(--tile);font-family:var(--font);color:var(--ink)}.hv2 .player-res:disabled{opacity:.6;cursor:default}.hv2 .player-res-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.hv2 .player-res-title{font:500 15px/1.3 var(--font)}.hv2 .player-res-dl{display:inline-flex;align-items:center;gap:6px;font:600 13px var(--font);color:var(--accent-ink)}.hv2 .lp-card{max-width:520px;margin:14px auto 0;text-align:left;padding:26px 20px;border-radius:var(--r);background:var(--ink);color:#fff;display:grid;justify-items:start;gap:12px;animation:lp-rise .4s var(--ease-out) both}@keyframes lp-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.hv2 .lp-badge{width:52px;height:52px;border-radius:16px;background:rgba(255,255,255,.1);color:var(--accent);display:grid;place-items:center}.hv2 .lp-chip{font:500 11px var(--mono);letter-spacing:.05em;text-transform:uppercase;background:var(--accent);color:#fff;border-radius:99px;padding:5px 11px}.hv2 .lp-eyebrow{color:#9AA3AD;margin:0}.hv2 .lp-title{font:600 clamp(24px,6.4vw,32px)/1.08 var(--display);letter-spacing:-.04em;max-width:20ch}.hv2 .lp-text{color:#B9C0C9;line-height:1.5;max-width:46ch}.hv2 .lp-actions{display:grid;gap:8px;width:100%;margin-top:6px}.hv2 .lp-cta{background:var(--accent)}.hv2 .lp-alt,.hv2 .lp-cta{display:inline-flex;align-items:center;justify-content:center;min-height:54px;border-radius:99px;color:#fff;text-decoration:none;font:600 16px var(--font)}.hv2 .lp-alt{border:1px solid rgba(255,255,255,.35)}@media (min-width:560px){.hv2 .lp-actions{grid-template-columns:auto auto;justify-content:start}.hv2 .lp-alt,.hv2 .lp-cta{padding:0 24px}}.hv2 .player-prose{color:#2b3138;font-size:16.5px;line-height:1.7;max-width:64ch;margin:0 auto;overflow-wrap:anywhere}.hv2 .player-prose>*+*{margin-top:1em}.hv2 .player-prose h2{font:600 clamp(24px,6.4vw,30px)/1.1 var(--display);letter-spacing:-.04em;max-width:none;color:var(--ink);margin-top:1.6em}.hv2 .player-prose h3{font:600 20px/1.2 var(--display);letter-spacing:-.03em;color:var(--ink);margin-top:1.4em}.hv2 .player-prose ul{padding-left:0;list-style:none}.hv2 .player-prose ul>li{position:relative;padding-left:24px}.hv2 .player-prose ul>li:before{content:"";position:absolute;left:2px;top:.82em;width:12px;height:2px;border-radius:2px;background:var(--accent)}.hv2 .player-prose ol{padding-left:24px;list-style:decimal}.hv2 .player-prose ol>li{padding-left:2px}.hv2 .player-prose li+li{margin-top:.5em}.hv2 .player-prose ol>li::marker{color:var(--accent);font-weight:600}.hv2 .player-prose blockquote{border-left:3px solid var(--accent);background:var(--accent-soft);padding:12px 16px;border-radius:var(--r-s);color:var(--ink)}.hv2 .player-prose strong{color:var(--ink);font-weight:600}.hv2 .player-prose a{color:var(--accent-ink);text-decoration:underline}.hv2 .player-prose code{font:500 .88em var(--mono);background:rgba(12,14,17,.07);padding:2px 6px;border-radius:6px}.hv2 .player-prose pre{background:#F1F3F6;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);border-radius:var(--r-s);padding:12px 14px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14.5px;line-height:1.5}.hv2 .player-prose ol+pre{margin-left:24px}.hv2 .player-prose pre code{background:none;padding:0;color:inherit}.hv2 .player-prose img{max-width:100%;height:auto;border-radius:var(--r-s)}.hv2 .skeleton-block{background:linear-gradient(90deg,rgba(12,14,17,.07),rgba(12,14,17,.14),rgba(12,14,17,.07));background-size:200% 100%;animation:sk-shimmer 1.4s linear infinite}@keyframes sk-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.hv2 .lp-card,.hv2 .player-modal,.hv2 .player-modal-card,.hv2 .skeleton-block{animation:none}}.hv2 .player-error{display:grid;justify-items:center;gap:14px;text-align:center;padding:60px 20px}.hv2 .player-error p{color:var(--muted)}