:root{--bg-canvas:#08090a;--bg-panel:#0f1011;--bg-surface:#191a1b;--bg-elevated:#23242a;--bg-hover:#ffffff0a;--text-primary:#f7f8f8;--text-secondary:#d0d6e0;--text-tertiary:#8a8f98;--text-quaternary:#62666d;--accent:#5e6ad2;--accent-bright:#7170ff;--accent-hover:#828fff;--accent-glow:#5e6ad233;--success:#10b981;--error:#ef4444;--error-bg:#ef44441f;--warning:#f59e0b;--border-subtle:#ffffff0d;--border-standard:#ffffff14;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-2xl:16px;--radius-pill:9999px;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--transition:.15s ease;--shadow-glass:0 8px 32px #0000004d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg-canvas);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-feature-settings:"cv01","ss03";line-height:1.5;overflow-x:hidden}html[data-theme=ocean]{--accent:#0ea5e9;--accent-bright:#38bdf8;--accent-hover:#0284c7;--accent-glow:#0ea5e933}html[data-theme=sunset]{--accent:#ec4899;--accent-bright:#f472b6;--accent-hover:#db2777;--accent-glow:#ec489933}html[data-theme=forest]{--accent:#10b981;--accent-bright:#34d399;--accent-hover:#059669;--accent-glow:#10b98133}html[data-theme=mono]{--accent:#a3a3a3;--accent-bright:#d4d4d4;--accent-hover:#737373;--accent-glow:#a3a3a333}html[data-theme=amber]{--accent:#f59e0b;--accent-bright:#fbbf24;--accent-hover:#d97706;--accent-glow:#f59e0b33}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px var(--accent-glow)}50%{box-shadow:0 0 40px var(--accent-glow)}}@keyframes slideIn{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}nav{z-index:100;border-bottom:1px solid var(--border-subtle);-webkit-backdrop-filter:blur(16px);background:#0f1011d9;justify-content:space-between;align-items:center;height:52px;padding:0 24px;display:flex;position:sticky;top:0}.nav-logo{align-items:center;gap:10px;text-decoration:none;display:flex}.nav-logo svg{width:24px;height:24px}.nav-logo span{font-family:var(--font-mono);color:var(--text-primary);letter-spacing:-.3px;font-size:14px;font-weight:500}.nav-logo span em{color:var(--accent-bright);font-style:normal}.nav-cta{color:#fff;background:var(--accent);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition), box-shadow var(--transition);border:none;padding:6px 14px;font-size:13px;font-weight:500}.nav-cta:hover{background:var(--accent-hover);box-shadow:0 0 20px var(--accent-glow)}.hero{text-align:center;max-width:720px;margin:0 auto;padding:80px 24px 56px;animation:.6s fadeInUp}.hero-badge{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);color:var(--text-tertiary);align-items:center;gap:6px;margin-bottom:28px;padding:3px 12px 3px 6px;font-size:12px;font-weight:500;display:inline-flex}.hero-badge .dot{background:var(--success);border-radius:50%;width:6px;height:6px}.hero h1{letter-spacing:-1.68px;color:var(--text-primary);margin-bottom:20px;font-size:56px;font-weight:600;line-height:1.05}.hero h1 .highlight{background:linear-gradient(135deg, var(--accent-bright), #a78bfa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero p{color:var(--text-tertiary);max-width:560px;margin:0 auto 40px;font-size:18px;font-weight:400;line-height:1.7}.section-label{text-align:center;font-family:var(--font-mono);color:var(--accent-bright);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:500}.section-title{text-align:center;letter-spacing:-1.08px;color:var(--text-primary);margin-bottom:12px;font-size:36px;font-weight:700}.section-subtitle{text-align:center;color:var(--text-tertiary);max-width:480px;margin:0 auto 48px;font-size:17px}.how-it-works{max-width:960px;margin:0 auto;padding:80px 24px;animation:.8s fadeInUp}.steps-grid{grid-template-columns:repeat(3,1fr);gap:32px;display:grid;position:relative}.step-card{background:var(--bg-panel);border:1px solid var(--border-standard);border-radius:var(--radius-2xl);transition:border-color var(--transition), transform var(--transition);padding:32px;position:relative}.step-card:hover{border-color:var(--accent);transform:translateY(-2px)}.step-num{font-family:var(--font-mono);color:var(--accent);opacity:.3;margin-bottom:16px;font-size:40px;font-weight:800;line-height:1}.step-card h3{margin-bottom:12px;font-size:18px;font-weight:600}.step-card p{color:var(--text-tertiary);font-size:14px;line-height:1.7}.step-connector{display:none}.features-section{max-width:1100px;margin:0 auto;padding:80px 24px;animation:1s fadeInUp}.features-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.feature-card{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);transition:border-color var(--transition), transform var(--transition);padding:28px}.feature-card:hover{border-color:var(--border-standard);transform:translateY(-2px)}.feature-icon{margin-bottom:16px;font-size:28px;display:block}.feature-card h3{margin-bottom:8px;font-size:16px;font-weight:600}.feature-card p{color:var(--text-tertiary);font-size:13px;line-height:1.7}.builder{grid-template-columns:1fr 1fr;align-items:start;gap:32px;max-width:960px;margin:0 auto;padding:0 24px 120px;animation:1.2s fadeInUp;display:grid}.input-panel{background:var(--bg-panel);border:1px solid var(--border-standard);border-radius:var(--radius-2xl);padding:28px;position:sticky;top:84px}.input-panel h2{letter-spacing:-.3px;margin-bottom:6px;font-size:18px;font-weight:600}.input-panel .subtitle{color:var(--text-quaternary);margin-bottom:24px;font-size:13px}.field{margin-bottom:18px}.field label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:12px;font-weight:500;display:block}.field input,.field textarea,.field select{background:var(--bg-canvas);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;font-family:var(--font-sans);color:var(--text-primary);transition:border-color var(--transition), box-shadow var(--transition);outline:none;padding:10px 12px;font-size:14px}.field input::placeholder,.field textarea::placeholder{color:var(--text-quaternary)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.field textarea{resize:vertical;min-height:80px}.field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='%238a8f98' d='M8 11l-5-5h10l-5 5z'/%3e%3c/svg%3e");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;padding-right:36px}.field select option{background:var(--bg-surface)}.generate-btn{background:var(--accent);color:#fff;border-radius:var(--radius-md);width:100%;font-family:var(--font-sans);cursor:pointer;letter-spacing:-.2px;transition:background var(--transition), box-shadow var(--transition), opacity var(--transition);border:none;margin-top:4px;padding:12px 20px;font-size:14px;font-weight:600}.generate-btn:hover{background:var(--accent-hover);box-shadow:0 0 24px var(--accent-glow)}.generate-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.deck-panel h2{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px;font-size:13px;font-weight:500}.slide-count{font-family:var(--font-mono);color:var(--text-quaternary);margin-bottom:16px;font-size:12px}.slides{flex-direction:column;gap:10px;display:flex}.slide-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition), background var(--transition), box-shadow var(--transition);padding:14px 16px;animation:.3s slideIn;position:relative}.slide-card:hover{border-color:var(--border-standard);background:var(--bg-elevated)}.slide-card.active{border-color:var(--accent);background:var(--bg-elevated);box-shadow:0 0 20px var(--accent-glow)}.slide-card-header{align-items:center;gap:8px;margin-bottom:8px;display:flex}.slide-num{font-family:var(--font-mono);color:var(--text-quaternary);flex-shrink:0;font-size:11px;font-weight:500}.slide-title{color:var(--text-primary);letter-spacing:-.2px;flex:1;font-size:15px;font-weight:600}.slide-actions{flex-shrink:0;gap:4px;display:flex}.slide-action-btn{background:var(--bg-hover);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition);font-size:11px;font-weight:500;font-family:var(--font-sans);padding:3px 8px}.slide-action-btn:hover{color:var(--text-primary);border-color:var(--border-standard)}.slide-action-btn:disabled{opacity:.3;cursor:not-allowed}.slide-action-btn.danger:hover{color:var(--error);border-color:var(--error)}.slide-preview{color:var(--text-tertiary);white-space:pre-wrap;font-size:13px;line-height:1.5}.speaker-notes{border-left:2px solid var(--accent);border-radius:var(--radius-sm);color:var(--text-quaternary);background:#ffffff08;margin-top:8px;padding:8px 10px;font-size:12px;font-style:italic}.speaker-notes:before{content:"🎤 Speaker notes: ";color:var(--accent-bright);font-style:normal;font-weight:500}.refine-input{gap:8px;margin-top:10px;animation:.2s fadeIn;display:flex}.refine-input input{background:var(--bg-canvas);border:1px solid var(--accent);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;font-family:var(--font-sans);outline:none;flex:1;padding:6px 10px}.refine-input button{background:var(--accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:500;font-family:var(--font-sans);border:none;padding:6px 12px}.refine-input button:hover{background:var(--accent-hover)}.refine-input button:disabled{opacity:.4;cursor:not-allowed}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:12px;height:12px;animation:.6s linear infinite spin;display:inline-block}.loading-overlay{z-index:200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08090ad9;flex-direction:column;justify-content:center;align-items:center;gap:20px;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.loading-overlay .spinner-large{border:3px solid #5e6ad24d;border-top-color:var(--accent-bright);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.loading-overlay p{color:var(--text-secondary);font-size:16px;font-weight:500}.loading-overlay .sub{color:var(--text-quaternary);font-size:13px}.slide-preview-html{border-radius:8px;line-height:0;overflow:hidden}.rendered-slide{transform-origin:0 0}.toast-container{z-index:300;flex-direction:column;gap:8px;display:flex;position:fixed;top:68px;right:20px}.toast{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);max-width:380px;padding:12px 18px;font-size:13px;font-weight:500;animation:.3s slideIn}.toast.success{color:var(--success);background:#10b98126;border:1px solid #10b9814d}.toast.error{background:var(--error-bg);color:var(--error);border:1px solid #ef44444d}.toast.info{color:var(--text-secondary);background:#5e6ad226;border:1px solid #5e6ad24d}.empty-state{text-align:center;color:var(--text-quaternary);padding:60px 24px}.empty-state .icon{opacity:.3;margin-bottom:16px;font-size:40px}.empty-state p{font-size:14px;line-height:1.6}.error-state{text-align:center;color:var(--error);background:var(--error-bg);border-radius:var(--radius-md);margin-top:12px;padding:16px;font-size:13px}.download-bar{border-top:1px solid var(--border-standard);z-index:100;-webkit-backdrop-filter:blur(16px);background:#0f1011f2;justify-content:center;align-items:center;gap:12px;padding:14px 24px;transition:transform .35s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.download-bar.visible{transform:translateY(0)}.download-bar .deck-info{color:var(--text-tertiary);font-size:13px;position:absolute;left:24px}.download-btn{color:#0f1011;border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:600;font-family:var(--font-sans);transition:opacity var(--transition);background:#fff;border:none;padding:10px 24px;text-decoration:none}.download-btn:hover{opacity:.9}.download-btn.secondary{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border-standard)}.download-btn.secondary:hover{background:var(--bg-surface)}footer{text-align:center;color:var(--text-quaternary);border-top:1px solid var(--border-subtle);padding:40px 24px 90px;font-size:12px}.deck-viewer{max-width:900px;margin:0 auto;padding:40px 24px 120px;animation:.5s fadeInUp}.viewer-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:40px;display:flex}.viewer-header h1{letter-spacing:-.64px;margin-bottom:8px;font-size:32px;font-weight:700}.viewer-header .meta{color:var(--text-tertiary);font-size:14px}.viewer-actions{flex-shrink:0;gap:8px;display:flex}.viewer-slides{flex-direction:column;gap:24px;display:flex}.viewer-slide-card{background:var(--bg-panel);border:1px solid var(--border-subtle);border-radius:var(--radius-2xl);transition:border-color var(--transition);overflow:hidden}.viewer-slide-card:hover{border-color:var(--border-standard)}.viewer-slide-label{border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);align-items:center;gap:10px;padding:16px 20px 12px;display:flex}.viewer-slide-render{background:#08090a;justify-content:center;padding:20px;display:flex;overflow-x:auto}@media (width<=900px){.features-grid{grid-template-columns:repeat(2,1fr)}.steps-grid{grid-template-columns:1fr}}@media (width<=768px){.builder{grid-template-columns:1fr}.input-panel{position:static}.hero h1{letter-spacing:-1.08px;font-size:36px}.hero p{font-size:16px}.features-grid{grid-template-columns:1fr}.section-title{font-size:28px}.download-bar{flex-wrap:wrap;gap:8px;padding:12px 16px}.download-bar .deck-info{text-align:center;width:100%;font-size:12px;position:static}.viewer-header{flex-direction:column}.viewer-actions{width:100%}.viewer-actions .download-btn{text-align:center;flex:1}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation-duration:.01ms!important}}
