@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#363636de;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:2}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.ap-overlay{position:fixed;inset:0;background:#0f172ab8;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:16px;animation:ap-fade .18s ease}@keyframes ap-fade{0%{opacity:0}to{opacity:1}}.ap-card{background:#fff;border-radius:22px;width:100%;max-width:430px;position:relative;box-shadow:0 24px 64px #0f172a47,0 0 0 1px #7c3aed14;animation:ap-pop .26s cubic-bezier(.34,1.42,.64,1);overflow:hidden}@keyframes ap-pop{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ap-stripe{height:4px;background:linear-gradient(90deg,#7c3aed,#2563eb 55%,#0ea5e9)}.ap-close{position:absolute;top:14px;right:14px;width:30px;height:30px;border-radius:50%;border:1.5px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:13px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s,border-color .15s;line-height:1}.ap-close:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.ap-brand{padding:24px 28px 0;text-align:center}.ap-brand-logo{font-size:24px;font-weight:800;letter-spacing:-.5px;background:linear-gradient(135deg,#7c3aed,#2563eb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.ap-brand-sub{font-size:12px;color:#94a3b8;margin:5px 0 0;font-family:inherit}.ap-tabs{display:flex;margin:20px 28px 0;background:#f1f5f9;border-radius:11px;padding:3px;position:relative;gap:0}.ap-tab{flex:1;padding:8px 0;border:none;background:transparent;font-size:13.5px;font-weight:600;color:#64748b;cursor:pointer;border-radius:9px;position:relative;z-index:1;transition:color .2s;font-family:inherit}.ap-tab.active{color:#7c3aed}.ap-tab-slider{position:absolute;top:3px;left:3px;width:calc(50% - 3px);bottom:3px;background:#fff;border-radius:9px;box-shadow:0 1px 5px #0000001a;transition:transform .25s cubic-bezier(.4,0,.2,1);pointer-events:none}.ap-form{padding:18px 28px 6px;display:flex;flex-direction:column;gap:13px}.ap-field{display:flex;flex-direction:column;gap:5px}.ap-label{font-size:12px;font-weight:700;color:#374151;letter-spacing:.02em;text-transform:uppercase;font-family:inherit}.ap-optional{font-weight:400;text-transform:none;color:#94a3b8;letter-spacing:0;font-size:11px}.ap-input{width:100%;padding:11px 14px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14.5px;color:#0f172a;background:#f8fafc;transition:border-color .15s,box-shadow .15s,background .15s;outline:none;box-sizing:border-box;font-family:inherit}.ap-input::placeholder{color:#b4bfc9}.ap-input:focus{border-color:#7c3aed;background:#fff;box-shadow:0 0 0 3px #7c3aed1f}.ap-input-wrap{position:relative;display:flex;align-items:center}.ap-input-wrap .ap-input{padding-right:42px}.ap-eye-btn{position:absolute;right:12px;background:none;border:none;padding:0;cursor:pointer;color:#94a3b8;display:flex;align-items:center;justify-content:center;transition:color .15s;line-height:0;flex-shrink:0}.ap-eye-btn:hover{color:#7c3aed}.ap-error{background:#fef2f2;border:1.5px solid #fca5a5;border-radius:9px;padding:9px 13px;font-size:13px;color:#dc2626;display:flex;align-items:center;gap:8px;font-family:inherit}.ap-error-icon{font-size:14px;flex-shrink:0}.ap-submit{width:100%;padding:13px;border:none;border-radius:11px;background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;font-size:15px;font-weight:700;cursor:pointer;margin-top:4px;transition:opacity .15s,transform .12s,box-shadow .15s;box-shadow:0 4px 16px #7c3aed61;display:flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;letter-spacing:.01em}.ap-submit:hover:not(:disabled){opacity:.93;box-shadow:0 6px 20px #7c3aed7a;transform:translateY(-1px)}.ap-submit:active:not(:disabled){transform:translateY(0)}.ap-submit:disabled{opacity:.65;cursor:not-allowed;transform:none!important}.ap-spinner{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:ap-spin .65s linear infinite;display:inline-block;flex-shrink:0}@keyframes ap-spin{to{transform:rotate(360deg)}}.ap-switch{text-align:center;font-size:13px;color:#64748b;padding:12px 28px 22px;margin:0;font-family:inherit}.ap-switch-btn{background:none;border:none;color:#7c3aed;font-weight:700;cursor:pointer;font-size:inherit;padding:0;font-family:inherit;text-decoration:underline;text-underline-offset:2px;transition:color .15s}.ap-switch-btn:hover{color:#6d28d9}@media(max-width:480px){.ap-card{border-radius:18px}.ap-brand{padding:20px 20px 0}.ap-tabs{margin:16px 20px 0}.ap-form{padding:16px 20px 4px;gap:11px}.ap-switch{padding:10px 20px 20px}}.donate-modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000}.donate-modal-content{background:#fff;padding:30px;border-radius:12px;text-align:center;max-width:400px;position:relative}.close-btn{position:absolute;top:0;right:0;background:transparent;border:none;font-size:28px;line-height:1;cursor:pointer;color:#333;z-index:2}.upi-id-box{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:15px;border:2px dashed #007bff}.upi-label{font-size:12px;color:#666;margin:0 0 8px;text-transform:uppercase;font-weight:700}.upi-id-large{font-size:18px;font-weight:700;color:#333;margin:0 0 15px;word-break:break-all}.copy-btn-large{width:100%;padding:10px 20px;font-size:14px;font-weight:700;background:#007bff;color:#fff;border:none;border-radius:6px;cursor:pointer;margin-bottom:10px}.copy-btn-large:hover{background:#0056b3}.instruction-text{font-size:12px;color:#666;margin:10px 0 0}.divider{margin:15px 0;color:#999;font-size:14px}.scan-text{font-size:14px;color:#666;margin-bottom:10px}.qr-code{width:200px;height:200px;margin:0 auto;border:2px solid #eee;border-radius:8px}@media(min-width:769px){.upi-pay-btn,.divider,.scan-text{display:none}.qr-code{display:block}}@media(max-width:768px){.donate-modal-content{margin:20px;max-width:90%}.qr-code{width:180px;height:180px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #ffffff;--bg2: #f5f7ff;--bg3: #eef2ff;--surface: #ffffff;--surface2: #f8faff;--border: rgba(0,0,0,.08);--border2: rgba(0,0,0,.13);--purple: #7c3aed;--purple2: #8b5cf6;--cyan: #0891b2;--blue: #3b82f6;--green: #059669;--text: #0f172a;--text2: #475569;--text3: #94a3b8;--grad: linear-gradient(135deg, #7c3aed, #0891b2);--grad2: linear-gradient(135deg, #8b5cf6, #3b82f6);--glow-p: rgba(124,58,237,.18);--glow-c: rgba(8,145,178,.15);--shadow: 0 2px 12px rgba(0,0,0,.08);--shadow-md: 0 8px 30px rgba(0,0,0,.1);--shadow-lg: 0 20px 60px rgba(0,0,0,.12);--radius: 16px;--radius-lg: 24px;font-family:Inter,system-ui,-apple-system,sans-serif}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.lp-gradient-text{background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lp-dot{color:var(--purple2)}.lp-btn-primary{background:var(--grad);color:#fff;border:none;border-radius:10px;padding:10px 22px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;position:relative;overflow:hidden}.lp-btn-primary:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 8px 30px var(--glow-p)}.lp-btn-ghost{background:transparent;color:var(--text2);border:1px solid var(--border2);border-radius:10px;padding:9px 20px;font-size:14px;font-weight:500;cursor:pointer;transition:color .2s,border-color .2s,background .2s}.lp-btn-ghost:hover{color:var(--text);border-color:var(--purple2);background:#7c3aed0d}.lp-btn-outline{background:transparent;color:var(--text);border:1.5px solid var(--border2);border-radius:10px;padding:10px 22px;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .2s,background .2s}.lp-btn-outline:hover{border-color:var(--purple2);background:#7c3aed0f}.lp-btn-lg{padding:14px 32px;font-size:15px;border-radius:12px}.lp-header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#ffffffe0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);box-shadow:0 1px 12px #00000012}.lp-header-inner{max-width:1280px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;gap:32px}.lp-logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);font-size:20px;font-weight:800;letter-spacing:-.5px;flex-shrink:0}.lp-logo img{width:28px;height:28px;object-fit:contain}.lp-nav-header{display:none}.lp-nav-links{display:flex;align-items:center;gap:28px}.lp-nav-bottom,.lp-nav-sep{display:none}.lp-nav{display:flex;align-items:center;gap:28px;flex:1}.lp-nav a,.lp-nav-links a{color:var(--text2);text-decoration:none;font-size:14px;font-weight:500;cursor:pointer;transition:color .2s}.lp-nav a:hover,.lp-nav-links a:hover{color:var(--purple)}.lp-nav-close{display:none}.lp-header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.lp-user-info{display:flex;align-items:center;gap:8px}.lp-avatar-small{width:32px;height:32px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff}.lp-user-name{font-size:14px;color:var(--text2)}.lp-hamburger{display:none;background:none;border:none;color:var(--text);font-size:20px;cursor:pointer;padding:4px 8px}.lp-overlay{display:none;position:fixed;inset:0;background:#0000004d;z-index:999}.lp-section{padding:100px 0;position:relative}.lp-section-inner{max-width:1280px;margin:0 auto;padding:0 24px}.lp-section-header{text-align:center;margin-bottom:64px}.lp-label-tag{display:inline-block;padding:6px 14px;border-radius:100px;background:#7c3aed1a;border:1px solid rgba(124,58,237,.25);color:var(--purple);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}.lp-section-h2{font-size:clamp(28px,4vw,44px);font-weight:800;line-height:1.2;letter-spacing:-1px;margin-bottom:16px;color:var(--text)}.lp-section-p{color:var(--text2);font-size:16px;max-width:560px;margin:0 auto;line-height:1.6}.lp-hero{min-height:100vh;display:flex;align-items:center;padding-top:64px;position:relative;overflow:hidden;background:linear-gradient(160deg,#fff,#f0f4ff 60%,#e8eeff)}.lp-hero-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden}.lp-grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(124,58,237,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(124,58,237,.06) 1px,transparent 1px);background-size:60px 60px}.lp-orb{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none}.lp-orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(124,58,237,.18),transparent 70%);top:-200px;left:-150px}.lp-orb-2{width:500px;height:500px;background:radial-gradient(circle,rgba(8,145,178,.14),transparent 70%);top:100px;right:-100px}.lp-orb-3{width:400px;height:400px;background:radial-gradient(circle,rgba(168,85,247,.12),transparent 70%);bottom:-100px;left:40%}.lp-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--purple2);opacity:.25;animation:particleDrift calc(8s + var(--i) * 1.2s) ease-in-out infinite alternate;left:calc(var(--i) * 5.5%);top:calc(20% + (var(--i) % 5) * 15%)}@keyframes particleDrift{0%{transform:translate(0) scale(1);opacity:.25}to{transform:translate(calc((var(--i) % 3 - 1) * 40px),-60px) scale(1.5);opacity:.06}}.lp-hero-inner{max-width:1280px;margin:0 auto;padding:80px 24px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;position:relative;z-index:1}.lp-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:100px;background:#7c3aed14;border:1px solid rgba(124,58,237,.2);color:var(--purple);font-size:13px;font-weight:500;margin-bottom:24px}.lp-badge-pulse{width:7px;height:7px;border-radius:50%;background:var(--purple2);animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #8b5cf680}50%{box-shadow:0 0 0 6px #8b5cf600}}.lp-hero-h1{font-size:clamp(36px,5vw,58px);font-weight:900;line-height:1.1;letter-spacing:-2px;margin-bottom:20px;color:var(--text)}.lp-hero-sub{color:var(--text2);font-size:16px;line-height:1.7;max-width:480px;margin-bottom:36px}.lp-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:48px}.lp-cta-arrow{display:inline-block;transition:transform .2s}.lp-btn-primary:hover .lp-cta-arrow{transform:translate(4px)}.lp-hero-stats{display:flex;align-items:center;gap:24px}.lp-stat{display:flex;flex-direction:column;gap:2px}.lp-stat-num{font-size:22px;font-weight:800;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lp-stat-label{font-size:12px;color:var(--text3)}.lp-stat-divider{width:1px;height:32px;background:var(--border2)}.lp-hero-visuals{position:relative;height:480px}.lp-float-a{animation:floatA 6s ease-in-out infinite}.lp-float-b{animation:floatB 7s ease-in-out infinite}.lp-float-c{animation:floatC 5s ease-in-out infinite}@keyframes floatA{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes floatB{0%,to{transform:translateY(-8px)}50%{transform:translateY(6px)}}@keyframes floatC{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.lp-dash-card{position:absolute;top:0;left:0;right:60px;background:#fffffff2;border:1px solid rgba(124,58,237,.2);border-radius:var(--radius-lg);padding:20px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 20px 60px #0000001f,0 0 40px #7c3aed1a}.lp-dash-titlebar{display:flex;align-items:center;gap:6px;margin-bottom:16px}.lp-win-btn{width:10px;height:10px;border-radius:50%}.lp-win-btn.red{background:#ff5f57}.lp-win-btn.yellow{background:#ffbd2e}.lp-win-btn.green{background:#28c840}.lp-dash-app-name{font-size:12px;color:var(--text3);margin-left:8px}.lp-dash-content{display:flex;gap:16px;align-items:center;margin-bottom:16px}.lp-dash-ring-wrap{position:relative;width:72px;height:72px;flex-shrink:0}.lp-dash-ring-svg{width:100%;height:100%}.lp-dash-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:var(--text)}.lp-dash-overall{font-size:11px;color:var(--text3);margin-bottom:4px}.lp-dash-course-name{font-size:14px;font-weight:700;margin-bottom:6px;color:var(--text)}.lp-dash-streak{font-size:12px;color:var(--text2);margin-bottom:8px}.lp-dash-tags{display:flex;gap:6px;flex-wrap:wrap}.lp-tag-blue,.lp-tag-purple{padding:3px 8px;border-radius:6px;font-size:10px;font-weight:600}.lp-tag-blue{background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.25)}.lp-tag-purple{background:#8b5cf61a;color:#7c3aed;border:1px solid rgba(139,92,246,.25)}.lp-dash-recent{border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:8px}.lp-dash-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text2)}.lp-dash-dot{width:5px;height:5px;border-radius:50%;background:var(--purple2);flex-shrink:0}.lp-dash-lesson-name{flex:1}.lp-dash-pct-small{color:var(--cyan);font-weight:600}.lp-code-preview{position:absolute;bottom:20px;right:0;width:260px;background:#1a1a2e;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);overflow:hidden;box-shadow:0 16px 48px #0003}.lp-code-bar{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.08)}.lp-code-lang-tag{font-size:10px;color:#67e8f9;font-weight:700;background:#0891b240;padding:2px 6px;border-radius:4px}.lp-code-filename{font-size:11px;color:#fff6}.lp-code-body{padding:12px;overflow:hidden}.lp-code-body code{font-family:Fira Code,Cascadia Code,monospace;font-size:10.5px;line-height:1.6;color:#c9d1d9;white-space:pre}.lp-ai-pill{position:absolute;top:50%;left:-20px;transform:translateY(-50%);display:flex;align-items:center;gap:10px;padding:10px 16px;background:#fffffff5;border:1px solid rgba(124,58,237,.3);border-radius:100px;box-shadow:0 4px 20px #7c3aed26}.lp-ai-glow-dot{width:8px;height:8px;border-radius:50%;background:var(--purple2);animation:pulse 2s infinite;flex-shrink:0}.lp-ai-pill-title{font-size:12px;font-weight:700;color:var(--text)}.lp-ai-pill-sub{font-size:10px;color:var(--text3)}.lp-tracks{background:var(--bg2)}.lp-tracks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.lp-track-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;position:relative;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;box-shadow:var(--shadow)}.lp-track-card.clickable{cursor:pointer}.lp-track-card.coming-soon{opacity:.65;cursor:not-allowed}.lp-track-card:hover{transform:translateY(-4px);border-color:var(--tc, var(--purple2));box-shadow:0 16px 48px #0000001a,0 0 24px #7c3aed1f}.lp-track-card.expanded{border-color:var(--tc, var(--purple2));box-shadow:0 8px 32px #00000014,0 0 20px #7c3aed1a}.lp-tc-glow{position:absolute;top:-30px;right:-30px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,var(--tc, var(--purple2)),transparent 70%);opacity:.08;pointer-events:none;transition:opacity .3s}.lp-track-card:hover .lp-tc-glow{opacity:.18}.lp-tc-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.lp-tc-icon{font-size:28px}.lp-cs-badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:100px;background:#64748b1a;border:1px solid rgba(100,116,139,.2);color:var(--text3);text-transform:uppercase;letter-spacing:.05em}.lp-expand-icon{font-size:12px;color:var(--tc, var(--purple2));font-weight:700;transition:transform .2s}.lp-tc-name{font-size:17px;font-weight:700;margin-bottom:10px;color:var(--text)}.lp-tc-techs{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}.lp-tech{font-size:11px;font-weight:500;padding:3px 8px;border-radius:5px;background:#0000000a;border:1px solid var(--border2);color:var(--text2)}.lp-tc-meta{display:flex;gap:12px;font-size:12px;color:var(--text3);margin-bottom:10px}.lp-tc-level{font-size:11px;color:var(--tc, var(--cyan));font-weight:600;margin-bottom:12px}.lp-tc-bar{height:3px;background:#00000012;border-radius:2px;overflow:hidden}.lp-tc-bar-fill{height:100%;background:var(--tc, var(--grad));border-radius:2px;transition:width 1s ease}.lp-track-expand-panel{margin-top:28px;background:var(--surface);border:1.5px solid rgba(124,58,237,.2);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 12px 40px #00000017,0 0 0 4px #7c3aed0d;animation:slideDown .3s cubic-bezier(.34,1.56,.64,1);scroll-margin-top:80px}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.lp-tep-header{display:flex;align-items:center;gap:14px;padding:20px 24px;background:#7c3aed0f;border-bottom:1px solid var(--border)}.lp-tep-icon{font-size:28px;flex-shrink:0}.lp-tep-title{font-size:17px;font-weight:800;color:var(--purple);margin-bottom:2px}.lp-tep-sub{font-size:12px;color:var(--text3)}.lp-tep-close{margin-left:auto;background:none;border:1px solid var(--border2);border-radius:8px;padding:6px 10px;color:var(--text3);font-size:14px;cursor:pointer;transition:color .2s,border-color .2s,background .2s;flex-shrink:0}.lp-tep-close:hover{color:var(--text);border-color:var(--purple2);background:#7c3aed0f}.lp-tep-courses{padding:16px 24px 20px;display:flex;flex-direction:column;gap:10px}.lp-tep-course-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;cursor:pointer;transition:border-color .25s,background .25s,transform .2s,box-shadow .2s}.lp-tep-course-card:hover{border-color:var(--cc, var(--purple2));background:#7c3aed08;transform:translate(4px);box-shadow:0 4px 16px #0000000f}.lp-tep-cc-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.lp-tep-cc-icon{font-size:24px;flex-shrink:0}.lp-tep-cc-name{font-size:15px;font-weight:700;color:var(--text);margin-bottom:2px}.lp-tep-cc-desc{font-size:12px;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.lp-tep-cc-right{flex-shrink:0}.lp-tep-start{font-size:14px;font-weight:700;color:var(--cc, var(--purple));white-space:nowrap}.lp-ring-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:48px}.lp-ring-wrap span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800}.lp-features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.lp-feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;transition:border-color .3s,transform .3s,box-shadow .3s;box-shadow:var(--shadow)}.lp-feature-card:hover{border-color:#7c3aed4d;transform:translateY(-3px);box-shadow:0 12px 32px #00000017}.lp-fc-icon{font-size:26px;margin-bottom:12px}.lp-fc-title{font-size:15px;font-weight:700;margin-bottom:8px;color:var(--text)}.lp-fc-desc{font-size:13px;color:var(--text2);line-height:1.5}.lp-interactive{background:var(--bg2)}.lp-split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.lp-lesson-preview{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow)}.lp-lesson-tag{font-size:11px;font-weight:700;color:var(--cyan);text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:10px}.lp-lesson-preview h3{font-size:20px;font-weight:800;margin-bottom:12px;color:var(--text)}.lp-lesson-preview p{color:var(--text2);font-size:14px;line-height:1.7;margin-bottom:20px}.lp-lifecycle{display:flex;align-items:center;gap:8px;margin-bottom:20px;flex-wrap:wrap}.lp-lc-step{padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;background:#0000000a;border:1px solid var(--border);color:var(--text2)}.lp-lc-step.active{background:#7c3aed1a;border-color:var(--purple);color:var(--purple)}.lp-lc-arr{color:var(--text3);font-size:14px}.lp-keypoint{display:flex;gap:10px;padding:12px 14px;background:#0891b212;border:1px solid rgba(8,145,178,.2);border-radius:10px;font-size:13px;color:var(--text2);line-height:1.5}.lp-editor{background:#13131f;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 20px 60px #00000026}.lp-editor-tabs{display:flex;gap:2px;padding:8px 12px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.07)}.lp-etab{padding:6px 14px;border-radius:6px;font-size:12px;color:#ffffff59;cursor:pointer}.lp-etab.active{background:#ffffff14;color:#ffffffd9}.lp-editor-body{padding:16px;overflow-x:auto}.lp-editor-body code{font-family:Fira Code,Cascadia Code,monospace;font-size:12px;line-height:1.65;color:#c9d1d9}.tok-kw{color:#ff79c6}.tok-fn{color:#50fa7b}.tok-str{color:#f1fa8c}.tok-num{color:#bd93f9}.tok-name{color:#8be9fd}.tok-com{color:#6272a4;font-style:italic}.lp-editor-body{transition:opacity .15s ease}.tok-tag{color:#ff79c6}.lp-output{border-top:1px solid rgba(255,255,255,.07)}.lp-output-top{display:flex;justify-content:space-between;align-items:center;padding:10px 16px}.lp-out-label{font-size:11px;color:#ffffff59;text-transform:uppercase;letter-spacing:.05em}.lp-out-value{font-size:22px;font-weight:800;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lp-console{padding:8px 16px 12px;background:#0000004d}.lp-console-lbl{font-size:10px;color:#ffffff4d;text-transform:uppercase;margin-bottom:6px;display:block}.lp-console-line{font-family:monospace;font-size:11px;color:#8be9fd;padding:2px 0}.lp-pipeline{background:var(--bg3)}.lp-pipeline-flow{display:flex;flex-direction:column;align-items:center;gap:0;position:relative;max-width:480px;margin:0 auto}.lp-pipeline-item{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.lp-pipeline-node{width:64px;height:64px;border-radius:50%;background:var(--surface);border:2px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:24px;position:relative;z-index:1;transition:border-color .3s,box-shadow .3s;box-shadow:var(--shadow)}.lp-pipeline-item:hover .lp-pipeline-node{border-color:var(--purple2);box-shadow:0 0 24px #7c3aed2e}.lp-pipeline-name{font-size:15px;font-weight:700;margin-top:10px;color:var(--text)}.lp-pipeline-desc{font-size:12px;color:var(--text3);margin-top:4px}.lp-pipeline-conn{font-size:20px;color:var(--purple2);margin:6px 0;animation:bounce 1.6s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.lp-showcase{background:var(--bg2)}.lp-showcase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lp-sc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;transition:border-color .3s,transform .3s,box-shadow .3s;box-shadow:var(--shadow)}.lp-sc-card:hover{border-color:#7c3aed40;transform:translateY(-3px);box-shadow:var(--shadow-md)}.lp-sc-title{font-size:13px;font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.06em;margin-bottom:20px}.lp-arch-row{display:flex;align-items:center;gap:10px;justify-content:center}.lp-arch-node{padding:10px 14px;border-radius:10px;text-align:center;font-size:13px;font-weight:700;line-height:1.3}.lp-arch-node small{font-size:10px;font-weight:400;color:inherit;opacity:.7}.lp-arch-node.client{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#1d4ed8}.lp-arch-node.api{background:#7c3aed1a;border:1px solid rgba(124,58,237,.3);color:#6d28d9}.lp-arch-node.db{background:#0596691a;border:1px solid rgba(5,150,105,.3);color:#065f46}.lp-arch-conn{color:var(--text3);font-size:16px}.lp-flow-col,.lp-flow-item{display:flex;flex-direction:column;align-items:center;gap:4px}.lp-flow-badge{padding:5px 14px;border-radius:8px;background:var(--bg3);border:1px solid var(--border2);font-size:12px;color:var(--text2)}.lp-flow-down{color:var(--purple2);font-size:14px}.lp-box-model{display:flex;justify-content:center}.lp-bm-margin{padding:10px;background:#f59e0b14;border:2px dashed rgba(245,158,11,.5);border-radius:8px;font-size:10px;font-weight:600;color:#d97706;text-align:center}.lp-bm-border{padding:8px;background:#ef444414;border:2px solid rgba(239,68,68,.4);border-radius:6px;font-size:10px;font-weight:600;color:#dc2626;text-align:center;margin-top:4px}.lp-bm-padding{padding:8px;background:#05966914;border:2px dashed rgba(5,150,105,.4);border-radius:4px;font-size:10px;font-weight:600;color:#059669;text-align:center;margin-top:4px}.lp-bm-content{padding:8px 14px;background:#3b82f61a;border:2px solid rgba(59,130,246,.35);border-radius:4px;font-size:11px;font-weight:700;color:#1d4ed8;margin-top:4px}.lp-lc-col{display:flex;flex-direction:column;align-items:center;gap:4px}.lp-lc-phase{padding:8px 20px;border-radius:8px;font-size:12px;font-weight:700;text-align:center}.lp-lc-phase.mount{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#1d4ed8}.lp-lc-phase.update{background:#7c3aed1a;border:1px solid rgba(124,58,237,.3);color:#6d28d9}.lp-lc-phase.unmount{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626}.lp-lc-arrow{color:var(--text3);font-size:14px}.lp-db-row{display:flex;align-items:center;gap:12px;justify-content:center}.lp-db-tbl{min-width:90px}.lp-db-head{background:#7c3aed1f;border:1px solid rgba(124,58,237,.3);padding:5px 10px;border-radius:6px 6px 0 0;font-size:12px;font-weight:700;color:#6d28d9;text-align:center}.lp-db-field{padding:4px 10px;background:var(--bg3);border:1px solid var(--border);border-top:none;font-size:11px;color:var(--text2)}.lp-db-field.pk{color:#d97706}.lp-db-field.fk{color:#059669}.lp-db-rel{font-size:11px;font-weight:700;color:var(--text3);white-space:nowrap}.lp-stack-col{display:flex;flex-direction:column;align-items:center;gap:4px}.lp-stack-layer{padding:8px 20px;border-radius:8px;font-size:12px;font-weight:600;text-align:center}.lp-stack-layer.fe{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);color:#1d4ed8}.lp-stack-layer.be{background:#7c3aed1a;border:1px solid rgba(124,58,237,.3);color:#6d28d9}.lp-stack-layer.db{background:#0596691a;border:1px solid rgba(5,150,105,.3);color:#065f46}.lp-stack-arrow{font-size:11px;color:var(--text3)}.lp-practice{background:var(--bg3)}.lp-practice-layout{max-width:800px;margin:0 auto}.lp-tab-bar{display:flex;gap:4px;margin-bottom:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:8px;box-shadow:var(--shadow)}.lp-tab{flex:1;padding:10px 8px;border-radius:10px;border:none;background:transparent;color:var(--text3);font-size:13px;font-weight:600;cursor:pointer;transition:background .2s,color .2s}.lp-tab.active{background:#7c3aed1a;color:var(--purple)}.lp-tab-panel{background:var(--surface);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:28px;min-height:280px;box-shadow:var(--shadow)}.lp-q-text{font-size:16px;font-weight:600;margin-bottom:20px;color:var(--text);line-height:1.5}.lp-option{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;border:1px solid var(--border);background:var(--bg2);margin-bottom:8px;font-size:14px;color:var(--text2);transition:border-color .2s}.lp-option.correct{border-color:var(--green);background:#05966912;color:var(--text)}.lp-opt-letter{width:24px;height:24px;border-radius:6px;background:#0000000f;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;color:var(--text2)}.lp-correct-tick{margin-left:auto;color:var(--green);font-weight:700}.lp-challenge-heading{font-size:15px;font-weight:700;margin-bottom:16px;color:var(--text)}.lp-ch-code{background:#13131f;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:16px;overflow-x:auto}.lp-ch-code code{font-family:Fira Code,monospace;font-size:13px;color:#c9d1d9;line-height:1.6}.lp-ch-code.buggy code{color:#ff79c6}.lp-fix-hint{margin-top:14px;padding:10px 14px;background:#0891b212;border:1px solid rgba(8,145,178,.2);border-radius:8px;font-size:13px;color:var(--text2)}.lp-fix-hint code{background:#0891b21a;padding:1px 6px;border-radius:4px;color:var(--cyan)}.lp-iq-card{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--border);background:var(--bg2);border-radius:10px;margin-bottom:8px}.lp-level{font-size:10px;font-weight:700;padding:3px 8px;border-radius:6px;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em}.lp-level.beginner{background:#0596691a;color:#059669;border:1px solid rgba(5,150,105,.25)}.lp-level.intermediate{background:#f59e0b1a;color:#d97706;border:1px solid rgba(245,158,11,.25)}.lp-level.advanced{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.25)}.lp-iq-card p{font-size:13px;color:var(--text2)}.lp-courses{background:var(--bg)}.lp-course-tracks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}.lp-ct-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:26px;cursor:pointer;position:relative;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;box-shadow:var(--shadow)}.lp-ct-card:hover{transform:translateY(-5px);border-color:var(--cc, var(--purple2));box-shadow:0 20px 50px #0000001a,0 0 20px #7c3aed1f}.lp-ct-glow{position:absolute;top:-40px;right:-40px;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,var(--cc, var(--purple)),transparent 70%);opacity:.07;transition:opacity .3s;pointer-events:none}.lp-ct-card:hover .lp-ct-glow{opacity:.16}.lp-ct-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.lp-ct-icon{font-size:32px}.lp-ct-name{font-size:18px;font-weight:800;margin-bottom:8px;color:var(--text)}.lp-ct-desc{font-size:13px;color:var(--text2);line-height:1.5;margin-bottom:18px}.lp-ct-footer{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--border)}.lp-ct-count{font-size:12px;color:var(--text3);font-weight:500}.lp-ct-cta{font-size:13px;font-weight:700;color:var(--cc, var(--purple))}.lp-courses-drill-header{display:flex;flex-direction:column;align-items:center;gap:12px}.lp-back-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--border2);border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600;color:var(--text2);cursor:pointer;transition:color .2s,border-color .2s,background .2s}.lp-back-btn:hover{color:var(--purple);border-color:var(--purple2);background:#7c3aed0f}.lp-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.lp-course-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;cursor:pointer;position:relative;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;box-shadow:var(--shadow)}.lp-course-card:hover{transform:translateY(-5px);border-color:var(--cc, var(--purple2));box-shadow:0 20px 50px #0000001a,0 0 20px #7c3aed1f}.lp-cc-glow{position:absolute;top:-40px;right:-40px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,var(--cc, var(--purple)),transparent 70%);opacity:.07;transition:opacity .3s;pointer-events:none}.lp-course-card:hover .lp-cc-glow{opacity:.15}.lp-cc-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.lp-cc-icon{font-size:28px}.lp-cc-ring{position:relative;width:36px;height:36px}.lp-cc-ring svg{width:100%;height:100%}.lp-cc-ring span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:var(--cc)}.lp-cc-name{font-size:17px;font-weight:700;margin-bottom:8px;color:var(--text)}.lp-cc-desc{font-size:13px;color:var(--text2);line-height:1.5;margin-bottom:16px}.lp-cc-cta{font-size:13px;font-weight:600;color:var(--cc, var(--cyan))}.lp-analytics{background:var(--bg2)}.lp-analytics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.lp-an-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;text-align:center;box-shadow:var(--shadow)}.lp-an-card.wide{grid-column:span 2;text-align:left}.lp-an-icon{font-size:24px;margin-bottom:8px}.lp-an-val{font-size:36px;font-weight:900;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lp-an-lbl{font-size:13px;color:var(--text2);margin-top:4px}.lp-an-bar{height:4px;background:#0000000f;border-radius:2px;margin-top:12px;overflow:hidden}.lp-an-fill{height:100%;background:var(--grad);border-radius:2px}.lp-an-fill.green{background:linear-gradient(90deg,#059669,#0891b2)}.lp-an-trend{font-size:12px;color:var(--green);margin-top:8px;font-weight:600}.lp-bar-chart{display:flex;align-items:flex-end;gap:8px;height:100px}.lp-bc-col{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;height:100%;justify-content:flex-end}.lp-bc-bar{width:100%;background:var(--grad);border-radius:4px 4px 0 0;min-height:4px;transition:height .8s ease;opacity:.85}.lp-bc-col span{font-size:10px;color:var(--text3)}.lp-testimonials{overflow:hidden;background:var(--bg)}.lp-testi-track{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent)}.lp-testi-inner{display:flex;gap:20px;animation:scrollLeft 30s linear infinite;width:max-content}.lp-testi-inner:hover{animation-play-state:paused}@keyframes scrollLeft{0%{transform:translate(0)}to{transform:translate(-50%)}}.lp-testi-card{width:320px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);transition:box-shadow .3s,transform .3s}.lp-testi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.lp-testi-stars{color:#f59e0b;font-size:14px;margin-bottom:12px}.lp-testi-text{font-size:13px;color:var(--text2);line-height:1.6;margin-bottom:16px;font-style:italic}.lp-testi-author{display:flex;align-items:center;gap:10px}.lp-testi-avatar{width:36px;height:36px;border-radius:50%;background:var(--grad);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.lp-testi-name{font-size:13px;font-weight:700;color:var(--text)}.lp-testi-role{font-size:11px;color:var(--text3)}.lp-cta{background:linear-gradient(160deg,#f0f4ff,#e8eeff,#f5f0ff);text-align:center;position:relative;overflow:hidden}.lp-cta-bg{position:absolute;inset:0;pointer-events:none}.lp-cta-orb1{width:500px;height:500px;background:radial-gradient(circle,rgba(124,58,237,.15),transparent 70%);top:-200px;left:50%;transform:translate(-70%)}.lp-cta-orb2{width:400px;height:400px;background:radial-gradient(circle,rgba(8,145,178,.12),transparent 70%);bottom:-150px;right:-100px}.lp-cta-inner{position:relative;z-index:1}.lp-cta-h2{font-size:clamp(32px,5vw,52px);font-weight:900;letter-spacing:-1.5px;line-height:1.1;margin-bottom:20px;color:var(--text)}.lp-cta-p{font-size:16px;color:var(--text2);max-width:500px;margin:0 auto 36px;line-height:1.6}.lp-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.lp-footer{background:#f8faff;border-top:1px solid var(--border)}.lp-footer-top{max-width:1280px;margin:0 auto;padding:64px 24px 48px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px}.lp-footer-logo{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:18px;font-weight:800;color:var(--text)}.lp-footer-logo img{width:24px;height:24px;object-fit:contain}.lp-footer-brand p{font-size:13px;color:var(--text3);line-height:1.6;max-width:260px}.lp-socials{display:flex;gap:12px;margin-top:16px}.lp-socials a{font-size:18px;text-decoration:none;cursor:pointer;transition:transform .2s,opacity .2s}.lp-socials a:hover{transform:scale(1.2);opacity:.75}.lp-footer-col h4{font-size:13px;font-weight:700;color:var(--text);margin-bottom:16px;text-transform:uppercase;letter-spacing:.06em}.lp-footer-col a{display:block;font-size:13px;color:var(--text3);margin-bottom:8px;cursor:pointer;text-decoration:none;transition:color .2s}.lp-footer-col a:hover{color:var(--purple)}.lp-footer-contact{max-width:1280px;margin:0 auto;padding:48px 24px;border-top:1px solid var(--border)}.lp-footer-contact h3{font-size:18px;font-weight:700;margin-bottom:20px;color:var(--text)}.lp-contact-form{max-width:600px}.lp-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.lp-input{width:100%;background:var(--surface);border:1.5px solid var(--border2);border-radius:10px;padding:12px 14px;font-size:14px;color:var(--text);font-family:inherit;transition:border-color .2s,box-shadow .2s;outline:none}.lp-input::placeholder{color:var(--text3)}.lp-input:focus{border-color:var(--purple2);box-shadow:0 0 0 3px #7c3aed1a}.lp-textarea{resize:vertical;min-height:100px;margin-bottom:12px;display:block}.lp-form-status{font-size:13px;color:var(--green);margin-top:8px}.lp-footer-bottom{max-width:1280px;margin:0 auto;padding:20px 24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text3)}@media(max-width:1024px){.lp-showcase-grid,.lp-analytics-grid{grid-template-columns:repeat(2,1fr)}.lp-an-card.wide{grid-column:span 2}.lp-footer-top{grid-template-columns:1fr 1fr}}@media(max-width:900px){.lp-hero-inner{grid-template-columns:1fr;gap:48px;text-align:center}.lp-hero-text{display:flex;flex-direction:column;align-items:center}.lp-hero-sub{max-width:100%}.lp-hero-visuals{height:340px;width:100%;max-width:460px;margin:0 auto}.lp-split{grid-template-columns:1fr}.lp-pipeline-flow{max-width:360px}}@media(max-width:768px){.lp-nav{position:fixed;top:0;right:-280px;width:280px;height:100vh;height:100dvh;background:#fff;border-left:1px solid var(--border);flex-direction:column;align-items:stretch;padding:0;gap:0;z-index:1001;transition:right .3s cubic-bezier(.4,0,.2,1);box-shadow:-8px 0 32px #0000001f;overflow-x:hidden;overflow-y:auto}.lp-nav.open{right:0}.lp-nav-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.lp-nav-brand{font-size:18px;font-weight:800;color:var(--text);letter-spacing:-.5px}.lp-nav-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;color:var(--text2);font-size:14px;cursor:pointer;transition:background .15s}.lp-nav-close:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.lp-nav-links{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 12px;flex:1}.lp-nav-links a{padding:12px;border-radius:8px;font-size:15px;font-weight:500;color:var(--text2);transition:background .15s,color .15s}.lp-nav-links a:hover{background:var(--bg2);color:var(--purple)}.lp-nav-bottom{display:flex;flex-direction:column;gap:12px;padding:16px 20px 24px;flex-shrink:0}.lp-nav-sep{display:block;height:1px;background:var(--border);margin-bottom:4px}.lp-nav-user{display:flex;align-items:center;gap:10px}.lp-nav-user-info{display:flex;flex-direction:column;gap:1px}.lp-nav-uname{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.lp-nav-uemail{font-size:11px;color:var(--text3)}.lp-nav-logout-btn{width:100%;padding:11px;border:1.5px solid #ef4444;border-radius:10px;background:transparent;color:#ef4444;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.lp-nav-logout-btn:hover{background:#ef4444;color:#fff}.lp-nav-login-btn{width:100%;padding:11px;border-radius:10px;background:var(--purple);border:none;color:#fff;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .15s}.lp-nav-login-btn:hover{opacity:.88}.lp-nav-coffee-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:11px;border-radius:10px;background:#fff8e1;border:1.5px solid #f59e0b;color:#b45309;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s;font-family:inherit;text-align:center}.lp-nav-coffee-btn:hover{background:#fef3c7;border-color:#d97706}.lp-header-login-btn{font-size:12px;padding:8px 12px;border-radius:8px;white-space:nowrap}.lp-desktop-only{display:none!important}.lp-user-name{display:none}.lp-overlay,.lp-hamburger{display:block}.lp-btn-ghost.desktop,.lp-hero-visuals{display:none}.lp-hero-inner{padding:60px 20px}.lp-tracks-grid,.lp-features-grid,.lp-courses-grid,.lp-course-tracks-grid{grid-template-columns:1fr 1fr}.lp-showcase-grid{grid-template-columns:1fr}.lp-analytics-grid{grid-template-columns:1fr 1fr}.lp-an-card.wide{grid-column:span 2}.lp-footer-top{grid-template-columns:1fr 1fr;gap:32px}.lp-footer-bottom{flex-direction:column;gap:8px;text-align:center}.lp-tep-cc-desc{display:none}}@media(max-width:480px){.lp-tracks-grid,.lp-features-grid,.lp-courses-grid,.lp-course-tracks-grid,.lp-analytics-grid{grid-template-columns:1fr}.lp-an-card.wide{grid-column:span 1}.lp-footer-top,.lp-form-row{grid-template-columns:1fr}.lp-hero-ctas{flex-direction:column}.lp-hero-stats{gap:16px;flex-wrap:wrap;justify-content:center}.lp-tab-bar,.lp-tep-header{flex-wrap:wrap}}.lp-my-tracks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.lp-my-track-card{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;border-radius:14px;border:1px solid color-mix(in srgb,var(--tc) 25%,#e5e7eb);background:color-mix(in srgb,var(--tc) 5%,#fff);cursor:pointer;overflow:hidden;transition:box-shadow .2s,transform .2s}.lp-my-track-card:hover{box-shadow:0 8px 24px color-mix(in srgb,var(--tc) 20%,transparent);transform:translateY(-2px)}.lp-mt-glow{position:absolute;inset:0;border-radius:inherit;background:radial-gradient(ellipse at 0% 50%,color-mix(in srgb,var(--tc) 12%,transparent),transparent 60%);pointer-events:none}.lp-mt-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.lp-mt-icon{font-size:28px;flex-shrink:0}.lp-mt-name{font-size:15px;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-mt-meta{font-size:12px;color:#64748b;margin-top:2px}.lp-mt-right{flex-shrink:0}.lp-ring-wrap{position:relative;display:flex;flex-direction:column;align-items:center}.lp-ring-wrap span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}.lp-profile-card-wrap{max-width:860px;margin:0 auto;padding:32px 24px 0;position:relative;z-index:2}.lp-profile-card{display:flex;align-items:center;gap:20px;background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:20px 28px;box-shadow:0 6px 28px #00000012}.lp-pc-avatar{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#0891b2);color:#fff;font-size:22px;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #7c3aed4d}.lp-pc-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}.lp-pc-name{font-size:16px;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-pc-tracks-row{display:flex;flex-wrap:wrap;gap:6px}.lp-pc-track-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:100px;font-size:11.5px;font-weight:600;background:color-mix(in srgb,var(--tc) 10%,#fff);border:1px solid color-mix(in srgb,var(--tc) 28%,#e2e8f0);color:var(--tc, #6366f1)}.lp-pc-no-tracks{font-size:12px;color:#94a3b8;font-style:italic}.lp-pc-streak{display:flex;align-items:center;gap:10px;flex-shrink:0;border-left:1px solid #e2e8f0;padding-left:24px;margin-left:4px}.lp-pc-streak-icon{font-size:30px;line-height:1}.lp-pc-streak-info{display:flex;flex-direction:column;gap:1px}.lp-pc-streak-num{font-size:24px;font-weight:800;color:#f59e0b;line-height:1}.lp-pc-streak-label{font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-top:1px}@media(max-width:640px){.lp-profile-card-wrap{padding:24px 16px 0}.lp-profile-card{flex-wrap:wrap;gap:14px;padding:16px 18px}.lp-pc-streak{border-left:none;padding-left:0;border-top:1px solid #f1f5f9;padding-top:14px;width:100%}}.header-container{position:fixed;top:0;left:0;right:0;z-index:1000;background:#ffffffeb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 1px 10px #0000000f;padding:0 24px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:20px}.hdr-left{display:flex;align-items:center;gap:16px;flex-shrink:0}.hdr-logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:#0f172a;font-size:18px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}.hdr-logo img{width:32px;height:32px;object-fit:contain}.hdr-dot{color:#7c3aed}.lesson-search-bar{position:relative;width:220px}.lesson-search-bar input[type=text]{width:100%;padding:7px 14px;border:1.5px solid #e2e8f0;border-radius:20px;background:#f8fafc;color:#0f172a;font-size:14px;outline:none;transition:border-color .2s,box-shadow .2s}.lesson-search-bar input[type=text]:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1a;background:#fff}.search-dropdown{position:absolute;top:calc(100% + 6px);left:0;width:160%;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px #0000001a;z-index:1100;max-height:320px;overflow-y:auto;padding:6px 0;margin:0;list-style:none}.search-dropdown li{padding:10px 16px;cursor:pointer;font-size:14px;color:#334155;transition:background .15s}.search-dropdown li:hover{background:#f5f3ff;color:#7c3aed}.hdr-right{display:flex;align-items:center;gap:32px;margin-left:auto}.hdr-nav-links{display:flex;align-items:center;gap:24px}.hdr-nav-link{color:#475569;text-decoration:none;font-size:14px;font-weight:500;transition:color .2s}.hdr-nav-link:hover{color:#7c3aed}.hdr-profile{display:flex;align-items:center;gap:10px}.hdr-user{display:flex;align-items:center;gap:8px}.hdr-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#0891b2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:#fff;flex-shrink:0}.hdr-username{font-size:14px;font-weight:500;color:#475569}.hdr-login-btn{padding:8px 18px;font-size:14px;font-weight:600;cursor:pointer;border:none;border-radius:8px;background:linear-gradient(135deg,#7c3aed,#0891b2);color:#fff;transition:opacity .2s,transform .2s;white-space:nowrap}.hdr-login-btn:hover{opacity:.9;transform:translateY(-1px)}.hdr-logout-btn{padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid #e2e8f0;border-radius:8px;background:transparent;color:#475569;transition:border-color .2s,color .2s}.hdr-logout-btn:hover{border-color:#ef4444;color:#ef4444}.donate-button{padding:7px 14px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid #f59e0b;border-radius:8px;background:#fff8e1;color:#b45309;transition:background .2s,border-color .2s;white-space:nowrap}.donate-button:hover{background:#fef3c7;border-color:#d97706}.hdr-mobile-bar{display:none}.hdr-hamburger{background:none;border:none;font-size:22px;cursor:pointer;color:#0f172a;padding:4px 6px;line-height:1;display:flex;align-items:center}.hdr-sidebar{position:fixed;top:0;right:-280px;width:280px;height:100vh;height:100dvh;background:#fff;border-left:1px solid rgba(0,0,0,.08);box-shadow:-8px 0 32px #0000001f;display:flex;flex-direction:column;z-index:1002;transition:right .3s cubic-bezier(.4,0,.2,1);overflow-x:hidden;overflow-y:auto}.hdr-sidebar.open{right:0}.hdr-sb-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.07);flex-shrink:0}.hdr-sb-brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:#0f172a;font-size:17px;font-weight:800;letter-spacing:-.5px}.hdr-sb-brand img{width:26px;height:26px;object-fit:contain}.hdr-sb-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;color:#475569;font-size:14px;cursor:pointer;transition:background .15s}.hdr-sb-close:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.hdr-sb-links{display:flex;flex-direction:column;padding:8px 12px;flex:1}.hdr-sb-link{display:block;padding:12px;border-radius:8px;font-size:15px;font-weight:500;color:#475569;text-decoration:none;transition:background .15s,color .15s}.hdr-sb-link:hover{background:#f5f3ff;color:#7c3aed}.hdr-sb-bottom{display:flex;flex-direction:column;gap:10px;padding:16px 20px 24px;flex-shrink:0}.hdr-sb-sep{height:1px;background:#00000012;margin-bottom:4px}.hdr-sb-user{display:flex;align-items:center;gap:10px}.hdr-sb-user-info{display:flex;flex-direction:column;gap:1px}.hdr-sb-uname{font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:175px}.hdr-sb-ustatus{font-size:11px;color:#94a3b8}.hdr-sb-logout{width:100%;padding:11px;border:1.5px solid #ef4444;border-radius:10px;background:transparent;color:#ef4444;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,color .15s;font-family:inherit}.hdr-sb-logout:hover{background:#ef4444;color:#fff}.hdr-sb-coffee{width:100%;padding:11px;border:1.5px solid #f59e0b;border-radius:10px;background:#fff8e1;color:#b45309;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;font-family:inherit;text-align:center}.hdr-sb-coffee:hover{background:#fef3c7;border-color:#d97706}.hdr-overlay{display:none;position:fixed;inset:0;background:#00000059;z-index:1001}@media(max-width:768px){.header-container{padding:0 16px;gap:10px}.hdr-right{display:none}.hdr-mobile-bar{display:flex;align-items:center;gap:8px;margin-left:auto}.hdr-mobile-bar .hdr-login-btn{font-size:12px;padding:7px 12px;border-radius:7px}.hdr-avatar-mobile{width:30px;height:30px;font-size:12px}.hdr-overlay{display:block}.lesson-search-bar{width:130px}.lesson-search-bar input[type=text]{font-size:13px;padding:6px 12px}.search-dropdown{width:250%;left:-80%}}:root{--ls-purple: #7c3aed;--ls-purple-l: #f5f3ff;--ls-purple-m: #ede9fe;--ls-purple-d: #6d28d9;--ls-sky: #0ea5e9;--ls-green: #22c55e;--ls-green-d: #16a34a;--ls-bg: #f8fafc;--ls-surface: #ffffff;--ls-border: #e2e8f0;--ls-text: #0f172a;--ls-text-2: #475569;--ls-text-3: #94a3b8;--ls-sidebar-w: 280px;--ls-topbar-h: 56px}.screen-container{display:flex;flex-direction:column;height:97.7vh;background:var(--ls-bg)}.page-container{display:flex;flex:1;overflow:hidden;position:relative;padding-top:20px}.loading-container{justify-content:center;align-items:center}.sidebar{width:var(--ls-sidebar-w);flex-shrink:0;background:var(--ls-surface);border-right:1px solid var(--ls-border);display:flex;flex-direction:column;overflow:hidden;transition:width .28s cubic-bezier(.4,0,.2,1);z-index:20}.sidebar.open{width:var(--ls-sidebar-w)}.sidebar.closed{width:0}.course-sidebar-header{display:flex;align-items:center;gap:10px;padding:20px 16px 16px;border-bottom:1px solid var(--ls-border);flex-shrink:0}.lesson-course-title{font-size:14.5px;font-weight:700;color:var(--ls-text);margin:40px 20px 30px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.course-progress-circle{position:relative;width:44px;height:44px;flex-shrink:0}.course-progress-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:var(--ls-text)}.sidebar>h2.lesson-course-title{padding:20px 16px 16px;border-bottom:1px solid var(--ls-border)}.sidebar nav{flex:1;overflow-y:auto;padding:10px 8px 24px;scrollbar-width:none;-ms-overflow-style:none}.sidebar nav::-webkit-scrollbar{display:none}.part-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin:8px 0 4px;font-size:13px;font-weight:700;color:var(--ls-text);cursor:pointer;border-radius:10px;background:var(--ls-bg);border:1px solid var(--ls-border);box-shadow:0 1px 3px #0000000d;transition:background .15s,color .15s,border-color .15s;-webkit-user-select:none;user-select:none}.part-header:hover{background:var(--ls-purple-l);color:var(--ls-purple);border-color:var(--ls-purple)}.expand-icon{font-size:18px;font-weight:600;color:var(--ls-text-3);flex-shrink:0;line-height:1}.topic-list{list-style:none;padding:0 0 0 4px;margin:0 0 4px}.topic-item{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:8px 10px 8px 12px;margin-bottom:1px;border-radius:8px;font-size:13px;color:var(--ls-text-2);cursor:pointer;transition:background .15s,color .15s;line-height:1.45;border-left:2px solid transparent}.topic-item:hover{background:var(--ls-purple-l);color:var(--ls-purple)}.active-topic{background:var(--ls-purple-l);color:var(--ls-purple);font-weight:600;border-left-color:var(--ls-purple)}.active-topic:hover{background:var(--ls-purple-m)}.lesson-completed-icon{flex-shrink:0;width:17px;height:17px;background:var(--ls-green);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:9px;margin-top:2px}.overlay,.ls-sidebar-icon-fallback{display:none}.ls-sidebar-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 13px 7px 10px;background:var(--ls-bg);border:1px solid var(--ls-border);border-radius:8px;font-size:13px;font-weight:600;color:var(--ls-text-2);cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;flex-shrink:0;font-family:inherit}.ls-sidebar-btn:hover{background:var(--ls-purple-l);border-color:var(--ls-purple);color:var(--ls-purple)}.ls-sidebar-btn svg{width:20px;height:20px}.main-content-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.content-area{flex:1;display:flex;flex-direction:column;overflow:hidden}.content-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:50px 20px 10px;background:var(--ls-surface);border-bottom:1px solid var(--ls-border);flex-shrink:0;box-shadow:0 1px 4px #0000000d;z-index:10}.topic-title{flex:1;text-align:center;font-size:14.5px;font-weight:600;color:var(--ls-text);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:600;cursor:pointer;border:1.5px solid var(--ls-purple);border-radius:8px;background:transparent;color:var(--ls-purple);transition:background .15s,color .15s;flex-shrink:0;white-space:nowrap;font-family:inherit}.practice-toggle-btn:hover{background:var(--ls-purple);color:#fff}.lesson-scroll-progress{width:100%;height:3px;background:#0000000d;flex-shrink:0}.lesson-scroll-progress-fill{height:100%;background:linear-gradient(90deg,var(--ls-purple),var(--ls-sky));transition:width .15s ease-out;border-radius:0 2px 2px 0}.content-body{flex:1;display:flex;overflow:hidden}.lesson-view{flex:1;overflow-y:auto;overflow-x:hidden;padding:36px 56px 48px 44px;background:var(--ls-surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.content-body>.lesson-view{flex:1}.practice-view{display:flex;flex-direction:column;overflow:hidden}.content-body>.practice-view{flex:1}.ls-ai-tutor-bar{flex-shrink:0}.ls-sandbox-inner{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#c4b5fd #f1f5f9}.ls-sandbox-inner::-webkit-scrollbar{width:6px}.ls-sandbox-inner::-webkit-scrollbar-track{background:#f1f5f9}.ls-sandbox-inner::-webkit-scrollbar-thumb{background:#c4b5fd;border-radius:99px}.ls-sandbox-inner::-webkit-scrollbar-thumb:hover{background:#7c3aed}.split .lesson-view{scrollbar-width:thin;scrollbar-color:#c4b5fd #f1f5f9}.split .lesson-view::-webkit-scrollbar{width:6px}.split .lesson-view::-webkit-scrollbar-track{background:#f1f5f9}.split .lesson-view::-webkit-scrollbar-thumb{background:#c4b5fd;border-radius:99px}.split .lesson-view::-webkit-scrollbar-thumb:hover{background:#7c3aed}.navigation-buttons{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:var(--ls-surface);border-top:1px solid var(--ls-border);flex-shrink:0;gap:12px}.nav-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 22px;font-size:14px;font-weight:600;cursor:pointer;border-radius:10px;transition:all .15s ease;font-family:inherit;white-space:nowrap}.prev-btn{background:var(--ls-bg);border:1.5px solid var(--ls-border);color:var(--ls-text-2)}.prev-btn:hover{background:var(--ls-purple-l);border-color:var(--ls-purple);color:var(--ls-purple)}.next-btn{background:var(--ls-purple);border:1.5px solid var(--ls-purple);color:#fff;box-shadow:0 4px 14px #7c3aed4d}.next-btn:hover{background:var(--ls-purple-d);border-color:var(--ls-purple-d);box-shadow:0 4px 18px #7c3aed6b}.next-part-btn{background:var(--ls-green);border:1.5px solid var(--ls-green);color:#fff;box-shadow:0 4px 14px #22c55e47}.next-part-btn:hover{background:var(--ls-green-d);border-color:var(--ls-green-d)}.split{display:flex;flex-direction:row;width:100%;height:100%}.gutter{background-color:var(--ls-border);background-repeat:no-repeat;background-position:50%;transition:background-color .2s}.gutter:hover{background-color:var(--ls-purple)}.gutter.gutter-horizontal{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAeCAYAAADkftS9AAAAIklEQVQoU2M4c+bMfxAGAgYYmwGrIIiDjrELjpo5aiZeMwF+yNnOs5KSvgAAAABJRU5ErkJggg==);cursor:col-resize;border-radius:0}.hide-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.hide-scrollbar::-webkit-scrollbar{display:none}.hamburger-menu{display:none}.lesson-view{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;font-weight:400;line-height:1.75;color:#1e1e2e}.lesson-view>*{max-width:740px}.lesson-view h1,.lesson-view h2,.lesson-view h3,.lesson-view h4,.lesson-view h5,.lesson-view h6{font-family:Inter,system-ui,sans-serif;font-weight:700;line-height:1.3;letter-spacing:-.3px;color:#0f0f1a}.lesson-view h1{font-size:1.95rem;font-weight:800;letter-spacing:-.5px;margin:0 0 1.1rem;padding-bottom:.65rem;border-bottom:2px solid #f0f0f8}.lesson-view h2{font-size:1.5rem;font-weight:700;margin:2.2rem 0 .9rem;padding-bottom:.4rem;border-bottom:1px solid #f0f0f8}.lesson-view h3{font-size:1.2rem;font-weight:700;margin:1.8rem 0 .65rem}.lesson-view h4{font-size:1.05rem;font-weight:600;margin:1.5rem 0 .55rem;color:#2d2d42}.lesson-view p{margin:0 0 1.25rem;font-size:16px;line-height:1.75;color:#2d2d42}.lesson-view strong{font-weight:600;color:#112}.lesson-view em{font-style:italic;color:#3d3d55}.lesson-view ul,.lesson-view ol{margin:0 0 1.25rem;padding-left:1.5rem}.lesson-view ul{list-style:none;padding-left:0}.lesson-view ul li{position:relative;padding-left:1.4rem;margin-bottom:.5rem;color:#2d2d42;line-height:1.7;font-size:16px}.lesson-view ul li:before{content:"▸";position:absolute;left:0;color:#7c3aed;font-size:.8em;top:.18em}.lesson-view ol{list-style:decimal}.lesson-view ol li{margin-bottom:.5rem;color:#2d2d42;line-height:1.7;font-size:16px;padding-left:.3rem}.lesson-view ol li::marker{color:#7c3aed;font-weight:600}.lesson-view ul ul,.lesson-view ol ol,.lesson-view ul ol,.lesson-view ol ul{margin:.35rem 0 .35rem .5rem}.lesson-view p code,.lesson-view li code,.lesson-view h2 code,.lesson-view h3 code,.lesson-view td code{font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:.845em;font-weight:500;background:#f0edff;color:#5b21b6;padding:2px 6px 3px;border-radius:5px;border:1px solid #e0d9ff;white-space:nowrap;-webkit-font-smoothing:auto}.lesson-view pre{background:#13131f;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:20px 24px;margin:1.4rem 0 1.6rem;overflow-x:auto;box-shadow:0 8px 32px #0000001f,0 1px #ffffff0a inset;max-width:100%;position:relative}.lesson-view pre:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#7c3aed,#0891b2);border-radius:12px 12px 0 0}.lesson-view pre code{font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:13.5px;font-weight:400;line-height:1.7;color:#c9d1d9;background:none;border:none;padding:0;white-space:pre;border-radius:0;-webkit-font-smoothing:antialiased}.lesson-view blockquote{margin:1.6rem 0;padding:14px 20px 14px 22px;border-left:4px solid #7c3aed;background:#f7f5ff;border-radius:0 10px 10px 0;color:#4a4a6a}.lesson-view blockquote p{margin:0;font-size:15.5px;line-height:1.7;font-style:italic}.lesson-view blockquote strong{color:#5b21b6;font-style:normal}.lesson-view hr{border:none;border-top:2px solid #f0f0f8;margin:2.25rem 0}.lesson-view a{color:#6d28d9;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;font-weight:500;transition:color .2s}.lesson-view a:hover{color:#4c1d95;text-decoration-thickness:2px}.lesson-view table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse;margin:1.4rem 0 1.6rem;font-size:14.5px;font-family:Inter,sans-serif;border-radius:10px;box-shadow:0 2px 12px #00000012}.lesson-view th,.lesson-view td{border:1px solid #e5e7f0;padding:10px 16px;text-align:left;line-height:1.5}.lesson-view th{background:linear-gradient(135deg,#f0edff,#e8f4ff);font-weight:600;font-size:12.5px;color:#3b0764;text-transform:uppercase;letter-spacing:.05em}.lesson-view tr:nth-child(2n) td{background:#fafafe}.lesson-view tr:hover td{background:#f5f3ff;transition:background .15s}.lesson-view .note,.lesson-view .callout,.lesson-view .tip,.lesson-view .warning{display:flex;gap:12px;padding:13px 18px;border-radius:10px;margin:1.4rem 0;font-size:15px;line-height:1.65}.lesson-view .note,.lesson-view .callout{background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a5f}.lesson-view .tip{background:#f0fdf4;border:1px solid #bbf7d0;color:#14532d}.lesson-view .warning{background:#fffbeb;border:1px solid #fde68a;color:#78350f}@media(max-width:768px){.screen-container{height:92vh}.sidebar{position:fixed;top:0;left:0;bottom:0;height:100%;width:var(--ls-sidebar-w)!important;transform:translate(-100%);transition:transform .28s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 24px #00000024;z-index:1000;background-color:var(--ls-surface)}.sidebar.open{transform:translate(0)}.overlay{display:block;position:fixed;inset:0;background:#0f172a73;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:999}.content-header{padding:50px 12px 10px;gap:8px}.topic-title{font-size:13px;text-align:left}.ls-sidebar-btn{padding:7px 11px;gap:5px;font-size:13px}.ls-sidebar-icon{display:none}.ls-sidebar-icon-fallback{display:inline;font-size:16px;line-height:1}.ls-sidebar-label{display:inline}.practice-toggle-btn,.practice-view,.gutter{display:none}.split{display:block}.split>.lesson-view{width:100%!important}.lesson-view{padding:20px 18px 36px;overflow-x:hidden;overflow-y:auto}.navigation-buttons{padding:10px 14px;gap:8px}.nav-btn{padding:9px 16px;font-size:13px;border-radius:8px}.content-area{margin-top:0;padding:0}}@media(max-width:480px){.lesson-view{padding:16px 14px 32px}.lesson-view h1{font-size:1.55rem}.lesson-view h2{font-size:1.25rem}.lesson-view h3{font-size:1.1rem}.nav-btn{padding:8px 12px;font-size:12.5px}}.lesson-quiz-section{margin:40px 0 32px;padding:28px;background:linear-gradient(135deg,#f8fafc,#f0f4ff);border:1px solid #e2e8f0;border-radius:16px}.lqs-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px}.lqs-title{font-size:20px;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px}.lqs-icon{font-size:22px}.lqs-score{font-size:15px;font-weight:600;color:#475569;display:flex;align-items:center;gap:10px}.lqs-score-badge{font-size:12px;padding:3px 10px;border-radius:20px;color:#fff;font-weight:600}.lqs-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;margin-bottom:16px;box-shadow:0 1px 4px #0000000d}.lqs-q-num{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#7c3aed;font-weight:600;margin-bottom:8px}.lqs-question{font-size:15px;font-weight:600;color:#0f172a;margin-bottom:14px;line-height:1.5}.lqs-options{display:flex;flex-direction:column;gap:8px}.lqs-option{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .15s;background:#f8fafc}.lqs-option:hover{border-color:#7c3aed;background:#f5f3ff}.lqs-option.selected{border-color:#7c3aed;background:#ede9fe}.lqs-option.correct{border-color:#22c55e;background:#f0fdf4;cursor:default}.lqs-option.wrong{border-color:#ef4444;background:#fef2f2;cursor:default}.lqs-opt-letter{width:28px;height:28px;border-radius:50%;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#475569;flex-shrink:0}.lqs-option.correct .lqs-opt-letter{background:#22c55e;color:#fff}.lqs-option.wrong .lqs-opt-letter{background:#ef4444;color:#fff}.lqs-option.selected .lqs-opt-letter{background:#7c3aed;color:#fff}.lqs-opt-text{flex:1;font-size:14px;color:#374151}.lqs-tick{color:#22c55e;font-weight:700;font-size:16px}.lqs-cross{color:#ef4444;font-weight:700;font-size:16px}.lqs-reveal-btn{margin-top:14px;padding:9px 20px;border-radius:8px;border:none;background:#7c3aed;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.lqs-reveal-btn:hover{background:#6d28d9}.lqs-explanation{margin-top:14px;padding:12px 14px;background:#fefce8;border-left:3px solid #eab308;border-radius:6px;font-size:13px;color:#374151;display:flex;gap:8px;line-height:1.5}.lqs-exp-icon{flex-shrink:0}.lesson-iq-section{margin:0 0 40px;padding:28px;background:linear-gradient(135deg,#f8fafc,#fff7ed);border:1px solid #e2e8f0;border-radius:16px}.liq-header{font-size:20px;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px;margin-bottom:6px}.liq-icon{font-size:22px}.liq-sub{font-size:13px;color:#64748b;margin-bottom:20px}.liq-level-group{margin-bottom:20px}.liq-level-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:4px 12px;border-radius:20px;border:1px solid;margin-bottom:10px}.liq-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:8px;overflow:hidden;transition:box-shadow .15s}.liq-card:hover{box-shadow:0 2px 8px #00000014}.liq-q-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.liq-q-text{font-size:14px;font-weight:500;color:#1e293b;line-height:1.5;flex:1}.liq-toggle{font-size:12px;color:#94a3b8;flex-shrink:0;margin-top:2px}.liq-answer{font-size:14px;color:#374151;line-height:1.6;background:#f8fafc;border-top:1px solid #e2e8f0;padding:12px 16px 12px 20px}.ls-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.ls-ai-tutor-toggle{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f5f3ff;border:1px solid #c4b5fd;border-radius:8px;font-size:13px;font-weight:600;color:#7c3aed;cursor:pointer;transition:all .18s;white-space:nowrap}.ls-ai-tutor-toggle:hover{background:#ede9fe}.ls-ai-dot{width:7px;height:7px;border-radius:50%;background:#94a3b8;animation:ls-ai-pulse 2s ease infinite}@keyframes ls-ai-pulse{0%,to{opacity:1}50%{opacity:.4}}.ls-toggle-pill{background:#e2e8f0;color:#64748b;font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.04em}.ls-ai-tutor-bar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:linear-gradient(135deg,#faf5ff,#f0f9ff);border-bottom:1px solid #e9d5ff}.ls-ai-tutor-bar-icon{font-size:20px;flex-shrink:0}.ls-ai-tutor-bar-text{flex:1;display:flex;flex-direction:column;gap:1px}.ls-ai-tutor-bar-text strong{font-size:13px;color:#7c3aed}.ls-ai-tutor-bar-text span{font-size:11px;color:#64748b}.ls-ai-tutor-bar-btn{padding:5px 14px;background:#7c3aed;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:opacity .18s}.ls-ai-tutor-bar-btn:hover{opacity:.85}.ls-ai-chat-fab-wrap{position:fixed;bottom:80px;right:24px;z-index:200}.ls-ai-chat-fab{display:flex;align-items:center;gap:8px;padding:12px 18px;background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff;border:none;border-radius:50px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 20px #7c3aed73;transition:transform .18s,box-shadow .18s}.ls-ai-chat-fab:hover{transform:translateY(-2px);box-shadow:0 8px 28px #7c3aed8c}.ls-ai-chat-fab-icon{font-size:18px}.ls-ai-chat-fab-label{font-size:14px}.ls-ai-chat-coming{background:#ffffff40;font-size:10px;font-weight:700;padding:2px 7px;border-radius:10px;letter-spacing:.04em}.ls-ai-popup-overlay{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;display:flex;align-items:center;justify-content:center;padding:20px}.ls-ai-popup{position:relative;background:#fff;border-radius:20px;padding:40px 36px 32px;max-width:400px;width:100%;text-align:center;box-shadow:0 24px 64px #0000002e;animation:ls-popup-in .22s ease}@keyframes ls-popup-in{0%{opacity:0;transform:scale(.92) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.ls-ai-popup-close{position:absolute;top:14px;right:16px;background:#f1f5f9;border:none;border-radius:6px;width:28px;height:28px;font-size:13px;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center}.ls-ai-popup-close:hover{background:#e2e8f0}.ls-ai-popup-icon{font-size:44px;margin-bottom:12px}.ls-ai-popup h3{font-size:20px;font-weight:800;margin:0 0 10px;color:#0f172a}.ls-ai-popup p{font-size:14px;color:#475569;line-height:1.6;margin:0 0 16px}.ls-ai-popup-badge{display:inline-block;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;font-size:13px;font-weight:700;padding:6px 16px;border-radius:20px;margin-bottom:14px}.ls-ai-popup-sub{font-size:12px;color:#94a3b8;margin:0 0 24px}.ls-ai-popup-btn{background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff;border:none;border-radius:10px;padding:11px 32px;font-size:15px;font-weight:600;cursor:pointer;width:100%;transition:opacity .18s}.ls-ai-popup-btn:hover{opacity:.9}.lqs-attempt-badge{background:#ede9fe;color:#7c3aed;font-size:11px;font-weight:600;padding:3px 9px;border-radius:10px;margin-left:8px}.lqs-reveal-all-btn{background:#f5f3ff;border:1px solid #c4b5fd;color:#7c3aed;font-size:12px;font-weight:600;padding:5px 12px;border-radius:7px;cursor:pointer;transition:all .15s}.lqs-reveal-all-btn:hover{background:#ede9fe}.lqs-summary{margin-top:24px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:20px}.lqs-summary-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:12px}.lqs-summary-score{display:flex;flex-direction:column;gap:3px}.lqs-summary-num{font-size:28px;font-weight:800}.lqs-summary-label{font-size:13px;color:#475569}.lqs-retry-btn{display:flex;align-items:center;gap:6px;padding:9px 18px;background:#fff;border:2px solid #7c3aed;border-radius:10px;color:#7c3aed;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;transition:all .18s}.lqs-retry-btn:hover{background:#7c3aed;color:#fff}.lqs-perf-bar{height:10px;background:#fee2e2;border-radius:99px;overflow:hidden;margin-bottom:10px}.lqs-perf-correct{height:100%;background:linear-gradient(90deg,#22c55e,#16a34a);border-radius:99px;transition:width .8s ease}.lqs-perf-legend{display:flex;gap:16px;font-size:12px;font-weight:600;margin-bottom:14px}.lqs-legend-correct{color:#16a34a}.lqs-legend-wrong{color:#ef4444}.lqs-legend-pct{color:#64748b;margin-left:auto}.lqs-missed-list{border-top:1px solid #e2e8f0;padding-top:12px}.lqs-missed-title{font-size:12px;font-weight:600;color:#ef4444;margin:0 0 8px}.lqs-missed-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid #f1f5f9;font-size:12px}.lqs-missed-num{background:#fee2e2;color:#ef4444;font-weight:700;font-size:10px;padding:2px 7px;border-radius:5px;white-space:nowrap}.lqs-missed-q{color:#475569;line-height:1.4}@media(max-width:640px){.ls-header-actions{gap:6px}.ls-ai-tutor-toggle,.ls-toggle-pill{display:none}.ls-ai-chat-fab-wrap{bottom:calc(8vh + 70px);right:16px}.ls-ai-chat-fab{padding:10px 14px;font-size:13px}.ls-ai-chat-fab-label{display:none}.ls-ai-popup{padding:32px 20px 24px}.lqs-summary-top{flex-direction:column;align-items:flex-start}}:root{--hover-lift-distance: 60px;--stack-width: 280px;--stack-height: 220px;--layer-thickness: 30px}.stack-visualization-container{display:flex;align-items:center;justify-content:center;gap:clamp(20px,5vw,50px);padding:clamp(20px,5vw,60px);background:#fff;border-radius:20px;box-shadow:0 15px 40px #00000014;max-width:1200px;width:90%;box-sizing:border-box;margin:0 auto}.left-label{text-align:right;font-weight:700;color:#333;display:flex;flex-direction:row-reverse;align-items:center;gap:15px;min-width:120px}.arrow-up{width:3px;height:150px;background:#444;position:relative;border-radius:2px}.arrow-up:before{content:"";position:absolute;top:-2px;left:-5px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:12px solid #444}.isometric-stack{position:relative;width:var(--stack-width);height:var(--stack-height);transform:rotateX(60deg) rotate(-45deg);transform-style:preserve-3d;transition:transform .5s cubic-bezier(.25,.8,.25,1);margin:20px 20px 40px}.layer{position:absolute;width:100%;height:100%;top:0;left:0;transition:all .5s cubic-bezier(.34,1.56,.64,1);transform-style:preserve-3d}.layer-content{width:100%;height:100%;position:relative;border-radius:12px;transform-style:flat}.layer-content:before{content:"";position:absolute;width:100%;height:var(--layer-thickness);bottom:0;left:0;transform-origin:bottom;transform:rotateX(90deg);border-bottom-left-radius:12px;border-bottom-right-radius:12px}.layer-content:after{content:"";position:absolute;width:var(--layer-thickness);height:100%;top:0;left:0;transform-origin:left;transform:rotateY(-90deg);border-top-left-radius:12px;border-bottom-left-radius:12px}.layer-html{z-index:1;transform:translateZ(-80px)}.concrete-texture{background:#a0a0a0;background-image:repeating-radial-gradient(circle at 0 0,transparent 0,#a0a0a0 10px),repeating-linear-gradient(#b0b0b0,#909090);box-shadow:inset 0 0 20px #0003;border:1px solid #999}.concrete-texture:before{background-color:#7a7a7a}.concrete-texture:after{background-color:#8a8a8a}.layer-css{z-index:2;transform:translateZ(-40px)}.colorful-texture{background:linear-gradient(135deg,#ff6b6b,#556270,#4ecdc4);box-shadow:0 5px 15px #0003;border:1px solid rgba(255,255,255,.2)}.colorful-texture:before{background:linear-gradient(to right,#a34444,#3b4652)}.colorful-texture:after{background:linear-gradient(to bottom,#3b4652,#368d87)}.layer-js{z-index:3;transform:translateZ(0)}.glass-texture{background:#ffffff40;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.6);box-shadow:0 10px 30px #00000026;overflow:hidden}.glass-texture:before{background-color:#c8c8c866}.glass-texture:after{background-color:#dcdcdc66}.gear{position:absolute;fill:#fffc;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.gear-1{width:80px;top:20%;left:15%}.gear-2{width:60px;bottom:20%;right:20%}.js-icon{position:absolute;fill:#fffffff2;filter:drop-shadow(0 3px 6px rgba(0,0,0,.3))}.icon-brackets{width:32px;top:15%;right:25%}.icon-logic{width:28px;bottom:25%;left:30%}.icon-code{width:30px;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes spin-cw{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes spin-ccw{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes float-pulse{0%,to{transform:translateY(0) scale(1);opacity:.9}50%{transform:translateY(-6px) scale(1.1);opacity:1}}.spin-cw{animation:spin-cw 10s linear infinite}.spin-ccw{animation:spin-ccw 12s linear infinite}.float-anim-1{animation:float-pulse 4s ease-in-out infinite}.float-anim-2{animation:float-pulse 4.5s ease-in-out infinite .5s}.float-anim-3{animation:float-pulse 5s ease-in-out infinite 1s}.right-labels{display:flex;flex-direction:column;gap:30px;text-align:left}.label-group{position:relative}.label-group h3{margin:0;font-size:1.2rem;color:#222}.label-group p{margin:0;font-size:.9rem;color:#666}.label-group:before{content:"";position:absolute;left:-60px;top:50%;width:50px;height:2px;background:#e0e0e0;z-index:-1}.isometric-stack:hover .layer-js,.isometric-stack:active .layer-js{transform:translateZ(var(--hover-lift-distance))}.isometric-stack:hover .layer-css,.isometric-stack:active .layer-css{transform:translateZ(0)}.isometric-stack:hover .layer-html,.isometric-stack:active .layer-html{transform:translateZ(calc(var(--hover-lift-distance) * -1))}@media(max-width:900px){.stack-visualization-container{flex-direction:row;gap:clamp(20px,5vw,50px);padding:clamp(20px,5vw,60px);width:90%}}@media(max-width:500px){:root{--stack-width: 180px;--stack-height: 140px;--hover-lift-distance: 50px;--layer-thickness: 18px}.stack-visualization-container{flex-direction:row;gap:30px;padding:14px 10px;width:90%}.left-label{font-size:.5rem;min-width:auto}.arrow-up{height:80px}.right-labels{gap:14px}.right-labels h3{font-size:.7rem}.right-labels p{font-size:.8rem}.label-group:before{left:-40px;width:30px}}:root{--bg-dark: #020617;--panel-dark: #020617;--accent-blue: #38bdf8;--accent-purple: #a855f7;--accent-green: #22c55e;--text-main: #e5e7eb;--text-muted: #9ca3af}.html-layers-container{width:100%;display:flex;justify-content:center;padding:24px 16px;box-sizing:border-box}.html-layers-inner{display:flex;align-items:stretch;justify-content:center;gap:32px;max-width:1100px;width:100%;color:var(--text-main);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;flex-wrap:wrap}.html-layers-intro{flex:1 1 100%;max-width:100%;margin-bottom:8px}.html-layers-intro h2{color:#363636de;margin:0 0 6px;font-size:1.3rem}.html-layers-intro p{margin:0;font-size:.9rem;color:#363636de}.html-layers-stack{flex:1 1 320px;max-width:480px;display:flex;flex-direction:column;gap:16px;perspective:1200px}.layer-card{position:relative;background:radial-gradient(circle at top left,#1f2937,#020617);border-radius:14px;border:1px solid rgba(148,163,184,.5);transform-style:preserve-3d;overflow:hidden;cursor:pointer;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease,background .35s ease}.layer-card:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at top,rgba(56,189,248,.18),transparent);opacity:0;transition:opacity .35s ease;pointer-events:none}.layer-face{padding:14px 16px 16px;position:relative;z-index:1}.layer-html-box{transform:translateY(4px) translateZ(0) rotateX(6deg)}.layer-head{transform:translateY(0) translateZ(10px) rotateX(3deg)}.layer-body{transform:translateY(-4px) translateZ(20px) rotateX(0)}.layer-card:hover{transform:translateY(-4px) translateZ(32px) rotateX(0) scale(1.02);box-shadow:0 24px 55px #0f172a,0 0 0 1px #94a3b8e6;border-color:#38bdf8cc;background:radial-gradient(circle at top left,#0f172a,#020617)}.layer-card:hover:before{opacity:1}.layer-html-box{border-left:3px solid var(--accent-blue)}.layer-head{border-left:3px solid var(--accent-purple)}.layer-body{border-left:3px solid var(--accent-green)}.layer-tag{display:inline-block;font-family:Fira Code,Consolas,monospace;font-size:.85rem;padding:4px 8px;border-radius:999px;background:#0f172ab3;border:1px solid rgba(148,163,184,.7);margin-bottom:6px}.layer-label{margin:4px 0 2px;font-size:.9rem;color:#fff!important;font-weight:600}.layer-description{margin:0;font-size:.8rem;color:#fff!important}.layer-description code{color:var(--accent-blue)}.html-layers-preview{flex:1 1 320px;max-width:460px;display:flex;flex-direction:column;gap:10px}.preview-browser{background:#f9fafb;border-radius:16px;overflow:hidden;border:1px solid #e5e7eb;color:#111827}.preview-bar{display:flex;align-items:center;gap:6px;padding:7px 10px;background:linear-gradient(to bottom,#e5e7eb,#d4d4d8);border-bottom:1px solid #cbd5f5}.preview-dot{width:9px;height:9px;border-radius:999px;flex-shrink:0}.preview-dot.red{background:#f87171}.preview-dot.yellow{background:#facc15}.preview-dot.green{background:#22c55e}.preview-title{margin-left:12px;font-size:.78rem;color:#4b5563;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-body{padding:18px 20px 22px}.preview-body h1{margin:0 0 10px;font-size:1.25rem;font-weight:700}.preview-body p{margin:0;font-size:.9rem;color:#4b5563}.preview-caption{margin:0;font-size:.8rem;color:var(--text-muted)}.html-layers-stack:hover~.html-layers-preview .preview-body h1{color:#0f766e;text-shadow:0 2px 6px rgba(15,23,42,.25)}@media(max-width:900px){.html-layers-inner{gap:20px}}@media(max-width:700px){.html-layers-inner{flex-direction:row;align-items:stretch}.html-layers-stack,.html-layers-preview{max-width:100%;flex:1 1 100%}.preview-browser{width:100%}.preview-body{padding:14px 14px 18px}.preview-body h1{font-size:1.05rem}.preview-body p{font-size:.82rem}}@media(max-width:480px){.html-layers-container{padding:16px 10px}.layer-face{padding:10px 12px 12px}.layer-tag{font-size:.75rem}.layer-label{font-size:.85rem}.layer-description{font-size:.75rem}.html-layers-intro h2{font-size:1.1rem}.html-layers-intro p{font-size:.8rem}.preview-caption{font-size:.75rem}}.html-tags-3d{--accent-blue: #38bdf8;--accent-purple: #a855f7;--accent-green: #22c55e;--accent-orange: #f97316;--accent-pink: #ec4899;--bg-dark: #020617;--card-bg: #020617;--text-main: #e5e7eb;--text-muted: #9ca3af;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;box-sizing:border-box;width:100%;padding:24px 16px;display:flex;justify-content:center}.html-tags-3d-inner{width:100%;display:flex;gap:28px;flex-wrap:wrap}.html-tags-3d h2{margin:0 0 6px;font-size:1.3rem;color:#111827}.html-tags-3d p{margin:0}.html-tags-3d-intro{flex:1 1 100%;margin-bottom:8px}.html-tags-3d-intro p{font-size:.9rem;color:#4b5563}.html-tags-3d-left{flex:1 1 320px;max-width:420px;color:var(--text-main)}.html-tags-3d-right{flex:1 1 320px;max-width:500px}.tag-card-list{display:flex;flex-direction:column;gap:14px;perspective:1200px}.tag-card{position:relative;background:radial-gradient(circle at top left,#1f2937,#020617);border-radius:14px;border:1px solid rgba(148,163,184,.55);padding:12px 14px;color:var(--text-main);cursor:grab;transform-style:preserve-3d;transform:translateY(2px) translateZ(0) rotateX(5deg) rotateY(-10deg);box-shadow:0 16px 40px #0f172ae6;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,background .3s ease}.tag-card:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at top,rgba(56,189,248,.22),transparent);opacity:0;transition:opacity .3s ease;pointer-events:none}.tag-card:hover{transform:translateY(-4px) translateZ(24px) rotateX(0) rotateY(0) scale(1.03);box-shadow:0 22px 55px #0f172a;border-color:#38bdf8e6;background:radial-gradient(circle at top left,#0f172a,#020617)}.tag-card:active{cursor:grabbing}.tag-card:hover:before{opacity:1}.tag-card-label{display:flex;align-items:center;gap:8px;margin-bottom:4px}.tag-pill{display:inline-block;font-family:Fira Code,Consolas,monospace;font-size:.82rem;padding:3px 7px;border-radius:999px;background:#0f172ad9;border:1px solid rgba(148,163,184,.75)}.tag-name{font-size:.9rem;font-weight:600}.tag-desc{font-size:.8rem;color:var(--text-muted)!important}.tag-card[data-tag=p]{border-left:3px solid var(--accent-blue)}.tag-card[data-tag=h1]{border-left:3px solid var(--accent-purple)}.tag-card[data-tag=img]{border-left:3px solid var(--accent-green)}.tag-card[data-tag=b]{border-left:3px solid var(--accent-orange)}.tag-card[data-tag=br]{border-left:3px solid var(--accent-pink)}.playground-card{background:#f3f4f6;border-radius:16px;border:1px solid #e5e7eb;padding:14px 14px 16px;box-shadow:0 14px 35px #0f172a4d}.playground-title{font-size:.95rem;font-weight:600;margin-bottom:6px;color:#111827}.playground-subtitle{font-size:.8rem;color:#4b5563;margin-bottom:10px}.tag-drop-zone{position:relative;border-radius:14px;border:2px dashed #cbd5f5;background:repeating-linear-gradient(-45deg,#94a3b80f,#94a3b80f 6px,#94a3b805 6px 12px);padding:14px 12px;text-align:center;transition:border-color .25s ease,background .25s ease,transform .25s ease,box-shadow .25s ease}.tag-drop-zone.drag-over{border-color:#38bdf8;background:#bfdbfe66;transform:translateY(-2px);box-shadow:0 10px 25px #0f172a40}.drop-hint{font-size:.8rem;color:#4b5563}.current-tag-label{margin-top:6px;font-size:.8rem;color:#6b7280}.divider{margin:12px 0;height:1px;background:#e5e7eb}.code-and-preview{display:grid;grid-template-columns:1.2fr 1.1fr;gap:10px}.code-box,.result-box{background:#fff;border-radius:10px;border:1px solid #e5e7eb;padding:10px 10px 12px}.code-box-label,.result-box-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#6b7280;margin-bottom:4px}.code-output{font-family:Fira Code,Consolas,monospace;font-size:.78rem;white-space:pre-wrap;word-break:break-all;color:#fff}.result-output{border-radius:8px;padding:8px 10px;background:#f9fafb;min-height:40px;font-size:.9rem;color:#111827}.playground-footer{margin-top:6px;font-size:.76rem;color:#6b7280}.result-output h1{margin:0 0 6px;font-size:1.05rem}.result-output p{margin:0;font-size:.86rem}@media(max-width:900px){.html-tags-3d-inner{gap:20px}}@media(max-width:720px){.html-tags-3d-inner{flex-direction:row}.html-tags-3d-left,.html-tags-3d-right{max-width:100%}.code-and-preview{grid-template-columns:1fr}}@media(max-width:480px){.html-tags-3d{padding:16px 10px}.tag-card{padding:10px 11px}.tag-desc{font-size:.76rem}.playground-card{padding:12px}.playground-subtitle,.playground-footer{font-size:.74rem}}:root{--hbv-bg-dark: #1e1e1e;--hbv-bg-darker: #161616;--hbv-text-light: #d4d4d4;--hbv-accent-blue: #3794ff;--hbv-accent-blue-dim: #3794ff40;--hbv-accent-green: #4ec9b0;--hbv-highlight: #ffffff1a;--hbv-border: #333;--hbv-wrapper-color: #c586c0}.hbv-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;color:#333;line-height:1.6}.hbv-header{margin-bottom:30px;text-align:center}.hbv-header h2{font-size:2rem;margin-bottom:1rem;color:#222}.hbv-instruction{background-color:#eef6fc;display:inline-block;padding:8px 16px;border-radius:20px;font-size:.95rem;border:1px solid #d0e3f5}.code-font{font-family:Courier New,Courier,monospace}.hbv-interactive-layout{display:flex;flex-direction:column;gap:20px;position:relative}.hbv-code-panel{background-color:var(--hbv-bg-dark);border-radius:12px;overflow:hidden;box-shadow:0 10px 30px -10px #0000004d;flex:1 1 60%}.hbv-code-window-controls{background-color:var(--hbv-bg-darker);padding:12px;display:flex;align-items:center;border-bottom:1px solid var(--hbv-border)}.hbv-dot{height:12px;width:12px;background-color:#bbb;border-radius:50%;display:inline-block;margin-right:8px}.hbv-dot.red{background-color:#ff5f56}.hbv-dot.yellow{background-color:#ffbd2e}.hbv-dot.green{background-color:#27c93f}.hbv-filename{color:#888;font-family:monospace;margin-left:auto;margin-right:auto;font-size:.9rem}.hbv-code-block{margin:0;padding:20px 0;overflow-x:auto;text-align:left}.hbv-code-line{display:flex;width:100%;background:none;border:none;color:var(--hbv-text-light);font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1rem;padding:6px 0;cursor:pointer;text-align:left;transition:background-color .2s ease;position:relative}.hbv-code-line:hover{background-color:var(--hbv-highlight)}.hbv-code-line.active{background-color:var(--hbv-accent-blue-dim);box-shadow:inset 3px 0 0 var(--hbv-accent-blue)}.hbv-wrapper-inactive .hbv-line-content{color:var(--hbv-wrapper-color);opacity:.8}.hbv-line-number{display:inline-block;width:40px;text-align:right;margin-right:20px;color:#555;-webkit-user-select:none;user-select:none}.indent-0 .hbv-line-content{padding-left:0}.indent-1 .hbv-line-content{padding-left:20px;border-left:1px solid #ffffff20}.indent-2 .hbv-line-content{padding-left:40px;border-left:1px solid #ffffff20}.hbv-details-panel{flex:1 1 40%;background-color:#fff;border-radius:12px;border:2px solid #e0e0e0;padding:25px;display:flex;align-items:center;justify-content:center;min-height:250px;transition:all .3s ease}.hbv-details-panel.is-open{border-color:var(--hbv-accent-blue);box-shadow:0 0 20px #3794ff26}.hbv-details-placeholder{text-align:center;color:#888}.placeholder-icon{font-size:3rem;margin-bottom:10px;transform:rotate(90deg)}.hbv-details-title{margin-top:0;color:var(--hbv-accent-blue);background-color:#f0f7ff;padding:8px 12px;border-radius:6px;display:inline-block;font-size:1.1rem}.hbv-details-body code{background-color:#eee;padding:2px 4px;border-radius:4px}.hbv-close-mobile-btn{display:none}.fadeIn{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(min-width:768px){.hbv-interactive-layout{flex-direction:row;align-items:flex-start}.hbv-code-line{font-size:1.1rem}.placeholder-icon{transform:none}.hbv-details-panel{position:sticky;top:20px}}@media(max-width:767px){.hbv-header h2{font-size:1.6rem}.hbv-details-panel.is-open{position:fixed;bottom:0;left:0;right:0;z-index:100;border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:0 -5px 20px #0000001a;animation:slideUp .3s ease-out;max-height:60vh;overflow-y:auto}.hbv-close-mobile-btn{display:block;width:100%;padding:12px;margin-top:15px;background-color:#f0f0f0;border:none;border-radius:8px;font-weight:700;color:#555}.hbv-details-placeholder{display:none}.hbv-details-panel:not(.is-open){display:none}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}.hlv-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:900px;margin:20px auto;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden;color:#333}.hlv-header{padding:20px 25px;background:linear-gradient(135deg,#f6f8fb,#e9edf5);border-bottom:1px solid #e0e0e0}.hlv-header h2{margin:0 0 10px;color:#2c3e50;font-size:1.5rem}.hlv-header p{margin:0;color:#555;font-size:.95rem;line-height:1.5}.hlv-tabs{display:flex;background-color:#f0f0f0;border-bottom:1px solid #ddd}.hlv-tab-btn{flex:1;padding:15px;border:none;background:none;font-size:1rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s ease;border-bottom:3px solid transparent}.hlv-tab-btn:hover{background-color:#e6e6e6;color:#333}.hlv-tab-btn.active{background-color:#fff;color:#007bff;border-bottom-color:#007bff}.hlv-content-area{padding:25px}.hlv-controls-panel{margin-bottom:25px;background-color:#f9fbfd;padding:15px;border-radius:8px;border:1px solid #e1e8ed}.hlv-description p{margin-top:0;margin-bottom:10px}.hlv-note{font-size:.9rem;color:#666;margin-bottom:10px}.hlv-control-row{display:flex;gap:20px;flex-wrap:wrap}.hlv-input-group{display:flex;flex-direction:column;gap:5px;min-width:150px;flex:1}.hlv-input-group label{font-size:.85rem;font-weight:700;color:#555;text-transform:uppercase}.hlv-input-group select,.hlv-input-group input{padding:10px;border:1px solid #ccc;border-radius:6px;font-size:1rem;background-color:#333}.hlv-visual-split{display:flex;gap:20px;flex-direction:column}.hlv-panel{border-radius:8px;overflow:hidden;flex:1;box-shadow:0 2px 10px #0000000d}.hlv-panel-header{padding:8px 12px;background-color:#eee;border-bottom:1px solid #ddd;display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:#555;text-transform:uppercase}.dot{width:10px;height:10px;border-radius:50%;display:inline-block}.dot.red{background-color:#ff5f56}.dot.yellow{background-color:#ffbd2e}.dot.green{background-color:#27c93f}.hlv-code-panel{background-color:#1e1e1e;color:#d4d4d4;border:1px solid #333}.hlv-code-panel .hlv-panel-header{background-color:#252526;border-bottom:1px solid #333;color:#ccc}.hlv-code-panel pre{margin:0;padding:15px;overflow-x:auto;font-family:Consolas,Monaco,monospace;font-size:.95rem;line-height:1.5}.hlv-preview-panel{border:1px solid #ddd;background-color:#fff}.hlv-preview-content{padding:20px;min-height:150px;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.hlv-preview-content ul,.hlv-preview-content ol{background-color:#fff8dc;padding:20px 40px;border-radius:8px;border:2px dashed #e0c080;margin:0;min-width:150px}.hlv-preview-content li{margin-bottom:8px;font-weight:500}.hlv-footer-note{margin-top:20px;padding:10px 15px;background-color:#e3f2fd;border-left:4px solid #2196f3;border-radius:4px;font-size:.9rem;color:#0d47a1}.hlv-footer-note p{margin:0}@media(min-width:768px){.hlv-visual-split{flex-direction:row}.hlv-input-group{min-width:auto}}:root{--ha5-bg-dark: #1e1e1e;--ha5-bg-darker: #161616;--ha5-text-light: #d4d4d4;--ha5-accent-blue: #3794ff;--ha5-accent-blue-dim: #3794ff40;--ha5-accent-green: #4ec9b0;--ha5-highlight: #ffffff1a;--ha5-border: #333;--ha5-wrapper-color: #c586c0}.ha5-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;color:#333;line-height:1.6}.ha5-header{margin-bottom:30px;text-align:center}.ha5-header h2{font-size:1.9rem;margin-bottom:1rem;color:#222}.ha5-instruction{background-color:#eef6fc;display:inline-block;padding:8px 16px;border-radius:20px;font-size:.95rem;border:1px solid #d0e3f5}.ha5-code-font{font-family:Courier New,Courier,monospace;color:#fff!important}.ha5-line-content strong,.ha5-code-font strong{color:#fff;font-weight:700}.ha5-interactive-layout{display:flex;flex-direction:column;gap:20px;position:relative}.ha5-code-panel{background-color:var(--ha5-bg-dark);border-radius:12px;overflow:hidden;box-shadow:0 10px 30px -10px #0000004d;flex:1 1 60%}.ha5-code-window-controls{background-color:var(--ha5-bg-darker);padding:12px;display:flex;align-items:center;border-bottom:1px solid var(--ha5-border)}.ha5-dot{height:12px;width:12px;background-color:#bbb;border-radius:50%;display:inline-block;margin-right:8px}.ha5-dot-red{background-color:#ff5f56}.ha5-dot-yellow{background-color:#ffbd2e}.ha5-dot-green{background-color:#27c93f}.ha5-filename{color:#888;font-family:monospace;margin-left:auto;margin-right:auto;font-size:.9rem}.ha5-code-block{margin:0;padding:20px 0;overflow-x:auto;text-align:left}.ha5-code-line{display:flex;width:100%;background:none;border:none;color:var(--ha5-text-light);font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:.95rem;padding:6px 0;cursor:pointer;text-align:left;transition:background-color .2s ease;position:relative}.ha5-code-line:not(button){cursor:default}.ha5-code-line:hover{background-color:var(--ha5-highlight)}.ha5-code-line.ha5-active{background-color:var(--ha5-accent-blue-dim);box-shadow:inset 3px 0 0 var(--ha5-accent-blue)}.ha5-wrapper-inactive .ha5-line-content{color:var(--ha5-wrapper-color);opacity:.8}.ha5-line-number{display:inline-block;width:40px;text-align:right;margin-right:12px;color:#555;-webkit-user-select:none;user-select:none;flex-shrink:0}.ha5-indent-0 .ha5-line-content{padding-left:0}.ha5-indent-1 .ha5-line-content{padding-left:16px;border-left:1px solid #ffffff20}.ha5-indent-2 .ha5-line-content{padding-left:32px;border-left:1px solid #ffffff20}.ha5-line-content{display:inline-block;min-width:0}.ha5-details-panel{flex:1 1 40%;background-color:#fff;border-radius:12px;border:2px solid #e0e0e0;padding:20px 22px;display:flex;align-items:center;justify-content:center;min-height:230px;transition:all .3s ease}.ha5-details-panel.ha5-is-open{border-color:var(--ha5-accent-blue);box-shadow:0 0 20px #3794ff26}.ha5-details-placeholder{text-align:center;color:#888}.ha5-placeholder-icon{font-size:2.4rem;margin-bottom:10px;transform:rotate(90deg)}.ha5-details-title{margin-top:0;color:var(--ha5-accent-blue);background-color:#f0f7ff;padding:8px 12px;border-radius:6px;display:inline-block;font-size:1.05rem}.ha5-details-body{margin-top:10px;font-size:.95rem}.ha5-details-body code{background-color:#eee;padding:2px 4px;border-radius:4px;font-family:Courier New,Courier,monospace}.ha5-details-body pre{background-color:#1e1e1e;color:#f5f5f5;padding:10px 12px;border-radius:6px;overflow-x:auto;font-size:.9rem}.ha5-details-body ul{padding-left:20px}.ha5-close-mobile-btn{display:none}.ha5-fadeIn{animation:ha5-fadeIn .25s ease-in-out}@keyframes ha5-fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(min-width:768px){.ha5-interactive-layout{flex-direction:row;align-items:flex-start}.ha5-code-line{font-size:1rem}.ha5-placeholder-icon{transform:none}.ha5-details-panel{position:sticky;top:20px}}@media(max-width:767px){.ha5-header h2{font-size:1.6rem}.ha5-details-panel.ha5-is-open{position:fixed;bottom:0;left:0;right:0;z-index:100;border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:0 -5px 20px #0000002e;animation:ha5-slideUp .3s ease-out;max-height:60vh;overflow-y:auto}.ha5-close-mobile-btn{display:block;width:100%;padding:10px 12px;margin-top:14px;background-color:#f0f0f0;border:none;border-radius:8px;font-weight:600;color:#555}.ha5-details-placeholder{display:none}.ha5-details-panel:not(.ha5-is-open){display:none}@keyframes ha5-slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}}:root{--ha6-bg-dark: #111827;--ha6-bg-panel: #ffffff;--ha6-text-main: #111827;--ha6-text-muted: #6b7280;--ha6-accent-blue: #2563eb;--ha6-accent-blue-soft: rgba(37, 99, 235, .08);--ha6-border-soft: #e5e7eb;--ha6-border-strong: #d1d5db;--ha6-code-bg: #111827;--ha6-code-text: #e5e7eb;--ha6-radius-lg: 16px;--ha6-radius-md: 10px}.ha6-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;padding:20px 8px 32px;color:var(--ha6-text-main);line-height:1.6}.ha6-header{text-align:center;margin-bottom:20px}.ha6-header h2{font-size:1.8rem;margin-bottom:.75rem}.ha6-instruction{display:inline-block;background-color:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:8px 16px;border-radius:999px;font-size:.95rem}.ha6-layout{background:linear-gradient(135deg,#f9fafb,#eff6ff);border-radius:var(--ha6-radius-lg);padding:16px;box-shadow:0 18px 40px #0f172a1f}.ha6-tabs{display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:16px;overflow-x:auto;padding:4px}.ha6-tab-btn{flex:1 1 auto;white-space:nowrap;border-radius:999px;border:1px solid transparent;padding:8px 14px;font-size:.85rem;background-color:#fffc;color:var(--ha6-text-muted);cursor:pointer;transition:all .18s ease}.ha6-tab-btn:hover{border-color:var(--ha6-border-soft)}.ha6-tab-btn-active{background-color:var(--ha6-accent-blue);color:#fff;border-color:var(--ha6-accent-blue);box-shadow:0 0 0 1px #2563eb4d}.ha6-panels{display:flex;flex-direction:column;gap:14px}.ha6-controls-panel,.ha6-preview-panel{background-color:var(--ha6-bg-panel);border-radius:var(--ha6-radius-md);border:1px solid var(--ha6-border-soft)}.ha6-controls-panel{padding:14px 16px}.ha6-controls-section{display:flex;flex-direction:column;gap:10px}.ha6-controls-title{font-size:.95rem;margin:0}.ha6-controls-hint{margin:0;font-size:.85rem;color:var(--ha6-text-muted)}.ha6-toggle-group{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.ha6-toggle-group-multi .ha6-toggle-btn{flex:1 1 30%}.ha6-toggle-group-single .ha6-toggle-btn{flex:1 1 100%}.ha6-toggle-btn{border-radius:999px;border:1px solid var(--ha6-border-strong);padding:6px 10px;font-size:.8rem;background-color:#fff;color:var(--ha6-text-main);cursor:pointer;transition:all .18s ease}.ha6-toggle-btn:hover{background-color:#f3f4f6}.ha6-toggle-btn-active{background-color:var(--ha6-accent-blue-soft);border-color:var(--ha6-accent-blue);color:#1d4ed8}.ha6-preview-panel{padding:14px 16px}.ha6-preview-card{border-radius:12px;border:1px solid var(--ha6-border-soft);background-color:#f9fafb;padding:12px 14px}.ha6-preview-header{font-size:.9rem;font-weight:600;margin-bottom:6px;color:#111827}.ha6-preview-body{background-color:#fff;border-radius:10px;border:1px solid #e5e7eb;padding:10px 12px;margin-bottom:10px}.ha6-preview-label{font-size:.85rem;margin:0 0 4px;color:var(--ha6-text-muted)}.ha6-preview-sub{font-size:.8rem;color:var(--ha6-text-muted);margin-top:8px}.ha6-preview-url{color:#16a34a;font-family:Courier New,Courier,monospace}.ha6-link-preview{display:inline-block;padding:6px 10px;border-radius:999px;border:1px solid #d1d5db;background-color:#eff6ff;color:#1d4ed8;font-size:.85rem;cursor:pointer;text-decoration:none}.ha6-code-explainer{font-size:.85rem;color:var(--ha6-text-main)}.ha6-code-block{background-color:var(--ha6-code-bg);color:var(--ha6-code-text);border-radius:8px;padding:8px 10px;font-size:.8rem;overflow-x:auto;margin:0 0 6px;font-family:Courier New,Courier,monospace}.ha6-code-inline{display:inline-block;margin-top:4px}.ha6-image-frame{width:100%;max-width:260px;height:130px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin:4px 0;font-size:.85rem}.ha6-image-ok{background:linear-gradient(135deg,#22c55e,#16a34a);color:#ecfdf3}.ha6-image-broken{background:repeating-linear-gradient(45deg,#fef2f2,#fef2f2 6px,#fee2e2 6px 12px);border:1px solid #fecaca;color:#b91c1c}.ha6-image-label{font-weight:600}.ha6-alt-preview{font-style:italic}.ha6-format-text{font-size:.95rem}.ha6-format-bold{font-weight:700}.ha6-format-italic{font-style:italic}.ha6-format-underline{text-decoration:underline}.ha6-comment-preview-wrapper{margin-top:10px}.ha6-comment-muted{opacity:.4}@media(min-width:768px){.ha6-container{padding:28px 24px 40px}.ha6-header h2{font-size:2rem}.ha6-layout{padding:18px 18px 20px}.ha6-panels{flex-direction:row;align-items:flex-start;gap:16px}.ha6-controls-panel{flex:0 0 40%}.ha6-preview-panel{flex:1 1 60%}.ha6-preview-card{position:relative}.ha6-preview-card{box-shadow:0 16px 32px #0f172a2e}}@media(max-width:767px){.ha6-header h2{font-size:1.6rem}.ha6-layout{padding:14px}.ha6-tabs{margin-bottom:12px}}:root{--hb7-bg-main: #0f172a;--hb7-bg-card: #ffffff;--hb7-bg-soft: #f9fafb;--hb7-text-main: #111827;--hb7-text-muted: #6b7280;--hb7-accent-blue: #2563eb;--hb7-accent-blue-soft: rgba(37, 99, 235, .09);--hb7-accent-green: #16a34a;--hb7-border-soft: #e5e7eb;--hb7-border-strong: #cbd5f5;--hb7-code-bg: #020617;--hb7-code-text: #e5e7eb;--hb7-radius-lg: 18px;--hb7-radius-md: 12px}.hb7-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;color:var(--hb7-text-main);line-height:1.6}.hb7-header{text-align:center;margin-bottom:18px}.hb7-header h2{font-size:1.85rem;margin-bottom:.75rem}.hb7-instruction{display:inline-block;background-color:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:8px 16px;border-radius:999px;font-size:.93rem}.hb7-layout{background:radial-gradient(circle at top left,#eff6ff,#f9fafb);border-radius:var(--hb7-radius-lg);padding:16px}.hb7-tabs{display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:8px;overflow-x:auto;padding:4px}.hb7-tab-btn{flex:1 1 auto;white-space:nowrap;border-radius:999px;border:1px solid transparent;padding:7px 10px;font-size:.8rem;background-color:#ffffffe6;color:var(--hb7-text-muted);cursor:pointer;transition:all .18s ease}.hb7-tab-btn:hover{border-color:var(--hb7-border-soft)}.hb7-tab-btn-active{background-color:var(--hb7-accent-blue);color:#fff;border-color:var(--hb7-accent-blue);box-shadow:0 0 0 1px #2563eb66}.hb7-panels{display:flex;flex-direction:column}.hb7-panel{background-color:var(--hb7-bg-card);border-radius:var(--hb7-radius-md);border:1px solid var(--hb7-border-soft);padding:14px 14px 16px}.hb7-controls-section{margin-bottom:12px}.hb7-controls-title{font-size:.95rem;margin:0 0 4px}.hb7-controls-hint{font-size:.82rem;color:var(--hb7-text-muted);margin:0 0 8px}.hb7-toggle-group{display:flex;flex-wrap:wrap;gap:6px}.hb7-toggle-btn{border-radius:999px;border:1px solid var(--hb7-border-soft);padding:5px 9px;font-size:.78rem;background-color:#fff;color:var(--hb7-text-main);cursor:pointer;transition:all .18s ease}.hb7-toggle-btn:hover{background-color:#f3f4f6}.hb7-toggle-btn-active{background-color:var(--hb7-accent-blue-soft);border-color:var(--hb7-accent-blue);color:#1d4ed8}.hb7-preview-card{border-radius:12px;border:1px solid var(--hb7-border-soft);background-color:var(--hb7-bg-soft);padding:10px 12px 12px}.hb7-preview-header{font-size:.9rem;font-weight:600;margin-bottom:6px;color:#0f172a}.hb7-preview-body{background-color:#fff;border-radius:10px;border:1px solid #e5e7eb;padding:10px 10px 11px;margin-bottom:8px}.hb7-preview-sub{font-size:.8rem;color:var(--hb7-text-muted);margin:4px 0 8px}.hb7-code-explainer{font-size:.83rem}.hb7-code-block{background-color:var(--hb7-code-bg);color:var(--hb7-code-text);border-radius:8px;padding:7px 9px;font-size:.78rem;overflow-x:auto;margin:0 0 6px;font-family:Courier New,Courier,monospace}.hb7-flow-preview{display:flex;flex-direction:column;gap:10px}.hb7-flow-column{display:flex;flex-direction:column;gap:4px}.hb7-flow-label{font-size:.8rem;color:var(--hb7-text-muted)}.hb7-block-line{width:100%}.hb7-block-chip{width:80%;padding:6px 8px;border-radius:8px;background:linear-gradient(90deg,#dbeafe,#bfdbfe);border:1px solid #93c5fd;font-size:.8rem}.hb7-inline-line{display:flex;flex-wrap:wrap;gap:5px}.hb7-inline-chip{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;background-color:#ecfdf3;border:1px solid #bbf7d0;font-size:.78rem}.hb7-div-demo{border-radius:10px;border:1px dashed #c4b5fd;background-color:#f5f3ff;padding:8px 9px 10px;margin-bottom:8px;position:relative}.hb7-div-demo-highlight{box-shadow:0 0 0 2px #818cf8a6}.hb7-div-label{position:absolute;top:-10px;left:10px;background-color:#4f46e5;color:#e0e7ff;padding:1px 6px;border-radius:999px;font-size:.68rem}.hb7-div-title{margin:8px 0 4px;font-size:.95rem}.hb7-div-text{margin:0;font-size:.82rem}.hb7-span-sentence{font-size:.86rem;margin:4px 0 0}.hb7-span-highlight{padding:1px 3px;border-radius:4px;transition:all .18s ease}.hb7-span-highlight-on{background-color:#dbeafe;color:#1d4ed8}.hb7-hr-text{font-size:.86rem;margin:0 0 6px}.hb7-hr{height:2px;background:linear-gradient(90deg,#e5e7eb,#9ca3af);border-radius:999px;margin:6px 0}.hb7-hr-thin{height:1px;background:linear-gradient(90deg,#e5e7eb,#d1d5db)}.hb7-hr-bold{height:4px;background:linear-gradient(90deg,#4b5563,#111827)}.hb7-supsub-preview{display:flex;flex-direction:column;gap:8px}.hb7-supsub-row{display:flex;justify-content:space-between;align-items:center;gap:6px}.hb7-supsub-row-active{background-color:#ecfeff;border-radius:8px;padding:5px 7px;border:1px solid #a5f3fc}.hb7-supsub-label{font-size:.8rem;color:var(--hb7-text-muted)}.hb7-supsub-baseline{font-size:.95rem}.hb7-supsub-baseline sup,.hb7-supsub-baseline sub{font-size:.75em}@media(min-width:768px){.hb7-container{padding:26px 24px 40px}.hb7-header h2{font-size:2rem}.hb7-layout{padding:18px 18px 20px}.hb7-panel{padding:16px 18px 18px}.hb7-flow-preview{flex-direction:row}.hb7-flow-column{flex:1 1 50%}}@media(max-width:767px){.hb7-header h2{font-size:1.6rem}.hb7-layout{padding:14px}}:root{--sm1-bg-main: #f9fafb;--sm1-bg-panel: #ffffff;--sm1-bg-soft: #eff6ff;--sm1-text-main: #111827;--sm1-text-muted: #6b7280;--sm1-accent-blue: #2563eb;--sm1-accent-blue-soft: rgba(37, 99, 235, .1);--sm1-border-soft: #e5e7eb;--sm1-code-bg: #020617;--sm1-code-text: #e5e7eb;--sm1-radius-lg: 18px;--sm1-radius-md: 12px}.sm1-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;padding:20px 8px 32px;color:var(--sm1-text-main);line-height:1.6}.sm1-header{text-align:center;margin-bottom:18px}.sm1-header h2{font-size:1.85rem;margin-bottom:.75rem}.sm1-instruction{display:inline-block;background-color:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:8px 16px;border-radius:999px;font-size:.93rem}.sm1-layout{background:radial-gradient(circle at top left,#eff6ff,#f9fafb);border-radius:var(--sm1-radius-lg);padding:16px;box-shadow:0 18px 40px #0f172a2e;display:flex;flex-direction:column;gap:14px}.sm1-panel{background-color:var(--sm1-bg-panel);border-radius:var(--sm1-radius-md);border:1px solid var(--sm1-border-soft);padding:14px 14px 16px}.sm1-panel-sub{font-size:.82rem;color:var(--sm1-text-muted);margin:0 0 10px}.sm1-page-outline{border-radius:12px;border:1px solid var(--sm1-border-soft);background-color:var(--sm1-bg-soft);padding:8px;display:flex;flex-direction:column;gap:6px}.sm1-region{border-radius:8px;border:1px solid transparent;padding:6px 8px;font-size:.8rem;cursor:pointer;text-align:left;background-color:#fff;transition:all .18s ease;color:#333}.sm1-region-header{background:linear-gradient(90deg,#dbeafe,#bfdbfe)}.sm1-region-nav{background:linear-gradient(90deg,#ccfbf1,#a7f3d0)}.sm1-main-wrapper{border-radius:10px;border:1px dashed #cbd5f5;background-color:#eff6ff;padding:6px;display:flex;flex-direction:column;gap:4px}.sm1-region-main{background-color:#e0f2fe}.sm1-main-grid{display:grid;grid-template-columns:1.2fr 1.2fr .9fr;gap:6px}.sm1-region-section{background-color:#fef3c7}.sm1-region-article{background-color:#fce7f3}.sm1-region-aside{background-color:#e0f2fe}.sm1-region-footer{background:linear-gradient(90deg,#e5e7eb,#d1d5db)}.sm1-region:hover{filter:brightness(.97)}.sm1-region-active{box-shadow:0 0 0 2px #2563eb99}.sm1-small-note{font-size:.8rem;color:var(--sm1-text-muted);margin-top:8px}.sm1-tag-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.sm1-tag-btn{border-radius:999px;border:1px solid var(--sm1-border-soft);padding:4px 9px;font-size:.78rem;background-color:#fff;color:var(--sm1-text-main);cursor:pointer;transition:all .18s ease}.sm1-tag-btn-active{background-color:var(--sm1-accent-blue);border-color:var(--sm1-accent-blue);color:#fff}.sm1-details-card{border-radius:12px;border:1px solid var(--sm1-border-soft);background-color:#f9fafb;padding:10px 12px 12px}.sm1-details-title{font-size:.96rem;margin:0 0 4px}.sm1-details-list{margin:0 0 6px;padding-left:18px;font-size:.84rem}.sm1-code-block{background-color:var(--sm1-code-bg);color:var(--sm1-code-text);border-radius:8px;padding:7px 9px;font-size:.78rem;overflow-x:auto;margin:6px 0 8px;font-family:Courier New,Courier,monospace}.sm1-hint-box{margin-top:4px;padding:6px 8px;border-radius:8px;border:1px dashed var(--sm1-border-soft);background-color:#fff;font-size:.8rem}.sm1-hint-title{margin:0 0 2px;font-weight:600;font-size:.8rem}.sm1-hint-list{margin:0;padding-left:18px}@media(min-width:768px){.sm1-container{padding:26px 24px 40px}.sm1-header h2{font-size:2rem}.sm1-layout{flex-direction:row}.sm1-panel-left{flex:1 1 48%}.sm1-panel-right{flex:1 1 52%}}@media(max-width:767px){.sm1-header h2{font-size:1.6rem}.sm1-layout{padding:14px}.sm1-main-grid{grid-template-columns:1fr}}:root{--he1-bg-panel: #ffffff;--he1-bg-soft: #eff6ff;--he1-text-main: #111827;--he1-text-muted: #6b7280;--he1-accent-blue: #2563eb;--he1-accent-blue-soft: rgba(37, 99, 235, .12);--he1-border-soft: #e5e7eb;--he1-code-bg: #020617;--he1-code-text: #e5e7eb;--he1-radius-lg: 18px;--he1-radius-md: 12px}.he1-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;padding:20px 8px 32px;color:var(--he1-text-main);line-height:1.6}.he1-header{text-align:center;margin-bottom:16px}.he1-header h2{font-size:1.8rem;margin-bottom:.7rem}.he1-instruction{display:inline-block;background-color:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:6px 14px;border-radius:999px;font-size:.9rem}.he1-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.he1-tab{border-radius:999px;border:1px solid var(--he1-border-soft);background-color:#fff;padding:6px 10px;font-size:.8rem;cursor:pointer;color:var(--he1-text-main);transition:all .18s ease}.he1-tab-active{background-color:var(--he1-accent-blue);border-color:var(--he1-accent-blue);color:#fff}.he1-panel{background-color:var(--he1-bg-panel);border-radius:var(--he1-radius-lg);border:1px solid var(--he1-border-soft);padding:14px 14px 16px;box-shadow:0 14px 30px #0f172a1f}.he1-panel-sub{font-size:.84rem;color:var(--he1-text-muted);margin:0 0 10px}.he1-box{margin-top:8px;border-radius:10px;border:1px solid var(--he1-border-soft);background-color:var(--he1-bg-soft);padding:8px 10px 10px}.he1-box-label{font-size:.8rem;color:var(--he1-text-muted);margin:4px 0}.he1-code-block{background-color:var(--he1-code-bg);color:var(--he1-code-text);border-radius:8px;padding:6px 9px;font-size:.78rem;overflow-x:auto;margin:0 0 6px;font-family:Courier New,Courier,monospace}.he1-code-inline{display:inline-block}.he1-entity-layout{display:flex;flex-direction:column;gap:10px}.he1-entity-list{border-radius:10px;border:1px solid var(--he1-border-soft);background-color:#f9fafb;padding:6px 6px 8px}.he1-entity-list-header{display:grid;grid-template-columns:.8fr 1.6fr;gap:4px;font-size:.78rem;color:var(--he1-text-muted);padding:2px 4px 4px}.he1-entity-row{display:grid;grid-template-columns:.8fr 1.6fr;gap:4px;align-items:center;width:100%;border-radius:999px;border:1px solid transparent;padding:4px 8px;background-color:#fff;cursor:pointer;font-size:.8rem;margin-bottom:4px;transition:all .18s ease}.he1-entity-row:hover{background-color:#f3f4f6}.he1-entity-row-active{background-color:var(--he1-accent-blue-soft);border-color:var(--he1-accent-blue)}.he1-entity-char{font-weight:600;color:#111827}.he1-entity-code{font-family:Courier New,Courier,monospace;font-size:.78rem;color:#111827}.he1-entity-detail{border-radius:10px;border:1px solid var(--he1-border-soft);background-color:#f9fafb;padding:8px 10px 10px}.he1-detail-title{margin:0 0 4px;font-size:.95rem}.he1-detail-text{margin:0 0 6px;font-size:.84rem}.he1-preview-char{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:32px;padding:4px 10px;border-radius:999px;background-color:#fff;border:1px solid var(--he1-border-soft);font-size:1.1rem}.he1-unicode-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.he1-unicode-card{border-radius:10px;border:1px solid var(--he1-border-soft);background-color:#f9fafb;padding:6px 8px;text-align:center}.he1-unicode-char{font-size:1.4rem;margin-bottom:2px}.he1-unicode-code{font-family:Courier New,Courier,monospace;font-size:.8rem}.he1-unicode-desc{font-size:.78rem;color:var(--he1-text-muted);margin-top:2px}.he1-unicode-output{font-size:.9rem;margin:4px 0 0}.he1-emmet-layout{display:flex;flex-direction:column;gap:10px}.he1-emmet-list{border-radius:10px;border:1px solid var(--he1-border-soft);background-color:#f9fafb;padding:6px 6px 8px}.he1-emmet-row{width:100%;border-radius:8px;border:1px solid transparent;padding:4px 8px;background-color:#fff;cursor:pointer;display:flex;align-items:center;gap:6px;margin-bottom:4px;transition:all .18s ease;font-size:.8rem}.he1-emmet-row:hover{background-color:#f3f4f6}.he1-emmet-row-active{background-color:var(--he1-accent-blue-soft);border-color:var(--he1-accent-blue)}.he1-emmet-abbr{font-family:Courier New,Courier,monospace;background-color:#0f172a;color:#e5e7eb;padding:2px 5px;border-radius:6px;font-size:.76rem}.he1-emmet-title{flex:1;color:#111827}.he1-emmet-detail{border-radius:10px;border:1px solid var(--he1-border-soft);background-color:#f9fafb;padding:8px 10px 10px}.he1-tip{font-size:.8rem;color:var(--he1-text-muted);margin-top:6px}@media(min-width:768px){.he1-container{padding:26px 24px 40px}.he1-header h2{font-size:2rem}.he1-entity-layout,.he1-emmet-layout{flex-direction:row}.he1-entity-list,.he1-emmet-list{flex:0 0 45%}.he1-entity-detail,.he1-emmet-detail{flex:1}}@media(max-width:767px){.he1-layout{padding:14px}}:root{--ht2-bg-panel: #ffffff;--ht2-bg-soft: #eff6ff;--ht2-text-main: #111827;--ht2-text-muted: #6b7280;--ht2-accent-blue: #2563eb;--ht2-accent-blue-soft: rgba(37, 99, 235, .12);--ht2-border-soft: #e5e7eb;--ht2-code-bg: #020617;--ht2-code-text: #e5e7eb}.ht2-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;color:var(--ht2-text-main);line-height:1.6}.ht2-header{text-align:center;margin-bottom:16px}.ht2-header h2{font-size:1.8rem;margin-bottom:.7rem}.ht2-instruction{display:inline-block;background-color:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:6px 14px;border-radius:999px;font-size:.9rem}.ht2-layout{display:flex;flex-direction:column;gap:12px}.ht2-panel{background-color:var(--ht2-bg-panel);border-radius:14px;border:1px solid var(--ht2-border-soft);padding:12px 14px 14px;box-shadow:0 12px 26px #0f172a1a}.ht2-panel-sub{font-size:.85rem;color:var(--ht2-text-muted);margin:0 0 8px}.ht2-controls-row{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.ht2-controls-label{font-size:.8rem;color:var(--ht2-text-muted);margin-right:4px}.ht2-highlight-group{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.ht2-chip{border-radius:999px;border:1px solid var(--ht2-border-soft);padding:3px 8px;font-size:.78rem;background-color:#fff;color:var(--ht2-text-main);cursor:pointer;transition:all .18s ease}.ht2-chip-active{background-color:var(--ht2-accent-blue-soft);border-color:var(--ht2-accent-blue);color:#1d4ed8}.ht2-toggle-extra{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--ht2-text-main)}.ht2-toggle-extra input{accent-color:var(--ht2-accent-blue)}.ht2-table-shell{border-radius:10px;border:1px solid var(--ht2-border-soft);overflow:hidden;background-color:#f9fafb;font-size:.85rem}.ht2-caption{padding:6px 8px;text-align:center;font-weight:600;background-color:#eef2ff}.ht2-row{display:grid;grid-template-columns:1.2fr .8fr}.ht2-header-row{background-color:#e5e7eb}.ht2-data-row:nth-child(odd){background-color:#fff}.ht2-data-row:nth-child(2n){background-color:#f9fafb}.ht2-cell{padding:6px 8px;border-top:1px solid var(--ht2-border-soft);border-right:1px solid var(--ht2-border-soft)}.ht2-cell:last-child{border-right:none}.ht2-cell-header{font-weight:600;text-align:center}.ht2-highlight-outline{box-shadow:0 0 0 2px #2563ebb3}.ht2-highlight-fill{background-color:var(--ht2-accent-blue-soft)!important}.ht2-highlight-row{background-color:#dbeafed9!important}.ht2-note{font-size:.8rem;color:var(--ht2-text-muted);margin-top:8px}.ht2-info-card{border-radius:10px;border:1px solid var(--ht2-border-soft);background-color:#f9fafb;padding:8px 10px 10px}.ht2-info-title{font-size:.96rem;margin:0 0 4px}.ht2-info-text{font-size:.84rem;margin:0 0 6px}.ht2-code-box{margin-top:4px}.ht2-code-label{font-size:.8rem;color:var(--ht2-text-muted);margin:0 0 4px}.ht2-code-block{background-color:var(--ht2-code-bg);color:var(--ht2-code-text);border-radius:8px;padding:6px 9px;font-size:.78rem;overflow-x:auto;margin:0 0 6px;font-family:Courier New,Courier,monospace}.ht2-hints{margin:0;padding-left:18px;font-size:.8rem}@media(min-width:768px){.ht2-layout{flex-direction:row}.ht2-panel-left,.ht2-panel-right{flex:1 1 50%}}:root{--ts1-bg-panel: #ffffff;--ts1-bg-soft: #eff6ff;--ts1-text-main: #111827;--ts1-text-muted: #6b7280;--ts1-accent-blue: #2563eb;--ts1-accent-blue-soft: rgba(37, 99, 235, .12);--ts1-border-soft: #e5e7eb;--ts1-code-bg: #020617;--ts1-code-text: #e5e7eb}.ts1-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;color:var(--ts1-text-main);line-height:1.6}.ts1-header{text-align:center;margin-bottom:16px}.ts1-header h2{font-size:1.8rem;margin-bottom:.7rem}.ts1-instruction{display:inline-block;background-color:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:6px 14px;border-radius:999px;font-size:.9rem}.ts1-layout{display:flex;flex-direction:column;gap:12px}.ts1-panel{background-color:var(--ts1-bg-panel);border-radius:14px;border:1px solid var(--ts1-border-soft);padding:12px 14px 14px;box-shadow:0 10px 22px #0f172a1a}.ts1-panel-sub{font-size:.85rem;color:var(--ts1-text-muted);margin:0 0 8px}.ts1-table-card{border-radius:12px;border:1px solid var(--ts1-border-soft);background-color:#f9fafb;overflow:hidden;font-size:.84rem}.ts1-caption-row{position:relative;padding:6px 8px;text-align:center;font-weight:600;background-color:#eef2ff;border-bottom:1px solid var(--ts1-border-soft)}.ts1-tag-label{position:absolute;left:8px;top:3px;font-size:.7rem;color:var(--ts1-text-muted)}.ts1-band{position:relative;padding:5px 8px 7px;border-bottom:1px solid var(--ts1-border-soft);cursor:pointer}.ts1-band:last-child{border-bottom:none}.ts1-band-thead{background:linear-gradient(90deg,#dbeafe,#bfdbfe)}.ts1-band-tbody{background:linear-gradient(90deg,#ecfdf5,#d1fae5)}.ts1-band-tfoot{background:linear-gradient(90deg,#fef3c7,#fee2e2)}.ts1-band-tag{position:absolute;left:8px;top:3px;font-size:.7rem;color:var(--ts1-text-muted)}.ts1-row{display:grid;grid-template-columns:1.4fr 1fr;margin-top:10px;background-color:#fff;border-radius:6px;overflow:hidden}.ts1-row-header{box-shadow:0 1px #94a3b8b3}.ts1-cell{padding:6px 8px;border-right:1px solid #e5e7eb}.ts1-cell:last-child{border-right:none}.ts1-cell-header{font-weight:600;text-align:center}.ts1-band-active{box-shadow:0 0 0 2px #2563ebb3}.ts1-span-card{margin-top:10px;border-radius:10px;border:1px dashed var(--ts1-border-soft);background-color:#f9fafb;padding:8px 9px 10px;font-size:.82rem}.ts1-span-title{font-weight:600;margin-bottom:6px}.ts1-span-table{border-radius:8px;border:1px solid var(--ts1-border-soft);overflow:hidden}.ts1-span-row{display:grid;grid-template-columns:1.2fr 1fr .7fr}.ts1-span-header-row{background-color:#e5e7eb}.ts1-span-cell{padding:6px 8px;border-right:1px solid var(--ts1-border-soft);border-top:1px solid var(--ts1-border-soft)}.ts1-span-cell:last-child{border-right:none}.ts1-span-cell-header{font-weight:600;text-align:center}.ts1-span-colspan{grid-column:span 2;cursor:pointer}.ts1-span-rowspan{grid-row:span 2;display:flex;align-items:center;cursor:pointer}.ts1-span-active{background-color:var(--ts1-accent-blue-soft);box-shadow:inset 0 0 0 2px var(--ts1-accent-blue)}.ts1-buttons-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.ts1-btn{border-radius:999px;border:1px solid var(--ts1-border-soft);padding:4px 9px;font-size:.78rem;background-color:#fff;color:var(--ts1-text-main);cursor:pointer;transition:all .18s ease}.ts1-btn-active{background-color:var(--ts1-accent-blue);border-color:var(--ts1-accent-blue);color:#fff}.ts1-info-card{border-radius:10px;border:1px solid var(--ts1-border-soft);background-color:#f9fafb;padding:8px 10px 10px}.ts1-info-title{font-size:.96rem;margin:0 0 4px}.ts1-info-text{font-size:.84rem;margin:0 0 6px}.ts1-code-block{background-color:var(--ts1-code-bg);color:var(--ts1-code-text);border-radius:8px;padding:6px 9px;font-size:.78rem;overflow-x:auto;margin:4px 0 6px;font-family:Courier New,Courier,monospace}.ts1-hints{margin:0;padding-left:18px;font-size:.8rem}@media(min-width:900px){.ts1-layout{flex-direction:row}.ts1-panel-left{flex:1 1 55%}.ts1-panel-right{flex:1 1 45%}}@media(max-width:768px){.ts1-header h2{font-size:1.6rem}}:root{--hf1-bg-panel: #ffffff;--hf1-bg-soft: #eff6ff;--hf1-text-main: #111827;--hf1-text-muted: #6b7280;--hf1-accent-blue: #2563eb;--hf1-accent-blue-soft: rgba(37, 99, 235, .12);--hf1-border-soft: #e5e7eb;--hf1-code-bg: #020617;--hf1-code-text: #e5e7eb}.hf1-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;padding:0 0 32px;color:var(--hf1-text-main);line-height:1.6}.hf1-header{text-align:center;margin-bottom:16px}.hf1-header h2{font-size:1.8rem;margin-bottom:.7rem}.hf1-instruction{display:inline-block;background-color:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:6px 14px;border-radius:999px;font-size:.9rem}.hf1-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.hf1-tab{border-radius:999px;border:1px solid var(--hf1-border-soft);background-color:#fff;padding:6px 12px;font-size:.82rem;cursor:pointer;color:var(--hf1-text-main);transition:all .18s ease}.hf1-tab-active{background-color:var(--hf1-accent-blue);border-color:var(--hf1-accent-blue);color:#fff}.hf1-layout{display:flex;flex-direction:column;gap:12px}.hf1-panel{background-color:var(--hf1-bg-panel);border-radius:14px;border:1px solid var(--hf1-border-soft);padding:12px 14px 14px;box-shadow:0 10px 22px #0f172a1a}.hf1-panel-sub{font-size:.85rem;color:var(--hf1-text-muted);margin:0 0 8px}.hf1-form-card{border-radius:12px;border:1px solid var(--hf1-border-soft);background-color:#f9fafb;padding:10px 12px 12px;font-size:.9rem}.hf1-form-tag{font-family:Courier New,Courier,monospace;font-size:.78rem;color:var(--hf1-text-muted);margin-bottom:6px}.hf1-form-tag-close{margin-top:8px}.hf1-field-label{display:flex;flex-direction:column;gap:4px;margin-top:6px;font-size:.85rem}.hf1-input{border-radius:8px;border:1px solid var(--hf1-border-soft);padding:6px 8px;font-size:.86rem;outline:none;background-color:#fff;color:#111827}.hf1-input:focus{border-color:var(--hf1-accent-blue);box-shadow:0 0 0 1px var(--hf1-accent-blue-soft)}.hf1-input-color{padding:0;height:32px}.hf1-input-range{width:100%}.hf1-highlight{outline-offset:2px}.hf1-highlight-soft{background-color:#f3f4ff}.hf1-highlight-name{box-shadow:inset 0 0 0 2px #f97316}.hf1-hint-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.hf1-chip{border-radius:999px;border:1px solid var(--hf1-border-soft);padding:3px 8px;font-size:.78rem;background-color:#fff;color:var(--hf1-text-main);cursor:pointer}.hf1-chip-active{background-color:var(--hf1-accent-blue-soft);border-color:var(--hf1-accent-blue)}.hf1-button{margin-top:10px;border-radius:999px;border:none;padding:6px 14px;font-size:.86rem;background-color:var(--hf1-accent-blue);color:#fff;cursor:pointer}.hf1-types-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.hf1-type-item{border-radius:10px;border:1px solid var(--hf1-border-soft);background-color:#f9fafb;padding:6px 8px 8px}.hf1-type-label{font-size:.82rem;font-weight:600}.hf1-inline-label{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;margin-right:8px}.hf1-mini-code{display:block;margin-top:4px;font-size:.74rem;color:var(--hf1-text-muted)}.hf1-url-box{margin-top:10px;border-radius:8px;border:1px dashed var(--hf1-border-soft);background-color:#fff;padding:6px 8px}.hf1-url-label{font-size:.8rem;color:var(--hf1-text-muted);margin-bottom:2px}.hf1-url-value{font-size:.78rem;font-family:Courier New,Courier,monospace;word-break:break-all}.hf1-explain-title{font-size:.96rem;margin:0 0 4px}.hf1-explain-text{font-size:.84rem;margin:0 0 6px}.hf1-code-block{background-color:var(--hf1-code-bg);color:var(--hf1-code-text);border-radius:8px;padding:6px 9px;font-size:.78rem;overflow-x:auto;margin:4px 0 6px;font-family:Courier New,Courier,monospace}.hf1-hints{margin:0;padding-left:18px;font-size:.8rem}@media(min-width:900px){.hf1-layout{flex-direction:row}.hf1-panel-left{flex:1 1 55%}.hf1-panel-right{flex:1 1 45%}}@media(max-width:768px){.hf1-layout{flex-direction:row}.hf1-header h2{font-size:1.6rem}}@media(max-width:600px){.hf1-layout{flex-direction:column}.hf1-panel{padding:10px 10px 12px;box-shadow:none}.hf1-form-card{padding:8px 10px 10px}.hf1-input,.hf1-button{width:90%}.hf1-tabs{overflow-x:auto;padding-bottom:2px}.hf1-tab{white-space:nowrap}.hf1-types-grid{grid-template-columns:1fr}}:root{--cssv-bg: #ffffff;--cssv-text: #111827;--cssv-muted: #6b7280;--cssv-border: #e5e7eb;--cssv-accent: #2563eb;--cssv-accent-soft: rgba(37, 99, 235, .12);--cssv-code-bg: #020617;--cssv-code-text: #e5e7eb}.cssv-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;color:var(--cssv-text);line-height:1.6}.cssv-header{text-align:center;margin-bottom:16px}.cssv-header h2{font-size:1.8rem;margin-bottom:.4rem}.cssv-tagline{display:inline-block;padding:4px 12px;border-radius:999px;border:1px solid #bfdbfe;background-color:#eff6ff;color:#1d4ed8;font-size:.9rem}.cssv-layout{display:flex;flex-direction:column;gap:12px}.cssv-panel{background:var(--cssv-bg);border-radius:14px;border:1px solid var(--cssv-border);padding:12px 14px 14px;box-shadow:0 8px 18px #0f172a14}.cssv-right{height:0%}.cssv-panel-sub{font-size:.85rem;color:var(--cssv-muted);margin:4px 0 8px}.cssv-mode-buttons{display:flex;flex-wrap:wrap;gap:6px;padding:2px}.cssv-mode-btn{border-radius:999px;border:1px solid var(--cssv-border);background:#fff;padding:4px 10px;font-size:.8rem;cursor:pointer;transition:all .16s ease;color:#111827}.cssv-mode-btn-active{background:var(--cssv-accent);border-color:var(--cssv-accent);color:#fff}.cssv-preview{margin-top:10px;border-radius:10px;border:1px solid var(--cssv-border);padding:16px 14px;background-color:#f9fafb}.cssv-preview-none .cssv-heading,.cssv-preview-none .cssv-paragraph{all:unset;display:block;font-family:inherit;color:var(--cssv-text)}.cssv-preview-inline .cssv-heading,.cssv-preview-internal .cssv-heading,.cssv-preview-external .cssv-heading{color:red;font-size:2rem;margin-bottom:.4rem}.cssv-preview-inline .cssv-paragraph,.cssv-preview-internal .cssv-paragraph,.cssv-preview-external .cssv-paragraph{color:#374151;font-size:.95rem}.cssv-rule-card{margin-top:12px;border-radius:10px;border:1px dashed var(--cssv-border);background-color:#f9fafb;padding:8px 10px 10px}.cssv-rule-title{font-size:.86rem;font-weight:600;margin-bottom:4px}.cssv-rule-code{background-color:#0b1120;color:#e5e7eb;border-radius:8px;padding:6px 8px;font-size:.8rem;font-family:Courier New,Courier,monospace}.cssv-selector{color:#38bdf8}.cssv-property{color:#a5b4fc}.cssv-value{color:#f97316}.cssv-rule-explain{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px}.cssv-pill{font-size:.7rem;padding:2px 8px;border-radius:999px;border:1px solid var(--cssv-border)}.cssv-pill-selector{background-color:#77d6ff}.cssv-pill-property{background-color:#a5b4fc}.cssv-pill-value{background-color:#ffb986}.cssv-info-title{font-size:.98rem;margin:0 0 4px}.cssv-info-text{font-size:.84rem;margin:0 0 6px}.cssv-code-block{background-color:var(--cssv-code-bg);color:var(--cssv-code-text);border-radius:8px;padding:6px 9px;font-size:.78rem;overflow-x:auto;margin:4px 0 6px;font-family:Courier New,Courier,monospace}.cssv-hints{margin:0;padding-left:18px;font-size:.8rem}@media(min-width:900px){.cssv-layout{flex-direction:row}.cssv-left{flex:1 1 55%}.cssv-right{flex:1 1 45%}}@media(max-width:768px){.cssv-header h2{font-size:1.6rem}}@media(max-width:600px){.cssv-panel{padding:10px 10px 12px;box-shadow:none}.cssv-preview{padding:12px 10px}.cssv-mode-buttons{overflow-x:auto}.cssv-mode-btn{white-space:nowrap}}:root{--ccl-bg: #ffffff;--ccl-text: #111827;--ccl-muted: #6b7280;--ccl-border: #e5e7eb;--ccl-accent: #2563eb;--ccl-accent-soft: rgba(37, 99, 235, .12);--ccl-code-bg: #020617;--ccl-code-text: #e5e7eb}.ccl-container{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:0 auto;color:var(--ccl-text);line-height:1.6}.ccl-header{text-align:center;margin-bottom:16px}.ccl-header h2{font-size:1.8rem;margin-bottom:.4rem}.ccl-tagline{display:inline-block;padding:4px 12px;border-radius:999px;border:1px solid #bfdbfe;background-color:#eff6ff;color:#1d4ed8;font-size:.9rem}.ccl-layout{display:flex;flex-direction:column;gap:12px}.ccl-panel{background:var(--ccl-bg);border-radius:14px;border:1px solid var(--ccl-border);padding:12px 14px 14px;box-shadow:0 8px 18px #0f172a14}.ccl-mode-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.ccl-mode-btn{border-radius:999px;border:1px solid var(--ccl-border);background:#fff;padding:4px 10px;font-size:.8rem;cursor:pointer;color:#111827}.ccl-mode-btn-active{background:var(--ccl-accent);border-color:var(--ccl-accent);color:#fff}.ccl-toggle{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;margin-bottom:6px}.ccl-section{margin-top:6px}.ccl-label{display:flex;flex-direction:column;gap:4px;font-size:.84rem;margin-bottom:6px}.ccl-inline{flex-direction:row;align-items:center;justify-content:space-between}.ccl-input{border-radius:8px;border:1px solid var(--ccl-border);padding:6px 8px;font-size:.86rem;outline:none}.ccl-input:focus{border-color:var(--ccl-accent);box-shadow:0 0 0 1px var(--ccl-accent-soft)}.ccl-chip-row{display:flex;flex-wrap:wrap;gap:6px}.ccl-chip{border-radius:999px;border:1px solid var(--ccl-border);padding:3px 8px;font-size:.78rem;background-color:#fff;cursor:pointer;color:#111827}.ccl-slider-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;font-size:.8rem}.ccl-slider-row label input[type=range]{width:100%}.ccl-small{font-size:.8rem;color:var(--ccl-muted);margin:4px 0 6px}.ccl-preview{margin-top:10px;border-radius:10px;border:1px solid var(--ccl-border);padding:12px 10px;background-color:#f9fafb}.ccl-preview-title{margin:0 0 4px;font-size:.9rem}.ccl-info-title{font-size:.98rem;margin:0 0 4px}.ccl-info-text{font-size:.84rem;margin:0 0 6px}.ccl-code-block{background-color:var(--ccl-code-bg);color:var(--ccl-code-text);border-radius:8px;padding:6px 9px;font-size:.78rem;overflow-x:auto;margin:4px 0 6px;font-family:Courier New,Courier,monospace}.ccl-hints{margin:0;padding-left:18px;font-size:.8rem}@media(min-width:900px){.ccl-layout{flex-direction:row}.ccl-left{flex:1 1 55%}.ccl-right{flex:1 1 45%}}@media(max-width:768px){.ccl-header h2{font-size:1.6rem}}@media(max-width:600px){.ccl-panel{padding:10px 10px 12px;box-shadow:none}.ccl-mode-buttons{overflow-x:auto}.ccl-mode-btn{white-space:nowrap}.ccl-slider-row{grid-template-columns:1fr}.ccl-input{width:90%}}.ctv-container{font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:20px auto;background-color:#f8f9fa;border-radius:12px;box-shadow:0 4px 20px #0000000d;overflow:hidden;color:#333;border:1px solid #e9ecef}.ctv-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px;text-align:center}.ctv-header h3{margin:0}.ctv-header h2{margin:0 0 10px;font-size:1.8rem}.ctv-header p{margin:0;opacity:.9;font-size:1rem}.ctv-workspace{display:flex;flex-direction:column}.ctv-controls{padding:25px;background-color:#fff;border-bottom:1px solid #e0e0e0}.ctv-control-group{margin-bottom:20px}.ctv-control-group label{display:block;font-weight:600;font-size:.9rem;margin-bottom:8px;color:#495057}.ctv-select,.ctv-number-input{width:100%;padding:10px;border:1px solid #ced4da;border-radius:6px;font-size:1rem;background-color:#fff;transition:border-color .2s;color:#333}.ctv-select:focus,.ctv-number-input:focus{border-color:#764ba2;outline:none}.ctv-input-row{display:flex;gap:10px}.ctv-unit-select{width:80px;padding:10px;border:1px solid #ced4da;border-radius:6px;background-color:#f1f3f5;cursor:pointer;color:#333}.ctv-info-text{font-size:.8rem;color:#868e96;margin-top:5px;margin-bottom:0}.ctv-slider{width:100%;height:6px;background:#dee2e6;border-radius:5px;outline:none;-webkit-appearance:none;cursor:pointer}.ctv-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#764ba2;cursor:pointer;transition:transform .1s}.ctv-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.ctv-slider-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#adb5bd;margin-top:5px}.ctv-btn-group{display:flex;gap:5px;flex-wrap:wrap}.ctv-btn{flex:1;padding:8px 12px;background-color:#f1f3f5;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s;color:#333}.ctv-btn:hover{background-color:#e9ecef}.ctv-btn.active{background-color:#764ba2;color:#fff;border-color:#764ba2}.ctv-double-row{display:flex;gap:20px}.ctv-double-row .ctv-control-group{flex:1}.ctv-preview-panel{padding:25px;background-color:#f8f9fa;display:flex;flex-direction:column;gap:20px}.ctv-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d;border:1px solid #e9ecef;overflow:hidden}.ctv-card-header{background-color:#f1f3f5;padding:10px 15px;font-size:.85rem;font-weight:700;text-transform:uppercase;color:#495057;border-bottom:1px solid #e9ecef}.ctv-preview-box{padding:20px;min-height:150px;color:#333;overflow-wrap:break-word}.ctv-code-block{margin:0;padding:20px;background-color:#212529;color:#d0d0d0;font-family:Consolas,Monaco,monospace;font-size:.9rem;overflow-x:auto}@media(min-width:800px){.ctv-workspace{flex-direction:row}.ctv-controls{width:40%;border-right:1px solid #e0e0e0;border-bottom:none;overflow-y:auto;max-height:800px}.ctv-preview-panel{width:60%}.ctv-card.preview-card{flex:1}}.csv-wrapper{font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:1000px;margin:30px auto;background-color:#fff;border-radius:12px;box-shadow:0 4px 25px #00000014;overflow:hidden;color:#333;border:1px solid #e1e4e8}.csv-header{background-color:#f6f8fa;padding:20px;border-bottom:1px solid #e1e4e8;text-align:center}.csv-header h2{margin:0 0 5px;color:#24292e;font-size:1.6rem}.csv-header p{margin:0;color:#586069;font-size:.95rem}.csv-layout{display:flex;flex-direction:column}.csv-sidebar{background-color:#fafbfc;border-bottom:1px solid #e1e4e8;display:flex;overflow-x:auto;padding:10px;gap:10px}.csv-nav-btn{background:none;border:1px solid #d1d5da;border-radius:6px;padding:8px 12px;font-size:.9rem;white-space:nowrap;cursor:pointer;color:#24292e;transition:all .2s}.csv-nav-btn:hover{background-color:#f3f4f6}.csv-nav-btn.active{background-color:#0366d6;color:#fff;border-color:#0366d6}.csv-display{padding:25px;flex:1;display:flex;flex-direction:column;gap:25px}.csv-explanation h3{margin:0 0 10px;color:#0366d6}.csv-explanation p{margin:0 0 15px;line-height:1.5;color:#444}.csv-code-snippet{background-color:#24292e;color:#e1e4e8;padding:15px;border-radius:6px;font-family:Consolas,monospace;font-size:1rem;border-left:5px solid #ff7b72}.csv-visual-stage{border:2px dashed #d1d5da;border-radius:8px;padding:28px 20px 20px;background-color:#fff;position:relative;min-height:200px;display:flex;justify-content:center;align-items:center}.csv-stage-label{position:absolute;top:5px;left:10px;font-size:.75rem;text-transform:uppercase;color:#959da5;font-weight:700}.csv-preview-container{width:100%;display:flex;flex-direction:column;gap:10px;align-items:center}.csv-mock-el{border:2px solid #e1e4e8;border-radius:6px;padding:10px 20px;background-color:#f6f8fa;color:#586069;font-weight:500;width:80%;transition:all .3s ease;display:flex;align-items:center;gap:10px}.csv-mock-input{border:2px solid #e1e4e8;background-color:#fff;padding:10px;border-radius:4px;width:60%;text-align:center;font-family:monospace;color:#999}.csv-mock-container{border:2px solid #ddd;padding:20px 10px 10px;border-radius:8px;width:90%;position:relative;display:flex;flex-direction:column;gap:10px;align-items:center}.csv-mock-container.nested{width:85%;border-color:#bbb;background-color:#fff}.csv-tag-label{position:absolute;top:-10px;left:10px;background:#fff;padding:0 5px;font-size:.8rem;color:#0366d6;font-weight:700}.csv-tag{font-family:monospace;color:#d73a49;font-size:.9rem}.csv-mock-el.highlighted{border-color:#28a745;background-color:#dcfce7;color:#1a7f37;box-shadow:0 2px 8px #28a74533;transform:scale(1.02)}.csv-mock-input.highlighted{border-color:#0366d6;box-shadow:0 0 0 3px #0366d633;background-color:#f1f8ff;color:#0366d6}@media(min-width:768px){.csv-layout{flex-direction:row;min-height:500px}.csv-sidebar{flex-direction:column;width:250px;border-right:1px solid #e1e4e8;border-bottom:none;overflow-y:auto}.csv-nav-btn{text-align:left;border:none;border-radius:0;border-left:4px solid transparent;background:transparent}.csv-nav-btn:hover{background-color:#f6f8fa}.csv-nav-btn.active{background-color:#f1f8ff;color:#0366d6;border-left-color:#0366d6;border-color:transparent}}.cp-container{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;max-width:900px;margin:20px auto;background-color:#fff;border-radius:12px;box-shadow:0 5px 25px #00000014;overflow:hidden;border:1px solid #e0e0e0;color:#333}.cp-header{background:linear-gradient(135deg,#2c3e50,#4ca1af);color:#fff;padding:25px;text-align:center}.cp-header h2{margin:0 0 10px;font-size:1.8rem}.cp-header p{margin:0;opacity:.9}.cp-tabs{display:flex;background-color:#f1f1f1;border-bottom:1px solid #ddd;overflow-x:auto}.cp-tab-btn{flex:1;padding:15px;border:none;background:none;font-size:1rem;font-weight:600;color:#666;cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent;transition:all .2s}.cp-tab-btn:hover{background-color:#e0e0e0}.cp-tab-btn.active{background-color:#fff;color:#2980b9;border-bottom-color:#2980b9}.cp-content{padding:25px;min-height:400px}.cp-section{margin-bottom:20px}.cp-section h3{border-bottom:2px solid #f0f0f0;padding-bottom:10px;margin-bottom:20px;color:#444}.cp-demo-row{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:30px}.cp-card{flex:1;min-width:250px;background:#f9f9f9;border:1px solid #eee;padding:20px;border-radius:8px;display:flex;flex-direction:column;align-items:center;text-align:center}.cp-card.full-width{width:100%;align-items:flex-start;text-align:left}.cp-desc{font-size:.9rem;color:#666;margin-bottom:15px}.cp-interactive-btn{padding:12px 24px;font-size:1rem;border:none;border-radius:4px;background-color:#3498db;color:#fff;cursor:pointer;transition:transform .1s;margin-bottom:10px}.cp-interactive-btn:hover{background-color:orange}.cp-interactive-btn:active{transform:scale(.95)}.cp-checkbox-label{display:flex;align-items:center;gap:10px;font-size:1.1rem;cursor:pointer;margin-bottom:10px}.cp-checkbox{width:20px;height:20px;accent-color:green}.cp-controls-row{display:flex;gap:10px;margin-bottom:15px}.cp-toggle{padding:6px 12px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer;color:#333}.cp-toggle.active{background-color:#2c3e50;color:#fff;border-color:#2c3e50}.cp-flex-container{display:flex;gap:10px;width:100%}.cp-box{width:50px;height:50px;background-color:#ddd;display:flex;align-items:center;justify-content:center;font-weight:700;border-radius:4px;transition:background .3s}.cp-flex-container.mode-2 .cp-box:nth-of-type(2){background-color:red;color:#fff}.cp-flex-container.mode-2n .cp-box:nth-of-type(2n){background-color:gray;color:#fff}.cp-pseudo-text-demo h1:first-letter{color:green;font-size:2.5em;float:left;margin-right:5px;line-height:1}.cp-pseudo-text-demo p:first-line{color:#e91e63;font-weight:700}.cp-pseudo-text-demo{background:#fff;padding:15px;border:1px dashed #ccc;border-radius:4px}.cp-selection-demo{padding:20px;background-color:#fff;border:1px solid #ccc;font-size:1.1rem}.cp-selection-demo::selection{background-color:#32cd32;color:#fff}.cp-specificity-game{display:flex;flex-wrap:wrap;gap:20px;background:#f4f6f7;padding:20px;border-radius:8px}.cp-game-controls{flex:1;min-width:280px;display:flex;flex-direction:column;gap:10px}.cp-control-item{display:flex;align-items:center;gap:10px;background:#fff;padding:10px;border-radius:6px;border:1px solid #ddd;cursor:pointer}.cp-tag{font-size:.75rem;padding:2px 6px;border-radius:4px;color:#fff;font-weight:700;min-width:60px;text-align:center}.cp-tag.element{background-color:#e74c3c}.cp-tag.class{background-color:#2980b9}.cp-tag.id{background-color:#27ae60}.cp-tag.important{background-color:#9b59b6}.cp-game-output{flex:1;min-width:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border-radius:8px;border:1px solid #ddd;padding:20px}.cp-target-box{width:120px;height:120px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;border-radius:8px;transition:background-color .4s ease;box-shadow:0 4px 10px #0000001a}.cp-winner-label{margin-top:15px;text-align:center;font-size:.9rem;color:#555}.cp-inheritance-demo{background:#fff;padding:20px;border:1px solid #eee}.cp-parent{padding:30px;margin-top:20px;border-radius:8px;transition:all .3s}.cp-child{background-color:#fff;padding:20px;margin-top:10px;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 5px #0000000d}.cp-code-mini{background:#222;color:#ddd;padding:8px;border-radius:4px;font-size:.85rem;font-family:monospace;margin-top:10px}.cp-code-block{background:#222;color:#a6e22e;padding:15px;border-radius:4px;font-family:monospace;font-size:.9rem;margin-top:15px;line-height:1.5}.cp-comment{color:#75715e}@media(max-width:600px){.cp-header h2{font-size:1.5rem}.cp-demo-row{flex-direction:column}.cp-specificity-game{flex-direction:column-reverse}}.cbv-container{font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;max-width:900px;margin:20px auto;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden;color:#333;border:1px solid #e1e4e8}.cbv-header{background:linear-gradient(135deg,#ff6b6b,#ff8e53);color:#fff;padding:8px;text-align:center}.cbv-header h2{margin:0 0 10px;font-size:1.8rem}.cbv-header p{margin:0;opacity:.9}.cbv-tabs{display:flex;background-color:#f8f9fa;border-bottom:1px solid #ddd}.cbv-tab-btn{flex:1;padding:8px;border:none;background:none;font-size:1rem;font-weight:600;color:#666;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s}.cbv-tab-btn:hover{background-color:#eee}.cbv-tab-btn.active{background-color:#fff;color:#ff6b6b;border-bottom-color:#ff6b6b}.cbv-content{padding:12px;min-height:400px}.cbv-split-view{display:flex;gap:30px;flex-wrap:wrap}.cbv-controls-panel{flex:1;min-width:250px;background:#f9f9f9;padding:20px;border-radius:8px;border:1px solid #eee}.cbv-control-group{margin-bottom:20px}.cbv-control-group label{display:block;font-weight:600;margin-bottom:5px;font-size:.9rem}.cbv-slider{width:100%;cursor:pointer}.margin-slider{accent-color:#f1c40f}.border-slider{accent-color:#e74c3c}.padding-slider{accent-color:#2ecc71}.content-slider{accent-color:#3498db}.cbv-total-calc{margin-top:20px;padding:15px;background:#fff;border:1px solid #ddd;border-radius:6px;font-size:.95rem}.cbv-total-calc strong{display:block;color:#555;margin-bottom:5px}.cbv-visual-stage{flex:2;min-width:300px;display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px dashed #ccc;border-radius:8px;padding:20px;overflow:hidden}.cbv-box-wrapper,.cbv-box-border,.cbv-box-padding,.cbv-box-content{display:flex;align-items:center;justify-content:center;border-radius:4px;position:relative;transition:all .2s ease;box-shadow:0 2px 4px #0000000d}.cbv-label{position:absolute;font-size:.7rem;font-weight:700;text-transform:uppercase;color:#0009;pointer-events:none}.margin-label{top:2px;left:2px;color:#b7950b}.border-label{top:2px;right:2px;color:#922b21}.padding-label{bottom:2px;left:2px;color:#1e8449}.content-label{color:#154360;font-size:.8rem}.cbv-display-controls{display:flex;justify-content:center;gap:10px;margin-bottom:20px}.cbv-toggle{padding:8px 16px;border:1px solid #ccc;background:#fff;border-radius:20px;cursor:pointer;font-weight:500;color:#333}.cbv-toggle.active{background-color:#34495e;color:#fff;border-color:#34495e}.cbv-display-explanation{text-align:center;background:#f0f8ff;padding:10px;border-radius:6px;margin-bottom:20px;color:#2c3e50}.cbv-display-demo{border:2px solid #ddd;padding:20px;background:#fff;font-size:1.1rem;line-height:2}.cbv-text-context{color:#aaa}.cbv-display-box{background-color:#ff6b6b;color:#fff;padding:10px;margin:5px;border:2px solid #c0392b;text-align:center;border-radius:4px}.cbv-display-box.block{display:block;width:100%}.cbv-display-box.inline{display:inline;padding:0 5px;border:none}.cbv-display-box.inline-block{display:inline-block;width:100px;height:50px;line-height:50px;padding:0}.cbv-units-grid{display:flex;flex-direction:column;gap:12px}.cbv-unit-controls{display:flex;gap:20px;background:#f4f4f4;padding:8px;border-radius:8px;justify-content:center;flex-wrap:wrap}.cbv-units-demo{display:flex;justify-content:space-around;flex-wrap:wrap;gap:20px}.cbv-unit-card{border:1px solid #ddd;border-radius:8px;padding:8px;min-width:200px;text-align:center;background:#fff}.cbv-unit-box{background:#eee;padding:8px;margin:15px 0;border-radius:4px;border:1px solid #ccc;transition:all .3s ease}.cbv-calc{font-size:.9rem;color:#666;background:#f9f9f9;padding:5px;border-radius:4px}.cbv-hint{font-size:.8rem;color:#777;margin:5px 0 0}@media(max-width:768px){.cbv-split-view{flex-direction:column}.cbv-visual-stage{min-height:250px}.cbv-display-box.block{width:90%}}.cev-container{font-family:Segoe UI,sans-serif;max-width:900px;margin:20px auto;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden;border:1px solid #e0e0e0}.cev-header{background:linear-gradient(135deg,#8e44ad,#3498db);color:#fff;padding:12px;text-align:center}.cev-header h2{margin:0 0 5px}.cev-header p{margin:0;opacity:.9}.cev-tabs{display:flex;background:#f4f4f4;overflow-x:auto}.cev-tab-btn{flex:1;padding:12px;border:none;background:none;cursor:pointer;font-weight:600;color:#555;border-bottom:3px solid transparent;white-space:nowrap}.cev-tab-btn.active{background:#fff;color:#8e44ad;border-bottom-color:#8e44ad}.cev-content{padding:12px;min-height:400px}.cev-split-card{display:flex;gap:20px;flex-wrap:wrap}.cev-card{flex:1;min-width:280px;border:1px solid #eee;padding:20px;border-radius:8px;background:#fafafa;display:flex;flex-direction:column;align-items:center}.cev-box{width:150px;height:100px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;margin:20px 0;box-shadow:0 2px 5px #0000001a;transition:all .2s}.alpha-box{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAHElEQVQYV2NkYGAwYcACGBkY/qOxh44CBiAAAGY0BAO91/5zAAAAAElFTkSuQmCC);position:relative;z-index:1}.alpha-box:before{content:"";position:absolute;inset:0;z-index:-1;background-color:inherit}.cev-controls{width:100%}.cev-controls label{display:block;margin-bottom:5px;font-size:.9rem;font-weight:600}input[type=range]{width:100%;margin-bottom:10px;cursor:pointer}.cev-code{display:block;background:#222;color:#e0e0e0;padding:8px;border-radius:4px;font-family:monospace;font-size:.8rem;margin-top:10px}.cev-transform-layout{display:flex;gap:20px;flex-wrap:wrap}.cev-controls-panel{flex:1;min-width:250px;background:#f9f9f9;padding:20px;border-radius:8px}.cev-control-group{margin-bottom:15px}.cev-visual-stage{flex:2;min-width:300px;height:350px;border:2px dashed #ccc;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.cev-transform-box{width:120px;height:120px;background:linear-gradient(45deg,#ff9a9e,#fad0c4);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;border-radius:10px;box-shadow:0 5px 15px #0003}.cev-code-block{background:#000c;color:#0f0;padding:10px;border-radius:4px;font-family:monospace;font-size:.85rem}.cev-hover-trigger{margin-top:20px;padding:10px;background:#e3f2fd;border-radius:4px}.shadow-demo-box{background:#fff;color:#333}.bg-demo-box{width:100%;height:150px;color:#fff;text-shadow:0 1px 3px black;font-size:1.2rem;border:1px solid #ccc}.cev-btn-group{display:flex;gap:5px;margin-top:10px}.cev-btn-group button{flex:1;padding:8px;border:1px solid #ccc;background:#fff;cursor:pointer;color:#333}.cev-btn-group button.active{background:#3498db;color:#fff;border-color:#3498db}.cev-hint{font-size:.8rem;color:#666;margin-top:5px}.cev-position-layout{display:flex;gap:20px;flex-wrap:wrap}.cev-btn-group.vertical{flex-direction:column}.cev-btn-group.vertical button{text-align:left;padding:10px}.cev-browser-mockup{flex:2;min-width:300px;height:400px;border:1px solid #ccc;border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.cev-browser-header{background:#ddd;padding:8px;display:flex;align-items:center;gap:5px}.dot{width:10px;height:10px;border-radius:50%;display:block}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27c93f}.cev-browser-body{flex:1;background:#fff;overflow-y:auto;padding:20px;position:relative}.cev-doc-flow{display:flex;flex-direction:column;gap:10px}.cev-block{padding:15px;border-radius:4px;font-size:.9rem;font-weight:700;text-align:center}.cev-block.grey{background:#f0f0f0;color:#999;border:1px dashed #ccc}.cev-block.ghost{background:transparent;border:2px dashed #cecece;color:#cecece;height:60px}.cev-position-parent{border:2px solid #3498db;background:#3498db1a;padding:20px;position:relative;border-radius:4px;min-height:150px}.cev-label-light{position:absolute;top:2px;right:5px;font-size:.7rem;color:#3498db;text-transform:uppercase}.cev-target-element{width:100px;height:60px;background:#e74c3c;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.8rem;border-radius:4px;box-shadow:0 4px 10px #0000004d;z-index:10;transition:top .2s,left .2s}.cev-target-element.static{margin:0 auto}.cev-footer-note{margin-top:15px;padding:10px;background:#fff3cd;border-left:4px solid #ffc107;color:#856404;font-size:.9rem}.fadeIn{animation:fadeIn .4s ease-in-out}@media(max-width:600px){.cev-transform-layout,.cev-position-layout{flex-direction:column}.cev-browser-mockup{height:300px}.cev-visual-stage{height:500px!important}}@media(max-width:769px){.cev-visual-stage{height:500px!important}}:root{--fb-bg: #1e1e24;--fb-panel: #2b2b36;--fb-accent: #6c5ce7;--fb-accent-hover: #5649c0;--fb-text: #e0e0e0;--fb-text-muted: #a0a0a0;--fb-border: #444;--item-bg: linear-gradient(135deg, #00b894, #00cec9);--item-selected: linear-gradient(135deg, #fd79a8, #e84393)}.fb-pro-container{font-family:Segoe UI,Inter,sans-serif;max-width:1200px;margin:20px auto;background-color:var(--fb-bg);border-radius:12px;box-shadow:0 10px 40px #0000004d;overflow:hidden;color:var(--fb-text);border:1px solid var(--fb-border)}.fb-pro-header{padding:20px 25px;background-color:var(--fb-panel);border-bottom:1px solid var(--fb-border);display:flex;justify-content:space-between;align-items:center}.fb-pro-header h2{margin:0;font-size:1.4rem;color:#fff}.fb-pro-header p{margin:0;font-size:.85rem;color:var(--fb-text-muted)}.toggle-switch{display:flex;align-items:center;gap:10px;cursor:pointer}.toggle-switch input{display:none}.toggle-slider{width:40px;height:20px;background:#555;border-radius:20px;position:relative;transition:.3s}.toggle-slider:before{content:"";position:absolute;width:16px;height:16px;background:#fff;border-radius:50%;top:2px;left:2px;transition:.3s}.toggle-switch input:checked+.toggle-slider{background:var(--fb-accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.fb-presets-bar{background:#25252e;padding:10px 25px;border-bottom:1px solid var(--fb-border);display:flex;gap:10px;align-items:center;overflow-x:auto}.fb-presets-bar button{background:#ffffff0d;border:1px solid var(--fb-border);color:var(--fb-text);padding:5px 12px;border-radius:20px;font-size:.8rem;cursor:pointer;white-space:nowrap;transition:all .2s}.fb-presets-bar button:hover{background:#ffffff1a;border-color:#fff}.reset-btn{margin-left:auto;color:#ff7675!important;border-color:#ff7675!important}.fb-pro-workspace{display:flex;height:600px}.fb-pro-controls{width:320px;background:var(--fb-panel);border-right:1px solid var(--fb-border);display:flex;flex-direction:column}.tabs{display:flex;border-bottom:1px solid var(--fb-border)}.tabs button{flex:1;padding:15px;background:none;border:none;color:var(--fb-text-muted);cursor:pointer;font-weight:600;border-bottom:2px solid transparent}.tabs button.active{color:#fff;border-bottom-color:var(--fb-accent);background:#6c5ce70d}.controls-scroll-area{flex:1;overflow-y:auto;padding:20px}.control-group-stack{display:flex;flex-direction:column;gap:20px}.control-card{background:#0003;padding:15px;border-radius:8px;border:1px solid transparent;transition:border .2s}.control-card:hover{border-color:#555}.control-card.highlight{background:#6c5ce71a;border-color:var(--fb-accent)}.control-card h4{margin:0 0 10px;font-size:.85rem;text-transform:uppercase;color:var(--fb-text-muted);letter-spacing:.5px}select,.text-input{width:100%;padding:8px;background:#1a1a1f;color:#fff;border:1px solid #444;border-radius:4px}input[type=range]{width:100%;cursor:pointer}.tiny-desc{font-size:.7rem;color:#777;margin:5px 0 0}.icon-select-group{display:flex;gap:5px;flex-wrap:wrap}.icon-select-group button{flex:1;padding:8px;font-size:.75rem;background:#1a1a1f;border:1px solid #444;color:#bbb;border-radius:4px;cursor:pointer;text-transform:capitalize}.icon-select-group button.selected{background:var(--fb-accent);color:#fff;border-color:var(--fb-accent)}.item-actions{display:flex;gap:10px;margin-top:20px}.item-actions button{flex:1;padding:10px;border-radius:4px;border:none;font-weight:700;cursor:pointer}.add-btn{background:var(--fb-accent);color:#fff}.remove-btn{background:#333;color:#ff7675}.fb-pro-stage{flex:1;background:#121215;display:flex;flex-direction:column;position:relative}.stage-wrapper{flex:1;padding:40px;position:relative;overflow:auto;display:flex}.axis-overlay{position:absolute;top:10px;left:10px;pointer-events:none;opacity:.7}.main-axis-arrow,.cross-axis-arrow{position:absolute;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;text-transform:uppercase;border-radius:20px;white-space:nowrap}.main-axis-arrow{background:var(--fb-accent);color:#fff}.cross-axis-arrow{background:#fd79a8;color:#fff}.axis-overlay.row .main-axis-arrow{width:150px;height:24px;top:0;left:40px}.axis-overlay.row .main-axis-arrow:after{content:"→";margin-left:5px}.axis-overlay.row .cross-axis-arrow{width:24px;height:150px;top:40px;left:0;writing-mode:vertical-rl}.axis-overlay.row .cross-axis-arrow:after{content:"↓";margin-top:5px}.axis-overlay.column .main-axis-arrow{width:24px;height:150px;top:40px;left:0;writing-mode:vertical-rl;background:var(--fb-accent)}.axis-overlay.column .cross-axis-arrow{width:150px;height:24px;top:0;left:40px;background:#fd79a8}.flex-container{display:flex;background:#ffffff08;border:2px dashed #444;border-radius:8px;min-height:100%;min-width:100%;padding:10px;transition:all .3s}.flex-item{width:100px;height:100px;background:var(--item-bg);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;color:#fff;cursor:pointer;transition:all .2s;box-shadow:0 4px 10px #0003;position:relative;-webkit-user-select:none;user-select:none}.flex-item:hover{transform:translateY(-2px);box-shadow:0 8px 15px #0000004d;z-index:2}.flex-item.selected{background:var(--item-selected);border:3px solid white;transform:scale(1.05);z-index:10}.item-label{font-size:1.5rem}.item-details{font-size:.7rem;opacity:.8;margin-top:5px}.code-drawer{background:#000;padding:15px 25px;border-top:1px solid var(--fb-border);font-family:Consolas,monospace;font-size:.9rem;color:#a29bfe}.code-drawer .selector{color:#fd79a8}.code-drawer .val{color:#55efc4}@media(max-width:900px){.fb-pro-workspace{flex-direction:column;height:auto}.fb-pro-controls{width:100%;height:350px;border-right:none;border-bottom:1px solid var(--fb-border)}.stage-wrapper{min-height:400px}.flex-item{width:70px;height:70px}.axis-overlay{display:none}}.cmv-container{font-family:Segoe UI,Inter,sans-serif;max-width:1000px;margin:20px auto;background-color:#fff;border-radius:12px;box-shadow:0 4px 25px #00000014;overflow:hidden;border:1px solid #e1e4e8;color:#333}.cmv-header{background:linear-gradient(135deg,#0984e3,#6c5ce7);color:#fff;padding:25px;text-align:center}.cmv-header h2{margin:0 0 5px;font-size:1.8rem}.cmv-header p{margin:0;opacity:.9}.cmv-tabs{display:flex;background:#f1f2f6;overflow-x:auto;border-bottom:1px solid #dfe6e9}.cmv-tab-btn{flex:1;padding:15px 20px;border:none;background:none;cursor:pointer;font-weight:600;color:#636e72;border-bottom:3px solid transparent;transition:all .2s;white-space:nowrap}.cmv-tab-btn:hover{background:#dfe6e9}.cmv-tab-btn.active{background:#fff;color:#0984e3;border-bottom-color:#0984e3}.cmv-content{padding:25px;min-height:450px}.cmv-section{animation:fadeIn .4s ease-in-out}.cmv-split-layout{display:flex;gap:30px;flex-wrap:wrap}.cmv-controls-panel{flex:1;min-width:280px;background:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #e9ecef}.cmv-stage{flex:2;min-width:300px;background:#fff;border-radius:8px;border:2px dashed #dfe6e9;padding:20px;position:relative;overflow:hidden}.cmv-control-group{margin-bottom:15px}.cmv-control-group label{display:block;margin-bottom:5px;font-weight:600;font-size:.9rem}.cmv-control-group input[type=range],.cmv-control-group select,.cmv-control-group input[type=text]{width:100%;padding:8px;border:1px solid #ced4da;border-radius:4px}.cmv-divider{margin:20px 0;border:0;border-top:1px solid #ddd}.cmv-tag{display:inline-block;padding:5px 10px;border-radius:4px;font-size:.8rem;font-weight:700;margin-bottom:10px}.cmv-tag.selected{background:#dff9fb;color:#130f40;border:1px solid #badc58}.cmv-hint,.cmv-empty-msg{font-size:.85rem;color:#666;margin-top:5px}.cmv-error{color:#d63031;font-weight:700;font-size:.85rem;margin-top:5px}.cmv-grid-inputs{display:grid;grid-template-columns:1fr 1fr;gap:10px;display:inline-table}.cmv-grid-container{width:100%;height:400px;background:#f1f2f6;border:1px solid #ced4da;position:relative}.cmv-grid-overlay{position:absolute;inset:0;display:grid;pointer-events:none}.cmv-cell-guide{border:1px dashed #b2bec3;opacity:.5}.cmv-grid-item{background:#74b9ff;border:2px solid #0984e3;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;cursor:pointer;border-radius:4px;transition:all .2s;-webkit-user-select:none;user-select:none;z-index:2}.cmv-grid-item.selected{background:#fd79a8;border-color:#e84393;transform:scale(.95);box-shadow:0 0 15px #e8439366}.cmv-anim-layout{display:flex;flex-direction:column;gap:20px}.anim-stage{height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center}.cmv-action-btn{width:100%;padding:10px;background:#0984e3;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:700}.cmv-action-btn:hover{background:#00cec9}.cmv-anim-box{width:100px;height:100px;background:#a29bfe;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;border-radius:8px;box-shadow:0 5px 15px #0003}@keyframes grow{0%{transform:scale(1)}to{transform:scale(1.5)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-50px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fade{0%{opacity:.2}50%{opacity:1}to{opacity:.2}}.cmv-anim-box.grow{animation-name:grow}.cmv-anim-box.bounce{animation-name:bounce}.cmv-anim-box.spin{animation-name:spin}.cmv-anim-box.fade{animation-name:fade}.cmv-code-block{background:#2d3436;color:#55efc4;padding:15px;border-radius:6px;font-family:monospace;font-size:.9rem;margin-top:30px;width:90%}.cmv-media-demo{text-align:center}.cmv-slider-wrapper{margin-bottom:20px;padding:20px;background:#f8f9fa;border-radius:8px}.cmv-width-slider{width:100%;cursor:col-resize}.cmv-breakpoints{display:flex;justify-content:space-between;margin-top:5px;font-size:.8rem;color:#636e72;cursor:pointer}.cmv-breakpoints span:hover{color:#0984e3;text-decoration:underline}.cmv-resizable-viewport{height:400px;margin:0 auto;border:4px solid #2d3436;border-radius:8px;background:#fff;transition:width .3s ease;overflow:hidden;position:relative;box-shadow:0 10px 30px #0003}.cmv-media-content{padding:20px;height:100%;transition:background .3s;color:#333}.cmv-media-content.mobile{background:#ff7675}.cmv-media-content.tablet{background:#ffeaa7}.cmv-media-content.desktop{background:#55efc4}.cmv-responsive-grid{display:flex;gap:10px;margin-top:20px}.cmv-media-content.mobile .cmv-responsive-grid{flex-direction:column}.box{flex:1;background:#ffffff80;padding:20px;border-radius:4px;font-weight:700;text-align:center}.z-index-stage{height:400px;display:flex;align-items:center;justify-content:center}.cmv-card-selector button{display:block;width:100%;padding:10px;text-align:left;background:#fff;border:1px solid #ddd;margin-bottom:5px;cursor:pointer;color:#333}.cmv-card-selector button.active{background:#f0f0f0;font-weight:700}.cmv-layers-container{position:relative;width:200px;height:200px}.cmv-layer-card{width:120px;height:120px;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:.85rem;box-shadow:0 4px 10px #0003;cursor:pointer;transition:all .2s}.cmv-icons-gallery{text-align:center}.cmv-icon-grid{display:flex;gap:20px;justify-content:center;margin:30px 0;flex-wrap:wrap}.cmv-icon-card{background:#f8f9fa;border:1px solid #ddd;padding:20px;border-radius:8px;min-width:150px}.fa-icon{font-size:2rem;display:block;margin-bottom:10px;font-style:normal}.cmv-alert-box{background:#dff9fb;padding:15px;border-radius:4px;color:#130f40}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.cmv-split-layout{flex-direction:column}.cmv-grid-inputs{grid-template-columns:1fr}.cmv-anim-layout{flex-direction:column}}.fl-card{background:linear-gradient(135deg,#1e1e24,#2b2b36);border-radius:12px;padding:30px;color:#fff;display:flex;justify-content:space-between;align-items:center;border:1px solid #444;box-shadow:0 10px 30px #0003;margin:20px 0;overflow:hidden;position:relative}.fl-content{z-index:2;flex:1}.fl-card h3{margin:0 0 10px;font-size:1.5rem;background:linear-gradient(90deg,#6c5ce7,#a29bfe);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.fl-card p{color:#a0a0a0;margin-bottom:20px;max-width:300px}.fl-launch-btn{background-color:#6c5ce7;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:10px;transition:transform .2s,background .2s;box-shadow:0 4px 15px #6c5ce766}.fl-launch-btn:hover{background-color:#5649c0;transform:translateY(-2px)}.fl-hint{display:block;font-size:.75rem;color:#777;margin-top:10px}.fl-preview-graphic{display:flex;gap:10px;opacity:.5;transform:perspective(300px) rotateY(-15deg) rotateX(5deg)}.fl-mini-box{width:40px;height:40px;background:#6c5ce7;border-radius:6px;box-shadow:0 5px 15px #0000004d}.fl-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#000;z-index:9999;display:flex;flex-direction:column;animation:fadeIn .3s ease-out}.fl-modal-content{width:100%;height:100%;overflow-y:auto;background:#1e1e24}.fl-close-btn{position:absolute;top:15px;right:20px;z-index:10001;background:#ff4757e6;color:#fff;border:none;padding:8px 16px;border-radius:20px;font-weight:700;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 4px 10px #0000004d}.fl-rotate-warning{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000d9;z-index:10000;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#fff;padding:40px}.fl-rotate-icon{font-size:3rem;margin-bottom:20px;animation:rotatePhone 2s infinite ease-in-out}.blurred{filter:blur(8px);pointer-events:none}@keyframes rotatePhone{0%{transform:rotate(0)}25%{transform:rotate(-90deg)}75%{transform:rotate(-90deg)}to{transform:rotate(0)}}@media(max-width:600px){.fl-card{flex-direction:column;text-align:center}.fl-preview-graphic{margin-top:20px}.fl-launch-btn{width:100%;justify-content:center}}.sqlv-container{max-width:50%;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:#111827;box-sizing:border-box}.sqlv-header{padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid #e5e7eb}.sqlv-header h2{font-size:20px;font-weight:600;color:#111827;margin:0 0 6px}.sqlv-tagline{font-size:14px;color:#6b7280;margin:0;line-height:1.5}.sqlv-layout{display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:start}@media(max-width:680px){.sqlv-layout{grid-template-columns:1fr}}.sqlv-panel{display:flex;flex-direction:column;gap:0}.sqlv-mode-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.sqlv-mode-btn{padding:6px 14px;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:12.5px;font-weight:500;font-family:SFMono-Regular,Consolas,Courier New,monospace;color:#374151;cursor:pointer;transition:border-color .15s,background .15s}.sqlv-mode-btn:hover{border-color:#9ca3af;background:#f9fafb}.sqlv-mode-btn-active{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.sqlv-panel-sub{font-size:12px;color:#9ca3af;margin:0 0 12px;line-height:1.5}.sqlv-preview{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff;margin-bottom:16px}.sqlv-preview-select{border-color:#93c5fd}.sqlv-preview-where{border-color:#3b82f6}.sqlv-preview-orderby{border-color:#8b5cf6}.sqlv-preview-join{border-color:#10b981}.sqlv-preview-groupby{border-color:#f59e0b}.sqlv-table{width:100%;border-collapse:collapse;font-size:12.5px}.sqlv-table-sm{font-size:12px}.sqlv-th{text-align:left;padding:7px 10px;font-size:11px;font-weight:600;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.sqlv-th-sort{color:#7c3aed}.sqlv-th-center{text-align:center}.sqlv-td{padding:7px 10px;border-bottom:1px solid #f3f4f6;color:#374151;white-space:nowrap}.sqlv-tr:last-child .sqlv-td{border-bottom:none}.sqlv-td-muted{color:#9ca3af;font-size:12px}.sqlv-td-price{font-weight:600;font-variant-numeric:tabular-nums;color:#111827}.sqlv-td-strong{font-weight:700;color:#7c3aed}.sqlv-td-center{text-align:center}.sqlv-tr-match{background-color:#f0fdf4}.sqlv-tr-match .sqlv-td{border-bottom-color:#dcfce7}.sqlv-tr-dim{opacity:.3}.sqlv-tr-top{background-color:#faf5ff}.sqlv-tr-top .sqlv-td{border-bottom-color:#ede9fe}.sqlv-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}.sqlv-badge-electronics{background:#eff6ff;color:#1d4ed8}.sqlv-badge-furniture{background:#fffbeb;color:#b45309}.sqlv-badge-accessories{background:#f0fdf4;color:#15803d}.sqlv-join-sources{display:flex;gap:6px;align-items:flex-start;padding:10px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.sqlv-join-side{flex:1;min-width:0}.sqlv-join-label{font-size:10px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.sqlv-join-connector{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:28px;min-width:46px}.sqlv-join-connector-line{width:34px;height:1.5px;background:#d1d5db;position:relative}.sqlv-join-connector-line:after{content:"→";position:absolute;right:-10px;top:-8px;font-size:12px;color:#9ca3af}.sqlv-join-connector-text{font-size:9px;color:#9ca3af;margin-top:5px;white-space:nowrap;font-family:SFMono-Regular,Consolas,monospace;text-align:center}.sqlv-join-result-header{font-size:11px;font-weight:600;color:#374151;padding:8px 10px 4px;background:#fff}.sqlv-excluded{color:#ef4444;font-weight:400;font-style:italic}.sqlv-bar-track{background:#f3f4f6;border-radius:3px;height:10px;overflow:hidden;min-width:50px}.sqlv-bar-fill{height:100%;border-radius:3px;transition:width .4s ease}.sqlv-bar-electronics{background:#3b82f6}.sqlv-bar-furniture{background:#f59e0b}.sqlv-bar-accessories{background:#10b981}.sqlv-group-note{font-size:11.5px;color:#6b7280;padding:8px 10px;background:#f9fafb;border-top:1px solid #f3f4f6}.sqlv-group-note strong{color:#374151;font-family:SFMono-Regular,Consolas,monospace}.sqlv-info-title{font-size:14px;font-weight:600;color:#111827;margin:0 0 6px}.sqlv-info-text{font-size:13px;color:#4b5563;line-height:1.65;margin:0 0 12px}.sqlv-code-block{background:#1e1e2e;border:1px solid #313244;border-radius:8px;padding:12px 16px;overflow-x:auto;margin:0 0 14px}.sqlv-code-block code{font-family:SFMono-Regular,Consolas,Courier New,monospace;font-size:13px;color:#cdd6f4;line-height:1.75;white-space:pre}.sqlv-hints{padding-left:18px;margin:0}.sqlv-hints li{font-size:12.5px;color:#6b7280;margin-bottom:5px;line-height:1.55}.sqlv-hints strong{color:#374151;font-weight:600;font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.sqlv-rule-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px;margin-bottom:12px}.sqlv-rule-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin-bottom:10px}.sqlv-rule-code{background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;padding:12px;margin:0 0 12px;overflow:hidden}.sqlv-rule-code code{font-family:SFMono-Regular,Consolas,monospace;font-size:12.5px;line-height:1.85;display:block}.sqlv-anat-line{display:flex;gap:2px;padding:1px 4px;border-radius:3px;transition:background .2s}.sqlv-anat-line-active{background:#3b82f614}.sqlv-kw-select{color:#3b82f6;font-weight:700;min-width:72px;display:inline-block}.sqlv-kw-from{color:#10b981;font-weight:700;min-width:72px;display:inline-block}.sqlv-kw-where{color:#ef4444;font-weight:700;min-width:72px;display:inline-block}.sqlv-kw-orderby{color:#8b5cf6;font-weight:700;min-width:72px;display:inline-block}.sqlv-kw-join{color:#10b981;font-weight:700;min-width:72px;display:inline-block}.sqlv-kw-groupby{color:#f59e0b;font-weight:700;min-width:72px;display:inline-block}.sqlv-col{color:#374151}.sqlv-table{color:#374151;font-style:italic}.sqlv-val{color:#dc2626}.sqlv-dir{color:#8b5cf6}.sqlv-semi{color:#9ca3af}.sqlv-rule-explain{display:flex;flex-wrap:wrap;gap:5px}.sqlv-pill{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500}.sqlv-pill-select{background:#eff6ff;color:#1d4ed8}.sqlv-pill-from{background:#f0fdf4;color:#15803d}.sqlv-pill-where{background:#fef2f2;color:#b91c1c}.sqlv-pill-orderby{background:#faf5ff;color:#6d28d9}.sqlv-pill-join{background:#f0fdf4;color:#065f46}.sqlv-pill-groupby{background:#fffbeb;color:#b45309}.sqlv-pill-col{background:#f3f4f6;color:#374151}.sqlv-pill-val{background:#fef2f2;color:#dc2626}.sqlv-pill-dir{background:#faf5ff;color:#7c3aed}.sqlv-order-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.sqlv-order-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin-bottom:10px}.sqlv-order-list{list-style:none;padding:0;margin:0;counter-reset:exec-counter;display:flex;flex-direction:column}.sqlv-order-item{display:flex;align-items:center;gap:8px;padding:5px 6px;border-radius:4px;counter-increment:exec-counter;transition:background .15s}.sqlv-order-item:before{content:counter(exec-counter);font-size:10px;font-weight:600;color:#d1d5db;width:14px;text-align:center;flex-shrink:0}.sqlv-order-item-active{background:#eff6ff}.sqlv-order-clause{font-family:SFMono-Regular,Consolas,monospace;font-size:11px;color:#374151;font-weight:500;min-width:76px;flex-shrink:0}.sqlv-order-item-active .sqlv-order-clause{color:#1d4ed8;font-weight:700}.sqlv-order-desc{font-size:11px;color:#9ca3af}:root{--bg-main: #0f1117;--bg-sidebar: #13172b;--bg-card: #1a1f2e;--bg-card-hover: #1e2439;--bg-input: #1e2439;--border: #2d3748;--border-light: #374151;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--text-muted: #64748b;--accent: #6366f1;--accent-dark: #4f46e5;--accent-hover: #818cf8;--green: #22c55e;--green-dark: #16a34a;--orange: #f59e0b;--red: #ef4444;--blue: #3b82f6;--purple: #a855f7}.admin-layout{display:flex;height:100vh;background:var(--bg-main);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}.admin-sidebar{width:220px;min-width:220px;background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;transition:width .2s}.admin-sidebar.collapsed{width:60px;min-width:60px}.sidebar-brand{padding:18px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px}.sidebar-brand-icon{width:32px;height:32px;background:var(--accent);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:#fff;flex-shrink:0}.sidebar-brand-text{overflow:hidden}.sidebar-brand-name{font-weight:700;font-size:15px;color:var(--text-primary);line-height:1.2}.sidebar-brand-sub{font-size:11px;color:var(--text-muted)}.sidebar-nav{flex:1;padding:12px 8px}.sidebar-section-label{font-size:10px;font-weight:600;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;padding:8px 8px 4px;margin-top:8px}.sidebar-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;color:var(--text-secondary);font-size:13px;font-weight:500;transition:all .15s;position:relative;white-space:nowrap;-webkit-user-select:none;user-select:none}.sidebar-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.sidebar-item.active{background:#6366f126;color:var(--accent-hover)}.sidebar-item .icon{width:16px;height:16px;flex-shrink:0}.sidebar-badge{margin-left:auto;background:var(--accent);color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:10px}.sidebar-footer{padding:12px 8px;border-top:1px solid var(--border)}.admin-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.admin-topbar{height:56px;min-height:56px;background:var(--bg-sidebar);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 20px;gap:12px}.topbar-toggle{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center}.topbar-toggle:hover{background:var(--bg-card);color:var(--text-primary)}.search-wrap{flex:1;max-width:360px;position:relative}.topbar-search{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:7px 14px;color:var(--text-primary);font-size:13px;outline:none}.topbar-search::placeholder{color:var(--text-muted)}.search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px #0006;z-index:2000;overflow:hidden;max-height:320px;overflow-y:auto}.search-group{padding:6px 0;border-bottom:1px solid var(--border)}.search-group:last-child{border-bottom:none}.search-group-label{font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--text-muted);padding:6px 14px 4px;text-transform:uppercase}.search-result-item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;transition:background .12s}.search-result-item:hover{background:var(--bg-card-hover)}.search-result-icon{font-size:16px;flex-shrink:0}.search-result-name{flex:1;font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-meta{font-size:11px;color:var(--text-muted);flex-shrink:0}.search-empty{padding:16px 14px;font-size:13px;color:var(--text-muted);text-align:center}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.topbar-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .15s}.topbar-btn:hover{background:var(--accent-dark)}.topbar-btn.outline{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.topbar-btn.outline:hover{border-color:var(--accent);color:var(--accent-hover);background:#6366f114}.admin-content{flex:1;overflow-y:auto;overflow-x:hidden}.admin-breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted);padding:16px 24px 0}.admin-breadcrumb span{color:var(--text-secondary);cursor:pointer;transition:color .15s}.admin-breadcrumb span:hover{color:var(--accent-hover)}.admin-breadcrumb .current{color:var(--text-primary);cursor:default}.view-header{padding:20px 24px 16px;display:flex;align-items:center;justify-content:space-between}.view-title{font-size:22px;font-weight:700;color:var(--text-primary)}.view-subtitle{font-size:13px;color:var(--text-muted);margin-top:2px}.course-grid{padding:0 24px 24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.course-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px;cursor:pointer;transition:all .15s}.course-card:hover{border-color:var(--accent);background:var(--bg-card-hover);transform:translateY(-1px)}.course-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.course-card-title{font-size:16px;font-weight:600;color:var(--text-primary)}.status-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px;text-transform:capitalize}.status-badge.published{background:#22c55e26;color:var(--green);border:1px solid rgba(34,197,94,.3)}.status-badge.draft{background:#f59e0b26;color:var(--orange);border:1px solid rgba(245,158,11,.3)}.course-card-desc{font-size:13px;color:var(--text-secondary);margin-bottom:16px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat-item{background:var(--bg-main);border-radius:8px;padding:10px;text-align:center}.stat-value{font-size:18px;font-weight:700;color:var(--text-primary)}.stat-label{font-size:10px;color:var(--text-muted);margin-top:2px;text-transform:uppercase;letter-spacing:.04em}.cm-layout{display:flex;height:100%;overflow:hidden}.cm-left{width:380px;min-width:380px;border-right:1px solid var(--border);display:flex;flex-direction:column;transition:width .2s,min-width .2s;overflow:hidden}.cm-left-collapsed{width:0!important;min-width:0!important;border-right:none;overflow:hidden}.cm-right{flex:1;overflow:hidden;display:flex;flex-direction:column}.cm-header{padding:20px;border-bottom:1px solid var(--border)}.cm-course-title{font-size:20px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:10px;margin-bottom:6px}.cm-course-desc{font-size:13px;color:var(--text-secondary);line-height:1.5}.cm-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.cm-stat{background:var(--bg-main);border-radius:8px;padding:10px;text-align:center}.cm-stat-value{font-size:20px;font-weight:700;color:var(--accent-hover)}.cm-stat-label{font-size:10px;color:var(--text-muted);margin-top:2px}.cm-tabs{display:flex;gap:0;padding:0 20px;border-bottom:1px solid var(--border);overflow-x:auto}.cm-tab{padding:12px 16px;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:all .15s}.cm-tab:hover{color:var(--text-secondary)}.cm-tab.active{color:var(--accent-hover);border-bottom-color:var(--accent)}.cm-body{flex:1;overflow-y:auto;padding:16px}.cm-part-item{margin-bottom:12px}.cm-part-header{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-card);border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;border:1px solid var(--border);transition:all .15s}.cm-part-header:hover{border-color:var(--accent)}.cm-part-num{width:24px;height:24px;background:var(--accent);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.cm-part-lessons-count{margin-left:auto;font-size:11px;color:var(--text-muted);font-weight:400}.cm-lesson-list{padding-left:36px;margin-top:6px;display:flex;flex-direction:column;gap:4px}.cm-lesson-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--text-secondary);transition:all .15s;border:1px solid transparent}.cm-lesson-item:hover{background:var(--bg-card);color:var(--text-primary)}.cm-lesson-item.selected{background:#6366f11a;border-color:#6366f14d;color:var(--accent-hover)}.cm-lesson-dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.cm-lesson-item.selected .cm-lesson-dot{background:var(--accent)}.cm-assign-panel{padding:16px;border-bottom:1px solid var(--border)}.cm-assign-title{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cm-assign-btn{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:5px 10px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:4px;transition:background .15s}.cm-assign-btn:hover{background:var(--accent-dark)}.cm-assign-list{display:flex;flex-direction:column;gap:8px}.cm-assign-item{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:10px 12px;display:flex;align-items:center;gap:10px}.cm-assign-item-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;background:#6366f126;color:var(--accent-hover);flex-shrink:0}.cm-assign-item-info{flex:1;min-width:0}.cm-assign-item-name{font-size:13px;font-weight:500;color:var(--text-primary)}.cm-assign-item-meta{font-size:11px;color:var(--text-muted)}.cm-assign-item-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;font-size:14px;transition:all .15s}.cm-assign-item-remove:hover{color:var(--red);background:#ef44441a}.le-page{display:flex;flex-direction:column;height:100%;overflow:hidden}.le-header{padding:12px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:12px;background:var(--bg-sidebar)}.le-back-btn{background:none;border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;padding:5px 10px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s}.le-back-btn:hover{border-color:var(--accent);color:var(--accent-hover)}.le-inline-selectors{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}.le-inline-field{display:flex;align-items:center;gap:6px}.le-inline-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.le-inline-select{background:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:12px;padding:4px 8px;outline:none;cursor:pointer;max-width:200px;transition:border-color .15s}.le-inline-select:focus{border-color:var(--accent)}.le-inline-select:disabled{opacity:.4;cursor:not-allowed}.le-inline-sep{color:var(--border-light);font-size:14px;padding:0 2px}.le-breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted);flex:1}.le-breadcrumb .sep{color:var(--border-light)}.le-breadcrumb .active-crumb{color:var(--text-primary);font-weight:500}.le-header-actions{display:flex;gap:8px;align-items:center}.le-btn{border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;cursor:pointer;border:none;display:flex;align-items:center;gap:6px;transition:all .15s}.le-btn.outline{background:transparent;border:1px solid var(--border);color:var(--text-secondary)}.le-btn.outline:hover{border-color:var(--accent);color:var(--accent-hover)}.le-btn.draft{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)}.le-btn.draft:hover{border-color:var(--orange);color:var(--orange)}.le-btn.publish{background:var(--accent);color:#fff}.le-btn.publish:hover{background:var(--accent-dark)}.le-btn.publish.published{background:var(--green)}.le-btn.publish.published:hover{background:var(--green-dark)}.le-btn:disabled{opacity:.5;cursor:not-allowed}.le-meta-row{padding:12px 20px;border-bottom:1px solid var(--border);display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:var(--bg-card)}.le-meta-field{display:flex;flex-direction:column;gap:2px}.le-meta-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.le-meta-select,.le-meta-input{background:var(--bg-input);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-size:13px;padding:5px 10px;outline:none;min-width:120px}.le-meta-select:focus,.le-meta-input:focus{border-color:var(--accent)}.le-ai-row{padding:10px 20px;border-bottom:1px solid var(--border);display:flex;gap:8px;flex-wrap:wrap;background:var(--bg-sidebar)}.le-ai-btn{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);border-radius:8px;padding:6px 12px;font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .15s;white-space:nowrap}.le-ai-btn:hover{border-color:var(--accent);color:var(--accent-hover);background:#6366f114}.le-ai-btn.primary-ai{background:linear-gradient(135deg,#6366f1,#a855f7);border-color:transparent;color:#fff}.le-ai-btn.primary-ai:hover{background:linear-gradient(135deg,#4f46e5,#9333ea)}.le-ai-btn:disabled{opacity:.4;cursor:not-allowed}.le-tabs{display:flex;padding:0 20px;border-bottom:1px solid var(--border);background:var(--bg-sidebar);overflow-x:auto}.le-tab{padding:12px 16px;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;display:flex;align-items:center;gap:6px;transition:all .15s}.le-tab:hover{color:var(--text-secondary)}.le-tab.active{color:var(--accent-hover);border-bottom-color:var(--accent)}.le-tab-count{background:var(--accent);color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:10px}.le-body{flex:1;display:flex;overflow:hidden}.le-editor-area{flex:1;display:flex;flex-direction:column;overflow:hidden}.le-sidebar-panel{width:260px;min-width:260px;border-left:1px solid var(--border);overflow-y:auto;background:var(--bg-sidebar);padding:16px}.le-theory-full{flex:1;display:flex;flex-direction:column;overflow:hidden}.overview-area{display:flex!important;flex-direction:row!important;gap:24px;align-items:flex-start}.le-theory-split{flex:1;display:flex;overflow:hidden}.le-editor-pane{flex:1;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.le-preview-pane{width:45%;min-width:300px;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-card)}.le-preview-header{padding:10px 16px;border-bottom:1px solid var(--border);font-size:12px;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:.06em}.le-preview-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.le-preview-content{flex:1;overflow-y:auto;padding:20px;color:var(--text-primary);font-size:14px;line-height:1.7}.le-preview-content h1,.le-preview-content h2,.le-preview-content h3{color:var(--text-primary);margin:1em 0 .5em}.le-preview-content code{background:#6366f11f;border-radius:4px;padding:2px 5px;font-size:13px;color:var(--accent-hover)}.le-preview-content pre{background:#1e1e2e;border-radius:8px;padding:16px;overflow-x:auto;margin:12px 0;border:1px solid var(--border)}.le-preview-content pre code{background:none;padding:0;color:#d4d4d4;font-size:13px}.le-preview-content p{margin:8px 0;color:var(--text-secondary)}.le-preview-content ul,.le-preview-content ol{padding-left:20px;color:var(--text-secondary)}.le-preview-content blockquote{border-left:3px solid var(--accent);padding-left:12px;margin:12px 0;color:var(--text-muted);font-style:italic}.le-theory-full .ProseMirror,.le-editor-pane .ProseMirror{background:var(--bg-main);color:var(--text-primary);min-height:400px;padding:20px;outline:none;font-size:14px;line-height:1.7}.le-theory-full .ProseMirror p,.le-editor-pane .ProseMirror p{margin:8px 0;color:var(--text-secondary)}.le-theory-full .ProseMirror h1,.le-theory-full .ProseMirror h2,.le-theory-full .ProseMirror h3,.le-editor-pane .ProseMirror h1,.le-editor-pane .ProseMirror h2,.le-editor-pane .ProseMirror h3{color:var(--text-primary)}.le-theory-full .ProseMirror code,.le-editor-pane .ProseMirror code{background:#6366f11f;color:var(--accent-hover);border-radius:4px;padding:2px 5px}.le-theory-full .ProseMirror pre,.le-editor-pane .ProseMirror pre{background:#1e1e2e;border-radius:8px;padding:16px;color:#d4d4d4;border:1px solid var(--border)}.le-theory-full .ProseMirror table,.le-editor-pane .ProseMirror table{border-collapse:collapse;width:100%}.le-theory-full .ProseMirror th,.le-theory-full .ProseMirror td,.le-editor-pane .ProseMirror th,.le-editor-pane .ProseMirror td{border:1px solid var(--border);padding:8px 12px}.le-theory-full .ProseMirror th,.le-editor-pane .ProseMirror th{background:var(--bg-card)}.le-theory-full .visualization-embed,.le-editor-pane .visualization-embed{border:1px dashed var(--accent);border-radius:8px;padding:12px 16px;background:#6366f10d;color:var(--accent-hover);font-size:13px}.le-theory-full .visualization-embed:before,.le-editor-pane .visualization-embed:before{content:"📊 Visualization: " attr(data-type);font-size:12px;font-weight:500}.le-theory-full .editor-menu-bar,.le-editor-pane .editor-menu-bar{display:flex;flex-wrap:wrap;gap:2px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--bg-card)}.le-theory-full .editor-menu-bar button,.le-editor-pane .editor-menu-bar button{background:none;border:none;color:var(--text-secondary);padding:6px 8px;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:4px;transition:all .15s}.le-theory-full .editor-menu-bar button:hover,.le-editor-pane .editor-menu-bar button:hover{background:var(--bg-card-hover);color:var(--text-primary)}.le-theory-full .editor-menu-bar button.is-active,.le-editor-pane .editor-menu-bar button.is-active{background:#6366f133;color:var(--accent-hover)}.le-editor-scroll{flex:1;overflow-y:auto}.quiz-area{flex:1;overflow-y:auto;padding:20px}.quiz-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.quiz-toolbar-title{font-size:15px;font-weight:600;color:var(--text-primary)}.quiz-add-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:background .15s}.quiz-add-btn:hover{background:var(--accent-dark)}.quiz-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:12px;transition:border-color .15s}.quiz-card:hover{border-color:var(--accent)}.quiz-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.quiz-card-num{font-size:12px;font-weight:700;color:var(--accent-hover);background:#6366f11f;padding:3px 8px;border-radius:6px}.quiz-card-remove{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;font-size:16px;transition:all .15s}.quiz-card-remove:hover{color:var(--red);background:#ef44441a}.quiz-question-input{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:10px 12px;color:var(--text-primary);font-size:14px;outline:none;margin-bottom:12px;font-weight:500}.quiz-question-input:focus{border-color:var(--accent)}.quiz-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.quiz-option{display:flex;align-items:center;gap:8px}.quiz-option-letter{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;border:2px solid var(--border);cursor:pointer;flex-shrink:0;transition:all .15s;color:var(--text-muted)}.quiz-option.correct .quiz-option-letter{border-color:var(--green);background:#22c55e26;color:var(--green)}.quiz-option-input{flex:1;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;padding:7px 10px;color:var(--text-primary);font-size:13px;outline:none}.quiz-option.correct .quiz-option-input{border-color:#22c55e66}.quiz-option-input:focus{border-color:var(--accent)}.quiz-explanation{background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:10px 12px;color:var(--text-secondary);font-size:13px;width:100%;outline:none;resize:vertical;min-height:60px}.quiz-explanation:focus{border-color:var(--accent)}.quiz-explanation-label{font-size:11px;font-weight:600;color:var(--text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}.iq-area{flex:1;overflow-y:auto;padding:20px}.iq-level-section{margin-bottom:24px}.iq-level-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.iq-level-badge{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600}.level-dot{width:8px;height:8px;border-radius:50%}.level-dot.beginner{background:var(--green)}.level-dot.intermediate{background:var(--orange)}.level-dot.advanced{background:var(--red)}.iq-level-badge.beginner{color:var(--green)}.iq-level-badge.intermediate{color:var(--orange)}.iq-level-badge.advanced{color:var(--red)}.iq-add-btn{background:none;border:1px solid var(--border);color:var(--text-muted);border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .15s}.iq-add-btn:hover{border-color:var(--accent);color:var(--accent-hover)}.iq-card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px;margin-bottom:8px;position:relative}.iq-card-remove{position:absolute;top:10px;right:10px;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;font-size:14px;transition:all .15s}.iq-card-remove:hover{color:var(--red)}.iq-field-label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.iq-input{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:6px;padding:8px 10px;color:var(--text-primary);font-size:13px;outline:none;resize:vertical;min-height:40px;margin-bottom:10px;font-family:inherit}.iq-input:focus{border-color:var(--accent)}.seo-area{flex:1;overflow-y:auto;padding:20px}.seo-section{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:16px}.seo-section-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:14px}.seo-field{margin-bottom:14px}.seo-label{font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px;display:block}.seo-input,.seo-select{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:9px 12px;color:var(--text-primary);font-size:13px;outline:none}.seo-input:focus,.seo-select:focus{border-color:var(--accent)}.seo-input[readonly]{color:var(--text-muted);cursor:not-allowed}.tags-input-row{display:flex;gap:8px}.tags-input-row input{flex:1}.tag-add-btn{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:6px 12px;font-size:13px;cursor:pointer}.tags-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tag-chip{background:#6366f126;color:var(--accent-hover);border:1px solid rgba(99,102,241,.3);border-radius:20px;padding:3px 10px;font-size:12px;display:flex;align-items:center;gap:5px}.tag-remove{background:none;border:none;color:var(--accent-hover);cursor:pointer;padding:0;font-size:14px;line-height:1;opacity:.7}.tag-remove:hover{opacity:1}.ls-section{margin-bottom:16px}.ls-section-title{font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.ls-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid rgba(45,55,72,.5);font-size:13px}.ls-row:last-child{border-bottom:none}.ls-row-label{color:var(--text-muted)}.ls-row-value{color:var(--text-primary);font-weight:500;font-size:12px;text-align:right;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-score-ring{display:flex;align-items:center;gap:14px;padding:12px;background:var(--bg-card);border-radius:10px;border:1px solid var(--border);margin-bottom:12px}.health-score-circle{width:56px;height:56px;border-radius:50%;background:conic-gradient(var(--accent) var(--score-pct),var(--bg-main) 0);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.health-score-inner{width:42px;height:42px;border-radius:50%;background:var(--bg-card);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--text-primary)}.health-checks{flex:1}.health-check-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);margin-bottom:3px}.hci-icon{font-size:11px}.hci-icon.ok{color:var(--green)}.hci-icon.warn{color:var(--orange)}.hci-icon.fail{color:var(--red)}.checklist-item{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:12px;border-bottom:1px solid rgba(45,55,72,.5)}.checklist-item:last-child{border-bottom:none}.checklist-label{color:var(--text-secondary)}.checklist-status{display:flex;align-items:center;gap:4px;font-weight:500}.checklist-status.ok{color:var(--green)}.checklist-status.warn{color:var(--orange)}.checklist-status.fail{color:var(--red)}.viz-area{flex:1;overflow-y:auto;padding:20px}.viz-embed-item{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:10px;display:flex;align-items:center;gap:12px}.viz-embed-icon{font-size:24px}.viz-embed-info{flex:1}.viz-embed-type{font-size:14px;font-weight:600;color:var(--accent-hover);font-family:monospace}.viz-embed-desc{font-size:12px;color:var(--text-muted);margin-top:2px}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:24px;width:480px;max-width:95vw;max-height:80vh;overflow-y:auto}.modal-title{font-size:18px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.modal-sub{font-size:13px;color:var(--text-muted);margin-bottom:20px}.modal-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;display:block}.modal-input,.modal-select,.modal-textarea{width:100%;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;padding:10px 12px;color:var(--text-primary);font-size:13px;outline:none;margin-bottom:14px;font-family:inherit}.modal-textarea{resize:vertical;min-height:80px}.modal-input:focus,.modal-select:focus,.modal-textarea:focus{border-color:var(--accent)}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.modal-cancel{background:var(--bg-input);border:1px solid var(--border);color:var(--text-secondary);border-radius:8px;padding:8px 16px;font-size:13px;cursor:pointer}.modal-confirm{background:var(--accent);border:none;color:#fff;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;cursor:pointer}.modal-confirm:hover{background:var(--accent-dark)}.assign-list{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto}.assign-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;border:1px solid var(--border);cursor:pointer;transition:all .15s}.assign-list-item:hover{border-color:var(--accent);background:#6366f10d}.assign-list-item.selected{border-color:var(--accent);background:#6366f11a}.assign-list-item-name{font-size:13px;font-weight:500;color:var(--text-primary)}.assign-list-item-meta{font-size:11px;color:var(--text-muted)}.assign-check{margin-left:auto;color:var(--accent);font-size:16px}.dt-grid{padding:0 24px 24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.dt-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:18px;transition:all .15s}.dt-card:hover{border-color:var(--accent);transform:translateY(-1px)}.dt-card-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.dt-icon{font-size:24px}.dt-card-name{font-size:15px;font-weight:600;color:var(--text-primary)}.dt-card-desc{font-size:13px;color:var(--text-secondary);line-height:1.5;margin-bottom:12px}.dt-courses-count{font-size:12px;color:var(--text-muted)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-muted);text-align:center}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state-title{font-size:16px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.empty-state-desc{font-size:13px;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.flex{display:flex}.items-center{align-items:center}.gap-2{gap:8px}.gap-3{gap:12px}.ml-auto{margin-left:auto}.text-muted{color:var(--text-muted)}.font-semibold{font-weight:600}.admin-login-screen{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--bg-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-login-box{width:380px;background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:36px 32px;display:flex;flex-direction:column;gap:16px}.admin-login-brand{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px}.admin-login-icon{width:56px;height:56px;background:linear-gradient(135deg,var(--accent),var(--purple));border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:#fff}.admin-login-title{font-size:22px;font-weight:700;color:var(--text-primary)}.admin-login-sub{font-size:13px;color:var(--text-muted);text-align:center}.admin-login-error{background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#f87171;font-size:13px;border-radius:8px;padding:10px 14px;text-align:center}.dm-layout{display:flex;flex-direction:column;height:100%;gap:0}.dm-gate{display:flex;align-items:center;justify-content:center;height:100%}.dm-gate-box{width:400px;background:var(--bg-card);border:1px solid rgba(239,68,68,.3);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:16px}.dm-gate-icon{font-size:40px;text-align:center}.dm-gate-title{font-size:18px;font-weight:700;color:var(--red);text-align:center}.dm-gate-sub{font-size:13px;color:var(--text-muted);text-align:center;line-height:1.6}.dm-gate-error{background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#f87171;font-size:13px;border-radius:8px;padding:10px 14px;text-align:center}.dm-confirm-btn{padding:10px 16px;background:var(--red);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .15s;width:100%}.dm-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.dm-confirm-btn:hover:not(:disabled){opacity:.85}.dm-section{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:16px}.dm-section-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-sidebar);border-bottom:1px solid var(--border);font-size:13px;font-weight:600;color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;-webkit-user-select:none;user-select:none}.dm-section-header:hover{background:var(--bg-card-hover)}.dm-section-body{padding:8px 0}.dm-item{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid rgba(45,55,72,.5);transition:background .15s}.dm-item:last-child{border-bottom:none}.dm-item:hover{background:var(--bg-card-hover)}.dm-item-icon{font-size:18px;flex-shrink:0}.dm-item-info{flex:1;min-width:0}.dm-item-name{font-size:14px;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-item-meta{font-size:12px;color:var(--text-muted);margin-top:2px}.dm-delete-btn{padding:5px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171;border-radius:6px;font-size:12px;cursor:pointer;transition:all .15s;flex-shrink:0}.dm-delete-btn:hover{background:#ef444433;border-color:#ef444480}.dm-search-wrap{position:relative;display:flex;align-items:center;background:var(--bg-input);border:1px solid var(--border);border-radius:8px;width:300px;transition:border-color .15s}.dm-search-wrap:focus-within{border-color:var(--accent)}.dm-search-icon{padding:0 8px 0 12px;font-size:14px;opacity:.6;pointer-events:none}.dm-search-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-size:13px;padding:8px 4px}.dm-search-input::placeholder{color:var(--text-muted)}.dm-search-input::-webkit-search-cancel-button{display:none}.dm-search-clear{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:0 10px;font-size:12px;line-height:1;transition:color .15s}.dm-search-clear:hover{color:var(--text-primary)}.dm-search-status{font-size:12px;color:var(--text-muted);margin-bottom:14px;padding:0 2px}.dm-content{flex:1;overflow-y:auto;padding:20px}.dm-warning-banner{background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:10px;padding:14px 16px;margin-bottom:20px;display:flex;align-items:center;gap:12px;font-size:13px;color:#f87171}.dm-confirm-dialog{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999}.dm-confirm-box{width:380px;background:var(--bg-card);border:1px solid rgba(239,68,68,.4);border-radius:14px;padding:28px 24px;display:flex;flex-direction:column;gap:14px}.dm-confirm-title{font-size:17px;font-weight:700;color:var(--red)}.dm-confirm-msg{font-size:13px;color:var(--text-secondary);line-height:1.6}.dm-confirm-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.sidebar-danger-label{font-size:10px;font-weight:600;letter-spacing:.1em;color:#ef4444;padding:12px 14px 4px;opacity:.8}.divider{height:1px;background:var(--border);margin:12px 0}.ts-screen{min-height:100vh;background:#fafbff;color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative;overflow-x:hidden}.ts-loading,.ts-error{min-height:100vh;background:#fafbff;color:#0f172a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;text-align:center;padding:24px}.ts-spinner{width:48px;height:48px;border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:ts-spin .8s linear infinite}@keyframes ts-spin{to{transform:rotate(360deg)}}.ts-error-icon{font-size:48px}.ts-error h2{font-size:24px;margin:0;color:#0f172a}.ts-error p{color:#64748b;margin:0 0 12px}.ts-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px 32px;background:#ffffffd9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid #eef0f7}.ts-back{background:#fff;border:1px solid #e5e7eb;color:#475569;padding:8px 16px;border-radius:10px;font-size:13px;cursor:pointer;transition:all .18s;font-weight:500;display:inline-flex;align-items:center;gap:6px}.ts-back-arrow{transition:transform .2s}.ts-back:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a;box-shadow:0 4px 12px -4px #00000014}.ts-back:hover .ts-back-arrow{transform:translate(-3px)}.ts-logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:#0f172a;font-size:18px;font-weight:700}.ts-logo img{height:28px}.ts-header-right{display:flex;align-items:center;gap:12px}.ts-user{display:flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;background:#fff;border:1px solid #e5e7eb;border-radius:100px;font-size:13px;color:#475569;font-weight:500}.ts-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px}.ts-btn-primary{background:linear-gradient(135deg,var(--tc),var(--ta));color:#fff;border:none;padding:11px 22px;border-radius:11px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;letter-spacing:.01em;display:inline-flex;align-items:center;gap:6px;box-shadow:0 4px 14px -4px color-mix(in srgb,var(--tc) 60%,transparent)}.ts-btn-arrow{transition:transform .25s}.ts-btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 28px -8px color-mix(in srgb,var(--tc) 65%,transparent)}.ts-btn-primary:hover .ts-btn-arrow{transform:translate(4px)}.ts-btn-outline{background:#fff;color:#0f172a;border:1px solid #e5e7eb;padding:11px 22px;border-radius:11px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.ts-btn-outline:hover{background:#f8fafc;border-color:var(--tc);color:var(--tc);transform:translateY(-2px);box-shadow:0 6px 18px -6px #00000014}.ts-btn-enroll{background:#ffffff1f;color:#000;border:1.5px solid rgba(58,35,81,.5);border-radius:12px;padding:11px 22px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.ts-btn-enroll:hover:not(:disabled){background:#ffffff38;border-color:#fff;transform:translateY(-2px)}.ts-btn-enroll.enrolled{background:#ffffff38;border-color:#2a2254;color:#000}.ts-btn-enroll.enrolled:hover:not(:disabled){background:#ef44442e;border-color:#fca5a5;color:#fca5a5}.ts-btn-enroll:disabled{opacity:.7;cursor:not-allowed}.ts-btn-lg{padding:14px 28px;font-size:15px}.ts-hero{position:relative;min-height:88vh;padding:0;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at top right,color-mix(in srgb,var(--tc) 18%,transparent),transparent 50%),radial-gradient(ellipse at bottom left,color-mix(in srgb,var(--ta) 14%,transparent),transparent 55%),linear-gradient(180deg,#fafbff,#f1f5ff)}.ts-hero-3d-bg{position:absolute;inset:0;z-index:0;pointer-events:auto;cursor:grab}.ts-hero-3d-bg:active{cursor:grabbing}.ts-hero-3d-bg .ts3d-canvas-wrap,.ts-hero-3d-bg .ts3d-canvas-wrap canvas{width:100%!important;height:100%!important;display:block}.ts-hero-bg{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}.ts-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.18;animation:ts-float 18s ease-in-out infinite}.ts-orb-1{width:520px;height:520px;background:var(--tc);top:-160px;right:-80px}.ts-orb-2{width:400px;height:400px;background:var(--ta);bottom:-120px;left:-60px;animation-delay:6s}@keyframes ts-float{0%,to{transform:translate(0)}50%{transform:translate(40px,-30px)}}.ts-hero-fade{position:absolute;left:0;right:0;bottom:0;height:140px;background:linear-gradient(180deg,transparent,#ffffff);z-index:2;pointer-events:none}.ts-3d-hint{position:absolute;top:90px;right:32px;z-index:3;display:flex;align-items:center;gap:8px;padding:7px 14px;background:#ffffffb3;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.7);border-radius:100px;font-size:11px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.08em;box-shadow:0 8px 24px -10px #0000001a;pointer-events:none;animation:ts-hint-in .6s ease .8s both}.ts-3d-hint-icon{color:var(--tc);font-size:13px;animation:ts-spin 6s linear infinite}@keyframes ts-hint-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.ts-hero-inner{position:relative;z-index:3;max-width:1240px;margin:0 auto;padding:40px 32px 100px;pointer-events:none}.ts-hero-inner>*{pointer-events:auto}.ts-breadcrumb{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#94a3b8;margin-bottom:28px;padding:6px 12px;background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:100px;border:1px solid rgba(255,255,255,.5)}.ts-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.ts-breadcrumb a:hover{color:var(--tc)}.ts-current{color:#0f172a;font-weight:600}.ts-hero-text{max-width:580px;padding:32px;background:#ffffffb8;-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%);border:1px solid rgba(255,255,255,.7);border-radius:24px;box-shadow:0 30px 80px -30px #0f172a26,0 8px 24px -8px #0f172a14;animation:ts-fade-up .6s ease .05s both}@keyframes ts-fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ts-hero-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:color-mix(in srgb,var(--tc) 10%,white);border:1px solid color-mix(in srgb,var(--tc) 25%,transparent);border-radius:100px;font-size:12px;font-weight:600;color:var(--tc);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px}.ts-pulse{width:7px;height:7px;background:var(--tc);border-radius:50%;box-shadow:0 0 0 0 var(--tc);animation:ts-pulse 1.8s ease-in-out infinite}@keyframes ts-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--tc) 60%,transparent)}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}.ts-hero-title{font-size:56px;font-weight:800;margin:0 0 16px;line-height:1.05;letter-spacing:-.025em;color:#0f172a;background:linear-gradient(180deg,#0f172a,#475569);-webkit-background-clip:text;background-clip:text;color:transparent}.ts-hero-tagline{font-size:17px;color:#64748b;margin:0 0 28px;max-width:540px;line-height:1.6}.ts-hero-stats{display:flex;align-items:center;gap:24px;margin-bottom:28px}.ts-stat{display:flex;flex-direction:column}.ts-stat-num{font-size:30px;font-weight:800;color:#0f172a;letter-spacing:-.02em;line-height:1}.ts-stat-label{font-size:11px;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;margin-top:4px;font-weight:600}.ts-stat-sep{width:1px;height:36px;background:#e5e7eb}.ts-hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.ts-hero-progress{display:flex;align-items:center;gap:14px;padding:12px 18px 12px 14px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;width:fit-content;box-shadow:0 4px 16px -8px #0000000a}.ts-hero-progress-label{font-size:13px;font-weight:600;color:#0f172a}.ts-hero-progress-meta{font-size:12px;color:#64748b;margin-top:2px}.ts3d-canvas-wrap{width:100%;height:100%}.ts3d-canvas-wrap canvas{display:block;outline:none}.ts-ring{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ts-ring span{position:absolute;font-size:12px;font-weight:700}.ts-section-inner{max-width:1100px;margin:0 auto}.ts-section-header{text-align:center;margin-bottom:44px}.ts-section-tag{display:inline-block;padding:5px 14px;border:1px solid;border-radius:100px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px}.ts-section-header h2{font-size:36px;font-weight:800;margin:0 0 10px;letter-spacing:-.02em;color:#0f172a}.ts-section-header p{color:#64748b;font-size:15px;margin:0;max-width:560px;margin-inline:auto;line-height:1.6}.ts-grad-text{background:linear-gradient(90deg,var(--tc),var(--ta));-webkit-background-clip:text;background-clip:text;color:transparent}.ts-learn-section{padding:56px 32px 24px;background:linear-gradient(180deg,transparent,#ffffff)}.ts-skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.ts-skill-card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #eef0f7;border-radius:14px;padding:18px 20px;transition:all .25s cubic-bezier(.16,1,.3,1);position:relative;animation:ts-skill-in .6s cubic-bezier(.16,1,.3,1) both}@keyframes ts-skill-in{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ts-skill-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--tc) 30%,transparent);box-shadow:0 12px 32px -12px color-mix(in srgb,var(--tc) 30%,transparent)}.ts-skill-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.ts-skill-label{flex:1;font-size:14px;color:#0f172a;margin:0;font-weight:500;line-height:1.4}.ts-skill-check{font-size:18px;font-weight:800;flex-shrink:0;opacity:0;transform:scale(.7);transition:all .25s}.ts-skill-card:hover .ts-skill-check{opacity:1;transform:scale(1)}.ts-courses-section{padding:56px 32px 64px;background:#fff}.ts-courses-list{display:flex;flex-direction:column;gap:14px}.ts-course-card{display:grid;grid-template-columns:auto auto 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid #eef0f7;border-radius:16px;padding:20px 24px;cursor:pointer;transition:all .28s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden;animation:ts-skill-in .6s cubic-bezier(.16,1,.3,1) both}.ts-course-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--tc) 4%,transparent),transparent);opacity:0;transition:opacity .25s;pointer-events:none}.ts-course-card:hover{border-color:color-mix(in srgb,var(--tc) 35%,transparent);transform:translateY(-3px);box-shadow:0 18px 40px -18px color-mix(in srgb,var(--tc) 35%,transparent),0 4px 12px -4px #0000000a}.ts-course-card:hover:before{opacity:1}.ts-course-card.completed{border-color:#22c55e59;background:linear-gradient(135deg,#22c55e08,#fff)}.ts-course-card.in-progress{border-color:color-mix(in srgb,var(--tc) 25%,transparent)}.ts-course-num{font-size:28px;font-weight:800;color:#cbd5e1;font-feature-settings:"tnum";min-width:48px;text-align:center;letter-spacing:-.02em}.ts-course-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;transition:transform .3s}.ts-course-card:hover .ts-course-icon{transform:scale(1.08) rotate(-4deg)}.ts-course-body{min-width:0}.ts-course-top{display:flex;align-items:center;gap:12px;margin-bottom:4px;flex-wrap:wrap}.ts-course-name{font-size:17px;font-weight:700;margin:0;color:#0f172a}.ts-course-badges{display:flex;gap:6px;flex-wrap:wrap}.ts-badge{font-size:10px;padding:3px 8px;border-radius:100px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;border:1px solid}.ts-badge.published{color:#16a34a;border-color:#22c55e59;background:#22c55e14}.ts-badge.done{color:#16a34a;border-color:#22c55e73;background:#22c55e1f}.ts-badge.progress{color:var(--tc);border-color:color-mix(in srgb,var(--tc) 35%,transparent);background:color-mix(in srgb,var(--tc) 10%,white)}.ts-badge-shared{color:#0369a1;border-color:#0ea5e959;background:#0ea5e914;font-style:normal;cursor:default;white-space:nowrap}.ts-course-desc{font-size:13px;color:#64748b;margin:4px 0 10px;line-height:1.5}.ts-course-meta{display:flex;gap:16px;font-size:12px;color:#94a3b8;font-weight:500}.ts-course-progress-bar{margin-top:12px;height:5px;background:#f1f5f9;border-radius:3px;overflow:hidden}.ts-course-progress-fill{height:100%;border-radius:3px;transition:width .5s ease}.ts-course-action{flex-shrink:0;display:flex;align-items:center;justify-content:center}.ts-arrow{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#94a3b8;border-radius:50%;background:#f8fafc;border:1px solid transparent;transition:all .25s}.ts-course-card:hover .ts-arrow{background:linear-gradient(135deg,var(--tc),var(--ta));color:#fff;transform:translate(4px);box-shadow:0 6px 16px -6px color-mix(in srgb,var(--tc) 55%,transparent)}.ts-empty{text-align:center;padding:80px 24px;color:#94a3b8}.ts-empty-icon{font-size:56px;margin-bottom:16px;opacity:.6}.ts-empty h3{color:#0f172a;margin:0 0 8px;font-size:20px}.ts-empty p{margin:0;font-size:14px}.ts-cta{padding:72px 32px;background:radial-gradient(ellipse at 50% 100%,color-mix(in srgb,var(--tc) 12%,transparent),transparent 60%),linear-gradient(180deg,#fff,#f8fafc);border-top:1px solid #eef0f7;text-align:center}.ts-cta-inner{max-width:600px;margin:0 auto}.ts-cta h2{font-size:36px;font-weight:800;margin:0 0 10px;color:#0f172a;letter-spacing:-.02em}.ts-cta p{color:#64748b;margin:0 0 28px;font-size:16px}@media(max-width:980px){.ts-hero{min-height:auto}.ts-hero-inner{padding:28px 20px 100px}.ts-hero-text{padding:24px;max-width:100%}.ts-hero-title{font-size:36px}.ts-hero-stats{flex-wrap:wrap;gap:16px}.ts-stat-sep{display:none}.ts-3d-hint{top:76px;right:16px;font-size:10px;padding:6px 11px}.ts-courses-section,.ts-learn-section{padding:40px 20px}.ts-course-card{grid-template-columns:auto 1fr;grid-template-areas:"num icon" "body body" "action action";gap:14px;padding:16px}.ts-course-num{grid-area:num;font-size:22px;min-width:32px;text-align:left}.ts-course-icon{grid-area:icon;width:44px;height:44px;font-size:22px}.ts-course-body{grid-area:body}.ts-course-action{grid-area:action;justify-content:flex-end}.ts-cta h2,.ts-section-header h2{font-size:26px}.ts-header{padding:12px 16px}}@media(max-width:520px){.ts-logo span,.ts-user span{display:none}.ts-hero-title{font-size:30px}.ts-stat-num{font-size:24px}.ts-hero-3d{height:320px}}.ps-screen{min-height:100vh;background:#f8fafc;color:#0f172a;font-family:Inter,sans-serif}.ps-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 32px;height:60px;background:#fff;border-bottom:1px solid #e2e8f0}.ps-back{background:none;border:1px solid #e2e8f0;border-radius:8px;padding:6px 14px;font-size:14px;color:#475569;cursor:pointer;transition:all .18s}.ps-back:hover{background:#f1f5f9;color:#0f172a}.ps-logo{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:700;color:#0f172a;text-decoration:none}.ps-logo img{height:28px}.ps-dot{color:#7c3aed}.ps-header-right{width:80px}.ps-hero{display:flex;align-items:center;gap:28px;padding:48px 40px 36px;max-width:900px;margin:0 auto}.ps-avatar-wrap{position:relative;flex-shrink:0;width:96px;height:96px}.ps-avatar-ring-svg{position:absolute;inset:0;z-index:0}.ps-avatar{position:absolute;inset:10px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#22d3ee);color:#fff;font-size:28px;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:1}.ps-user-info{display:flex;flex-direction:column;gap:6px}.ps-name{font-size:28px;font-weight:800;margin:0}.ps-email{font-size:15px;color:#64748b;margin:0}.ps-role-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;background:#f1f5f9;color:#475569;width:fit-content}.ps-role-badge.admin{background:#fef3c7;color:#92400e}.ps-stats-bar{display:flex;align-items:center;justify-content:center;gap:0;background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:20px 32px;max-width:700px;margin:0 auto 40px}.ps-stat{text-align:center;padding:0 24px}.ps-stat-num{display:block;font-size:28px;font-weight:800;color:#7c3aed}.ps-stat-label{display:block;font-size:12px;color:#64748b;margin-top:2px;font-weight:500}.ps-stat-sep{width:1px;height:40px;background:#e2e8f0}.ps-activity-bar{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:700px;margin:0 auto 40px;padding:0 24px}.ps-activity-card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:20px 22px;position:relative;overflow:hidden}.ps-activity-card:before{content:"";position:absolute;inset:0;opacity:.04;pointer-events:none}.ps-streak-card:before{background:linear-gradient(135deg,#f59e0b,#ef4444)}.ps-quiz-card:before{background:linear-gradient(135deg,#7c3aed,#0ea5e9)}.ps-activity-icon{font-size:30px;flex-shrink:0;line-height:1}.ps-activity-body{display:flex;flex-direction:column;flex:1;min-width:0}.ps-activity-num{font-size:26px;font-weight:800;line-height:1.1;color:#0f172a}.ps-streak-card .ps-activity-num{color:#f59e0b}.ps-quiz-card .ps-activity-num{color:#7c3aed}.ps-activity-label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-top:2px}.ps-activity-sub{position:absolute;bottom:10px;right:14px;font-size:11px;color:#94a3b8;font-style:italic}@media(max-width:600px){.ps-activity-bar{grid-template-columns:1fr;padding:0 16px}.ps-activity-sub{position:static;margin-top:4px;font-size:11px}.ps-activity-card{padding:16px 18px}}.ps-section{max-width:900px;margin:0 auto 48px;padding:0 24px}.ps-section-header{display:flex;align-items:baseline;gap:12px;margin-bottom:20px}.ps-section-title{font-size:20px;font-weight:700;margin:0}.ps-section-sub{font-size:13px;color:#94a3b8}.ps-loading-pill{font-size:12px;color:#7c3aed;background:#f5f3ff;padding:4px 10px;border-radius:20px}.ps-tracks-grid{display:flex;flex-direction:column;gap:12px}.ps-track-card{display:flex;align-items:center;gap:16px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px 20px;cursor:pointer;transition:all .2s}.ps-track-card:hover{border-color:#c4b5fd;box-shadow:0 4px 16px #7c3aed1a;transform:translateY(-1px)}.ps-track-icon{width:48px;height:48px;border-radius:12px;font-size:22px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ps-track-body{flex:1;min-width:0}.ps-track-name{font-size:15px;font-weight:700;margin:0 0 3px}.ps-track-meta{font-size:12px;color:#94a3b8;margin:0 0 8px}.pr-ring{position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center}.pr-ring span{position:absolute;font-size:10px;font-weight:700}.pr-mini-bar{width:100%;height:5px;background:#f1f5f9;border-radius:99px;overflow:hidden}.pr-mini-fill{height:100%;border-radius:99px;transition:width .8s ease}.ps-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.ps-course-card{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;cursor:default}.ps-course-card.completed{border-left:3px solid #22c55e}.ps-course-card.in-progress{border-left:3px solid #7c3aed}.ps-course-icon{width:40px;height:40px;border-radius:10px;font-size:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ps-course-info{flex:1;min-width:0}.ps-course-name{font-size:13px;font-weight:600;margin:0 0 6px}.ps-course-pct{font-size:11px;color:#64748b;display:block;margin-top:5px}.ps-empty{text-align:center;padding:60px 24px;max-width:400px;margin:0 auto}.ps-empty-icon{font-size:48px;margin-bottom:16px}.ps-empty h3{font-size:18px;font-weight:700;margin:0 0 8px}.ps-empty p{color:#64748b;font-size:14px;margin:0 0 24px}.ps-start-btn{background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff;border:none;border-radius:10px;padding:12px 28px;font-size:15px;font-weight:600;cursor:pointer;transition:opacity .2s}.ps-start-btn:hover{opacity:.9}@media(max-width:640px){.ps-hero{padding:28px 20px 24px;gap:20px}.ps-name{font-size:22px}.ps-stats-bar{flex-wrap:wrap;padding:16px 20px;gap:12px}.ps-stat-sep{display:none}.ps-stat{padding:0 12px}.ps-section{padding:0 16px}.ps-courses-grid{grid-template-columns:1fr}.ps-header{padding:0 16px}}*,*:before,*:after{box-sizing:border-box}.rm-screen{min-height:100vh;background:#f8fafc;font-family:Inter,system-ui,sans-serif;color:#0f172a;display:flex;flex-direction:column}.rm-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:60px;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 8px #0000000f}.rm-back{background:none;border:1px solid #e2e8f0;border-radius:8px;padding:6px 14px;font-size:13px;color:#475569;cursor:pointer;transition:all .18s;white-space:nowrap}.rm-back:hover{background:#f1f5f9;color:#0f172a}.rm-logo{display:flex;align-items:center;gap:8px;text-decoration:none;font-size:17px;font-weight:800;color:#0f172a}.rm-logo img{height:26px}.rm-dot{color:#7c3aed}.rm-menu-btn{display:none;background:none;border:1px solid #e2e8f0;border-radius:8px;padding:6px 14px;font-size:13px;color:#475569;cursor:pointer;font-weight:500;transition:all .18s}.rm-menu-btn:hover{background:#f1f5f9}.rm-body{display:flex;flex:1;overflow:hidden;height:calc(100vh - 60px)}.rm-sidebar{width:240px;min-width:240px;background:#fff;border-right:1px solid #e2e8f0;overflow-y:auto;padding:20px 12px;display:flex;flex-direction:column;gap:4px}.rm-sidebar-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;padding:4px 10px 12px}.rm-sidebar-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;border:none;background:transparent;cursor:pointer;text-align:left;width:100%;transition:background .18s}.rm-sidebar-item:hover{background:#f1f5f9}.rm-sidebar-item.active{background:color-mix(in srgb,var(--ic) 10%,#fff);border:1px solid color-mix(in srgb,var(--ic) 25%,#e2e8f0)}.rm-si-icon{font-size:18px;flex-shrink:0}.rm-si-body{flex:1;min-width:0}.rm-si-name{font-size:13px;font-weight:600;color:#0f172a;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rm-si-bar{height:3px;background:#e5e7eb;border-radius:99px;margin-top:5px;overflow:hidden}.rm-si-fill{height:100%;border-radius:99px;transition:width .6s ease}.rm-si-pct{font-size:11px;font-weight:700;flex-shrink:0}.rm-main{flex:1;overflow-y:auto;padding:32px 40px 60px}.rm-roadmap-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.rm-rh-left{display:flex;align-items:flex-start;gap:16px;flex:1}.rm-rh-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.rm-rh-title{font-size:26px;font-weight:800;margin:0 0 6px;color:#0f172a}.rm-rh-desc{font-size:14px;color:#64748b;margin:0;max-width:560px;line-height:1.6}.rm-rh-progress{display:flex;align-items:center;gap:14px;flex-shrink:0}.rm-prog-ring-wrap{position:relative;display:flex;align-items:center;justify-content:center}.rm-prog-ring-wrap span{position:absolute;font-size:12px;font-weight:800}.rm-prog-text{display:flex;flex-direction:column}.rm-prog-count{font-size:20px;font-weight:800;color:#0f172a;line-height:1}.rm-prog-label{font-size:11px;color:#94a3b8;margin-top:3px;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.rm-progress-bar-wrap{display:flex;align-items:center;gap:12px;margin-bottom:36px}.rm-progress-bar{flex:1;height:8px;background:#e5e7eb;border-radius:99px;overflow:hidden}.rm-progress-fill{height:100%;border-radius:99px;transition:width .8s ease}.rm-progress-label{font-size:12px;color:#94a3b8;font-weight:600;white-space:nowrap}.rm-flow{display:flex;flex-direction:column;align-items:center;gap:0;max-width:860px;margin:0 auto}.rm-phase-wrap{width:100%}.rm-phase-connector{display:flex;flex-direction:column;align-items:center;height:44px;pointer-events:none}.rm-connector-line{width:2px;flex:1;opacity:.35}.rm-connector-arrow{width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top-width:8px;border-top-style:solid;opacity:.5}.rm-phase{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:22px 24px;transition:border-color .2s}.rm-phase:hover{border-color:color-mix(in srgb,var(--rc) 35%,#e2e8f0)}.rm-phase.phase-done{border-color:color-mix(in srgb,var(--rc) 40%,#e2e8f0);background:color-mix(in srgb,var(--rc) 3%,#fff)}.rm-phase-header{display:flex;align-items:center;gap:12px;margin-bottom:18px}.rm-phase-num{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0;transition:background .3s,color .3s}.rm-phase-title{font-size:15px;font-weight:700;margin:0;flex:1;color:#0f172a}.rm-phase-prog{font-size:12px;font-weight:700;opacity:.7}.rm-nodes{display:flex;flex-wrap:wrap;gap:10px}.rm-node{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:calc(25% - 8px);min-width:150px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;padding:14px 14px 10px;cursor:pointer;text-align:left;transition:all .2s;overflow:hidden}.rm-node:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--nc);opacity:0;transition:opacity .2s;border-radius:12px 12px 0 0}.rm-node:hover{border-color:color-mix(in srgb,var(--nc) 50%,#e2e8f0);background:color-mix(in srgb,var(--nc) 5%,#fff);transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--nc) 18%,transparent)}.rm-node:hover:before{opacity:1}.rm-node.done{background:color-mix(in srgb,var(--nc) 8%,#fff);border-color:color-mix(in srgb,var(--nc) 45%,#e2e8f0)}.rm-node.done:before{opacity:1}.rm-node-check{position:absolute;top:8px;left:8px;width:18px;height:18px;background:var(--nc);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;z-index:1}.rm-node-icon{font-size:22px;line-height:1;margin-top:2px}.rm-node-title{font-size:13px;font-weight:700;color:#0f172a;line-height:1.2}.rm-node-type{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 7px;border-radius:99px}.rm-node-tick{position:absolute;bottom:8px;right:8px;width:22px;height:22px;border-radius:50%;border:1.5px solid color-mix(in srgb,var(--nc) 40%,#e2e8f0);background:transparent;color:#94a3b8;font-size:11px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:2}.rm-node-tick:hover{background:var(--nc);color:#fff;border-color:var(--nc)}.rm-node-tick.ticked{background:var(--nc);color:#fff;border-color:var(--nc);font-weight:800}.rm-completion{display:flex;align-items:center;gap:18px;background:color-mix(in srgb,var(--rc) 8%,#fff);border:2px solid color-mix(in srgb,var(--rc) 40%,#e2e8f0);border-radius:18px;padding:24px 28px;margin-top:32px;width:100%;animation:popIn .4s ease}@keyframes popIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.rm-completion-icon{font-size:40px;flex-shrink:0}.rm-completion h3{font-size:18px;font-weight:800;margin:0 0 4px}.rm-completion p{font-size:14px;color:#64748b;margin:0}.rm-detail-overlay{position:fixed;inset:0;background:#00000059;z-index:300;display:flex;align-items:stretch;justify-content:flex-end;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.rm-detail-panel{width:380px;max-width:95vw;background:#fff;border-left:1px solid #e2e8f0;overflow-y:auto;padding:28px 28px 40px;display:flex;flex-direction:column;gap:14px;position:relative;animation:slideIn .22s ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.rm-detail-close{position:absolute;top:16px;right:16px;background:#f1f5f9;border:none;border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:14px;cursor:pointer;color:#475569;transition:background .15s}.rm-detail-close:hover{background:#e2e8f0}.rm-detail-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.rm-detail-title{font-size:20px;font-weight:800;margin:0;color:#0f172a}.rm-detail-badge{display:inline-block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;padding:3px 10px;border-radius:99px;width:fit-content}.rm-detail-desc{font-size:14px;color:#475569;line-height:1.7;margin:0}.rm-detail-topics{margin-top:4px}.rm-detail-topics-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#94a3b8;margin:0 0 10px}.rm-detail-topics ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.rm-detail-topic-item{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#334155}.rm-detail-topic-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.rm-detail-actions{display:flex;flex-direction:column;gap:10px;margin-top:8px}.rm-detail-course-btn{color:#fff;border:none;border-radius:10px;padding:12px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s,transform .2s;text-align:center}.rm-detail-course-btn:hover{opacity:.9;transform:translateY(-1px)}.rm-detail-done-btn{background:transparent;border-radius:10px;padding:11px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-align:center}.rm-detail-done-btn:hover{opacity:.85}.rm-detail-done-btn.done{background:#f0fdf4;border:2px solid #86efac;color:#15803d}.rm-overlay{display:none;position:fixed;inset:0;background:#0000004d;z-index:99}@media(max-width:1100px){.rm-node{width:calc(33.333% - 7px)}}@media(max-width:900px){.rm-node{width:calc(50% - 5px)}.rm-main{padding:24px 24px 48px}}@media(max-width:768px){.rm-menu-btn{display:flex;align-items:center;gap:6px}.rm-sidebar{position:fixed;top:60px;left:0;bottom:0;z-index:100;width:260px;transform:translate(-100%);transition:transform .26s ease;box-shadow:4px 0 20px #0000001f}.rm-sidebar.open{transform:translate(0)}.rm-overlay{display:block}.rm-roadmap-header{flex-direction:column;gap:16px}.rm-rh-progress{align-self:flex-start}}@media(max-width:540px){.rm-node{width:100%;min-width:unset}.rm-main{padding:16px 16px 40px}.rm-rh-title{font-size:20px}.rm-detail-panel{width:100%;border-left:none;border-top:1px solid #e2e8f0;animation:slideUp .22s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.rm-detail-overlay{align-items:flex-end}}
