@import "https://fonts.googleapis.com/css2?family=Fredoka+One&family=Nunito:wght@400;700;900&display=swap";.splash-screen{z-index:9999;background:0 0;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.splash-content{text-align:center;flex-direction:column;align-items:center;display:flex}.splash-avatar{border-radius:50%;width:100px;height:100px;margin-bottom:20px;animation:3s ease-in-out infinite float}.splash-logo{color:#3b82f6;margin:0;font-family:Fredoka One,cursive;font-size:4rem}.splash-tagline{color:#64748b;margin:10px 0 30px;font-size:1.2rem}.splash-bar-container{background:#ffffff80;border-radius:4px;width:200px;height:8px;overflow:hidden}.splash-bar{background:linear-gradient(90deg,#3b82f6,#ec4899);border-radius:4px;width:0%;height:100%;animation:2s cubic-bezier(.4,0,.2,1) forwards loadSplash}@keyframes loadSplash{0%{width:0%}50%{width:70%}to{width:100%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.page-transition{transition:opacity .3s ease-in-out,transform .3s ease-in-out}.page-transition.fade-in{opacity:1;transform:translateY(0)}.page-transition.fade-out{opacity:0;transform:translateY(10px)}:root{--bg-color:#f8fafc;--primary:#0ea5e9;--primary-dark:#0284c7;--secondary:#ec4899;--secondary-dark:#db2777;--accent:#f59e0b;--text-main:#1e293b;--card-bg:#ffffff59;--card-border:#fff9;--glass-blur:blur(40px)}body,html{color:var(--text-main);background-color:#a18cd1;background-image:radial-gradient(circle at 20% 30%,#00f2fecc 0%,#0000 60%),radial-gradient(circle at 80% 40%,#84fab0cc 0%,#0000 60%),radial-gradient(circle at 50% 80%,#fa709a99 0%,#0000 60%),linear-gradient(135deg,#c2e9fb 0%,#a1c4fd 100%);background-attachment:fixed;width:100vw;height:100vh;margin:0;padding:0;font-family:Nunito,sans-serif;overflow:hidden}h1,h2,h3{letter-spacing:1px;font-family:Fredoka One,cursive}#root{width:100%;height:100%}.button{background:var(--secondary);color:#fff;cursor:pointer;box-shadow:0 8px 0 var(--secondary-dark);border:none;border-radius:50px;justify-content:center;align-items:center;padding:16px 32px;font-family:Fredoka One,cursive;font-size:1.25rem;transition:transform .1s;display:inline-flex}.button:active{box-shadow:0 0 0 var(--secondary-dark);transform:translateY(8px)}.button-primary{background:var(--primary);box-shadow:0 8px 0 var(--primary-dark)}.button-primary:active{box-shadow:0 0 0 var(--primary-dark)}.button-success{background:#10b981;box-shadow:0 8px #059669}.button-success:active{box-shadow:0 0 #059669}.canvas-container{z-index:1;background:#f8fafc;width:100vw;height:100vh;position:absolute;top:0;left:0;overflow:auto}.zoom-wrapper{transform-origin:0 0;width:3000px;height:3000px;transition:transform .1s ease-out;box-shadow:0 0 50px #0000001a}.drawing-canvas{cursor:crosshair;touch-action:none;width:3000px;height:3000px;display:block}.bg-mode-letters{background-color:#0000;background-image:radial-gradient(#ffffff80 2px,#0000 2px);background-size:50px 50px}.bg-mode-words{background-color:#0000;background-image:radial-gradient(#ffffff80 2px,#0000 2px);background-size:40px 40px}.bg-mode-sentences,.bg-mode-tracing{background-color:#0000;background-image:radial-gradient(#ffffff80 2px,#0000 2px);background-size:30px 30px}.bg-mode-numbers{background-color:#0000;background-image:radial-gradient(#ffffff80 2px,#0000 2px);background-size:50px 50px}.bg-mode-math,.bg-mode-games{background-color:#0000;background-image:radial-gradient(#ffffff80 2px,#0000 2px);background-size:40px 40px}.tracing-template{opacity:.15;pointer-events:none;z-index:0;width:1200px;height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.letter-template{color:#94a3b8;opacity:.25;pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;text-align:center;width:1500px;font-family:system-ui,-apple-system,sans-serif;font-size:700px;font-weight:100;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.word-template{color:#94a3b8;opacity:.25;pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;white-space:nowrap;font-family:system-ui,-apple-system,sans-serif;font-size:500px;font-weight:100;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sentence-template{color:#94a3b8;opacity:.25;pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;text-align:center;white-space:pre-wrap;width:2500px;font-family:system-ui,-apple-system,sans-serif;font-size:250px;font-weight:100;line-height:1.5;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.number-template{color:#94a3b8;opacity:.25;pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;text-align:center;width:1500px;font-family:system-ui,-apple-system,sans-serif;font-size:700px;font-weight:100;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.math-template{color:#94a3b8;opacity:.25;pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;white-space:nowrap;font-family:system-ui,-apple-system,sans-serif;font-size:500px;font-weight:100;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.word-editor-box{background:var(--card-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);width:400px;max-width:90vw;box-shadow:0 25px 50px -12px #00000080, inset 0 0 0 1px var(--card-border);border:1px solid #00f2fe33;border-radius:30px;flex-direction:column;max-height:85vh;padding:2rem;display:flex}.word-editor-header{text-align:center;margin-bottom:1.5rem}.word-editor-list{border:2px solid #e2e8f0;border-radius:15px;flex-direction:column;flex-grow:1;gap:.5rem;margin-bottom:1.5rem;padding:1rem;display:flex;overflow-y:auto}.word-editor-item{color:var(--text-main);background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;padding:.5rem 1rem;font-family:Fredoka One,cursive;display:flex}.word-editor-delete{color:#ef4444;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;display:flex}.word-editor-delete:hover{background:#fee2e2;border-radius:5px}.word-editor-add{gap:.5rem;margin-bottom:1.5rem;display:flex}.word-editor-input{border:2px solid #e2e8f0;border-radius:10px;flex-grow:1;padding:.75rem;font-family:inherit;font-size:1rem}.word-editor-add-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:0 1rem;font-family:Fredoka One,cursive}.draggable-wrapper{z-index:100;position:fixed;top:0;left:0}.drag-handle{cursor:grab;color:#94a3b8;background:#f1f5f980;border-radius:10px;justify-content:center;align-items:center;padding:5px;display:flex}.drag-handle:active{cursor:grabbing}.drag-header{justify-content:space-between;align-items:center;width:100%;margin-bottom:5px;display:flex}.minimized-btn{cursor:pointer;color:#475569;background:#fff;border:2px solid #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:all .2s;display:flex;box-shadow:0 4px 15px #0000001a}.minimized-btn:hover{background:#f8fafc;transform:scale(1.05)}.mode-sidebar::-webkit-scrollbar{display:none}.mode-sidebar{background:var(--card-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:0 10px 30px #00000080, inset 0 0 0 1px var(--card-border);border:1px solid #00f2fe33;border-radius:20px;flex-direction:column;gap:15px;max-height:80vh;padding:15px;display:flex;overflow-y:auto}.mode-btn{cursor:pointer;color:var(--text-main);background:0 0;border:2px solid #0000;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:.6rem;font-family:Fredoka One,cursive;font-size:.9rem;transition:all .2s;display:flex}.mode-btn:hover{background:#ffffff4d}.mode-btn.active{color:var(--primary-dark);border-color:var(--primary);background:#0284c71a;box-shadow:0 0 15px #0284c733}.shape-selector{background:var(--card-bg);-webkit-backdrop-filter:var(--glass-blur) saturate(150%);border:1px solid #00f2fe4d;border-radius:50px;gap:.5rem;max-width:60vw;padding:.35rem .75rem;display:flex;overflow-x:auto;box-shadow:0 8px 32px #0006,inset 0 0 0 1px #ffffff0d}.shape-selector::-webkit-scrollbar{display:none}.shape-selector{-ms-overflow-style:none;scrollbar-width:none}.shape-btn{min-width:38px;height:38px;color:var(--text-color);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:20px;flex-shrink:0;justify-content:center;align-items:center;padding:0 16px;font-size:1.2rem;font-weight:600;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:flex}.shape-btn:hover{color:var(--primary);background:#f1f5f9}.shape-btn.active{background:var(--primary);color:#fff}.zoom-controls{z-index:10;flex-direction:column;gap:.5rem;display:flex;position:fixed;bottom:30px;right:30px}.zoom-btn{-webkit-backdrop-filter:blur(30px)saturate(180%);width:44px;height:44px;color:var(--text-main);cursor:pointer;background:#fff3;border:1px solid #fff9;border-radius:50%;justify-content:center;align-items:center;font-family:Fredoka One,cursive;font-size:1.2rem;transition:transform .1s;display:flex;box-shadow:0 8px 32px #1f268726}.zoom-btn:hover{transform:scale(1.1)}.floating-header{z-index:10;text-align:center;pointer-events:none;position:fixed;top:20px;left:50%;transform:translate(-50%)}.floating-header h2{background:#ffffffe6;border:3px solid #bfdbfe;border-radius:50px;margin:10px 0 0;padding:10px 30px;font-size:2rem;display:inline-block;box-shadow:0 4px 10px #0000001a}.toolbar{background:var(--card-bg);-webkit-backdrop-filter:var(--glass-blur) saturate(150%);border:1px solid var(--card-border);border-radius:50px;justify-content:center;align-items:center;gap:.25rem;padding:.5rem .75rem;display:flex;box-shadow:0 8px 32px #00000080,inset 0 0 0 1px #ffffff0d}.tool-group{border-right:2px solid #ffffff1a;align-items:center;gap:.5rem;padding-right:.75rem;display:flex}.tool-group:last-child{border-right:none;padding-right:0}.color-picker{-webkit-appearance:none;cursor:pointer;background:0 0;border:none;border-radius:50%;width:44px;height:44px;padding:0;transition:transform .2s}.color-picker:hover{transform:scale(1.1)}.hover-scale{transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.hover-scale:hover{transform:scale(1.05)}.guide-overlay{pointer-events:none;z-index:9999;width:100vw;height:100vh;position:fixed;top:0;left:0}.animate-svg-trace>path,.animate-svg-trace>circle,.animate-svg-trace>rect,.animate-svg-trace>line,.animate-svg-trace>polyline,.animate-svg-trace>polygon{stroke-dasharray:120;stroke-dashoffset:120px;animation:6s ease-in-out forwards svgTrace}.animate-svg-trace>:first-child{animation-delay:0s}.animate-svg-trace>:nth-child(2){animation-delay:2s}.animate-svg-trace>:nth-child(3){animation-delay:4s}.animate-svg-trace>:nth-child(4){animation-delay:6s}.animate-svg-trace>:nth-child(5){animation-delay:8s}.animate-svg-trace>:nth-child(6){animation-delay:10s}.animate-svg-trace>:nth-child(7){animation-delay:12s}.animate-svg-trace>:nth-child(8){animation-delay:14s}.animate-svg-trace>:nth-child(9){animation-delay:16s}.animate-svg-trace>:nth-child(10){animation-delay:18s}.animate-svg-trace>:nth-child(11){animation-delay:20s}.animate-svg-trace>:nth-child(12){animation-delay:22s}.animate-svg-trace>:nth-child(13){animation-delay:24s}.animate-svg-trace>:nth-child(14){animation-delay:26s}.animate-svg-trace>:nth-child(15){animation-delay:28s}.animate-svg-trace>:nth-child(16){animation-delay:30s}.animate-svg-trace>:nth-child(17){animation-delay:32s}.animate-svg-trace>:nth-child(18){animation-delay:34s}.animate-svg-trace>:nth-child(19){animation-delay:36s}.animate-svg-trace>:nth-child(20){animation-delay:38s}@keyframes svgTrace{to{stroke-dashoffset:0}}.color-picker::-webkit-color-swatch-wrapper{padding:0}.color-picker::-webkit-color-swatch{border:4px solid #cbd5e1;border-radius:50%}.width-slider{cursor:pointer;width:100px}.pen-toggle,.eraser-btn,.clear-btn{cursor:pointer;color:var(--text-main);background:#f1f5f9;border:2px solid #cbd5e1;border-radius:50px;align-items:center;gap:8px;padding:10px 20px;font-family:Fredoka One,cursive;font-size:1.1rem;transition:all .2s;display:flex}.pen-toggle:hover,.eraser-btn:hover,.clear-btn:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0000000d}.pen-toggle.active{background:var(--primary);color:#fff;border-color:var(--primary)}.eraser-btn.active{background:var(--secondary);color:#fff;border-color:var(--secondary)}.clear-btn{color:#ef4444;background:#f8fafc;border-color:#fca5a5}.clear-btn:hover{background:#fee2e2}.floating-ai-panel{background:var(--card-bg);width:380px;max-height:calc(100vh - 40px);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:0 10px 40px #00000080, inset 0 0 0 1px var(--card-border);z-index:10;border:2px solid #00f2fe4d;border-radius:32px;flex-direction:column;gap:1rem;padding:2rem;display:flex;position:fixed;top:20px;right:20px;overflow-y:auto}.floating-ai-panel::-webkit-scrollbar{display:none}.floating-ai-panel{-ms-overflow-style:none;scrollbar-width:none}.floating-ai-panel h2{color:var(--primary-dark);text-shadow:0 0 10px #fffc;margin-top:0;font-size:2rem}.score-text{color:var(--secondary);margin:0;font-size:2.5rem}.feedback-box{font-size:1.1rem}.mission-box{background:#fff;border:4px solid #bfdbfe;border-radius:16px;padding:1rem;font-size:1.1rem}.therapist-insights{color:#475569;background:#f8fafc;border:2px dashed #94a3b8;border-radius:12px;margin-top:1rem;padding:1rem;font-family:monospace;font-size:.8rem}.therapist-insights h4{color:#334155;margin-top:0;margin-bottom:.5rem;font-family:Nunito,sans-serif}@media print{body{background:#fff;overflow:visible}.floating-header,.toolbar,.button,canvas,h2:first-of-type{display:none!important}.floating-ai-panel{box-shadow:none;background:#fff;border:none;width:100%;max-height:none;position:static}.therapist-insights{border:1px solid #000}}.login-container{z-index:1000;background-color:#0000;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:absolute;top:0;left:0}.login-box{background:var(--card-bg);box-shadow:0 20px 50px #00000080, inset 0 0 0 1px var(--card-border);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);text-align:center;border:1px solid #00f2fe33;border-radius:30px;width:400px;padding:3rem}.login-box h1{color:var(--text-main);margin-bottom:.5rem;font-family:Fredoka One,cursive;font-size:3rem}.login-box p{color:#94a3b8;margin-bottom:2rem}.login-input{border:1px solid var(--card-border);color:#fff;box-sizing:border-box;background:#0f172a66;border-radius:15px;width:100%;margin-bottom:1rem;padding:1rem;font-family:Nunito,sans-serif;font-size:1.1rem;transition:all .2s}.login-input::placeholder{color:#64748b}.login-input:focus{border-color:var(--primary);background:#0f172a99;outline:none;box-shadow:0 0 15px #00f2fe33}.login-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:15px;width:100%;padding:1rem;font-family:Fredoka One,cursive;font-size:1.2rem;transition:all .2s;box-shadow:0 6px #0284c7}.login-btn:hover{transform:translateY(2px);box-shadow:0 4px #0284c7}.login-btn:active{box-shadow:none;transform:translateY(6px)}.login-error{color:var(--secondary);background:#ffe4e6;border-radius:10px;margin-bottom:1rem;padding:.5rem;font-weight:700}.audio-toggle{cursor:pointer;z-index:1000;background:#fff;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;padding:.8rem;transition:all .2s;display:flex;position:absolute;top:1.5rem;left:1.5rem;box-shadow:0 4px 6px -1px #0000001a}.audio-toggle:hover{border-color:#f43f5e;transform:scale(1.1)}.profile-badge{z-index:100;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:50px;align-items:stretch;font-weight:700;transition:transform .2s;display:flex;position:fixed;top:20px;right:20px;overflow:hidden;box-shadow:0 4px 15px #0000001a}.profile-badge:hover{transform:scale(1.02)}.profile-badge-btn{align-items:center;gap:8px;padding:.5rem 1rem;transition:background .2s;display:flex}.profile-badge-btn:hover{background:#f1f5f9}.profile-badge-divider{background:#e2e8f0;width:2px;margin:.5rem 0}.portal-overlay{-webkit-backdrop-filter:blur(12px);z-index:2000;background:#0f172a66;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.store-box{-webkit-backdrop-filter:blur(20px);background:#ffffffe6;border:1px solid #ffffff80;border-radius:30px;flex-direction:column;width:800px;max-width:95vw;max-height:90vh;padding:2rem;display:flex;overflow-y:auto;box-shadow:0 25px 50px -12px #00000080,inset 0 0 0 1px #ffffff80}.portal-box{-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);width:500px;max-width:90vw;box-shadow:0 25px 50px -12px #00000080, inset 0 0 0 1px var(--card-border);background:#ffffffd9;border:1px solid #00f2fe33;border-radius:30px;flex-direction:column;max-height:85vh;padding:2rem;display:flex}.portal-header{text-align:center;margin-bottom:1.5rem}.portal-avatar{margin-bottom:.5rem;font-size:4rem}.portal-stats{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.stat-card{text-align:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:15px;padding:1rem}.stat-value{color:var(--primary);font-family:Fredoka One,cursive;font-size:1.5rem}.stat-label{color:#64748b;text-transform:uppercase;font-size:.8rem;font-weight:700}.history-list{border:2px solid #e2e8f0;border-radius:15px;flex-grow:1;margin-bottom:1.5rem;padding:1rem;overflow-y:auto}.history-folder{border:2px solid #e2e8f0;border-radius:12px;margin-bottom:.5rem;overflow:hidden}.history-folder-header{cursor:pointer;color:#475569;background:#f8fafc;justify-content:space-between;align-items:center;padding:.75rem 1rem;font-weight:700;transition:background .2s;display:flex}.history-folder-header:hover{background:#f1f5f9}.history-folder-content{background:#fff;padding:0 1rem}.history-item{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.history-item:last-child{border-bottom:none}.history-mission{color:var(--text-main);font-weight:700;display:block}.history-date{color:#94a3b8;font-size:.8rem}.history-score{color:#10b981;background:#d1fae5;border-radius:8px;padding:.25rem .5rem;font-family:Fredoka One,cursive}.portal-close-btn{color:#475569;cursor:pointer;background:#f1f5f9;border:none;border-radius:15px;margin-bottom:.5rem;padding:1rem;font-family:Fredoka One,cursive;font-size:1.1rem;transition:background .2s}.dashboard-tabs{border-bottom:2px solid #e2e8f0;gap:1rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.dashboard-tab{color:#94a3b8;cursor:pointer;border-radius:10px 10px 0 0;padding:.5rem 1rem;font-size:1.1rem;font-weight:700;transition:all .2s}.dashboard-tab:hover{color:#64748b;background:#f8fafc}.dashboard-tab.active{color:var(--primary);border-bottom:3px solid var(--primary)}.mastery-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1rem;margin-top:1rem;display:grid}.mastery-card{text-align:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;transition:all .3s;display:flex}.mastery-card.bronze{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#d97706}.mastery-card.bronze .mastery-item-label{color:#b45309}.mastery-card.silver{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-color:#94a3b8}.mastery-card.silver .mastery-item-label{color:#64748b}.mastery-card.gold{background:linear-gradient(135deg,#fefce8,#fef08a);border-color:#eab308;box-shadow:0 0 15px #eab30866}.mastery-card.gold .mastery-item-label{color:#a16207}.mastery-item-label{color:#475569;font-size:1.5rem;font-weight:700}.star-bronze{color:#b45309;font-size:1.5rem}.star-silver{color:#94a3b8;font-size:1.5rem}.star-gold{color:#eab308;text-shadow:0 0 10px #eab30880;font-size:1.5rem}.star-locked{color:#e2e8f0;font-size:1.5rem}.mastery-progress-bar{background:#e2e8f0;border-radius:4px;width:100%;height:8px;margin-top:5px;overflow:hidden}.mastery-progress-fill{background:var(--primary);height:100%;transition:width .3s}.portal-close-btn:hover{background:#e2e8f0}.portal-logout-btn{color:#ef4444;cursor:pointer;background:#fee2e2;border:none;border-radius:15px;padding:1rem;font-family:Fredoka One,cursive;font-size:1.1rem;transition:background .2s}.portal-logout-btn:hover{color:#fff;background:#fca5a5}.theme-dyslexia.canvas-container{background-color:#fef3c7;background-image:radial-gradient(#d97706 1px,#0000 1px)}.theme-dyslexia .letter-template,.theme-dyslexia .word-template,.theme-dyslexia .sentence-template{font-family:OpenDyslexic,sans-serif!important}@media print{.mode-sidebar,.shape-selector,.zoom-controls,.audio-toggle,.profile-badge,.header{display:none!important}.app-container{height:auto;overflow:visible}.canvas-container{page-break-inside:avoid;width:100%;height:auto;position:static;background:#fff!important}.theme-dyslexia.canvas-container{background:#fef3c7!important}.feedback-badge{box-shadow:none;border:2px solid #e2e8f0;max-width:400px;margin:2rem auto;position:static;transform:none}.feedback-badge .login-btn,.no-print{display:none!important}.portal-overlay{position:absolute;top:0;left:0;background:#fff!important}}.certificate-box{background:var(--card-bg);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:0 10px 25px #00000080, inset 0 0 0 1px var(--card-border);border:1px solid #00f2fe33;border-radius:20px;width:800px;max-width:95vw;padding:1rem}.tracing-pet{z-index:1000;pointer-events:none;flex-direction:column;align-items:center;display:flex;position:fixed;top:100px;left:180px}.pet-body{display:inline-block;position:relative}.pet-face{font-size:2rem;position:absolute;top:-10px;right:-20px}.pet-emoji{filter:drop-shadow(0 8px 16px #0003);font-size:6rem;display:inline-block}.pet-bubble{color:var(--primary);white-space:nowrap;background:#fff;border-radius:20px;margin-bottom:20px;padding:.5rem 1rem;font-family:Fredoka One,cursive;font-size:1.2rem;position:relative;box-shadow:0 4px 12px #0000001a}.pet-bubble:after{content:"";border:10px solid #0000;border-top-color:#fff;border-bottom-width:0;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}@keyframes pet-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes pet-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)rotate(-5deg)}75%{transform:translate(10px)rotate(5deg)}}@keyframes pet-pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes pet-dance{0%{transform:translateY(0)rotate(0)scale(1)}25%{transform:translateY(-30px)rotate(-15deg)scale(1.1)}50%{transform:translateY(0)rotate(0)scale(1)}75%{transform:translateY(-30px)rotate(15deg)scale(1.1)}to{transform:translateY(0)rotate(0)scale(1)}}.tracing-pet.bounce .pet-body{animation:.5s ease-in-out infinite pet-bounce}.tracing-pet.shake .pet-body{animation:.5s ease-in-out infinite pet-shake}.tracing-pet.pulse .pet-body{animation:.8s ease-in-out infinite pet-pulse}.tracing-pet.dance .pet-body{animation:.6s ease-in-out infinite pet-dance}.print-only{display:none}@media print{body{background:#fff!important;margin:0!important;padding:0!important}.no-print{display:none!important}.print-only{box-sizing:border-box;z-index:99999;background:#fff;width:100vw;padding:2cm;position:absolute;top:0;left:0;display:block!important}.portal-overlay,.word-editor-overlay,.floating-header,.mode-sidebar,.profile-badge,.language-selector,.main-content,.canvas-container,.student-portal-overlay{display:none!important}}.lexi-logo-container{-webkit-backdrop-filter:blur(10px);pointer-events:auto;background:#ffffffb3;border-radius:50px;align-items:center;gap:12px;margin-bottom:10px;padding:8px 35px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);animation:4s ease-in-out infinite float-logo;display:inline-flex;box-shadow:0 10px 30px #0000001a,inset 0 0 0 1px #fff9}.lexi-logo-container.ready{color:#fff;background:#3b82f6;padding:12px 45px;box-shadow:0 10px 30px #3b82f666}.lexi-logo-container.pulsing{color:#fff;background:#a855f7;padding:12px 45px;animation:1s infinite alternate dynamicPulse}.lexi-logo-container.has-feedback{color:#fff;background:#22c55e;padding:12px 45px;box-shadow:0 10px 30px #22c55e66}@keyframes dynamicPulse{0%{transform:scale(1);box-shadow:0 0 15px #a855f766}to{transform:scale(1.05);box-shadow:0 0 30px #a855f7cc}}.island-text{white-space:nowrap;font-family:Fredoka One,cursive;font-size:1.4rem;animation:.3s ease-in fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lexi-avatar{object-fit:cover;border:2px solid #fffc;border-radius:50%;width:50px;height:50px;margin-right:-4px;box-shadow:0 4px 15px #00f2fe80}.lexi-logo{color:#1e293b;text-shadow:none;background:0 0;font-family:Fredoka One,cursive;border-radius:0!important;margin:0!important;padding:0!important;font-size:3.5rem!important}.xi-text{color:#1e293b;text-shadow:none}.lexi-sparkle{filter:none;animation:2s infinite pulse-sparkle}@keyframes pulse-sparkle{0%,to{opacity:.7;transform:scale(1)rotate(0)}50%{opacity:1;transform:scale(1.2)rotate(15deg)}}@keyframes float-logo{0%,to{transform:translateY(0);box-shadow:0 8px 32px #0006}50%{transform:translateY(-8px);box-shadow:0 15px 40px #00f2fe26}}.landing-container{z-index:2000;scroll-behavior:smooth;width:100vw;height:100vh;position:absolute;top:0;left:0;overflow:hidden auto}.landing-nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:2001;background:#ffffff26;border-bottom:1px solid #ffffff4d;justify-content:space-between;align-items:center;padding:1rem 3rem;display:flex;position:fixed;top:0;left:0;right:0}.landing-nav-brand{align-items:center;gap:10px;display:flex}.landing-nav-links{align-items:center;gap:1.5rem;display:flex}.landing-nav-links a{color:#334155;font-size:.95rem;font-weight:700;text-decoration:none;transition:color .2s}.landing-nav-links a:hover{color:#0ea5e9}.landing-cta-small{color:#fff;cursor:pointer;background:#0ea5e9;border:none;border-radius:50px;padding:8px 20px;font-family:Fredoka One,cursive;font-size:.9rem;transition:transform .2s,box-shadow .2s;box-shadow:0 4px #0284c7}.landing-cta-small:hover{transform:translateY(2px);box-shadow:0 2px #0284c7}.landing-hero{justify-content:center;align-items:center;gap:4rem;min-height:100vh;padding:6rem 3rem 3rem;display:flex}.landing-hero-content{max-width:600px}.landing-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#334155;background:#ffffff4d;border:1px solid #ffffff80;border-radius:50px;margin-bottom:1.5rem;padding:6px 16px;font-size:.85rem;font-weight:700;display:inline-block}.landing-title{color:#0f172a;margin:0 0 1.5rem;font-family:Fredoka One,cursive;font-size:3.5rem;line-height:1.15}.landing-highlight{background:linear-gradient(135deg,#ec4899,#f43f5e);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-subtitle{color:#475569;margin-bottom:2rem;font-size:1.15rem;line-height:1.7}.landing-cta-group{gap:1rem;margin-bottom:2.5rem;display:flex}.landing-cta-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ec4899,#f43f5e);border:none;border-radius:50px;align-items:center;gap:8px;padding:14px 32px;font-family:Fredoka One,cursive;font-size:1.1rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 6px #be185d,0 10px 30px #ec48994d}.landing-cta-primary:hover{transform:translateY(3px);box-shadow:0 3px #be185d,0 6px 20px #ec48994d}.landing-cta-secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#334155;cursor:pointer;background:#fff6;border:1px solid #fff9;border-radius:50px;padding:14px 32px;font-family:Fredoka One,cursive;font-size:1.1rem;transition:background .2s}.landing-cta-secondary:hover{background:#fff9}.landing-stats{gap:2rem;display:flex}.landing-stat{flex-direction:column;align-items:center;display:flex}.landing-stat-value{color:#0ea5e9;font-family:Fredoka One,cursive;font-size:2rem}.landing-stat-label{color:#64748b;font-size:.8rem;font-weight:700}.landing-hero-visual{position:relative}.landing-hero-avatar{object-fit:cover;border:6px solid #ffffff80;border-radius:50%;width:350px;height:350px;animation:4s ease-in-out infinite float-hero;box-shadow:0 20px 60px #0003,0 0 80px #ec489926}@keyframes float-hero{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.landing-features,.landing-how,.landing-tech{text-align:center;padding:5rem 3rem}.landing-section-title{color:#0f172a;margin-bottom:2.5rem;font-family:Fredoka One,cursive;font-size:2.2rem}.landing-features-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1100px;margin:0 auto;display:grid}.landing-feature-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:left;background:#ffffff59;border:1px solid #ffffff80;border-radius:20px;padding:2rem 1.5rem;transition:transform .3s,box-shadow .3s}.landing-feature-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px #0000001a}.landing-feature-icon{margin-bottom:1rem;font-size:2.5rem}.landing-feature-card h3{color:#0f172a;margin:0 0 .5rem;font-family:Fredoka One,cursive;font-size:1.2rem}.landing-feature-card p{color:#64748b;margin:0;font-size:.95rem;line-height:1.6}.landing-steps{justify-content:center;align-items:center;gap:1.5rem;max-width:900px;margin:0 auto;display:flex}.landing-step{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff59;border:1px solid #ffffff80;border-radius:20px;flex:1;padding:2rem}.landing-step-number{color:#fff;background:linear-gradient(135deg,#ec4899,#f43f5e);border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;margin:0 auto 1rem;font-family:Fredoka One,cursive;font-size:1.5rem;display:flex}.landing-step h3{color:#0f172a;margin:0 0 .5rem;font-family:Fredoka One,cursive}.landing-step p{color:#64748b;margin:0;font-size:.9rem;line-height:1.5}.landing-step-arrow{color:#cbd5e1;font-size:2rem;font-weight:700}.landing-tech-grid{flex-wrap:wrap;justify-content:center;gap:10px;max-width:700px;margin:0 auto;display:flex}.landing-tech-pill{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#334155;background:#fff6;border:1px solid #ffffff80;border-radius:50px;padding:10px 20px;font-size:.95rem;font-weight:700}.landing-footer{text-align:center;padding:4rem 3rem}.onboarding-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:10000;background:#00000080;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.3s fadeIn;display:flex;position:fixed;top:0;left:0}.onboarding-card{text-align:center;background:#fff;border-radius:24px;width:90%;max-width:450px;padding:3rem;animation:.4s slideUp;box-shadow:0 25px 60px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.onboarding-progress{justify-content:center;gap:8px;margin-bottom:2rem;display:flex}.onboarding-dot{background:#e2e8f0;border-radius:50%;width:10px;height:10px;transition:all .3s}.onboarding-dot.active{background:#ec4899;transform:scale(1.3)}.onboarding-dot.done{background:#22c55e}.onboarding-icon{margin-bottom:1rem;font-size:4rem}.onboarding-title{color:#0f172a;margin:0 0 .75rem;font-family:Fredoka One,cursive;font-size:1.8rem}.onboarding-desc{color:#64748b;margin-bottom:2rem;font-size:1.05rem;line-height:1.6}.onboarding-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ec4899,#f43f5e);border:none;border-radius:50px;width:100%;padding:14px 40px;font-family:Fredoka One,cursive;font-size:1.1rem;transition:transform .2s;display:block;box-shadow:0 5px #be185d}.onboarding-btn:hover{transform:translateY(2px);box-shadow:0 3px #be185d}.onboarding-skip{color:#94a3b8;cursor:pointer;background:0 0;border:none;margin-top:1rem;font-size:.85rem;font-weight:700}.onboarding-skip:hover{color:#64748b}
