.pr-page{background:#0a0a0a;color:rgba(255,255,255,.9)}.pr-page:after{display:none}.pr-shell{max-width:1440px;padding-top:40px;padding-bottom:64px}.pr-head{padding-bottom:40px}.pr-eyebrow{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.6);font-size:12px;margin-bottom:16px}.pr-eyebrow>span{width:6px;height:6px;border-radius:999px;background:#ff0044}.pr-heading-row{display:flex;justify-content:space-between;align-items:center;gap:24px}.pr-head h1{margin:0;font-size:clamp(26px,3vw,36px);font-weight:600;letter-spacing:-.03em;line-height:1.3;overflow-wrap:anywhere}.pr-sub{margin:12px 0 0;font-size:14px;line-height:1.8}.pr-head-note,.pr-sub{color:rgba(255,255,255,.6)}.pr-head-note{display:flex;gap:12px;align-items:center;flex-shrink:0;font-size:13px}.pr-head-note>span>span{display:block;margin-top:4px;font-size:11px;color:rgba(255,255,255,.5)}.pr-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.pr-section-head h2{font-size:18px;font-weight:600;margin:0}.pr-chapter-head>span,.pr-section-head>span{font-size:12px;color:rgba(255,255,255,.5)}.pr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:24px}.pr-page .pr-course-card,.pr-page .pr-panel{border-radius:16px;border:1px solid rgba(255,255,255,.08);background:#181818;color:rgba(255,255,255,.9);overflow:hidden;box-shadow:none}.pr-page .pr-course-card{transition:border-color .15s,transform .15s}.pr-page .pr-course-card:hover{border-color:rgba(255,255,255,.18);transform:translateY(-2px)}.pr-course-link{display:block;height:100%;color:inherit;text-decoration:none}.pr-course-link:focus-visible{outline:2px solid #ffb3c6;outline-offset:-3px;border-radius:16px}.pr-cover{aspect-ratio:16/9;position:relative;overflow:hidden;background:#1c1c1c;border-bottom:1px solid rgba(255,255,255,.08)}.pr-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.pr-cover-fallback{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#ffb3c6;background:linear-gradient(160deg,rgba(255,255,255,.13),rgba(255,255,255,.07) 45%,rgba(255,255,255,.04));font-size:13px}.pr-course-body,.pr-summary-body{padding:16px}.pr-course-meta,.pr-course-meta>span{display:flex;align-items:center;gap:8px}.pr-course-meta{justify-content:space-between;color:rgba(255,255,255,.5);font-size:12px}.pr-page .pr-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:400;line-height:1.5;border-radius:6px;border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.6);background:rgba(255,255,255,.04);white-space:nowrap}.pr-page .pr-badge.pr-success{color:#10b981;background:rgba(16,185,129,.15);border-color:transparent}.pr-page .pr-badge.pr-active{color:#ffb3c6;background:rgba(255,0,68,.15);border-color:transparent}.pr-course-body h3{font-size:18px;font-weight:600;line-height:1.5;margin:16px 0 8px;overflow-wrap:anywhere}.pr-course-description{color:rgba(255,255,255,.6);font-size:13px;line-height:1.8;min-height:47px;margin:0 0 24px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pr-progress-label{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:rgba(255,255,255,.5);margin:20px 0 8px}.pr-progress-label strong{color:rgba(255,255,255,.9);font-weight:500}.pr-progress{height:4px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.pr-progress>div{height:100%;border-radius:inherit;background:#ff0044;transition:width .3s ease}.pr-course-footer{margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:space-between;color:#ffb3c6;font-size:13px;font-weight:500}.pr-page .pr-button{border-radius:8px;font-size:12px;height:40px;padding:0 16px;transition:background .15s,border-color .15s;flex-shrink:0}.pr-page .pr-button:focus-visible{outline:2px solid #ffb3c6;outline-offset:3px;box-shadow:none}.pr-page .pr-primary{color:rgba(255,255,255,.9);border:1px solid transparent;background:linear-gradient(135deg,#cc0033,#ff0044);box-shadow:0 4px 20px rgba(255,0,68,.5)}.pr-page .pr-primary:hover:not(:disabled){background:#ff2060}.pr-page .pr-secondary{color:rgba(255,255,255,.9);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.06);box-shadow:none}.pr-page .pr-secondary:hover:not(:disabled){background:#252525;border-color:rgba(255,255,255,.12)}.pr-page .pr-back{color:rgba(255,255,255,.6);padding:0 8px;margin:0 0 20px -8px;background:transparent}.pr-page .pr-back:hover{color:rgba(255,255,255,.9);background:rgba(255,255,255,.06)}.pr-detail{display:grid;grid-template-columns:320px minmax(0,1fr);gap:32px;align-items:start}.pr-summary{position:sticky;top:88px}.pr-summary h2{font-size:18px;font-weight:600;margin:20px 0 0}.pr-summary .pr-sub{font-size:13px}.pr-full{width:100%;margin-top:24px}.pr-summary-tip{margin:16px 0 0;color:rgba(255,255,255,.5);font-size:11px;line-height:1.8;text-align:center}.pr-chapters{min-width:0}.pr-chapter{margin-bottom:24px;border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;background:#181818}.pr-chapter-head{padding:16px;display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid rgba(255,255,255,.08)}.pr-chapter-head>div{display:flex;align-items:center;gap:12px;min-width:0}.pr-chapter-head h3{margin:0;font-size:16px;font-weight:500;overflow-wrap:anywhere}.pr-chapter-number{color:rgba(255,255,255,.35);font-size:12px}.pr-lessons{margin:0;padding:0;list-style:none}.pr-lesson{display:flex;align-items:center;gap:16px;padding:24px 16px;border-bottom:1px solid rgba(255,255,255,.05)}.pr-lesson:last-child{border-bottom:0}.pr-lesson.is-current{background:rgba(255,0,68,.05);box-shadow:inset 2px 0 #ff0044}.pr-lesson-index{display:grid;place-items:center;align-self:flex-start;width:32px;height:32px;border-radius:10px;flex-shrink:0;color:rgba(255,255,255,.5);background:rgba(255,255,255,.06);font-size:12px}.pr-lesson-index.is-done{color:#10b981;background:rgba(16,185,129,.15)}.pr-lesson-body{flex:1;min-width:0}.pr-lesson-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.pr-lesson h4{margin:0;font-size:14px;font-weight:500;line-height:1.6;overflow-wrap:anywhere}.pr-lesson-body>p{margin:8px 0 12px;font-size:13px;line-height:1.8;color:rgba(255,255,255,.6)}.pr-lesson-meta{display:flex;flex-wrap:wrap;gap:12px;color:rgba(255,255,255,.5);font-size:11px}.pr-free{color:#10b981}.pr-credit{color:#f59e0b}.pr-lesson-progress{display:flex;align-items:center;gap:12px;margin-top:16px;font-size:11px;color:#ffb3c6}.pr-lesson-progress .pr-progress{width:120px;max-width:65%}.pr-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;border:1px dashed rgba(255,255,255,.12);border-radius:16px;color:rgba(255,255,255,.5);text-align:center;gap:16px}.pr-empty h2{font-size:18px;color:rgba(255,255,255,.9);margin:0}.pr-empty p{margin:0 0 8px;font-size:13px;line-height:1.8}.pr-error{padding:16px;margin-bottom:24px;background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);border-radius:12px;font-size:13px;color:rgba(255,255,255,.9)}.pr-skeleton{border:1px solid rgba(255,255,255,.05);border-radius:16px;background:#181818;overflow:hidden;padding-bottom:24px}.pr-skeleton>div{aspect-ratio:16/9;background:rgba(255,255,255,.06)}.pr-skeleton>span{display:block;height:16px;margin:24px 16px 0;width:65%;border-radius:6px;background:rgba(255,255,255,.06)}.pr-skeleton>span:last-child{width:40%}.pr-spin{animation:pr-spin 1s linear infinite}@keyframes pr-spin{to{transform:rotate(1turn)}}@media (max-width:1024px){.pr-detail{grid-template-columns:260px minmax(0,1fr);gap:24px}.pr-lesson{flex-wrap:wrap}.pr-lesson>.pr-button{margin-left:48px}}@media (max-width:768px){.pr-shell{padding-top:24px;padding-bottom:40px}.pr-head{padding-bottom:32px}.pr-head-note{display:none}.pr-detail{grid-template-columns:1fr}.pr-summary{position:static}.pr-summary .pr-cover{max-height:240px}.pr-section-head{align-items:baseline;flex-wrap:wrap;gap:8px}.pr-lesson>.pr-button{width:calc(100% - 48px)}}@media (prefers-reduced-motion:reduce){.pr-page *,.pr-page :after,.pr-page :before{animation:none!important;transition:none!important}.pr-page .pr-course-card:hover{transform:none}}