body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@keyframes celebration{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.2) rotate(-5deg)}50%{transform:scale(1.1) rotate(5deg)}75%{transform:scale(1.3) rotate(-3deg)}}.celebrate{animation:celebration .6s ease-in-out}.confetti{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1000}.confetti-piece{animation:confetti-fall 3s linear infinite;background:#f39c12}.confetti-piece:nth-child(odd){background:#e74c3c}.confetti-piece:nth-child(3n){background:#3498db}.confetti-piece:nth-child(4n){background:#2ecc71}.confetti-piece:nth-child(5n){background:#9b59b6}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-100vh) rotate(0deg)}to{opacity:0;transform:translateY(100vh) rotate(2turn)}}@keyframes starBurst{0%{opacity:0;transform:scale(0) rotate(0deg)}50%{opacity:1;transform:scale(1.5) rotate(180deg)}to{opacity:1;transform:scale(1) rotate(1turn)}}.star-burst{animation:starBurst .8s ease-out}.bounce{animation:bounce .6s ease-in-out}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}.shake{animation:shake .6s ease-in-out}@keyframes glow{0%,to{box-shadow:0 0 5px #3498db80}50%{box-shadow:0 0 20px #3498dbcc}}.glow{animation:glow 2s ease-in-out infinite}.fade-in{animation:fadeIn .5s ease-out}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.slide-in-left{animation:slideInLeft .6s ease-out}.slide-in-right{animation:slideInRight .6s ease-out}.slide-in-up{animation:slideInUp .6s ease-out}.slide-in-down{animation:slideInDown .6s ease-out}@keyframes zoomIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.zoom-in{animation:zoomIn .5s ease-out}@keyframes wiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.wiggle{animation:wiggle .5s ease-in-out}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.heartbeat{animation:heartbeat 1s ease-in-out infinite}@keyframes progressFill{0%{width:0}to{width:var(--progress-width)}}.progress-fill-animated{animation:progressFill 1s ease-out}@keyframes countUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.count-up{animation:countUp .5s ease-out}.float{animation:float 3s ease-in-out infinite}@keyframes typing{0%{width:0}to{width:100%}}.typing-effect{animation:typing 2s steps(40),blink 1s infinite;border-right:3px solid #2c3e50;overflow:hidden;white-space:nowrap}@keyframes checkmark{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.checkmark-circle{stroke:#2ecc71;stroke-width:6;fill:none;animation:checkmark .6s ease-in-out}@keyframes errorX{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}.error-x{stroke:#e74c3c;stroke-width:6;fill:none;animation:errorX .6s ease-in-out}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.duration-fast{animation-duration:.3s}.duration-normal{animation-duration:.5s}.duration-slow{animation-duration:1s}.duration-slower{animation-duration:2s}.hover-lift:hover{transform:translateY(-5px);transition:transform .3s ease}.hover-grow:hover{transform:scale(1.05);transition:transform .3s ease}.hover-rotate:hover{transform:rotate(5deg);transition:transform .3s ease}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--primary-color:#3498db;--primary-dark:#2980b9;--success-color:#2ecc71;--success-dark:#27ae60;--warning-color:#f39c12;--warning-dark:#e67e22;--danger-color:#e74c3c;--danger-dark:#c0392b;--info-color:#1abc9c;--info-dark:#16a085;--dark-gray:#2c3e50;--medium-gray:#34495e;--light-gray:#7f8c8d;--very-light-gray:#ecf0f1;--border-gray:#bdc3c7;--primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--success-gradient:linear-gradient(45deg,#2ecc71,#27ae60);--warning-gradient:linear-gradient(45deg,#f39c12,#e67e22);--danger-gradient:linear-gradient(45deg,#e74c3c,#c0392b);--border-radius-sm:8px;--border-radius-md:15px;--border-radius-lg:20px;--border-radius-xl:25px;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 8px #00000026;--shadow-lg:0 8px 16px #0003;--shadow-xl:0 12px 24px #00000040;--font-xs:0.875rem;--font-sm:1rem;--font-md:1.25rem;--font-lg:1.5rem;--font-xl:2rem;--font-xxl:2.5rem;--font-xxxl:3rem;--transition-fast:0.2s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease}.m-0{margin:0}.m-1{margin:.25rem;margin:var(--spacing-xs)}.m-2{margin:.5rem;margin:var(--spacing-sm)}.m-3{margin:1rem;margin:var(--spacing-md)}.m-4{margin:1.5rem;margin:var(--spacing-lg)}.m-5{margin:2rem;margin:var(--spacing-xl)}.mt-0{margin-top:0}.mt-1{margin-top:.25rem;margin-top:var(--spacing-xs)}.mt-2{margin-top:.5rem;margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:1.5rem;margin-top:var(--spacing-lg)}.mt-5{margin-top:2rem;margin-top:var(--spacing-xl)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.mb-5{margin-bottom:2rem;margin-bottom:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:.25rem;padding:var(--spacing-xs)}.p-2{padding:.5rem;padding:var(--spacing-sm)}.p-3{padding:1rem;padding:var(--spacing-md)}.p-4{padding:1.5rem;padding:var(--spacing-lg)}.p-5{padding:2rem;padding:var(--spacing-xl)}.text-xs{font-size:.875rem;font-size:var(--font-xs)}.text-sm{font-size:1rem;font-size:var(--font-sm)}.text-md{font-size:1.25rem;font-size:var(--font-md)}.text-lg{font-size:1.5rem;font-size:var(--font-lg)}.text-xl{font-size:2rem;font-size:var(--font-xl)}.text-xxl{font-size:2.5rem;font-size:var(--font-xxl)}.text-xxxl{font-size:3rem;font-size:var(--font-xxxl)}.font-bold{font-weight:700}.font-normal{font-weight:400}.text-primary{color:#3498db;color:var(--primary-color)}.text-success{color:#2ecc71;color:var(--success-color)}.text-warning{color:#f39c12;color:var(--warning-color)}.text-danger{color:#e74c3c;color:var(--danger-color)}.text-dark{color:#2c3e50;color:var(--dark-gray)}.text-muted{color:#7f8c8d;color:var(--light-gray)}.bg-white{background-color:#fff}.bg-primary{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--primary-gradient)}.bg-success{background:linear-gradient(45deg,#2ecc71,#27ae60);background:var(--success-gradient)}.bg-warning{background:linear-gradient(45deg,#f39c12,#e67e22);background:var(--warning-gradient)}.bg-danger{background:linear-gradient(45deg,#e74c3c,#c0392b);background:var(--danger-gradient)}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.d-grid{display:grid}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.border-0{border:none}.border{border:2px solid #bdc3c7;border:2px solid var(--border-gray)}.border-primary{border:2px solid #3498db;border:2px solid var(--primary-color)}.border-success{border:2px solid #2ecc71;border:2px solid var(--success-color)}.border-warning{border:2px solid #f39c12;border:2px solid var(--warning-color)}.border-danger{border:2px solid #e74c3c;border:2px solid var(--danger-color)}.rounded-sm{border-radius:8px;border-radius:var(--border-radius-sm)}.rounded-md{border-radius:15px;border-radius:var(--border-radius-md)}.rounded-lg{border-radius:20px;border-radius:var(--border-radius-lg)}.rounded-xl{border-radius:25px;border-radius:var(--border-radius-xl)}.rounded-full{border-radius:50%}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:0 2px 4px #0000001a;box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:0 4px 8px #00000026;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 8px 16px #0003;box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 12px 24px #00000040;box-shadow:var(--shadow-xl)}.w-25{width:25%}.w-50{width:50%}.w-75{width:75%}.w-auto{width:auto}.h-25{height:25%}.h-50{height:50%}.h-75{height:75%}.h-100{height:100%}.h-auto{height:auto}.h-screen{height:100vh}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:-webkit-sticky;position:sticky}.visible{visibility:visible}.invisible{visibility:hidden}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.focus-outline:focus{outline:3px solid #3498db;outline:3px solid var(--primary-color);outline-offset:2px}@media (prefers-contrast:high){:root{--primary-color:#06c;--success-color:green;--warning-color:#f80;--danger-color:#c00}.btn{border:2px solid}}@media print{.no-print{display:none!important}.btn,body{background:#fff!important;color:#000!important}.btn{border:2px solid #000!important}}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(135deg,#667eea,#764ba2);color:#333;font-family:Comic Sans MS,Arial,sans-serif}.App,body{min-height:100vh}.App{display:flex;flex-direction:column}h1{color:#2c3e50;font-size:2.5rem;font-weight:700;margin-bottom:1rem}h2{font-size:2rem;margin-bottom:.75rem}h2,h3{color:#34495e}h3{font-size:1.5rem;margin-bottom:.5rem}p{font-size:1.25rem;line-height:1.6;margin-bottom:1rem}.btn{box-shadow:0 4px 8px #0003;font-size:1.5rem;margin:.5rem;min-height:60px;min-width:150px;padding:1rem 2rem}.btn:hover{box-shadow:0 6px 12px #0000004d;transform:translateY(-2px)}.btn:active{box-shadow:0 2px 4px #0003}.btn-primary{background:linear-gradient(45deg,#3498db,#2980b9);color:#fff}.btn-success{background:linear-gradient(45deg,#2ecc71,#27ae60);color:#fff}.btn-warning{background:linear-gradient(45deg,#f39c12,#e67e22);color:#fff}.btn-danger{background:linear-gradient(45deg,#e74c3c,#c0392b);color:#fff}.btn-info{background:linear-gradient(45deg,#1abc9c,#16a085);color:#fff}.login-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0003;max-width:500px;padding:3rem;text-align:center;width:100%}.login-title{color:#2c3e50;font-size:2.5rem;margin-bottom:1.5rem;text-align:center}.form-group{margin-bottom:1.5rem;text-align:left}.form-label{color:#34495e;display:block;font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.form-input{border:2px solid #ddd;border-radius:10px;font-size:1.1rem;padding:1rem;transition:border-color .3s ease;width:100%}.form-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.5rem}.mb-5{margin-bottom:3rem}.mt-3{margin-top:1rem}.mt-5{margin-top:3rem}.text-sm{font-size:.9rem}.text-md{font-size:1rem}.text-lg{font-size:1.25rem}.text-muted{color:#6c757d}.w-100{width:100%}.flex-row{flex-direction:row}.fade-in{animation:fadeIn .5s ease-in}.math-problem{background:#ffffffe6;border-radius:20px;box-shadow:0 8px 16px #0000001a;color:#2c3e50;font-size:3rem;font-weight:700;margin:2rem 0;padding:2rem;text-align:center}.answer-input{border:3px solid #3498db;border-radius:15px;font-size:2rem;margin:1rem;min-width:200px;padding:1rem}.answer-input:focus{border-color:#2ecc71;box-shadow:0 0 10px #2ecc714d}.card{background:#fffffff2;border:3px solid #0000;border-radius:20px;box-shadow:0 8px 16px #0000001a;margin:1rem;padding:2rem;transition:all .3s ease}.card:hover{border-color:#3498db;box-shadow:0 12px 24px #00000026;transform:translateY(-5px)}.progress-bar{background:#ecf0f1;border:2px solid #bdc3c7;border-radius:15px;height:30px;margin:1rem 0}.progress-fill{align-items:center;background:linear-gradient(45deg,#2ecc71,#27ae60);border-radius:13px;color:#fff;display:flex;font-weight:700;justify-content:center;transition:width .5s ease}.reward-star{animation:sparkle 1s ease-in-out;color:#f1c40f;margin:0 .25rem}@keyframes sparkle{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.reward-badge{background:linear-gradient(45deg,#9b59b6,#8e44ad);border-radius:25px;box-shadow:0 4px 8px #0003;color:#fff;display:inline-block;font-weight:700;margin:.5rem;padding:.5rem 1rem}.nav{align-items:center;background:#fffffff2;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;padding:1rem 2rem}.nav-brand{color:#2c3e50;font-size:1.75rem;font-weight:700}.nav-links{display:flex;gap:1rem}.container{max-width:1200px;padding:0 1rem}.flex-center{flex-direction:column;min-height:80vh}.flex-center,.flex-row{align-items:center;display:flex;justify-content:center}.flex-row{flex-wrap:wrap;gap:1rem}.dashboard-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:2rem}@media (max-width:768px){h1{font-size:2rem}h2{font-size:1.5rem}.btn{font-size:1.25rem;min-height:50px;min-width:120px;padding:.75rem 1.5rem}.math-problem{font-size:2.5rem;padding:1.5rem}.answer-input{font-size:1.5rem;min-width:150px}.dashboard-grid{grid-template-columns:1fr;padding:1rem}}@media (max-width:480px){.nav{gap:1rem}.nav,.nav-links{flex-direction:column}.nav-links{width:100%}.math-problem{font-size:2rem}}.practice-session-wrapper{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.back-button{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;margin-right:1rem;padding:.5rem 1rem;transition:all .3s ease}.back-button:hover{background:#ffffff4d;transform:translateY(-2px)}.practice-navigation h1{color:#fff;font-size:1.5rem;font-weight:600;margin:0}.practice-error{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:2rem;text-align:center}.practice-error h2{font-size:2rem;margin-bottom:1rem}.practice-error p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.practice-error button{background:#fff3;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;padding:.75rem 1.5rem;transition:all .3s ease}.practice-error button:hover{background:#ffffff4d;transform:translateY(-2px)}.text{word-wrap:break-word;color:inherit;font-family:Comic Sans MS,cursive,sans-serif;-webkit-hyphens:auto;hyphens:auto;line-height:inherit;margin:0}.text--heading{color:#333;text-shadow:1px 1px 2px #0000001a}.text--display,.text--heading{font-family:Comic Sans MS,cursive,sans-serif;font-weight:700}.text--display{letter-spacing:-.02em}.text--body{color:#333}.text--body,.text--caption{font-family:Comic Sans MS,cursive,sans-serif}.text--caption{color:#666;font-size:.875em}.text--label{color:#555;display:block;font-family:Comic Sans MS,cursive,sans-serif;font-weight:500;margin-bottom:.5rem}.text--math{color:#2c3e50;letter-spacing:.1em}.text--math,.text--score{font-weight:700;text-align:center}.text--error,.text--math,.text--score{font-family:Comic Sans MS,cursive,sans-serif}.text--error{color:#e74c3c}.text--success{color:#27ae60;font-family:Comic Sans MS,cursive,sans-serif}.text--tiny{font-size:.75rem;line-height:1.2}.text--extra-small{font-size:.875rem;line-height:1.3}.text--small{font-size:1rem;line-height:1.4}.text--medium{font-size:1.25rem;line-height:1.5}.text--large{font-size:1.5rem;line-height:1.4}.text--extra-large{font-size:2rem;line-height:1.3}.text--huge{font-size:2.5rem;line-height:1.2}.text--giant{font-size:3rem;line-height:1.1}.text--weight-thin{font-weight:100}.text--weight-light{font-weight:300}.text--weight-normal{font-weight:400}.text--weight-medium{font-weight:500}.text--weight-semibold{font-weight:600}.text--weight-bold{font-weight:700}.text--weight-extrabold{font-weight:800}.text--weight-black{font-weight:900}.text--color-default{color:inherit}.text--color-primary{color:#4caf50}.text--color-secondary{color:#2196f3}.text--color-success{color:#27ae60}.text--color-warning{color:#f39c12}.text--color-error{color:#e74c3c}.text--color-info{color:#3498db}.text--color-muted{color:#6c757d}.text--color-white{color:#fff}.text--color-black{color:#000}.text--color-inherit{color:inherit}.text--align-left{text-align:left}.text--align-center{text-align:center}.text--align-right{text-align:right}.text--align-justify{text-align:justify}.text--transform-none{text-transform:none}.text--transform-uppercase{text-transform:uppercase}.text--transform-lowercase{text-transform:lowercase}.text--transform-capitalize{text-transform:capitalize}.text--decoration-none{text-decoration:none}.text--decoration-underline{text-decoration:underline}.text--decoration-line-through{text-decoration:line-through}.text--spacing-tight{letter-spacing:-.05em}.text--spacing-normal{letter-spacing:0}.text--spacing-wide{letter-spacing:.1em}.text--spacing-wider{letter-spacing:.15em}.text--spacing-widest{letter-spacing:.2em}.text--line-height-none{line-height:1}.text--line-height-tight{line-height:1.25}.text--line-height-normal{line-height:1.5}.text--line-height-relaxed{line-height:1.75}.text--line-height-loose{line-height:2}.text--truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text--glow{text-shadow:0 0 5px currentColor,0 0 10px currentColor,0 0 15px currentColor}.text--shadow{text-shadow:2px 2px 4px #0000004d}.text--gradient{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#0000}.text--animated{transition:all .3s cubic-bezier(.4,0,.2,1)}.text--animated:hover{transform:translateY(-1px)}.math-problem-text{animation:mathGlow 3s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:15px;box-shadow:0 4px 12px #0000001a;display:inline-block;min-width:200px;padding:1rem 2rem}@keyframes mathGlow{0%,to{box-shadow:0 4px 12px #0000001a}50%{box-shadow:0 4px 20px #3498db4d}}.text--score{-webkit-text-fill-color:#0000;animation:scoreShine 2s ease-in-out infinite;background:linear-gradient(135deg,#f093fb,#f5576c);-webkit-background-clip:text;background-clip:text;color:#0000}@keyframes scoreShine{0%,to{filter:brightness(1)}50%{filter:brightness(1.2)}}.text-required{color:#e74c3c;font-weight:700;margin-left:.25rem}.typing-text{position:relative}.typing-cursor{animation:blink 1s infinite;color:currentColor;display:inline-block;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.typing-complete .typing-cursor{display:none}.text--clickable{border-radius:8px;cursor:pointer;padding:.5rem;transition:all .3s ease}.text--clickable:hover{background:#ffffff1a;transform:scale(1.02)}.text--clickable:active{transform:scale(.98)}.text--highlight{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:2px solid #ffc1074d;border-radius:8px;padding:.25rem .5rem}.text--bounce{animation:textBounce 2s ease-in-out infinite}@keyframes textBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.text--rainbow{-webkit-text-fill-color:#0000;animation:rainbowShift 3s ease-in-out infinite;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4,#ffeaa7,plum,#ff6b6b);-webkit-background-clip:text;background-clip:text;background-size:400% 400%;color:#0000}@keyframes rainbowShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@media (max-width:768px){.text--tiny{font-size:.7rem}.text--extra-small{font-size:.8rem}.text--small{font-size:.9rem}.text--medium{font-size:1.1rem}.text--large{font-size:1.3rem}.text--extra-large{font-size:1.8rem}.text--huge{font-size:2.2rem}.text--giant{font-size:2.8rem}.math-problem-text{min-width:150px;padding:.75rem 1.5rem}}@media (max-width:480px){.text--tiny{font-size:.65rem}.text--extra-small{font-size:.75rem}.text--small{font-size:.85rem}.text--medium{font-size:1rem}.text--large{font-size:1.2rem}.text--extra-large{font-size:1.6rem}.text--huge{font-size:2rem}.text--giant{font-size:2.5rem}.math-problem-text{font-size:1.3rem;min-width:120px;padding:.5rem 1rem}.text--align-center{text-align:center}}@media (prefers-contrast:high){.text--gradient,.text--rainbow,.text--score{-webkit-text-fill-color:unset;background:none;-webkit-background-clip:unset;background-clip:initial;color:inherit}.text--primary{color:#060}.text--secondary{color:#06c}.text--success{color:#060}.text--warning{color:#c60}.text--error{color:#c00}.text--muted{color:#333}.math-problem-text{background:#ffffffe6;border:3px solid #000;color:#000}.text--highlight{background:#ff0;border:2px solid #000;color:#000}}@media (prefers-reduced-motion:reduce){.math-problem-text,.text--animated,.text--bounce,.text--rainbow,.text--score,.typing-cursor{animation:none}.text--animated:hover,.text--clickable:active,.text--clickable:hover{transform:none}}@media print{.text{-webkit-text-fill-color:#000!important;background:none!important;color:#000!important;text-shadow:none!important}.text--gradient,.text--rainbow,.text--score{-webkit-text-fill-color:#000;background:none;-webkit-background-clip:unset;background-clip:initial;color:#000}.math-problem-text{background:#fff;border:2px solid #000;color:#000}.text--highlight{background:#f0f0f0;border:1px solid #000}}.text--clickable:focus{outline:3px solid gold;outline-offset:2px}@media (prefers-color-scheme:dark){.text--body,.text--heading{color:#e0e0e0}.text--caption{color:#b0b0b0}.text--label{color:#d0d0d0}.text--muted{color:#999}.math-problem-text{background:#0000004d;border-color:#ffffff4d;color:#fff}.text--highlight{background:#ffc10733;border-color:#ffc10780;color:#fff}.text--clickable:hover{background:#ffffff1a}}.btn{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;font-family:Comic Sans MS,cursive,sans-serif;outline:none;overflow:hidden;position:relative;text-align:center;touch-action:manipulation;transition:all .3s cubic-bezier(.4,0,.2,1);user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;vertical-align:middle;white-space:nowrap}.btn--small{font-size:.8rem;min-height:36px;min-width:80px;padding:.5rem 1rem}.btn--medium{font-size:1rem;min-height:44px;min-width:100px;padding:.75rem 1.5rem}.btn--large{font-size:1.2rem;min-height:56px;min-width:120px;padding:1rem 2rem}.btn--extra-large{font-size:1.4rem;min-height:68px;min-width:150px;padding:1.25rem 2.5rem}.btn--rounded{border-radius:12px}.btn--pill{border-radius:50px}.btn--square{border-radius:8px}.btn--circle{aspect-ratio:1;border-radius:50%;min-width:auto;padding:1rem}.btn--primary{background:linear-gradient(135deg,#4caf50,#66bb6a);border:2px solid #0000;box-shadow:0 4px 12px #4caf504d,inset 0 1px 0 #fff3;color:#fff}.btn--primary:hover:not(.btn--disabled){background:linear-gradient(135deg,#43a047,#5cb85c);box-shadow:0 6px 16px #4caf5066,inset 0 1px 0 #ffffff4d;transform:translateY(-2px)}.btn--primary:active:not(.btn--disabled){background:linear-gradient(135deg,#388e3c,#4caf50);box-shadow:0 2px 8px #4caf504d,inset 0 2px 4px #0000001a;transform:translateY(0)}.btn--secondary{background:linear-gradient(135deg,#2196f3,#42a5f5);border:2px solid #0000;box-shadow:0 4px 12px #2196f34d,inset 0 1px 0 #fff3;color:#fff}.btn--secondary:hover:not(.btn--disabled){background:linear-gradient(135deg,#1e88e5,#2196f3);box-shadow:0 6px 16px #2196f366,inset 0 1px 0 #ffffff4d;transform:translateY(-2px)}.btn--warning{background:linear-gradient(135deg,#ff9800,#ffb74d);border:2px solid #0000;box-shadow:0 4px 12px #ff98004d,inset 0 1px 0 #fff3;color:#fff}.btn--warning:hover:not(.btn--disabled){background:linear-gradient(135deg,#f57c00,#ff9800);transform:translateY(-2px)}.btn--danger{background:linear-gradient(135deg,#f44336,#ef5350);border:2px solid #0000;box-shadow:0 4px 12px #f443364d,inset 0 1px 0 #fff3;color:#fff}.btn--danger:hover:not(.btn--disabled){background:linear-gradient(135deg,#e53935,#f44336);transform:translateY(-2px)}.btn--success{background:linear-gradient(135deg,#4caf50,#8bc34a);box-shadow:0 4px 12px #4caf504d,inset 0 1px 0 #fff3}.btn--info,.btn--success{border:2px solid #0000;color:#fff}.btn--info{background:linear-gradient(135deg,#00bcd4,#4dd0e1);box-shadow:0 4px 12px #00bcd44d,inset 0 1px 0 #fff3}.btn--outline{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #333;color:#333}.btn--outline:hover:not(.btn--disabled){background:#fff3;border-color:#222;transform:translateY(-2px)}.btn--ghost{background:#0000;border:2px solid #0000;color:#333}.btn--ghost:hover:not(.btn--disabled){background:#0000000d;transform:translateY(-1px)}.btn--light{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #0000001a;box-shadow:0 4px 12px #0000001a,inset 0 1px 0 #fffc;color:#333}.btn--light:hover:not(.btn--disabled){background:linear-gradient(135deg,#f8f9fa,#e9ecef);transform:translateY(-2px)}.btn--full-width{justify-content:center;width:100%}.btn-icon{align-items:center;display:flex;font-size:1.2em;justify-content:center;line-height:1}.btn--icon-left .btn-icon{margin-right:.25rem}.btn--icon-right .btn-icon{margin-left:.25rem}.btn--icon-only{min-width:auto;padding:1rem}.btn--icon-only .btn-icon{font-size:1.4em;margin:0}.btn-content{align-items:center;display:flex;justify-content:center;transition:opacity .3s ease}.btn-content--hidden{opacity:0}.btn--loading{pointer-events:none;position:relative}.btn-loading-spinner{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.spinner{border:2px solid #ffffff4d;height:20px;width:20px}.btn--disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;pointer-events:none;transform:none!important}.btn--ripple{overflow:hidden;position:relative}.ripple{animation:rippleEffect .6s ease-out;background:#fff6;border-radius:50%;pointer-events:none;position:absolute}@keyframes rippleEffect{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(2)}}.btn--bounce:active:not(.btn--disabled){animation:buttonBounce .3s ease-out}@keyframes buttonBounce{0%{transform:scale(1) translateY(0)}50%{transform:scale(.95) translateY(1px)}to{transform:scale(1) translateY(0)}}.btn--glow{position:relative}.btn-glow{background:inherit;border-radius:inherit;bottom:-2px;filter:blur(8px);left:-2px;opacity:0;position:absolute;right:-2px;top:-2px;transition:opacity .3s ease;z-index:-1}.btn--glow:hover:not(.btn--disabled) .btn-glow{opacity:.7}.btn--floating{animation:floatingPulse 3s ease-in-out infinite;bottom:2rem;box-shadow:0 8px 24px #0000004d,0 0 0 1px #ffffff1a;position:fixed;right:2rem;z-index:1000}@keyframes floatingPulse{0%,to{box-shadow:0 8px 24px #0000004d,0 0 0 1px #ffffff1a}50%{box-shadow:0 12px 32px #0006,0 0 0 8px #ffffff1a}}.btn--floating:hover:not(.btn--disabled){transform:translateY(-4px) scale(1.05)}.btn:focus:not(:focus-visible){outline:none}.btn:focus-visible{outline:3px solid gold;outline-offset:2px}.btn-group{display:flex;position:relative}.btn-group--horizontal{flex-direction:row}.btn-group--vertical{flex-direction:column}.btn-group--spacing-tight>.btn+.btn{margin-left:.25rem}.btn-group--spacing-normal>.btn+.btn{margin-left:.5rem}.btn-group--spacing-loose>.btn+.btn{margin-left:1rem}.btn-group--vertical.btn-group--spacing-tight>.btn+.btn{margin-left:0;margin-top:.25rem}.btn-group--vertical.btn-group--spacing-normal>.btn+.btn{margin-left:0;margin-top:.5rem}.btn-group--vertical.btn-group--spacing-loose>.btn+.btn{margin-left:0;margin-top:1rem}.btn-group--full-width{width:100%}.btn-group--full-width>.btn{flex:1 1}.btn--math-operation{background:linear-gradient(135deg,#9c27b0,#ba68c8);border-radius:12px;color:#fff;font-size:1.5em;min-height:60px;min-width:60px}.btn--math-operation:hover:not(.btn--disabled){background:linear-gradient(135deg,#8e24aa,#9c27b0);transform:translateY(-2px) scale(1.02)}.btn--number{background:linear-gradient(135deg,#607d8b,#78909c);border-radius:8px;color:#fff;font-size:1.8em;font-weight:700;min-height:70px;min-width:70px}.btn--number:hover:not(.btn--disabled){background:linear-gradient(135deg,#546e7a,#607d8b);transform:translateY(-1px)}.btn--submit{animation:submitPulse 2s ease-in-out infinite;background:linear-gradient(135deg,#4caf50,#66bb6a);border-radius:25px;color:#fff;font-size:1.3em;padding:1rem 2.5rem}@keyframes submitPulse{0%,to{box-shadow:0 0 0 0 #4caf5066}50%{box-shadow:0 0 0 10px #4caf5000}}.btn--submit:hover:not(.btn--disabled){animation:none;background:linear-gradient(135deg,#43a047,#5cb85c);transform:translateY(-3px) scale(1.05)}.btn--play{background:linear-gradient(135deg,#ff5722,#ff7043);border-radius:30px;box-shadow:0 6px 20px #ff572266,inset 0 1px 0 #fff3;color:#fff;font-size:1.4em;padding:1.25rem 3rem}.btn--play:hover:not(.btn--disabled){background:linear-gradient(135deg,#f4511e,#ff5722);box-shadow:0 8px 25px #ff572280,inset 0 1px 0 #ffffff4d;transform:translateY(-3px) scale(1.02)}@media (max-width:768px){.btn--small{font-size:.9rem;min-height:40px;padding:.75rem 1.25rem}.btn--medium{font-size:1.1rem;min-height:48px;padding:1rem 1.75rem}.btn--large{font-size:1.3rem;min-height:60px;padding:1.25rem 2.25rem}.btn--extra-large{font-size:1.5rem;min-height:72px;padding:1.5rem 2.75rem}.btn--floating{bottom:1rem;right:1rem}.btn-group--horizontal{flex-wrap:wrap}.btn-group--horizontal>.btn{flex:1 1;min-width:0}}@media (max-width:480px){.btn{font-size:.9rem}.btn--small{font-size:.8rem;min-height:36px;padding:.6rem 1rem}.btn--medium{font-size:1rem;min-height:44px;padding:.8rem 1.5rem}.btn--large{font-size:1.2rem;min-height:56px;padding:1rem 2rem}.btn--number{font-size:1.6em;min-height:60px;min-width:60px}.btn--math-operation{font-size:1.3em;min-height:50px;min-width:50px}.btn-group--horizontal{flex-direction:column;gap:.5rem}.btn-group--horizontal>.btn+.btn{margin-left:0}}@media (hover:none) and (pointer:coarse){.btn{min-height:48px;min-width:48px}.btn:hover{transform:none}.btn:active:not(.btn--disabled){transform:scale(.97);transition:transform .1s ease}}@media (prefers-contrast:high){.btn{border:3px solid}.btn--primary{background:#060;border-color:#fff;color:#fff}.btn--secondary{background:#06c;border-color:#fff;color:#fff}.btn--danger{background:#c00;border-color:#fff;color:#fff}.btn--outline{background:#0000}.btn--light,.btn--outline{border-color:#000;color:#000}.btn--light{background:#fff}}@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:active:not(.btn--disabled),.btn:hover:not(.btn--disabled){transform:none}.btn--floating,.btn--submit,.ripple,.spinner{animation:none}.btn-glow{display:none}}@media print{.btn{background:#fff!important;border:2px solid #000!important;box-shadow:none!important;color:#000!important}.btn--floating,.btn-glow,.ripple{display:none}}@media (prefers-color-scheme:dark){.btn--light{background:linear-gradient(135deg,#333,#444);border-color:#fff3;color:#fff}.btn--outline{border-color:#fff;color:#fff}.btn--ghost{color:#fff}.btn--ghost:hover:not(.btn--disabled){background:#ffffff1a}}.reward-system{font-family:Comic Sans MS,cursive,sans-serif;overflow:visible;position:relative}.reward-section{margin-bottom:1.5rem}.reward-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.reward-title{color:#333;font-size:1.1rem;font-weight:700;margin:0;text-shadow:1px 1px 2px #fffc}.reward-count{background:#fffc;border:2px solid #fff9;border-radius:12px;box-shadow:0 2px 4px #0000001a;color:#333;font-size:.9rem;font-weight:700;padding:.3rem .6rem}.reward-stars{flex-wrap:wrap;gap:.5rem}.reward-star,.reward-stars{display:flex;justify-content:center}.reward-star{align-items:center;cursor:pointer;font-size:2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.reward-star--earned{animation:starEarned .6s cubic-bezier(.175,.885,.32,1.275);filter:drop-shadow(0 0 8px rgba(255,215,0,.6))}@keyframes starEarned{0%{opacity:0;transform:scale(.3) rotate(-180deg)}50%{opacity:1;transform:scale(1.3) rotate(-90deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.reward-star--empty{filter:grayscale(100%);opacity:.3}.reward-star--animated{animation:starPulse 1.5s ease-in-out infinite}@keyframes starPulse{0%,to{filter:brightness(1) drop-shadow(0 0 8px rgba(255,215,0,.6));transform:scale(1)}50%{filter:brightness(1.3) drop-shadow(0 0 15px rgba(255,215,0,.9));transform:scale(1.1)}}.star-icon{position:relative;z-index:2}.star-glow{background:radial-gradient(circle,#ffd7004d 0,#0000 70%);border-radius:50%;height:100%;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);transition:opacity .3s ease;width:100%}.reward-star--earned .star-glow{opacity:1}.reward-star:hover .star-glow{animation:glowPulse 1s ease-in-out infinite;opacity:1}@keyframes glowPulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}.reward-badges{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));margin:0 auto;max-width:500px}.reward-badge{align-items:center;background:#fffc;border:2px solid #fff9;border-radius:15px;box-shadow:0 4px 12px #0000001a;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:1rem .5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.reward-badge:hover{background:#ffffffe6;box-shadow:0 8px 20px #00000026;transform:translateY(-4px)}.badge-icon{font-size:2rem;line-height:1;margin-bottom:.5rem;transition:transform .3s ease}.reward-badge:hover .badge-icon{transform:scale(1.1) rotate(5deg)}.badge-name{color:#333;font-size:.7rem;font-weight:700;letter-spacing:.5px;line-height:1.2;text-align:center;text-transform:uppercase}.badge-glow{background:radial-gradient(circle at center,#ffd70033 0,#0000 70%);bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.reward-badge:hover .badge-glow{opacity:1}.reward-badge--common{border-color:#9e9e9e99}.reward-badge--rare{background:linear-gradient(135deg,#2196f31a,#fffc);border-color:#2196f399}.reward-badge--epic{background:linear-gradient(135deg,#9c27b01a,#fffc);border-color:#9c27b099}.reward-badge--legendary{background:linear-gradient(135deg,#ffc10733,#fffc);border-color:#ffc10799;box-shadow:0 4px 12px #ffc1074d}.reward-badge--new{animation:badgeNewEntry 1.5s cubic-bezier(.175,.885,.32,1.275)}@keyframes badgeNewEntry{0%{opacity:0;transform:scale(.3) rotate(-180deg) translateY(-50px)}60%{opacity:1;transform:scale(1.2) rotate(10deg) translateY(-10px)}to{opacity:1;transform:scale(1) rotate(0deg) translateY(0)}}.reward-badge--achievement{animation:badgeAchievement 2s ease-in-out}@keyframes badgeAchievement{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.1) rotate(-5deg)}50%{transform:scale(1.2) rotate(5deg)}75%{transform:scale(1.1) rotate(-3deg)}}.reward-badge--perfect{animation:badgePerfect 3s ease-in-out infinite}@keyframes badgePerfect{0%,to{box-shadow:0 4px 12px #0000001a;transform:scale(1)}50%{box-shadow:0 8px 24px #ffd70066;transform:scale(1.05)}}.badge-new-indicator{animation:newIndicatorPulse 1.5s ease-in-out infinite;background:#f44;border:2px solid #fff;border-radius:8px;color:#fff;font-size:.6rem;font-weight:700;padding:.2rem .4rem;position:absolute;right:-5px;top:-5px}@keyframes newIndicatorPulse{0%,to{background:#f44;transform:scale(1)}50%{background:#f66;transform:scale(1.1)}}.achievement-popup{animation:achievementPopupEntry 1s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:3px solid #ffd700cc;border-radius:25px;box-shadow:0 10px 40px #0000004d,0 0 30px #ffd70080;left:50%;max-width:400px;padding:2rem;position:fixed;text-align:center;top:50%;transform:translate(-50%,-50%);width:90%;z-index:1000}@keyframes achievementPopupEntry{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-10deg)}60%{opacity:1;transform:translate(-50%,-50%) scale(1.1) rotate(2deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0deg)}}.achievement-header{margin-bottom:1.5rem}.achievement-icon{animation:achievementIconSpin 2s ease-in-out infinite;font-size:4rem;margin-bottom:1rem}@keyframes achievementIconSpin{0%,to{transform:rotate(0deg) scale(1)}50%{transform:rotate(1turn) scale(1.1)}}.achievement-title{color:#333;font-size:1.8rem;margin:0;text-shadow:1px 1px 2px #ffd70080}.achievement-details{background:#ffffff80;border:2px solid #fffc;border-radius:15px;padding:1.5rem}.achievement-badge-icon{font-size:3rem;margin-bottom:1rem}.achievement-name{color:#333;font-size:1.3rem;font-weight:700;margin-bottom:.5rem}.achievement-description{color:#666;font-size:1rem;margin-bottom:1rem}.achievement-points{background:#4caf501a;border:2px solid #4caf504d;border-radius:20px;color:#4caf50;display:inline-block;font-size:1.1rem;font-weight:700;padding:.5rem 1rem}.confetti-container{position:fixed;z-index:999}.confetti-piece{animation:confettiFall linear infinite;height:10px;position:absolute;top:-10px;width:10px}.floating-particles{bottom:0;left:0;overflow:hidden;pointer-events:none;position:absolute;right:0;top:0}.floating-particle{animation:floatingParticle 6s ease-in-out infinite;font-size:1rem;opacity:.6;position:absolute}.floating-particle--1{animation-duration:5s;left:10%}.floating-particle--2{animation-duration:7s;left:25%}.floating-particle--3{animation-duration:6s;left:50%}.floating-particle--4{animation-duration:8s;left:75%}.floating-particle--5{animation-duration:5.5s;left:90%}@keyframes floatingParticle{0%,to{opacity:0;transform:translateY(0) rotate(0deg)}10%{opacity:.6}50%{opacity:.8;transform:translateY(-20px) rotate(180deg)}90%{opacity:.6}}.reward-system--small .badge-icon,.reward-system--small .reward-star{font-size:1.5rem}.reward-system--small .badge-name{font-size:.6rem}.reward-system--large .badge-icon,.reward-system--large .reward-star{font-size:2.5rem}.reward-system--large .badge-name{font-size:.8rem}.reward-system--celebrating-star{animation:systemGlow 2s ease-in-out}.reward-system--celebrating-achievement{animation:systemCelebration 4s ease-in-out}.reward-system--celebrating-perfect{animation:systemPerfect 5s ease-in-out}@keyframes systemGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.2) saturate(1.3)}}@keyframes systemCelebration{0%,to{filter:brightness(1);transform:scale(1)}25%,75%{filter:brightness(1.3) saturate(1.4);transform:scale(1.02)}50%{filter:brightness(1.5) saturate(1.5);transform:scale(1.05)}}@keyframes systemPerfect{0%,to{filter:brightness(1) hue-rotate(0deg);transform:scale(1) rotate(0deg)}20%{filter:brightness(1.3) hue-rotate(30deg);transform:scale(1.03) rotate(1deg)}40%{filter:brightness(1.5) hue-rotate(60deg);transform:scale(1.05) rotate(-1deg)}60%{filter:brightness(1.3) hue-rotate(30deg);transform:scale(1.03) rotate(1deg)}80%{filter:brightness(1.2) hue-rotate(15deg);transform:scale(1.02) rotate(-.5deg)}}.reward-notification{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #fffc;border-radius:15px;box-shadow:0 6px 20px #0003;max-width:300px;opacity:0;padding:1rem 1.5rem;position:fixed;right:20px;top:20px;transform:translateX(100%);transition:all .4s cubic-bezier(.4,0,.2,1);z-index:1001}.reward-notification--visible{opacity:1;transform:translateX(0)}.notification-content{align-items:center}.notification-icon{animation:notificationIconBounce 1s ease-in-out infinite;font-size:1.8rem}@keyframes notificationIconBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-2px)}}.notification-message{color:#333;flex:1 1;font-weight:600;line-height:1.3}.notification-close{align-items:center;background:#fffc;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:.8rem;font-weight:700;height:20px;justify-content:center;position:absolute;right:-5px;top:-5px;transition:all .2s ease;width:20px}.notification-close:hover{background:#fff;color:#333;transform:scale(1.1)}.reward-trigger{cursor:pointer;display:inline-block;position:relative;transition:all .3s ease}.reward-trigger:hover{transform:scale(1.05)}.reward-trigger:active{transform:scale(.95)}.reward-trigger--disabled{cursor:not-allowed;opacity:.5}.reward-trigger--disabled:hover{transform:none}@media (max-width:768px){.reward-badges{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(70px,1fr))}.reward-badge{padding:.75rem .5rem}.badge-icon{font-size:1.5rem}.badge-name{font-size:.6rem}.achievement-popup{margin:1rem;padding:1.5rem}.achievement-icon{font-size:3rem}.achievement-title{font-size:1.5rem}.reward-notification{left:10px;max-width:none;right:10px;top:10px}}@media (max-width:480px){.reward-stars{gap:.25rem}.reward-star{font-size:1.5rem}.reward-badges{gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(60px,1fr))}.badge-icon{font-size:1.3rem;margin-bottom:.25rem}.badge-name{font-size:.55rem}.achievement-popup{padding:1rem}.achievement-icon{font-size:2.5rem}.achievement-title{font-size:1.3rem}}@media (prefers-contrast:high){.reward-badge{background:#fffffff2;border:3px solid #000}.achievement-title,.badge-name,.reward-title{color:#000;text-shadow:none}.achievement-popup{background:#fffffffa;border:4px solid #000}.reward-notification{background:#fffffffa;border:3px solid #000}}@media (prefers-reduced-motion:reduce){.achievement-icon,.achievement-popup,.confetti-piece,.floating-particle,.notification-icon,.reward-badge--achievement,.reward-badge--new,.reward-badge--perfect,.reward-star--animated,.reward-system--celebrating-achievement,.reward-system--celebrating-perfect,.reward-system--celebrating-star{animation:none}.reward-badge:hover,.reward-trigger:hover{transform:none}.reward-notification{transition:opacity .3s ease}.reward-notification--visible{opacity:1;transform:none}}@media print{.achievement-popup,.confetti-container,.floating-particles,.reward-notification{display:none}.reward-system{background:#fff;color:#000}.reward-badge{background:#f5f5f5;border:1px solid #000}}.progress-bar{font-family:Comic Sans MS,cursive,sans-serif;position:relative}.progress-bar__header{align-items:center;display:flex;font-weight:600;justify-content:space-between;margin-bottom:.5rem}.progress-bar__label{align-items:center;display:flex;gap:.5rem}.progress-bar__label-text{color:inherit;font-size:1rem}.progress-bar__numbers{align-items:center;display:flex;font-size:.9rem;gap:.2rem;opacity:.9}.progress-bar__numbers .current{color:#4caf50;font-weight:700}.progress-bar__numbers .separator{opacity:.6}.progress-bar__numbers .total{opacity:.8}.progress-bar__percentage{border-radius:12px;font-size:1.1rem;font-weight:700;min-width:3rem;padding:.2rem .5rem;text-align:center}.progress-bar__track{background:#fff3;border-radius:15px;box-shadow:inset 0 2px 4px #0000001a;height:20px;overflow:hidden;position:relative}.progress-bar__fill{border-radius:13px;height:100%;overflow:hidden;position:relative;transition:width .8s cubic-bezier(.4,0,.2,1)}.progress-bar__shine{animation:shine 2s infinite;background:linear-gradient(90deg,#0000,#fff6,#0000);height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shine{0%{left:-100%}to{left:100%}}.progress-bar__milestones{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.progress-bar__milestone{position:absolute;top:50%;transform:translate(-50%,-50%);z-index:2}.milestone-marker{background:#fff9;border:2px solid #fffc;border-radius:50%;height:12px;transition:all .3s ease;width:12px}.progress-bar__milestone.completed .milestone-marker{animation:milestoneGlow 1s ease-in-out;background:gold;border-color:#ffed4e;box-shadow:0 0 8px #ffd70099}@keyframes milestoneGlow{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.progress-bar__motivation{font-size:.9rem;font-weight:500;margin-top:.5rem;opacity:.9;text-align:center}.motivation-text{border-radius:15px;display:inline-block;padding:.3rem .8rem;transition:all .3s ease}.progress-bar__celebration{display:flex;gap:10px;left:50%;pointer-events:none;position:absolute;top:-20px;transform:translateX(-50%)}.celebration-star{animation:celebrationFloat 1.5s ease-in-out infinite;font-size:1.5rem}.celebration-star:first-child{animation-delay:0s}.celebration-star:nth-child(2){animation-delay:.3s}.celebration-star:nth-child(3){animation-delay:.6s}@keyframes celebrationFloat{0%,to{opacity:1;transform:translateY(0) rotate(0deg)}50%{opacity:.8;transform:translateY(-15px) rotate(180deg)}}.progress-bar--primary .progress-bar__fill{background:linear-gradient(90deg,#4caf50,#8bc34a)}.progress-bar--secondary .progress-bar__fill{background:linear-gradient(90deg,#2196f3,#03a9f4)}.progress-bar--success .progress-bar__fill{background:linear-gradient(90deg,#4caf50,#66bb6a)}.progress-bar--warning .progress-bar__fill{background:linear-gradient(90deg,#ff9800,#ffb74d)}.progress-bar--danger .progress-bar__fill{background:linear-gradient(90deg,#f44336,#ef5350)}.progress-bar--rainbow .progress-bar__fill{background:linear-gradient(90deg,#ff6b6b,#4ecdc4,#45b7d1,#96ceb4,#ffeaa7,plum)}.progress-bar--small .progress-bar__track{height:12px}.progress-bar--small .progress-bar__label-text{font-size:.8rem}.progress-bar--small .progress-bar__percentage{font-size:.9rem;padding:.1rem .4rem}.progress-bar--small .milestone-marker{height:8px;width:8px}.progress-bar--medium .progress-bar__track{height:20px}.progress-bar--large .progress-bar__track{height:28px}.progress-bar--large .progress-bar__label-text{font-size:1.2rem}.progress-bar--large .progress-bar__percentage{font-size:1.3rem;padding:.3rem .7rem}.progress-bar--large .milestone-marker{height:16px;width:16px}.progress-bar--fun{transform:rotate(-1deg)}.progress-bar--fun .progress-bar__track{border-radius:20px}.progress-bar--fun .motivation-text{border:2px solid #ffffff4d}.progress-bar--minimal .progress-bar__header{margin-bottom:.25rem}.progress-bar--minimal .progress-bar__motivation{margin-top:.25rem}.progress-bar--minimal .progress-bar__track{border:none;box-shadow:none;height:8px}.progress-bar--complete .progress-bar__fill{animation:completePulse 1s ease-in-out}@keyframes completePulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.1)}}.progress-bar--complete .progress-bar__percentage{animation:percentageBounce .6s ease-out;background:#4caf50;color:#fff}@keyframes percentageBounce{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.progress-bar--animated .progress-bar__fill{position:relative}.progress-bar--animated .progress-bar__track:before{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff1a 50%,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@media (max-width:768px){.progress-bar__header{align-items:flex-start;flex-direction:column;gap:.25rem}.progress-bar__percentage{align-self:flex-end}.progress-bar__label-text{font-size:.9rem}.progress-bar__numbers{font-size:.8rem}}@media (max-width:480px){.progress-bar__track{height:16px}.progress-bar__label-text{font-size:.8rem}.progress-bar__percentage{font-size:1rem}.milestone-marker{height:10px;width:10px}.motivation-text{font-size:.8rem;padding:.2rem .6rem}}@media (prefers-contrast:high){.progress-bar__track{background:#000}.progress-bar__fill{background:#fff!important}.milestone-marker{background:#fff;border-color:#000}.progress-bar__percentage{background:#fff;color:#000}}@media (prefers-reduced-motion:reduce){.progress-bar__fill{transition:none}.celebration-star,.progress-bar--animated .progress-bar__track:before,.progress-bar__shine{animation:none}.milestone-marker{transition:none}.progress-bar--complete .progress-bar__fill,.progress-bar--complete .progress-bar__percentage{animation:none}}.progress-bar:focus-within{border-radius:4px;outline:2px solid gold;outline-offset:2px}:root{--breakpoint-xs:0px;--breakpoint-sm:480px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1440px;--breakpoint-xxl:1920px;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-xxl:3rem;--spacing-xxxl:4rem;--container-xs:100%;--container-sm:540px;--container-md:720px;--container-lg:960px;--container-xl:1140px;--container-xxl:1320px;--grid-columns:12;--grid-gutter:1rem}.responsive-layout{font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;position:relative}.responsive-layout__container{margin:0 auto;position:relative;width:100%}.responsive-layout--fullscreen{height:100vh;overflow:hidden}.responsive-layout--practice{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.responsive-layout--dashboard{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.responsive-layout--max-width-small .responsive-layout__container{max-width:540px;max-width:var(--container-sm)}.responsive-layout--max-width-medium .responsive-layout__container{max-width:720px;max-width:var(--container-md)}.responsive-layout--max-width-large .responsive-layout__container{max-width:960px;max-width:var(--container-lg)}.responsive-layout--max-width-extra-large .responsive-layout__container{max-width:1140px;max-width:var(--container-xl)}.responsive-layout--max-width-full .responsive-layout__container{max-width:100%}.responsive-layout--padding-none{padding:0}.responsive-layout--padding-small{padding:.5rem;padding:var(--spacing-sm)}.responsive-layout--padding-normal{padding:1rem;padding:var(--spacing-md)}.responsive-layout--padding-large{padding:1.5rem;padding:var(--spacing-lg)}.responsive-layout--padding-extra-large{padding:2rem;padding:var(--spacing-xl)}.responsive-layout--background-default{background:#f8f9fa}.responsive-layout--background-white{background:#fff}.responsive-layout--background-dark{background:#343a40;color:#fff}.responsive-layout--background-transparent{background:#0000}.responsive-layout--centered .responsive-layout__container{align-items:center;display:flex;justify-content:center;min-height:100vh}.responsive-layout--touch [role=button],.responsive-layout--touch button{min-height:44px;min-width:44px}.container{margin:0 auto;position:relative;width:100%}.container--small{max-width:540px;max-width:var(--container-sm)}.container--default{max-width:720px;max-width:var(--container-md)}.container--large{max-width:960px;max-width:var(--container-lg)}.container--extra-large{max-width:1140px;max-width:var(--container-xl)}.container--full{max-width:100%}.container--padding-none{padding:0}.container--padding-small{padding:.5rem;padding:var(--spacing-sm)}.container--padding-normal{padding:1rem;padding:var(--spacing-md)}.container--padding-large{padding:1.5rem;padding:var(--spacing-lg)}.container--rounded{border-radius:12px}.container--shadow{box-shadow:0 4px 12px #0000001a}.container--background-white{background:#fff}.container--background-light{background:#f8f9fa}.container--background-transparent{background:#0000}.grid{display:grid;grid-template-columns:repeat(12,1fr);grid-template-columns:repeat(var(--grid-columns),1fr);width:100%}.grid--gap-none{gap:0}.grid--gap-small{gap:.5rem;gap:var(--spacing-sm)}.grid--gap-normal{gap:1rem;gap:var(--spacing-md)}.grid--gap-large{gap:1.5rem;gap:var(--spacing-lg)}.grid--gap-extra-large{gap:2rem;gap:var(--spacing-xl)}.grid--align-start{align-items:start}.grid--align-center{align-items:center}.grid--align-end{align-items:end}.grid--align-stretch{align-items:stretch}.grid--justify-start{justify-content:start}.grid--justify-center{justify-content:center}.grid--justify-end{justify-content:end}.grid--justify-between{justify-content:space-between}.grid--justify-around{justify-content:space-around}.grid--justify-evenly{justify-content:space-evenly}.grid-column{min-width:0}.grid-column--span-1{grid-column:span 1}.grid-column--span-2{grid-column:span 2}.grid-column--span-3{grid-column:span 3}.grid-column--span-4{grid-column:span 4}.grid-column--span-5{grid-column:span 5}.grid-column--span-6{grid-column:span 6}.grid-column--span-7{grid-column:span 7}.grid-column--span-8{grid-column:span 8}.grid-column--span-9{grid-column:span 9}.grid-column--span-10{grid-column:span 10}.grid-column--span-11{grid-column:span 11}.grid-column--span-12{grid-column:span 12}.grid-column--offset-1{grid-column-start:2}.grid-column--offset-2{grid-column-start:3}.grid-column--offset-3{grid-column-start:4}.grid-column--offset-4{grid-column-start:5}.grid-column--offset-5{grid-column-start:6}.grid-column--offset-6{grid-column-start:7}.grid-column--offset-7{grid-column-start:8}.grid-column--offset-8{grid-column-start:9}.grid-column--offset-9{grid-column-start:10}.grid-column--offset-10{grid-column-start:11}.grid-column--offset-11{grid-column-start:12}.flex{display:flex}.flex--direction-row{flex-direction:row}.flex--direction-column{flex-direction:column}.flex--direction-row-reverse{flex-direction:row-reverse}.flex--direction-column-reverse{flex-direction:column-reverse}.flex--wrap-nowrap{flex-wrap:nowrap}.flex--wrap-wrap{flex-wrap:wrap}.flex--wrap-wrap-reverse{flex-wrap:wrap-reverse}.flex--align-start{align-items:flex-start}.flex--align-center{align-items:center}.flex--align-end{align-items:flex-end}.flex--align-stretch{align-items:stretch}.flex--align-baseline{align-items:baseline}.flex--justify-start{justify-content:flex-start}.flex--justify-center{justify-content:center}.flex--justify-end{justify-content:flex-end}.flex--justify-between{justify-content:space-between}.flex--justify-around{justify-content:space-around}.flex--justify-evenly{justify-content:space-evenly}.flex--gap-none{gap:0}.flex--gap-small{gap:.5rem;gap:var(--spacing-sm)}.flex--gap-normal{gap:1rem;gap:var(--spacing-md)}.flex--gap-large{gap:1.5rem;gap:var(--spacing-lg)}.flex--gap-extra-large{gap:2rem;gap:var(--spacing-xl)}.sidebar-layout{display:flex;min-height:100vh;position:relative}.sidebar-layout--left{flex-direction:row}.sidebar-layout--right{flex-direction:row-reverse}.sidebar-layout__sidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-right:1px solid #fff3;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar-layout--right .sidebar-layout__sidebar{border-left:1px solid #fff3;border-right:none}.sidebar-layout--width-small .sidebar-layout__sidebar{width:200px}.sidebar-layout--width-medium .sidebar-layout__sidebar{width:280px}.sidebar-layout--width-large .sidebar-layout__sidebar{width:360px}.sidebar-layout__main{flex:1 1;min-width:0;padding:1rem;padding:var(--spacing-md)}.sidebar-content{height:100%;padding:1rem;padding:var(--spacing-md)}.sidebar-toggle{background:#fff3;border:none;padding:.5rem;position:absolute;right:1rem;right:var(--spacing-md);top:1rem;top:var(--spacing-md);z-index:10}.sidebar-toggle:hover{background:#ffffff4d;transform:scale(1.1)}.sidebar-layout--collapsed .sidebar-layout__sidebar{width:60px}.sidebar-layout--collapsed .sidebar-content{opacity:0;pointer-events:none}.card{background:#fff;border-radius:12px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.card--shadow{box-shadow:0 4px 12px #0000001a}.card--rounded{border-radius:12px}.card--hoverable{cursor:pointer}.card--hoverable:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-4px)}.card--background-white{background:#fff;color:#333}.card--background-light{background:#f8f9fa;color:#333}.card--background-transparent{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}.card__header{border-bottom:1px solid #0000001a;padding:1.5rem 1.5rem 0;padding:var(--spacing-lg) var(--spacing-lg) 0}.card__body{padding:1.5rem;padding:var(--spacing-lg)}.card__footer{border-top:1px solid #0000001a;padding:0 1.5rem 1.5rem;padding:0 var(--spacing-lg) var(--spacing-lg)}.card--padding-small .card__body,.card--padding-small .card__footer,.card--padding-small .card__header{padding:.5rem;padding:var(--spacing-sm)}.card--padding-large .card__body,.card--padding-large .card__footer,.card--padding-large .card__header{padding:2rem;padding:var(--spacing-xl)}@media (max-width:479.98px){:root{--spacing-md:0.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem}.responsive-layout{font-size:14px}.container--padding-normal,.responsive-layout--padding-normal{padding:.5rem;padding:var(--spacing-sm)}.grid{grid-template-columns:1fr}.flex--responsive.flex--direction-row,.sidebar-layout{flex-direction:column}.sidebar-layout__sidebar{border-bottom:1px solid #fff3;border-right:none;max-height:200px;width:100%!important}.sidebar-layout--collapsed .sidebar-layout__sidebar{max-height:60px}.card__body,.card__footer,.card__header{padding:.5rem;padding:var(--spacing-sm)}.grid-column--span-sm-1{grid-column:span 1}.grid-column--span-sm-2{grid-column:span 2}.grid-column--span-sm-12{grid-column:span 12}}@media (min-width:480px) and (max-width:767.98px){.grid--responsive{grid-template-columns:repeat(6,1fr)}.sidebar-layout--collapsible .sidebar-layout__sidebar{height:100vh;position:fixed;z-index:1000}.sidebar-layout--collapsed .sidebar-layout__sidebar{transform:translateX(-100%)}.grid-column--span-sm-1{grid-column:span 1}.grid-column--span-sm-2{grid-column:span 2}.grid-column--span-sm-3{grid-column:span 3}.grid-column--span-sm-4{grid-column:span 4}.grid-column--span-sm-5{grid-column:span 5}.grid-column--span-sm-6{grid-column:span 6}}@media (min-width:768px) and (max-width:1023.98px){.grid--responsive{grid-template-columns:repeat(8,1fr)}.grid-column--span-md-1{grid-column:span 1}.grid-column--span-md-2{grid-column:span 2}.grid-column--span-md-3{grid-column:span 3}.grid-column--span-md-4{grid-column:span 4}.grid-column--span-md-5{grid-column:span 5}.grid-column--span-md-6{grid-column:span 6}.grid-column--span-md-7{grid-column:span 7}.grid-column--span-md-8{grid-column:span 8}}@media (min-width:1024px) and (max-width:1439.98px){.grid--responsive{grid-template-columns:repeat(12,1fr)}.grid-column--span-lg-1{grid-column:span 1}.grid-column--span-lg-2{grid-column:span 2}.grid-column--span-lg-3{grid-column:span 3}.grid-column--span-lg-4{grid-column:span 4}.grid-column--span-lg-5{grid-column:span 5}.grid-column--span-lg-6{grid-column:span 6}.grid-column--span-lg-7{grid-column:span 7}.grid-column--span-lg-8{grid-column:span 8}.grid-column--span-lg-9{grid-column:span 9}.grid-column--span-lg-10{grid-column:span 10}.grid-column--span-lg-11{grid-column:span 11}.grid-column--span-lg-12{grid-column:span 12}}@media (min-width:1440px){.grid-column--span-xl-1{grid-column:span 1}.grid-column--span-xl-2{grid-column:span 2}.grid-column--span-xl-3{grid-column:span 3}.grid-column--span-xl-4{grid-column:span 4}.grid-column--span-xl-5{grid-column:span 5}.grid-column--span-xl-6{grid-column:span 6}.grid-column--span-xl-7{grid-column:span 7}.grid-column--span-xl-8{grid-column:span 8}.grid-column--span-xl-9{grid-column:span 9}.grid-column--span-xl-10{grid-column:span 10}.grid-column--span-xl-11{grid-column:span 11}.grid-column--span-xl-12{grid-column:span 12}}@media (orientation:portrait){.flex--responsive.flex--direction-row,.sidebar-layout{flex-direction:column}}@media (prefers-contrast:high){.card--shadow,.container--shadow{box-shadow:0 0 0 3px #000}.sidebar-layout__sidebar{background:#ffffffe6;border-color:#000}.card,.sidebar-toggle{border:2px solid #000}.sidebar-toggle{background:#fff;color:#000}}@media (prefers-reduced-motion:reduce){.card,.card--hoverable:hover,.sidebar-layout__sidebar,.sidebar-toggle{transition:none}.card--hoverable:hover,.sidebar-toggle:hover{transform:none}}@media print{.responsive-layout{background:#fff!important;color:#000!important}.sidebar-layout{flex-direction:column}.sidebar-layout__sidebar{display:none}.sidebar-layout__main{padding:0}.card{background:#fff;border:1px solid #000;box-shadow:none;color:#000}.card__body,.card__footer,.card__header{padding:1rem}.sidebar-toggle{display:none}}@media (prefers-color-scheme:dark){.responsive-layout--background-default{background:#1a1a1a;color:#e0e0e0}.card--background-white,.container--background-white{background:#2d2d2d;color:#e0e0e0}.card--background-light,.container--background-light{background:#3a3a3a;color:#e0e0e0}.sidebar-layout__sidebar{background:#0000004d;border-color:#ffffff1a}.card__footer,.card__header{border-color:#ffffff1a}}.navigation{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:2px solid #fff3;box-shadow:0 2px 12px #0000001a;font-family:Comic Sans MS,cursive,sans-serif;position:relative;z-index:100}.navigation--transparent{background:#ffffff1a;border-bottom-color:#ffffff1a}.navigation--sticky{position:-webkit-sticky;position:sticky;top:0}.navigation--compact{padding:.5rem 0}.navigation__container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;min-height:60px;padding:0 1rem}.navigation__brand{flex-shrink:0}.brand-link{align-items:center;color:inherit;display:flex;gap:.75rem;text-decoration:none;transition:transform .3s ease}.brand-link:hover{transform:scale(1.02)}.brand-logo{animation:logoGlow 3s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 12px #0003;font-size:2rem;padding:.5rem}@keyframes logoGlow{0%,to{box-shadow:0 4px 12px #0003}50%{box-shadow:0 4px 20px #667eea66}}.brand-text{display:flex;flex-direction:column}.brand-title{color:#333;font-size:1.4rem;font-weight:700;line-height:1}.brand-subtitle{color:#666;font-size:.8rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.mobile-menu-toggle{background:#0000;border:none;cursor:pointer;display:none;flex-direction:column;height:30px;justify-content:space-around;padding:0;position:relative;width:30px;z-index:101}.hamburger-line{background:#333;border-radius:2px;height:3px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.navigation--mobile-open .hamburger-line:first-child{transform:rotate(45deg) translate(6px,6px)}.navigation--mobile-open .hamburger-line:nth-child(2){opacity:0}.navigation--mobile-open .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.navigation__menu{display:flex;flex:1 1;justify-content:center}.navigation__list{align-items:center;display:flex;gap:.5rem;list-style:none;margin:0;padding:0}.navigation__item{position:relative}.navigation__link{align-items:center;border-radius:12px;color:#333;display:flex;font-weight:500;gap:.5rem;justify-content:center;min-width:80px;overflow:hidden;padding:.75rem 1rem;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.navigation__link:hover{background:#667eea1a;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.navigation__link--active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #667eea4d;color:#fff}.navigation__link--active:hover{background:linear-gradient(135deg,#5a6fd8,#6b4190)}.navigation__icon{font-size:1.3rem;line-height:1}.navigation__label{font-size:.9rem;font-weight:600}.navigation__indicator{background:gold;border-radius:2px;bottom:-2px;height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80%}.navigation__user{align-items:center;display:flex;flex-shrink:0;gap:1rem}.user-profile{background:#ffffff80;border:1px solid #ffffff4d;border-radius:12px;gap:.75rem;padding:.5rem}.user-avatar,.user-profile{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 2px 8px #0003;color:#fff;font-size:1.2rem;font-weight:700;height:40px;justify-content:center;width:40px}.user-info{display:flex;flex-direction:column}.user-name{color:#333;font-size:.9rem;font-weight:600;line-height:1.2}.user-role{color:#666;font-size:.7rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.user-actions{display:flex;gap:.5rem}.action-button{align-items:center;background:#fff3;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:1.1rem;height:36px;justify-content:center;transition:all .3s ease;width:36px}.action-button:hover{background:#ffffff4d;box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.logout-button:hover{background:#f4433633}.mobile-menu-overlay{animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:99}.breadcrumb{font-family:Comic Sans MS,cursive,sans-serif;padding:.75rem 0}.breadcrumb__list{flex-wrap:wrap;list-style:none;margin:0;padding:0}.breadcrumb__item,.breadcrumb__list{align-items:center;display:flex;gap:.5rem}.breadcrumb__link{align-items:center;background:#0000;border:none;border-radius:6px;color:#666;cursor:pointer;display:flex;font-size:.85rem;gap:.25rem;padding:.25rem .5rem;text-decoration:none;transition:all .3s ease}.breadcrumb__link:hover{background:#667eea1a;color:#333}.breadcrumb__current{align-items:center;color:#333;display:flex;font-size:.85rem;font-weight:600;gap:.25rem;padding:.25rem .5rem}.breadcrumb__icon{font-size:.9rem}.breadcrumb__separator{color:#999;font-size:.8rem;-webkit-user-select:none;user-select:none}.page-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-bottom:1px solid #ffffff1a;font-family:Comic Sans MS,cursive,sans-serif}.page-header--background-gradient{background:linear-gradient(135deg,#667eea1a,#764ba21a)}.page-header--background-solid{background:#fffffff2;border-bottom-color:#0000001a}.page-header__container{margin:0 auto;max-width:1200px;padding:1.5rem 1rem}.page-header__breadcrumbs{margin-bottom:1rem}.page-header__content{align-items:center;display:flex;gap:2rem;justify-content:space-between}.page-header__main{flex:1 1}.page-header__title-section{align-items:center;display:flex;gap:1rem}.page-header__icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:15px;font-size:3rem;padding:1rem}.page-header__text{flex:1 1}.page-header__title{color:inherit;font-size:2.5rem;font-weight:700;line-height:1.2;margin:0;text-shadow:1px 1px 2px #0000001a}.page-header__subtitle{color:#fffc;font-size:1.1rem;font-weight:500;margin:.5rem 0 0}.page-header__actions{align-items:center;display:flex;gap:1rem}.sidebar-navigation{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-right:1px solid #fff3;height:100vh;overflow:hidden;position:relative;transition:width .3s cubic-bezier(.4,0,.2,1);width:250px}.sidebar-navigation--collapsed{width:70px}.sidebar-navigation__header{border-bottom:1px solid #ffffff1a;padding:1rem}.sidebar-toggle{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:inherit;cursor:pointer;font-size:1.2rem;padding:.75rem;transition:all .3s ease;width:100%}.sidebar-toggle:hover{background:#fff3}.sidebar-navigation__nav{padding:1rem 0}.sidebar-navigation__list{list-style:none;margin:0;padding:0}.sidebar-navigation__item{margin-bottom:.5rem}.sidebar-navigation__link{align-items:center;border-radius:8px;color:inherit;display:flex;gap:1rem;margin:0 .5rem;padding:.75rem 1rem;text-decoration:none;transition:all .3s ease}.sidebar-navigation__link:hover{background:#ffffff1a}.sidebar-navigation__link--active{background:#fff3;box-shadow:0 2px 8px #0000001a}.sidebar-navigation__icon{font-size:1.3rem;min-width:1.3rem}.sidebar-navigation__label{font-size:.9rem;font-weight:500;opacity:1;transition:opacity .3s ease;white-space:nowrap}.sidebar-navigation--collapsed .sidebar-navigation__label{opacity:0}.tab-navigation{background:#ffffff1a;border-radius:12px;display:flex;font-family:Comic Sans MS,cursive,sans-serif;gap:.25rem;padding:.25rem}.tab-navigation--small .tab-navigation__tab{font-size:.85rem;padding:.5rem 1rem}.tab-navigation--large .tab-navigation__tab{font-size:1.1rem;padding:1rem 1.5rem}.tab-navigation__tab{align-items:center;background:#0000;border:none;border-radius:8px;color:#ffffffb3;cursor:pointer;display:flex;font-family:inherit;font-size:.9rem;font-weight:500;gap:.5rem;overflow:hidden;padding:.75rem 1.25rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.tab-navigation__tab:hover{background:#ffffff1a;color:#ffffffe6}.tab-navigation__tab--active{background:#fff3;box-shadow:0 2px 8px #0003;color:#fff}.tab-navigation__icon{font-size:1.1rem}.tab-navigation__badge{background:#f44;border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;line-height:1;min-width:1.2rem;padding:.2rem .4rem;text-align:center}@media (max-width:768px){.mobile-menu-toggle{display:flex}.navigation__menu{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border-bottom:1px solid #0000001a;box-shadow:0 4px 20px #0003;left:0;opacity:0;position:fixed;right:0;top:100%;transform:translateY(-100%);transition:all .3s cubic-bezier(.4,0,.2,1);visibility:hidden;z-index:100}.navigation--mobile-open .navigation__menu{opacity:1;transform:translateY(0);visibility:visible}.navigation__list{flex-direction:column;gap:.5rem;padding:1rem}.navigation__link{justify-content:flex-start;min-width:auto;padding:1rem;width:100%}.user-profile{flex-direction:column;gap:.5rem;text-align:center}.user-info{align-items:center}.brand-text{display:none}.page-header__content{align-items:flex-start;flex-direction:column;gap:1rem}.page-header__title-section{align-items:flex-start;flex-direction:column;text-align:left}.page-header__title{font-size:2rem}.page-header__icon{font-size:2.5rem;padding:.75rem}.sidebar-navigation{left:-250px;position:fixed;transition:left .3s cubic-bezier(.4,0,.2,1);z-index:1000}.sidebar-navigation--open{left:0}.tab-navigation{flex-wrap:wrap}}@media (max-width:480px){.navigation__container{min-height:50px;padding:0 .5rem}.brand-logo{font-size:1.5rem;padding:.4rem}.action-button,.user-avatar{font-size:1rem;height:32px;width:32px}.page-header__container{padding:1rem .5rem}.page-header__title{font-size:1.8rem}.page-header__icon{font-size:2rem;padding:.5rem}.breadcrumb__current,.breadcrumb__link{font-size:.8rem;padding:.2rem .4rem}.tab-navigation__tab{font-size:.8rem;padding:.6rem 1rem}.tab-navigation__icon{font-size:1rem}}@media (prefers-contrast:high){.navigation{background:#fffffffa;border-bottom:3px solid #000}.navigation__link{border:2px solid #0000}.navigation__link--active{background:#000;border-color:#fff;color:#fff}.action-button,.user-profile{background:#ffffffe6;border:2px solid #000}.action-button{color:#000}.page-header{background:#fffffffa;border-bottom:3px solid #000;color:#000}.sidebar-navigation{background:#fffffffa;border-right:3px solid #000}.tab-navigation__tab--active{background:#000;color:#fff}}@media (prefers-reduced-motion:reduce){.action-button,.brand-link,.breadcrumb__link,.hamburger-line,.logo-glow,.mobile-menu-toggle,.navigation__link,.sidebar-navigation__link,.sidebar-toggle,.tab-navigation__tab{animation:none;transition:none}.action-button:hover,.brand-link:hover,.navigation__link:hover{transform:none}.mobile-menu-overlay{animation:none}}@media print{.mobile-menu-overlay,.navigation,.sidebar-navigation{display:none}.page-header{background:#fff;border-bottom:2px solid #000;color:#000}.breadcrumb__link{color:#000}}@media (prefers-color-scheme:dark){.navigation{background:#000000e6;border-bottom-color:#ffffff1a}.brand-title{color:#e0e0e0}.brand-subtitle{color:#b0b0b0}.navigation__link{color:#e0e0e0}.hamburger-line{background:#e0e0e0}.user-name{color:#e0e0e0}.user-role{color:#b0b0b0}.breadcrumb__current{color:#e0e0e0}.page-header,.sidebar-navigation{background:#0000004d}.sidebar-navigation{border-right-color:#ffffff1a}}.student-dashboard{font-family:Comic Sans MS,cursive,sans-serif;padding-bottom:2rem}.dashboard-hero{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:20px;display:flex;justify-content:space-between;margin-bottom:3rem;overflow:hidden;padding:3rem;position:relative}.hero-content{flex:1 1;max-width:600px}.hero-content h1{margin-bottom:1rem}.hero-content p{margin-bottom:2rem;opacity:.9}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem}.hero-visual{flex-shrink:0;height:200px;margin-left:2rem;position:relative;width:200px}.floating-math{height:100%;position:relative;width:100%}.math-symbol{animation:float 3s ease-in-out infinite;color:#fff9;font-size:3rem;font-weight:700;position:absolute}.math-symbol:first-child{animation-delay:0s;left:10%;top:10%}.math-symbol:nth-child(2){animation-delay:.5s;right:10%;top:10%}.math-symbol:nth-child(3){animation-delay:1s;bottom:10%;left:10%}.math-symbol:nth-child(4){animation-delay:1.5s;bottom:10%;right:10%}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}.available-sets{margin-bottom:3rem}.math-set-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:15px;cursor:pointer;padding:1.5rem;transition:all .3s ease}.math-set-card:hover{border-color:#fff6;box-shadow:0 10px 25px #0003;transform:translateY(-5px)}.set-header{align-items:flex-start;gap:1rem}.set-icon{flex-shrink:0;font-size:2rem}.set-meta{margin-bottom:1rem}.set-meta span{border-radius:20px;color:#ffffffe6;font-size:.8rem}.set-actions{display:flex;justify-content:center}.no-sets-message{background:#ffffff0d;border:2px dashed #ffffff4d;border-radius:15px;padding:3rem 2rem;text-align:center}.available-sets,.progress-overview,.recent-achievements,.recent-activity{margin-bottom:3rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.stat-label{color:#fffc;font-weight:500}.progress-chart-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:16px;height:100%;padding:1.5rem}.progress-chart-card h3{color:#fff;margin-bottom:1rem}.no-data{align-items:center;background:#ffffff0d;border:2px dashed #fff3;border-radius:12px;display:flex;justify-content:center}.no-data,.weekly-chart{height:200px}.chart-bar{max-width:40px}.bar-value{font-size:.7rem}.chart-label{font-size:.8rem}.chart-summary{border-top:1px solid #fff3;padding-top:1rem;text-align:center}.current-set-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:16px;display:flex;flex-direction:column;height:100%;padding:1.5rem}.current-set-card h3{color:#fff;margin-bottom:1rem}.current-set-content{display:flex;flex:1 1;flex-direction:column;gap:1rem}.set-info{flex:1 1}.set-name{color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.set-meta span{border-radius:12px;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.set-progress{margin:1rem 0}.no-current-set{align-items:center;display:flex;flex:1 1;justify-content:center;padding:2rem;text-align:center}.achievements-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.achievement-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;cursor:pointer;gap:1rem;padding:1rem;transition:all .3s ease}.achievement-card:hover{background:#ffffff26;box-shadow:0 4px 16px #0003;transform:translateY(-2px)}.achievement-icon{align-items:center;background:#fff3;border-radius:10px;display:flex;font-size:2rem;height:50px;justify-content:center;min-width:50px;padding:.5rem}.achievement-title{margin-bottom:.25rem}.achievement-description{color:#fffc;font-size:.8rem;line-height:1.3;margin-bottom:.25rem}.achievement-date{color:#fff9;font-size:.7rem;font-weight:500}.activity-list{background:#ffffff0d;border-radius:12px;overflow:hidden}.activity-item{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;gap:1rem;padding:1rem;transition:background .3s ease}.activity-item:last-child{border-bottom:none}.activity-icon,.activity-item:hover{background:#ffffff1a}.activity-icon{align-items:center;border-radius:8px;display:flex;font-size:1.5rem;height:45px;justify-content:center;min-width:45px;padding:.5rem}.activity-content{flex:1 1}.activity-title{color:#fff;font-size:.9rem;font-weight:700;margin-bottom:.25rem}.activity-details{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.25rem}.activity-details span{color:#fffc;font-size:.8rem}.activity-date{color:#fff9;font-size:.7rem}.no-activity{background:#ffffff0d;border:2px dashed #fff3;border-radius:12px;padding:3rem 2rem;text-align:center}.no-activity p{margin-bottom:1.5rem}.sets-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.set-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:16px;cursor:pointer;overflow:hidden;padding:1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.set-card:hover{background:#ffffff26;box-shadow:0 8px 24px #0003;transform:translateY(-4px)}.set-card--completed{background:#4caf501a;border-color:#4caf5080}.set-card--current{background:#ffc1071a;border-color:#ffc10780;box-shadow:0 0 20px #ffc1074d}.set-card--locked{cursor:not-allowed;opacity:.6}.set-card--locked:hover{background:#ffffff1a;box-shadow:none;transform:none}.set-header{justify-content:space-between;margin-bottom:1rem}.set-header,.set-status{align-items:center;display:flex}.set-status{background:#fff3;border-radius:8px;font-size:1.5rem;height:40px;justify-content:center;padding:.5rem;width:40px}.set-difficulty-badge{background:#fff3;border-radius:12px;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.set-content{margin-bottom:1.5rem}.set-title{color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:.5rem}.set-description{color:#fffc;font-size:.9rem;line-height:1.4;margin-bottom:.75rem}.set-meta{display:flex;flex-wrap:wrap;gap:.5rem}.set-meta span{background:#fff3;border-radius:8px;font-size:.7rem;font-weight:500;padding:.2rem .4rem}.set-actions{margin-top:auto}@media (max-width:768px){.dashboard-hero{flex-direction:column;padding:2rem;text-align:center}.hero-visual{height:150px;margin-left:0;margin-top:2rem;width:150px}.hero-actions{justify-content:center}.math-symbol{font-size:2rem}.stat-card{padding:1rem}.stat-icon{font-size:2rem;height:50px;min-width:50px}.stat-value{font-size:1.5rem}.achievements-grid,.sets-grid{grid-template-columns:1fr}.activity-details{flex-direction:column;gap:.25rem}.chart-bars{gap:.25rem}.chart-bar{max-width:30px}}@media (max-width:480px){.student-dashboard{padding-bottom:1rem}.dashboard-hero{margin-bottom:2rem;padding:1.5rem}.hero-actions{flex-direction:column;width:100%}.hero-actions button{width:100%}.section-header{align-items:flex-start;flex-direction:column;gap:1rem}.current-set-card,.progress-chart-card{padding:1rem}.weekly-chart{height:150px}.achievement-card{flex-direction:column;text-align:center}.activity-item{align-items:flex-start;flex-direction:column;gap:.75rem}.set-card{padding:1rem}}@media (prefers-contrast:high){.achievement-card,.activity-list,.current-set-card,.progress-chart-card,.set-card,.stat-card{background:#ffffffe6;border:3px solid #000;color:#000}.chart-bar{background:#000}.dashboard-hero{background:#ffffffe6;border:3px solid #000;color:#000}.math-symbol{color:#0000004d}}@media (prefers-reduced-motion:reduce){.achievement-card,.activity-item,.chart-bar,.set-card,.stat-card{transition:none}.achievement-card:hover,.set-card:hover,.stat-card:hover{transform:none}.float,.math-symbol,.spinner{animation:none}}@media print{.dashboard-hero,.floating-math{display:none}.student-dashboard{background:#fff;color:#000}.achievement-card,.current-set-card,.progress-chart-card,.set-card,.stat-card{background:#fff;border:2px solid #000;box-shadow:none;color:#000}.weekly-chart{display:none}}.all-sets-completed{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;margin-bottom:2rem;overflow:hidden;padding:3rem 2rem;position:relative;text-align:center}.completion-content{position:relative;z-index:2}.completion-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-top:2rem}.completion-visual{pointer-events:none;z-index:1}.celebration-icons,.completion-visual{bottom:0;left:0;position:absolute;right:0;top:0}.celebration-icons{align-items:center;display:flex;justify-content:space-around;opacity:.3}.celebration-icon{animation:float 3s ease-in-out infinite;font-size:3rem}.celebration-icon:first-child{animation-delay:0s}.celebration-icon:nth-child(2){animation-delay:.5s}.celebration-icon:nth-child(3){animation-delay:1s}.celebration-icon:nth-child(4){animation-delay:1.5s}@media (max-width:768px){.all-sets-completed{padding:2rem 1rem}.completion-actions{align-items:center;flex-direction:column}.completion-actions button{max-width:300px;width:100%}.celebration-icon{font-size:2rem}}@media (max-width:480px){.all-sets-completed{padding:1.5rem 1rem}.celebration-icon{font-size:1.5rem}}.teacher-dashboard{font-family:Comic Sans MS,cursive,sans-serif;padding-bottom:2rem}.card-header-content{align-items:center;display:flex;justify-content:space-between;width:100%}.quick-stats{margin-bottom:1rem}.stat-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:16px;cursor:pointer;display:flex;gap:1rem;height:100%;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:hover{background:#ffffff26;box-shadow:0 8px 24px #0003;transform:translateY(-4px)}.recent-students{display:flex;flex-direction:column;gap:1rem}.student-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:all .3s ease}.student-item:hover{background:#ffffff1a;transform:translateX(4px)}.student-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 2px 8px #0003;display:flex;font-size:1.5rem;height:50px;justify-content:center;width:50px}.student-info{flex:1 1}.student-name{font-size:1rem}.student-stats{color:#fffc;font-size:.8rem;margin-bottom:.25rem}.student-activity{color:#fff9;font-size:.7rem}.student-accuracy{background:#4caf5033;border-radius:8px;color:#4caf50;font-size:1.2rem;font-weight:700;min-width:60px;padding:.5rem;text-align:center}.active-assignments{display:flex;flex-direction:column;gap:1rem}.assignment-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;gap:1rem;justify-content:space-between;padding:1rem;transition:all .3s ease}.assignment-item:hover{background:#ffffff1a}.assignment-info{flex:1 1}.assignment-title{font-size:.9rem;margin-bottom:.25rem}.assignment-due{color:#ffffffb3;font-size:.8rem}.assignment-progress{min-width:120px;text-align:right}.progress-text{color:#fffc;font-size:.8rem;margin-bottom:.25rem}.no-assignments{color:#fff9;padding:2rem;text-align:center}.students-tab{display:flex;flex-direction:column;gap:2rem}.students-header{text-align:center}.students-header h2{color:#fff;margin-bottom:.5rem}.students-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.student-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.student-card:hover{background:#ffffff26;box-shadow:0 8px 24px #0003;transform:translateY(-4px)}.student-card-header{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.student-avatar-large{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 12px #0003;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.student-basic-info{flex:1 1}.student-name{color:#fff;font-size:1.2rem;font-weight:700;margin-bottom:.25rem}.student-username{color:#fffc;font-size:.9rem;margin-bottom:.25rem}.student-joined{color:#fff9;font-size:.8rem}.student-stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr);margin-bottom:1rem}.stat-item{background:#ffffff1a;border-radius:8px;padding:.75rem}.stat-item .stat-value{color:#fff;display:block;font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.stat-item .stat-label{color:#fffc;font-size:.7rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.student-activity{border-top:1px solid #ffffff1a;padding-top:1rem;text-align:center}.assignments-tab{display:flex;flex-direction:column;gap:2rem}.assignments-header{align-items:center;display:flex;justify-content:space-between}.assignments-header h2{color:#fff;margin-bottom:.5rem}.assignments-list{display:flex;flex-direction:column;gap:1rem}.assignment-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.assignment-card:hover{background:#ffffff26;box-shadow:0 4px 16px #0003;transform:translateY(-2px)}.assignment-card-content{align-items:center;display:flex;gap:2rem}.assignment-main{flex:1 1}.assignment-title{color:#fff;font-size:1.2rem;font-weight:700;margin-bottom:.5rem}.assignment-description{color:#fffc;font-size:.9rem;line-height:1.4;margin-bottom:.75rem}.assignment-meta{display:flex;flex-wrap:wrap;gap:1rem}.assignment-meta span{background:#ffffff1a;border-radius:12px;color:#ffffffb3;font-size:.8rem;padding:.25rem .5rem}.assignment-status{font-weight:500;text-transform:capitalize}.assignment-status--active{background:#4caf5033;color:#4caf50}.assignment-status--draft{background:#9e9e9e33;color:#9e9e9e}.assignment-status--completed{background:#2196f333;color:#2196f3}.assignment-progress{min-width:200px}.no-assignments-state{align-items:center;background:#ffffff0d;border:2px dashed #fff3;border-radius:16px;display:flex;flex-direction:column;gap:1rem;padding:4rem 2rem;text-align:center}.no-assignments-icon{font-size:4rem;opacity:.5}.analytics-tab{display:flex;flex-direction:column;gap:2rem}.analytics-tab h2{color:#fff;margin-bottom:1rem;text-align:center}.completion-rates{display:flex;flex-direction:column;gap:1rem}.completion-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:1rem;padding:1rem}.completion-info{min-width:200px}.completion-name{color:#fff;font-size:.9rem;font-weight:700;margin-bottom:.25rem}.completion-stats{color:#ffffffb3;font-size:.8rem}.completion-progress{flex:1 1}.performance-distribution{padding:1rem 0}.performance-chart{display:flex;flex-direction:column;gap:.75rem}.chart-bar-item{align-items:center;display:flex;gap:1rem}.chart-bar-label{color:#fffc;font-size:.8rem;font-weight:500;min-width:80px}.chart-bar-container{background:#ffffff1a;border-radius:15px;height:30px;overflow:hidden;position:relative}.chart-bar{align-items:center;border-radius:15px;height:100%;justify-content:flex-end;min-width:30px;padding-right:.5rem;transition:width .5s ease}.chart-bar-value{color:#fff;font-size:.8rem;font-weight:700;text-shadow:1px 1px 2px #00000080}.activity-summary{display:flex;flex-direction:column;gap:1.5rem}.summary-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;justify-content:space-between;padding:1rem}.summary-label{color:#fffc;font-size:.9rem;font-weight:500}.summary-value{color:#fff;font-size:1.1rem;font-weight:700}@media (max-width:768px){.students-grid{grid-template-columns:1fr}.assignment-card-content{align-items:flex-start;flex-direction:column;gap:1rem}.assignment-progress{min-width:0;min-width:auto;width:100%}.assignments-header{align-items:flex-start;flex-direction:column;gap:1rem}.student-stats-grid{gap:.5rem;grid-template-columns:repeat(2,1fr)}.stat-card{flex-direction:column;padding:1rem;text-align:center}.stat-icon{margin-bottom:.5rem}.chart-bar-item{align-items:flex-start;flex-direction:column;gap:.5rem}.chart-bar-container{width:100%}.completion-item{align-items:flex-start;flex-direction:column;gap:.75rem}.completion-info{min-width:0;min-width:auto;width:100%}.completion-progress{width:100%}}@media (max-width:480px){.teacher-dashboard{padding-bottom:1rem}.student-card-header{flex-direction:column;text-align:center}.student-stats-grid{grid-template-columns:repeat(2,1fr)}.assignment-meta{flex-direction:column;gap:.5rem}.progress-header{gap:.25rem}.progress-header,.summary-item{align-items:flex-start;flex-direction:column}.summary-item{gap:.5rem}.card-header-content{align-items:flex-start;flex-direction:column;gap:1rem}}@media (prefers-contrast:high){.assignment-card,.chart-bar-container,.completion-item,.stat-card,.student-card,.summary-item{background:#ffffffe6;border:3px solid #000;color:#000}.chart-bar{background:#000!important}.student-avatar,.student-avatar-large{background:#000;color:#fff}}@media (prefers-reduced-motion:reduce){.assignment-card,.assignment-item,.chart-bar,.stat-card,.student-card,.student-item{transition:none}.assignment-card:hover,.stat-card:hover,.student-card:hover{transform:none}.spinner{animation:none}}@media print{.teacher-dashboard{background:#fff;color:#000}.assignment-card,.stat-card,.student-card{background:#fff;border:2px solid #000;box-shadow:none;color:#000}.dashboard-tabs{display:none}.chart-bar{background:#333!important}}.dashboard-navigation{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-bottom:2px solid #fff3;display:flex;justify-content:space-between;margin-bottom:2rem;padding:1rem 2rem}.nav-left,.nav-right{flex:1 1}.nav-center{flex:2 1;text-align:center}.nav-left{text-align:left}.nav-right{text-align:right}.nav-brand{align-items:center;display:flex;height:100%;justify-content:center}.brand-text{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#333;font-size:1rem;font-weight:600;padding:.5rem 1rem;text-shadow:0 1px 2px #fffc;transition:all .2s ease;white-space:nowrap}.brand-text:hover{background:#ffffff26;transform:translateY(-1px)}.parent-dashboard{font-family:Comic Sans MS,cursive,sans-serif;padding-bottom:2rem}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:4rem 2rem}.spinner{border:4px solid #ffffff4d;border-top-color:#667eea;height:60px;width:60px}.dashboard-tabs{margin-bottom:2rem}.tab-content{min-height:600px}.overview-tab{display:flex;flex-direction:column;gap:2rem}.family-stats{margin-bottom:1rem}.family-stats h2{margin-bottom:1.5rem;text-align:center}.family-stat-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:16px;cursor:pointer;display:flex;gap:1rem;height:100%;padding:1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.family-stat-card:hover{background:#ffffff26;box-shadow:0 8px 24px #0003;transform:translateY(-4px)}.stat-icon{align-items:center;background:#fff3;border-radius:12px;display:flex;font-size:2.5rem;height:60px;justify-content:center;min-width:60px;padding:.75rem}.stat-content{flex:1 1}.stat-value{color:#fff;font-size:2rem;line-height:1;margin-bottom:.25rem}.stat-label{color:#ffffffe6;font-size:.9rem;font-weight:600;margin-bottom:.25rem}.stat-detail{color:#ffffffb3;font-size:.75rem;font-weight:500}.child-overview{margin-top:2rem}.child-selector{display:flex;flex-direction:column;gap:1rem}.child-selector-item{align-items:center;background:#ffffff0d;border:2px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:all .3s ease}.child-selector-item:hover{background:#ffffff1a;transform:translateX(4px)}.child-selector-item--active{background:#ffffff26;border-color:#ffc10780;box-shadow:0 0 20px #ffc1074d}.child-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 2px 8px #0003;display:flex;font-size:1.5rem;height:50px;justify-content:center;width:50px}.child-info{flex:1 1}.child-name{font-size:1rem}.child-details{color:#fffc;font-size:.8rem;margin-bottom:.25rem}.child-activity{color:#fff9;font-size:.7rem}.child-level{background:#ffd70033;border-radius:8px;color:gold;font-size:1rem;font-weight:700;min-width:80px;padding:.5rem;text-align:center}.child-detail-header{align-items:center;display:flex;justify-content:space-between;width:100%}.no-child-selected{align-items:center;display:flex;height:200px;justify-content:center;text-align:center}.child-progress-detail{display:flex;flex-direction:column;gap:1.5rem}.progress-stat{background:#ffffff1a;border-radius:8px;padding:1rem;text-align:center}.progress-stat-label{color:#fffc;font-size:.8rem;font-weight:500;margin-bottom:.5rem}.progress-stat-value{color:#fff;font-size:1.5rem;font-weight:700}.weekly-progress{margin-top:1rem}.weekly-progress h4{color:#fff;margin-bottom:1rem}.weekly-chart{display:flex;flex-direction:column;height:120px}.chart-bars{align-items:flex-end;display:flex;flex:1 1;gap:.5rem;padding:1rem 0}.chart-bar-container{align-items:center;display:flex;flex:1 1;flex-direction:column;height:100%}.chart-bar{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px 4px 0 0;cursor:pointer;display:flex;justify-content:center;max-width:30px;padding-top:.25rem;position:relative;transition:all .3s ease;width:100%}.chart-bar:hover{background:linear-gradient(135deg,#5a6fd8,#6b4190);transform:scaleY(1.05)}.bar-value{color:#fff;font-size:.6rem;font-weight:700;opacity:0;transition:opacity .3s ease}.chart-bar:hover .bar-value{opacity:1}.chart-label{color:#fffc;font-size:.7rem;font-weight:500;margin-top:.5rem}.recent-achievements{margin-top:1rem}.recent-achievements h4{color:#fff;margin-bottom:1rem}.achievements-list{display:flex;flex-direction:column;gap:.5rem}.achievement-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;display:flex;gap:.75rem;padding:.75rem}.achievement-icon{font-size:1.2rem}.achievement-title{color:#fff;font-size:.9rem;font-weight:500}.children-tab{display:flex;flex-direction:column;gap:2rem}.children-header{text-align:center}.children-header h2{color:#fff;margin-bottom:.5rem}.children-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.child-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;transition:all .3s cubic-bezier(.4,0,.2,1)}.child-card:hover{background:#ffffff26;box-shadow:0 8px 24px #0003;transform:translateY(-4px)}.child-card-header{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem;position:relative}.child-avatar-large{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 12px #0003;display:flex;font-size:2rem;height:60px;justify-content:center;width:60px}.child-basic-info{flex:1 1}.child-name{color:#fff;font-size:1.2rem;font-weight:700;margin-bottom:.25rem}.child-relationship{color:#fffc;font-size:.9rem;font-style:italic;margin-bottom:.25rem}.child-grade{color:#fff9;font-size:.8rem}.child-level-badge{background:linear-gradient(135deg,gold,#ffed4e);border-radius:12px;box-shadow:0 2px 8px #ffd7004d;color:#333;font-size:.8rem;font-weight:700;padding:.25rem .5rem;position:absolute;right:0;top:0}.child-stats-summary{background:#ffffff0d;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:1rem}.stat-row{align-items:center;display:flex;font-size:.9rem;justify-content:space-between}.stat-row span:first-child{color:#fffc}.stat-row span:last-child{color:#fff;font-weight:600}.child-card-actions{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.child-last-active{border-top:1px solid #ffffff1a;padding-top:1rem;text-align:center}.goals-tab{display:flex;flex-direction:column;gap:2rem}.goals-header{align-items:center;display:flex;justify-content:space-between}.goals-header h2{color:#fff;margin-bottom:.5rem}.goals-list{display:flex;flex-direction:column;gap:1rem}.goal-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;transition:all .3s cubic-bezier(.4,0,.2,1)}.goal-card:hover{background:#ffffff26;box-shadow:0 4px 16px #0003;transform:translateY(-2px)}.goal-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.goal-info{flex:1 1}.goal-title{color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.goal-child{color:#fffc;font-size:.9rem;font-style:italic}.goal-status{background:#fff3;border-radius:12px;font-size:.7rem;font-weight:700;padding:.25rem .5rem;text-transform:capitalize}.goal-status--in_progress{background:#ffc10733;color:#ffc107}.goal-status--completed{background:#4caf5033;color:#4caf50}.goal-status--paused{background:#9e9e9e33;color:#9e9e9e}.goal-description{color:#fffc;font-size:.9rem;line-height:1.4;margin-bottom:1rem}.goal-progress{margin-top:1rem}.progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.no-goals-state{align-items:center;background:#ffffff0d;border:2px dashed #fff3;border-radius:16px;display:flex;flex-direction:column;gap:1rem;padding:4rem 2rem;text-align:center}.no-goals-icon{font-size:4rem;opacity:.5}.notifications-tab{display:flex;flex-direction:column;gap:2rem}.notifications-header{text-align:center}.notifications-header h2{color:#fff;margin-bottom:.5rem}.notifications-list{display:flex;flex-direction:column;gap:1rem}.notification-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;cursor:pointer;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.notification-card--unread{background:#ffc1071a;border-left-color:#ffc107;border-left-width:4px}.notification-card:hover{background:#ffffff26;box-shadow:0 4px 16px #0003;transform:translateY(-2px)}.notification-content{align-items:flex-start;display:flex;gap:1rem;position:relative}.notification-icon{align-items:center;background:#ffffff1a;border-radius:8px;display:flex;font-size:1.5rem;height:45px;justify-content:center;min-width:45px;padding:.5rem}.notification-body{flex:1 1}.notification-title{color:#fff;font-size:1rem;font-weight:700;margin-bottom:.25rem}.notification-message{color:#fffc;font-size:.9rem;line-height:1.4;margin-bottom:.5rem}.notification-meta{color:#fff9;display:flex;font-size:.8rem;gap:1rem}.notification-child{font-weight:500}.notification-unread-indicator{background:#ffc107;border-radius:50%;box-shadow:0 0 10px #ffc10780;height:12px;position:absolute;right:.5rem;top:.5rem;width:12px}.no-notifications-state{align-items:center;background:#ffffff0d;border:2px dashed #fff3;border-radius:16px;display:flex;flex-direction:column;gap:1rem;padding:4rem 2rem;text-align:center}.no-notifications-icon{font-size:4rem;opacity:.5}@media (max-width:768px){.children-grid{grid-template-columns:1fr}.goals-header{gap:1rem}.goal-header,.goals-header{align-items:flex-start;flex-direction:column}.goal-header{gap:.5rem}.child-card-header{flex-direction:column;text-align:center}.child-level-badge{align-self:center;margin-top:.5rem;position:static}.family-stat-card{flex-direction:column;padding:1rem;text-align:center}.stat-icon{margin-bottom:.5rem}.child-detail-header{gap:1rem}.child-detail-header,.progress-header{align-items:flex-start;flex-direction:column}.progress-header{gap:.25rem}.notification-meta{flex-direction:column;gap:.25rem}}@media (max-width:480px){.parent-dashboard{padding-bottom:1rem}.child-selector-item{flex-direction:column;gap:.75rem;text-align:center}.child-card-actions{gap:.5rem}.child-stats-summary{padding:.75rem}.stat-row{font-size:.8rem}.chart-bars{gap:.25rem}.chart-bar{max-width:25px}.notification-content{align-items:center;flex-direction:column;gap:.75rem;text-align:center}.goals-header{text-align:center}}@media (prefers-contrast:high){.achievement-item,.child-card,.child-selector-item,.family-stat-card,.goal-card,.notification-card,.progress-stat{background:#ffffffe6;border:3px solid #000;color:#000}.chart-bar{background:#000!important}.child-avatar,.child-avatar-large,.child-level-badge{background:#000;color:#fff}}@media (prefers-reduced-motion:reduce){.chart-bar,.child-card,.child-selector-item,.family-stat-card,.goal-card,.notification-card{transition:none}.child-card:hover,.family-stat-card:hover,.goal-card:hover,.notification-card:hover{transform:none}.spinner{animation:none}}@media print{.parent-dashboard{background:#fff;color:#000}.child-card,.family-stat-card,.goal-card,.notification-card{background:#fff;border:2px solid #000;box-shadow:none;color:#000}.dashboard-tabs{display:none}.chart-bar{background:#333!important}.weekly-chart{display:none}}.problem-presentation{font-family:Comic Sans MS,cursive,sans-serif;margin:0 auto;max-width:600px;padding:20px}.problem-presentation.fade-in{animation:fadeIn .3s ease-in-out}.progress-container{margin-bottom:30px;text-align:center}.progress-text{color:#2c3e50;font-size:18px;font-weight:700;margin-bottom:10px}.progress-bar{background-color:#ecf0f1;border-radius:6px;box-shadow:inset 0 2px 4px #0000001a;height:12px;margin-bottom:8px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(90deg,#3498db,#2ecc71);border-radius:6px}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000)}.progress-percentage{color:#7f8c8d;font-size:14px;font-weight:600}.problem-card{background:#fff;border:3px solid #0000;border-radius:20px;box-shadow:0 8px 25px #0000001a;padding:30px;transition:all .3s ease}.problem-card:hover{box-shadow:0 12px 35px #00000026;transform:translateY(-2px)}.problem-card.difficulty-easy{background:linear-gradient(135deg,#fff,#f8fff9);border-color:#2ecc71}.problem-card.difficulty-medium{background:linear-gradient(135deg,#fff,#fffbf7);border-color:#f39c12}.problem-card.difficulty-hard{background:linear-gradient(135deg,#fff,#fff7f7);border-color:#e74c3c}.problem-header{margin-bottom:30px;text-align:center}.problem-title{color:#2c3e50;font-size:24px;font-weight:700;margin-bottom:15px}.hint-container{align-items:center;background:#fff3cd;border:2px solid #ffeaa7;border-radius:12px;display:flex;gap:10px;margin-top:15px;padding:15px}.hint-icon{flex-shrink:0;font-size:20px}.hint-text{color:#856404;font-size:16px;line-height:1.4;margin:0}.problem-display{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;box-shadow:0 6px 20px #667eea4d;margin:40px 0;padding:30px;text-align:center}.problem-text{color:#fff;font-family:Arial,sans-serif;font-size:48px;letter-spacing:2px;text-shadow:2px 2px 4px #0000004d}@media (max-width:768px){.problem-text{font-size:36px}}@media (max-width:480px){.problem-text{font-size:28px}}.answer-form{margin-top:30px}.input-container{margin-bottom:25px}.input-label{color:#2c3e50;font-size:18px;margin-bottom:10px}.answer-input,.input-label{display:block;font-weight:700;text-align:center}.answer-input{background:#fff;border:3px solid #bdc3c7;border-radius:12px;font-family:Arial,sans-serif;font-size:24px;margin:0 auto;max-width:200px;padding:15px 20px;transition:all .3s ease;width:100%}.answer-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db33;outline:none;transform:scale(1.05)}.answer-input.error{border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c33}.answer-input:disabled{background-color:#ecf0f1;color:#7f8c8d;cursor:not-allowed}.validation-error{color:#e74c3c;font-size:14px;font-weight:600;margin-top:8px;text-align:center}.button-container{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:25px}.skip-button,.submit-button{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:18px;font-weight:700;gap:8px;justify-content:center;min-width:140px;padding:15px 30px;transition:all .3s ease}.submit-button.primary{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 4px 15px #2ecc7166;color:#fff}.submit-button.primary:hover:not(:disabled){box-shadow:0 6px 20px #2ecc7199;transform:translateY(-2px)}.submit-button.primary:active:not(:disabled){transform:translateY(0)}.submit-button.primary:disabled{background:#bdc3c7;box-shadow:none;cursor:not-allowed;transform:none}.skip-button.secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d);box-shadow:0 4px 15px #95a5a666;color:#fff}.skip-button.secondary:hover:not(:disabled){box-shadow:0 6px 20px #95a5a699;transform:translateY(-2px)}.skip-button.secondary:active:not(:disabled){transform:translateY(0)}.skip-button.secondary:disabled{background:#ecf0f1;box-shadow:none;color:#bdc3c7;cursor:not-allowed;transform:none}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:16px;width:16px}.feedback{animation:feedbackSlide .4s ease-out;border-radius:12px;font-weight:700;margin-top:25px;padding:20px;text-align:center}@keyframes feedbackSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.feedback-correct{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #2ecc71;color:#155724}.feedback-incorrect{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #e74c3c;color:#721c24}.feedback-content{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.feedback-icon{flex-shrink:0;font-size:24px}.feedback-text{font-size:16px;line-height:1.4}.feedback-text div{margin:2px 0}.keyboard-shortcuts{color:#7f8c8d;font-size:14px;margin-top:20px;text-align:center}kbd{background:#ecf0f1;border:1px solid #bdc3c7;border-radius:4px;color:#2c3e50;font-family:Courier New,monospace;font-size:12px;padding:2px 6px}.problem-presentation.no-problem{align-items:center;display:flex;justify-content:center;min-height:300px}.no-problem-message{color:#7f8c8d;text-align:center}.no-problem-icon{display:block;font-size:48px;margin-bottom:15px}.no-problem-message p{font-size:18px;margin:0}@media (max-width:768px){.problem-presentation{padding:15px}.problem-card{border-radius:15px;padding:20px}.problem-title{font-size:20px}.button-container{align-items:center;flex-direction:column}.skip-button,.submit-button{max-width:250px;width:100%}.feedback-content{flex-direction:column;gap:10px}}@media (max-width:480px){.problem-presentation{padding:10px}.problem-card{padding:15px}.problem-display{margin:25px 0;padding:20px}.answer-input{font-size:20px;padding:12px 15px}.skip-button,.submit-button{font-size:16px;padding:12px 25px}}@media (prefers-contrast:high){.answer-input,.problem-card{border-color:#000;border-width:2px}.submit-button.primary{background:green}.skip-button.secondary{background:grey}}@media (prefers-reduced-motion:reduce){.answer-input,.feedback,.problem-card,.problem-presentation.fade-in,.progress-fill,.skip-button,.submit-button{animation:none;transition:none}.progress-fill:after{animation:none}}.practice-timer{--timer-color:#3498db;--warning-color:#f39c12;--critical-color:#e74c3c;--success-color:#2ecc71;--background-color:#fff;--text-color:#2c3e50;--border-radius:12px;--shadow:0 4px 15px #0000001a;background:var(--background-color);border-radius:var(--border-radius);box-shadow:var(--shadow);overflow:hidden;padding:20px;position:relative;-webkit-user-select:none;user-select:none}.practice-timer.size-small{--border-radius:8px;padding:15px}.practice-timer.size-large{--border-radius:16px;padding:30px}.practice-timer.size-compact{--border-radius:8px;padding:12px;transform:scale(.6);transform-origin:center}.practice-timer.position-top-left{left:20px;position:fixed;top:20px;z-index:1000}.practice-timer.position-top-right{position:fixed;right:20px;top:20px;z-index:1000}.practice-timer.position-top-center{left:50%;position:fixed;top:20px;transform:translateX(-50%);z-index:1000}.practice-timer.position-bottom-left{bottom:20px;left:20px;position:fixed;z-index:1000}.practice-timer.position-bottom-right{bottom:20px;position:fixed;right:20px;z-index:1000}.practice-timer.position-bottom-center{bottom:20px;left:50%;position:fixed;transform:translateX(-50%);z-index:1000}.practice-timer.urgency-warning{--timer-color:var(--warning-color);background:linear-gradient(135deg,#fff,#fff8e1);border:2px solid var(--warning-color)}.practice-timer.urgency-critical{--timer-color:var(--critical-color);background:linear-gradient(135deg,#fff,#ffebee);border:2px solid var(--critical-color)}.timer-container{flex-direction:column;gap:15px}.timer-container,.timer-ring{align-items:center;display:flex}.timer-ring{justify-content:center;position:relative}.timer-svg{transform:rotate(0deg);transition:transform .3s ease}.timer-background{opacity:.3}.timer-progress{filter:drop-shadow(0 0 3px currentColor);transition:stroke-dashoffset .3s ease}.timer-progress.animate-progress{transition:stroke-dashoffset .1s linear}.timer-content{color:var(--text-color);left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.timer-status{align-items:center;display:flex;gap:4px;justify-content:center;margin-bottom:4px}.status-icon{font-size:16px}.urgency-icon{animation:urgencyPulse 1s infinite;font-size:14px}@keyframes urgencyPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.timer-time{font-family:Courier New,monospace;font-size:18px;font-weight:700;margin-bottom:2px}.size-small .timer-time{font-size:14px}.size-large .timer-time{font-size:24px}.timer-percentage{font-size:12px;opacity:.8}.size-small .timer-percentage{font-size:10px}.size-large .timer-percentage{font-size:14px}.timer-info{min-height:40px;text-align:center}.timer-label{color:var(--text-color);font-size:14px;font-weight:700;margin-bottom:4px}.timer-details{color:#7f8c8d;font-size:12px}.detail-item{display:inline-block;margin:0 4px}.paused-indicator{color:var(--warning-color);font-weight:700}.expired-indicator{animation:expiredBlink 1s infinite;color:var(--critical-color);font-weight:700}@keyframes expiredBlink{0%,50%{opacity:1}51%,to{opacity:.5}}.timer-progress-bar{margin-top:10px;position:relative;width:100%}.progress-track{background:#ecf0f1;height:6px;overflow:hidden;width:100%}.progress-fill,.progress-track{border-radius:3px;position:relative}.progress-fill{height:100%;transition:width .3s ease}.progress-fill.animate-fill{transition:width .1s linear}.progress-fill:after{animation:progressShimmer 2s infinite;background:linear-gradient(90deg,#0000,#fff6,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes progressShimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.progress-markers{height:12px;margin-top:2px;position:relative}.threshold-marker{font-size:10px;line-height:12px;opacity:.7;position:absolute;top:0;transform:translateX(-50%)}.warning-marker{color:var(--warning-color)}.critical-marker{color:var(--critical-color)}.pulse-warning{animation:pulseWarning 1s ease-in-out}.pulse-critical{animation:pulseCritical .5s ease-in-out infinite}.glow-warning{box-shadow:0 0 20px var(--warning-color)}.glow-critical{box-shadow:0 0 30px var(--critical-color)}.shake-critical{animation:shakeCritical .5s ease-in-out infinite}.shake-expired{animation:shakeExpired .6s ease-in-out 3}@keyframes pulseWarning{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes pulseCritical{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes shakeCritical{0%,to{transform:translateX(0)}25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}@keyframes shakeExpired{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-3px)}20%,40%,60%,80%{transform:translateX(3px)}}.timer-controls{flex-wrap:wrap;gap:10px;margin-top:15px}.timer-control-btn,.timer-controls{display:flex;justify-content:center}.timer-control-btn{align-items:center;background:#f8f9fa;border:none;border-radius:8px;color:#495057;cursor:pointer;font-size:14px;font-weight:500;gap:5px;min-width:80px;padding:8px 16px;transition:all .2s ease}.timer-control-btn:hover:not(:disabled){box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.timer-control-btn:active:not(:disabled){transform:translateY(0)}.timer-control-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.start-btn{background:var(--success-color);color:#fff}.pause-btn{background:var(--warning-color);color:#fff}.resume-btn{background:var(--success-color);color:#fff}.stop-btn{background:var(--critical-color);color:#fff}.reset-btn{background:#6c757d;color:#fff}.timer-debug{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#6c757d;font-family:Courier New,monospace;font-size:11px;margin-top:10px;padding:8px;text-align:center}@media (max-width:768px){.practice-timer.position-top-center,.practice-timer.position-top-left,.practice-timer.position-top-right{left:auto;margin:10px auto;position:relative;right:auto;top:auto;transform:none}.practice-timer.position-bottom-center,.practice-timer.position-bottom-left,.practice-timer.position-bottom-right{bottom:auto;left:auto;margin:10px auto;position:relative;right:auto;transform:none}.timer-controls{gap:8px}.timer-control-btn{font-size:12px;min-width:70px;padding:6px 12px}}@media (max-width:480px){.practice-timer{padding:15px}.timer-container{gap:10px}.timer-controls{align-items:center;flex-direction:column}.timer-control-btn{max-width:200px;width:100%}}@media (prefers-contrast:high){.practice-timer{border:2px solid #000}.timer-background{stroke:#000;opacity:.5}.timer-progress{stroke:#000}.progress-track{background:#000}.timer-control-btn{border:1px solid #000}}@media (prefers-reduced-motion:reduce){.practice-timer,.progress-fill,.timer-control-btn,.timer-progress{animation:none;transition:none}.expired-indicator,.progress-fill:after,.pulse-critical,.pulse-warning,.shake-critical,.shake-expired,.urgency-icon{animation:none}.glow-critical,.glow-warning{box-shadow:none}}@media (prefers-color-scheme:dark){.practice-timer{--background-color:#2c3e50;--text-color:#fff;color:var(--text-color)}.timer-background{stroke:#4a5568}.progress-track{background:#4a5568}.timer-control-btn,.timer-debug{background:#4a5568;color:#fff}.timer-debug{border-color:#6a7380}.practice-timer.urgency-warning{background:linear-gradient(135deg,#2c3e50,#3d3000)}.practice-timer.urgency-critical{background:linear-gradient(135deg,#2c3e50,#3d0000)}}@media print{.practice-timer{border:1px solid #000;box-shadow:none;position:static!important}.timer-controls,.timer-debug{display:none}}.session-completion{background:linear-gradient(135deg,#667eea,#764ba2);color:#2c3e50;font-family:Comic Sans MS,cursive,sans-serif;margin:0 auto;max-width:800px;min-height:100vh;padding:20px}.session-completion.slide-in{animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.completion-header{background:#fff;border-radius:20px;box-shadow:0 8px 25px #00000026;margin-bottom:30px;padding:30px;text-align:center}.completion-status{margin-bottom:20px}.status-passed .status-icon{animation:celebrate 1s ease-in-out infinite alternate;display:block;font-size:48px;margin-bottom:15px}.status-failed .status-icon{animation:encourage 2s ease-in-out infinite;display:block;font-size:48px;margin-bottom:15px}@keyframes celebrate{0%{transform:scale(1)}to{transform:scale(1.1)}}@keyframes encourage{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.completion-status h1{color:#2c3e50;font-size:36px;margin:0 0 10px}.status-passed h1{color:#27ae60}.status-failed h1{color:#e67e22}.completion-status p{color:#7f8c8d;font-size:18px;margin:0}.performance-message{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-left:5px solid #3498db;border-radius:15px;color:#34495e;font-size:20px;font-weight:700;padding:15px 25px}.completion-main{display:flex;flex-direction:column;gap:25px}.results-summary{background:#fff;border-radius:20px;box-shadow:0 8px 25px #00000026;padding:30px}.score-display{justify-content:center;margin-bottom:30px}.score-circle{align-items:center;animation:scoreReveal 1s ease-out;background:conic-gradient(var(--score-color) 0deg,var(--score-color) 180deg,#ecf0f1 180deg,#ecf0f1 1turn);background:conic-gradient(var(--score-color) 0deg,var(--score-color) calc(var(--percentage, 50)*3.6deg),#ecf0f1 calc(var(--percentage, 50)*3.6deg),#ecf0f1 1turn);border-radius:50%;display:flex;flex-direction:column;height:150px;justify-content:center;position:relative;width:150px}.score-circle:before{background:#fff;border-radius:50%;content:"";height:120px;position:absolute;width:120px;z-index:1}.score-label,.score-value{position:relative;z-index:2}.score-value{color:var(--score-color);font-size:36px;margin-bottom:5px}.score-label{color:#7f8c8d;font-size:14px;letter-spacing:1px}@keyframes scoreReveal{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:25px}.stat-item{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:15px;padding:20px;position:relative;text-align:center;transition:transform .3s ease}.stat-item:hover{transform:translateY(-3px)}.stat-value{color:#2c3e50;font-size:28px;margin-bottom:5px}.stat-label{color:#7f8c8d;font-size:14px;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.stat-icon{font-size:20px;opacity:.7;position:absolute;right:10px;top:10px}.passing-info{margin-top:25px}.passing-bar{background:#f8f9fa;border-radius:12px;padding:20px}.passing-label{color:#7f8c8d;font-size:14px;margin-bottom:10px;text-align:center}.bar-container{background:#ecf0f1;height:12px;overflow:hidden}.bar-container,.score-bar{border-radius:6px;position:relative}.score-bar{height:100%;transition:width 1s ease-out}.score-bar:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";left:0;right:0}.passing-line,.score-bar:after{bottom:0;position:absolute;top:0}.passing-line{background:#e74c3c;transform:translateX(-1px);width:2px}.passing-line:after{background:#fff;border-radius:4px;bottom:15px;color:#e74c3c;content:"Pass";font-size:10px;left:50%;padding:2px 6px;position:absolute;transform:translateX(-50%);white-space:nowrap}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.achievements-section{background:#fff;border-radius:20px;box-shadow:0 8px 25px #00000026;padding:30px}.achievements-section h3{color:#2c3e50;font-size:24px;margin-bottom:25px;text-align:center}.achievements-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.achievement-card{align-items:center;animation:achievementPop .5s ease-out;border:2px solid;border-radius:12px;display:flex;gap:15px;overflow:hidden;padding:15px;position:relative}.achievement-card.rarity-common{background:linear-gradient(135deg,#fff,#f8f9fa);border-color:#95a5a6}.achievement-card.rarity-rare{background:linear-gradient(135deg,#fff,#ebf3fd);border-color:#3498db}.achievement-card.rarity-epic{background:linear-gradient(135deg,#fff,#f4ecf7);border-color:#9b59b6}.achievement-card.rarity-legendary{background:linear-gradient(135deg,#fff,#fef9e7);border-color:#f39c12;box-shadow:0 0 20px #f39c124d}.achievement-icon{flex-shrink:0;font-size:32px}.achievement-content{flex:1 1}.achievement-title{color:#2c3e50;font-size:16px;font-weight:700;margin:0 0 5px}.achievement-description{color:#7f8c8d;font-size:12px;line-height:1.4;margin:0}@keyframes achievementPop{0%{opacity:0;transform:scale(.8)}80%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.no-achievements{color:#7f8c8d;font-style:italic;padding:20px;text-align:center}.progression-info{background:#fff;border-radius:20px;box-shadow:0 8px 25px #00000026;padding:30px}.progression-info h3{color:#2c3e50;font-size:24px;margin-bottom:25px;text-align:center}.rating-section{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-around;margin-bottom:25px}.overall-rating,.progression-score{text-align:center}.rating-label,.score-label{color:#7f8c8d;display:block;font-size:14px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.rating-value{border-radius:20px;display:inline-block;font-size:20px;font-weight:700;padding:8px 16px;text-transform:capitalize}.rating-value.rating-excellent{background:linear-gradient(135deg,#2ecc71,#27ae60);color:#fff}.rating-value.rating-good{background:linear-gradient(135deg,#3498db,#2980b9);color:#fff}.rating-value.rating-satisfactory{background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff}.rating-value.rating-needs_improvement{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff}.score-value{color:#2c3e50;font-size:24px}.recommendations{background:#f8f9fa;border-radius:12px;padding:20px}.recommendations h4{color:#2c3e50;font-size:16px;margin:0 0 15px}.recommendations ul{list-style:none;margin:0;padding:0}.recommendation{align-items:flex-start;border-bottom:1px solid #e9ecef;display:flex;gap:10px;padding:10px 0}.recommendation:last-child{border-bottom:none}.rec-icon{flex-shrink:0;margin-top:2px}.recommendation.priority-high{color:#e74c3c;font-weight:600}.recommendation.priority-medium{color:#f39c12}.recommendation.priority-low{color:#7f8c8d}.details-section{background:#fff;border-radius:20px;box-shadow:0 8px 25px #00000026;overflow:hidden}.details-toggle{align-items:center;background:#f8f9fa;border:none;color:#2c3e50;cursor:pointer;display:flex;font-size:16px;font-weight:700;gap:10px;padding:20px;transition:background-color .3s ease;width:100%}.details-toggle:hover{background:#e9ecef}.results-breakdown{padding:30px}.results-breakdown h3{color:#2c3e50;font-size:20px;margin:0 0 25px;text-align:center}.problems-grid{grid-gap:15px;display:grid;gap:15px}.problem-result{background:#f8f9fa;border-left:5px solid;border-radius:12px;padding:15px;transition:transform .2s ease}.problem-result:hover{transform:translateX(5px)}.problem-result.correct{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-left-color:#2ecc71}.problem-result.incorrect{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border-left-color:#e74c3c}.problem-number{color:#2c3e50;font-weight:700;margin-bottom:8px}.problem-text{color:#34495e;font-size:18px;font-weight:700;margin-bottom:10px}.problem-answers{display:flex;flex-direction:column;gap:5px;margin-bottom:8px}.user-answer{color:#7f8c8d;font-size:14px}.correct-answer{color:#e74c3c;font-size:14px;font-weight:600}.problem-time{color:#95a5a6;font-size:12px;text-align:right}.completion-actions{background:#fff;border-radius:20px;box-shadow:0 8px 25px #00000026;padding:30px;text-align:center}.congratulations,.encouragement,.next-set-info{margin-bottom:25px}.congratulations p,.encouragement p,.next-set-info p{color:#7f8c8d;font-size:16px;margin-bottom:10px}.next-set-info h4{color:#2c3e50;font-size:20px;margin:0}.congratulations h3{color:#27ae60;font-size:24px;margin:0 0 10px}.action-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.btn{border:none;border-radius:12px;display:inline-flex;font-size:16px;font-weight:700;gap:8px;padding:12px 24px;text-decoration:none}.btn.large{font-size:18px;min-width:180px;padding:16px 32px}.btn.primary{background:linear-gradient(135deg,#3498db,#2980b9);box-shadow:0 4px 15px #3498db66;color:#fff}.btn.primary:hover{box-shadow:0 6px 20px #3498db99;transform:translateY(-2px)}.btn.secondary{background:linear-gradient(135deg,#95a5a6,#7f8c8d);box-shadow:0 4px 15px #95a5a666;color:#fff}.btn.secondary:hover{box-shadow:0 6px 20px #95a5a699;transform:translateY(-2px)}.btn:active{transform:translateY(0)}.completion-footer{color:#fff;font-size:16px;opacity:.9;padding:20px;text-align:center}.session-completion.no-results{align-items:center;display:flex;justify-content:center;min-height:100vh}.error-message{background:#fff;border-radius:20px;box-shadow:0 8px 25px #00000026;max-width:400px;padding:40px;text-align:center}.error-message h2{color:#e74c3c;margin-bottom:15px}.error-message p{color:#7f8c8d;margin-bottom:25px}@media (max-width:768px){.session-completion{padding:15px}.achievements-section,.completion-actions,.completion-header,.progression-info,.results-summary{padding:20px}.completion-status h1{font-size:28px}.score-circle{height:120px;width:120px}.score-circle:before{height:90px;width:90px}.score-value{font-size:28px}.stats-grid{gap:15px;grid-template-columns:repeat(2,1fr)}.stat-value{font-size:24px}.achievements-grid{grid-template-columns:1fr}.rating-section{flex-direction:column;gap:15px}.action-buttons{align-items:center;flex-direction:column}.btn{max-width:250px;width:100%}}@media (max-width:480px){.session-completion{padding:10px}.completion-header{padding:15px}.completion-status h1{font-size:24px}.performance-message{font-size:16px;padding:12px 20px}.stats-grid{grid-template-columns:1fr}.score-circle{height:100px;width:100px}.score-circle:before{height:75px;width:75px}.score-value{font-size:24px}}@media (prefers-contrast:high){.session-completion{background:#000;color:#fff}.achievements-section,.completion-actions,.completion-header,.progression-info,.results-summary{border:2px solid #fff}.btn.primary{background:#06c}.btn.secondary{background:#666}}@media (prefers-reduced-motion:reduce){.achievement-card,.btn,.problem-result,.score-circle,.session-completion,.stat-item{animation:none;transition:none}.score-bar:after,.shimmer,.status-failed .status-icon,.status-passed .status-icon{animation:none}}.score-display{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:15px;display:flex;font-family:Comic Sans MS,cursive,sans-serif;gap:1rem;padding:1rem;position:relative}.score-display--horizontal{flex-direction:row}.score-display--vertical{flex-direction:column}.score-display--grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.score-item{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:12px;display:flex;gap:.5rem;min-width:100px;padding:.75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.score-item:hover{background:#ffffff26;box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.score-content{align-items:center;display:flex;flex:1 1;flex-direction:column;text-align:center}.score-value{color:#fff;font-size:1.5rem;font-weight:700;line-height:1;margin-bottom:.25rem;text-shadow:1px 1px 2px #0000004d}.score-label{color:#fffc;font-size:.8rem;font-weight:500;letter-spacing:.5px;opacity:.9;text-transform:uppercase}.score-icon{animation:iconPulse 2s ease-in-out infinite;font-size:1.8rem}.streak-emoji{animation:streakGlow 1.5s ease-in-out infinite}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes streakGlow{0%,to{filter:brightness(1);transform:scale(1)}50%{filter:brightness(1.3);transform:scale(1.2)}}.score-change{animation:scoreChangeAnimation 1s ease-out;background:#4caf50;border:2px solid #ffffff4d;border-radius:8px;box-shadow:0 2px 6px #0003;color:#fff;font-size:.7rem;font-weight:700;padding:.2rem .4rem;position:absolute;right:-10px;top:-10px}@keyframes scoreChangeAnimation{0%{opacity:0;transform:scale(.5) translateY(10px)}20%{opacity:1;transform:scale(1.2) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.score-item--excellent{background:linear-gradient(135deg,#4caf504d,#8bc34a4d);border-color:#4caf5080}.score-item--great{background:linear-gradient(135deg,#2196f34d,#03a9f44d);border-color:#2196f380}.score-item--good{background:linear-gradient(135deg,#ffc1074d,#ffeb3b4d);border-color:#ffc10780}.score-item--okay{background:linear-gradient(135deg,#ff98004d,#ffb74d4d);border-color:#ff980080}.score-item--starting{background:linear-gradient(135deg,#9e9e9e4d,#bdbdbd4d);border-color:#9e9e9e80}.score-item--needs-improvement{background:linear-gradient(135deg,#f443364d,#ef53504d);border-color:#f4433680}.score-display--small{gap:.5rem;padding:.5rem}.score-display--small .score-item{min-width:80px;padding:.5rem}.score-display--small .score-value{font-size:1.2rem}.score-display--small .score-label{font-size:.7rem}.score-display--small .score-icon{font-size:1.4rem}.score-display--large{gap:1.5rem;padding:1.5rem}.score-display--large .score-item{min-width:140px;padding:1rem}.score-display--large .score-value{font-size:2rem}.score-display--large .score-label{font-size:.9rem}.score-display--large .score-icon{font-size:2.2rem}.score-display--fun{background:#ffffff26;transform:rotate(-1deg)}.score-display--fun .score-item{border-radius:20px;border-width:2px}.score-display--minimal{background:#0000;border:none;padding:.5rem}.score-display--minimal .score-item{background:#ffffff0d;border:1px solid #ffffff1a}.score-display--compact{gap:.5rem}.score-display--compact .score-item{gap:.25rem;padding:.5rem}.score-display--compact .score-content{align-items:center;flex-direction:row}.score-display--compact .score-value{font-size:1.2rem;margin-bottom:0;margin-right:.25rem}.score-display--compact .score-label{font-size:.7rem}.score-display--animated .score-item{transition:all .3s cubic-bezier(.4,0,.2,1)}.score-display--increasing{animation:displayGlow 1s ease-out}@keyframes displayGlow{0%{box-shadow:0 0 0 #4caf5000}50%{box-shadow:0 0 20px #4caf5080}to{box-shadow:0 0 0 #4caf5000}}.achievement-indicator{animation:achievementBounce 1s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:1.5rem;position:absolute;right:-15px;top:-15px;z-index:10}@keyframes achievementBounce{0%,20%,50%,80%,to{transform:translateY(0) rotate(0deg)}40%{transform:translateY(-10px) rotate(-5deg)}60%{transform:translateY(-5px) rotate(5deg)}}@media (max-width:768px){.score-display--horizontal{flex-direction:column;gap:.75rem}.score-display--grid{grid-template-columns:1fr}.score-item{justify-content:center;min-width:auto}.score-value{font-size:1.3rem}.score-icon{font-size:1.6rem}}@media (max-width:480px){.score-display{gap:.5rem;padding:.75rem}.score-item{gap:.25rem;padding:.5rem}.score-value{font-size:1.2rem}.score-label{font-size:.7rem}.score-icon{font-size:1.4rem}.achievement-indicator{font-size:1.2rem;right:-10px;top:-10px}}@media (prefers-contrast:high){.score-display{background:#000c;border:3px solid #fff}.score-item{background:#ffffff1a;border:2px solid #fff}.score-label,.score-value{color:#fff;text-shadow:none}.score-change{background:#fff;border-color:#000;color:#000}}@media (prefers-reduced-motion:reduce){.score-item{transition:none}.score-item:hover{transform:none}.achievement-indicator,.score-change,.score-icon,.streak-emoji{animation:none}.score-change{opacity:1;transform:scale(1) translateY(0)}.score-display--increasing{animation:none}}.score-item:focus{outline:3px solid gold;outline-offset:2px}@media print{.score-display{background:#fff;border:2px solid #000;color:#000}.score-item{background:#f5f5f5;border:1px solid #000}.score-label,.score-value{color:#000;text-shadow:none}.achievement-indicator,.score-change{display:none}}.encouragement-message{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);bottom:0;cursor:pointer;display:flex;font-family:Comic Sans MS,cursive,sans-serif;justify-content:center;left:0;opacity:0;position:fixed;right:0;top:0;transform:scale(.8);transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000}.encouragement-message--visible{opacity:1;transform:scale(1)}.encouragement-content{animation:messageEntry .6s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:3px solid #fffc;border-radius:25px;box-shadow:0 10px 40px #0000004d,inset 0 1px 0 #fffc;max-width:400px;padding:2rem;position:relative;text-align:center;width:90%}@keyframes messageEntry{0%{opacity:0;transform:scale(.3) rotate(-10deg)}50%{opacity:1;transform:scale(1.1) rotate(2deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.encouragement-emoji{animation:emojiDance 1s ease-in-out infinite;font-size:4rem;line-height:1;margin-bottom:1rem}@keyframes emojiDance{0%,to{transform:rotate(0deg) scale(1)}25%{transform:rotate(-5deg) scale(1.1)}50%{transform:rotate(5deg) scale(1.05)}75%{transform:rotate(-3deg) scale(1.1)}}.encouragement-text{animation:textGlow 2s ease-in-out infinite;color:#333;font-size:1.5rem;font-weight:700;margin-bottom:1rem;text-shadow:1px 1px 2px #fffc}.encouragement-stats{background:#ffffff80;border:1px solid #fffc;border-radius:15px;display:flex;gap:1rem;justify-content:center;margin-bottom:1rem;padding:.5rem}.stat-item{align-items:center;color:#555;display:flex;font-size:.9rem;font-weight:600;gap:.3rem}.stat-icon{font-size:1.1rem}.stat-value{font-weight:700}.encouragement-close{align-items:center;background:#fffc;border:2px solid #0000001a;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:30px;justify-content:center;opacity:.7;position:absolute;right:15px;top:10px;transition:all .2s ease;width:30px}.encouragement-close:hover{background:#fff;opacity:1;transform:scale(1.1)}.encouragement-close:focus{outline:2px solid gold;outline-offset:2px}.encouragement-message--success .encouragement-content{background:linear-gradient(135deg,#4caf50f2,#8bc34af2);border-color:#4caf50cc;color:#fff}.encouragement-message--success .encouragement-text{color:#fff;text-shadow:1px 1px 2px #0000004d}.encouragement-message--great .encouragement-content{background:linear-gradient(135deg,#2196f3f2,#03a9f4f2);border-color:#2196f3cc;color:#fff}.encouragement-message--great .encouragement-text{color:#fff;text-shadow:1px 1px 2px #0000004d}.encouragement-message--excellent .encouragement-content{background:linear-gradient(135deg,#9c27b0f2,#8e24aaf2);border-color:#9c27b0cc;color:#fff}.encouragement-message--excellent .encouragement-text{color:#fff;text-shadow:1px 1px 2px #0000004d}.encouragement-message--epic .encouragement-content{background:linear-gradient(135deg,#ff9800f2,#ffc107f2);border-color:#ff9800cc;color:#fff}.encouragement-message--epic .encouragement-text{color:#fff;text-shadow:1px 1px 2px #0000004d}.encouragement-message--legendary .encouragement-content{background:linear-gradient(135deg,#ffd700f2,#ff8c00f2);border-color:#ffd700cc;box-shadow:0 10px 40px #0000004d,0 0 30px #ffd70080,inset 0 1px 0 #fffc;color:#333}.encouragement-message--perfect .encouragement-content{animation:perfectGlow 1s ease-in-out infinite alternate;background:linear-gradient(135deg,#ffd700f2,#ff8c00f2,#ff4500f2);border-color:#ffd700cc;color:#fff}@keyframes perfectGlow{0%{box-shadow:0 10px 40px #0000004d,0 0 20px #ffd70080}to{box-shadow:0 10px 40px #0000004d,0 0 40px #ffd700cc}}.encouragement-message--encouragement .encouragement-content{background:linear-gradient(135deg,#ff5722f2,#ff9800f2);border-color:#ff5722cc;color:#fff}.encouragement-message--encouragement .encouragement-text{color:#fff;text-shadow:1px 1px 2px #0000004d}.encouragement-message--achievement .encouragement-content{animation:achievementShimmer 2s ease-in-out infinite;background:linear-gradient(135deg,#9c27b0f2,#e91e63f2,#ffc107f2);border-color:#9c27b0cc;color:#fff}@keyframes achievementShimmer{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.confetti-container{border-radius:25px;bottom:0;left:0;overflow:hidden;pointer-events:none;position:absolute;right:0;top:0}.confetti{animation:confettiFall 3s ease-out infinite;border-radius:2px;height:8px;position:absolute;top:-10px;width:8px}.confetti--0{background:#ff6b6b}.confetti--1{background:#4ecdc4}.confetti--2{background:#45b7d1}.confetti--3{background:#96ceb4}@keyframes confettiFall{0%{opacity:1;transform:translateY(-10px) rotate(0deg)}to{opacity:0;transform:translateY(300px) rotate(2turn)}}.encouragement-message--correct .encouragement-emoji{animation:correctCelebration 1.5s ease-in-out}@keyframes correctCelebration{0%,to{transform:scale(1) rotate(0deg)}25%{transform:scale(1.3) rotate(-10deg)}50%{transform:scale(1.1) rotate(5deg)}75%{transform:scale(1.2) rotate(-5deg)}}.encouragement-message--achievement .encouragement-emoji{animation:achievementSpin 2s ease-in-out infinite}@keyframes achievementSpin{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.2)}to{transform:rotate(1turn) scale(1)}}@media (max-width:768px){.encouragement-content{margin:1rem;max-width:none;padding:1.5rem;width:calc(100% - 2rem)}.encouragement-emoji{font-size:3rem}.encouragement-text{font-size:1.3rem}.encouragement-stats{flex-direction:column;gap:.5rem}}@media (max-width:480px){.encouragement-content{border-radius:20px;padding:1rem}.encouragement-emoji{font-size:2.5rem;margin-bottom:.75rem}.encouragement-text{font-size:1.1rem;margin-bottom:.75rem}.encouragement-stats{gap:.25rem}.stat-item{font-size:.8rem}.encouragement-close{font-size:.9rem;height:25px;right:10px;top:8px;width:25px}}@media (prefers-contrast:high){.encouragement-message{background:#000000e6}.encouragement-content{background:#fffffffa!important;border:4px solid #000!important;color:#000!important}.encouragement-text{color:#000!important;text-shadow:none!important}.encouragement-close{background:#fff;border:2px solid #000;color:#000}.encouragement-stats{background:#0000001a;border:1px solid #000}.stat-item{color:#000}}@media (prefers-reduced-motion:reduce){.encouragement-message{transition:none}.confetti,.encouragement-content,.encouragement-emoji,.encouragement-text{animation:none}.confetti{opacity:0}.encouragement-close:hover{transform:none}.encouragement-message--achievement .encouragement-content,.encouragement-message--perfect .encouragement-content{animation:none}}@media print{.encouragement-message{display:none}}.safety-controls{font-family:Comic Sans MS,cursive,sans-serif;position:fixed;-webkit-user-select:none;user-select:none;z-index:900}.safety-controls--top-right{right:1rem;top:1rem}.safety-controls--top-left{left:1rem;top:1rem}.safety-controls--bottom-right{bottom:1rem;right:1rem}.safety-controls--bottom-left{bottom:1rem;left:1rem}.safety-controls__main{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border-radius:20px;box-shadow:0 4px 20px #0003;gap:.5rem}.control-btn,.safety-controls__main{border:2px solid #ffffff4d;display:flex;padding:.75rem}.control-btn{align-items:center;background:#fff3;border-radius:15px;color:#fff;cursor:pointer;flex-direction:column;font-family:inherit;font-size:.8rem;font-weight:600;gap:.25rem;justify-content:center;min-width:60px;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.control-btn:hover{background:#ffffff4d;box-shadow:0 6px 16px #0003;transform:translateY(-2px)}.control-btn:active{box-shadow:0 2px 8px #0003;transform:translateY(0)}.control-btn:focus{outline:3px solid gold;outline-offset:2px}.control-icon{display:block;font-size:1.5rem;line-height:1}.control-label{font-size:.7rem;letter-spacing:.5px;opacity:.9;text-shadow:1px 1px 2px #0000004d;text-transform:uppercase}.control-btn--pause{background:linear-gradient(135deg,#ffc1074d,#ffeb3b4d);border-color:#ffc10780}.control-btn--pause:hover{background:linear-gradient(135deg,#ffc10766,#ffeb3b66)}.control-btn--resume{animation:resumePulse 1.5s ease-in-out infinite;background:linear-gradient(135deg,#4caf504d,#8bc34a4d);border-color:#4caf5080}@keyframes resumePulse{0%,to{box-shadow:0 0 0 0 #4caf5066}50%{box-shadow:0 0 0 10px #4caf5000}}.control-btn--volume{background:linear-gradient(135deg,#2196f34d,#03a9f44d);border-color:#2196f380}.control-btn--help{background:linear-gradient(135deg,#9c27b04d,#8e24aa4d);border-color:#9c27b080}.control-btn--exit{background:linear-gradient(135deg,#f443364d,#ef53504d);border-color:#f4433680}.control-btn--exit:hover{animation:exitWarning .3s ease-in-out;background:linear-gradient(135deg,#f4433666,#ef535066)}@keyframes exitWarning{0%,to{transform:translateY(-2px) scale(1)}50%{transform:translateY(-2px) scale(1.05)}}.volume-control{align-items:center;display:flex;flex-direction:column;position:relative}.volume-slider{background:#ffffffe6;border:2px solid #ffffff80;border-radius:10px;box-shadow:0 4px 12px #0003;left:50%;margin-top:.5rem;opacity:0;padding:.5rem;position:absolute;top:100%;transform:translateX(-50%);transition:all .3s ease;visibility:hidden}.volume-control:hover .volume-slider{opacity:1;visibility:visible}.volume-range{-webkit-appearance:none;background:#ddd;border-radius:2px;cursor:pointer;height:4px;outline:none;width:80px}.volume-range::-webkit-slider-thumb{-webkit-appearance:none;background:#33f;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:16px;width:16px}.volume-range::-moz-range-thumb{background:#33f;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:16px;width:16px}.exit-confirmation{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.exit-dialog{animation:dialogEntry .4s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:3px solid #fffc;border-radius:25px;box-shadow:0 10px 40px #0000004d;color:#333;max-width:400px;padding:2rem;text-align:center;width:90%}@keyframes dialogEntry{0%{opacity:0;transform:scale(.7) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.exit-icon{animation:iconBounce 2s ease-in-out infinite;font-size:3rem;margin-bottom:1rem}@keyframes iconBounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.exit-title{color:#333;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.exit-message{color:#666;font-size:1rem;line-height:1.5;margin-bottom:2rem}.exit-actions{flex-wrap:wrap;gap:1rem}.btn,.exit-actions{display:flex;justify-content:center}.btn{align-items:center;border:2px solid #0000;border-radius:15px;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;gap:.5rem;min-width:140px;padding:.75rem 1.5rem;transition:all .3s ease}.btn-icon{font-size:1.1rem}.btn--cancel{background:linear-gradient(135deg,#6c757d,#5a6268);border-color:#6c757d;color:#fff}.btn--cancel:hover{background:linear-gradient(135deg,#5a6268,#545b62);box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.btn--confirm{background:linear-gradient(135deg,#28a745,#20c997);border-color:#28a745;color:#fff}.btn--confirm:hover{background:linear-gradient(135deg,#218838,#1e7e34);box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.btn:focus{outline:3px solid gold;outline-offset:2px}.status-indicator{align-items:center;animation:statusPulse 2s ease-in-out infinite;background:#ffc107e6;border:2px solid #ffc107cc;border-radius:15px;box-shadow:0 2px 8px #0003;color:#333;display:flex;font-size:.8rem;font-weight:600;gap:.5rem;left:50%;padding:.5rem 1rem;position:absolute;top:-40px;transform:translateX(-50%)}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.7}}.status-icon{font-size:1rem}.safety-controls--small .control-btn{min-width:50px;padding:.5rem}.safety-controls--small .control-icon{font-size:1.2rem}.safety-controls--small .control-label{font-size:.6rem}.safety-controls--large .control-btn{min-width:80px;padding:1rem}.safety-controls--large .control-icon{font-size:2rem}.safety-controls--large .control-label{font-size:.8rem}@media (max-width:768px){.safety-controls{bottom:1rem;left:50%;position:fixed;right:auto;top:auto;transform:translateX(-50%)}.safety-controls__main{flex-direction:row;gap:.25rem;padding:.5rem}.control-btn{min-width:50px;padding:.5rem}.control-icon{font-size:1.2rem}.control-label{font-size:.6rem}.exit-dialog{margin:1rem;padding:1.5rem}.exit-actions{flex-direction:column}.btn{min-width:auto;width:100%}}@media (max-width:480px){.safety-controls__main{gap:.125rem;padding:.25rem}.control-btn{min-width:45px;padding:.4rem}.control-label{display:none}.exit-dialog{padding:1rem}.exit-title{font-size:1.3rem}.exit-message{font-size:.9rem}}@media (prefers-contrast:high){.safety-controls__main{background:#000000e6;border:3px solid #fff}.control-btn{background:#ffffff1a!important;border:2px solid #fff!important;color:#fff}.exit-dialog{background:#fffffffa;border:4px solid #000;color:#000}.btn--cancel{background:#000!important;border-color:#fff;color:#fff}.btn--confirm{background:#fff!important;border-color:#000;color:#000}}@media (prefers-reduced-motion:reduce){.control-btn{transition:none}.control-btn:hover{transform:none}.control-btn--resume,.exit-confirmation,.exit-dialog,.exit-icon,.status-indicator{animation:none}.volume-slider{transition:none}}@media print{.safety-controls{display:none}}.practice-session-interface{background:linear-gradient(135deg,#667eea,#764ba2);font-family:Comic Sans MS,cursive,sans-serif;min-height:100vh;overflow-x:hidden;position:relative}.practice-session-interface.loading{align-items:center;display:flex;justify-content:center}.loading-container{color:#fff;padding:2rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:60px;margin:0 auto 1.5rem;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-container h2{font-size:2rem;margin-bottom:.5rem;text-shadow:2px 2px 4px #0000004d}.loading-container p{font-size:1.2rem;opacity:.9}.practice-session-interface.error{align-items:center;background:linear-gradient(135deg,#ff6b6b,orange);display:flex;justify-content:center}.error-container{color:#fff;max-width:500px;padding:2rem;text-align:center}.error-icon{font-size:4rem;margin-bottom:1rem}.error-container h2{font-size:2rem;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.error-container p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.error-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.practice-session-interface.active{color:#fff;display:flex;flex-direction:column}.practice-session-interface.celebrating{animation:celebrateGlow .5s ease-in-out infinite alternate}@keyframes celebrateGlow{0%{box-shadow:inset 0 0 20px #ffd7004d}to{box-shadow:inset 0 0 40px #ffd70099}}.practice-navigation{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:none!important;display:flex;justify-content:space-between;padding:1rem 2rem}.back-to-dashboard-btn{background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;text-shadow:1px 1px 2px #0000004d;transition:all .2s ease}.back-to-dashboard-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.back-to-dashboard-btn:active{transform:translateY(0)}.session-title{color:#fff;font-size:1.5rem;font-weight:700;text-shadow:2px 2px 4px #0000004d}.session-progress{background:none!important;border:none!important;box-shadow:none!important;outline:none!important;padding:1.5rem 2rem}.progress-container{margin-bottom:1.5rem}.stats-container{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:1fr auto;margin-top:2rem}.problem-area{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:400px;padding:2rem}.celebration-overlay,.encouragement-message,.pause-overlay{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.encouragement-message{animation:fadeInScale .3s ease-out;background:#000000b3}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.celebration-overlay{animation:celebrationEntry .5s ease-out;background:radial-gradient(circle,#ffd700e6 0,#ff8c00b3 100%)}@keyframes celebrationEntry{0%{opacity:0;transform:scale(.5)}50%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.celebration-content{color:#fff;position:relative;text-align:center}.celebration-stars{animation:bounce .6s ease-in-out infinite;font-size:4rem;margin-bottom:1rem}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.celebration-content h2{animation:textGlow 1s ease-in-out infinite alternate;font-size:3rem;margin-bottom:.5rem;text-shadow:3px 3px 6px #00000080}@keyframes textGlow{0%{text-shadow:3px 3px 6px #00000080}to{text-shadow:3px 3px 20px #fffc}}.celebration-content p{font-size:1.5rem;margin-bottom:2rem;opacity:.9}.celebration-confetti{height:100px;left:50%;position:absolute;top:-50px;transform:translateX(-50%);width:100px}.celebration-confetti:after,.celebration-confetti:before{animation:confetti 3s ease-in-out infinite;background:#ff6b6b;content:"";height:10px;position:absolute;width:10px}.celebration-confetti:before{animation-delay:0s;left:10px}.celebration-confetti:after{animation-delay:.5s;background:#4ecdc4;left:30px}@keyframes confetti{0%{opacity:1;transform:translateY(0) rotate(0deg)}to{opacity:0;transform:translateY(200px) rotate(2turn)}}.pause-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000c}.pause-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:2px solid #fff3;border-radius:20px;color:#fff;max-width:400px;padding:3rem;text-align:center;width:90%}.pause-icon{font-size:4rem;margin-bottom:1rem;opacity:.8}.pause-content h2{font-size:2rem;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.pause-content p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.pause-actions{align-items:center;display:flex;flex-direction:column;gap:1rem}@media (max-width:768px){.practice-navigation{flex-direction:column;gap:1rem;padding:1rem;text-align:center}.session-title{font-size:1.3rem}.back-to-dashboard-btn{font-size:.9rem;padding:.6rem 1.2rem}.session-progress{padding:1rem}.stats-container{gap:1rem;grid-template-columns:1fr;text-align:center}.problem-area{min-height:300px;padding:1rem}.pause-content{padding:2rem;width:95%}.celebration-content h2{font-size:2rem}.celebration-content p{font-size:1.2rem}.error-actions{flex-direction:column}}@media (max-width:480px){.practice-navigation{padding:.75rem}.session-title{font-size:1.1rem}.back-to-dashboard-btn{font-size:.8rem;padding:.5rem 1rem}.problem-area,.session-progress{padding:.75rem}.pause-content{padding:1.5rem}.celebration-content h2{font-size:1.8rem}.celebration-stars{font-size:3rem}}@media (prefers-contrast:high){.practice-session-interface{background:#000;color:#fff}.practice-navigation{background:#fff3}.back-to-dashboard-btn{background:#ffffff4d;border:3px solid #fff}.pause-content{background:#ffffffe6;border:3px solid #fff;color:#000}}@media (prefers-reduced-motion:reduce){.celebration-confetti:after,.celebration-confetti:before,.celebration-content h2,.celebration-stars,.emoji,.loading-spinner{animation:none}.practice-session-interface.celebrating{animation:none;box-shadow:inset 0 0 30px #ffd70080}.celebration-overlay,.encouragement-message{animation:none;opacity:1;transform:scale(1)}}.practice-session-interface button:focus{outline:3px solid gold;outline-offset:2px}@media print{.practice-session-interface{background:#fff;color:#000}.celebration-overlay,.encouragement-message,.pause-overlay{display:none}}
/*# sourceMappingURL=main.a3c76ee8.css.map*/