@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);#root,body,html{height:100%;margin:0;overflow:hidden;padding:0;width:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;letter-spacing:-.01em}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--lesson-bg:#000;--panel:#0a0a0a;--accent:#8b5cf6;--accent-dark:#7c3aed;--accent-light:#c4b5fd;--ink:#fff;--muted:#9ca3af;--border:#ffffff08;--border-soft:#ffffff05;--shadow:0 4px 20px #000c;--shadow-lg:0 8px 40px #000000e6;--bg-secondary:#050505;--text-primary:#fff;--bg-hover:#111;--r-sm:8px;--r-md:12px;--r-lg:20px;--r-pill:9999px}.App{background:radial-gradient(circle at 50% 0,#1a1a1a 0,#000 100%);color:#fff;color:var(--ink);display:flex;flex-direction:column;height:100vh;letter-spacing:-.01em;max-height:100vh;overflow:hidden;position:relative}.App:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)'/%3E%3C/svg%3E");content:"";height:100%;left:0;opacity:.04;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.top-actions{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000d9;border-bottom:1px solid #ffffff08;border-bottom:1px solid var(--border);box-shadow:0 1px 6px #ffffff0d;box-sizing:border-box;height:auto;overflow:visible;position:relative;z-index:100}.template-selector{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-right:auto;position:relative;z-index:101}.logo-container{align-items:center;display:flex;gap:14px;left:calc(41.33333px + 33.33333%);position:absolute;top:50%;transform:translateY(-50%);z-index:1}.app-logo{display:block;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:52px;object-fit:contain;transition:transform .2s ease;width:auto}.logo-container:hover .app-logo{transform:scale(1.05)}.app-logo-text{display:inline-block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:33px;letter-spacing:-1px;line-height:1.2;margin:0;padding:0;position:relative;vertical-align:middle}.logo-neural{font-weight:800}.logo-lesson,.logo-neural{-webkit-text-fill-color:#0000;animation:text-shimmer 3s ease-in-out infinite;background:linear-gradient(135deg,#1d1d1d,#3a3a3a 50%,#1d1d1d);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;display:inline-block;text-shadow:0 2px 8px #0000001a;transition:all .3s ease}.logo-lesson{font-weight:300}@keyframes text-shimmer{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.logo-container:hover .logo-lesson,.logo-container:hover .logo-neural{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#8b5cf6,#7c3aed 50%,#8b5cf6);background:linear-gradient(135deg,var(--accent) 0,var(--accent-dark) 50%,var(--accent) 100%);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;filter:drop-shadow(0 2px 4px rgba(37,99,235,.3))}.brand-mark{align-items:center;display:flex;gap:12px;position:relative}.brand-mark.mini{align-items:center;flex-direction:column;gap:6px}.brand-mark.mini.center{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(135deg,#0f172a38,#0f172a24);border:1px solid #0f172a38;border-radius:14px;box-shadow:0 12px 28px #0f172a47;flex-direction:row;gap:10px;justify-content:center;padding:10px 14px}.brand-logo{filter:drop-shadow(0 2px 6px rgba(0,0,0,.15));height:46px;object-fit:contain;width:auto}.brand-logo.mini{height:32px}.brand-circles{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(3,12px)}.brand-circles.mini{gap:4px;grid-template-columns:repeat(3,8px)}.brand-circles.mini span{height:8px;width:8px}.brand-circles span{animation:pulse 2.4s ease-in-out infinite;background:linear-gradient(135deg,#4c6fff,#7f5af0);border-radius:50%;box-shadow:0 4px 10px #4c6fff59;height:12px;width:12px}.brand-circles span:nth-child(2){animation-delay:.2s;background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 10px #22c55e59}.brand-circles span:nth-child(3){animation-delay:.4s;background:linear-gradient(135deg,#f59e0b,#ea580c);box-shadow:0 4px 10px #ea580c59}@keyframes pulse{0%,to{opacity:.9;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}.brand-type{display:flex;flex-direction:column;line-height:1.1}.brand-kicker{-webkit-text-fill-color:#0000;background:linear-gradient(120deg,#111827,#4c6fff 45%,#7f5af0 75%,#0ea5e9);-webkit-background-clip:text;background-clip:text;font-size:16px;font-weight:800;letter-spacing:.22em;text-shadow:0 2px 6px #4f46e540;text-transform:uppercase}.brand-version{color:#0f172a;font-weight:900}.top-brand-center .brand-kicker{-webkit-text-fill-color:currentColor;background:none;-webkit-background-clip:initial;color:#ff7a00;font-size:14px;font-weight:800;letter-spacing:.08em;text-shadow:none;text-transform:none}.top-brand-center .brand-version{color:#ff7a00;font-size:1.15em;font-weight:900}.brand-version strong{color:inherit;font-weight:inherit}.brand-name{align-items:baseline;display:flex;gap:4px}.brand-lesson{color:#0f172a;font-weight:800;letter-spacing:-.5px}.brand-gen,.brand-lesson{font-family:Space Grotesk,Inter,Segoe UI,sans-serif;font-size:24px}.brand-gen{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#4c6fff,#7f5af0);-webkit-background-clip:text;font-weight:300;letter-spacing:-.2px}.brand-tagline{color:#1f2937;font-size:12px;letter-spacing:.05em;margin-top:3px;opacity:.8}.template-label,.template-select{color:#0f172a;font-size:14px;font-weight:600;letter-spacing:.3px;white-space:nowrap}.template-select{background:#fff;border:2px solid #ffffff08;border:2px solid var(--border);border-radius:6px;cursor:pointer;max-width:240px;min-width:140px;outline:none;overflow:hidden;padding:6px 12px;text-overflow:ellipsis;transition:all .2s}.template-select:hover{background:#f5f5f5}.template-select:focus,.template-select:hover{border-color:#8b5cf6;border-color:var(--accent)}.template-select:focus{box-shadow:0 0 0 3px #2563eb26}.delete-template-button{align-items:center;background:#fff;border:2px solid #dc3545;border-radius:6px;color:#dc3545;cursor:pointer;display:flex;height:36px;justify-content:center;min-width:36px;overflow:hidden;padding:8px;position:relative;transition:all .2s ease}.delete-template-button:before{background:#dc3545;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;width:0}.delete-template-button:hover:before{height:100%;width:100%}.delete-template-button:hover{border-color:#c82333;box-shadow:0 4px 8px #dc354540;transform:translateY(-1px)}.delete-template-button:hover .delete-icon{color:#fff;transform:scale(1.1)}.delete-template-button:active{box-shadow:0 2px 4px #dc354533;transform:translateY(0)}.delete-icon{color:#dc3545;position:relative;transition:all .2s ease;z-index:1}.gallery-button{align-items:center;background:#8b5cf6;background:var(--accent);border:2px solid #8b5cf6;border:2px solid var(--accent);border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:6px;letter-spacing:.3px;padding:8px 14px;transition:all .2s ease}.gallery-button:hover{background:#7c3aed;background:var(--accent-dark);border-color:#7c3aed;border-color:var(--accent-dark);box-shadow:0 4px 8px #2563eb40;color:#fff;transform:translateY(-1px)}.gallery-button:active{transform:translateY(0)}.gallery-icon{height:18px;width:18px}.main-layout.gallery-view-mode{grid-template-columns:1fr}.lesson-column.gallery-view{min-height:0;width:100%}.gallery-view-header{align-items:center;background:#0a0a0a;background:var(--panel);border-bottom:2px solid #ffffff08;border-bottom:2px solid var(--border);display:flex;flex-shrink:0;gap:16px;justify-content:space-between;padding:16px;z-index:10}.exit-gallery-view-button{align-items:center;background:#fff;border:2px solid #ffffff08;border:2px solid var(--border);border-radius:6px;color:#0f172a;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:6px;letter-spacing:.3px;padding:8px 14px;transition:all .2s ease}.exit-gallery-view-button:hover{background:#f5f5f5;box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.exit-gallery-view-button:active{transform:translateY(0)}.gallery-view-title{color:#0f172a;font-size:20px;font-weight:700;letter-spacing:.3px;margin:0}.gallery-modal{max-height:85vh;max-width:900px}.gallery-body{max-height:calc(85vh - 120px);overflow-y:auto;padding:24px}.gallery-description{color:#9ca3af;color:var(--muted);font-size:14px;margin:0 0 24px;text-align:center}.gallery-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:0}.inline-gallery{background:#0000;display:flex;flex:1 1;flex-direction:column;gap:12px;min-height:0;overflow-y:auto;padding:12px}.gallery-view-header.inline{display:flex;flex-direction:column;gap:4px;padding:0 4px 2px}.gallery-description.inline{color:#94a3b8;font-size:11px;letter-spacing:.12em;margin:0;text-align:left;text-transform:uppercase}.gallery-grid.inline{gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));padding:4px 0 12px}.gallery-item{background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;min-height:240px;overflow:visible;padding:0;position:relative;transition:transform .35s ease,box-shadow .35s ease}.gallery-item:hover{box-shadow:0 20px 40px #4f46e538,0 10px 22px #0f172a1f;transform:translateY(-6px)}.gallery-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(150deg,#ffffffd1,#e7ecffd1,#fff0fcd1);border:1px solid #94a3b88c;border-radius:16px;box-shadow:0 18px 36px #0f172a29,0 0 0 1px #ffffffb3,0 10px 30px #6366f11f;height:100%;overflow:visible;position:relative;transition:transform .3s ease,box-shadow .3s ease;width:100%}.gallery-face{border-radius:16px;display:flex;flex-direction:column;inset:0;justify-content:space-between;padding:14px;position:absolute}.gallery-face.front{background:linear-gradient(135deg,#ffffffd9,#f0f5ffeb)}.gallery-item-preview{background:linear-gradient(135deg,#fffc,#eceffff2);border:1px solid #d0d0d0;border-radius:12px;box-shadow:inset 0 0 0 1px #94a3b833;height:160px;margin-bottom:12px;overflow:hidden;position:relative;width:100%}.gallery-preview-iframe{background:#fff;border:none;height:200%;pointer-events:none;transform:scale(.5);transform-origin:top left;width:200%}.gallery-preview-iframe,.gallery-preview-loading{border-radius:12px;left:0;position:absolute;top:0}.gallery-preview-loading{align-items:center;background:linear-gradient(135deg,#f5f5f5,#e8e8e8);bottom:0;display:flex;justify-content:center;right:0;transition:opacity .3s ease,visibility .3s ease;z-index:2}.gallery-preview-iframe.loaded~.gallery-preview-loading{opacity:0;pointer-events:none;visibility:hidden}.gallery-hover-anchor{display:flex;justify-content:flex-end;pointer-events:none;position:absolute;right:0;top:10px;z-index:3}.gallery-grid.inline>.gallery-item:nth-child(-n+4) .gallery-hover-anchor{bottom:10px;top:auto;transform:none}.gallery-hover-bubble{background:#0f172af0;border:1px solid #94a3b859;border-radius:14px;box-shadow:0 16px 32px #00000040;color:#e5edff;max-width:280px;opacity:0;padding:12px 14px;pointer-events:none;position:relative;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease}.gallery-hover-bubble:after{border:9px solid #0000;border-top-color:#0f172af0;content:"";position:absolute;right:18px;top:100%}.gallery-item:hover .gallery-hover-bubble{opacity:1;transform:translateY(0)}.bubble-title{color:#cbd5f5;font-size:12px;font-weight:800;letter-spacing:.08em;margin:0 0 6px;text-transform:uppercase}.bubble-text{font-size:13px;line-height:1.5;margin:0 0 6px}.bubble-text.subtle{color:#a5b4fc;font-size:12px}.bubble-cta{color:#c7d2fe;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.gallery-loading-spinner{animation:spin .8s linear infinite;border:3px solid #0000001a;border-radius:50%;border-top-color:#007bff;height:32px;width:32px}.gallery-preview-pending{align-items:center;background:#f8fafc;border-radius:14px;color:#64748b;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:10px;height:100%;justify-content:center;letter-spacing:.08em;text-transform:uppercase;width:100%}@keyframes spin{to{transform:rotate(1turn)}}.gallery-item-icon{font-size:48px;opacity:.6;position:relative;z-index:1}.gallery-item-info{align-items:flex-start;display:flex;flex-direction:column;gap:4px;text-align:left;width:100%}.gallery-item-name{color:#0f172a;font-size:16px;font-weight:800;letter-spacing:.3px;margin:0 0 4px}.gallery-item-desc{color:#e5edff;font-size:13px;line-height:1.5;margin:0}.gallery-item-desc.subtle{color:#cbd5f5;font-size:12px}.gallery-item-action{color:#fefefe;font-size:14px;font-weight:800;letter-spacing:.08em}.menu-options{display:flex;flex-direction:column;gap:16px;padding:20px 0}.menu-option-button{align-items:center;background:#050505;background:var(--bg-secondary);border:2px solid #ffffff08;border:2px solid var(--border);border-radius:8px;color:#fff;color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;padding:16px;text-align:left;transition:all .2s ease;width:100%}.menu-option-button:hover{background:#8b5cf6;background:var(--accent);border-color:#8b5cf6;border-color:var(--accent);color:#fff;transform:translateX(4px)}.menu-option-button:active{transform:translateX(2px)}.menu-option-button svg{flex-shrink:0}.menu-back-header{align-items:center;border-bottom:1px solid #ffffff08;border-bottom:1px solid var(--border);display:flex;gap:12px;margin-bottom:20px;padding-bottom:16px}.menu-back-header h3{color:#fff;color:var(--text-primary);font-size:20px;font-weight:700;margin:0}.menu-back-button{align-items:center;background:#050505;background:var(--bg-secondary);border:1px solid #ffffff08;border:1px solid var(--border);border-radius:6px;color:#fff;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 12px;transition:all .2s ease}.menu-back-button:hover{background:#8b5cf6;background:var(--accent);border-color:#8b5cf6;border-color:var(--accent);color:#fff}.menu-back-button:active{transform:scale(.98)}.admin-panel{padding:20px 0}.admin-options{display:flex;flex-direction:column;gap:12px;margin-top:20px}.admin-button{background:#050505;background:var(--bg-secondary);border:2px solid #ffffff08;border:2px solid var(--border);border-radius:8px;color:#fff;color:var(--text-primary);cursor:pointer;font-size:15px;font-weight:600;padding:14px 20px;text-align:left;transition:all .2s ease;width:100%}.admin-button:hover{background:#8b5cf6;background:var(--accent);border-color:#8b5cf6;border-color:var(--accent);color:#fff;transform:translateX(4px)}.admin-button:active{transform:translateX(2px)}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.modal-content{animation:modalFadeIn .2s ease-out;background:#fff;border:2px solid #ffffff08;border:2px solid var(--border);border-radius:12px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{align-items:center;background:linear-gradient(135deg,#fff,#f0f4f8);border-bottom:2px solid #ffffff08;border-bottom:2px solid var(--border);display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{font-size:20px;font-weight:800;margin:0}.modal-close,.modal-header h2{color:#0f172a;letter-spacing:.3px}.modal-close{align-items:center;background:#0000;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;line-height:1;padding:0;transition:all .2s;width:32px}.modal-close:hover:not(:disabled){background:#0000001a}.modal-close:disabled{cursor:not-allowed;opacity:.5}.modal-body{padding:24px}.form-group{margin-bottom:20px}.form-group label{color:#0f172a;display:block;font-size:14px;font-weight:600;letter-spacing:.3px;margin-bottom:8px}.form-input,.form-textarea{border:2px solid #dcdcdc;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px 14px;transition:border-color .2s,box-shadow .2s;width:100%}.form-input:focus,.form-textarea:focus{border-color:#8b5cf6;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26;outline:none}.form-input:disabled,.form-textarea:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.form-textarea{min-height:100px;resize:vertical}.modal-footer{border-top:1px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px}.modal-button{border:2px solid #ffffff08;border:2px solid var(--border);border-radius:8px;cursor:pointer;font-size:14px;font-weight:700;padding:10px 20px;transition:all .2s}.modal-button.cancel{background:#fff;color:#0f172a;letter-spacing:.3px}.modal-button.cancel:hover:not(:disabled){background:#f5f5f5}.modal-button.primary{background:#8b5cf6;background:var(--accent);color:#fff}.modal-button.primary:hover:not(:disabled){background:#7c3aed;background:var(--accent-dark);box-shadow:0 4px 8px #00000026;color:#fff;transform:translateY(-1px)}.modal-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.modal-button.danger{background:#dc3545;border-color:#c82333;color:#fff}.modal-button.danger:hover:not(:disabled){background:#c82333;box-shadow:0 4px 8px #dc35454d;transform:translateY(-1px)}.deploy-button{align-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:linear-gradient(135deg,var(--accent),var(--accent-dark));border:1px solid #7c3aed;border:1px solid var(--accent-dark);border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:8px;padding:10px 16px;transition:all .2s ease}.deploy-button:hover:not(:disabled){box-shadow:0 10px 20px #2563eb40;transform:translateY(-1px)}.deploy-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.deploy-spinner{animation:spin .8s linear infinite;border:2px solid #fff6;border-radius:50%;border-top-color:#fff;height:14px;width:14px}.deploy-spinner.large{border-width:3px;height:36px;width:36px}.deploy-modal .modal-body{text-align:center}.deployment-error h3,.deployment-progress h3,.deployment-success h3{margin:12px 0 6px}.deployment-error,.deployment-success{align-items:center;display:flex;flex-direction:column;gap:10px}.deployment-success a{color:#8b5cf6;color:var(--accent);font-weight:600}.deployment-error{color:#b91c1c}.deployment-meta{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;font-size:13px;gap:12px;padding:10px 12px}.deployment-meta-row{color:#0f172a;display:flex;font-weight:600;gap:12px;justify-content:space-between}.deployment-meta a{color:#8b5cf6;color:var(--accent);font-weight:600;text-decoration:none;word-break:break-all}.deployment-meta a:hover{text-decoration:underline}.delete-modal{max-width:500px}.inline-alert{max-width:520px}.delete-warning{padding:20px 0;text-align:center}.delete-warning.step2{text-align:left}.warning-icon{animation:warningPulse 2s ease-in-out infinite;font-size:48px;margin-bottom:16px}@keyframes warningPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.delete-warning h3{color:#0f172a;font-size:22px;font-weight:700;letter-spacing:.3px;margin:0 0 12px}.delete-warning p{color:var(--text-main);font-size:14px;line-height:1.6;margin:8px 0}.delete-warning strong{color:#dc3545;font-weight:700}.delete-consequences{background:#eff6ff;border:2px solid #8b5cf6;border:2px solid var(--accent);border-radius:8px;list-style:none;margin:16px 0;padding:16px}.delete-consequences li{color:#7c3aed;color:var(--accent-dark);font-size:14px;padding:6px 0 6px 24px;position:relative}.delete-consequences li:before{color:#8b5cf6;color:var(--accent);content:"•";font-size:18px;font-weight:700;left:8px;position:absolute}.final-warning{color:#dc3545!important;font-size:16px!important;font-weight:700;margin-top:20px!important;text-align:center}.template-creating{padding:20px 0;text-align:center}.creating-spinner{display:inline-block;height:64px;margin-bottom:24px;position:relative;width:64px}.creating-spinner .spinner-ring{animation:spinner-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;border:4px solid #0000;border-radius:50%;border-top-color:#8b5cf6;border-color:var(--accent) #0000 #0000 #0000;box-sizing:border-box;display:block;height:51px;margin:6px;position:absolute;width:51px}.creating-spinner .spinner-ring:first-child{animation-delay:-.45s}.creating-spinner .spinner-ring:nth-child(2){animation-delay:-.3s}.creating-spinner .spinner-ring:nth-child(3){animation-delay:-.15s}.template-creating h3{color:#0f172a;font-size:20px;font-weight:700;letter-spacing:.3px;margin:0 0 12px}.template-creating p{color:#9ca3af;color:var(--muted);font-size:14px;line-height:1.5;margin:0 0 24px}.creating-steps{display:flex;flex-direction:column;gap:12px;margin:0 auto;max-width:400px;text-align:left}.step-item{align-items:center;background:#f8f9fa;border-radius:8px;color:#0f172a;display:flex;font-size:14px;gap:12px;letter-spacing:.3px;padding:10px}.step-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.save-button,.step-icon{background:#8b5cf6;background:var(--accent);color:#fff}.save-button{border:2px solid #8b5cf6;border:2px solid var(--accent);border-radius:6px;cursor:pointer;font-weight:800;letter-spacing:.3px;padding:8px 14px;transition:all .2s ease}.save-button:hover{background:#7c3aed;background:var(--accent-dark);border-color:#7c3aed;border-color:var(--accent-dark)}.save-button:active{transform:translateY(1px)}.save-status{min-width:100px;text-align:left}.pptgen-hero{-webkit-mask-image:linear-gradient(180deg,#000 80%,#0000);mask-image:linear-gradient(180deg,#000 80%,#0000);min-height:440px}@keyframes titlePulse{0%{opacity:.95;transform:scale(1)}50%{opacity:1;transform:scale(1.005)}to{opacity:.95;transform:scale(1)}}.pptgen-hero-title{animation:titlePulse 8s ease-in-out infinite}.lesson-column{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 16px #2563eb1a;display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;position:relative}.lesson-column.canvas{background:#f6f8ff}.layout-shell{display:grid;grid-template-columns:80px 1fr;height:100%}.layout-shell.chat-docked{grid-template-columns:400px 1fr}.layout-shell.chat-collapsed{grid-template-columns:80px 1fr}.left-rail{height:100%;min-height:0}.left-rail,.side-rail{background:#0000;border-right:1px solid #ffffff08;border-right:1px solid var(--border);display:flex}.side-rail{box-shadow:6px 0 20px #0f172a0f;gap:12px;padding:16px 12px}.rail-actions,.side-rail{align-items:center;flex-direction:column}.rail-actions{display:flex;gap:10px;width:100%}.rail-btn{background:#28282866;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:10px;color:#fff;cursor:pointer;font-weight:600;letter-spacing:.3px;padding:10px 12px;text-align:left;transition:all .2s ease}.rail-btn.primary{background:#fff;border:1px solid #ffffff1a;box-shadow:0 8px 24px #0006;color:#000}.rail-btn.primary:hover{background:#f3f4f6;box-shadow:0 0 20px #ffffff4d}.rail-btn:hover{box-shadow:0 10px 20px #0f172a14;transform:translateY(-1px)}.rail-btn.nudge{animation:rail-wiggle .7s ease-in-out 2;box-shadow:0 10px 20px #4f46e533}.rail-tooltip{animation:tooltip-fade .25s ease;background:#0f172ae6;border-radius:10px;box-shadow:0 10px 20px #0000002e;color:#e5edff;font-size:11px;left:50%;padding:6px 10px;pointer-events:none;position:absolute;top:-6px;transform:translate(-50%,-100%);white-space:nowrap;z-index:20}.rail-tooltip:after{border:6px solid #0000;border-top-color:#0f172ae6;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}@keyframes rail-wiggle{0%{transform:rotate(0deg)}20%{transform:rotate(-8deg)}40%{transform:rotate(6deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(3deg)}to{transform:rotate(0deg)}}@keyframes tooltip-fade{0%{opacity:0;transform:translate(-50%,-110%)}to{opacity:1;transform:translate(-50%,-100%)}}.rail-btn.icon{align-items:center;border-radius:14px;display:flex;font-size:18px;height:48px;justify-content:center;overflow:visible;padding:0;position:relative;width:48px}.main-pane{height:100%;min-height:0}.chat-sidebar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0a80;border-left:1px solid #ffffff08;border-left:1px solid var(--border);box-shadow:-6px 0 30px #00000080;display:flex;flex-direction:column;min-height:0;width:320px}.chat-sidebar.collapsed{display:none}.chat-sidebar-header{align-items:center;background:#fffc;border-bottom:1px solid #94a3b84d;display:flex;gap:8px;justify-content:space-between;padding:12px}.chat-sidebar-title{color:#1f2937;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.chat-sidebar-actions{align-items:center;display:flex;gap:8px}.chat-sidebar-body{flex:1 1;min-height:0;overflow:visible}.top-actions{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f0f0fb3;border-bottom:1px solid #ffffff0d;display:flex;flex-shrink:0;gap:10px;justify-content:space-between;min-height:64px}.top-actions,.top-actions.compact{padding:10px 14px}.top-actions-right{align-items:center;display:flex;gap:10px}.top-actions-right .icon-btn{display:none}.top-brand-center{display:flex;flex:1 1}.icon-btn,.top-brand-center{align-items:center;justify-content:center}.icon-btn{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:12px;color:#0f172a;cursor:pointer;display:inline-flex;font-size:16px;height:40px;letter-spacing:.3px;transition:all .2s ease;width:40px}.icon-btn:hover{box-shadow:0 6px 12px #0f172a1f;transform:translateY(-1px)}.template-selector{margin-right:0}.artifacts-header{background:linear-gradient(135deg,#fff,#f8fafc);border-bottom:2px solid #ffffff08;border-bottom:2px solid var(--border);border-radius:12px 12px 0 0;flex-shrink:0;padding:20px 24px;z-index:10}.artifacts-title{align-items:center;color:#7c3aed;color:var(--accent-dark);display:flex;font-size:20px;font-weight:800;gap:10px;letter-spacing:.3px;margin:0}.artifacts-title:before{background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:linear-gradient(135deg,var(--accent),var(--accent-dark));border-radius:2px;content:"";height:24px;width:4px}.artifacts-subtitle{color:#9ca3af;color:var(--muted);font-size:13px;font-weight:500;margin:6px 0 0}.lesson-column.fullscreen .artifacts-header{display:none}.main-layout.fullscreen-mode{grid-template-columns:1fr;padding:0}.lesson-column.fullscreen{background:#fff;height:100vh;left:0;padding:0;position:fixed;top:0;width:100vw;z-index:9999}.lesson-frame{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #ffffff08;border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 30px #0f172a1f;box-sizing:border-box;flex:1 1;margin:0;min-height:0;overflow:hidden;padding:0;position:relative;width:100%}.lesson-frame,.lesson-loading-overlay{align-items:center;display:flex;flex-direction:column;justify-content:center}.lesson-loading-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;bottom:0;gap:20px;left:0;position:absolute;right:0;top:0;z-index:100}.lesson-loading-spinner{display:inline-block;height:64px;position:relative;width:64px}.lesson-loading-spinner .spinner-ring{animation:spinner-ring 1.2s cubic-bezier(.5,0,.5,1) infinite;border:4px solid #0000;border-radius:50%;border-top-color:#8b5cf6;border-color:var(--accent) #0000 #0000 #0000;box-sizing:border-box;display:block;height:51px;margin:6px;position:absolute;width:51px}.lesson-loading-spinner .spinner-ring:first-child{animation-delay:-.45s}.lesson-loading-spinner .spinner-ring:nth-child(2){animation-delay:-.3s}.lesson-loading-spinner .spinner-ring:nth-child(3){animation-delay:-.15s}@keyframes spinner-ring{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.lesson-loading-text{animation:loading-pulse 1.5s ease-in-out infinite;color:#0f172a;font-size:16px;font-weight:600;letter-spacing:.3px;letter-spacing:.5px}@keyframes loading-pulse{0%,to{opacity:1}50%{opacity:.6}}.lesson-error-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffffa;bottom:0;display:flex;flex-direction:column;gap:16px;justify-content:center;left:0;padding:40px;position:absolute;right:0;text-align:center;top:0;z-index:101}.lesson-error-icon{animation:error-shake .5s ease-in-out;font-size:64px;line-height:1}@keyframes error-shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.lesson-error-title{color:#d32f2f;font-size:24px;font-weight:700;letter-spacing:.5px;margin-top:8px}.lesson-error-message{color:#0f172a;font-size:16px;letter-spacing:.3px;line-height:1.5;margin-bottom:8px;max-width:500px}.lesson-error-retry{background:#d32f2f;border:none;border-radius:8px;box-shadow:0 4px 12px #d32f2f4d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;letter-spacing:.5px;margin-top:8px;padding:12px 24px;transition:all .2s}.lesson-error-retry:hover{background:#b71c1c;box-shadow:0 6px 16px #d32f2f66;transform:translateY(-2px)}.lesson-error-retry:active{transform:translateY(0)}.lesson-column.fullscreen .lesson-frame{height:100vh;padding:0}.lesson-viewport{align-items:stretch;aspect-ratio:var(--lesson-stage-aspect);background:#fff;border-radius:12px;box-shadow:inset 0 0 0 1px #94a3b833;display:flex;justify-content:center;max-height:min(var(--lesson-stage-max-height),100%);overflow:hidden;position:relative;width:min(100%,var(--lesson-stage-max-width))}.lesson-viewport.artifact-mode,.lesson-viewport.fullscreen{aspect-ratio:auto;border-radius:0;box-shadow:none;height:100%;max-height:none;width:100%}.lesson-branding{align-items:center;box-sizing:border-box;display:flex;justify-content:space-between;left:50%;padding:0 14px;pointer-events:none;position:absolute;top:10px;transform:translateX(-50%);width:min(100%,var(--lesson-stage-max-width));z-index:20}.lesson-branding-logo{filter:drop-shadow(0 2px 4px rgba(15,23,42,.2));height:var(--lesson-branding-height);max-width:42%;object-fit:contain}.fullscreen-button{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1b1b1be6;border:2px solid #fff;border-radius:8px;bottom:12px;box-shadow:0 4px 12px #0000004d;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:6px;letter-spacing:.3px;padding:8px 14px;position:absolute;right:12px;transition:all .2s;z-index:1000}.fullscreen-button:hover{background:#1b1b1b;box-shadow:0 6px 16px #0006;transform:translateY(-2px)}.fullscreen-button:active{transform:translateY(0)}.floating-lesson-actions{bottom:auto;display:flex;flex-direction:column;gap:8px;position:absolute;right:16px;top:50%;transform:translateY(-50%);z-index:1000}.icon-btn.round{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1b1b1be6;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:50%;box-shadow:0 6px 16px #00000040;color:#fff;cursor:pointer;display:flex;font-size:18px;height:44px;justify-content:center;transition:all .2s;width:44px}.icon-btn.round:hover:not(:disabled){box-shadow:0 10px 20px #0000004d;transform:translateY(-1px)}.icon-btn.round:disabled{box-shadow:none;cursor:not-allowed;opacity:.5}.icon-btn.round.danger{background:#ef4444e6;border-color:#ef4444cc;box-shadow:0 8px 18px #ef444459}.fullscreen-icon{font-size:18px;font-weight:700}.fullscreen-text{font-size:13px}.lesson-iframe{background:#fff;border:none;border-radius:0;box-shadow:none;flex:1 1;height:100%;margin:0;min-height:0;overflow:hidden;padding:0;width:100%}.lesson-iframe.pending{background:#fff;display:block}.lesson-column.fullscreen .lesson-iframe{height:100vh}@media (max-width:960px){.lesson-viewport{aspect-ratio:auto;border-radius:0;height:100%;max-height:none;width:100%}.lesson-branding{padding:0 12px;top:8px;width:100%}.lesson-branding-logo{height:22px}}.floating-chat{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(160deg,#fffffff5,#f0f5fff5);border:1px solid #94a3b859;border-radius:16px;box-shadow:0 16px 45px #0f172a40;left:0;max-width:95vw;position:fixed;top:0;transition:box-shadow .2s ease;width:500px;z-index:2000}.floating-chat.minimized .floating-chat-body{display:none}.floating-chat-header{align-items:center;background:linear-gradient(135deg,#4c6fff,#7f5af0);border-bottom:1px solid #ffffff40;border-radius:16px 16px 0 0;box-shadow:inset 0 1px 0 #ffffff40;color:#fff;cursor:grab;display:flex;justify-content:space-between;padding:12px 14px;-webkit-user-select:none;user-select:none}.floating-chat-title{color:#fff;font-size:14px;font-weight:800;letter-spacing:.35px}.floating-chat-actions{display:flex;gap:6px}.floating-chat-body{background:#ffffffe6;border-radius:0 0 16px 16px;display:flex;flex-direction:column;height:70vh;max-height:70vh;padding:8px}.floating-chat-content{background:#fff;border:1px solid #e2e8f0b3;border-radius:12px;box-shadow:inset 0 0 0 1px #94a3b840;display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.floating-chat .icon-btn.small{border-radius:10px;font-size:14px;height:32px;width:32px}.floating-chat .icon-btn.small:hover{box-shadow:0 8px 16px #0f172a1f}.huddle-shell{display:flex;flex-direction:column;gap:22px;margin:0 auto;max-width:1200px;padding:40px 28px 64px}.header-bar{grid-gap:12px;align-items:stretch;background:#0a0a0a;background:var(--panel);border:2px solid #8b5cf6;border:2px solid var(--accent);border-radius:10px;box-shadow:0 4px 20px #000c;box-shadow:var(--shadow);display:grid;gap:12px;grid-template-columns:1.1fr 1fr .9fr;overflow:hidden}.brand,.photo-slot{align-items:center;background:#8b5cf6;background:var(--accent);color:#fff;font-size:14px;font-weight:700;letter-spacing:.3px;padding:18px;text-transform:uppercase}.brand,.photo-slot,.title-block{display:flex;justify-content:center}.title-block{background:linear-gradient(135deg,#fff,#f0f4f8);flex-direction:column;gap:4px;padding:16px 18px;text-align:center}.title{font-size:24px;font-weight:800;letter-spacing:.5px}.subtitle{color:#7c3aed;color:var(--accent-dark);font-size:14px;font-weight:600}.photo-slot{background:linear-gradient(120deg,#8b5cf6,#7c3aed);background:linear-gradient(120deg,var(--accent),var(--accent-dark));text-align:center}.lesson{grid-gap:18px;display:grid;gap:18px;grid-template-columns:2.2fr 1fr}.lesson-left,.lesson-right{display:flex;flex-direction:column;gap:16px}.card{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:12px;box-shadow:0 2px 8px #2563eb14;padding:20px;transition:all .3s ease}.card:hover{box-shadow:0 4px 16px #2563eb1f;transform:translateY(-2px)}.card-heading{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.card-title{font-size:18px;font-weight:800;letter-spacing:.2px}.card-meta{color:#9ca3af;color:var(--muted);font-size:12px}.bingo-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(5,1fr);margin-bottom:14px}.bingo-cell{background:#fcfcf9;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:8px;padding:10px}.day-label{color:#9ca3af;color:var(--muted);font-size:12px;letter-spacing:.6px;margin-bottom:6px;text-transform:uppercase}.cell-input,.text-input{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:6px;font-size:14px;outline:none;padding:8px 10px;width:100%}.cell-input:focus,.grid-cell:focus,.note-area:focus,.text-input:focus{border-color:#7c3aed;border-color:var(--accent-dark);box-shadow:0 0 0 2px #2563eb4d}.week-grid{border:1px solid #8b5cf6;border:1px solid var(--accent);border-radius:12px;overflow:hidden}.grid-row{display:grid;grid-template-columns:120px repeat(5,1fr)}.grid-header{background:#f2eac2;border-bottom:1px solid #8b5cf6;border-bottom:1px solid var(--accent)}.grid-corner{background:#fbf8ea;border-right:1px solid #ffffff08;border-right:1px solid var(--border);font-weight:700;padding:10px}.muted{color:#9ca3af;color:var(--muted);font-size:12px;font-weight:600}.grid-head{border-right:1px solid #ffffff08;border-right:1px solid var(--border);font-weight:800;padding:10px;text-align:center}.grid-row:not(.grid-header) .grid-head{background:#fafafa}.grid-cell{background:#fffef8;border-right:1px solid #ffffff08;border-right:1px solid var(--border);border-top:1px solid #ffffff08;border-top:1px solid var(--border);font-size:14px;min-height:70px;padding:10px;resize:none}.grid-row:last-child .grid-cell,.grid-row:last-child .grid-corner{border-bottom:1px solid #ffffff08;border-bottom:1px solid var(--border)}.grid-row .grid-cell:last-child,.grid-row .grid-head:last-child{border-right:none}.bottom-notes{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}.note-card{background:#0a0a0a;background:var(--panel);border:1px solid #ffffff08;border:1px solid var(--border);border-radius:10px;box-shadow:0 4px 20px #000c;box-shadow:var(--shadow);padding:14px}.note-title{font-weight:800;margin-bottom:8px}.note-area{background:#fffef8;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:8px;font-size:14px;min-height:120px;padding:10px;resize:vertical;width:100%}.info-card .stacked-label{color:#9ca3af;color:var(--muted);display:flex;flex-direction:column;font-size:13px;gap:6px;margin-bottom:10px}.agenda-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:10px 0 0;padding:0}.agenda-title{font-weight:800;margin-bottom:2px}.agenda-hint{color:#9ca3af;color:var(--muted);font-size:12px}.waste-list{grid-gap:6px;color:#0f172a;display:grid;gap:6px;letter-spacing:.3px;margin:6px 0 0 16px;padding:0}@media (max-width:1024px){.header-bar,.lesson{grid-template-columns:1fr}.header-bar{text-align:center}.brand,.photo-slot{min-height:54px}.grid-row{grid-template-columns:100px repeat(5,1fr)}}@media (max-width:768px){.huddle-shell{padding:24px 16px 40px}.bingo-row{grid-template-columns:1fr}.grid-row{grid-template-columns:80px repeat(5,minmax(0,1fr))}.bottom-notes{grid-template-columns:1fr}.card{padding:14px}}.main-layout{grid-gap:16px;align-items:stretch;background:#0000;display:grid;flex:1 1;gap:16px;grid-template-columns:1fr;min-height:0;overflow:hidden;padding:16px}.chat-column{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 16px #2563eb1a;min-height:0;overflow:hidden}.chat-column,.chat-panel{display:flex;flex-direction:column;height:100%}.chat-panel{background:#0000;border:none;border-radius:0;box-shadow:none;color:#fff;color:var(--text-primary);overflow:visible;padding:0}.clear-chat-button{background:#0000;border:none;border-radius:4px;font-size:16px;opacity:.7;padding:4px 8px;transition:background .2s}.clear-chat-button:hover{background:#0000001a;opacity:1}.model-selector{background:var(--panel-bg);border:1px solid #ffffff08;border:1px solid var(--border);border-radius:6px;color:#000;cursor:pointer;font-family:inherit;font-size:13px;font-weight:600;outline:none;padding:6px 10px;transition:all .2s}.model-selector option{background:#fff;color:#000}.model-selector:hover:not(:disabled){background:var(--card-bg);border-color:#8b5cf6;border-color:var(--accent)}.model-selector:focus{border-color:#8b5cf6;border-color:var(--accent);box-shadow:0 0 0 2px #2563eb33}.model-selector:disabled{cursor:not-allowed;opacity:.6}.chat-body{background:linear-gradient(180deg,#fff,#f8fafc);display:flex;flex:1 1;flex-direction:column;gap:16px;min-height:0;overflow-y:auto;padding:24px 20px;scroll-behavior:smooth}.chat-body::-webkit-scrollbar{width:8px}.chat-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.chat-body::-webkit-scrollbar-thumb{background:#8b5cf6;background:var(--accent);border-radius:4px}.chat-body::-webkit-scrollbar-thumb:hover{background:#7c3aed;background:var(--accent-dark)}.chat-bubble{word-wrap:break-word;animation:fadeIn .3s ease-in;border-radius:16px;box-shadow:0 2px 8px #00000014;font-size:14px;line-height:1.6;max-width:85%;padding:14px 18px;position:relative}.chat-bubble h1,.chat-bubble h2,.chat-bubble h3,.chat-bubble h4,.chat-bubble h5,.chat-bubble h6{font-weight:700;line-height:1.3;margin:12px 0 8px}.chat-bubble h1{font-size:20px}.chat-bubble h2{font-size:18px}.chat-bubble h3{font-size:16px}.chat-bubble h4{font-size:15px}.chat-bubble h5,.chat-bubble h6{font-size:14px}.chat-bubble p{margin:8px 0}.chat-bubble p:first-child{margin-top:0}.chat-bubble p:last-child{margin-bottom:0}.chat-bubble ol,.chat-bubble ul{margin:8px 0;padding-left:24px}.chat-bubble li{margin:4px 0}.chat-bubble ul{list-style-type:disc}.chat-bubble ol{list-style-type:decimal}.chat-bubble code{background:#6366f114;border:none;border-radius:4px;color:#4f46e5;font-family:Courier New,monospace;font-size:13px;padding:2px 6px;word-break:break-all}.chat-bubble pre{background:#f8f9fa;border:none;border-radius:6px;margin:12px 0;overflow-x:auto;padding:12px}.chat-bubble pre code{background:#0000;border:none;color:inherit;font-size:13px;padding:0}.chat-bubble blockquote{background:#f9f9f9;border-left:4px solid #8b5cf6;border-left:4px solid var(--accent);border-radius:4px;font-style:italic;margin:12px 0;padding:8px 16px}.chat-bubble a{color:#4a90e2;text-decoration:underline}.chat-bubble a:hover{color:#357abd}.chat-bubble strong{color:#1b1b1b;font-weight:700}.chat-bubble em{font-style:italic}.chat-bubble hr{border:none;border-top:1px solid #e0e0e0;margin:16px 0}.chat-bubble table{border-collapse:collapse;display:table;font-size:13px;margin:12px 0;max-width:100%;overflow-x:auto;width:100%}.chat-bubble td,.chat-bubble th{word-wrap:break-word;border:1px solid #e0e0e0;overflow-wrap:break-word;padding:8px 12px;text-align:left}.chat-bubble th{background:#f5f5f5;font-weight:700}.chat-bubble tbody tr:nth-child(2n){background:#fafafa}.chat-bubble tbody tr:hover{background:#f0f0f0}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.chat-bubble.advisor{align-self:flex-start;background:#fff;border:1px solid #e9e3f7;border-left:4px solid #8b5cf6;border-left:4px solid var(--accent);color:#1f2937}.chat-bubble.user{align-self:flex-end;background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:1px solid #c4b5fd;border-right:4px solid #8b5cf6;border:1px solid var(--accent-light);border-right:4px solid var(--accent);color:#4c1d95;font-weight:500}.chat-bubble.loading-bubble{align-self:flex-start;background:#fff;border:1px solid #e9e3f7;border-left:4px solid #8b5cf6;border-left:4px solid var(--accent);color:#1f2937;padding:16px}.tool-status-chip{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;color:#475569;display:inline-flex;font-size:12px;gap:8px;line-height:1.2;margin-top:8px;max-width:100%;overflow:hidden;padding:5px 10px 5px 8px}.tool-status-chip .loading-dots{flex-shrink:0}.tool-status-chip .loading-dots span{background:#64748b;height:5px;width:5px}.tool-status-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-bubble .tool-status-label code{background:#0000;border:none;color:#334155;font-family:Courier New,monospace;font-size:12px;padding:0;word-break:normal}.loading-dots{align-items:center;display:flex;gap:6px}.loading-dots span{animation:loadingDot 1.4s ease-in-out infinite;background:#8b5cf6;background:var(--accent);border-radius:50%;height:8px;width:8px}.loading-dots span:first-child{animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes loadingDot{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.chat-input-container{background:linear-gradient(180deg,#fff,#f8fafc);border-top:1px solid #ffffff08;border-top:1px solid var(--border);box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:0;overflow:visible;padding:16px;width:100%}.chat-input-row{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:12px;box-sizing:border-box;min-width:0;padding:8px;transition:border-color .2s,box-shadow .2s;width:100%}.chat-input-row.wide{align-items:center;gap:10px;padding:10px}.chat-input-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.chat-action-buttons{align-items:center;display:flex;flex-shrink:0;gap:8px}.chat-action-buttons .image-upload-button.slim{background:linear-gradient(135deg,#fff,#eef2ff 45%,#dfe7ff);border:1px solid #4c6fff66;border-radius:14px;box-shadow:0 10px 24px #0f172a2e;font-size:18px;height:46px;min-width:46px;padding:10px 12px}.chat-action-buttons .image-upload-button.slim:hover:not(:disabled){border-color:#7f5af0;box-shadow:0 14px 28px #0f172a38;transform:translateY(-1px)}.chat-action-buttons .image-upload-button.slim:active:not(:disabled){box-shadow:0 8px 16px #0f172a2e;transform:translateY(0)}.model-selector{background:linear-gradient(135deg,#fff,#eef2ff 40%,#e3e8ff);border:1px solid #4f46e559;border-radius:14px;box-shadow:0 10px 24px #0f172a24;font-weight:700;height:46px;max-width:200px;min-width:160px;padding:0 12px}.clear-chat-button{background:linear-gradient(135deg,#f8fafc,#e9efff);border:1px solid #e2e8f0e6;border-radius:14px;box-shadow:0 10px 22px #0f172a29;cursor:pointer;flex-shrink:0;font-size:15px;height:46px;opacity:1;padding:10px 14px;transition:all .2s}.clear-chat-button:hover{background:linear-gradient(135deg,#e0e7ff,#d4dcff);border-color:#7f5af0;box-shadow:0 14px 26px #0f172a38;transform:translateY(-1px)}.chat-send-button{background:linear-gradient(135deg,#4c6fff,#7f5af0);border:none;border-radius:14px;box-shadow:0 16px 32px #4f46e559,inset 0 0 0 1px #ffffff59;height:46px;min-width:64px;padding:10px 18px}.chat-send-button .send-icon{filter:drop-shadow(0 3px 6px rgba(0,0,0,.25))}.chat-send-button .button-loading-dots span{background:#fff}.chat-input-row:focus-within{border-color:#8b5cf6;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.chat-input-row{position:relative}.owner-pill{align-items:center;border:1px solid #0000;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;gap:6px;letter-spacing:.04em;padding:6px 12px;text-transform:uppercase}.owner-pill.owner{background:#e0f2fe;border-color:#7dd3fc;color:#0c4a6e}.owner-pill.readonly{background:#fef3c7;border-color:#fbbf24;color:#92400e}.chat-model-row{align-items:center;display:flex;gap:10px;margin-top:10px}.chat-model-label{color:#fff;color:var(--text-primary);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.attachment-menu-wrapper{align-items:center;display:flex;position:relative}.chat-icon-button{align-items:center;display:inline-flex;gap:6px;justify-content:center}.attachment-button{background:linear-gradient(135deg,#f8fafc,#e9efff);border:1px solid #e2e8f0e6;border-radius:12px;box-shadow:0 10px 22px #0f172a29;color:#0f172a;display:inline-flex;height:40px;padding:0;transition:all .2s;width:40px}.attachment-button:hover:not(:disabled){background:linear-gradient(135deg,#e0e7ff,#d4dcff);border-color:#7f5af0;box-shadow:0 14px 26px #0f172a38;transform:translateY(-1px)}.attachment-menu{grid-gap:4px;background:#fff;border:1px solid #94a3b84d;border-radius:12px;bottom:calc(100% + 8px);box-shadow:0 14px 28px #0f172a2e;display:grid;gap:4px;left:0;min-width:200px;padding:6px;position:absolute;z-index:20}.attachment-menu-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#0f172a;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;padding:8px 10px}.attachment-menu-item:hover{background:#eef2ff}.attachment-button svg,.attachment-menu-item svg{height:16px;width:16px}.chat-textarea{background:#fff;border:none;border-radius:10px;box-sizing:border-box;color:#1b1b1b;min-height:56px;min-width:0;outline:none;padding:14px 16px;transition:all .2s;width:100%}.chat-textarea::placeholder{color:#999}.chat-textarea:focus{background:#fff}.chat-textarea:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.7}.chat-send-button{background:#8b5cf6;background:var(--accent);border:2px solid #8b5cf6;border:2px solid var(--accent);border-radius:8px;flex-shrink:0;font-size:18px;font-weight:700;height:44px;min-width:44px;padding:10px 16px;transition:all .2s}.chat-send-button:hover:not(:disabled){background:#7c3aed;background:var(--accent-dark);box-shadow:0 4px 8px #00000026;color:#fff;transform:translateY(-1px)}.chat-send-button:active:not(:disabled){box-shadow:0 2px 4px #0000001a;transform:translateY(0)}.chat-send-button:disabled{background:#e0e0e0;border-color:#d0d0d0;opacity:.5}.send-icon{font-size:20px;font-weight:700;line-height:1}.image-upload-button{align-items:center;background:#f0f0f0;border:2px solid #d0d0d0;border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;justify-content:center;padding:8px 12px;transition:all .2s}.image-upload-button:hover:not(:disabled){background:#e0e0e0;border-color:#8b5cf6;border-color:var(--accent);transform:translateY(-1px)}.image-upload-button:disabled{cursor:not-allowed;opacity:.5}.image-preview-container{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;margin-bottom:8px;padding:8px;position:relative}.image-preview{border-radius:6px;display:block;max-height:200px;max-width:100%}.remove-image-button{align-items:center;background:linear-gradient(135deg,#f8fafc,#e9efff);border:1px solid #e2e8f0e6;border-radius:10px;box-shadow:0 6px 14px #0f172a24;color:#0f172a;cursor:pointer;display:flex;height:28px;justify-content:center;position:absolute;right:4px;top:4px;transition:all .2s;width:28px}.remove-image-button:hover{background:linear-gradient(135deg,#e0e7ff,#d4dcff);border-color:#7f5af0;transform:translateY(-1px)}.file-preview-container .remove-image-button{position:static}.chat-message-image{border:2px solid #e0e0e0;border-radius:8px;display:block;margin-bottom:8px;max-height:300px;max-width:100%}.button-loading-dots{align-items:center;display:inline-flex;gap:4px}.button-loading-dots span{animation:loadingDot 1.4s ease-in-out infinite;background:#8b5cf6;background:var(--accent);border-radius:50%;height:6px;width:6px}.button-loading-dots span:first-child{animation-delay:-.32s}.button-loading-dots span:nth-child(2){animation-delay:-.16s}.lesson-player{background:#0a0a0a;background:var(--panel);border:1px solid #ffffff08;border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 32px #1e293b14;color:#0f172a;letter-spacing:.3px;margin-bottom:16px;padding:16px}.lesson-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.lesson-kicker{color:var(--text-secondary);font-size:11px;letter-spacing:.08em;margin:0;text-transform:uppercase}.lesson-header h3{margin:4px 0 0}.lesson-actions{align-items:center;display:flex;gap:8px}.lesson-form{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr;margin-bottom:12px}.lp-field label{display:block;font-weight:600;margin-bottom:6px}.lp-input,.lp-select,.lp-textarea{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:10px;box-shadow:0 2px 6px #0f172a0a;color:#0f172a;letter-spacing:.3px;outline:none;padding:10px 12px;width:100%}.lp-textarea{resize:vertical}.lp-select{width:auto}.lp-btn{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:10px;color:#0f172a;cursor:pointer;letter-spacing:.3px;padding:8px 14px;transition:all .2s ease}.lp-btn.primary{background:linear-gradient(135deg,#8b5cf6,#7c3aed);background:linear-gradient(135deg,var(--accent) 0,var(--accent-dark) 100%);border-color:#0000;color:#fff}.lp-btn.ghost{background:#f8fafc}.lp-btn:disabled{cursor:not-allowed;opacity:.6}.lp-error{background:#fff5f5;border:1px solid #e53e3e;border-radius:8px;color:#742a2a;margin-bottom:12px;padding:10px}.lesson-body{border-top:1px solid #ffffff08;border-top:1px solid var(--border);padding-top:12px}.lesson-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.lp-tab{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;color:#94a3b8;cursor:pointer;letter-spacing:.3px;padding:8px 12px;transition:all .2s ease}.lp-tab.active{background:#fff;border-color:#fff;color:#000}.lesson-content{display:flex;flex-direction:column;gap:12px}.lesson-meta{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.lesson-title{font-size:18px;font-weight:700;margin:0}.lesson-subtitle{color:var(--text-secondary);margin:6px 0 0}.lesson-meta-row{color:var(--text-secondary);display:flex;gap:12px}.lesson-sources{background:#f8fafc;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:10px;padding:10px}.lesson-sources-title{font-weight:700;margin:0 0 6px}.lesson-screen{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:12px;box-shadow:0 6px 18px #0f172a0d;padding:12px}.lesson-nav,.lesson-screen-header,.lp-actions-row{align-items:center;display:flex;gap:8px;justify-content:space-between}.lesson-screen-kicker{color:var(--text-secondary);font-size:11px;letter-spacing:.08em;margin:0;text-transform:uppercase}.lesson-screen-body{background:#f8fafc;border:1px dashed #ffffff08;border:1px dashed var(--border);border-radius:10px;margin-top:10px;padding:10px}.lesson-assessment{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:12px;box-shadow:0 6px 18px #0f172a0d;padding:12px}.lp-options{grid-gap:8px;display:grid;gap:8px}.lp-option{align-items:center;background:#f8fafc;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:10px;color:#0f172a;cursor:pointer;display:flex;gap:8px;letter-spacing:.3px;padding:8px 10px}.lp-option.selected{background:#e0e7ff;border-color:#8b5cf6;border-color:var(--accent)}.lp-ordering-options{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.lp-chip{background:#e0e7ff;border:1px solid #8b5cf6;border:1px solid var(--accent);border-radius:999px;color:#0f172a;padding:6px 10px}.lp-question{margin:10px 0}.lp-feedback{color:#0f5132;margin-top:8px}.lesson-takeaways{border-top:1px solid #ffffff08;border-top:1px solid var(--border);padding-top:10px}.lesson-score{color:var(--text-secondary);margin-top:8px}*{-webkit-font-smoothing:antialiased}.top-actions,.top-actions.compact{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#fff!important;border-bottom:1px solid #ffffff05!important;border-bottom:1px solid var(--border-soft)!important;box-shadow:none!important;min-height:56px}.left-rail{background:#fff!important;border-right:1px solid #ffffff05!important;border-right:1px solid var(--border-soft)!important}.side-rail{background:#0000!important;border-right:none!important;box-shadow:none!important;gap:8px!important;padding:14px 10px!important;width:72px}.rail-actions{gap:6px!important}.rail-btn{background:#0000!important;border:1px solid #0000!important;border-radius:14px!important;box-shadow:none!important;color:#fff!important;color:var(--ink)!important;transition:background .18s ease,transform .18s ease,box-shadow .18s ease!important}.rail-btn:hover{background:#111!important;background:var(--bg-hover)!important;box-shadow:none!important;transform:none!important}.rail-btn.icon{border-radius:12px!important;height:44px!important;width:44px!important}.rail-btn.primary{background:#0a0a0a!important;border:none!important;box-shadow:0 6px 16px #0000001f!important;color:#fff!important}.rail-btn.primary:hover{background:#1f1f1f!important;box-shadow:0 8px 20px #00000029!important}.rail-tooltip{background:#0a0a0a!important;border-radius:8px!important;color:#fff!important;font-weight:500;letter-spacing:-.005em}.icon-btn{background:#fff!important;border:1px solid #ffffff05!important;border:1px solid var(--border-soft)!important;border-radius:12px!important;box-shadow:none!important;color:#fff!important;color:var(--ink)!important;transition:background .18s ease,border-color .18s ease!important}.icon-btn:hover{background:#111!important;background:var(--bg-hover)!important;border-color:#ffffff08!important;border-color:var(--border)!important}.modal-button.primary{background:#0a0a0a!important;border-radius:9999px!important;border-radius:var(--r-pill)!important;box-shadow:0 6px 16px #0000001f;font-weight:600;padding:10px 20px}.modal-button.primary:hover:not(:disabled){background:#1f1f1f!important;box-shadow:0 8px 20px #0000002e}.modal-button,.modal-button.cancel{background:#fff!important;border:1px solid #ffffff08!important;border:1px solid var(--border)!important;border-radius:9999px!important;border-radius:var(--r-pill)!important;color:#fff!important;color:var(--ink)!important;font-weight:500}.modal-button.cancel:hover:not(:disabled){background:#111!important;background:var(--bg-hover)!important}.chat-sidebar{background:#fff!important;border-left:1px solid #ffffff05!important;border-left:1px solid var(--border-soft)!important;box-shadow:none!important}.chat-sidebar-header{background:#fff;border-bottom:1px solid #ffffff05;border-bottom:1px solid var(--border-soft)}.brand-kicker{letter-spacing:-.02em}.brand-tagline{color:#9ca3af!important;color:var(--muted)!important;letter-spacing:0!important}.gallery-card,.gallery-item{border:1px solid #ffffff05;border:1px solid var(--border-soft);border-radius:18px!important;box-shadow:0 4px 20px #000c!important;box-shadow:var(--shadow)!important;transition:transform .2s ease,box-shadow .2s ease!important}.gallery-item:hover{box-shadow:0 8px 40px #000000e6!important;box-shadow:var(--shadow-lg)!important;transform:translateY(-2px)}input[type=search],input[type=text],textarea{border:1px solid #ffffff08!important;border:1px solid var(--border)!important;border-radius:12px!important;transition:border-color .18s ease,box-shadow .18s ease}input[type=search]:focus,input[type=text]:focus,textarea:focus{border-color:#0a0a0a!important;box-shadow:0 0 0 3px #0000000f!important;outline:none!important}.save-status{color:#9ca3af;color:var(--muted);font-size:12px;font-weight:500}.owner-pill{background:#fff;border:1px solid #ffffff08;border:1px solid var(--border);border-radius:9999px;border-radius:var(--r-pill);font-size:11px;font-weight:600;padding:3px 10px}.owner-pill.owner{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.owner-pill.readonly{background:#f9fafb;color:#9ca3af;color:var(--muted)}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#ffffff0d;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#ffffff1a}::selection{background:#0a0a0a;color:#fff}:root{--pg-pg-bg:#0000;--pg-rail-bg:#0000;--pg-rail-border:#ffffff05;--pg-rail-icon:#64748b;--pg-rail-icon-active:#fff;--pg-rail-hover:#ffffff0a;--pg-rail-active-bg:#ffffff14;--pg-text:#fff;--pg-muted:#94a3b8;--pg-pill-bg:#fff;--pg-pill-border:#fff3;--pg-accent-glow:#ffffff40;--pg-input-shadow:0 8px 32px #00000080;--pg-card-shadow:0 12px 40px #0009;--pg-radius-card:16px}.side-rail.pptgen-rail{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f0f0fb3!important;border-right:1px solid #ffffff0d!important;box-shadow:none!important;display:flex;flex-direction:column;gap:10px;height:100%;padding:14px 0 18px;width:76px}.side-rail.pptgen-rail .rail-brand-mark{align-items:center;background:#0000;border-radius:12px;display:flex;height:40px;justify-content:center;margin:10px 0 8px;width:40px}.side-rail.pptgen-rail .rail-actions{align-items:center;display:flex;flex-direction:column;gap:2px;padding:4px 0;width:100%}.side-rail.pptgen-rail .rail-item{align-items:center;background:#0000;border:0;border-radius:10px;color:#64748b;color:var(--pg-rail-icon);cursor:pointer;display:flex;flex-direction:column;gap:4px;height:56px;justify-content:center;padding:6px 4px;position:relative;transition:background .15s ease,color .15s ease,transform .1s ease;width:60px}.side-rail.pptgen-rail .rail-item:hover{background:#ffffff0a;background:var(--pg-rail-hover)}.side-rail.pptgen-rail .rail-item.active,.side-rail.pptgen-rail .rail-item.subtle-active,.side-rail.pptgen-rail .rail-item:hover{color:#fff;color:var(--pg-rail-icon-active)}.side-rail.pptgen-rail .rail-item.active .rail-icon{background:#ffffff14;background:var(--pg-rail-active-bg);border:1px solid #fff3;box-shadow:0 0 10px #ffffff1a}.side-rail.pptgen-rail .rail-icon{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:10px;display:flex;height:36px;justify-content:center;transition:background .15s ease,border-color .15s ease;width:36px}.side-rail.pptgen-rail .rail-item.new .rail-icon{background:#fff;border-color:#fff3;box-shadow:0 4px 20px #ffffff40;color:#000}.side-rail.pptgen-rail .rail-item.new .rail-label{color:#e5e7eb}.side-rail.pptgen-rail .rail-label{color:inherit;font-size:11px;font-weight:500;letter-spacing:-.01em;line-height:1}.side-rail.pptgen-rail .rail-item.nudge{animation:pg-nudge 1.2s ease-in-out 2}@keyframes pg-nudge{0%,to{transform:translateX(0)}25%{transform:translateX(2px)}75%{transform:translateX(-2px)}}.side-rail.pptgen-rail .rail-tooltip{background:#0a0a0a;border-radius:6px;color:#fff;font-size:11px;left:70px;padding:5px 9px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:50}.top-actions.pptgen-topbar{-webkit-backdrop-filter:blur(12px) saturate(180%)!important;backdrop-filter:blur(12px) saturate(180%)!important;background:#0a0a14b3!important;border-bottom:1px solid #ffffff1a!important;box-shadow:0 4px 20px #0000004d!important;max-height:48px;min-height:48px;padding:4px 16px;z-index:100}.top-actions.pptgen-topbar .top-brand-center{display:flex;flex:1 1;justify-content:center}.top-actions.pptgen-topbar .brand-lesson{color:#fff}.top-actions.pptgen-topbar .brand-gen{background:linear-gradient(90deg,#c4b5fd,#a78bfa);-webkit-background-clip:text;background-clip:text;color:#0000}.top-actions.pptgen-topbar .brand-tagline{color:#e5e7eba6}.top-actions.pptgen-topbar .brand-circles span{background:linear-gradient(135deg,#c4b5fd,#818cf8)!important;box-shadow:0 0 8px #a88bfa80}.top-actions.pptgen-topbar .owner-pill{background:#a88bfa1a;border:1px solid #a88bfa33;border-radius:99px;color:#c4b5fd;font-size:10px;font-weight:700;letter-spacing:.05em;padding:2px 10px;text-transform:uppercase}.top-actions.pptgen-topbar .save-status{background:#ffffff0d;border-radius:4px;color:#e5e7eb73;font-size:11px;margin-right:8px;padding:2px 8px}.inline-gallery.pptgen-home{background:radial-gradient(900px 600px at 50% 35%,#1a1530 0,#1a153000 65%),linear-gradient(180deg,#0a0a14,#06060d);color:#f3f4f6;display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:0}.main-pane{background:#0000;display:flex;flex:1 1;flex-direction:column;overflow-x:hidden;overflow-y:auto;position:relative;z-index:1}.main-pane:before{display:none}.pptgen-home{flex:1 1}.pptgen-hero,.pptgen-home{display:flex;flex-direction:column;position:relative;z-index:1}.pptgen-hero{align-items:center;-webkit-mask-image:linear-gradient(180deg,#000 70%,#0000);mask-image:linear-gradient(180deg,#000 70%,#0000);min-height:480px;padding:0 24px}.pptgen-orb-wrap{height:min(720px,92vw);left:50%;pointer-events:auto;position:absolute;top:50%;transform:translate(-50%,-50%);width:min(720px,92vw);z-index:0}.pptgen-hero-content{align-items:center;display:flex;flex-direction:column;max-width:700px;padding-top:60px;pointer-events:none;position:relative;width:100%;z-index:2}.pptgen-hero-content>*{pointer-events:auto}.pptgen-hero-pill{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:9999px;color:#d1d5db;display:inline-flex;font-size:12px;gap:8px;margin-bottom:22px;padding:5px 14px 5px 5px}.pptgen-hero-pill .pill-tag{background:#fff;border-radius:9999px;color:#0a0a0a;font-size:10px;font-weight:700;letter-spacing:.04em;padding:3px 8px}.pptgen-hero-pill .pill-text{color:#fff;font-weight:500}.pptgen-hero-title{-webkit-text-fill-color:#0000;background:linear-gradient(180deg,#fff,#a1a1aa);-webkit-background-clip:text;background-clip:text;font-size:56px;font-weight:700;letter-spacing:-.04em;line-height:1.05;margin:0 0 16px;text-align:center;width:100%}.pptgen-hero-sub{color:#a1a1aa;font-size:16px;font-weight:400;letter-spacing:-.01em;line-height:1.55;margin:0 0 28px;max-width:500px;text-align:center}.pptgen-hero-form{-webkit-backdrop-filter:blur(24px) saturate(160%);backdrop-filter:blur(24px) saturate(160%);background:#14141466;border:1px solid #ffffff14;border-radius:26px;box-shadow:0 4px 24px #0003;max-width:680px;padding:16px 20px 12px;transition:all .4s cubic-bezier(.2,.8,.2,1);width:100%}.pptgen-hero-form:hover{background:#14141480;border-color:#ffffff26;box-shadow:0 12px 40px #00000080}.pptgen-hero-form:focus-within{border-color:#ffffff40;box-shadow:0 12px 48px #0009;transform:translateY(-1px)}.pptgen-hero-input{background:#0000;border:0;color:#f3f4f6;font-family:inherit;font-size:15px;line-height:1.5;max-height:200px;min-height:40px;outline:0;padding:6px 4px;resize:none;width:100%}.pptgen-hero-input::placeholder{color:#e5e7eb73}.pptgen-hero-bar{align-items:center;display:flex;justify-content:space-between;padding-top:6px}.pptgen-hero-bar-left,.pptgen-hero-bar-right{align-items:center;display:flex;gap:6px}.hero-tool-btn{align-items:center;background:#0000;border:1px solid #ffffff24;border-radius:50%;color:#cbd5e1;cursor:pointer;display:flex;height:32px;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease;width:32px}.hero-tool-btn:hover{background:#ffffff14;color:#fff}.hero-pill{align-items:center;background:#ffffff14;border:1px solid #ffffff1a;border-radius:9999px;color:#e5e7eb;display:inline-flex;font-size:13px;font-weight:500;gap:6px;height:32px;padding:0 12px}.hero-pill.ultra svg{color:#fff}.hero-speak-btn{align-items:center;background:#fff;border:1px solid #fff3;border-radius:9999px;box-shadow:0 4px 12px #0003;color:#000;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;height:38px;padding:0 18px;transition:all .3s cubic-bezier(.4,0,.2,1)}.hero-speak-btn:hover:not(:disabled){background:#fff;box-shadow:0 0 20px #fff6;transform:translateY(-1px)}.hero-speak-btn:active:not(:disabled){transform:translateY(0) scale(.97)}.hero-speak-btn:disabled{cursor:not-allowed;opacity:.5}.pptgen-hero-cta{display:flex;justify-content:center;margin-top:8px;width:100%}.pptgen-create-btn{align-items:center;background:linear-gradient(135deg,#4f8cff,#8b5cf6);border:none;border-radius:9999px;box-shadow:0 8px 24px #4f8cff59;color:#fff;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:10px;height:52px;padding:0 28px;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s ease,opacity .2s ease}.pptgen-create-btn:hover:not(:disabled){box-shadow:0 12px 32px #8b5cf680;transform:translateY(-1px)}.pptgen-create-btn:active:not(:disabled){transform:translateY(0) scale(.98)}.pptgen-create-btn:disabled{cursor:not-allowed;opacity:.55}.brand-dots{align-items:flex-end;display:inline-flex;gap:4px;height:14px}.brand-dot{animation:brandDotBounce 2s ease-in-out infinite;background:linear-gradient(135deg,#4f8cff,#8b5cf6);border-radius:50%;display:inline-block;height:6px;width:6px}.brand-dots .brand-dot:first-child{animation-delay:0s}.brand-dots .brand-dot:nth-child(2){animation-delay:.25s}.brand-dots .brand-dot:nth-child(3){animation-delay:.5s}@keyframes brandDotBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-6px)}}.pptgen-home #gallery-section{position:relative;z-index:1}.pptgen-home .gallery-grid.pptgen-grid{grid-gap:32px;box-sizing:border-box;display:grid;gap:32px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:0 auto;max-width:1200px;padding:80px 48px 120px;position:relative;width:100%}.pptgen-home .pptgen-grid .gallery-item{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(180deg,#141414b3,#050505b3);border:1px solid #ffffff1f;border-radius:16px;border-radius:var(--pg-radius-card);box-shadow:0 10px 30px #0009;cursor:pointer;overflow:hidden;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.pptgen-home .pptgen-grid .gallery-item:before{background:linear-gradient(135deg,#fff0,#fff0 50%,#ffffff4d);border-radius:inherit;content:"";inset:-1px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;padding:1px;pointer-events:none;position:absolute;transition:opacity .25s ease}.pptgen-home .pptgen-grid .gallery-item:hover{border-color:#ffffff80;box-shadow:0 20px 40px #000c,0 0 0 1px #fff3;transform:translateY(-6px)}.pptgen-home .pptgen-grid .gallery-item:hover:before{opacity:1}.pptgen-home .pptgen-grid .gallery-item-name{color:#f3f4f6;font-size:13px;font-weight:600;margin:0;padding:12px 14px}.pptgen-home .pptgen-grid .gallery-item-info{background:#0a0a12b3;border-top:1px solid #ffffff0f}.pptgen-home .pptgen-grid .gallery-item-preview{background:#0a0a14;position:relative}.pptgen-home .pptgen-grid .gallery-preview-iframe{background:#fff}.pptgen-home .gallery-empty-state.pptgen-empty{color:#cbd5e1;padding:24px;position:relative;text-align:center;z-index:1}.pptgen-home .gallery-empty-state.pptgen-empty .empty-title{color:#fff;font-size:17px;font-weight:600;margin:0 0 6px}.pptgen-home .gallery-empty-state.pptgen-empty .empty-sub{color:#cbd5e1;font-size:13px;margin:0 0 16px}.pptgen-gallery-section{align-items:baseline;box-sizing:border-box;display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:1280px;padding:8px 32px 0;position:relative;width:100%;z-index:1}.pptgen-gallery-title{align-items:center;color:#f3f4f6;display:flex;font-size:18px;font-weight:600;gap:10px;letter-spacing:-.01em;margin:0}.pptgen-gallery-title:before{background:linear-gradient(135deg,#c4b5fd,#818cf8);border-radius:50%;box-shadow:0 0 12px #a88bfab3;content:"";height:8px;width:8px}.pptgen-gallery-count{color:#e5e7eb80;font-size:12px;font-weight:500}.chat-input-container{background:#fff;border-top:1px solid #ffffff05;border-top:1px solid var(--pg-rail-border);padding:12px 14px}.chat-input-row{align-items:flex-end;background:#fff;border:1px solid #fff3;border:1px solid var(--pg-pill-border);border-radius:18px;box-shadow:0 8px 32px #00000080;box-shadow:var(--pg-input-shadow);display:flex;gap:8px;padding:8px 10px;transition:border-color .15s ease,box-shadow .15s ease}.chat-input-row:focus-within{border-color:#cbd5e1;box-shadow:0 1px 2px #0000000a,0 12px 28px #0f172a14}.chat-textarea{background:#0000;border:0!important;color:#fff;color:var(--pg-text);flex:1 1;font-family:inherit;font-size:14px;line-height:1.5;max-height:160px;min-height:28px;outline:0!important;padding:4px 6px!important;resize:none}.chat-textarea::placeholder{color:#9ca3af}.chat-send-button{align-items:center;background:#0a0a0a;border:0;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:background .15s ease,transform .05s ease;width:36px}.chat-send-button:hover:not(:disabled){background:#1f1f1f}.chat-send-button:active:not(:disabled){transform:scale(.96)}.chat-send-button:disabled{background:#d1d5db;cursor:not-allowed}.attachment-button{align-items:center;background:#0000;border:1px solid #fff3;border:1px solid var(--pg-pill-border);border-radius:50%;color:#4b5563;cursor:pointer;display:flex;height:32px;justify-content:center;transition:background .15s ease,color .15s ease;width:32px}.attachment-button:hover{background:#f3f4f6;color:#fff;color:var(--pg-text)}.layout-shell .left-rail{background:#0000!important;background:var(--pg-rail-bg)!important;border-right:none!important}.lesson-branding{display:none!important}.modal-overlay{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;background:#000000b3!important}.modal-content{background:linear-gradient(180deg,#16162a,#0f0f1e)!important;border:1px solid #a88bfa2e!important;border-radius:20px!important;box-shadow:0 24px 80px #0009,inset 0 0 0 1px #ffffff0a!important;color:#e5e7eb!important}.modal-header{background:#ffffff08!important;border-bottom:1px solid #ffffff0f!important;padding:20px 24px!important}.modal-header h2{color:#fff!important;font-weight:700!important;letter-spacing:-.01em!important}.modal-close{border-radius:8px!important;color:#e5e7eb99!important}.modal-close:hover:not(:disabled){background:#ffffff14!important;color:#fff!important}.modal-body{color:#d1d5db!important}.modal-body p{color:#9ca3af!important}.form-group label{color:#d1d5db!important;font-weight:500!important}.form-input,.form-textarea{background:#ffffff0d!important;border:1px solid #ffffff1a!important;border-radius:12px!important;color:#f3f4f6!important;font-size:14px!important;transition:border-color .2s ease,box-shadow .2s ease!important}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af80!important}.form-input:focus,.form-textarea:focus{border-color:#a88bfa80!important;box-shadow:0 0 0 3px #a88bfa1f!important;outline:none!important}.form-input:disabled,.form-textarea:disabled{background:#ffffff05!important;color:#6b7280!important;opacity:.6!important}.form-input[style],select.form-input{background-color:#ffffff0d!important;border:1px solid #ffffff1a!important;color:#f3f4f6!important}select.form-input option{background:#16162a;color:#f3f4f6}.modal-footer{border-top:1px solid #ffffff0f!important}.modal-button{border:1px solid #ffffff1a!important;border-radius:12px!important;font-weight:600!important;transition:all .2s ease!important}.modal-button.cancel{background:#ffffff0f!important;border:1px solid #ffffff1a!important;color:#d1d5db!important}.modal-button.cancel:hover:not(:disabled){background:#ffffff1a!important;color:#fff!important}.modal-button.primary{background:linear-gradient(135deg,#7c3aed,#6366f1)!important;border:none!important;box-shadow:0 6px 20px #7c3aed59!important;color:#fff!important}.modal-button.primary:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf6,#818cf8)!important;box-shadow:0 8px 28px #7c3aed73!important;transform:translateY(-1px)!important}.modal-button.danger{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;border:none!important;box-shadow:0 6px 20px #dc26264d!important}.modal-button.danger:hover:not(:disabled){background:linear-gradient(135deg,#ef4444,#dc2626)!important;box-shadow:0 8px 28px #dc262666!important}.delete-warning h3{color:#fff!important}.delete-warning p{color:#9ca3af!important}.template-creating h3{color:#fff!important}.template-creating p{color:#9ca3af!important}.step-item{background:#ffffff0a!important;border-radius:10px!important;color:#d1d5db!important}.pptgen-home .pptgen-grid .gallery-item{-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important;background:linear-gradient(180deg,#1e1e34d9,#10101ee6)!important;border:1px solid #a88bfa1f!important;border-radius:18px!important;box-shadow:0 8px 32px #0006,inset 0 0 0 1px #ffffff05!important}.pptgen-home .pptgen-grid .gallery-item:hover{border-color:#a88bfa73!important;box-shadow:0 20px 50px #6366f140,0 8px 24px #00000080,inset 0 0 0 1px #a88bfa26!important;transform:translateY(-6px)!important}.pptgen-home .pptgen-grid .gallery-item-preview{background:linear-gradient(180deg,#0d0d1a,#08080f)!important;border-bottom:1px solid #ffffff0a}.pptgen-home .pptgen-grid .gallery-item-info{background:#0c0c16cc!important;border-top:1px solid #ffffff0a!important;padding:12px 14px}.pptgen-home .pptgen-grid .gallery-item-name{color:#f3f4f6!important;font-size:14px!important;font-weight:600!important;letter-spacing:-.01em}.gallery-preview-loading{background:linear-gradient(180deg,#0d0d1a,#08080f)!important}.gallery-preview-pending{color:#9ca3af!important}.pptgen-gallery-title{color:#fff!important}.pptgen-home .gallery-empty-state.pptgen-empty{padding:48px 24px!important}.pptgen-home .gallery-empty-state.pptgen-empty .empty-title{color:#fff!important;font-size:20px!important;font-weight:700!important;letter-spacing:-.02em;margin-bottom:8px!important}.pptgen-home .gallery-empty-state.pptgen-empty .empty-sub{color:#cbd5e1b3!important;font-size:14px!important;line-height:1.6;margin:0 auto;max-width:400px}.pptgen-home .gallery-empty-state.pptgen-empty .empty-sub strong{color:#c4b5fd}.lesson-frame .gallery-empty-state.pptgen-empty{background:linear-gradient(180deg,#0f0f1e,#0a0a14);border-radius:18px}.lesson-frame .gallery-empty-state.pptgen-empty .empty-title{color:#fff!important}.lesson-frame .gallery-empty-state.pptgen-empty .empty-sub{color:#9ca3af!important}.copy-modal .modal-content,.deploy-modal .modal-content{background:linear-gradient(180deg,#16162a,#0f0f1e)!important}.image-preview-grid{background:#ffffff08!important;border:1px solid #ffffff14!important;border-radius:12px!important}.file-upload-area{background:#ffffff08!important;border-color:#ffffff1a!important;color:#9ca3af!important}.modal-content::-webkit-scrollbar-thumb{background:#ffffff1a!important}.modal-content::-webkit-scrollbar-track{background:#0000!important}.image-upload-button{background:#ffffff0f!important;border:1px solid #ffffff1f!important;border-radius:12px!important;color:#d1d5db!important;transition:all .2s ease!important}.image-upload-button:hover:not(:disabled){background:#ffffff1a!important;border-color:#a88bfa59!important;color:#fff!important}.image-preview-container{background:#ffffff08!important;border:1px solid #ffffff14!important;border-radius:10px!important}.modal-body>p[style]{color:#9ca3af!important}option{background:#16162a!important;color:#f3f4f6!important}.chat-sidebar{background:linear-gradient(180deg,#12121e,#0d0d18)!important;border-left:1px solid #ffffff0f!important;box-shadow:-4px 0 20px #0000004d!important}.chat-sidebar-header{background:#ffffff08!important;border-bottom:1px solid #ffffff0f!important}.chat-sidebar-title{color:#e5e7eb!important}.chat-sidebar-actions .icon-btn{background:#ffffff0f!important;border:1px solid #ffffff1a!important;color:#d1d5db!important}.chat-sidebar-actions .icon-btn:hover{background:#ffffff1a!important;color:#fff!important}.chat-sidebar-body{color:#d1d5db}.chat-sidebar-body p{color:#9ca3af!important}.lesson-column{border:1px solid #ffffff0f!important;box-shadow:none!important}.lesson-column,.lesson-column.canvas{background:#0a0a14!important}.lesson-frame{background:linear-gradient(180deg,#0e0e1c,#0a0a14)!important;border:1px solid #ffffff0f!important;box-shadow:0 10px 30px #0000004d!important}.lesson-loading-overlay{background:#0a0a14f2!important}.lesson-loading-text{color:#e5e7eb!important}.lesson-error-overlay{background:#0a0a14f2!important}.lesson-error-title{color:#fff!important}.lesson-error-message{color:#9ca3af!important}.main-pane{background:#0a0a14}.icon-btn{background:#ffffff0f!important;border:1px solid #ffffff1a!important;color:#d1d5db!important}.icon-btn:hover{background:#ffffff1a!important;border-color:#ffffff2e!important;color:#fff!important}.chat-sidebar-body div[style],.chat-sidebar-body div[style] p{color:#9ca3af!important}.artifacts-header{background:#ffffff08!important;border-bottom:1px solid #ffffff0f!important;color:#e5e7eb!important}.inline-gallery{background:#0a0a14!important;overflow-x:hidden;padding:0!important}.clean-gallery-grid{grid-gap:24px 20px;display:grid;gap:24px 20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin:0 auto;max-width:1400px;padding:20px;width:100%}@media (max-width:768px){.clean-gallery-grid{gap:20px 16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));padding:12px}}.clean-gallery-item{display:flex;flex-direction:column;gap:12px;width:100%}.clean-gallery-thumbnail{aspect-ratio:16/9;background:#11111a;border:1px solid #ffffff14;border-radius:12px;box-shadow:0 4px 12px #0000001a;container-type:inline-size;cursor:pointer;overflow:hidden;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;width:100%}.clean-gallery-thumbnail:hover{border-color:#a88bfa4d;box-shadow:0 12px 24px #0003;transform:translateY(-4px)}.thumbnail-inner{border-radius:11px;height:100%;inset:0;overflow:hidden;position:absolute;width:100%}.clean-preview-iframe{background:#fff;border:none;height:720px;left:0;opacity:0;pointer-events:none;position:absolute;top:0;transform:scale(calc(100cqw/1280));transform-origin:top left;transition:opacity .5s ease;width:1280px}.clean-preview-iframe.pdf-preview{height:100%;transform:none;width:100%}.clean-preview-iframe.loaded{opacity:1}.clean-gallery-thumbnail:hover .clean-preview-iframe.loaded{filter:blur(2px);opacity:.3}.clean-thumbnail-overlay{align-items:center;background:#11111ab3;display:flex;flex-direction:column;gap:12px;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity .2s ease;z-index:10}.clean-gallery-thumbnail:hover .clean-thumbnail-overlay{opacity:1}.clean-action-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.clean-action-btn:hover{background:#fff3;transform:scale(1.05)}.clean-action-btn.pptx:hover{border-color:#2dd4bf;color:#2dd4bf}.clean-action-btn.pdf:hover{border-color:#a78bfa;color:#a78bfa}.clean-gallery-info{display:flex;flex-direction:column;gap:4px;padding:0 4px}.clean-gallery-title{color:#e5e7eb;font-size:14px;font-weight:600;line-height:1.4;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clean-gallery-meta{align-items:center;color:#9ca3af;display:flex;font-size:12px;gap:6px}.clean-meta-icon{font-size:14px}.clean-meta-icon,.clean-pending-state{align-items:center;display:flex;justify-content:center}.clean-pending-state{background:#11111a;color:#9ca3af;flex-direction:column;font-size:13px;height:100%}.clean-pending-state .gallery-loading-spinner{margin-bottom:8px}