:root{--bg-color: #0f172a;--card-bg: rgba(30, 41, 59, .7);--accent-color: #38bdf8;--accent-secondary: #818cf8;--text-primary: #f8fafc;--text-secondary: #94a3b8;--border-color: rgba(255, 255, 255, .1);--glass-bg: rgba(15, 23, 42, .8);--font-family: "Inter", system-ui, -apple-system, sans-serif}[data-topic=claude]{--accent-color: #d97706;--accent-secondary: #fbbf24}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);line-height:1.6;overflow-x:hidden}.sidebar{position:fixed;left:0;top:0;width:280px;height:100vh;background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-right:1px solid var(--border-color);padding:2rem;z-index:100;transition:transform .3s ease}.topic-switcher{margin-bottom:2rem}#topic-select{width:100%;padding:.6rem .8rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:.9rem;cursor:pointer;outline:none}#topic-select option{background:#1e293b}.sidebar h2{font-size:1.5rem;margin-bottom:2rem;background:linear-gradient(90deg,var(--accent-color),var(--accent-secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.nav-links{list-style:none}.nav-links li{margin-bottom:.5rem}.nav-links a{display:block;padding:.75rem 1rem;color:var(--text-secondary);text-decoration:none;border-radius:8px;transition:all .2s ease}.nav-links a:hover,.nav-links a.active{background:#38bdf81a;color:var(--accent-color)}main{margin-left:280px;padding:3rem;max-width:1200px}.hero{padding:4rem 0;text-align:left}.hero h1{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero p{font-size:1.25rem;color:var(--text-secondary);max-width:600px;margin-bottom:2.5rem}.content-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:3rem}.card{background:var(--card-bg);border:1px solid var(--border-color);padding:2rem;border-radius:16px;transition:transform .3s ease,border-color .3s ease;cursor:pointer;position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--accent-color);transform:scaleX(0);transition:transform .3s ease}.card:hover{transform:translateY(-5px);border-color:var(--accent-color)}.card:hover:before{transform:scaleX(1)}.card h3{margin-bottom:1rem}.card p{color:var(--text-secondary);font-size:.95rem}#editor-container{height:400px;border-radius:12px;border:1px solid var(--border-color);margin-top:2rem;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade{animation:fadeIn .6s ease forwards}section h1{font-size:2.5rem;font-weight:800;margin-bottom:1rem;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}section h2{font-size:1.4rem;font-weight:600;margin-top:2rem;margin-bottom:.5rem;color:var(--accent-color)}.section-desc{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.05rem}.card{text-decoration:none;color:inherit;display:block}.hero-badge{display:inline-block;background:#38bdf826;border:1px solid rgba(56,189,248,.4);color:var(--accent-color);padding:.3rem 1rem;border-radius:999px;font-size:.85rem;font-weight:600;margin-bottom:1.5rem;letter-spacing:.05em}.hero-install{display:inline-block;background:#0f172ae6;border:1px solid var(--border-color);border-radius:10px;padding:.75rem 1.5rem;margin-bottom:1rem}.hero-install code{color:#a5f3fc;font-family:JetBrains Mono,Fira Code,monospace;font-size:1rem}.badge{display:inline-block;background:#38bdf81f;color:var(--accent-color);border-radius:6px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;margin-bottom:.75rem;border:1px solid rgba(56,189,248,.25)}.chip{display:inline-block;background:#818cf81a;border:1px solid rgba(129,140,248,.3);color:#a5b4fc;border-radius:999px;padding:.25rem .9rem;font-size:.8rem;margin-right:.5rem;margin-top:.5rem;text-decoration:none;transition:background .2s ease}.chip:hover{background:#818cf840}.path-list{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.path-step{display:flex;gap:1.5rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;transition:border-color .2s ease}.path-step:hover{border-color:var(--accent-color)}.step-num{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:50%;background:linear-gradient(135deg,var(--accent-color),var(--accent-secondary));display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;color:var(--bg-color)}.step-body h3{margin-bottom:.4rem}.step-body p{color:var(--text-secondary);font-size:.95rem;margin-bottom:.5rem}.code-block{background:#0a0f1e;border:1px solid var(--border-color);border-radius:10px;margin:1rem 0;overflow:hidden}.code-header{display:flex;justify-content:space-between;align-items:center;padding:.4rem 1rem;background:#ffffff0a;border-bottom:1px solid var(--border-color)}.code-lang{color:var(--accent-color);font-size:.75rem;font-weight:600;text-transform:uppercase}.copy-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.8rem;transition:color .2s}.copy-btn:hover{color:var(--accent-color)}.code-block pre{margin:0;padding:1rem 1.25rem;overflow-x:auto}.code-block code{font-family:JetBrains Mono,Fira Code,monospace;font-size:.88rem;color:#a5f3fc;white-space:pre;line-height:1.7}.module-list{display:flex;flex-direction:column;gap:1.5rem;margin-top:1rem}.module-card{display:flex;gap:1.5rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;transition:border-color .2s}.module-card:hover{border-color:var(--accent-color)}.module-icon{font-size:2rem;flex-shrink:0}.module-body h3{margin-bottom:.4rem}.module-body p{color:var(--text-secondary);font-size:.95rem}.tip-list{list-style:none;margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.tip-list li{color:var(--text-secondary);font-size:.95rem;padding-left:.25rem}.info-table{width:100%;border-collapse:collapse;margin-top:1rem;font-size:.9rem}.info-table th{text-align:left;padding:.6rem 1rem;background:#38bdf81a;color:var(--accent-color);font-weight:600;border-bottom:1px solid var(--border-color)}.info-table td{padding:.6rem 1rem;border-bottom:1px solid rgba(255,255,255,.05);color:var(--text-secondary)}.info-table tr:last-child td{border-bottom:none}.kurs-card{cursor:pointer}.kurs-card-icon{font-size:2rem;margin:.5rem 0 .75rem}.kurs-badge-row{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.duration{color:var(--text-secondary);font-size:.85rem}.lernziele{background:#38bdf80f;border:1px solid rgba(56,189,248,.2);border-radius:12px;padding:1.25rem 1.5rem;margin:1.5rem 0}.lernziele h3{color:var(--accent-color);margin-bottom:.75rem}.lernziele ul{list-style:none;display:flex;flex-direction:column;gap:.4rem}.lernziele li:before{content:"✓ ";color:var(--accent-color);font-weight:700}.lernziele li{color:var(--text-secondary)}.tutorial-steps,.lab-steps{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.tutorial-step,.lab-step{display:flex;gap:1.25rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:14px;padding:1.25rem}.step-label,.lab-step-num{flex-shrink:0;font-size:.7rem;font-weight:700;text-transform:uppercase;color:var(--accent-color);letter-spacing:.08em;padding-top:3px}.lab-step-num{width:2rem;height:2rem;border-radius:50%;background:linear-gradient(135deg,var(--accent-color),var(--accent-secondary));display:flex;align-items:center;justify-content:center;font-size:.9rem;color:var(--bg-color)}.step-content-body h4,.lab-step-body h4{margin-bottom:.5rem;font-size:1rem}.goal-box{background:#38bdf814;border-left:3px solid var(--accent-color);border-radius:0 10px 10px 0;padding:1rem 1.25rem;margin:1.5rem 0;color:var(--text-secondary)}.back-btn{background:none;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:.5rem 1rem;margin-bottom:1.5rem;transition:all .2s;font-size:.9rem}.back-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;margin-top:2.5rem}.home-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;cursor:pointer;transition:transform .25s ease,border-color .25s;text-align:center}.home-card:hover{transform:translateY(-4px);border-color:var(--accent-color)}.home-icon{font-size:2.5rem;margin-bottom:.75rem}.home-card h3{font-size:1.05rem;margin-bottom:.35rem}.home-card p{color:var(--text-secondary);font-size:.85rem}.wiki-list{display:flex;flex-direction:column;gap:3rem;margin-top:2rem}.wiki-cat h3{font-size:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.wiki-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.wiki-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;transition:border-color .2s}.wiki-item:hover{border-color:var(--accent-color)}.wiki-term{font-weight:800;color:var(--accent-color);margin-bottom:.5rem;font-family:JetBrains Mono,monospace}.wiki-def{color:var(--text-secondary);font-size:.9rem}.step-nav{display:flex;justify-content:space-between;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border-color)}.nav-btn{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-primary);padding:.75rem 1.5rem;border-radius:10px;cursor:pointer;transition:all .2s;font-weight:600}.nav-btn:hover{border-color:var(--accent-color);background:#38bdf81a}.code-actions{display:flex;gap:.5rem}.try-btn{background:#38bdf81a;border:1px solid rgba(56,189,248,.3);color:var(--accent-color);cursor:pointer;border-radius:4px;padding:.2rem .6rem;font-size:.75rem;font-weight:600;transition:all .2s}.try-btn:hover{background:var(--accent-color);color:var(--bg-color)}#cookie-banner{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);width:90%;max-width:500px;background:#1e293b;border:1px solid #334155;border-radius:1rem;padding:1.5rem;box-shadow:0 20px 25px -5px #0000004d;z-index:9999;display:none;align-items:center;gap:1.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:slideUp .5s ease-out}#cookie-banner.show{display:flex}.cookie-actions{display:flex;gap:.75rem;flex-shrink:0}.cookie-btn{padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.cookie-btn.accept{background:#3b82f6;color:#fff;border:none}.cookie-btn.accept:hover{background:#2563eb}.cookie-btn.decline{background:transparent;color:#94a3b8;border:1px solid #334155}@keyframes slideUp{0%{transform:translate(-50%,100%);opacity:0}to{transform:translate(-50%);opacity:1}}@media(max-width:640px){#cookie-banner{flex-direction:column;text-align:center;bottom:1rem}}.impressum-container{max-width:800px;margin:0 auto;padding:2rem;line-height:1.6}.impressum-container h1{margin-bottom:2rem;color:var(--accent-color)}.impressum-container h2{margin-top:2rem;font-size:1.25rem}.impressum-container h3{margin-top:1.5rem;font-size:1.1rem}.impressum-container section{margin-bottom:2rem}.impressum-container p{margin-bottom:1rem;color:var(--text-secondary)}.nav-separator{height:1px;background:var(--border-color);margin:1rem 0;opacity:.5;list-style:none}.youtube-placeholder{aspect-ratio:16/9;background:#0f172a;border:1px solid #334155;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;gap:1rem;margin:1.5rem 0}.youtube-placeholder p{color:#94a3b8;max-width:400px;margin:0}.youtube-placeholder .consent-btn{background:#ef4444;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem}.youtube-placeholder .consent-btn:hover{background:#dc2626}.youtube-video{width:100%;aspect-ratio:16/9;border-radius:12px;border:none;margin:1.5rem 0}
