@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&display=swap";@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--font-primary: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-main: hsl(222, 47%, 11%);--bg-card: hsla(223, 47%, 15%, .7);--bg-card-hover: hsla(223, 47%, 18%, .9);--bg-input: hsla(222, 47%, 8%, .8);--border-color: hsla(217, 32%, 25%, .5);--border-color-focus: hsl(250, 85%, 65%);--text-primary: hsl(210, 40%, 98%);--text-secondary: hsl(215, 20%, 85%);--text-muted: hsl(217, 20%, 80%);--primary: hsl(250, 85%, 60%);--primary-light: hsl(250, 85%, 70%);--primary-glow: hsla(250, 85%, 60%, .4);--secondary: hsl(310, 80%, 55%);--secondary-light: hsl(310, 80%, 65%);--accent-blue: hsl(195, 90%, 50%);--accent: var(--accent-blue);--success: hsl(145, 80%, 45%);--success-glow: hsla(145, 80%, 45%, .3);--error: hsl(355, 85%, 55%);--error-glow: hsla(355, 85%, 55%, .3);--warning: hsl(38, 95%, 55%);--admin-orange: #f97316;--admin-orange-hover: #ea580c;--header-bg: hsla(222, 47%, 8%, .6);--glass-bg: hsla(223, 47%, 20%, .35);--secondary-glow: hsla(310, 80%, 55%, .35);--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .5s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=light]{--bg-main: hsl(210, 40%, 98%);--bg-card: hsla(0, 0%, 100%, .85);--bg-card-hover: hsla(0, 0%, 100%, 1);--bg-input: hsl(210, 40%, 93%);--border-color: hsla(215, 20%, 85%, .8);--border-color-focus: hsl(250, 85%, 60%);--text-primary: hsl(222, 47%, 11%);--text-secondary: hsl(215, 20%, 35%);--text-muted: hsl(217, 15%, 35%);--primary: hsl(250, 85%, 60%);--primary-light: hsl(250, 85%, 50%);--primary-glow: hsla(250, 85%, 60%, .2);--secondary: hsl(310, 80%, 55%);--secondary-light: hsl(310, 80%, 45%);--accent-blue: hsl(195, 90%, 45%);--accent: var(--accent-blue);--success: hsl(145, 80%, 40%);--success-glow: hsla(145, 80%, 40%, .2);--error: hsl(0, 85%, 55%);--error-glow: hsla(0, 85%, 55%, .15);--warning: hsl(35, 90%, 55%);--warning-glow: hsla(35, 90%, 55%, .15);--admin-orange: #f97316;--admin-orange-hover: #ea580c;--header-bg: hsla(210, 40%, 95%, .85);--glass-bg: hsla(0, 0%, 100%, .45);--secondary-glow: hsla(310, 80%, 55%, .2)}[data-theme=light] .guest-login-btn{color:var(--text-primary)!important;text-shadow:none}.student-btn{background:linear-gradient(135deg,#14b858,#12a171)!important;border:none!important;color:#fff!important}.student-btn:hover{background:linear-gradient(135deg,#12a14d,#0f8a61)!important}.admin-btn{background:linear-gradient(135deg,#5f42f0,#ad2bee)!important;border:none!important;color:#fff!important}.admin-btn:hover{background:linear-gradient(135deg,#3713ec,#9311d4)!important}.admin-action-btn{border-color:var(--primary)!important;color:var(--primary)!important}.admin-action-btn:hover{background:#8b5cf61a!important;border-color:var(--primary-light)!important}html,body{overscroll-behavior:none}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);font-family:var(--font-primary);min-height:100vh;overflow-x:hidden;position:relative;line-height:1.6}body.no-scroll{overflow:hidden!important;height:100vh!important;height:100dvh!important;touch-action:none}@media(max-width:768px){body.no-scroll{touch-action:pan-y!important;overflow:hidden!important;height:100dvh!important;min-height:100dvh!important}}body:before,body:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;filter:blur(120px);z-index:-1;opacity:.25;pointer-events:none;animation:floatBg 20s infinite alternate ease-in-out}body:before{background:var(--primary);top:10%;left:10%}body:after{background:var(--secondary);bottom:15%;right:10%;animation-delay:-10s}@keyframes floatBg{0%{transform:translate(0) scale(1)}to{transform:translate(80px,50px) scale(1.2)}}.container{width:100%;max-width:1200px;margin:0 auto;padding:2rem 1.5rem}h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,var(--text-primary) 30%,var(--primary-light) 65%,var(--secondary-light) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2rem;background:var(--header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:100}.logo-container{display:flex;align-items:center;gap:.75rem;text-decoration:none;white-space:nowrap;flex-shrink:0}.logo-icon{width:40px;height:40px;border-radius:12px;background:var(--glass-bg);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px var(--primary-glow);padding:4px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease}.logo-container:hover .logo-icon{transform:translateY(-2px) rotate(5deg);box-shadow:0 6px 20px var(--secondary-glow)}.logo-details{display:flex;flex-direction:column;justify-content:center}.logo-text{font-size:1.4rem;font-weight:800;line-height:1.1;background:linear-gradient(135deg,hsl(0,0%,100%),var(--secondary-light));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.logo-tagline{font-size:.65rem;font-weight:600;color:var(--text-secondary);line-height:1;letter-spacing:.08em;text-transform:uppercase;margin-top:.15rem;opacity:.8}.dashboard-title-section{margin-bottom:3rem;text-align:center}.dashboard-title-section h2{font-size:2.5rem;margin-bottom:.5rem}.dashboard-title-section p{color:var(--text-secondary);font-size:1.1rem}.grid-templates{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-bottom:4rem}.template-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:2.25rem;transition:var(--transition-bounce);position:relative;overflow:hidden;cursor:pointer;display:flex;flex-direction:column}.template-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,var(--primary),var(--secondary));opacity:0;transition:var(--transition-smooth)}.template-card:hover{transform:translateY(-8px);border-color:#735af266;box-shadow:0 12px 30px #0b042f80,0 0 20px var(--primary-glow);background:var(--bg-card-hover)}.template-card:hover:before{opacity:1}.template-icon{font-size:3rem;margin-bottom:1.5rem;display:inline-block}.template-card h3{font-size:1.4rem;margin-bottom:.75rem}.template-card p{color:var(--text-secondary);font-size:.95rem;margin-bottom:1.5rem;flex-grow:1}.tts-btn{background:transparent;border:none;color:var(--primary-light);cursor:pointer;font-size:1.2rem;padding:.5rem;border-radius:50%;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;margin-left:.5rem;min-width:44px;min-height:44px}.tts-btn:hover{background:#a78bfa1a;transform:scale(1.1)}.tts-btn.playing{color:var(--accent);animation:pulse-tts 1.5s infinite}@keyframes pulse-tts{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.wysiwyg-workspace{background:var(--bg-body);border:2px dashed var(--border-color);border-radius:var(--radius-lg);padding:2rem;position:relative;overflow:hidden}.wysiwyg-workspace:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(var(--border-color) 2px,transparent 2px);background-size:30px 30px;opacity:.3;z-index:0}.wysiwyg-workspace>*{position:relative;z-index:1}.wysiwyg-card{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:0 10px 25px #0003;padding:2rem;margin-bottom:2rem;border:1px solid var(--border-color);position:relative}.wysiwyg-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.wysiwyg-question-input{width:100%;font-size:clamp(1.1rem,4vw,1.5rem);font-weight:700;text-align:center;border:none;background:transparent;color:var(--text-primary);border-bottom:2px dashed var(--border-color);padding-bottom:.5rem;margin-bottom:1.5rem;font-family:inherit;resize:vertical;line-height:1.35;word-break:break-word;overflow-wrap:anywhere}.wysiwyg-question-input:focus{outline:none;border-bottom-color:var(--primary)}.wysiwyg-options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.wysiwyg-option{display:flex;align-items:center;gap:.25rem;background:var(--bg-input);border:2px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem;transition:all .2s ease;min-width:0}.wysiwyg-option:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #6c5ce733}.wysiwyg-option.is-correct{border-color:var(--success);background:#00b8940d}.wysiwyg-option-input{flex-grow:1;min-width:0;border:none;background:transparent;color:var(--text-primary);padding:.5rem;font-size:1rem;font-family:inherit}.wysiwyg-option-input:focus{outline:none}.wysiwyg-flashcard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.wysiwyg-flashcard-face{background:var(--bg-input);border:2px solid var(--border-color);border-radius:var(--radius-sm);padding:2rem;text-align:center;min-height:150px;display:flex;flex-direction:column;justify-content:center;position:relative}.wysiwyg-flashcard-face-label{position:absolute;top:.5rem;left:.5rem;font-size:.8rem;color:var(--text-muted);font-weight:600;text-transform:uppercase}.wysiwyg-flashcard-input{width:100%;border:none;background:transparent;text-align:center;font-size:1.25rem;color:var(--text-primary);resize:none;font-family:inherit}.wysiwyg-flashcard-input:focus{outline:none}@media(max-width:768px){.wysiwyg-flashcard-grid{grid-template-columns:1fr}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-family:var(--font-primary);font-size:.95rem;font-weight:600;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:var(--transition-smooth),transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s ease,background .2s ease;text-decoration:none}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn:active:not(:disabled){transform:translateY(0)}.btn-header-refresh{font-size:.85rem;padding:.4rem .6rem;background:var(--glass-bg);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer}.btn-header-refresh:hover:not(:disabled){color:var(--text-primary);border-color:var(--border-color);background:#ffffff1f}.student-landing-header{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;margin-bottom:.5rem}.qr-cube-wrapper--play{width:32px;height:32px;perspective:160px}.qr-cube-wrapper--play .qr-cube-face{width:32px;height:32px;font-size:.85rem}.qr-cube-wrapper--play .qr-cube-front{transform:translateZ(16px)}.qr-cube-wrapper--play .qr-cube-back{transform:rotateY(180deg) translateZ(16px)}.qr-cube-wrapper--play .qr-cube-right{transform:rotateY(90deg) translateZ(16px)}.qr-cube-wrapper--play .qr-cube-left{transform:rotateY(-90deg) translateZ(16px)}.qr-cube-wrapper--play .qr-cube-top{transform:rotateX(90deg) translateZ(16px)}.qr-cube-wrapper--play .qr-cube-bottom{transform:rotateX(-90deg) translateZ(16px)}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;box-shadow:0 4px 15px var(--primary-glow)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #5f42f099}.btn-secondary{background:linear-gradient(135deg,var(--secondary),var(--secondary-light));color:#fff;box-shadow:0 4px 15px #e830c966}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #e830c999}.btn-outline{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-outline:hover{background:#ffffff0d;border-color:var(--text-primary)}[data-theme=light] .btn-outline{color:var(--text-primary);border-color:var(--border-color)}[data-theme=light] .btn-outline:hover{background:#0000000d;border-color:var(--text-primary)}.btn-danger{background:#ef444426!important;color:var(--error)!important;border:1px solid rgba(239,68,68,.35)!important;box-shadow:none!important;transition:var(--transition-smooth)}.btn-danger:hover,[data-theme=light] .btn-danger:hover{transform:translateY(-2px);background:var(--error)!important;color:#fff!important;border-color:var(--error)!important;box-shadow:0 6px 20px var(--error-glow)!important}.btn-danger:hover *,[data-theme=light] .btn-danger:hover *{color:#fff!important}.btn-danger.btn-icon,.activity-card-actions .btn-danger.btn-icon,.folder-card .btn-danger.btn-icon{background:transparent!important;border:1px solid var(--error)!important;color:var(--error)!important;box-shadow:none!important;transition:var(--transition-smooth)}[data-theme=light] .btn-danger.btn-icon,[data-theme=light] .activity-card-actions .btn-danger.btn-icon,[data-theme=light] .folder-card .btn-danger.btn-icon{background:var(--bg-card)!important;border-color:var(--error)!important;color:var(--error)!important}.btn-danger.btn-icon:hover,.activity-card-actions .btn-danger.btn-icon:hover,.folder-card .btn-danger.btn-icon:hover,[data-theme=light] .btn-danger.btn-icon:hover,[data-theme=light] .activity-card-actions .btn-danger.btn-icon:hover,[data-theme=light] .folder-card .btn-danger.btn-icon:hover{transform:translateY(-2px);background:var(--error)!important;color:#fff!important;border-color:var(--error)!important;box-shadow:0 6px 20px var(--error-glow)!important}.btn-danger.btn-icon:hover *,.activity-card-actions .btn-danger.btn-icon:hover *,.folder-card .btn-danger.btn-icon:hover *,[data-theme=light] .btn-danger.btn-icon:hover *,[data-theme=light] .activity-card-actions .btn-danger.btn-icon:hover *,[data-theme=light] .folder-card .btn-danger.btn-icon:hover *{color:#fff!important}.folders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem;margin-bottom:2rem}.folder-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;justify-content:space-between;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;box-shadow:0 4px 12px #0000001a;position:relative}.folder-card:hover{border-color:var(--primary-light);transform:translateY(-2px);box-shadow:0 8px 20px #0000002e}.folder-card-dragging{opacity:.4;transform:scale(.96);border:2px dashed var(--primary)!important}.folder-card-dragover{border-color:#f59e0b!important;background:#f59e0b14!important;box-shadow:0 0 15px #f59e0b4d!important;transform:translateY(-3px) scale(1.02)}.btn-danger-outline{background:transparent!important;border:1px solid var(--error)!important;color:var(--error)!important;transition:var(--transition-smooth);box-shadow:none!important}.btn-danger-outline:hover,[data-theme=light] .btn-danger-outline:hover{transform:translateY(-2px);background:var(--error)!important;color:#fff!important;border-color:var(--error)!important;box-shadow:0 4px 15px var(--error-glow)!important}.btn-danger-outline:hover *,[data-theme=light] .btn-danger-outline:hover *{color:#fff!important}.btn-accent{background:var(--accent-blue);color:#0a0f1e;box-shadow:0 4px 15px #0db9f24d}.btn-pwa-install{font-size:.8rem;padding:.4rem .8rem;background:linear-gradient(135deg,var(--primary),var(--accent));border:none;color:#fff!important;border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:.3rem;cursor:pointer;box-shadow:0 4px 12px var(--primary-glow);animation:pwa-pulse-attention 1.5s ease-in-out 4}.btn-pwa-install:hover{transform:translateY(-2px);box-shadow:0 6px 18px var(--primary-glow);background:linear-gradient(135deg,var(--primary-light),var(--accent))}@keyframes pwa-pulse-attention{0%,to{transform:scale(1);box-shadow:0 4px 12px var(--primary-glow)}50%{transform:scale(1.08);box-shadow:0 8px 20px var(--primary-glow),0 0 12px var(--accent)}}.btn-lg{padding:1rem 2rem;font-size:1.2rem;font-weight:700;border-radius:var(--radius-md);min-width:120px}.btn-accent:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0db9f280}.btn-success{background:linear-gradient(135deg,var(--success),hsl(145,80%,55%));color:#fff;box-shadow:0 4px 15px var(--success-glow)}.btn-success:hover{transform:translateY(-2px);box-shadow:0 6px 20px #17cf6380}.btn-icon{padding:.6rem;min-width:44px;min-height:44px;border-radius:var(--radius-sm);font-size:1.1rem;transition:var(--transition-smooth),transform .2s ease}.theme-toggle-btn,.theme-toggle-icon-custom,.btn-header,.btn-qr-scan{transition:var(--transition-smooth),transform .2s ease,color .2s ease,border-color .2s ease,background .2s ease}.theme-toggle-btn:hover,.theme-toggle-icon-custom:hover,.btn-header:hover,.btn-icon:hover,.btn-qr-scan:hover{transform:translateY(-1px);background:#ffffff14}[data-theme=light] .theme-toggle-btn:hover,[data-theme=light] .theme-toggle-icon-custom:hover,[data-theme=light] .btn-header:hover,[data-theme=light] .btn-icon:hover,[data-theme=light] .btn-qr-scan:hover{background:#0000000d}.activities-section{margin-top:3rem}.activities-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;border-bottom:1px solid var(--border-color);padding-bottom:1rem}.activities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.activity-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem;transition:var(--transition-smooth);display:flex;flex-direction:column;align-items:center;text-align:center;aspect-ratio:1;justify-content:space-between;cursor:pointer}.activity-card:hover{border-color:var(--border-color-focus);box-shadow:0 8px 20px #0b042f66;background:var(--bg-card-hover);transform:translateY(-4px)}.activity-badge{align-self:center;padding:.25rem .6rem;font-size:.75rem;font-weight:700;border-radius:20px;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.badge-quiz{background:#5f42f033;color:#a797f7;border:1px solid hsla(250,85%,60%,.4)}.badge-group{background:#2eb88a33;color:#248f6b;border:1px solid hsla(160,60%,45%,.4)}.badge-wheel{background:#e830c933;color:#f49ae5;border:1px solid hsla(310,80%,55%,.4)}.badge-match{background:#0db9f233;color:#6ed5f7;border:1px solid hsla(195,90%,50%,.4)}.badge-flashcards{background:#ab30e833;color:#d08cf2;border:1px solid hsla(280,80%,55%,.4)}.badge-true_false{background:#21c45d33;color:#7ce9a4;border:1px solid hsla(142,71%,45%,.4)}.badge-crossword{background:#08b2c933;color:#6ce8f9;border:1px solid hsla(187,92%,41%,.4)}.badge-fill_blanks{background:#14b8a533;color:#75f0e1;border:1px solid hsla(173,80%,40%,.4)}.badge-word_search{background:#f9701533;color:#fbaa74;border:1px solid hsla(24,95%,53%,.4)}[data-theme=light] .badge-quiz{background:#5f42f01f;color:#2a0fb3;border-color:#5f42f059}[data-theme=light] .badge-group{background:#2eb88a1f;color:#0e815a;border-color:#2eb88a59}[data-theme=light] .badge-wheel{background:#e830c91f;color:#a11289;border-color:#e830c959}[data-theme=light] .badge-match{background:#0db9f21f;color:#086f91;border-color:#0db9f259}[data-theme=light] .badge-flashcards{background:#ab30e81f;color:#7112a1;border-color:#ab30e859}[data-theme=light] .badge-true_false{background:#21c45d1f;color:#157a3a;border-color:#21c45d59}[data-theme=light] .badge-crossword{background:#0ba6da24;color:#04698b;border-color:#0ba6da66}[data-theme=light] .badge-fill_blanks{background:#19b39924;color:#0a7b68;border-color:#19b39966}[data-theme=light] .badge-word_search{background:#f9701524;color:#9f4204;border-color:#f9701566}.flashcard-container{-webkit-perspective:1000px;perspective:1000px;width:320px;height:220px;cursor:pointer;margin-bottom:2rem}.flashcard{width:100%;height:100%;position:relative;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.4,0,.2,1)}.flashcard.flipped{transform:rotateY(180deg)}.flashcard-face{position:absolute;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;padding:2rem;text-align:center;font-size:1.3rem;font-weight:600}.flashcard-front{background:linear-gradient(135deg,var(--primary),var(--accent-blue));color:#fff;box-shadow:0 8px 32px var(--primary-glow)}.flashcard-back{background:linear-gradient(135deg,var(--secondary),var(--accent-blue));color:#fff;transform:rotateY(180deg);box-shadow:0 8px 32px #ec48994d}.activity-card h4{font-size:1.15rem;margin-bottom:.5rem;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1.3;max-height:3.9em}.activity-card-meta{font-size:.85rem;color:var(--text-muted);margin-bottom:1.5rem}.activity-card-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto;justify-content:center}.activity-card-actions .btn{font-size:.85rem;padding:.5rem .75rem;white-space:nowrap}.activity-card-actions .btn-icon{flex:0 0 auto;padding:.5rem}.btn-icon-preview{border-color:#3b82f6!important;color:#3b82f6!important}.btn-icon-preview:hover{border-color:#2563eb!important;color:#2563eb!important;background:#3b82f61a}.editor-layout{display:grid;grid-template-columns:1fr;gap:2rem}.editor-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:2.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.form-group{margin-bottom:2rem}.form-group label{display:block;font-size:1rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.form-control{width:100%;padding:.85rem 1.2rem;font-family:var(--font-primary);font-size:1rem;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:var(--transition-smooth)}.form-control:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.form-control:focus{border-color:var(--border-color-focus);box-shadow:0 0 15px #735af24d}.editor-workspace{margin-top:2rem;border-top:1px solid var(--border-color);padding-top:2rem}.workspace-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dynamic-item-card{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:1.5rem;margin-bottom:1.5rem;position:relative;transition:var(--transition-smooth);animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dynamic-item-card:hover{border-color:#3d5376cc;background:#0b111e99}.item-number-badge{position:absolute;top:-10px;left:15px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-size:.8rem;font-weight:700;padding:.2rem .6rem;border-radius:10px}.item-delete-btn{position:absolute;top:1rem;right:1rem}.quiz-option-input-wrapper{display:flex;align-items:center;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem;gap:.75rem}.quiz-option-input-wrapper:focus-within{border-color:var(--border-color-focus)}.quiz-option-input-wrapper input[type=text]{flex-grow:1;background:transparent;border:none;color:var(--text-primary);font-family:var(--font-primary);font-size:.95rem;padding:.4rem}.quiz-option-input-wrapper input[type=text]:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.checkbox-custom-label{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--border-color);cursor:pointer;transition:var(--transition-smooth);-webkit-user-select:none;user-select:none}.checkbox-custom-label i{font-size:.9rem;color:#fff;opacity:0;transition:var(--transition-smooth)}.hidden-checkbox{display:none}.hidden-checkbox:checked+.checkbox-custom-label{background-color:var(--success);border-color:var(--success);box-shadow:0 0 10px var(--success-glow)}.hidden-checkbox:checked+.checkbox-custom-label i{opacity:1}.flat-inputs-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.flat-inputs-grid{grid-template-columns:1fr 1fr}}.flat-input-item{display:flex;gap:.5rem;align-items:center}.match-pair-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1rem}.play-area{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:70vh;width:100%}.game-card-view{width:100%;max-width:700px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:3rem;box-shadow:0 20px 50px #0006;text-align:center;animation:slideIn .4s cubic-bezier(.34,1.56,.64,1)}.game-topbar{width:100%;max-width:700px;display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem;font-size:1.1rem;color:var(--text-secondary)}.game-topbar-header{display:flex;justify-content:space-between;align-items:center;width:100%;gap:.75rem}.game-topbar-title{flex:1 1 auto;min-width:0}.game-topbar-score-wrap{flex:0 0 auto;display:flex;align-items:center;gap:.75rem}.game-topbar-body{display:flex;justify-content:space-between;align-items:center;width:100%;gap:.75rem}.game-progress-bar{width:100%;height:8px;background:#0b111ecc;border-radius:4px;overflow:hidden;margin-bottom:2rem}.game-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--secondary));width:0%;transition:width .3s ease}.quiz-options-list{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}.play-option-btn{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-sm);padding:1.25rem 2rem;text-align:left;font-size:1.1rem;color:var(--text-primary);cursor:pointer;transition:var(--transition-smooth);display:flex;justify-content:space-between;align-items:center}.play-option-btn:hover{border-color:var(--primary-light);background:#5f42f026;transform:translate(5px)}.play-option-btn.selected-correct{background:var(--success-glow);border-color:var(--success);color:#fff}.play-option-btn.selected-incorrect{background:var(--error-glow);border-color:var(--error);color:#fff}.wheel-container{position:relative;display:flex;flex-direction:column;align-items:center;gap:1.25rem}.wheel-canvas-wrapper{position:relative;width:min(92vw,420px);height:min(92vw,420px);border-radius:50%;box-shadow:0 10px 40px #00000080,0 0 30px var(--primary-glow);border:8px solid hsla(223,47%,18%,.8);display:flex;align-items:center;justify-content:center}.wheel-controls-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem;width:100%;max-width:760px}.wheel-controls-toggle{display:flex;align-items:center;gap:.5rem;background:#080c1680;padding:.6rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);white-space:nowrap}.wheel-controls-action{min-width:150px;justify-content:center}#wheel-canvas{display:block;border-radius:50%;width:100%!important;height:100%!important}.wheel-pointer{position:absolute;top:-15px;left:50%;transform:translate(-50%);width:0;height:0;border-left:20px solid transparent;border-right:20px solid transparent;border-top:30px solid var(--secondary);z-index:10;filter:drop-shadow(0 4px 6px rgba(0,0,0,.4))}.match-board{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:800px}.match-columns{display:grid;grid-template-columns:1fr 1fr;gap:3rem}.match-column{display:flex;flex-direction:column;gap:1rem}.match-tile{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:1.25rem;font-size:1.05rem;text-align:center;cursor:grab;-webkit-user-select:none;user-select:none;transition:var(--transition-smooth);color:var(--text-primary);font-weight:600}.match-tile:active{cursor:grabbing}.match-tile.dragging{opacity:.5;transform:scale(.95);background:#5f42f033;border-color:var(--primary)}.match-tile.matched{border-color:var(--success);background:var(--success-glow);cursor:default}.group-board{display:flex;flex-direction:column;gap:2rem;width:100%;touch-action:manipulation}.group-cards-source{display:flex;justify-content:center;align-items:center;min-height:120px;background:#080c1666;border:2px dashed var(--border-color);border-radius:var(--radius-md);padding:1.5rem}.group-card-draggable{background:linear-gradient(135deg,var(--bg-card) 0%,hsla(223,47%,22%,.8) 100%);border:2px solid var(--primary-light);border-radius:var(--radius-sm);padding:1rem 1.5rem;font-size:1.2rem;font-weight:700;color:var(--text-primary);cursor:grab;-webkit-user-select:none;user-select:none;box-shadow:0 8px 20px #0000004d,0 0 15px var(--primary-glow);transition:var(--transition-smooth);display:inline-flex;align-items:center;gap:.5rem}.group-card-draggable:active{cursor:grabbing}.group-columns-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;width:100%}.group-column{background:#18254366;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column;gap:.75rem;height:320px;transition:var(--transition-smooth)}.group-column.drag-over{background:#17cf631f;border-color:var(--success);box-shadow:0 0 15px var(--success-glow)}.group-column-header{font-size:1rem;font-weight:800;text-align:center;padding-bottom:.5rem;border-bottom:1px solid var(--border-color);word-break:break-word}.group-column-items{flex-grow:1;display:flex;flex-flow:row wrap;align-content:flex-start;gap:.35rem;overflow-y:auto}.group-item-dropped{background:#080c1699;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.35rem .6rem;font-size:.85rem;font-weight:500;text-align:center;cursor:pointer;transition:var(--transition-smooth);word-break:break-word}.group-item-dropped:hover{border-color:var(--error);background:#ee2b3b1a}.group-item-dropped.correct{border-color:var(--success)!important;background:var(--success-glow)!important;color:#fff}.group-item-dropped.incorrect{border-color:var(--error)!important;background:var(--error-glow)!important;color:#fff}.game-result-card{text-align:center;animation:floatUp .6s cubic-bezier(.34,1.56,.64,1)}.round-fade-enter-active,.round-fade-leave-active{transition:opacity .3s ease,transform .3s ease}.round-fade-enter-from{opacity:0;transform:translateY(10px)}.round-fade-leave-to{opacity:0;transform:translateY(-10px)}@keyframes floatUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.result-score{font-size:4rem;font-weight:800;margin:1.5rem 0;background:linear-gradient(135deg,var(--success),var(--accent-blue));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.result-emoji{font-size:5rem;margin-bottom:1rem}.loader{width:48px;height:48px;border:5px solid var(--border-color);border-bottom-color:var(--primary);border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.toast-container{position:fixed;bottom:2rem;right:2rem;z-index:1000;display:flex;flex-direction:column;gap:.75rem}.toast{background:#141e38f2;border:1px solid var(--border-color);border-left:4px solid var(--primary);padding:1rem 1.5rem;border-radius:var(--radius-sm);color:var(--text-primary);box-shadow:0 10px 25px #00000080;display:flex;align-items:center;gap:.75rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:slideInRight .3s cubic-bezier(.34,1.56,.64,1)}.toast-success{border-left-color:var(--success)}.toast-error{border-left-color:var(--error)}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.ai-generator-panel{background:linear-gradient(135deg,#5f42f01a,#e830c90d);border:1px dashed hsla(250,85%,65%,.5);border-radius:var(--radius-sm);padding:1.75rem;margin-bottom:2.5rem;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px #0003;transition:var(--transition-smooth)}.ai-generator-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#4285f4,#9b51e0,#ec4899)}.ai-generator-header{display:flex;align-items:center;gap:.6rem;margin-bottom:1.25rem}.ai-generator-header h4{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin:0}.ai-badge{background:linear-gradient(135deg,#4285f4,#9b51e0,#ec4899);color:#fff;font-size:.75rem;font-weight:800;padding:.2rem .55rem;border-radius:6px;text-transform:uppercase;letter-spacing:.06em;box-shadow:0 2px 10px #9b51e066;display:inline-flex;align-items:center;gap:.35rem}.ai-sparkle-text{background:linear-gradient(135deg,#60a5fa,#c084fc,#f472b6);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.btn-ai{background:linear-gradient(135deg,#4285f4,#9b51e0,#ec4899)!important;color:#fff!important;border:none!important;box-shadow:0 4px 15px #9b51e059!important;transition:all .25s ease!important}.btn-ai:hover{box-shadow:0 6px 20px #9b51e08c!important;transform:translateY(-1px)}.ai-generator-form{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.ai-input-group{flex:1 1 250px;display:flex;flex-direction:column;gap:.5rem}.ai-input-group label{font-size:.9rem;font-weight:600;color:var(--text-secondary)}.ai-select-group{flex:0 1 150px;display:flex;flex-direction:column;gap:.5rem}.ai-select-group label{font-size:.9rem;font-weight:600;color:var(--text-secondary)}.ai-btn-container{flex:0 0 auto}.ai-generator-panel.generating{border-style:solid;animation:borderPulse 2s infinite alternate ease-in-out}@keyframes borderPulse{0%{border-color:#735af266;box-shadow:0 0 15px #5f42f01a}to{border-color:#ed5ed5cc;box-shadow:0 0 25px #e830c940}}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;height:100dvh;background:#0a0f1ed9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overscroll-behavior:contain}[data-theme=light] .modal-overlay{background:#0a0f1e80}.modal-card,.modal-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;color:var(--text-primary);max-height:85vh;overflow-y:auto;padding:1.5rem 1.5rem 1rem}.modal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);max-height:85vh;overflow-y:auto;padding:2.5rem;width:90%;max-width:500px;position:relative;box-shadow:0 20px 50px #0009,0 0 30px var(--primary-glow);animation:floatUp .4s cubic-bezier(.34,1.56,.64,1)}.modal-close-btn{position:absolute;top:1.25rem;right:1.25rem;background:transparent;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;transition:var(--transition-smooth)}.modal-close-btn:hover{color:var(--text-primary)}.pin-display-container{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:1rem;text-align:center;margin-bottom:1.5rem}.pin-label{font-size:.8rem;font-weight:700;color:var(--text-muted);letter-spacing:.1em}.pin-value{font-size:3.5rem;font-weight:800;color:var(--secondary-light);letter-spacing:.05em;margin-top:.25rem}.qr-code-wrapper{background:#fff;padding:.5rem;border-radius:var(--radius-sm);width:304px;height:304px;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center}.share-link-container{display:flex;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.25rem;gap:.5rem;align-items:center;margin-bottom:1.5rem}.share-link-input{flex-grow:1;background:transparent;border:none;color:var(--text-secondary);padding:.5rem;font-size:.9rem;text-overflow:ellipsis}.share-link-input:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.student-login-card{max-width:450px;width:90%;margin:2rem auto;padding:2.5rem 2rem}.mobile-input{padding:1.1rem 1.4rem;font-size:1.15rem;border-radius:var(--radius-sm)}.pin-input-field{text-align:center;font-weight:800;font-size:1.8rem;letter-spacing:.2em}.login-error-alert{background:var(--error-glow);border:1px solid var(--error);color:var(--text-primary);border-radius:var(--radius-sm);padding:1rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem;font-size:.95rem}.btn-mobile-submit{padding:1.1rem;font-size:1.2rem;width:100%}.btn-large{padding:2.2rem 1.1rem!important;font-size:1.5rem!important}[v-cloak]{display:none!important}.tabs-navigation{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.tab-btn{background:transparent;border:none;color:var(--text-muted);font-size:1.1rem;font-weight:600;padding:.5rem 1rem;cursor:pointer;transition:var(--transition-smooth);position:relative}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{color:var(--primary-light)}.tab-btn.active:after{content:"";position:absolute;bottom:-.6rem;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:3px}.modal-btn-row{display:flex;gap:1rem}.modal-btn-row .btn,.modal-btn-row a{flex:1}@media(max-width:480px){.modal-btn-row{flex-direction:column;gap:.5rem}.modal-btn-row .btn,.modal-btn-row a{flex:none;width:100%}}.preloaded-game-info{margin-top:1.5rem;background:#5f42f014;border:1px solid var(--border-color);border-left:4px solid var(--primary-light);padding:1rem 1.25rem;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:space-between;gap:1rem;animation:slideIn .3s ease-out}.preloaded-game-title{font-size:1.05rem;font-weight:700;color:var(--text-primary);word-break:break-word}.preloaded-game-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--primary-light);font-weight:700;display:block;margin-bottom:.25rem}.btn-success-outline{background:transparent!important;color:#5eed9a!important;border:1px solid hsla(145,80%,45%,.6)!important}.btn-success-outline:hover:not(:disabled){background:var(--success-glow)!important;border-color:var(--success)!important;color:#fff!important}.btn-success-outline:disabled{opacity:.5;cursor:not-allowed;border-color:var(--border-color)!important;color:var(--text-muted)!important}@media(max-width:768px){header{flex-direction:column!important;gap:1rem!important;padding:1.25rem 1rem!important;align-items:center!important;text-align:center!important}header div{margin-left:unset!important;justify-content:center!important}.game-topbar{flex-direction:column!important;gap:.4rem!important;max-width:100%!important;margin-bottom:.75rem!important;padding:.5rem .75rem!important;background:var(--card-bg, rgba(255, 255, 255, .05))!important;border-radius:var(--radius-md, 12px)!important}.game-topbar-header{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important;gap:.5rem!important}.game-topbar-title h3{font-size:.95rem!important;line-height:1.2!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.game-topbar-score-wrap{font-size:.85rem!important;gap:.5rem!important;white-space:nowrap!important}.game-topbar-body{display:flex;justify-content:space-between;align-items:center;width:100%;gap:.5rem;padding-top:.35rem;border-top:1px solid rgba(255,255,255,.08)}.game-topbar.header-collapsed .game-topbar-body{display:none!important}.game-topbar-timers{flex:0 0 auto!important;gap:.4rem!important;font-size:.85rem!important}.game-topbar-controls{flex:0 0 auto!important;gap:.25rem!important}.input-pin-success{border-color:var(--success, #10b981)!important;background-color:#10b9810d!important;box-shadow:0 0 0 3px #10b98140!important}.input-pin-error{border-color:var(--error, #ef4444)!important;background-color:#ef44440d!important;box-shadow:0 0 0 3px #ef444440!important}.btn-game-found-pulse{animation:gameFoundPulse 1.5s infinite alternate}@keyframes gameFoundPulse{0%{transform:scale(1);box-shadow:0 0 #10b98199}to{transform:scale(1.02);box-shadow:0 0 15px 4px #10b98166}}.group-columns-grid{grid-template-columns:repeat(2,1fr)!important;gap:.5rem!important}.group-column{height:220px!important;min-height:220px!important;padding:.5rem!important;gap:.35rem!important}.group-column-header{font-size:.85rem!important;padding-bottom:.25rem!important}.group-item-dropped{font-size:.75rem!important;padding:.25rem .4rem!important;border-radius:4px!important}.group-card-draggable{font-size:.95rem!important;padding:.5rem .8rem!important}}.student-landing-section{min-height:calc(100vh - 120px);display:flex;align-items:center;justify-content:center;padding:1rem 0 3rem}@media(max-width:768px){.student-landing-section{min-height:auto!important;align-items:flex-start!important;padding-top:.5rem!important}.play-area{min-height:calc(85vh - 2rem);min-height:calc(85dvh - 2rem)}.student-login-card{margin:.5rem auto!important;padding:1.5rem 1.25rem!important}}.student-landing-card{text-align:center}.student-landing-logo{margin:0 auto 1.5rem;width:72px;height:72px;font-size:2.4rem}.student-landing-title{font-size:2.2rem;margin-bottom:.5rem;font-weight:800}.student-landing-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:1rem}.student-landing-form{display:flex;flex-direction:column;gap:1rem;text-align:left}.onboarding-overlay{padding:1rem}.onboarding-card{max-width:620px}.onboarding-kicker{margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.12em;color:var(--secondary-light);font-size:.78rem;font-weight:800}.onboarding-title{margin:0 0 .75rem;font-size:1.8rem;line-height:1.15}.onboarding-text{margin:0 0 1.5rem;color:var(--text-secondary);line-height:1.6}.onboarding-steps{display:grid;gap:.9rem;text-align:left;margin-bottom:1.5rem}.onboarding-step{display:flex;gap:.9rem;align-items:flex-start;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.9rem 1rem}.onboarding-step strong{display:block;margin-bottom:.25rem;color:var(--text-primary)}.onboarding-step p{margin:0;color:var(--text-secondary);line-height:1.45}.onboarding-step-icon{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:grid;place-items:center;color:var(--secondary-light);background:#5f42f01f;border:1px solid hsla(250,85%,60%,.25)}.onboarding-actions{margin-top:.5rem}.btn:not(.btn-primary):not(.btn-secondary):not(.btn-danger):not(.btn-danger-outline):not(.btn-accent):not(.btn-success):not(.btn-profile-link):not(.btn-outline):not(.btn-pwa-install):hover{background:#ffffff14}.btn-header:hover{background:#ffffff1f;border-color:#ffffff1f}.btn-profile-link{font-size:.85rem;padding:.45rem .9rem;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:var(--radius-sm);display:inline-flex;align-items:center;gap:.35rem;transition:color .2s ease,border-color .2s ease,background .2s ease}.btn-profile-link:hover{color:var(--text-primary);border-color:var(--border-color);background:#ffffff1f}.btn-qr-scan{border-color:var(--secondary-light);color:var(--secondary-light);padding:2.2rem 1.1rem;font-size:1.3rem}.qr-scanner-card{max-width:420px;width:92%}.qr-reader-container{width:100%;border-radius:var(--radius-sm);overflow:hidden;background:#000;min-height:280px}.qr-reader-container video{border-radius:var(--radius-sm)}@keyframes highlight-pulse{0%{box-shadow:0 0 #ec4899b3;transform:scale(1)}70%{box-shadow:0 0 0 8px #ec489900;transform:scale(1.15)}to{box-shadow:0 0 #ec489900;transform:scale(1)}}.btn-fullscreen-pulse{animation:highlight-pulse 1.2s infinite ease-in-out;border-color:var(--secondary-light)!important;color:var(--secondary-light)!important;background:#ec48991a!important}@keyframes namePulse{0%{box-shadow:0 0 #10b981cc;border-color:var(--success)!important;background-color:#10b98133!important;transform:scale(1.01)}50%{box-shadow:0 0 16px 4px #10b981b3;border-color:#10b981!important;background-color:#10b9814d!important;transform:scale(1.02)}to{box-shadow:0 0 #10b98100;transform:scale(1)}}.name-pulse-highlight{animation:namePulse 2.2s ease-in-out!important}.leaderboard-list-move{transition:transform .8s cubic-bezier(.55,0,.1,1)}.leaderboard-list-enter-active,.leaderboard-list-leave-active{transition:all .5s ease}.leaderboard-list-enter-from,.leaderboard-list-leave-to{opacity:0;transform:scale(.9) translateY(10px)}.leaderboard-list-leave-active{position:absolute;width:100%}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.pulse-anim{animation:pulse 1s infinite}.fullscreen-active .container,:fullscreen .container{max-width:95vw!important;padding:1rem 1.5rem!important}.fullscreen-active header,:fullscreen header{display:none!important}.fullscreen-active .play-area,:fullscreen .play-area{min-height:calc(100vh - 100px);min-height:calc(100dvh - 100px);padding:1rem;display:flex;flex-direction:column;align-items:center;justify-content:center}:fullscreen .play-area{min-height:100vh!important;min-height:100dvh!important}.fullscreen-active .active-game-card,:fullscreen .active-game-card{max-width:min(95vw,1200px)!important;width:100%!important;padding:2rem 1.5rem;display:flex;flex-direction:column;justify-content:center;align-items:center}@media(min-width:769px){.fullscreen-active .active-game-card,:fullscreen .active-game-card{padding:3rem 2rem}}.fullscreen-active .game-topbar,:fullscreen .game-topbar{max-width:100%!important;width:100%}@media(min-width:769px){.fullscreen-active .game-topbar,:fullscreen .game-topbar{max-width:min(95vw,1200px)!important;font-size:1.3rem!important}}.fullscreen-active .match-board,:fullscreen .match-board{max-width:1000px!important}.fullscreen-active .group-board,:fullscreen .group-board{max-width:1000px!important}.fullscreen-active .quiz-options-list,:fullscreen .quiz-options-list{grid-template-columns:1fr 1fr;gap:1.5rem;width:100%}@media(max-width:768px){.fullscreen-active .quiz-options-list,:fullscreen .quiz-options-list{grid-template-columns:1fr;gap:.75rem}}@media(min-width:769px){.fullscreen-active .play-option-btn,:fullscreen .play-option-btn{font-size:1.4rem!important;padding:1.5rem 2rem!important}.fullscreen-active h2,:fullscreen h2{font-size:2.2rem!important;margin-bottom:2rem!important}}@media(min-width:769px){.fullscreen-active .wheel-canvas-wrapper,:fullscreen .wheel-canvas-wrapper{width:520px!important;height:520px!important}.fullscreen-active #wheel-canvas,:fullscreen #wheel-canvas{width:500px!important;height:500px!important}}.fullscreen-active .match-columns,:fullscreen .match-columns{width:100%;gap:1rem!important}@media(min-width:769px){.fullscreen-active .match-columns,:fullscreen .match-columns{gap:2rem!important}.fullscreen-active .match-tile,:fullscreen .match-tile{font-size:1.3rem!important;padding:1.25rem 1rem!important}.fullscreen-active .match-column h4,:fullscreen .match-column h4{font-size:1.3rem!important;margin-bottom:.5rem!important}}@media(max-width:768px){.fullscreen-active .match-tile,:fullscreen .match-tile{font-size:.95rem!important;padding:.85rem .5rem!important}.fullscreen-active .match-column h4,:fullscreen .match-column h4{font-size:1rem!important}}.fullscreen-active .group-columns-grid,:fullscreen .group-columns-grid{width:100%}@media(min-width:769px){.fullscreen-active .group-columns-grid,:fullscreen .group-columns-grid{gap:1.5rem!important}.fullscreen-active .group-column,:fullscreen .group-column{min-height:300px!important}.fullscreen-active .group-column-header,:fullscreen .group-column-header{font-size:1.3rem!important;padding:.85rem!important}.fullscreen-active .group-item-dropped,:fullscreen .group-item-dropped{font-size:1.2rem!important;padding:.75rem!important}.fullscreen-active .group-card-draggable,:fullscreen .group-card-draggable{font-size:1.4rem!important;padding:1.25rem 2rem!important}}.student-list-move{transition:transform .6s cubic-bezier(.55,0,.1,1)}.student-list-enter-active,.student-list-leave-active{transition:all .5s ease}.student-list-enter-from,.student-list-leave-to{opacity:0;transform:scale(.95) translateY(20px)}.student-list-leave-active{position:absolute;width:100%}.admin-container{max-width:850px;margin:2rem auto;padding:0 1.5rem}.admin-section{background:var(--glass-bg);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.admin-section h2{font-size:1.4rem;font-weight:700;margin-bottom:1.5rem;display:flex;align-items:center;gap:.6rem}.admin-section h2 i{color:var(--accent);font-size:1.2rem}.form-row{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.form-row .form-group{flex:1;min-width:150px}.form-row .form-group label{display:block;margin-bottom:.4rem;font-size:.85rem;color:var(--text-secondary);font-weight:500}.form-row .form-group select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2388a4c8' d='M6 8.5L1 3.5h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2rem}select,select option{background-color:var(--bg-secondary);color:var(--text-primary)}.users-table{width:100%;border-collapse:collapse;margin-top:1rem}.users-table th,.users-table td{padding:.85rem 1rem;text-align:left;border-bottom:1px solid var(--border-color);font-size:.9rem}.users-table th{color:var(--text-secondary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.users-table tr:last-child td{border-bottom:none}.users-table tr:hover td{background:#ffffff05}.role-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:100px;font-size:.78rem;font-weight:600}.role-badge.admin{background:#f9731626;color:#f97316;border:1px solid rgba(249,115,22,.3)}.admin-btn{background-color:var(--admin-orange)!important;color:#fff!important;border:1px solid var(--admin-orange)!important;transition:var(--transition-smooth);font-weight:600}.admin-btn:hover:not(:disabled){background-color:var(--admin-orange-hover)!important;border-color:var(--admin-orange-hover)!important;box-shadow:0 4px 12px #f9731640;color:#fff!important}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(460px,1fr));gap:1.5rem;margin-top:1rem}@media(max-width:768px){.courses-grid{grid-template-columns:1fr}}.course-folder-card{position:relative;background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem;transition:var(--transition-smooth);display:flex;flex-direction:column;min-height:220px;margin-top:15px;text-align:left}.course-folder-card:before{content:"";position:absolute;top:-12px;left:1.5rem;height:12px;width:100px;background:var(--bg-card);border:2px solid var(--border-color);border-bottom:none;border-top-left-radius:var(--radius-sm);border-top-right-radius:var(--radius-sm);transition:var(--transition-smooth)}.course-folder-card:hover{border-color:var(--primary-light);box-shadow:0 10px 25px #3b82f626;background:var(--bg-card-hover);transform:translateY(-2px)}.course-folder-card:hover:before{border-color:var(--primary-light);background:var(--bg-card-hover)}.group-folder-card{border-color:#2eb88a59}.group-folder-card:before{border-color:#2eb88a59;background:var(--bg-card)}.group-folder-card:hover{border-color:#4ade80;box-shadow:0 10px 25px #4ade801f}.group-folder-card:hover:before{border-color:#4ade80;background:var(--bg-card-hover)}.course-badges-container{position:absolute;top:1rem;right:1.5rem;display:flex;gap:.5rem}.course-badge-round{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--glass-bg);border:1px solid var(--border-color);color:var(--primary-light);font-size:.7rem;font-weight:700;box-shadow:0 4px 10px #00000026;transition:var(--transition-smooth)}.course-badge-round i{font-size:.8rem;margin-bottom:2px}.course-badge-round span{font-size:.8rem;line-height:1}.course-nested-preview{margin-top:1rem;background:#00000026;border-radius:var(--radius-sm);padding:.75rem;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:.4rem;max-height:150px;overflow-y:auto}[data-theme=light] .course-nested-preview{background:#0000000d}.course-nested-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-secondary);padding:.3rem .5rem;background:#ffffff05;border-radius:var(--radius-xs);border:1px solid rgba(255,255,255,.05)}[data-theme=light] .course-nested-item{background:#00000005;border:1px solid rgba(0,0,0,.05)}.course-nested-item i{font-size:.7rem;color:var(--primary-light)}.role-badge.superadmin{background:#a855f726;color:#a855f7;border:1px solid rgba(168,85,247,.3)}.role-badge.teacher{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.activity-count{display:inline-flex;align-items:center;gap:.3rem;color:var(--text-secondary)}.activity-count i{font-size:.8rem}.success-alert{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#22c55e;padding:.7rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.error-alert{background:var(--error-glow);border:1px solid rgba(239,68,68,.3);color:var(--error);padding:.7rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.empty-state{text-align:center;padding:2rem;color:var(--text-secondary);font-size:.95rem}.empty-state i{font-size:2.5rem;margin-bottom:.8rem;display:block;opacity:.5}.text-success{color:var(--success)!important}.text-danger{color:var(--error)!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeIn .2s ease-out}.modal-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2.25rem;width:100%;max-width:440px;box-shadow:0 20px 40px #00000080,0 0 20px var(--primary-glow);animation:slideIn .3s cubic-bezier(.34,1.56,.64,1)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-right:2.5rem}.modal-header h3{font-size:1.3rem;font-weight:700;margin:0}.modal-close{position:absolute;top:1.25rem;right:1.25rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5rem;transition:var(--transition-smooth)}.modal-close:hover{color:var(--text-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:600px){.form-row{flex-direction:column}.admin-container{padding:0 1rem}.admin-section{padding:1.2rem}}@media(max-width:768px){.container{padding:1rem .75rem}header{padding:.75rem 1rem;flex-direction:column;gap:1rem;align-items:stretch}.header-actions{justify-content:space-between;width:100%;flex-wrap:wrap}.logo-container{justify-content:center}.logo-icon{width:32px;height:32px;font-size:1.2rem}.logo-text{font-size:1.4rem}.dashboard-title-section h2{font-size:1.8rem}.dashboard-title-section p{font-size:.95rem}.grid-templates{grid-template-columns:1fr;gap:1rem}.template-card{padding:1.5rem}.modal-card{width:95%;padding:1.5rem}.btn{padding:.6rem 1rem;font-size:.9rem}.btn-qr-scan{padding:2.2rem 1.1rem;font-size:1.3rem}.btn-icon{padding:.6rem}.activities-grid{grid-template-columns:1fr}}.leaderboard-wrapper{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem;position:relative}.pedestal-container{display:flex;align-items:flex-end;justify-content:center;gap:.5rem;height:180px;margin-top:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.pedestal-item{display:flex;flex-direction:column;align-items:center;width:30%;max-width:100px;position:relative;animation:slideUp .6s cubic-bezier(.34,1.56,.64,1) both}.pedestal-item.place-1{animation-delay:.2s;z-index:3}.pedestal-item.place-2{animation-delay:.4s;z-index:2}.pedestal-item.place-3{animation-delay:.6s;z-index:1}.pedestal-avatar{font-size:1.8rem;margin-bottom:-10px;z-index:2;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}.pedestal-name{font-weight:600;color:var(--text-primary);font-size:.85rem;text-align:center;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:.2rem}.pedestal-score{font-size:.85rem;font-weight:700;color:var(--text-secondary);margin-bottom:.4rem}.pedestal-block{width:100%;border-radius:8px 8px 0 0;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;color:#0006;box-shadow:inset 0 2px 10px #fff3,0 -5px 15px #0003}.pedestal-item.place-1 .pedestal-block{height:90px;background:linear-gradient(135deg,gold,#fdb931)}.pedestal-item.place-2 .pedestal-block{height:60px;background:linear-gradient(135deg,silver,#e0e0e0)}.pedestal-item.place-3 .pedestal-block{height:40px;background:linear-gradient(135deg,#cd7f32,#e59866)}.highlight-text{color:var(--success);font-weight:800}.leaderboard-rest{display:flex;flex-direction:column;gap:.5rem}.leaderboard-list-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:var(--transition-smooth)}.highlight-row{border-color:var(--success);background:#17cf630d}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.flashcards-wysiwyg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.flashcard-wysiwyg-item{position:relative;height:250px;perspective:1000px;cursor:pointer}.flashcard-wysiwyg-item .item-number-badge{position:absolute;top:-10px;left:-10px;z-index:10;box-shadow:0 2px 10px #0000004d}.flashcard-wysiwyg-inner{position:relative;width:100%;height:100%;text-align:center;transition:transform .6s;transform-style:preserve-3d;border-radius:var(--radius-md);box-shadow:0 8px 24px #0003}.flashcard-wysiwyg-item.is-flipped .flashcard-wysiwyg-inner{transform:rotateY(180deg)}.flashcard-wysiwyg-front,.flashcard-wysiwyg-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:1.5rem;border-radius:var(--radius-md);border:1px solid var(--border-color)}.flashcard-wysiwyg-front{background:linear-gradient(135deg,#300845,#1a0425);border-color:#8114b8}.flashcard-wysiwyg-back{background:linear-gradient(135deg,#084521,#042512);border-color:#14b858;transform:rotateY(180deg)}.flashcard-label{position:absolute;top:15px;font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-weight:700}.wysiwyg-textarea{width:100%;height:120px;background:transparent;border:none;color:var(--text-primary);font-size:1.2rem;text-align:center;resize:none;font-family:inherit;display:flex;align-items:center;justify-content:center}.wysiwyg-textarea:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}.wysiwyg-textarea::placeholder{color:var(--text-muted)}.wysiwyg-textarea:focus{box-shadow:none;background:#ffffff05;border-radius:8px}.flashcard-flip-btn{position:absolute;bottom:15px;font-size:.85rem;color:var(--text-muted);transition:var(--transition-smooth)}.flashcard-flip-btn:hover{color:var(--text-primary)}.flashcard-wysiwyg-add{display:flex;flex-direction:column;justify-content:center;align-items:center;height:250px;border:2px dashed hsl(280,80%,40%);border-radius:var(--radius-md);background:#0a0f1e80;cursor:pointer;transition:var(--transition-smooth)}.flashcard-wysiwyg-add:hover{background:#8114b81a;border-color:#b447eb;transform:translateY(-5px)}.site-footer{background:var(--header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border-color);padding:2.5rem 2rem 1.5rem;margin-top:auto}.footer-inner{max-width:1200px;margin:0 auto;display:flex;align-items:flex-start;gap:3rem;flex-wrap:wrap}.footer-brand{display:flex;flex-direction:column;gap:.4rem;min-width:160px}.footer-logo-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;margin-bottom:.25rem}.footer-brand-name{font-size:1.1rem;font-weight:700;background:linear-gradient(135deg,var(--primary-light),var(--secondary-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer-copy{font-size:.78rem;color:var(--text-muted)}.footer-tagline{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.footer-nav{display:flex;gap:2.5rem;flex:1;flex-wrap:wrap}.footer-nav-col{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.footer-nav-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:.25rem}.footer-link{font-size:.875rem;color:var(--text-secondary);text-decoration:none;transition:color .2s ease}.footer-link:hover{color:var(--primary-light)}.footer-social{display:flex;flex-direction:column;gap:.75rem;min-width:120px}.footer-social-icons{display:flex;gap:.5rem}.footer-social-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--border-color);display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);text-decoration:none;font-size:1rem;transition:all .2s ease}.footer-social-btn:hover{border-color:var(--primary-light);color:var(--primary-light);background:var(--primary-glow);transform:translateY(-2px)}@media(max-width:768px){.footer-inner{flex-direction:column;gap:2rem}.footer-nav{gap:1.5rem}}@keyframes timerPulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.timer-pulse-active{display:inline-block;animation:timerPulse .5s ease-in-out infinite;color:var(--error)!important}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skip-link{position:absolute;top:-100%;left:50%;transform:translate(-50%);background:var(--primary);color:#fff;padding:.75rem 1.5rem;border-radius:var(--radius-sm);z-index:99999;font-weight:600;text-decoration:none;transition:top .2s}.skip-link:focus{top:1rem}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.empty-state-card{text-align:center;padding:4rem 2rem;background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-md)}.empty-state-icon{font-size:4rem;color:var(--text-muted);margin-bottom:1.5rem;display:block}.compact-template-icon{font-size:2rem}.compact-template-label{font-weight:600;font-size:.9rem}.modal-heading{font-size:1.5rem;font-weight:800;text-align:center;margin-bottom:1rem}.btn-header{font-size:.8rem;padding:.4rem .8rem;background:var(--glass-bg);border:1px solid var(--border-color);color:var(--text-primary);border-radius:var(--radius-sm)}.form-group--flush{margin-bottom:0}.icon-accent{color:var(--accent)}.editor-form-row{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.editor-form-field-2{flex:2 1 300px;margin-bottom:0}.editor-form-field-1a{flex:1 1 150px;margin-bottom:0}.editor-form-field-1b{flex:1 1 120px;margin-bottom:0}.editor-form-field-full{flex:1;margin-bottom:0}.editor-card-header{margin-bottom:2rem;border-bottom:1px solid var(--border-color);padding-bottom:1rem}.editor-action-bar{margin-top:3rem;display:flex;gap:1rem;justify-content:flex-end;border-top:1px solid var(--border-color);padding-top:2rem}.workspace-header{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center}.workspace-header h3{background:var(--bg-card);padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);margin:0}.btn-icon-glow{box-shadow:0 4px 15px #6c5ce766}.btn-preview{border-color:var(--warning);color:var(--warning)}.btn-border-blue{border-color:var(--accent-blue);color:var(--accent-blue)}.btn-border-green{border-color:#21c45d;color:#3bde77}.info-box-blue{margin-bottom:1.5rem;font-size:.9rem;background:#0db9f21a;border:1px solid hsla(195,90%,50%,.3);padding:.75rem 1rem;border-radius:var(--radius-sm);color:var(--text-primary);display:flex;align-items:center;gap:.5rem;line-height:1.4}.btn-dashed{border:2px dashed var(--border-color);color:var(--text-secondary);background:transparent;display:flex;justify-content:center;padding:.5rem}.workspace-header-relative{position:relative;z-index:2}.workspace-header h3,.workspace-header-relative h3{background:var(--bg-card);padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);margin:0}.btn-delete-sm{padding:.5rem .75rem;min-width:44px;min-height:44px}.btn-delete-xs{padding:.5rem;min-width:44px;min-height:44px;font-size:.9rem}.btn-option-delete{padding:.5rem .6rem;min-width:44px;min-height:44px;font-size:.9rem;border:none;color:var(--error);flex-shrink:0}.group-category-card{border-left:4px solid var(--accent)}.group-badge{background:linear-gradient(135deg,var(--accent),var(--accent-blue))}.group-category-header{margin-top:1rem;display:flex;gap:1rem;align-items:flex-end}.group-category-title{flex:1}.group-items-section{margin-top:1.5rem}.group-items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.group-items-label{margin-bottom:0;font-size:.9rem;color:var(--text-secondary)}.btn-add-item{padding:.25rem .5rem;font-size:.8rem}.group-items-grid{gap:.75rem}.group-item-input{margin-bottom:0}.preview-modal-overlay{z-index:9999;background:#0a0f1ef2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.preview-modal-card{max-width:800px;width:95%;max-height:90vh;overflow-y:auto;padding:2rem}.preview-header{text-align:center;margin-bottom:1rem}.preview-badge{background:linear-gradient(135deg,var(--warning),var(--secondary));box-shadow:none}.preview-title{font-size:1.8rem;font-weight:800;margin-top:.5rem;word-break:break-word}.preview-finished{text-align:center;padding:2rem 1rem}.preview-finished-trophy{font-size:5rem}.preview-finished-title{font-size:2.2rem;margin:1rem 0}.preview-finished-text{color:var(--text-secondary);font-size:1.15rem;margin-bottom:1.5rem}.preview-score-value{font-size:2rem;color:var(--text-muted)}.preview-close-btn{width:100%;max-width:250px;margin:0 auto}.preview-game-room{display:flex;flex-direction:column;align-items:center;min-height:40vh;width:100%}.preview-game-body{max-width:100%;width:100%;padding:2rem 1.5rem;box-shadow:none;border:1px solid var(--border-color);background:#05080f4d}.preview-quiz-meta{font-weight:700;color:var(--text-secondary);font-size:.85rem;margin-bottom:.75rem;text-align:left}.preview-quiz-question{font-size:1.5rem;margin-bottom:1.5rem;word-break:break-word;text-align:left;display:flex;align-items:center;justify-content:space-between}.preview-quiz-option{padding:1rem 1.25rem;font-size:1rem;border-radius:var(--radius-sm)}.preview-quiz-option-text{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%}.preview-tts-inline{padding:.2rem;font-size:1rem;margin-left:.5rem}.preview-skip-section{margin-top:1.5rem;text-align:left}.preview-wheel-spin{max-width:250px;box-shadow:0 0 15px #e830c966}.preview-wheel-toggle{display:flex;align-items:center;gap:.5rem;background:#080c1680;padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--border-color)}.preview-wheel-landed-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0a0f1ed9;display:flex;align-items:center;justify-content:center;z-index:10001;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.preview-wheel-landed-card{max-width:320px;width:90%;text-align:center;border-color:var(--secondary);box-shadow:0 0 30px #e830c966;padding:2rem 1.5rem}.preview-wheel-landed-title{font-size:1.8rem;margin:1.25rem 0;word-break:break-word}.preview-wheel-landed-actions{display:flex;flex-direction:column;gap:.75rem}.preview-match-hint{font-weight:700;color:var(--text-secondary);font-size:.85rem;margin-bottom:.75rem;text-align:center}.preview-match-instruction{color:var(--text-secondary);font-size:.85rem;text-align:center;margin-bottom:1rem}.preview-match-column-header{text-align:center;font-size:.95rem;margin-bottom:.25rem}.preview-match-tile{padding:.85rem .5rem;font-size:.9rem;word-break:break-word}.preview-check-btn{max-width:300px;box-shadow:0 0 15px #e830c94d}.preview-check-loader{width:20px;height:20px;border-width:2px;display:inline-block}.preview-flashcard-hint{color:var(--text-secondary);font-size:.95rem;margin-bottom:1.5rem}.preview-flashcard-actions{display:flex;gap:1.5rem;justify-content:center}.preview-flashcard-btn{padding:.8rem 2rem;font-size:1.1rem;border-radius:var(--radius-md)}.preview-group-instruction{color:var(--text-secondary);font-size:.85rem;text-align:center;margin-bottom:.5rem}.preview-group-empty{color:var(--text-muted);font-style:italic;font-size:1rem}.preview-group-col{cursor:pointer}.preview-tf-statement{font-weight:700;color:var(--text-secondary);font-size:.9rem}.preview-tf-question{font-size:1.5rem;word-break:break-word;line-height:1.4;color:var(--text-primary)}.preview-tf-btn{flex:1;padding:1.5rem 1rem;font-size:1.3rem;font-weight:700;border-radius:var(--radius-md)}.preview-tf-icon{font-size:1.5rem;margin-right:.5rem}.preview-tf-feedback{color:var(--success);font-size:1.1rem;font-weight:600}.preview-tf-feedback-wrong{color:var(--error);font-size:1.1rem;font-weight:600}.preview-next-btn{margin-top:1rem;padding:.75rem 2rem}.preview-no-data{text-align:center;padding:2rem;color:var(--text-secondary)}.logo-img{width:100%;height:100%;object-fit:contain}.theme-toggle-icon-custom{font-size:1rem;padding:.4rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer}.editor-template-label{color:var(--text-secondary)}.editor-template-name{color:var(--primary-light)}.quiz-mistake-limit-row,.quiz-options-section{margin-top:1.5rem}.label-muted{margin-bottom:0}.wheel-item-number{color:var(--text-muted);font-weight:700;min-width:25px}.fa-spin-slow{animation:spin-slow 2s infinite linear!important}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.qr-cube-wrapper{width:24px;height:24px;perspective:120px;cursor:pointer;flex-shrink:0}.qr-cube{width:100%;height:100%;position:relative;transform-style:preserve-3d;animation:qrCubeSpin 8s infinite linear;transition:transform .3s}.qr-cube-wrapper:hover .qr-cube{animation-play-state:paused;transform:rotateY(180deg) rotateX(15deg)}.qr-cube-face{position:absolute;width:24px;height:24px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:#fff;border:1px solid rgba(255,255,255,.15);backface-visibility:visible}.qr-cube-front{background:linear-gradient(135deg,#7c3aed,#a855f7);transform:translateZ(12px)}.qr-cube-back{background:linear-gradient(135deg,#2563eb,#3b82f6);transform:rotateY(180deg) translateZ(12px)}.qr-cube-right{background:linear-gradient(135deg,#059669,#10b981);transform:rotateY(90deg) translateZ(12px)}.qr-cube-left{background:linear-gradient(135deg,#d97706,#f59e0b);transform:rotateY(-90deg) translateZ(12px)}.qr-cube-top{background:linear-gradient(135deg,#dc2626,#ef4444);transform:rotateX(90deg) translateZ(12px)}.qr-cube-bottom{background:linear-gradient(135deg,#0891b2,#06b6d4);transform:rotateX(-90deg) translateZ(12px)}@keyframes qrCubeSpin{0%{transform:rotateX(0) rotateY(0)}25%{transform:rotateX(90deg) rotateY(90deg)}50%{transform:rotateX(180deg) rotateY(180deg)}75%{transform:rotateX(270deg) rotateY(270deg)}to{transform:rotateX(360deg) rotateY(360deg)}}@media(prefers-reduced-motion:reduce){*,:before,:after{animation-delay:-1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}.game-question-text{font-size:clamp(1.1rem,4vw,1.8rem)!important;line-height:1.35!important}.game-question-text.long-text{font-size:clamp(.95rem,3.5vw,1.4rem)!important}.active-game-card{transition:padding .3s ease,max-height .3s ease}@media(max-width:768px){.active-game-card{max-height:calc(100dvh - 110px)!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;padding:1.25rem 1rem!important}.tabs-navigation{flex-wrap:wrap!important;gap:.5rem!important;margin-bottom:1.25rem!important;padding-bottom:.25rem!important}.tab-btn{font-size:.95rem!important;padding:.4rem .75rem!important;white-space:normal!important;word-break:break-word!important}}.active-game-card.long-question-active{padding:1.25rem 1rem!important}.active-game-card.long-question-active h2{margin-bottom:.75rem!important}.active-game-card.long-question-active .quiz-options-list{margin-top:1rem!important;gap:.75rem!important}.active-game-card.long-question-active .play-option-btn{padding:.75rem 1rem!important;font-size:.95rem!important}@media(max-width:480px){.quiz-options-list,.fullscreen-active .quiz-options-list,:fullscreen .quiz-options-list{grid-template-columns:1fr!important;gap:.5rem!important}.play-option-btn{padding:.85rem 1rem!important;font-size:.95rem!important}}@media(max-width:768px){.wheel-canvas-wrapper{width:100%!important;max-width:280px!important;height:auto!important;aspect-ratio:1 / 1!important;margin:0 auto 1rem!important}#wheel-canvas{width:100%!important;height:100%!important}}.match-item-card{max-width:100%;word-break:break-word;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:768px){.match-columns{grid-template-columns:1fr 1fr!important;gap:.5rem!important}.match-column h4{font-size:.85rem!important;margin-bottom:.25rem!important}.match-tile{padding:.5rem .4rem!important;font-size:.8rem!important;border-radius:var(--radius-xs)!important;min-height:44px!important;transform:scale(.98)}.match-item-card{-webkit-line-clamp:2;line-clamp:2}}@media(max-width:768px){.group-board{display:flex;flex-direction:column}.group-columns-grid{order:1;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;gap:.5rem!important;width:100%!important;padding-bottom:.75rem}.group-column{flex:0 0 130px!important;min-width:130px!important;scroll-snap-align:start;height:auto!important;min-height:80px!important;padding:.4rem!important;gap:.25rem!important;border-radius:var(--radius-sm)!important}.group-column-header{font-size:.8rem!important;padding-bottom:.15rem!important;border-bottom:1px solid rgba(255,255,255,.1)!important}.group-column-items{max-height:160px!important;overflow-y:auto!important;gap:.2rem!important}.group-cards-source{order:2;width:100%!important;min-height:80px!important;padding:.75rem!important;margin-top:.5rem!important;margin-bottom:.5rem!important}.group-card-draggable{width:100%!important;justify-content:center;font-size:.95rem!important;padding:.6rem .8rem!important}.group-board>div:last-child{order:3}}@media(max-width:400px){.group-columns-grid{gap:.4rem!important;padding-bottom:1rem}.group-column{flex:0 0 120px!important;min-width:120px!important}.group-column-header{font-size:.75rem!important;line-height:1.25!important;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.group-board>p{font-size:.9rem!important;line-height:1.45!important;padding:0 .25rem}}.flashcard-content-scroll{width:100%;max-height:100%;overflow-y:auto;box-sizing:border-box;padding:1.5rem .5rem;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column;justify-content:center;align-items:center}@media(max-width:480px){.flashcard-container{width:100%!important;max-width:290px!important;height:200px!important}}@media(max-width:768px){.fullscreen-active,:fullscreen{overflow-x:hidden!important}.fullscreen-active .container,:fullscreen .container{max-width:100vw!important;width:100%!important;padding:.5rem!important;overflow-x:hidden!important}.fullscreen-active .play-area,:fullscreen .play-area{justify-content:flex-start!important;padding:.5rem!important;overflow-x:hidden!important;width:100%!important}.fullscreen-active .active-game-card,:fullscreen .active-game-card{justify-content:flex-start!important;padding:1rem .75rem!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:calc(100dvh - 20px)!important;width:100%!important}}.course-main-frame{transition:all .3s ease}@media(max-width:768px){.course-management-grid{grid-template-columns:1fr!important;gap:1.5rem!important}.course-main-frame{padding:1.25rem!important}}
