:root{--bg0: #f6f7fb;--bg1: #eef0f7;--text: rgba(10, 12, 18, .92);--muted: rgba(10, 12, 18, .62);--stroke: rgba(10, 12, 18, .12);--stroke2: rgba(10, 12, 18, .1);--glass: rgba(255,255,255,.58);--glass2: rgba(255,255,255,.46);--shadow: 0 18px 60px rgba(15, 20, 35, .18);--shadow2: 0 10px 28px rgba(15, 20, 35, .12);--radius: 24px;--radius2: 18px;--accent: #007AFF}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";color:var(--text);background:radial-gradient(1200px 900px at 10% 10%,rgba(0,122,255,.18),transparent 55%),radial-gradient(1100px 900px at 90% 20%,rgba(175,82,222,.16),transparent 55%),radial-gradient(1100px 900px at 60% 90%,rgba(52,199,89,.14),transparent 55%),linear-gradient(180deg,var(--bg0),var(--bg1));overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:inherit}.muted{color:var(--muted)}.small{font-size:12.5px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.glass{background:linear-gradient(180deg,#ffffffb8,#ffffff75);border:1px solid var(--stroke);border-radius:var(--radius2);box-shadow:var(--shadow2);-webkit-backdrop-filter:blur(18px) saturate(140%);backdrop-filter:blur(18px) saturate(140%)}.appBg{min-height:100vh;padding:26px 16px 20px;display:flex;flex-direction:column;align-items:center;gap:14px}.window{width:min(1240px,100%);min-height:min(820px,calc(100vh - 120px));display:grid;grid-template-columns:320px 1fr;gap:14px;padding:14px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.45);background:#ffffff4d;-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%);box-shadow:var(--shadow)}@media (max-width: 980px){.window{grid-template-columns:1fr}}.sidebar{padding:14px;display:flex;flex-direction:column;gap:14px}.sidebarHeader{display:flex;align-items:center;gap:12px;padding:10px}.appBadge{width:44px;height:44px;border-radius:16px;background:#fffc;border:1px solid rgba(10,12,18,.1);box-shadow:0 10px 25px #0f14231a;position:relative;overflow:hidden}.appBadge:before{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;background:conic-gradient(from 110deg,#007aff8c,#ff3b3066,#34c75966,#af52de73,#007aff8c);filter:blur(10px);opacity:.55}.appBadgeDot{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:12px;height:12px;border-radius:999px;background:#0a0c12db;box-shadow:0 0 0 8px #0a0c1214}.appName{font-weight:760;letter-spacing:-.02em}.navGroup{display:flex;flex-direction:column;gap:8px}.navTitle{padding:0 10px}.navList{display:flex;flex-direction:column;gap:6px}.navItem{display:flex;gap:10px;align-items:center;padding:10px;border-radius:14px;border:1px solid transparent;transition:transform .14s ease,background .14s ease,border-color .14s ease;background:#ffffff59}.navItem:hover{transform:translateY(-1px);border-color:#0a0c121a;background:#ffffff85}.navItemActive{border-color:color-mix(in srgb,var(--accent) 35%,rgba(10,12,18,.1));background:color-mix(in srgb,var(--accent) 12%,rgba(255,255,255,.62))}.navDot{width:10px;height:10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 75%,rgba(10,12,18,.25));box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.2));flex:0 0 auto}.navText{display:flex;flex-direction:column;gap:1px}.navMain{font-weight:740;letter-spacing:-.01em;font-size:13.5px}.navSub{max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebarFooter{margin-top:auto;padding:10px 10px 2px}.main{display:flex;flex-direction:column;gap:12px;min-width:0}.topbar{padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.topbarTitle{font-weight:760;letter-spacing:-.02em;font-size:16px}.topbarSubtitle{margin-top:2px}.topbarRight{display:flex;align-items:center;gap:10px}.topLink{padding:8px 12px;border-radius:999px;border:1px solid rgba(10,12,18,.1);background:#ffffff8c;transition:transform .14s ease}.topLink:hover{transform:translateY(-1px)}.mainScroll{flex:1;overflow:auto;padding-right:2px}.pageFadeIn{animation:fadeIn .22s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.hero{padding:18px;display:flex;justify-content:space-between;align-items:flex-start;gap:14px}@media (max-width: 820px){.hero{flex-direction:column}}.heroTitle{font-weight:820;letter-spacing:-.03em;font-size:22px}.heroSubtitle{margin-top:6px;max-width:62ch}.heroPills{display:flex;gap:8px;flex-wrap:wrap}.sectionTop{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:14px 2px 10px}.h2{font-size:14px;font-weight:760;letter-spacing:-.01em}.h3{font-size:13.5px;font-weight:760;letter-spacing:-.01em}.cardGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media (max-width: 780px){.cardGrid{grid-template-columns:1fr}}.courseTile{padding:16px;border-radius:18px;position:relative;overflow:hidden;transition:transform .16s ease,border-color .16s ease}.courseTile:before{content:"";position:absolute;top:-60%;right:-60%;bottom:-60%;left:-60%;background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--accent) 35%,transparent),transparent 55%);filter:blur(18px);opacity:.55}.courseTile>*{position:relative;z-index:1}.courseTile:hover{transform:translateY(-2px);border-color:#0a0c1224}.courseTileTop{display:flex;justify-content:space-between;gap:10px}.courseTileName{font-weight:780;letter-spacing:-.02em}.courseChip{padding:5px 10px;border-radius:999px;border:1px solid rgba(10,12,18,.1);background:#ffffff8c;font-size:12px;font-weight:720}.courseTileDesc{margin-top:8px;line-height:1.35}.courseTileMeta{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.cta{margin-left:auto;font-weight:780;letter-spacing:-.01em;padding:6px 10px;border-radius:999px;background:#ffffff8c;border:1px solid rgba(10,12,18,.1)}.linksPanel{padding:14px}.linksGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media (max-width: 980px){.linksGrid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.linksGrid{grid-template-columns:1fr}}.linkCard{padding:12px;border-radius:16px;transition:transform .16s ease,border-color .16s ease}.linkCard:hover{transform:translateY(-1px);border-color:#0a0c1224}.linkLabel{font-weight:780;letter-spacing:-.01em}.pill{font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid rgba(10,12,18,.1);background:#ffffff8c}.pill.subtle{opacity:.75}.courseHeader{padding:18px;display:flex;justify-content:space-between;gap:14px;align-items:flex-start}@media (max-width: 820px){.courseHeader{flex-direction:column}}.courseTitle{font-weight:860;letter-spacing:-.03em;font-size:20px}.courseHeaderActions{display:flex;gap:10px;align-items:center}.panel{padding:14px;margin-top:12px}.panelTop{display:flex;justify-content:space-between;align-items:center;gap:12px}.search{width:min(360px,100%);padding:10px 12px;border-radius:14px;border:1px solid rgba(10,12,18,.1);background:#fff9;color:var(--text);outline:none}.search::placeholder{color:#0a0c1275}.search:focus{border-color:color-mix(in srgb,var(--accent) 40%,rgba(10,12,18,.12));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 10%,transparent)}.pdfList{margin-top:12px;display:grid;grid-template-columns:1fr;gap:10px}.pdfItem{display:flex;align-items:center;gap:12px;padding:12px;border-radius:16px;transition:transform .16s ease,border-color .16s ease}.pdfItem:hover{transform:translateY(-1px);border-color:#0a0c1224}.pdfIcon{width:40px;height:32px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:11px;letter-spacing:.06em;color:#ffffffeb;background:color-mix(in srgb,var(--accent) 70%,rgba(10,12,18,.18))}.pdfTitle{flex:1;font-weight:740;font-size:13.5px}.pdfAction{font-size:12px;color:#0a0c129e}.primaryBtn{padding:10px 12px;border-radius:14px;border:1px solid rgba(10,12,18,.1);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.7)),#ffffff8a);color:#0a0c12eb;cursor:pointer;font-weight:800;letter-spacing:-.01em;transition:transform .16s ease}.primaryBtn:hover{transform:translateY(-1px)}.hint{font-size:12.5px;color:#0a0c128f;line-height:1.35}.spacer12{height:12px}.spacer16{height:16px}.rowBetween{display:flex;align-items:center;justify-content:space-between}.gap12{gap:12px}.cardPad{padding:14px}.modalOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c1259;display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.modal{width:min(980px,100%);border-radius:26px;background:#ffffff9e;border:1px solid rgba(10,12,18,.12);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%);overflow:hidden}.modalTop{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid rgba(10,12,18,.1)}.modalTitle{font-weight:860;letter-spacing:-.02em}.iconBtn{border:1px solid rgba(10,12,18,.1);background:#ffffffb3;color:#0a0c12db;width:36px;height:36px;border-radius:14px;cursor:pointer}.modalBody{padding:14px 16px 18px}.videoFrameWrap{border-radius:18px;border:1px solid rgba(10,12,18,.1);overflow:hidden;background:#ffffff8c}.videoFrame{width:100%;aspect-ratio:16 / 9;border:0;display:block}.videoTag{width:100%;aspect-ratio:16 / 9;display:block;background:#ffffff8c}.emptyState{padding:18px}.footer{width:min(1240px,100%);text-align:center;padding:4px 0 10px;font-size:10px}.tagRow{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.legalPage{padding:18px;max-width:980px;margin:0 auto}.legalTitle{font-weight:860;letter-spacing:-.03em;font-size:20px}.legalIntro{margin-top:8px;line-height:1.4}.legalBlock{margin-top:14px;padding-top:12px;border-top:1px solid rgba(10,12,18,.1)}.legalText{margin-top:8px;line-height:1.45}.legalNote{margin-top:14px;padding-top:12px;border-top:1px solid rgba(10,12,18,.1)}.footer{width:min(1240px,100%);text-align:center;padding:6px 0 10px;display:flex;gap:8px;flex-wrap:wrap;justify-content:center;align-items:center;font-size:10px}.footerLink{text-decoration:underline;text-underline-offset:2px}.footerSep{opacity:.7}.twoCol{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width: 900px){.twoCol{grid-template-columns:1fr}}.sectionCard{padding:14px}.bullets{margin:0;padding-left:18px}.bullet{margin:8px 0;line-height:1.35}.fileRow{display:flex;gap:12px;align-items:center;padding:12px}.fileIcon{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:860;letter-spacing:.02em;font-size:11px;background:#ffffff8c;border:1px solid rgba(10,12,18,.1)}.fileMain{flex:1;min-width:0}.fileTitle{font-weight:780;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filePath{margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fileActions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ghostBtn{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 12px;border-radius:12px;border:1px solid rgba(10,12,18,.12);background:#ffffff59;font-weight:750}.videoWrapNoDl{position:relative;border-radius:18px;overflow:hidden;border:1px solid rgba(10,12,18,.1);background:#fff6}.videoTagNoControls{width:100%;height:auto;display:block;background:#000000d9}.videoOverlayBtn{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:fit-content;height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#00000073;color:#ffffffeb;font-weight:780;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.videoControlsBar{position:absolute;left:10px;right:10px;bottom:10px;display:flex;gap:10px;align-items:center;padding:10px;border-radius:16px;background:#ffffff73;border:1px solid rgba(10,12,18,.1);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-wrap:wrap}.videoTimeline{position:relative;flex:1;min-width:0;height:28px;display:flex;align-items:center}.videoRange{width:100%;height:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.videoRange::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:#0a0c121f}.videoRange::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:999px;background:#0a0c12d9;margin-top:-5px}.videoProgress{position:absolute;left:0;top:50%;transform:translateY(-50%);height:6px;border-radius:999px;background:#0a0c124d;pointer-events:none}.videoTime{font-weight:760;font-size:12px;opacity:.9;white-space:nowrap}.videoVol{width:110px;display:flex;align-items:center}.videoVolRange{width:100%;height:28px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent}.videoVolRange::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:#0a0c121f}.videoVolRange::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:999px;background:#0a0c12d9;margin-top:-4px}.videoWrapNoDl.isFullscreen{border-radius:0}.videoWrapNoDl.isFullscreen .videoControlsBar{left:14px;right:14px;bottom:14px}.topbarLeft{display:flex;align-items:center;gap:12px;min-width:0}.topLogo{width:24px;height:24px;border-radius:6px;background:#a0a5ac8c;border:1px solid rgba(10,12,18,.12);flex:0 0 auto}.topbarText{min-width:0}.topTitle,.topSubtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loginSimple{min-height:calc(100vh - 60px);display:flex;align-items:center;justify-content:center;padding:18px}.loginBox{width:min(420px,92vw);padding:20px;border-radius:16px;background:#ffffffe6;border:1px solid rgba(10,12,18,.1);box-shadow:0 18px 60px #0a0c121a}.loginMsg{font-size:14px;font-weight:700;color:#0a0c12d1}.loginLabelSimple{display:block}.loginLabelText{font-size:12px;font-weight:700;color:#0a0c1299}.loginInputSimple{margin-top:8px;width:100%;height:44px;border-radius:12px;border:1px solid rgba(10,12,18,.14);padding:0 12px;background:#fff;font-size:16px;font-weight:700;outline:none}.loginInputSimple:focus{border-color:#0a0c1247;box-shadow:0 0 0 4px #0a0c120f}.loginBtnSimple{width:100%;height:44px;border-radius:12px;border:1px solid rgba(10,12,18,.14);background:#0a0c12e6;color:#fff;font-weight:800}.loginBtnSimple:disabled{opacity:.55}.loginErrorSimple{padding:10px 12px;border-radius:12px;border:1px solid rgba(220,60,60,.25);background:#dc3c3c14;color:#a01e1ef2;font-weight:760}
