*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Comic Sans MS,Chalkboard SE,Comic Neue,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh}code{font-family:Courier New,monospace}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes rainbow{0%{color:red}16%{color:#ff7f00}33%{color:#ff0}50%{color:#0f0}66%{color:#00f}83%{color:indigo}to{color:#9400d3}}.bounce{animation:bounce 1s infinite}.pulse{animation:pulse 2s infinite}.home-page{align-items:center;display:flex;flex-direction:column;min-height:100vh;padding:40px 20px}.home-header{margin-bottom:60px;position:relative;text-align:center}.auth-section{gap:15px;position:absolute;right:20px;top:0}.auth-section,.user-info{align-items:center;display:flex}.user-info{color:#fff;font-size:16px;gap:10px}.logout-btn{background:#fff3;border:2px solid #fff;border-radius:15px;color:#fff;cursor:pointer;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:14px;padding:6px 12px;transition:all .3s ease}.logout-btn:hover{background:#fff;color:#667eea}.logo{align-items:center;display:flex;gap:15px;justify-content:center;margin-bottom:20px}.logo h1,.logo-icon{color:gold}.logo h1{font-size:64px;font-weight:700;margin:0;text-shadow:3px 3px 6px #00000080,0 0 20px #ffd70080}.tagline{color:#fff;font-size:24px;font-weight:700;text-shadow:2px 2px 4px #0000004d}.home-main{max-width:1200px;width:100%}.hero-section{margin-bottom:50px;text-align:center}.hero-section h2{color:#fff;font-size:42px;margin-bottom:15px;text-shadow:2px 2px 4px #0000004d}.hero-section p{color:#ffffffe6;font-size:20px}.mode-cards{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:50px}.mode-card{cursor:pointer;overflow:hidden;position:relative;text-align:center}.mode-card:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.mode-card:hover:before{left:100%}.mode-icon{margin-bottom:20px}.mode-card h3{color:#333;font-size:28px;margin-bottom:15px}.mode-card p{color:#666;font-size:16px;line-height:1.6;margin-bottom:20px}.mode-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;display:inline-block;font-size:14px;font-weight:700;margin-top:10px;padding:8px 16px}.action-buttons{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.home-footer{color:#fffc;font-size:16px;margin-top:auto;padding-top:40px;text-align:center}@media (max-width:768px){.logo h1{font-size:48px}.hero-section h2{font-size:32px}.mode-cards{grid-template-columns:1fr}}.natural-language-mode{display:flex;flex-direction:column;height:100%;overflow-y:auto;padding:30px}.mode-header{margin-bottom:30px;text-align:center}.mode-icon{animation:bounce 2s infinite;margin-bottom:15px}.mode-header h2{color:#333;font-size:32px;margin-bottom:10px}.mode-header p{color:#666;font-size:18px}.mode-content{flex:1 1;margin:0 auto;max-width:800px;width:100%}.input-section{margin-bottom:25px}.input-label{color:#333;display:block;font-size:18px;font-weight:700;margin-bottom:10px}.description-textarea,.input-label{font-family:Comic Sans MS,Chalkboard SE,sans-serif}.description-textarea{border:3px solid #667eea;border-radius:15px;font-size:16px;min-height:200px;padding:16px;resize:vertical;transition:all .3s ease;width:100%}.description-textarea:focus{border-color:#764ba2;box-shadow:0 0 0 3px #667eea33;outline:none}.examples-section{margin:30px 0}.examples-section h3{color:#333;font-size:20px;margin-bottom:15px}.example-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.example-card{background:#f8f9fa;border:2px dashed #667eea;border-radius:15px;cursor:pointer;padding:20px;transition:all .3s ease}.example-card:hover{background:#e8e9ff;border-color:#764ba2;transform:translateY(-3px)}.example-card strong{color:#667eea;display:block;font-size:16px;margin-bottom:8px}.example-card p{color:#666;font-size:14px;margin:0}.compile-btn{align-items:center;display:flex;font-size:20px;gap:10px;justify-content:center;margin-top:30px;padding:16px;width:100%}.compile-btn:disabled{cursor:not-allowed;opacity:.6}.dsl-mode{background:#fff;display:flex;flex-direction:column;height:100%}.dsl-header{background:#fafafa;border-bottom:2px solid #e0e0e0;justify-content:space-between;padding:20px}.dsl-header,.header-left{align-items:center;display:flex}.header-left{gap:15px}.mode-icon{color:#667eea}.header-left h2{color:#333;font-size:24px;margin:0}.header-left p{color:#666;font-size:14px;margin:0}.header-right{align-items:center;display:flex;gap:15px}.app-name-input{border:2px solid #e0e0e0;border-radius:10px;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:14px;min-width:150px;padding:8px 12px}.compile-btn-header{align-items:center;display:flex;font-size:14px;gap:8px;padding:10px 20px}.dsl-toolbar{background:#f8f9fa;border-bottom:1px solid #e0e0e0;flex-wrap:wrap;gap:15px;padding:15px 20px}.dsl-toolbar,.toolbar-section{align-items:center;display:flex}.toolbar-section{gap:10px}.toolbar-label{color:#666;font-size:14px;font-weight:700}.toolbar-btn{background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:12px;font-weight:700;padding:6px 12px;transition:all .3s ease}.toolbar-btn:hover{background:#667eea;color:#fff;transform:translateY(-2px)}.dsl-editor-container{flex:1 1;overflow:hidden}.dsl-help{align-items:flex-start;background:#fff9e6;border-top:2px solid gold;display:flex;gap:15px;padding:15px 20px}.dsl-help svg{color:orange;flex-shrink:0;margin-top:2px}.help-content{flex:1 1}.help-content strong{color:#333;display:block;margin-bottom:8px}.help-content ul{color:#666;font-size:14px;margin:0;padding-left:20px}.help-content li{margin-bottom:4px}.visual-builder-mode{background:#fff;display:flex;flex-direction:column;height:100%}.visual-header{align-items:center;background:#fafafa;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.visual-content{display:flex;flex:1 1;overflow:hidden}.widget-palette{background:#fafafa;border-right:2px solid #e0e0e0;overflow-y:auto;padding:20px;width:250px}.widget-palette h3{color:#333;font-size:18px;margin-bottom:15px}.widget-list{display:flex;flex-direction:column;gap:10px;margin-bottom:30px}.widget-item{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:10px;cursor:pointer;display:flex;gap:10px;padding:12px;transition:all .3s ease}.widget-item:hover{border-color:#667eea;transform:translateX(5px)}.widget-icon{font-size:24px}.canvas-area{background:#fff;display:flex;flex:1 1;flex-direction:column}.canvas-header{background:#fafafa;border-bottom:2px solid #e0e0e0;padding:15px 20px}.canvas-header h3{color:#333;font-size:18px;margin:0}.canvas{background:#f5f5f5;flex:1 1;overflow-y:auto;padding:30px;position:relative}.canvas-widget{background:#fff;border:2px dashed #e0e0e0;border-radius:10px;cursor:pointer;margin-bottom:15px;padding:15px;position:relative;transition:all .3s ease}.canvas-widget:hover{border-color:#667eea}.canvas-widget.selected{border-color:#667eea;border-style:solid;box-shadow:0 0 0 3px #667eea33}.delete-widget-btn{align-items:center;background:#f44;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;opacity:0;position:absolute;right:5px;top:5px;transition:opacity .3s;width:24px}.canvas-widget:hover .delete-widget-btn{opacity:1}.widget-preview{align-items:center;display:flex;min-height:40px}.preview-button{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:10px 20px}.preview-image{background:#e0e0e0;border-radius:8px;height:100px;width:100px}.empty-canvas,.preview-image{align-items:center;display:flex;justify-content:center}.empty-canvas{color:#999;font-size:18px;height:100%}.properties-panel{background:#fafafa;border-left:2px solid #e0e0e0;overflow-y:auto;padding:20px;width:300px}.properties-panel h3{color:#333;font-size:18px;margin-bottom:20px}.property-field{margin-bottom:20px}.property-field label{color:#333;display:block;font-size:14px;font-weight:700;margin-bottom:8px}.no-selection{color:#999;padding:40px 20px;text-align:center}.screens-section{border-top:2px solid #e0e0e0;margin-top:30px;padding-top:30px}.screens-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.screens-header h3{font-size:16px;margin:0}.add-screen-btn{align-items:center;background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:12px;gap:5px;padding:6px 12px}.screens-list{display:flex;flex-direction:column;gap:8px}.screen-tab{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;padding:10px;text-align:left;transition:all .3s ease}.screen-tab.active,.screen-tab:hover{border-color:#667eea}.screen-tab.active{background:#667eea;color:#fff}.preview-panel{background:#fff;height:100%}.preview-header{align-items:center;background:#fafafa;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:15px 20px}.preview-header h3{color:#333;font-size:18px;margin:0}.preview-controls{align-items:center;display:flex;gap:15px}.status-indicator{align-items:center;color:#666;display:flex;font-size:14px;gap:8px}.status-indicator.success{color:#4caf50}.status-indicator.error{color:#f44336}.refresh-btn{background:none;border:none;border-radius:8px;color:#667eea;cursor:pointer;padding:8px;transition:all .3s ease}.refresh-btn:hover{background:#f0f0f0;transform:rotate(180deg)}.preview-content{flex:1 1;overflow:hidden;position:relative}.preview-iframe{border:none;height:100%;width:100%}.preview-error,.preview-loading{align-items:center;background:#fffffff2;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.preview-error{padding:40px;text-align:center}.preview-error svg{color:#f44336;margin-bottom:20px}.preview-error p{color:#666;font-size:16px;margin-bottom:20px}.preview-loading svg{color:#667eea;margin-bottom:20px}.preview-loading p{color:#333;font-size:18px;font-weight:700}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinning{animation:spin 1s linear infinite}.editor-page{background:#f5f5f5;display:flex;flex-direction:column;height:100vh}.editor-header{align-items:center;background:#fff;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:15px 20px;z-index:100}.editor-header-left,.editor-header-right{align-items:center;display:flex;gap:15px}.project-name-input{border:2px solid #e0e0e0;border-radius:10px;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:16px;min-width:200px;padding:8px 12px}.project-name-input:focus{border-color:#667eea;outline:none}.mode-tabs{display:flex;gap:10px}.mode-tab{background:#fff;border:2px solid #e0e0e0;border-radius:20px;cursor:pointer;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:14px;font-weight:700;padding:10px 20px;transition:all .3s ease}.mode-tab:hover{border-color:#667eea;transform:translateY(-2px)}.mode-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.icon-btn{background:none;border:none;border-radius:8px;color:#667eea;cursor:pointer;padding:8px;transition:all .3s ease}.icon-btn:hover{background:#f0f0f0;transform:scale(1.1)}.editor-content{display:flex;flex:1 1;overflow:hidden}.editor-panel{background:#fff;border-right:2px solid #e0e0e0}.editor-panel,.preview-panel{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.preview-panel{background:#fafafa}@media (max-width:1024px){.editor-content{flex-direction:column}.editor-panel{border-bottom:2px solid #e0e0e0;border-right:none}}.projects-page{display:flex;flex-direction:column;min-height:100vh;padding:40px 20px}.projects-header{margin:0 auto 40px;max-width:1200px;width:100%}.header-content{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.projects-header h1{color:#fff;font-size:48px;margin:0;text-shadow:2px 2px 4px #0000004d}.projects-main{margin:0 auto;max-width:1200px;width:100%}.projects-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{cursor:pointer;position:relative;transition:all .3s ease}.project-card:hover{transform:translateY(-5px)}.project-card-header{align-items:flex-start;display:flex;gap:15px;margin-bottom:20px}.project-icon{color:#667eea;flex-shrink:0}.project-info{flex:1 1}.project-info h3{color:#333;font-size:20px;margin:0 0 8px}.project-meta{color:#999;font-size:14px;margin:0;text-transform:capitalize}.project-card-actions{border-top:1px solid #e0e0e0;display:flex;gap:10px;justify-content:flex-end;padding-top:15px}.action-btn{background:#f5f5f5;border:none;border-radius:8px;color:#666;cursor:pointer;padding:8px;transition:all .3s ease}.action-btn:hover{background:#e0e0e0;transform:scale(1.1)}.action-btn.delete:hover{background:#ffebee;color:#f44336}.empty-state{color:#fff;padding:80px 20px;text-align:center}.empty-state svg{margin-bottom:20px;opacity:.7}.empty-state h2{font-size:32px;margin-bottom:15px}.empty-state p{font-size:18px;margin-bottom:30px;opacity:.9}.loading-state{align-items:center;color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:60vh}.loading-state svg{margin-bottom:20px}.loading-state p{font-size:18px}@media (max-width:768px){.projects-grid{grid-template-columns:1fr}.projects-header h1{font-size:36px}}.tutorials-page{min-height:100vh;padding:40px 20px}.tutorials-header{margin-bottom:50px;text-align:center}.tutorials-header h1{color:#fff;font-size:48px;margin-bottom:15px;text-shadow:2px 2px 4px #0000004d}.tutorials-header p{color:#ffffffe6;font-size:20px}.tutorials-main{margin:0 auto;max-width:1200px}.challenges-section,.progress-section,.tutorials-section{margin-bottom:60px}.challenges-section h2,.progress-section h2,.tutorials-section h2{align-items:center;color:#fff;display:flex;font-size:32px;gap:15px;margin-bottom:30px;text-shadow:2px 2px 4px #0000004d}.challenges-grid,.tutorials-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.challenge-card,.tutorial-card{display:flex;flex-direction:column}.tutorial-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.tutorial-icon{font-size:48px}.tutorial-meta{align-items:flex-end;display:flex;flex-direction:column;gap:5px}.difficulty-badge{border-radius:12px;font-size:12px;font-weight:700;padding:4px 12px;text-transform:uppercase}.difficulty-badge.easy{background:#c8e6c9;color:#2e7d32}.difficulty-badge.medium{background:#fff9c4;color:#f57f17}.difficulty-badge.hard{background:#ffccbc;color:#d84315}.duration{color:#999;font-size:12px}.challenge-card h3,.tutorial-card h3{color:#333;font-size:22px;margin-bottom:10px}.challenge-card p,.tutorial-card p{color:#666;flex:1 1;font-size:16px;margin-bottom:20px}.tutorial-lessons{margin-bottom:20px}.tutorial-lessons strong{color:#333;display:block;margin-bottom:10px}.tutorial-lessons ul{list-style:none;margin:0;padding:0}.tutorial-lessons li{align-items:center;color:#666;display:flex;font-size:14px;gap:10px;padding:8px 0}.completed-icon{color:#4caf50}.lesson-bullet{color:#667eea;font-weight:700}.challenge-btn,.tutorial-btn{align-items:center;display:flex;gap:8px;justify-content:center;width:100%}.challenge-badge-large{font-size:64px;margin-bottom:15px;text-align:center}.challenge-meta{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.completed-badge{align-items:center;color:#4caf50;display:flex;font-size:14px;font-weight:700;gap:5px}.progress-card{padding:40px}.progress-stats{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat{text-align:center}.stat-value{color:#667eea;font-size:48px;font-weight:700;margin-bottom:10px}.stat-label{color:#666;font-size:16px}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:800px;width:100%}.modal-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 30px}.modal-header h2{color:#333;font-size:24px;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#999;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;padding:0;transition:all .3s ease;width:40px}.modal-close:hover{background:#f0f0f0;color:#333}.modal-body{flex:1 1;overflow-y:auto;padding:30px}.challenge-content,.tutorial-content{margin-bottom:20px}.challenge-content pre,.tutorial-content pre{color:#333;font-size:16px;line-height:1.8}.tutorial-lessons-detail{border-top:2px solid #e0e0e0;margin-top:30px;padding-top:20px}.tutorial-lessons-detail h3{color:#333;font-size:18px;margin-bottom:15px}.tutorial-lessons-detail ul{list-style:none;padding:0}.tutorial-lessons-detail li{border-bottom:1px solid #f0f0f0;padding:12px 0}.tutorial-lessons-detail li:last-child{border-bottom:none}.tutorial-lessons-detail strong{color:#667eea;display:block;margin-bottom:5px}.challenge-starter-code{border-top:2px solid #e0e0e0;margin-top:20px;padding-top:20px}.challenge-starter-code h3{color:#333;font-size:18px;margin-bottom:15px}.challenge-starter-code pre{color:#333;font-size:14px;line-height:1.6}.modal-footer{border-top:2px solid #e0e0e0;display:flex;gap:15px;justify-content:flex-end;padding:20px 30px}@media (max-width:768px){.tutorials-header h1{font-size:36px}.challenges-grid,.tutorials-grid{grid-template-columns:1fr}.modal-content{max-height:95vh}.modal-body,.modal-footer,.modal-header{padding:15px 20px}}.login-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-container{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:40px;width:100%}.login-header{margin-bottom:30px;text-align:center}.logo-icon{animation:bounce 2s infinite;color:#667eea;margin-bottom:15px}.login-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#333;font-size:42px;margin-bottom:10px}.login-header p{color:#666;font-size:18px}.login-tabs{border-bottom:2px solid #e0e0e0;display:flex;gap:10px;margin-bottom:30px}.tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#999;cursor:pointer;display:flex;flex:1 1;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:16px;font-weight:700;gap:8px;justify-content:center;padding:15px;transition:all .3s ease}.tab.active,.tab:hover{color:#667eea}.tab.active{border-bottom-color:#667eea}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#333;font-size:14px;font-weight:700}.form-group small{color:#999;font-size:12px}.error-message{background:#ffebee;border-radius:8px;color:#c62828;font-size:14px;padding:12px;text-align:center}.login-btn{margin-top:10px;width:100%}.login-footer{margin-top:30px;text-align:center}.link-btn{background:none;border:none;color:#667eea;cursor:pointer;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:14px;text-decoration:underline}.link-btn:hover{color:#764ba2}.App{display:flex;flex-direction:column;min-height:100vh}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:25px;box-shadow:0 4px 15px #0003;color:#fff;cursor:pointer;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:18px;font-weight:700;padding:12px 24px;transition:all .3s ease}.btn-primary:hover{box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#fff;border:3px solid #667eea;border-radius:25px;color:#667eea;cursor:pointer;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:18px;font-weight:700;padding:12px 24px;transition:all .3s ease}.btn-secondary:hover{background:#667eea;color:#fff;transform:translateY(-2px)}.card{background:#fff;border-radius:20px;box-shadow:0 8px 32px #0000001a;padding:24px;transition:all .3s ease}.card:hover{box-shadow:0 12px 40px #00000026;transform:translateY(-5px)}.input-kid{border:3px solid #667eea;border-radius:15px;font-family:Comic Sans MS,Chalkboard SE,sans-serif;font-size:16px;padding:12px 16px;transition:all .3s ease}.input-kid:focus{border-color:#764ba2;box-shadow:0 0 0 3px #667eea33;outline:none}
/*# sourceMappingURL=main.7d2a0e26.css.map*/