.course-page{max-width:720px;margin:0 auto;padding:48px 24px 80px}.back-link{display:inline-block;font-family:var(--font-body);font-size:12px;font-weight:400;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);text-decoration:none;margin-bottom:32px;transition:color .3s}.back-link:hover{color:var(--warm-glow)}.course-page h1{font-family:var(--font-display);font-size:36px;font-weight:400;color:var(--text-primary);letter-spacing:2px;margin-bottom:8px;text-align:center}.course-page .meta{font-family:var(--font-body);font-size:12px;font-weight:300;color:var(--text-dim);text-align:center;letter-spacing:1px;margin-bottom:56px}.section-heading{font-family:var(--font-display);font-size:22px;font-weight:500;color:var(--text-primary);margin:52px 0 16px;letter-spacing:1px}.section-divider{width:32px;height:1px;background:var(--border-warm);opacity:.4;margin-bottom:20px}.course-page p{font-family:var(--font-body);font-size:15px;font-weight:300;color:var(--text-secondary);line-height:1.8;margin-bottom:16px}html{scroll-behavior:smooth}.dt-process{display:flex;align-items:flex-start;gap:0;margin:28px 0 36px;position:relative}.dt-step{flex:1;text-align:center;position:relative}.dt-step:after{content:"";position:absolute;top:18px;right:-1px;width:100%;height:1px;background:var(--border-subtle);z-index:0}.dt-step:last-child:after{display:none}.dt-dot{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-card);display:flex;align-items:center;justify-content:center;margin:0 auto 10px;font-family:var(--font-body);font-size:11px;font-weight:500;color:var(--text-dim);position:relative;z-index:1;transition:all .3s}.dt-step.active .dt-dot,.dt-step.done .dt-dot{border-color:var(--border-subtle);color:var(--text-dim);opacity:.5}.dt-step button{all:unset;display:flex;flex-direction:column;align-items:center;cursor:pointer;width:100%}.dt-step button:hover .dt-dot{border-color:var(--border-warm);opacity:1}.dt-step.viewing .dt-dot{border-color:var(--warm-glow)!important;color:var(--warm-glow)!important;background:#e8a84c0f!important;opacity:1!important}.dt-step.viewing .dt-label{color:var(--text-secondary)}.etap-panel{display:none}.etap-panel.active{display:block}.dt-label{font-family:var(--font-body);font-size:10px;font-weight:400;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);line-height:1.4}.dt-step.active .dt-label{color:var(--text-secondary)}.dt-step-note{font-family:var(--font-display);font-style:italic;font-size:11px;color:var(--warm-glow);margin-top:6px}.status-card{border:1px solid var(--border-warm);background:linear-gradient(135deg,rgba(232,168,76,.04),transparent);padding:24px 28px;margin:28px 0;position:relative}.status-card:before{content:"";position:absolute;inset:4px;border:1px solid rgba(232,168,76,.08);pointer-events:none}.status-card-label{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:2px;text-transform:uppercase;color:var(--warm-glow);margin-bottom:10px}.status-card p{margin-bottom:0}.concept-list{list-style:none;padding:0;margin:0 0 24px}.concept-list li{font-family:var(--font-body);font-size:15px;font-weight:300;color:var(--text-secondary);line-height:1.7;padding:10px 0 10px 28px;border-bottom:1px solid var(--border-subtle);position:relative}.concept-list li:last-child{border-bottom:none}.concept-list li:before{content:"—";position:absolute;left:0;color:var(--warm-glow);opacity:.6}.materials-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}@media (max-width: 520px){.materials-grid{grid-template-columns:1fr}}.material-card{border:1px solid var(--border-subtle);background:var(--bg-card);padding:20px 20px 16px;display:flex;flex-direction:column;gap:8px;transition:border-color .3s;text-decoration:none}.material-card:hover{border-color:var(--border-warm)}.material-icon{font-size:20px;opacity:.5;margin-bottom:4px}.material-title{font-family:var(--font-display);font-size:16px;font-weight:500;color:var(--text-primary);letter-spacing:.5px;line-height:1.3}.material-desc{font-family:var(--font-body);font-size:12px;font-weight:300;color:var(--text-dim);line-height:1.6;flex:1}.material-download{font-family:var(--font-body);font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--warm-glow);margin-top:4px}.deadline-note{font-family:var(--font-display);font-style:italic;font-size:14px;color:var(--text-dim);text-align:center;margin-top:40px;padding-top:32px;border-top:1px solid var(--border-subtle)}
