:root{--font-display:"Sora", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--ink:#171a22;--ink-2:#575e70;--ink-3:#9096a6;--accent:#4f46e5;--accent-strong:#4338ca;--accent-soft:#eef0ff;--accent-glow:#818cf8;--card:#fff;--line:#e6e8f0;--wash:#f4f5f9;--player-bg:#0e0f1a;--radius-s:10px;--radius-m:16px;--radius-l:20px;--shadow-card:0 1px 2px #171a2d0d, 0 8px 24px #171a2d0f;--shadow-phone:0 32px 70px #171a2d2e, 0 4px 16px #171a2d14}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;background:radial-gradient(52rem 32rem at 12% -6%,#6366f124,#0000 60%),radial-gradient(44rem 30rem at 96% 108%,#0d94881c,#0000 60%),#eef0f6}h1,h2,h3{font-family:var(--font-display);margin:0}p,ul{margin:0;padding:0}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}img,video{max-width:100%;display:block}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}::selection{background:#dfe3ff}.page{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100dvh;padding:36px 16px 24px;display:flex}.phone{background:var(--card);width:min(400px,100%);height:min(844px,100dvh - 110px);min-height:560px;box-shadow:var(--shadow-phone);border:1px solid #171a2d14;border-radius:32px;position:relative;overflow:hidden}.screen{overscroll-behavior:contain;scrollbar-width:none;height:100%;animation:.22s ease-out both screen-in;overflow-y:auto}.screen::-webkit-scrollbar{width:0}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.screen-body{flex-direction:column;gap:22px;padding:0 20px 26px;display:flex}.page-footer{color:var(--ink-3);font-size:12.5px}.page-footer a{color:var(--ink-2);text-underline-offset:3px;text-decoration:underline}.page-footer a:hover{color:var(--accent)}.top-bar{z-index:10;-webkit-backdrop-filter:blur(10px);background:#ffffffe0;justify-content:space-between;align-items:center;gap:8px;margin:0 -20px;padding:16px 14px 10px;display:flex;position:sticky;top:0}.top-bar-back{color:var(--ink);border-radius:12px;align-items:center;gap:7px;padding:8px 10px;font-size:14.5px;font-weight:600;transition:background-color .15s;display:inline-flex}.top-bar-back:hover{background:var(--wash)}.top-bar-back:active{background:var(--line)}.icon-btn{width:38px;height:38px;color:var(--ink-2);border-radius:12px;justify-content:center;align-items:center;transition:background-color .15s,color .15s,transform .15s;display:inline-flex}.icon-btn:hover{background:var(--wash);color:var(--ink)}.heart-btn.is-active{color:#e11d48}.heart-btn:active{transform:scale(.9)}.section{flex-direction:column;gap:12px;display:flex}.section>h2{letter-spacing:-.01em;font-size:15px;font-weight:700}.more-dots{text-align:center;color:var(--ink-3);letter-spacing:5px;-webkit-user-select:none;user-select:none;font-size:15px;font-weight:700}.screen-actions{flex-direction:column;gap:10px;margin-top:2px;display:flex}.btn{letter-spacing:-.01em;border-radius:15px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:50px;padding:12px 18px;font-size:15px;font-weight:600;transition:background-color .15s,border-color .15s,color .15s,transform .1s,box-shadow .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 10px 22px #4f46e547}.btn-primary:hover{background:var(--accent-strong)}.btn-secondary{background:var(--card);border:1.5px solid var(--line);color:var(--ink)}.btn-secondary svg{color:var(--accent)}.btn-secondary:hover{background:var(--accent-soft);border-color:#c9cdf5}.btn-ghost{color:var(--ink-2)}.btn-ghost:hover{background:var(--wash);color:var(--ink)}.course-hero{align-items:flex-start;gap:15px;display:flex}.course-hero-img{object-fit:cover;border:1px solid var(--line);border-radius:18px;flex-shrink:0;width:106px;height:106px}.course-hero-copy{flex-direction:column;gap:7px;padding-top:2px;display:flex}.course-hero-copy h1{letter-spacing:-.02em;font-size:21px;font-weight:700;line-height:1.18}.course-hero-copy p{color:var(--ink-2);font-size:13px;line-height:1.5}.outcome-list{flex-direction:column;gap:10px;list-style:none;display:flex}.outcome-list li{color:var(--ink-2);align-items:flex-start;gap:11px;font-size:13.5px;line-height:1.5;display:flex}.outcome-check{background:var(--accent-soft);width:21px;height:21px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:.5px;display:inline-flex}.instructor-card{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);width:100%;box-shadow:var(--shadow-card);align-items:center;gap:13px;padding:11px 12px;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex}.instructor-card:hover{border-color:#c9cdf5;transform:translateY(-1px);box-shadow:0 4px 8px #171a2d0f,0 12px 28px #171a2d17}.instructor-card img{object-fit:cover;border-radius:14px;width:48px;height:48px}.instructor-card-copy{flex-direction:column;flex:1;gap:2px;display:flex}.instructor-card-copy strong{font-size:14.5px;font-weight:600}.instructor-card-copy span{color:var(--ink-2);font-size:12.5px}.instructor-card-chevron{color:var(--ink-3)}.syllabus-peek{flex-direction:column;gap:9px;list-style:none;display:flex}.syllabus-peek li{color:var(--ink-2);align-items:center;gap:11px;font-size:13.5px;display:flex}.peek-glyph{background:var(--wash);width:26px;height:26px;color:var(--ink-3);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.peek-glyph.is-preview{background:var(--accent-soft);color:var(--accent)}.peek-title{flex:1}.peek-duration{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:12px}.module-title{letter-spacing:-.01em;font-size:15px;font-weight:700}.lesson-list{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m);box-shadow:var(--shadow-card);list-style:none;overflow:hidden}.lesson-list li+li{border-top:1px solid var(--line)}.lesson-row{text-align:left;align-items:center;gap:13px;width:100%;padding:13px 14px;display:flex}.lesson-row.is-preview{transition:background-color .15s}.lesson-row.is-preview:hover{background:var(--accent-soft)}.lesson-glyph{width:24px;color:var(--accent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.lesson-bullet{background:var(--ink-3);border-radius:50%;width:7px;height:7px}.lesson-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.lesson-title{color:var(--ink);font-size:14.5px;font-weight:600}.lesson-code{color:var(--ink-3);font-variant-numeric:tabular-nums;margin-right:3px}.lesson-row.is-locked .lesson-title{color:var(--ink-2);font-weight:500}.lesson-preview-tag{color:var(--accent);font-size:12px;font-weight:600}.lesson-duration{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:12px}.lesson-lock{color:var(--ink-3);flex-shrink:0}.video-player{background:var(--player-bg);border-radius:var(--radius-l);overflow:hidden;box-shadow:0 18px 40px #0e0f1a59}.video-stage{aspect-ratio:16/9;cursor:pointer;background:radial-gradient(24rem 14rem at 80% 0,#818cf859,#0000 65%),linear-gradient(140deg,#232447,#0e0f1a 70%);position:relative}.video-stage video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.video-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#ffffffeb;letter-spacing:.02em;pointer-events:none;background:#0e0f1a99;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600;position:absolute;top:10px;left:10px}.video-overlay-play{width:64px;height:64px;color:var(--accent-strong);background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;transition:transform .15s,background-color .15s;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #0e0f1a73}.video-overlay-play svg{margin-left:3px}.video-overlay-play:hover{background:#fff;transform:translate(-50%,-50%)scale(1.06)}.video-controls{align-items:center;gap:10px;padding:9px 12px 11px;display:flex}.video-ctl{color:#ffffffeb;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:background-color .15s;display:inline-flex}.video-ctl:hover{background:#ffffff1f}.video-track{cursor:pointer;border-radius:999px;flex:1;height:22px;position:relative}.video-track:before{content:"";background:#ffffff38;border-radius:999px;height:4px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.video-track-fill{background:var(--accent-glow);pointer-events:none;border-radius:999px;height:4px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.video-track-thumb{pointer-events:none;background:#fff;border-radius:50%;width:12px;height:12px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #0006}.video-time{color:#ffffffbf;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:500}.video-player.is-immersive{z-index:60;flex-direction:column;display:flex;position:fixed;inset:16px;box-shadow:0 40px 90px #0000008c}.video-player.is-immersive .video-stage{aspect-ratio:auto;flex:1}.video-player.is-immersive .video-stage video{object-fit:contain}.video-player:fullscreen{border-radius:0}.lesson-about{gap:10px}.lesson-heading{letter-spacing:-.015em;align-items:center;gap:10px;font-size:18.5px;font-weight:700;display:flex}.lesson-heading-code{background:var(--accent-soft);color:var(--accent);font-variant-numeric:tabular-nums;border-radius:9px;flex-shrink:0;padding:3px 9px;font-size:13px;font-weight:700}.lesson-about p{color:var(--ink-2);font-size:14px;line-height:1.6}.lesson-about .lesson-note{color:var(--ink-3);border-left:3px solid var(--line);padding-left:11px;font-size:12.5px}.profile-header{align-items:center;gap:16px;display:flex}.profile-header img{object-fit:cover;border:1px solid var(--line);border-radius:22px;flex-shrink:0;width:78px;height:78px}.profile-header-copy{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.profile-header-copy h1{letter-spacing:-.02em;font-size:21px;font-weight:700}.profile-role{color:var(--ink-2);font-size:14px}.profile-experience{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;margin-top:3px;padding:3px 10px;font-size:12.5px;font-weight:600}.prose{color:var(--ink-2);font-size:14px;line-height:1.65}.dot-list{flex-direction:column;gap:9px;list-style:none;display:flex}.dot-list li{color:var(--ink-2);padding-left:18px;font-size:13.5px;line-height:1.55;position:relative}.dot-list li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:2px}@media (width<=460px){.page{gap:10px;padding:0 0 10px}.phone{border-left:none;border-right:none;border-radius:0 0 24px 24px;height:calc(100dvh - 42px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
