:root{
  --bg:#f6f7fb;--panel:#fff;--text:#172033;--muted:#667085;--line:#e5e8ef;
  --primary:#6d4aff;--primary-dark:#5434df;--primary-soft:#f0edff;--success:#15945f;
  --danger:#d94452;--warning:#c87a0d;--shadow:0 18px 50px rgba(35,31,74,.09);
  --radius:20px;--radius-sm:12px;--container:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans Thai",Tahoma,sans-serif;line-height:1.6}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}code{padding:.12rem .38rem;border-radius:6px;background:#f0f2f7;color:#5136c8}.container{width:min(calc(100% - 32px),var(--container));margin:auto}.narrow{width:min(calc(100% - 32px),760px);margin-inline:auto}.section{padding:72px 0}.section.alt{background:#eef0f7}.muted{color:var(--muted)}.center{text-align:center}.block{display:block}.hidden{display:none!important}.eyebrow{display:inline-block;margin-bottom:8px;color:var(--primary);font-size:.78rem;font-weight:800;letter-spacing:.14em}.site-header{position:sticky;z-index:100;top:0;border-bottom:1px solid rgba(229,232,239,.85);background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}.nav-wrap{display:flex;min-height:70px;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-size:1.03rem;font-weight:700}.brand b{color:var(--primary)}.brand-logo{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:linear-gradient(135deg,#8267ff,#4f2ddd);color:#fff;font-size:1.2rem;box-shadow:0 8px 20px rgba(109,74,255,.28)}.site-nav{display:flex;align-items:center;gap:22px}.site-nav>a:not(.btn){color:#4d5668;font-weight:600}.site-nav>a:hover{color:var(--primary)}.nav-user{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.nav-toggle{display:none;border:0;background:none;font-size:1.5rem}.btn{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:9px 17px;border:1px solid transparent;border-radius:12px;background:#fff;color:var(--text);font-weight:750;line-height:1.2;transition:.18s}.btn:hover{transform:translateY(-1px)}.btn-primary{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 8px 20px rgba(109,74,255,.2)}.btn-primary:hover{background:var(--primary-dark)}.btn-outline{border-color:#d6dbe6;background:#fff}.btn-outline:hover{border-color:var(--primary);color:var(--primary)}.btn-success{border-color:#bfe8d5;background:#eaf9f2;color:#0f8152}.btn-muted{border-color:#e4e7ec;background:#f3f4f6;color:#667085}.btn-sm{min-height:34px;padding:6px 11px;border-radius:9px;font-size:.88rem}.btn-lg{min-height:50px;padding:13px 22px}.btn-block{width:100%}.site-footer{padding:38px 0;border-top:1px solid var(--line);background:#fff;color:var(--muted)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}.footer-grid b{color:var(--text)}.footer-grid p{margin:.35rem 0}.footer-grid>div:nth-child(2){display:flex;flex-direction:column}.flash-stack{position:relative;z-index:30;padding-top:16px}.alert{padding:13px 16px;border:1px solid;border-radius:12px;white-space:pre-line}.alert-success{border-color:#bde8d3;background:#edf9f4;color:#126b49}.alert-error{border-color:#f2c3c7;background:#fff1f2;color:#a62130}.alert-warning{border-color:#f3dab0;background:#fff8e9;color:#89520a}.alert-info{border-color:#bed8f4;background:#eef7ff;color:#205c8e}.notice{margin:20px 0;padding:14px 16px;border-left:4px solid var(--primary);border-radius:0 12px 12px 0;background:var(--primary-soft);color:#51457e}.panel{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);box-shadow:0 8px 30px rgba(32,38,61,.04)}.panel h1,.panel h2{margin-top:0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.panel-head h2{margin:0}.panel-head p{margin:.3rem 0 0;color:var(--muted)}
.hero{overflow:hidden;padding:86px 0 92px;background:radial-gradient(circle at 80% 15%,rgba(126,94,255,.22),transparent 30%),linear-gradient(180deg,#fff,#f4f1ff)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:64px}.hero h1{max-width:720px;margin:6px 0 22px;font-size:clamp(2.6rem,6vw,5rem);line-height:1.03;letter-spacing:-.045em}.hero h1 span{color:var(--primary)}.hero p{max-width:650px;margin:0;color:#596278;font-size:1.14rem}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.trust-line{display:flex;flex-wrap:wrap;gap:18px;margin-top:26px;color:#4d5669;font-size:.9rem}.hero-demo{position:relative;border:1px solid rgba(255,255,255,.8);border-radius:28px;background:rgba(255,255,255,.7);box-shadow:0 35px 80px rgba(67,46,152,.2);transform:rotate(1deg);backdrop-filter:blur(18px)}.demo-top{display:flex;align-items:center;gap:7px;padding:14px 18px;border-bottom:1px solid #e8e4f7}.demo-top span{width:10px;height:10px;border-radius:50%;background:#f2b54b}.demo-top span:nth-child(2){background:#64c797}.demo-top span:nth-child(3){background:#ed7184}.demo-top b{margin-left:auto;color:#675b8f;font-size:.85rem}.demo-body{position:relative;min-height:460px;padding:30px;background:linear-gradient(145deg,#5732ce,#8d69ff);color:#fff}.demo-score{position:absolute;top:22px;right:22px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.18)}.demo-question{margin-top:50px;text-align:center;font-size:1.35rem;font-weight:750}.demo-emoji{text-align:center;font-size:6rem}.demo-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.demo-options span{padding:14px;border:2px solid rgba(255,255,255,.25);border-radius:14px;background:rgba(255,255,255,.13);text-align:center;font-weight:700}.demo-options .active{border-color:#ffe36e;background:#ffe36e;color:#3f2a7a}.demo-hand{position:absolute;right:24%;bottom:82px;font-size:3.2rem;filter:drop-shadow(0 8px 10px rgba(0,0,0,.25))}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-head h2{margin:0;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.2}.section-head>p{max-width:520px;margin:0;color:var(--muted)}.section-head.centered{display:block;text-align:center}.section-head.centered>p{margin:10px auto 0}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.template-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(35,40,66,.055);transition:.2s}.template-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.template-preview{position:relative;display:grid;height:170px;place-items:center;background:linear-gradient(135deg,#eeeaff,#dcd5ff)}.template-preview>span{font-size:4.6rem;filter:drop-shadow(0 12px 10px rgba(60,40,130,.16))}.category-quiz{background:linear-gradient(135deg,#e8f5ff,#d9eaff)}.category-language{background:linear-gradient(135deg,#f2eaff,#e0d5ff)}.category-matching{background:linear-gradient(135deg,#e3fbf2,#c9f1df)}.category-memory{background:linear-gradient(135deg,#fff4d9,#ffe5b5)}.category-ar{background:linear-gradient(135deg,#e8efff,#dbd1ff)}.locked{position:absolute;inset:0;display:grid;place-items:center;background:rgba(24,28,43,.57);color:#fff;font-weight:850;letter-spacing:.08em}.template-content{padding:20px}.card-top{display:flex;align-items:center;justify-content:space-between}.card-top small{color:var(--muted)}.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;background:#eef0f4;color:#596273;font-size:.72rem;font-weight:850;letter-spacing:.04em}.badge-free{background:#edf2f7;color:#475569}.badge-pro{background:#eee9ff;color:#5936d2}.badge-school{background:#e9f8f1;color:#167353}.template-content h3{margin:13px 0 5px}.template-content p{min-height:52px;margin:0 0 16px;color:var(--muted)}.card-actions{display:flex;gap:8px}.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step-card{padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff}.step-card>b{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:var(--primary);color:#fff}.step-card h3{margin:16px 0 5px}.step-card p{margin:0;color:var(--muted)}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:22px}.price-card{position:relative;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff}.price-card.featured{border:2px solid var(--primary);box-shadow:0 22px 50px rgba(88,56,209,.15)}.popular{position:absolute;top:-13px;right:24px;padding:5px 12px;border-radius:999px;background:var(--primary);color:#fff;font-size:.78rem;font-weight:800}.price-card h3{margin:0;font-size:1.4rem}.price-card>p{min-height:50px;color:var(--muted)}.price{display:flex;align-items:baseline;gap:8px;margin:18px 0}.price strong{font-size:2.6rem;line-height:1}.price span{color:var(--muted)}.price-card ul{padding:0;list-style:none}.price-card li{padding:9px 0;border-bottom:1px solid #f0f1f4}.price-card li:before{margin-right:8px;color:var(--success);content:'✓'}.pricing-grid.compact{max-width:1000px}.auth-section{display:grid;min-height:680px;place-items:center;padding:60px 16px;background:radial-gradient(circle at 50% 0,rgba(109,74,255,.15),transparent 34%)}.auth-card{width:min(100%,480px);padding:38px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow)}.auth-card h1{margin:0 0 6px}.stack{display:grid;gap:16px;margin-top:24px}.auth-switch{text-align:center;color:var(--muted)}.auth-switch a{color:var(--primary);font-weight:700}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.field{display:grid;gap:6px}.field.full{grid-column:1/-1}.field>span{font-weight:700;font-size:.92rem}.field small{color:var(--muted)}.field input,.field select,.field textarea{width:100%;min-width:0;padding:11px 13px;border:1px solid #d5dae4;border-radius:11px;background:#fff;color:var(--text);outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(109,74,255,.12)}.check-list{display:grid;gap:10px}.check-row{display:flex;align-items:center;gap:13px;padding:12px;border:1px solid var(--line);border-radius:12px}.check-row small{display:block;color:var(--muted)}.check-icon{display:grid;width:34px;height:34px;flex:0 0 auto;place-items:center;border-radius:50%;font-weight:900}.check-icon.ok{background:#e5f8ef;color:#138657}.check-icon.bad{background:#ffebed;color:#c63243}
.dashboard-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 70px)}.dashboard-sidebar{position:sticky;top:70px;align-self:start;height:calc(100vh - 70px);padding:22px 16px;border-right:1px solid var(--line);background:#fff}.profile-box{display:flex;align-items:center;gap:11px;padding:10px}.profile-box>div:last-child{min-width:0}.profile-box b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{display:grid;width:43px;height:43px;flex:0 0 auto;place-items:center;border-radius:14px;background:var(--primary-soft);color:var(--primary);font-size:1.2rem;font-weight:850}.dash-nav{display:grid;gap:5px;margin-top:24px}.dash-nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;color:#596273;font-weight:650}.dash-nav a:hover,.dash-nav a.active{background:var(--primary-soft);color:var(--primary)}.dash-nav span{width:24px;text-align:center}.sidebar-foot{position:absolute;right:16px;bottom:20px;left:16px;padding-top:15px;border-top:1px solid var(--line);color:var(--muted)}.dashboard-content{min-width:0;padding:34px}.dash-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.dash-head h1{margin:0;font-size:2rem}.dash-head p{margin:5px 0 0;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.metric{padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.metric>span{display:block;color:var(--muted);font-size:.9rem}.metric>strong{display:block;margin:4px 0;font-size:2rem;line-height:1.2}.metric>.metric-text{font-size:1.3rem}.metric>small{color:var(--muted)}.game-list{display:grid}.game-row{display:flex;align-items:center;gap:13px;padding:13px 0;border-bottom:1px solid var(--line)}.game-row:last-child{border-bottom:0}.game-icon{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border-radius:13px;background:var(--primary-soft);font-size:1.35rem}.game-main{min-width:0;flex:1}.game-main b,.game-main span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-main span{color:var(--muted);font-size:.86rem}.status{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:.78rem;font-weight:750;white-space:nowrap}.status-published{background:#e8f8f0;color:#0f7a4d}.status-draft{background:#fff4dc;color:#92600b}.empty-state{padding:42px;text-align:center}.empty-state>span{display:block;font-size:3.4rem}.empty-state h3{margin:8px 0}.empty-state p{color:var(--muted)}.table-wrap{max-width:100%;overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;white-space:nowrap}.data-table th{color:var(--muted);font-size:.8rem;text-transform:uppercase}.table-game{display:flex;align-items:center;gap:10px}.table-game>span{font-size:1.5rem}.table-game b,.table-game small{display:block}.table-game small{color:var(--muted)}.row-actions{display:flex;align-items:center;gap:10px}.row-actions a,.link-danger,.link-button{border:0;background:none;color:var(--primary);font-size:.88rem;font-weight:650}.link-button{padding:0}.link-danger{padding:0;color:var(--danger)}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.chip{padding:7px 13px;border:1px solid #d8dce5;border-radius:999px;background:#fff;color:#60697b}.chip.active{border-color:var(--primary);background:var(--primary);color:#fff}.dashboard-templates{grid-template-columns:repeat(3,minmax(220px,1fr))}.builder-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.builder-head h1{margin:5px 0 0;font-size:1.8rem}.builder-head h1 span{font-size:1rem;color:var(--muted);font-weight:600}.back-link{color:var(--primary);font-size:.9rem;font-weight:700}.builder-status{color:var(--muted);font-size:.88rem}.builder-layout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:20px}.builder-steps{display:grid;align-content:start;gap:8px}.builder-step{display:flex;align-items:center;gap:10px;padding:11px;border:0;border-radius:12px;background:transparent;color:var(--muted);text-align:left}.builder-step b{display:grid;width:29px;height:29px;place-items:center;border-radius:9px;background:#e9ecf2;color:#5f6878}.builder-step.active{background:var(--primary-soft);color:var(--primary);font-weight:750}.builder-step.active b{background:var(--primary);color:#fff}.builder-main{min-width:0}.builder-panel{display:none}.builder-panel.active{display:block}.builder-item{margin-bottom:16px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fbfcfe}.builder-item-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.builder-item-head>div:first-child{display:flex;align-items:center;gap:9px}.item-number{display:grid;width:30px;height:30px;place-items:center;border-radius:9px;background:var(--primary);color:#fff;font-size:.85rem;font-weight:800}.item-actions{display:flex;gap:5px}.item-actions button{display:grid;width:32px;height:32px;place-items:center;border:1px solid #dce0e8;border-radius:8px;background:#fff;color:#586174}.item-actions button:last-child{color:var(--danger)}.item-actions button:disabled{cursor:not-allowed;opacity:.35}.builder-footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff}.theme-picker{display:flex;flex-wrap:wrap;gap:9px}.theme-picker label{cursor:pointer}.theme-picker input{position:absolute;opacity:0}.theme{display:inline-flex;padding:8px 16px;border:2px solid transparent;border-radius:999px;color:#fff;font-weight:750}.theme-picker input:checked+.theme{outline:3px solid rgba(109,74,255,.2);border-color:#fff}.theme.violet{background:#6d4aff}.theme.blue{background:#1976d2}.theme.green{background:#15945f}.theme.orange{background:#ef7b24}.switch-field{align-content:start}.switch-row{display:flex;align-items:center;gap:9px;padding:8px 0}.switch-row input{width:18px;height:18px}.builder-preview{overflow:hidden;min-height:440px;border-radius:18px;background:#6d4aff}.preview-game{min-height:440px;padding:22px;background:linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.02));color:#fff}.builder-preview.theme-blue{background:#1976d2}.builder-preview.theme-green{background:#15945f}.builder-preview.theme-orange{background:#ef7b24}.preview-top{display:flex;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.25)}.preview-body{display:grid;min-height:340px;place-content:center;text-align:center}.preview-body h3{max-width:680px;font-size:1.6rem}.preview-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.preview-options.two{grid-template-columns:1fr 1fr}.preview-options button,.preview-match button{min-width:160px;padding:13px;border:2px solid rgba(255,255,255,.28);border-radius:12px;background:rgba(255,255,255,.15);color:#fff;font-weight:750}.preview-words{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.preview-words span{padding:9px 13px;border-radius:10px;background:#fff;color:#35236e;font-weight:750}.preview-slot{margin-top:16px;padding:14px;border:2px dashed rgba(255,255,255,.5);border-radius:12px}.preview-match{display:flex;gap:16px}.preview-memory{display:grid;grid-template-columns:repeat(4,80px);gap:10px}.preview-memory>span{display:grid;height:90px;place-items:center;border-radius:13px;background:#fff;color:#5138a5;font-size:2rem}.preview-camera{position:relative;min-width:min(620px,75vw);min-height:330px;padding:20px;border-radius:18px;background:linear-gradient(135deg,#263248,#111827)}.preview-camera>span{color:#bec8da}.preview-camera>i{position:absolute;top:45%;left:42%;font-size:3rem}.share-box{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:#fff}.share-box b,.share-box a{display:block}.share-box a{max-width:650px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--primary);font-size:.88rem}.publish-note{display:flex;align-items:center;gap:12px;margin-top:16px;padding:12px 14px;border-radius:12px;background:#f4f2ff;color:#50437d}.admin-tabs{display:flex;gap:5px;margin-bottom:20px;border-bottom:1px solid var(--line)}.admin-tabs a{padding:9px 14px;color:var(--muted)}.admin-tabs a.active{border-bottom:3px solid var(--primary);color:var(--primary);font-weight:750}.inline-form{display:flex;align-items:center;gap:7px}.inline-form select,.inline-form input{max-width:120px;padding:6px 8px;border:1px solid #d7dce5;border-radius:8px}.admin-checklist{padding-left:20px}.admin-checklist li{padding:7px 0}.large-emoji{font-size:1.4rem}
.play-page{min-height:calc(100vh - 70px);padding:24px;background:linear-gradient(145deg,#5034c8,#8969ff)}.play-page.theme-blue{background:linear-gradient(145deg,#0f5ca8,#39a0ed)}.play-page.theme-green{background:linear-gradient(145deg,#087248,#39b77c)}.play-page.theme-orange{background:linear-gradient(145deg,#c9540a,#ff9b3d)}.play-shell{width:min(1180px,100%);margin:auto;overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 30px 80px rgba(15,18,38,.28)}.play-topbar{display:flex;align-items:center;gap:12px;padding:13px 17px;border-bottom:1px solid var(--line);background:#fff}.play-brand{padding:6px 10px;border-radius:9px;background:var(--primary);color:#fff;font-weight:850}.play-topbar>div{min-width:0;flex:1}.play-topbar b,.play-topbar small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-topbar small{color:var(--muted)}.game-mount{min-height:650px;background:#f5f6fa}.game-intro,.result-screen{display:grid;min-height:650px;place-content:center;padding:36px;text-align:center}.intro-icon{font-size:5.5rem}.game-type{justify-self:center;padding:5px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:.82rem;font-weight:800}.game-intro h1,.result-screen h1{max-width:750px;margin:15px auto 7px;font-size:clamp(2rem,5vw,3.6rem);line-height:1.12}.game-intro>p{max-width:650px;margin:0 auto 17px;color:var(--muted)}.intro-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:20px}.intro-meta span{padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#5f6878}.player-name{display:grid;width:min(360px,100%);gap:5px;margin:0 auto 16px;text-align:left}.player-name span{font-weight:700}.player-name input{padding:12px 14px;border:1px solid #d8dce4;border-radius:12px}.camera-note{max-width:550px;margin:13px auto 0;color:var(--muted)}.game-hud{display:grid;grid-template-columns:120px minmax(180px,1fr) 120px;align-items:center;gap:16px;padding:14px 20px;border-bottom:1px solid var(--line);background:#fff}.game-hud>div:first-child,.game-hud>div:last-child{text-align:center}.game-hud span{display:block;color:var(--muted);font-size:.78rem}.game-hud b{font-size:1.3rem}.hud-progress>div{height:9px;margin-top:5px;overflow:hidden;border-radius:999px;background:#e8eaf0}.hud-progress i{display:block;height:100%;border-radius:inherit;background:var(--primary)}.standard-game{width:min(850px,100%);margin:auto;padding:38px 28px}.wide-game{width:min(1050px,100%)}.question-card{text-align:center}.question-card>span{display:inline-block;color:var(--primary);font-size:.85rem;font-weight:800}.question-card h2{margin:8px auto 25px;font-size:clamp(1.5rem,4vw,2.45rem);line-height:1.35}.question-emoji{font-size:5rem}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.answer-button,.tf-grid button{display:flex;align-items:center;gap:12px;min-height:72px;padding:14px;border:2px solid #e1e4eb;border-radius:15px;background:#fff;text-align:left;transition:.15s}.answer-button:hover,.answer-button.ar-hover{border-color:var(--primary);background:var(--primary-soft);transform:translateY(-2px)}.answer-button>b{display:grid;width:37px;height:37px;flex:0 0 auto;place-items:center;border-radius:10px;background:#eeebff;color:var(--primary)}.answer-button>span{font-size:1.05rem;font-weight:750}.correct-answer{border-color:#26a66d!important;background:#eaf9f2!important;color:#087447!important}.wrong-answer{border-color:#e64f5c!important;background:#fff0f1!important;color:#a8202e!important}.feedback{margin-top:18px;padding:18px;border:1px solid;border-radius:15px;text-align:center}.feedback.correct{border-color:#bde7d3;background:#eaf9f2;color:#0b7047}.feedback.wrong{border-color:#f0c1c6;background:#fff1f2;color:#a21f2d}.feedback b{font-size:1.2rem}.feedback p{margin:5px}.feedback small{display:block;margin-bottom:12px}.tf-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.tf-grid button{justify-content:center;min-height:120px}.tf-grid b{font-size:2rem}.tf-grid span{font-size:1.3rem;font-weight:800}.sentence-zone{display:flex;min-height:76px;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px;padding:14px;border-radius:15px}.selected-zone{border:2px dashed #b8a8ff;background:#f5f2ff}.word-pool{margin-top:15px;border:1px solid var(--line);background:#fff}.sentence-zone button{padding:9px 13px;border:1px solid #d8dce7;border-radius:10px;background:#fff;color:#392477;font-weight:750}.selected-zone button{border-color:var(--primary);background:var(--primary);color:#fff}.zone-hint{color:var(--muted)}.sentence-actions{display:flex;justify-content:center;gap:10px;margin-top:16px}.matching-board{display:grid;grid-template-columns:1fr 1fr;gap:25px}.matching-board>div{display:grid;align-content:start;gap:10px}.match-card{min-height:58px;padding:11px;border:2px solid #e0e3ea;border-radius:12px;background:#fff;font-weight:750}.match-card:hover,.match-card.selected{border-color:var(--primary);background:var(--primary-soft)}.match-card.matched{border-color:#22a66a;background:#e8f8f0;color:#0c7549}.match-card.mismatch{border-color:#e74d5b;background:#fff0f1}.inline-message{margin-top:17px;text-align:center;color:var(--muted);font-weight:700}.memory-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px}.memory-card{position:relative;min-height:115px;border:0;border-radius:14px;background:transparent;perspective:800px}.memory-card>span{position:absolute;inset:0;display:grid;place-items:center;border:2px solid #dedfea;border-radius:14px;backface-visibility:hidden;transition:transform .35s;font-size:1.25rem;font-weight:800}.card-back{background:linear-gradient(145deg,var(--primary),#997fff);color:#fff;font-size:2rem!important}.card-front{background:#fff;transform:rotateY(180deg)}.memory-card.open .card-back,.memory-card.matched .card-back{transform:rotateY(180deg)}.memory-card.open .card-front,.memory-card.matched .card-front{transform:rotateY(0)}.memory-card.matched .card-front{border-color:#25a46b;background:#e9f8f1;color:#087149}.ar-layout{position:relative;min-height:clamp(620px,76svh,860px);background:#111827}.ar-stage{position:relative;isolation:isolate;overflow:hidden;min-height:inherit;background:#111827}.ar-stage video,.ar-stage canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ar-stage video{z-index:0}.ar-stage video.mirrored{transform:scaleX(-1)}.ar-stage canvas{z-index:2;pointer-events:none}.ar-placeholder{position:absolute;z-index:1;inset:0;display:grid;place-content:center;padding:30px;color:#d2daea;text-align:center}.ar-placeholder span{font-size:5rem}.ar-placeholder small{display:block;max-width:520px;margin:8px auto 0;color:#aeb8ca}.hand-status{position:absolute;z-index:6;top:12px;left:12px;max-width:calc(100% - 24px);padding:7px 10px;border-radius:999px;background:rgba(12,19,33,.78);color:#fff;font-size:.82rem;backdrop-filter:blur(8px)}.ar-cursor{position:absolute;z-index:8;width:34px;height:34px;border:4px solid #43b9ff;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);transition:border-color .08s,background .08s;opacity:0}.ar-cursor.hovering{border-style:dashed;border-color:#ffe36e}.ar-cursor.pinching-miss{border-color:#ff5867;background:rgba(255,88,103,.25)}.ar-cursor.pinching-success{border-color:#37e68e;background:rgba(55,230,142,.28)}.ar-question{position:absolute;z-index:4;top:18px;right:18px;bottom:18px;width:min(430px,43%);overflow:auto;padding:22px;border:1px solid rgba(255,255,255,.55);border-radius:22px;background:rgba(250,251,254,.9);box-shadow:0 18px 55px rgba(0,0,0,.24);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.ar-question .question-card h2{font-size:1.45rem}.ar-question .question-emoji{font-size:4.2rem}.ar-question .answer-grid{grid-template-columns:1fr}.ar-question .answer-button{min-height:56px;background:rgba(255,255,255,.94)}.ar-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.result-confetti{color:#f1b735;font-size:2rem;letter-spacing:.35em}.result-screen>span{color:var(--primary);font-weight:900;letter-spacing:.14em}.score-ring{display:grid;width:210px;height:210px;margin:24px auto;place-items:center;border-radius:50%;background:conic-gradient(var(--primary) calc(var(--score)*1%),#e8eaf0 0)}.score-ring:before{position:absolute;width:170px;height:170px;border-radius:50%;background:#fff;content:''}.score-ring>div{position:relative;z-index:1}.score-ring strong,.score-ring small{display:block}.score-ring strong{font-size:3.2rem;line-height:1}.score-ring small{color:var(--muted)}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:min(520px,100%);margin:auto}.result-stats div{padding:12px;border:1px solid var(--line);border-radius:12px}.result-stats b,.result-stats span{display:block}.result-stats span{color:var(--muted);font-size:.82rem}.result-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:22px 0 10px}
@media(max-width:1050px){.hero-grid{grid-template-columns:1fr}.hero-demo{max-width:700px}.template-grid,.dashboard-templates{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-shell{grid-template-columns:210px minmax(0,1fr)}.dashboard-content{padding:26px 22px}.ar-layout{min-height:clamp(650px,78svh,900px)}.ar-question{width:min(410px,45%)}}
@media(max-width:760px){.section{padding:48px 0}.site-nav{position:absolute;top:70px;right:0;left:0;display:none;align-items:stretch;padding:14px 18px;border-bottom:1px solid var(--line);background:#fff;box-shadow:0 12px 30px rgba(20,25,40,.1);flex-direction:column;gap:10px}.site-nav.open{display:flex}.nav-toggle{display:block}.hero{padding:58px 0}.hero-grid{gap:38px}.hero h1{font-size:2.7rem}.hero-demo{transform:none}.demo-body{min-height:400px}.section-head{display:block}.section-head>p{margin-top:10px}.template-grid,.pricing-grid,.steps-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.dashboard-shell{display:block}.dashboard-sidebar{position:static;height:auto;padding:10px 14px;border-right:0;border-bottom:1px solid var(--line)}.profile-box,.sidebar-foot{display:none}.dash-nav{display:flex;overflow:auto;margin:0}.dash-nav a{flex:0 0 auto}.dashboard-content{padding:22px 14px}.dash-head{display:block}.dash-head>.btn{margin-top:14px}.metric-grid{grid-template-columns:1fr 1fr}.builder-layout{grid-template-columns:1fr}.builder-steps{display:flex;overflow:auto}.builder-step{flex:0 0 auto}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.builder-footer{position:sticky;z-index:10;bottom:8px}.game-hud{grid-template-columns:80px 1fr 80px}.answer-grid{grid-template-columns:1fr}.play-page{padding:0}.play-shell{border-radius:0}.game-mount,.game-intro,.result-screen{min-height:calc(100vh - 130px)}.matching-board{gap:10px}.ar-layout{min-height:calc(100svh - 118px)}.ar-stage{min-height:inherit}.ar-question{top:auto;right:12px;bottom:12px;left:12px;width:auto;max-height:62%;padding:16px;border-radius:18px}.ar-question .question-card h2{margin-bottom:14px}.ar-question .question-emoji{font-size:3.2rem}.ar-question .answer-button{min-height:50px}.ar-controls{position:sticky;bottom:-16px;margin-right:-16px;margin-bottom:-16px;margin-left:-16px;padding:10px 16px 16px;background:linear-gradient(180deg,rgba(250,251,254,0),rgba(250,251,254,.98) 24%)}.preview-camera{min-width:0;width:100%}.inline-form{min-width:450px}}
@media(max-width:480px){.container{width:min(calc(100% - 22px),var(--container))}.panel{padding:20px}.metric-grid{grid-template-columns:1fr}.metric>strong{font-size:1.7rem}.hero h1{font-size:2.25rem}.hero-actions .btn{width:100%}.demo-body{padding:22px}.template-grid{grid-template-columns:1fr}.builder-head{display:block}.builder-head h1{font-size:1.45rem}.builder-head h1 span{display:block;margin-top:5px}.builder-step span{display:none}.builder-steps{justify-content:space-between}.builder-step{padding:7px}.builder-item{padding:14px}.builder-footer{gap:8px}.builder-footer>div{display:flex;gap:6px}.builder-footer .btn{padding:8px 11px}.game-hud{grid-template-columns:65px 1fr 65px;padding:10px}.standard-game{padding:25px 15px}.question-card h2{font-size:1.45rem}.answer-button{min-height:62px}.tf-grid{grid-template-columns:1fr}.tf-grid button{min-height:80px}.matching-board{grid-template-columns:1fr 1fr}.match-card{padding:8px;font-size:.86rem}.memory-board{grid-template-columns:repeat(3,1fr)}.memory-card{min-height:95px}.ar-layout{min-height:calc(100svh - 108px)}.ar-stage{min-height:inherit}.ar-question{max-height:66%;padding:13px}.ar-question .question-card h2{font-size:1.25rem}.ar-question .answer-button{min-height:46px;padding:9px 11px}.ar-question .answer-button>span{font-size:.95rem}.ar-controls .btn{padding:8px 10px}.result-stats{grid-template-columns:1fr 1fr 1fr}.score-ring{width:180px;height:180px}.score-ring:before{width:145px;height:145px}}

/* Unified EducTools membership */
.membership-unified-panel{display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:920px;margin-inline:auto}.membership-unified-panel h3{margin:12px 0 4px}.membership-unified-panel p{margin:0;color:var(--muted)}.button-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
@media(max-width:760px){.membership-unified-panel{display:block}.membership-unified-panel .button-row{margin-top:20px}.membership-unified-panel .btn{width:100%}}


/* EducTools Game Studio v1.2.3 — Clean AR, persistent camera, automatic next question */
body.ar-immersive{overflow:hidden;background:#000}
body.ar-immersive .site-header,
body.ar-immersive .site-footer,
body.ar-immersive .flash-stack,
body.ar-immersive .play-topbar{display:none!important}
body.ar-immersive main{min-height:100svh}
body.ar-immersive .play-page{min-height:100svh;padding:0;background:#000}
body.ar-immersive .play-shell{width:100%;max-width:none;margin:0;overflow:hidden;border-radius:0;background:#000;box-shadow:none}
body.ar-immersive .game-mount{min-height:100svh;background:#000}
.ar-clean-layout,.ar-clean-layout .ar-stage{width:100%;height:100svh;min-height:100svh}
.ar-clean-layout .ar-stage video{object-fit:cover}
.ar-clean-layout .ar-stage canvas{opacity:0}
.ar-clean-layout .ar-placeholder{z-index:3;background:#111827}
.ar-clean-layout .hand-status{position:absolute;width:1px;height:1px;overflow:hidden;padding:0;border:0;clip:rect(0 0 0 0);white-space:nowrap}
.ar-clean-layout .hand-status.visible{z-index:10;right:12px;bottom:12px;left:12px;top:auto;width:auto;height:auto;overflow:visible;padding:8px 12px;clip:auto;border-radius:12px;background:rgba(10,15,27,.82);color:#fff;text-align:center;white-space:normal}
.ar-question-float{position:absolute;z-index:6;top:max(10px,env(safe-area-inset-top));left:50%;width:min(760px,calc(100% - 32px));transform:translateX(-50%);color:#fff;text-align:center;pointer-events:none;text-shadow:0 2px 5px rgba(0,0,0,.95),0 0 18px rgba(0,0,0,.85)}
.ar-question-float>span{display:block;margin-bottom:2px;font-size:clamp(.78rem,1.5vw,1rem);font-weight:850;letter-spacing:.04em}
.ar-question-float>div{display:flex;align-items:center;justify-content:center;gap:10px}
.ar-question-float h2{margin:0;font-size:clamp(1.35rem,3.4vw,2.65rem);line-height:1.2}
.ar-question-emoji{font-size:clamp(2rem,5vw,4rem);line-height:1}
.ar-options-scatter{position:absolute;z-index:7;inset:0;pointer-events:none}
.ar-answer{position:absolute;display:flex;align-items:center;gap:10px;width:clamp(170px,27vw,330px);min-height:clamp(58px,8.5vh,84px);padding:10px 14px;border:2px solid rgba(255,255,255,.86);border-radius:18px;background:rgba(255,255,255,.76);color:#111827;text-align:left;box-shadow:0 8px 26px rgba(0,0,0,.24);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);pointer-events:auto;transition:transform .12s,border-color .12s,background .12s}
.ar-answer>b{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:10px;background:rgba(109,74,255,.15);color:#5936d2;font-size:1rem}
.ar-answer>span{overflow:hidden;font-size:clamp(.95rem,2vw,1.22rem);font-weight:850;line-height:1.2;text-overflow:ellipsis}
.ar-answer-1{top:22%;left:max(12px,env(safe-area-inset-left))}
.ar-answer-2{top:22%;right:max(12px,env(safe-area-inset-right))}
.ar-answer-3{bottom:max(8%,calc(env(safe-area-inset-bottom) + 12px));left:max(12px,env(safe-area-inset-left))}
.ar-answer-4{right:max(12px,env(safe-area-inset-right));bottom:max(8%,calc(env(safe-area-inset-bottom) + 12px))}
.ar-answer:hover,.ar-answer.ar-hover{border-color:#ffe36e;background:rgba(255,245,174,.92);transform:scale(1.035)}
.ar-answer.correct-answer{border-color:#37e68e!important;background:rgba(218,255,237,.94)!important;color:#086943!important}
.ar-answer.wrong-answer{border-color:#ff5867!important;background:rgba(255,224,228,.94)!important;color:#9f1826!important}
.ar-answer:disabled{cursor:default;opacity:1}
.ar-clean-layout .ar-cursor{z-index:9;width:28px;height:28px;border-width:4px;box-shadow:0 0 0 3px rgba(0,0,0,.22)}
.ar-feedback-toast{position:absolute;z-index:8;top:clamp(84px,14vh,128px);left:50%;transform:translateX(-50%);pointer-events:none}
.ar-feedback-toast span{display:block;padding:7px 14px;border-radius:999px;background:rgba(10,15,27,.78);color:#fff;font-size:clamp(.9rem,2vw,1.08rem);font-weight:900;box-shadow:0 7px 20px rgba(0,0,0,.22);backdrop-filter:blur(7px)}
.ar-feedback-toast .is-correct{background:rgba(4,105,65,.9)}
.ar-feedback-toast .is-wrong{background:rgba(139,25,38,.9)}
@media (orientation:portrait){
  .ar-question-float{top:max(8px,env(safe-area-inset-top));width:calc(100% - 22px)}
  .ar-question-float h2{font-size:clamp(1.25rem,5vw,2rem)}
  .ar-answer{width:clamp(145px,43vw,300px);min-height:clamp(54px,8vh,74px);padding:8px 10px;border-radius:15px}
  .ar-answer-1,.ar-answer-2{top:24%}
  .ar-answer-3,.ar-answer-4{bottom:max(7%,calc(env(safe-area-inset-bottom) + 10px))}
  .ar-answer>b{width:31px;height:31px;border-radius:8px}
  .ar-answer>span{font-size:clamp(.88rem,3.2vw,1.05rem)}
  .ar-feedback-toast{top:clamp(72px,13vh,116px)}
}
@media (max-width:420px){
  .ar-answer{width:44vw;gap:7px;padding:7px 8px}
  .ar-answer-1,.ar-answer-3{left:6px}
  .ar-answer-2,.ar-answer-4{right:6px}
  .ar-answer-1,.ar-answer-2{top:27%}
  .ar-answer-3,.ar-answer-4{bottom:max(5%,calc(env(safe-area-inset-bottom) + 6px))}
  .ar-answer>b{width:28px;height:28px;font-size:.85rem}
}


/* EducTools Game Studio v1.2.4 — Larger AR choices, large score feedback, hand-controlled next button */
.ar-answer{
  width:clamp(230px,31vw,430px);
  min-height:clamp(82px,12vh,122px);
  gap:16px;
  padding:15px 20px;
  border-width:3px;
  border-radius:24px;
}
.ar-answer>b{
  width:clamp(46px,5.3vw,64px);
  height:clamp(46px,5.3vw,64px);
  border-radius:15px;
  font-size:clamp(1.15rem,2.2vw,1.55rem);
}
.ar-answer>span{
  font-size:clamp(1.2rem,2.5vw,1.75rem);
  line-height:1.15;
}
.ar-stage.ar-result-visible .ar-question-float{
  opacity:0;
  visibility:hidden;
}
.ar-feedback-toast{
  z-index:12;
  inset:max(10px,env(safe-area-inset-top)) 14px auto;
  display:flex;
  align-items:stretch;
  justify-content:center;
  gap:16px;
  width:auto;
  transform:none;
  pointer-events:none;
}
.ar-score-feedback{
  display:grid;
  min-width:min(390px,55vw);
  padding:13px 24px;
  border:3px solid rgba(255,255,255,.92);
  border-radius:22px;
  color:#fff;
  text-align:center;
  box-shadow:0 10px 34px rgba(0,0,0,.36);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.ar-score-feedback.is-correct{background:rgba(3,122,74,.91)}
.ar-score-feedback.is-wrong{background:rgba(155,28,45,.92)}
.ar-score-feedback strong{
  font-size:clamp(1.1rem,2.2vw,1.55rem);
  line-height:1.05;
}
.ar-score-feedback>b{
  margin-top:2px;
  font-size:clamp(2rem,5vw,4rem);
  line-height:1;
  letter-spacing:-.035em;
}
.ar-score-feedback small{
  margin-top:5px;
  font-size:clamp(.86rem,1.55vw,1.08rem);
  font-weight:800;
}
.ar-next-button{
  display:grid;
  min-width:clamp(190px,22vw,290px);
  min-height:clamp(82px,11vh,116px);
  padding:10px 18px;
  border:3px solid rgba(255,255,255,.96);
  border-radius:22px;
  background:rgba(91,55,222,.94);
  color:#fff;
  text-align:center;
  box-shadow:0 10px 34px rgba(0,0,0,.36);
  pointer-events:auto;
  cursor:pointer;
  transition:transform .12s,background .12s,border-color .12s;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.ar-next-button>span{
  align-self:end;
  font-size:clamp(1.25rem,2.6vw,1.85rem);
  font-weight:950;
  line-height:1;
}
.ar-next-button>b{
  position:absolute;
  align-self:center;
  justify-self:end;
  font-size:clamp(1.8rem,3.5vw,2.7rem);
  line-height:1;
}
.ar-next-button>small{
  align-self:start;
  margin-top:5px;
  font-size:clamp(.72rem,1.2vw,.9rem);
  font-weight:750;
  opacity:.92;
}
.ar-next-button:hover,.ar-next-button.ar-hover{
  border-color:#ffe875;
  background:rgba(119,75,255,.98);
  transform:scale(1.045);
}
.ar-next-button:disabled{opacity:.78;cursor:default}
@media (orientation:portrait){
  .ar-answer{
    width:clamp(170px,45.5vw,350px);
    min-height:clamp(76px,10.5vh,108px);
    gap:11px;
    padding:12px 14px;
    border-radius:20px;
  }
  .ar-answer-1,.ar-answer-2{top:25%}
  .ar-answer-3,.ar-answer-4{bottom:max(6%,calc(env(safe-area-inset-bottom) + 8px))}
  .ar-answer>b{width:42px;height:42px;border-radius:12px;font-size:1.05rem}
  .ar-answer>span{font-size:clamp(1.05rem,4vw,1.45rem)}
  .ar-feedback-toast{
    right:9px;
    left:9px;
    gap:9px;
  }
  .ar-score-feedback{
    min-width:0;
    flex:1 1 auto;
    padding:10px 12px;
    border-radius:18px;
  }
  .ar-score-feedback>b{font-size:clamp(1.75rem,7vw,3rem)}
  .ar-next-button{
    min-width:clamp(145px,37vw,230px);
    min-height:88px;
    padding:9px 10px;
    border-radius:18px;
  }
  .ar-next-button>b{font-size:2rem}
}
@media (max-width:480px){
  .ar-answer{
    width:46.5vw;
    min-height:78px;
    gap:8px;
    padding:9px 9px;
  }
  .ar-answer-1,.ar-answer-3{left:4px}
  .ar-answer-2,.ar-answer-4{right:4px}
  .ar-answer>b{width:36px;height:36px;border-radius:10px;font-size:.95rem}
  .ar-answer>span{font-size:clamp(.98rem,4.4vw,1.25rem)}
  .ar-feedback-toast{flex-wrap:wrap}
  .ar-score-feedback{flex-basis:58%;padding:8px 10px}
  .ar-next-button{flex:1 1 34%;min-width:125px;min-height:78px}
  .ar-next-button>span{font-size:1.05rem}
  .ar-next-button>small{font-size:.65rem}
}
.ar-next-button{position:relative}
.ar-next-button>span{
  display:block;
  padding:0;
  border-radius:0;
  background:transparent;
  color:inherit;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}


/* Game Studio v1.2.7: card image uploads and image-based card play */
.image-field{align-self:stretch}.card-image-uploader{display:grid;grid-template-columns:minmax(130px,180px) 1fr;align-items:center;gap:14px;padding:12px;border:1px dashed #cfd4df;border-radius:14px;background:#fafbfe}.card-image-preview{display:grid;min-height:118px;place-items:center;overflow:hidden;border:1px solid #e1e4eb;border-radius:12px;background:#fff;text-align:center}.card-image-preview>span{font-size:2rem}.card-image-preview>small{display:block;color:var(--muted)}.card-image-preview img{display:block;width:100%;height:118px;object-fit:contain;background:#fff}.card-image-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.card-image-uploader>small{grid-column:2;color:var(--muted)}.card-image-uploader.has-image{border-style:solid;border-color:#bfb0ff;background:#f8f6ff}.card-image-uploader .btn input{display:none}
.card-face-content,.game-card-face{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center}.card-face-content img,.game-card-image{display:block;width:min(150px,100%);height:92px;object-fit:contain;border-radius:9px;background:#fff}.card-face-content b,.game-card-emoji{font-size:1.8rem;line-height:1}.card-face-content span,.game-card-text{overflow-wrap:anywhere;line-height:1.25}.match-card{min-height:86px}.match-card.has-card-image{min-height:142px}.memory-card{min-height:135px}.memory-card .card-front{padding:9px}.memory-card .game-card-face{position:static;inset:auto;width:100%;height:100%;border:0;border-radius:0;backface-visibility:visible;transition:none;font-size:inherit}.memory-card .game-card-image{height:82px}.memory-card .game-card-text{font-size:1rem}.preview-match button{min-height:120px}.preview-memory-front>span{padding:8px}.preview-memory .card-face-content{position:static;inset:auto;width:100%;height:100%;border:0;background:transparent;transform:none}.preview-memory .card-face-content img{height:72px}
@media(max-width:760px){.card-image-uploader{grid-template-columns:1fr}.card-image-preview{min-height:150px}.card-image-preview img{height:150px}.card-image-actions,.card-image-uploader>small{grid-column:1}.match-card.has-card-image{min-height:128px}.game-card-image{height:76px}}
@media(max-width:480px){.memory-card{min-height:110px}.memory-card .game-card-image{height:64px}.match-card{padding:7px}.match-card.has-card-image{min-height:112px}.game-card-text{font-size:.86rem}}

/* EducTools Game Studio v1.3.0 — AR template pack */
.preview-ar-object{display:flex;justify-content:center;margin:12px auto;max-width:180px}.preview-find-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.preview-find-grid>button{min-height:86px;padding:8px;border:1px solid var(--border);border-radius:14px;background:#fff}.preview-find-grid .card-face-content img{height:58px}

.ar-category-object{position:absolute;z-index:6;top:32%;left:50%;display:flex;width:clamp(150px,22vw,260px);min-height:clamp(120px,22vh,220px);align-items:center;justify-content:center;padding:12px;border:2px solid rgba(255,255,255,.8);border-radius:26px;background:rgba(255,255,255,.72);box-shadow:0 12px 34px rgba(0,0,0,.25);transform:translateX(-50%);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.ar-category-object .game-card-image{width:min(190px,100%);height:clamp(90px,17vh,160px)}.ar-category-object .game-card-emoji{font-size:clamp(3rem,8vw,6rem)}.ar-category-object .game-card-text{font-size:clamp(1.05rem,2.4vw,1.65rem);font-weight:900}
.ar-category-targets{position:absolute;z-index:7;right:max(14px,env(safe-area-inset-right));bottom:max(8%,calc(env(safe-area-inset-bottom) + 12px));left:max(14px,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,12vw,180px);pointer-events:none}
.ar-category-target{display:flex;min-height:clamp(78px,12vh,120px);align-items:center;justify-content:center;gap:12px;padding:12px 18px;border:3px solid rgba(255,255,255,.9);border-radius:24px;background:rgba(255,255,255,.82);color:#111827;box-shadow:0 10px 28px rgba(0,0,0,.27);font-size:clamp(1rem,2.4vw,1.5rem);font-weight:900;pointer-events:auto;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:.15s}
.ar-category-target>b{display:grid;width:46px;height:46px;place-items:center;border-radius:14px;background:rgba(109,74,255,.15);color:#5936d2}.ar-category-target:hover,.ar-category-target.ar-hover{border-color:#ffe36e;background:rgba(255,245,174,.94);transform:scale(1.035)}
.ar-category-target.correct-answer{border-color:#37e68e!important;background:rgba(218,255,237,.94)!important;color:#086943!important}.ar-category-target.wrong-answer{border-color:#ff5867!important;background:rgba(255,224,228,.94)!important;color:#9f1826!important}.ar-category-target:disabled{opacity:1}

.ar-sequence-answer{position:absolute;z-index:7;top:clamp(82px,14vh,130px);right:max(12px,env(safe-area-inset-right));left:max(12px,env(safe-area-inset-left));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 12px;border:1px solid rgba(255,255,255,.65);border-radius:18px;background:rgba(10,15,27,.66);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.2);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:auto}
.ar-sequence-answer>span{font-weight:900;white-space:nowrap}.ar-sequence-answer>div{display:flex;min-width:0;gap:7px;align-items:center;overflow:hidden}.ar-sequence-answer>div>button{display:flex;min-width:0;align-items:center;gap:5px;padding:6px 9px;border:1px solid rgba(255,255,255,.55);border-radius:12px;background:rgba(255,255,255,.9);color:#111827}.ar-sequence-answer>div>button>b{display:grid;width:22px;height:22px;place-items:center;border-radius:7px;background:var(--primary-soft);color:var(--primary)}.ar-sequence-answer>div>button>span{overflow:hidden;max-width:140px;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.ar-sequence-answer>div>small{opacity:.85}.ar-sequence-clear{padding:7px 12px;border:1px solid rgba(255,255,255,.7);border-radius:11px;background:rgba(255,255,255,.16);color:#fff;font-weight:800}.ar-sequence-clear:hover,.ar-sequence-clear.ar-hover{background:#fff;color:#111827}.ar-sequence-clear:disabled{opacity:.45}
.ar-sequence-pool{position:absolute;z-index:7;right:max(10px,env(safe-area-inset-right));bottom:max(5%,calc(env(safe-area-inset-bottom) + 8px));left:max(10px,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;pointer-events:none}
.ar-sequence-card{display:flex;min-height:clamp(58px,9vh,88px);align-items:center;justify-content:center;padding:9px 12px;border:2px solid rgba(255,255,255,.88);border-radius:18px;background:rgba(255,255,255,.8);color:#111827;box-shadow:0 8px 24px rgba(0,0,0,.24);font-size:clamp(.95rem,2.1vw,1.25rem);font-weight:900;pointer-events:auto;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);transition:.15s}.ar-sequence-card:hover,.ar-sequence-card.ar-hover{border-color:#ffe36e;background:rgba(255,245,174,.94);transform:translateY(-3px) scale(1.025)}.ar-sequence-card:disabled{visibility:hidden}

.ar-find-grid{position:absolute;z-index:7;inset:0;pointer-events:none}.ar-find-object{position:absolute;display:flex;width:clamp(130px,20vw,230px);min-height:clamp(105px,19vh,190px);align-items:center;justify-content:center;padding:10px;border:3px solid rgba(255,255,255,.88);border-radius:50%;background:rgba(255,255,255,.76);color:#111827;box-shadow:0 10px 30px rgba(0,0,0,.27);pointer-events:auto;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);transition:.15s}.ar-find-object-1{top:22%;left:max(12px,env(safe-area-inset-left))}.ar-find-object-2{top:22%;right:max(12px,env(safe-area-inset-right))}.ar-find-object-3{bottom:max(6%,calc(env(safe-area-inset-bottom) + 10px));left:max(12px,env(safe-area-inset-left))}.ar-find-object-4{right:max(12px,env(safe-area-inset-right));bottom:max(6%,calc(env(safe-area-inset-bottom) + 10px))}.ar-find-object .game-card-image{width:min(150px,100%);height:clamp(70px,12vh,125px)}.ar-find-object .game-card-emoji{font-size:clamp(2.4rem,6vw,4.8rem)}.ar-find-object .game-card-text{font-size:clamp(.9rem,1.9vw,1.2rem);font-weight:900}.ar-find-object:hover,.ar-find-object.ar-hover{border-color:#ffe36e;background:rgba(255,245,174,.94);transform:scale(1.055)}.ar-find-object.correct-answer{border-color:#37e68e!important;background:rgba(218,255,237,.94)!important}.ar-find-object.wrong-answer{border-color:#ff5867!important;background:rgba(255,224,228,.94)!important}.ar-find-object:disabled{opacity:1}

@media(max-width:760px){.ar-category-object{top:30%;width:clamp(125px,38vw,190px);min-height:125px}.ar-category-targets{gap:10px}.ar-category-target{min-height:72px;padding:9px 10px;border-radius:18px}.ar-category-target>b{width:36px;height:36px;border-radius:10px}.ar-sequence-answer{top:clamp(76px,13vh,112px);grid-template-columns:1fr auto}.ar-sequence-answer>span{display:none}.ar-sequence-answer>div{overflow-x:auto}.ar-sequence-answer>div>button>span{max-width:92px}.ar-sequence-pool{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.ar-sequence-card{min-height:56px;padding:7px 8px;border-radius:14px}.ar-find-object{width:clamp(105px,34vw,165px);min-height:105px}.ar-find-object-1,.ar-find-object-2{top:24%}.ar-find-object-3,.ar-find-object-4{bottom:max(5%,calc(env(safe-area-inset-bottom) + 8px))}.ar-find-object .game-card-image{height:70px}.ar-find-object .game-card-emoji{font-size:3rem}}
@media(max-width:480px){.ar-category-object{top:31%;min-height:110px}.ar-category-targets{right:5px;left:5px;bottom:max(4%,calc(env(safe-area-inset-bottom) + 5px))}.ar-category-target{min-height:66px;gap:7px;font-size:.95rem}.ar-category-target>b{width:31px;height:31px}.ar-sequence-answer{right:5px;left:5px;padding:7px}.ar-sequence-pool{right:5px;bottom:max(3%,calc(env(safe-area-inset-bottom) + 5px));left:5px}.ar-sequence-card{font-size:.9rem}.ar-find-object{width:39vw;min-height:92px;padding:6px}.ar-find-object-1,.ar-find-object-3{left:5px}.ar-find-object-2,.ar-find-object-4{right:5px}.ar-find-object .game-card-image{height:58px}.ar-find-object .game-card-text{font-size:.8rem}}

/* EducTools Game Studio v1.3.1 — public game catalog */
.public-games-home{background:#fff}.section-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px}.public-count{color:var(--muted);font-size:.92rem;font-weight:700}.public-category-chips{display:flex;flex-wrap:wrap;gap:9px;margin:-8px 0 28px}.public-category-chips a{display:inline-flex;min-height:38px;align-items:center;gap:7px;padding:7px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#596273;font-size:.9rem;font-weight:750;transition:.18s}.public-category-chips a b{display:grid;min-width:23px;height:23px;place-items:center;padding:0 6px;border-radius:999px;background:#f0f2f7;color:#596273;font-size:.74rem}.public-category-chips a:hover,.public-category-chips a.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.public-category-chips a.active b{background:var(--primary);color:#fff}
.public-game-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.public-game-grid-home{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.public-game-card{display:flex;min-width:0;overflow:hidden;flex-direction:column;border:1px solid var(--line);border-radius:19px;background:#fff;box-shadow:0 9px 28px rgba(35,40,66,.055);transition:.2s}.public-game-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.public-game-cover{position:relative;display:grid;aspect-ratio:16/10;place-items:center;overflow:hidden;background:linear-gradient(135deg,#eeeaff,#dcd5ff)}.public-game-cover>img{width:100%;height:100%;object-fit:cover;transition:.25s}.public-game-cover>span:not(.kids-popular-ribbon):not(.game-access-ribbon){font-size:4.2rem;filter:drop-shadow(0 10px 9px rgba(60,40,130,.15));transition:.25s}.public-game-card:hover .public-game-cover>img,.public-game-card:hover .public-game-cover>span:not(.kids-popular-ribbon):not(.game-access-ribbon){transform:scale(1.04)}.public-game-play{position:absolute;right:10px;bottom:10px;padding:6px 10px;border-radius:999px;background:rgba(23,32,51,.82);color:#fff;font-size:.78rem;line-height:1.2;backdrop-filter:blur(8px)}.public-game-content{display:flex;min-height:0;flex:1;flex-direction:column;padding:16px}.public-game-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.public-game-meta small{color:var(--muted);font-size:.75rem;white-space:nowrap}.public-game-content h3{margin:11px 0 5px;font-size:1.05rem;line-height:1.35}.public-game-content h3 a:hover{color:var(--primary)}.public-game-content>p{display:-webkit-box;overflow:hidden;min-height:43px;margin:0 0 12px;color:var(--muted);font-size:.88rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.public-game-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.public-game-tags span{overflow:hidden;max-width:100%;padding:3px 7px;border-radius:7px;background:#f4f5f8;color:#596273;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.public-game-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;padding-top:12px;border-top:1px solid #edf0f4}.public-game-footer small{overflow:hidden;color:var(--muted);font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.public-game-footer .btn{flex:none}.public-games-more{display:flex;justify-content:center;margin-top:30px}.public-games-empty{padding:52px 24px;border:1px dashed #cfd5e2;border-radius:20px;background:#fafbfe;text-align:center}.public-games-empty>span{display:block;margin-bottom:8px;font-size:3.5rem}.public-games-empty h3{margin:0}.public-games-empty p{max-width:650px;margin:7px auto 18px;color:var(--muted)}
.catalog-hero{padding:62px 0 50px;background:radial-gradient(circle at 85% 10%,rgba(126,94,255,.2),transparent 32%),linear-gradient(180deg,#fff,#f2efff)}.catalog-hero h1{margin:2px 0 10px;font-size:clamp(2.2rem,5vw,4rem);line-height:1.1;letter-spacing:-.035em}.catalog-hero p{max-width:720px;margin:0;color:#596278;font-size:1.06rem}.catalog-stats{display:flex;flex-wrap:wrap;gap:12px 22px;margin-top:22px;color:#4f596d;font-size:.9rem}.catalog-stats span{padding:6px 10px;border-radius:9px;background:rgba(255,255,255,.72)}.catalog-section{padding-top:42px}.catalog-category-chips{margin:0 0 22px}.catalog-filter{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(145px,1fr)) auto;align-items:end;gap:13px;margin-bottom:30px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 28px rgba(35,40,66,.04)}.catalog-filter label{display:block;min-width:0}.catalog-filter label>span{display:block;margin-bottom:6px;color:#596273;font-size:.8rem;font-weight:800}.catalog-filter input,.catalog-filter select{width:100%;min-height:44px;padding:9px 11px;border:1px solid #d8dde7;border-radius:11px;background:#fff;color:var(--text);outline:none}.catalog-filter input:focus,.catalog-filter select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(109,74,255,.12)}.catalog-filter-actions{display:flex;gap:8px}.catalog-result-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}.catalog-result-head h2{margin:0}.catalog-result-head p{margin:3px 0 0;color:var(--muted)}.catalog-filter-summary{padding:5px 9px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:.78rem;font-weight:800}.pagination{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-top:34px}.page-numbers{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.page-link,.page-number{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:7px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:750}.page-number{min-width:40px}.page-link:hover,.page-number:hover,.page-number.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.page-number.active{background:var(--primary);color:#fff}.page-link.disabled{opacity:.45;pointer-events:none}.page-dots{display:inline-grid;min-width:28px;place-items:center;color:var(--muted)}
@media(max-width:1120px){.public-game-grid-home{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-search{grid-column:span 2}.catalog-filter-actions{align-self:end}}
@media(max-width:900px){.public-game-grid,.public-game-grid-home{grid-template-columns:repeat(3,minmax(0,1fr))}.section-head{align-items:flex-start}.section-actions{justify-content:flex-start}.catalog-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-search{grid-column:1/-1}.catalog-filter-actions{grid-column:1/-1}}
@media(max-width:680px){.public-game-grid,.public-game-grid-home{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.public-game-content{padding:13px}.public-game-content>p{min-height:40px;font-size:.82rem}.public-game-footer{align-items:flex-end}.public-game-footer small{white-space:normal}.public-game-cover>span{font-size:3.3rem}.catalog-filter{grid-template-columns:1fr}.catalog-search,.catalog-filter-actions{grid-column:auto}.catalog-filter-actions .btn{flex:1}.catalog-result-head{align-items:flex-start;flex-direction:column}.pagination{grid-template-columns:1fr 1fr}.page-numbers{grid-column:1/-1;grid-row:1}.pagination>.page-link:first-child{grid-column:1}.pagination>.page-link:last-child{grid-column:2}.section-actions{width:100%}}
@media(max-width:420px){.public-game-grid,.public-game-grid-home{grid-template-columns:1fr}.public-game-cover{aspect-ratio:16/8}.public-game-content h3{font-size:1.08rem}.public-game-content>p{min-height:0}.public-category-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.public-category-chips a{flex:none}.catalog-filter-actions{flex-direction:column}.pagination{gap:8px}.page-link{padding:7px 9px;font-size:.86rem}}


/* ==========================================================================\n   EducTools Game Studio v1.4.1 — Playful classroom player UI\n   Scope: play page only. Builder, catalog and account screens are unchanged.\n   ========================================================================== */
body.game-player-body{
  min-height:100svh;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 12% 4%,rgba(255,255,255,.95),transparent 21%),
    radial-gradient(circle at 88% 12%,rgba(182,151,255,.42),transparent 26%),
    linear-gradient(145deg,#cde8ff 0%,#d7ceff 52%,#ffd9f3 100%);
}
body.game-player-body .site-header,
body.game-player-body .site-footer{display:none}
body.game-player-body main{min-height:100svh}
body.game-player-body .play-page{
  min-height:100svh;
  padding:clamp(10px,2vw,24px);
  background:transparent;
}
body.game-player-body .play-shell{
  width:min(1380px,100%);
  margin:auto;
  overflow:hidden;
  border:2px solid rgba(255,255,255,.72);
  border-radius:clamp(22px,2.5vw,34px);
  background:rgba(249,247,255,.93);
  box-shadow:0 28px 75px rgba(73,52,145,.24),inset 0 0 0 1px rgba(118,85,219,.08);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
body.game-player-body .play-topbar{
  display:flex;
  min-height:88px;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 18px;
  border:0;
  border-bottom:1px solid rgba(116,91,179,.12);
  background:rgba(255,255,255,.86);
}
.play-title-area{display:flex;min-width:0;align-items:center;gap:13px}
.play-game-icon{
  display:grid;
  width:58px;
  height:58px;
  flex:0 0 auto;
  place-items:center;
  overflow:hidden;
  border:2px solid #fff;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#eee8ff);
  box-shadow:0 8px 22px rgba(88,62,163,.18);
  font-size:1.8rem;
}
.play-game-icon img{width:100%;height:100%;object-fit:cover}
.play-title-copy{min-width:0}
.play-title-copy>b{
  display:block;
  overflow:hidden;
  color:#29203f;
  font-size:clamp(1rem,2vw,1.3rem);
  font-weight:950;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.play-meta-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.play-meta-chips span{
  display:inline-flex;
  min-height:24px;
  align-items:center;
  padding:3px 9px;
  border:1px solid rgba(111,76,213,.1);
  border-radius:999px;
  background:#f4f0ff;
  color:#604a87;
  font-size:.73rem;
  font-weight:800;
  line-height:1.2;
}
.play-top-actions{display:flex;flex:none;align-items:center;gap:9px}
.play-action{
  display:inline-flex;
  min-height:46px;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:9px 15px;
  border:1px solid rgba(105,80,171,.16);
  border-radius:15px;
  background:#fff;
  color:#35284e;
  font-size:.86rem;
  font-weight:900;
  box-shadow:0 6px 16px rgba(65,46,123,.1);
  transition:transform .16s,box-shadow .16s,filter .16s;
}
.play-action:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(65,46,123,.16)}
.play-action-fullscreen{border-color:#11b77d;background:linear-gradient(145deg,#24d59b,#0eb97b);color:#fff}
.play-action-restart{border-color:#ffb423;background:linear-gradient(145deg,#ffd34e,#ff9f16);color:#704000}
.play-action-more{border-color:#dfd7f7;background:linear-gradient(145deg,#fff,#f8f3ff)}
.play-action.is-active{filter:saturate(.85)}
body.game-player-body .play-subbar{
  display:flex;
  min-height:42px;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 20px;
  border-bottom:1px solid rgba(91,67,146,.1);
  background:rgba(225,234,255,.8);
  color:#554a75;
  font-size:.84rem;
}
.play-subbar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.play-subbar>div{display:flex;flex:none;gap:7px}
.play-subbar b{
  padding:3px 9px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:#54406e;
  font-size:.72rem;
}
body.game-player-body:not(.ar-immersive) .game-mount{
  position:relative;
  isolation:isolate;
  min-height:clamp(640px,76svh,920px);
  overflow:hidden;
  background:
    radial-gradient(ellipse at 13% 17%,rgba(255,255,255,.96) 0 5.5%,transparent 5.8%),
    radial-gradient(ellipse at 25% 27%,rgba(255,255,255,.92) 0 6%,transparent 6.3%),
    radial-gradient(ellipse at 40% 15%,rgba(255,255,255,.86) 0 5%,transparent 5.3%),
    radial-gradient(circle at 81% 15%,#ffe04f 0 7.3%,rgba(255,224,79,.28) 7.5%,transparent 11%),
    radial-gradient(ellipse at 15% 105%,#39cf72 0 48%,transparent 48.5%),
    radial-gradient(ellipse at 73% 107%,#1fc45c 0 54%,transparent 54.5%),
    linear-gradient(180deg,#78d1f3 0%,#aee8ff 56%,#74e696 56.3%,#35ca69 100%);
}
body.game-player-body:not(.ar-immersive) .game-mount:before{
  position:absolute;
  z-index:-1;
  right:-5%;
  bottom:-4%;
  left:-5%;
  height:22%;
  opacity:.34;
  background:
    radial-gradient(ellipse at 10% 100%,#0d8f42 0 13%,transparent 13.5%),
    radial-gradient(ellipse at 27% 100%,#0b9c49 0 10%,transparent 10.5%),
    radial-gradient(ellipse at 48% 100%,#138f43 0 15%,transparent 15.5%),
    radial-gradient(ellipse at 69% 100%,#0e9847 0 11%,transparent 11.5%),
    radial-gradient(ellipse at 88% 100%,#138f43 0 14%,transparent 14.5%);
  content:'';
  pointer-events:none;
}
body.game-player-body:not(.ar-immersive) .game-mount>*{position:relative;z-index:1}
body.game-player-body .game-hud{
  display:grid;
  grid-template-columns:auto minmax(180px,1fr) auto;
  align-items:center;
  gap:12px;
  padding:12px 16px 0;
  border:0;
  background:transparent;
}
body.game-player-body .hud-pill{
  display:flex;
  min-width:118px;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 13px;
  border:2px solid rgba(255,255,255,.96);
  border-radius:999px;
  background:rgba(255,255,255,.94);
  color:#3d2a63;
  box-shadow:0 7px 16px rgba(62,45,107,.19);
}
body.game-player-body .hud-pill span{color:#604c82;font-size:.78rem;font-weight:900}
body.game-player-body .hud-pill b{font-size:1.18rem;font-weight:950}
body.game-player-body .hud-time b{color:#df375a}
body.game-player-body .hud-progress{
  align-self:center;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:999px;
  background:rgba(57,63,95,.2);
  backdrop-filter:blur(8px);
}
body.game-player-body .hud-progress>span{color:#fff;font-size:.78rem;font-weight:900;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.22)}
body.game-player-body .hud-progress>div{height:10px;margin-top:4px;background:rgba(28,64,51,.55);box-shadow:inset 0 1px 4px rgba(0,0,0,.25)}
body.game-player-body .hud-progress i{background:linear-gradient(90deg,#ff6f8f,#ffb1c0);box-shadow:0 0 12px rgba(255,100,137,.42)}
body.game-player-body .standard-game{
  width:min(980px,100%);
  margin:auto;
  padding:clamp(24px,4vw,48px) clamp(18px,3vw,34px) 44px;
}
body.game-player-body .wide-game{width:min(1120px,100%)}
body.game-player-body .question-card{margin-bottom:24px;text-align:center}
body.game-player-body .question-card>span{
  display:inline-block;
  margin-bottom:8px;
  padding:4px 11px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  color:#623f9b;
  font-size:.77rem;
  font-weight:950;
  box-shadow:0 4px 12px rgba(78,52,140,.12);
}
body.game-player-body .question-card h2{
  width:fit-content;
  max-width:min(820px,96%);
  margin:0 auto;
  padding:13px 28px;
  border:2px solid rgba(255,255,255,.72);
  border-radius:20px;
  background:linear-gradient(135deg,#7a35e7,#d62c86);
  color:#fff;
  font-size:clamp(1.45rem,3.4vw,2.5rem);
  font-weight:950;
  line-height:1.22;
  text-shadow:0 2px 3px rgba(69,16,91,.28);
  box-shadow:0 8px 0 rgba(88,39,139,.2),0 16px 30px rgba(92,41,149,.23);
}
body.game-player-body .question-emoji{margin-bottom:10px;filter:drop-shadow(0 8px 12px rgba(51,32,91,.18))}
body.game-player-body .answer-grid{gap:15px}
body.game-player-body .answer-button,
body.game-player-body .tf-grid button,
body.game-player-body .match-card{
  border:2px solid rgba(255,255,255,.88);
  background:rgba(255,255,255,.91);
  box-shadow:0 8px 20px rgba(45,49,86,.14);
  backdrop-filter:blur(8px);
}
body.game-player-body .answer-button:hover,
body.game-player-body .answer-button.ar-hover,
body.game-player-body .match-card:hover,
body.game-player-body .match-card.selected{
  border-color:#7c4dff;
  background:#f4edff;
  transform:translateY(-3px) scale(1.01);
}
body.game-player-body .memory-board{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr));
  gap:clamp(14px,2vw,24px);
  width:min(820px,100%);
  margin:0 auto;
}
body.game-player-body .memory-card{
  min-height:clamp(145px,18vw,210px);
  border-radius:28px;
  filter:drop-shadow(0 13px 13px rgba(57,36,104,.24));
}
body.game-player-body .memory-card>span{
  overflow:hidden;
  border:3px solid rgba(255,255,255,.45);
  border-radius:28px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42);
}
body.game-player-body .memory-card .card-back{
  background:linear-gradient(180deg,#a77aff 0%,#7b2eea 92%);
  color:#ff3d75;
  font-size:clamp(3.3rem,7vw,5.4rem)!important;
  font-weight:1000;
  text-shadow:0 5px 0 #d4205b,0 8px 15px rgba(83,14,78,.26);
}
body.game-player-body .memory-card .card-front{
  padding:11px;
  border-color:rgba(255,255,255,.95);
  background:rgba(255,255,255,.96);
}
body.game-player-body .memory-card.matched .card-front{
  border-color:#5be29c;
  background:linear-gradient(145deg,#f4fff9,#d8ffeb);
}
body.game-player-body .matching-board{gap:clamp(14px,3vw,30px)}
body.game-player-body .inline-message{
  width:fit-content;
  margin:22px auto 0;
  padding:7px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.82);
  color:#49356d;
  box-shadow:0 5px 14px rgba(50,39,88,.12);
}
body.game-player-body .sentence-zone{box-shadow:0 7px 20px rgba(44,39,81,.11)}
body.game-player-body .game-intro,
body.game-player-body .result-screen{
  min-height:clamp(640px,76svh,920px);
  padding:42px 20px;
}
body.game-player-body .game-intro:before,
body.game-player-body .result-screen:before{
  position:absolute;
  z-index:-1;
  width:min(690px,90%);
  height:min(480px,78%);
  border:2px solid rgba(255,255,255,.78);
  border-radius:32px;
  background:rgba(255,255,255,.78);
  box-shadow:0 24px 55px rgba(46,44,90,.17);
  backdrop-filter:blur(10px);
  content:'';
}
body.game-player-body .game-intro>* ,
body.game-player-body .result-screen>*{position:relative;z-index:1}
body.game-player-body .game-intro .btn-primary,
body.game-player-body .result-screen .btn-primary{
  border-color:#7536df;
  background:linear-gradient(135deg,#7a36e7,#d52e89);
  box-shadow:0 9px 22px rgba(106,42,174,.28);
}
body.game-player-body .feedback{
  border-width:2px;
  background:rgba(255,255,255,.94);
  box-shadow:0 12px 28px rgba(53,42,91,.14);
}
body.game-player-body .play-shell:fullscreen{
  width:100%;
  height:100%;
  max-width:none;
  border:0;
  border-radius:0;
  background:#f4f0ff;
}
body.game-player-body .play-shell:fullscreen .game-mount{min-height:calc(100vh - 130px)}
body.game-player-body .play-shell:fullscreen .play-topbar{padding-top:max(12px,env(safe-area-inset-top))}
body.ar-immersive .play-topbar,
body.ar-immersive .play-subbar{display:none}
body.ar-immersive .play-page{padding:0}

@media(max-width:900px){
  body.game-player-body .play-topbar{align-items:flex-start;flex-direction:column}
  .play-title-area{width:100%}
  .play-top-actions{width:100%;justify-content:flex-end}
  .play-action{min-height:40px;padding:7px 11px;font-size:.78rem}
  body.game-player-body .game-hud{grid-template-columns:1fr 1fr}
  body.game-player-body .hud-progress{grid-column:1/-1;grid-row:2}
}
@media(max-width:640px){
  body.game-player-body .play-page{padding:0}
  body.game-player-body .play-shell{border:0;border-radius:0}
  body.game-player-body .play-topbar{min-height:0;padding:10px 11px}
  .play-game-icon{width:48px;height:48px;border-radius:14px}
  .play-meta-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}
  .play-meta-chips span{flex:none}
  .play-top-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .play-action{padding:6px 7px;white-space:nowrap}
  body.game-player-body .play-subbar{padding:7px 11px}
  .play-subbar>span{display:none}
  .play-subbar>div{width:100%;justify-content:space-between}
  body.game-player-body .game-hud{padding:9px 9px 0;gap:7px}
  body.game-player-body .hud-pill{min-width:0;padding:6px 10px}
  body.game-player-body .hud-pill span{font-size:.69rem}
  body.game-player-body .hud-pill b{font-size:1rem}
  body.game-player-body .standard-game{padding:25px 10px 32px}
  body.game-player-body .question-card h2{padding:10px 15px;border-radius:16px;font-size:clamp(1.2rem,6vw,1.65rem)}
  body.game-player-body .answer-grid,.tf-grid{grid-template-columns:1fr}
  body.game-player-body .memory-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
  body.game-player-body .memory-card{min-height:31vw;border-radius:18px}
  body.game-player-body .memory-card>span{border-radius:18px}
  body.game-player-body .memory-card .card-back{font-size:2.9rem!important}
  body.game-player-body .matching-board{grid-template-columns:1fr;gap:13px}
  body.game-player-body .game-intro:before,body.game-player-body .result-screen:before{width:94%;height:84%;border-radius:24px}
}
@media(max-width:390px){
  .play-action span{display:none}
  .play-title-copy>b{font-size:.96rem}
  body.game-player-body .memory-board{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.game-player-body .memory-card{min-height:42vw}
}

/* EducTools Game Studio v1.15.2 — simplified public game cards */
.public-game-card .public-game-content h3{
  margin:0 0 6px;
}
.public-game-card .public-game-content h3 a:focus-visible,
.public-game-card .public-game-cover:focus-visible{
  outline:3px solid rgba(109,74,255,.28);
  outline-offset:3px;
}
.public-game-card .public-game-content>p{
  margin-bottom:13px;
}
.public-game-info{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid #edf0f4;
}
.public-game-info span{
  display:inline-flex;
  max-width:100%;
  min-height:29px;
  align-items:center;
  padding:5px 9px;
  border:1px solid #e8ebf1;
  border-radius:999px;
  background:#f7f8fb;
  color:#596273;
  font-size:.76rem;
  font-weight:750;
  line-height:1.2;
}
.public-game-info .game-info-access{
  font-weight:900;
}
.public-game-info .game-info-access.is-free{
  border-color:#bbf7d0;
  background:#ecfdf3;
  color:#166534;
}
.public-game-info .game-info-access.is-pro{
  border-color:#ddd6fe;
  background:#f3e8ff;
  color:#6b21a8;
}
.public-game-info .game-info-live{
  border-color:#fde68a;
  background:#fffbeb;
  color:#92400e;
}

/* Template visual artwork v4.9.6 */
.template-card-visual .template-preview{position:relative;display:block;height:auto;aspect-ratio:720/440;overflow:hidden;padding:0;background:#f6f4ff}
.template-card-visual .template-preview>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.template-card-visual:hover .template-preview>img{transform:scale(1.045);filter:saturate(1.05)}
.template-icon-badge{position:absolute;left:15px;bottom:15px;display:grid;width:48px;height:48px;place-items:center;border:1px solid rgba(255,255,255,.82);border-radius:16px;background:rgba(255,255,255,.9);box-shadow:0 10px 24px rgba(33,28,74,.14);font-size:1.55rem;backdrop-filter:blur(12px)}
.template-card-visual .locked{z-index:3}
@media(max-width:700px){.template-card-visual .template-preview{aspect-ratio:16/10}}

/* EducTools v4.13.1: game cover thumbnails in My Games */
.table-game-cover-layout{min-width:300px;gap:14px}.my-game-cover-thumb{position:relative;display:block;width:124px;aspect-ratio:16/9;flex:0 0 124px;overflow:hidden;border:1px solid rgba(117,82,224,.18);border-radius:13px;background:linear-gradient(135deg,#f2ecff,#eaf8ff);box-shadow:0 7px 18px rgba(61,39,116,.10)}.my-game-cover-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .22s ease}.my-game-cover-thumb:hover img{transform:scale(1.045)}.my-game-cover-type{position:absolute;right:6px;bottom:6px;display:grid;width:28px;height:28px;place-items:center;border:1px solid rgba(255,255,255,.68);border-radius:9px;background:rgba(255,255,255,.92);box-shadow:0 4px 12px rgba(38,22,77,.18);font-size:1rem}.my-game-title-copy{min-width:0}.my-game-title-copy b{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.98rem}.my-game-title-copy small{margin-top:4px}.data-table td:first-child{min-width:330px}@media(max-width:760px){.table-game-cover-layout{min-width:250px;gap:10px}.my-game-cover-thumb{width:98px;flex-basis:98px;border-radius:11px}.my-game-cover-type{right:4px;bottom:4px;width:24px;height:24px;border-radius:8px;font-size:.86rem}.my-game-title-copy b{max-width:145px}.data-table td:first-child{min-width:270px}}

/* EducTools v4.13.3: administrator game moderation center */
.admin-owner-banner{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:14px 16px;border:1px solid #c4b5fd;border-radius:18px;background:linear-gradient(135deg,#f5f3ff,#eef2ff);box-shadow:0 10px 24px rgba(79,70,229,.08)}
.admin-owner-banner>span{display:grid;width:44px;height:44px;place-items:center;flex:0 0 44px;border-radius:14px;background:#4f46e5;color:#fff;font-size:1.25rem}.admin-owner-banner>div{min-width:0;flex:1}.admin-owner-banner b,.admin-owner-banner small{display:block}.admin-owner-banner small{margin-top:3px;color:#5b6475}
.admin-result-count{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 12px;border-radius:999px;background:#ede9fe;color:#5b21b6;font-weight:800;white-space:nowrap}
.admin-game-filters{display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(3,minmax(150px,1fr));gap:12px;margin:18px 0 22px;padding:16px;border:1px solid #e5e7eb;border-radius:18px;background:#fafafa}.admin-game-filters label{display:flex;flex-direction:column;gap:6px}.admin-game-filters label>span{font-size:.78rem;font-weight:800;color:#5b6475}.admin-game-filters input,.admin-game-filters select,.admin-visibility-form select{width:100%;min-height:42px;border:1px solid #d7dbe4;border-radius:12px;background:#fff;padding:8px 11px;color:#202536;font:inherit}.admin-game-filters input:focus,.admin-game-filters select:focus,.admin-visibility-form select:focus{outline:3px solid rgba(124,58,237,.13);border-color:#8b5cf6}.admin-filter-actions{display:flex;align-items:flex-end;gap:8px;grid-column:1/-1}
.admin-game-list{display:grid;gap:14px}.admin-game-card{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px;padding:15px;border:1px solid #e2e5ed;border-radius:20px;background:#fff;box-shadow:0 8px 22px rgba(33,38,56,.06)}.admin-game-card:hover{border-color:#c4b5fd;box-shadow:0 12px 28px rgba(76,54,130,.10)}.admin-game-cover{position:relative;display:block;overflow:hidden;aspect-ratio:16/9;border-radius:15px;background:#f1efff}.admin-game-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.admin-game-cover:hover img{transform:scale(1.04)}.admin-game-cover>span{position:absolute;right:8px;bottom:8px;display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:rgba(255,255,255,.94);box-shadow:0 5px 14px rgba(29,20,58,.18);font-size:1.15rem}
.admin-game-copy{min-width:0}.admin-game-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.admin-game-title-row h3{margin:0;color:#26233a;font-size:1.08rem}.admin-game-title-row p{margin:4px 0 0;color:#6b7280;font-size:.84rem}.admin-game-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.visibility-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:800}.visibility-public{background:#dcfce7;color:#166534}.visibility-unlisted{background:#fef3c7;color:#92400e}.visibility-private{background:#fee2e2;color:#991b1b}
.admin-game-owner{display:flex;align-items:center;gap:9px;margin-top:12px}.admin-owner-avatar{display:grid;width:34px;height:34px;place-items:center;flex:0 0 34px;border-radius:11px;background:linear-gradient(135deg,#7c3aed,#ec4899);color:#fff;font-weight:900}.admin-game-owner b,.admin-game-owner small{display:block}.admin-game-owner b{font-size:.88rem}.admin-game-owner small{margin-top:1px;color:#7b8190;font-size:.75rem}.admin-game-meta{display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 0;color:#73798a;font-size:.78rem}.admin-game-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.admin-game-actions form{display:inline-flex;margin:0}.admin-visibility-form{display:flex!important;align-items:center;gap:6px}.admin-visibility-form select{min-width:118px;min-height:34px;padding:5px 8px;border-radius:9px;font-size:.78rem}.btn-danger{border-color:#dc2626!important;background:#dc2626!important;color:#fff!important}.btn-warning{border-color:#f59e0b!important;background:#fef3c7!important;color:#92400e!important}.admin-pagination{display:flex;justify-content:center;gap:7px;margin-top:20px}.admin-pagination a{display:grid;width:38px;height:38px;place-items:center;border:1px solid #dedee8;border-radius:11px;background:#fff;color:#4b5563;font-weight:800}.admin-pagination a.active{border-color:#7c3aed;background:#7c3aed;color:#fff}
@media(max-width:1050px){.admin-game-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-game-card{grid-template-columns:170px minmax(0,1fr)}}
@media(max-width:720px){.admin-owner-banner{align-items:flex-start;flex-wrap:wrap}.admin-owner-banner .btn{width:100%}.admin-game-filters{grid-template-columns:1fr}.admin-filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}.admin-game-card{grid-template-columns:1fr;padding:12px}.admin-game-cover{max-height:240px}.admin-game-title-row{flex-direction:column}.admin-game-badges{justify-content:flex-start}.admin-game-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-game-actions>a,.admin-game-actions>form,.admin-game-actions .btn{width:100%}.admin-visibility-form{grid-column:1/-1;display:grid!important;grid-template-columns:1fr auto}.admin-game-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Animated game-cover integration v1.8.0 */
.public-game-cover>.egs-animated-cover{position:absolute;inset:0;width:100%;height:100%;font-size:initial;filter:none;transition:none}
.public-game-card:hover .public-game-cover>.egs-animated-cover{transform:none}
.public-game-cover>.egs-animated-cover .egs-cover-poster{width:100%;height:100%;object-fit:cover}
.my-game-cover-thumb>.egs-animated-cover,.admin-game-cover>.egs-animated-cover{position:absolute;inset:0;width:100%;height:100%}
.my-game-cover-type,.admin-game-cover>span{z-index:5}
/* v4.15.0: disable AI question generation in every game template */
[data-open-question-tool="ai"],[data-question-tab="ai"],[data-question-panel="ai"],.ai-builder-layout,.ai-generate-button{display:none!important}

/* EducTools v4.15.1: dashboard recent game covers */
.recent-game-list{gap:2px}.recent-game-row{min-height:92px}.recent-game-cover{position:relative;display:block;width:128px;aspect-ratio:16/9;flex:0 0 128px;overflow:hidden;border:1px solid rgba(117,82,224,.20);border-radius:14px;background:linear-gradient(135deg,#f2ecff,#e8f8ff);box-shadow:0 7px 20px rgba(61,39,116,.11)}.recent-game-cover img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .24s ease}.recent-game-cover:hover img{transform:scale(1.045)}.recent-game-cover>.egs-animated-cover{position:absolute;inset:0;width:100%;height:100%}.recent-game-cover-type{position:absolute;right:6px;bottom:6px;z-index:5;display:grid;width:28px;height:28px;place-items:center;border:1px solid rgba(255,255,255,.78);border-radius:9px;background:rgba(255,255,255,.94);box-shadow:0 4px 12px rgba(38,22,77,.18);font-size:1rem}.recent-game-row .game-main b{font-size:1rem;color:#24203a}.recent-game-row .game-main span{margin-top:4px}.recent-game-row .status{margin-left:auto}
@media(max-width:760px){.recent-game-row{display:grid;grid-template-columns:98px minmax(0,1fr) auto;gap:10px;align-items:center}.recent-game-cover{width:98px;flex-basis:98px;border-radius:11px}.recent-game-cover-type{right:4px;bottom:4px;width:24px;height:24px;border-radius:8px;font-size:.86rem}.recent-game-row .game-main{min-width:0}.recent-game-row .status{margin-left:0}.recent-game-row>.btn{grid-column:2/4;justify-self:start}.recent-game-row .game-main b,.recent-game-row .game-main span{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.recent-game-row .game-main b{-webkit-line-clamp:2}.recent-game-row .game-main span{-webkit-line-clamp:1}}
@media(max-width:480px){.recent-game-row{grid-template-columns:86px minmax(0,1fr)}.recent-game-cover{width:86px;flex-basis:86px}.recent-game-row .status{grid-column:2}.recent-game-row>.btn{grid-column:2}}


/* EducTools v4.15.2: clear Game Studio membership status */
.membership-dash-head .membership-confirmed{flex:0 0 auto;cursor:default;pointer-events:none;border-color:#8ed9b7;background:linear-gradient(135deg,#e8fff3,#d6f8e8);color:#087443;box-shadow:0 10px 24px rgba(20,143,88,.14)}
.membership-active-panel{border-color:#b9e7d0;background:linear-gradient(135deg,#ffffff 0%,#f0fff7 56%,#e8fbf3 100%);box-shadow:0 14px 34px rgba(17,132,81,.09)}
.membership-inactive-panel{border-color:#eadcb8;background:linear-gradient(135deg,#fff 0%,#fffaf0 100%)}
.membership-status-heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}.membership-check-icon{display:grid;width:54px;height:54px;flex:0 0 54px;place-items:center;border-radius:18px;background:linear-gradient(135deg,#16a56a,#0b7c4b);color:#fff;font-size:1.7rem;font-weight:900;box-shadow:0 10px 24px rgba(13,128,76,.22)}
.membership-status-heading h2{margin:2px 0 4px;color:#15583b}.membership-status-heading p{margin:0;color:#52655b}.membership-status-kicker{display:block;color:#118154;font-size:.74rem;font-weight:900;letter-spacing:.13em}.membership-active-panel .button-row{display:flex;flex-wrap:wrap;gap:10px}
@media(max-width:700px){.membership-dash-head{align-items:stretch;flex-direction:column}.membership-dash-head .membership-confirmed,.membership-dash-head>a{width:100%}.membership-status-heading{gap:12px}.membership-check-icon{width:46px;height:46px;flex-basis:46px;border-radius:15px;font-size:1.4rem}.membership-active-panel .button-row{display:grid;grid-template-columns:1fr}.membership-active-panel .button-row .btn{width:100%}}


/* EducTools v4.16.2: teacher identity and membership-aware player actions */
.play-creator-row{display:flex;min-width:0;margin-top:8px}
.play-creator-link{display:inline-flex;max-width:100%;align-items:center;gap:9px;padding:5px 9px 5px 5px;border:1px solid rgba(116,78,211,.16);border-radius:14px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(245,239,255,.94));color:#39275f;box-shadow:0 5px 14px rgba(74,45,139,.1);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.play-creator-link:not(.is-static):hover{border-color:rgba(116,78,211,.38);transform:translateY(-1px);box-shadow:0 8px 18px rgba(74,45,139,.16)}
.play-creator-link.is-static{cursor:default}
.play-creator-avatar{display:grid;width:35px;height:35px;flex:0 0 35px;place-items:center;overflow:hidden;border:2px solid #fff;border-radius:11px;background:linear-gradient(145deg,#8358f5,#ef69ae);color:#fff;box-shadow:0 4px 10px rgba(95,56,173,.2);font-size:.94rem;font-weight:950}
.play-creator-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.play-creator-copy{display:grid;min-width:0;line-height:1.08}
.play-creator-copy small{color:#7b6a94;font-size:.65rem;font-weight:750}
.play-creator-copy strong{display:block;max-width:190px;overflow:hidden;color:#35224f;font-size:.79rem;font-weight:950;text-overflow:ellipsis;white-space:nowrap}
.play-creator-verified{display:grid;width:20px;height:20px;flex:0 0 20px;place-items:center;border-radius:50%;background:#21b989;color:#fff;font-size:.68rem;font-weight:950}
.play-creator-site-label{margin-left:2px;padding:4px 7px;border-radius:999px;background:#ede6ff;color:#6740c5;font-size:.65rem;font-weight:900;white-space:nowrap}
.play-action-member{border-color:#5cdbb6;background:linear-gradient(145deg,#eafff8,#c8f6e8);color:#12684f}
@media(max-width:900px){.play-creator-link{max-width:min(100%,430px)}.play-creator-copy strong{max-width:240px}}
@media(max-width:640px){.play-creator-row{margin-top:6px}.play-creator-link{padding:4px 7px 4px 4px;border-radius:12px}.play-creator-avatar{width:31px;height:31px;flex-basis:31px;border-radius:10px}.play-creator-site-label{display:none}.play-creator-copy strong{max-width:160px}.play-creator-copy small{font-size:.61rem}}
@media(max-width:390px){.play-creator-copy strong{max-width:125px}}

/* EducTools v4.21.1: clearly show completed pairs in the matching game */
body.game-player-body .match-card.matched,
body.game-player-body .match-card.matched:hover,
body.game-player-body .match-card.matched:focus,
body.game-player-body .match-card.matched:focus-visible,
body.game-player-body .match-card.matched:disabled {
  position:relative;
  overflow:hidden;
  border-color:#16a765 !important;
  background:linear-gradient(145deg,#eafff3 0%,#c9f7df 55%,#b6efcf 100%) !important;
  color:#075f3a !important;
  box-shadow:0 0 0 3px rgba(22,167,101,.14),0 11px 24px rgba(10,126,75,.20) !important;
  opacity:1;
  cursor:default;
  pointer-events:none;
  transform:none !important;
  animation:egs-match-success-pop .34s ease-out both;
}
body.game-player-body .match-card.matched::after {
  position:absolute;
  z-index:4;
  top:8px;
  right:8px;
  display:grid;
  width:32px;
  height:32px;
  place-items:center;
  border:2px solid rgba(255,255,255,.94);
  border-radius:50%;
  background:#11975a;
  color:#fff;
  content:'✓';
  font-size:1rem;
  font-weight:1000;
  line-height:1;
  box-shadow:0 5px 13px rgba(5,99,57,.30);
}
body.game-player-body .match-card.matched .game-card-face,
body.game-player-body .match-card.matched .card-face-content {
  opacity:.93;
}
body.game-player-body .match-card.matched .game-card-text,
body.game-player-body .match-card.matched .game-card-emoji,
body.game-player-body .match-card.matched b,
body.game-player-body .match-card.matched span {
  color:#075f3a;
}
body.game-player-body .match-card.matched .game-card-image,
body.game-player-body .match-card.matched img {
  border:2px solid rgba(17,151,90,.24);
  background:#fff;
}
body.game-player-body .match-card.mismatch,
body.game-player-body .match-card.mismatch:hover {
  border-color:#e54858 !important;
  background:linear-gradient(145deg,#fff5f6,#ffe2e5) !important;
  color:#9f1f2d !important;
  box-shadow:0 0 0 3px rgba(229,72,88,.12),0 9px 20px rgba(162,31,45,.14) !important;
  transform:translateX(0) !important;
  animation:egs-match-error-shake .34s ease-in-out both;
}
@keyframes egs-match-success-pop {
  0% { transform:scale(.96); }
  62% { transform:scale(1.025); }
  100% { transform:scale(1); }
}
@keyframes egs-match-error-shake {
  0%,100% { transform:translateX(0); }
  25% { transform:translateX(-5px); }
  75% { transform:translateX(5px); }
}
@media(max-width:480px) {
  body.game-player-body .match-card.matched::after {
    top:6px;
    right:6px;
    width:27px;
    height:27px;
    font-size:.86rem;
  }
}
@media(prefers-reduced-motion:reduce) {
  body.game-player-body .match-card.matched,
  body.game-player-body .match-card.mismatch {
    animation:none;
  }
}

/* EducTools v4.21.2: show the matching game in pages of four pairs */
body.game-player-body .matching-game-paged{
  width:min(980px,100%);
}
body.game-player-body .matching-game-paged .question-card h2{
  margin-bottom:16px;
}
body.game-player-body .matching-page-meta{
  display:flex;
  width:min(720px,100%);
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 auto 14px;
  padding:9px 13px;
  border:1px solid rgba(107,73,190,.15);
  border-radius:14px;
  background:rgba(255,255,255,.78);
  color:#645475;
  box-shadow:0 6px 16px rgba(57,39,96,.08);
  font-size:.82rem;
}
body.game-player-body .matching-page-meta b{
  color:#5931bd;
  font-size:.84rem;
  white-space:nowrap;
}
body.game-player-body .matching-board.is-paginated{
  width:min(820px,100%);
  margin:0 auto;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(10px,2vw,22px);
}
body.game-player-body .matching-board.is-paginated>div{
  gap:9px;
}
body.game-player-body .matching-board.is-paginated .match-card{
  min-height:70px;
  padding:10px 12px;
}
body.game-player-body .matching-board.is-paginated .match-card.has-card-image{
  min-height:118px;
}
body.game-player-body .matching-board.is-paginated .game-card-image{
  height:68px;
}
body.game-player-body .matching-pagination{
  display:grid;
  width:min(620px,100%);
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  margin:18px auto 0;
}
body.game-player-body .matching-page-button{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:9px 16px;
  border:2px solid #7650d8;
  border-radius:14px;
  background:#fff;
  color:#5833b5;
  font-weight:900;
  box-shadow:0 7px 16px rgba(75,47,139,.12);
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
body.game-player-body .matching-page-button:not(:disabled):hover{
  background:#f2ecff;
  transform:translateY(-2px);
  box-shadow:0 10px 20px rgba(75,47,139,.18);
}
body.game-player-body .matching-page-button.is-next:not(:disabled){
  border-color:#6b43d2;
  background:linear-gradient(135deg,#7952df,#a55bea);
  color:#fff;
}
body.game-player-body .matching-page-button:disabled{
  border-color:#d9d5e4;
  background:#f2f1f5;
  color:#9b95a7;
  box-shadow:none;
  cursor:not-allowed;
  opacity:.72;
}
body.game-player-body .matching-page-indicator{
  display:grid;
  min-width:88px;
  justify-items:center;
  line-height:1.05;
}
body.game-player-body .matching-page-indicator small{
  color:#7c718b;
  font-size:.67rem;
}
body.game-player-body .matching-page-indicator b{
  margin-top:4px;
  color:#4f2ba8;
  font-size:1rem;
}
@media(max-width:640px){
  body.game-player-body .matching-board.is-paginated{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px;
  }
  body.game-player-body .matching-board.is-paginated>div{
    gap:7px;
  }
  body.game-player-body .matching-board.is-paginated .match-card{
    min-height:62px;
    padding:8px 7px;
    border-radius:11px;
    font-size:.8rem;
  }
  body.game-player-body .matching-board.is-paginated .match-card.has-card-image{
    min-height:100px;
  }
  body.game-player-body .matching-board.is-paginated .game-card-image{
    height:54px;
  }
  body.game-player-body .matching-page-meta{
    align-items:flex-start;
    padding:8px 10px;
    font-size:.72rem;
  }
  body.game-player-body .matching-page-meta b{
    font-size:.74rem;
  }
  body.game-player-body .matching-pagination{
    gap:7px;
  }
  body.game-player-body .matching-page-button{
    min-height:41px;
    padding:8px 9px;
    border-radius:12px;
    font-size:.76rem;
  }
  body.game-player-body .matching-page-indicator{
    min-width:64px;
  }
}
@media(max-width:390px){
  body.game-player-body .matching-page-meta>span{
    display:none;
  }
  body.game-player-body .matching-page-meta{
    justify-content:center;
  }
  body.game-player-body .matching-page-button{
    padding:7px 6px;
    font-size:.7rem;
  }
  body.game-player-body .matching-page-indicator small{
    display:none;
  }
}


/* EducTools Game Studio v1.17.0 — favorites, dynamic font, automatic advance */
body.egs-kids-theme{font-family:var(--egs-studio-font,"Mali","Noto Sans Thai",sans-serif)}
.public-game-card{position:relative}.game-favorite-button{position:absolute;z-index:6;top:12px;right:12px;display:inline-flex;align-items:center;gap:6px;padding:0px 11px;border:1px solid rgba(255,255,255,.78);border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 8px 22px rgba(37,42,70,.14);color:#6f7180;font:inherit;font-weight:800;cursor:pointer;text-decoration:none;backdrop-filter:blur(8px)}
.public-game-card.is-removing-favorite{opacity:0;transform:scale(.96);transition:opacity .2s ease,transform .2s ease}
.game-favorite-button span{font-size:1.1rem;color:#b2b4bd}.game-favorite-button em{font-style:normal;font-size:.78rem}.game-favorite-button:hover{transform:translateY(-1px)}.game-favorite-button.is-favorite{background:#fff0f5;color:#b51f59;border-color:#ffc6da}.game-favorite-button.is-favorite span{color:#ef3e7b}.game-favorite-button:disabled{opacity:.65;cursor:wait}
.public-category-chips .favorite-chip{border-color:#ffc4d8;background:#fff5f8;color:#a91d52}.public-category-chips .favorite-chip.active{background:linear-gradient(135deg,#f43f7d,#a855f7);color:#fff}
.play-action-favorite em{font-style:normal}.play-action-favorite.is-favorite{background:#fff0f6!important;color:#b91c5c!important;border-color:#ffc4d8!important}.play-action-favorite.is-favorite span{color:#ef3e7b}
.feedback-auto-next{display:grid;gap:7px;margin-top:12px;font-size:.84rem;font-weight:750;opacity:.82}.feedback-auto-next i{display:block;height:5px;overflow:hidden;border-radius:999px;background:rgba(0,0,0,.10)}.feedback-auto-next em{display:block;width:100%;height:100%;border-radius:inherit;background:currentColor;transform-origin:left;animation:egsFeedbackAdvance linear forwards}@keyframes egsFeedbackAdvance{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:560px){.game-favorite-button{top:8px;right:8px;padding:7px 9px}.game-favorite-button em{display:none}}


/* EducTools v4.47.1 — restore the original full-width member dashboard; keep colorful game search below. */
.catalog-filter .catalog-search>span{color:#5c39bf;font-weight:900}
.catalog-filter .catalog-search input{
  border-color:#cfc3f1;
  background:linear-gradient(135deg,#fff,#fbf8ff);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.catalog-filter .catalog-search input::placeholder{color:#887a9d;opacity:1}
.catalog-filter label:not(.catalog-search)>span{font-weight:850}
.catalog-filter select{background-color:#fff}
