@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/tajawal-arabic-400-normal-CyCXRvzh.woff2) format("woff2"),url(/assets/tajawal-arabic-400-normal-DCQxawbB.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/tajawal-latin-400-normal-BVNSOH3d.woff2) format("woff2"),url(/assets/tajawal-latin-400-normal-BdYcZznU.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/tajawal-arabic-500-normal-BZ8ojJNu.woff2) format("woff2"),url(/assets/tajawal-arabic-500-normal-CbVEaYEW.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/tajawal-latin-500-normal-CoYeBiSI.woff2) format("woff2"),url(/assets/tajawal-latin-500-normal-DU9v6xgj.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/tajawal-arabic-700-normal-D2-eand5.woff2) format("woff2"),url(/assets/tajawal-arabic-700-normal-9L7Zusdl.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/tajawal-latin-700-normal-BypgxfGb.woff2) format("woff2"),url(/assets/tajawal-latin-700-normal-CV3bxpHe.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/tajawal-arabic-800-normal-TQp-UTiE.woff2) format("woff2"),url(/assets/tajawal-arabic-800-normal-Bp_4IW2m.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Tajawal;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/tajawal-latin-800-normal-CmI34b-g.woff2) format("woff2"),url(/assets/tajawal-latin-800-normal-Dm5jVIIh.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Tajawal,sans-serif;color:#edf1f7;background:#0d1420;font-synthesis:none;font-weight:400;--mint:#79e5c0;--muted:#8894a9;--line:#ffffff0e;--panel:#151e2c;--student-color:#b99cff}*{box-sizing:border-box}body{margin:0;min-width:360px;background:radial-gradient(ellipse at 90% 0%,#1b2c332e,transparent 45%),#0d1420}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{opacity:.4;cursor:not-allowed}button{transition:background .18s,border-color .18s,transform .18s}button:hover:not(:disabled){filter:brightness(1.13)}button:active:not(:disabled){transform:translateY(1px)}button:focus-visible,a:focus-visible{outline:2px solid var(--mint);outline-offset:4px}input:focus,select:focus{outline:2px solid #79e5c06b;outline-offset:1px}.icon{width:20px;height:20px;flex-shrink:0;vertical-align:middle}a{color:inherit;text-decoration:none}.app-header{height:93px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#111925ba}.brand{display:flex;align-items:center;gap:13px}.brand-mark{width:49px;height:49px;display:grid;place-items:center;background:#79e5c0;border-radius:15px;color:#163a36;box-shadow:0 0 28px #79e5c013;transform:rotate(-5deg)}.brand-mark .icon{width:30px;height:30px;transform:rotate(5deg)}.brand strong{display:block;font-size:25px;font-weight:800;line-height:1.2}.brand small{display:block;font-size:11px;color:#8d9cae;margin-top:5px;letter-spacing:.4px}.brand-dot{color:var(--mint);padding-right:2px}.header-actions{display:flex;gap:18px;align-items:center}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#b4bfce;font-size:14px;padding:8px 5px}.header-actions .text-button:hover{color:var(--mint)}.header-divider{height:25px;width:1px;background:#ffffff13;margin:0 4px}.icon-button{width:35px;height:35px;display:inline-grid;place-items:center;border-radius:9px;color:#a6b2c3;flex-shrink:0}.icon-button:hover{background:#ffffff0a}.teacher-avatar{height:36px;width:36px;border-radius:50%;display:grid;place-items:center;background:#334139;color:#b8d8ae;border:3px solid #1e2c29;font-size:18px;margin-right:3px}main{max-width:1570px;margin:auto;padding:35px 4% 0}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:20px}.eyebrow{font-size:11px;letter-spacing:.4px;color:#93a3b7;display:flex;gap:6px;align-items:center}.eyebrow>span{width:5px;height:5px;background:var(--mint);border-radius:50%}h1{font-size:32px;font-weight:800;line-height:1.4;letter-spacing:-.5px;margin:8px 0 6px}h1 span{color:var(--mint)}h1>.icon{color:#ecd299;width:23px;height:23px;transform:rotate(12deg);margin-right:5px}h1+p{color:#8a98ad;font-size:14px;margin:0}.class-switch{display:flex;align-items:center;gap:12px;border:1px solid #ffffff12;border-radius:12px;padding:8px 12px;background:#151e2c;margin-top:12px}.class-switch>span{font-size:12px;color:#8593a5}.class-switch select{background:transparent;color:#e5eaf2;border:0;font-size:14px;max-width:180px;cursor:pointer;padding:5px}.class-switch option{background:#1a2537}.class-switch .icon-button{width:28px;height:28px;background:#26373b;color:var(--mint)}.panel{background:var(--panel);border:1px solid #ffffff0b;border-radius:18px}.game-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px;align-items:stretch}.students-panel{padding:21px 16px 0;display:flex;flex-direction:column}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.panel-heading h2{font-size:17px;font-weight:700;display:flex;align-items:center;gap:9px;margin:0}.panel-heading h2 .icon{color:#a2acbb;width:19px}.count-badge{font-size:11px;padding:4px 9px;border:1px solid #ffffff10;background:#ffffff03;color:#99a6b9;border-radius:7px;direction:ltr}.panel-subtitle{color:#7e8a9d;font-size:11px;margin:11px 0 22px}.student-list{display:flex;flex-direction:column;gap:8px}.student-card{display:flex;align-items:center;gap:12px;text-align:right;border:1px solid transparent;border-radius:12px;padding:10px 11px;background:#1b2534;min-height:68px;width:100%;position:relative}.student-card.active{border-color:#79e5c050;background:linear-gradient(100deg,#7de7bc06,#7de7bc13)}.student-info{flex:1;min-width:0}.student-info strong{font-size:15px;font-weight:700;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-info small{display:block;font-size:9px;color:#8895aa;margin-top:6px}.student-points{font-family:Tajawal,sans-serif;font-size:18px;font-weight:700;text-align:center;line-height:1}.student-points small{display:block;font-size:9px;color:#7e8b9d;margin-top:5px;font-weight:400}.active .student-points{color:var(--mint)}.selected-check{display:none}.active .selected-check{display:grid;place-items:center;position:absolute;right:-5px;top:-4px;border-radius:50%;background:var(--mint);color:#14392c;border:3px solid #172b2c;width:19px;height:19px}.selected-check .icon{width:12px;height:12px;stroke-width:3}.mini-avatar{width:37px;height:42px;position:relative;flex-shrink:0;display:grid;place-items:center;background:color-mix(in srgb,var(--student-color) 12%,transparent);border-radius:11px}.mini-avatar:before{content:"";position:absolute;width:26px;height:25px;top:3px;border-radius:12px;background:var(--student-color);box-shadow:inset -4px -3px #0002,0 3px 7px #0003}.mini-avatar:after{content:"";position:absolute;width:19px;height:13px;top:26px;border-radius:6px 6px 4px 4px;background:#dbe2ed;box-shadow:inset 0 -4px 0 var(--student-color)}.mini-avatar b{background:#1a263a;color:#b5f5e5;font-family:monospace;position:absolute;font-size:22px;letter-spacing:2px;line-height:7px;text-align:center;width:20px;height:13px;top:10px;border-radius:6px;padding-right:2px}.mini-avatar i{width:3px;height:4px;background:var(--student-color);position:absolute;top:0;right:10px}.add-students{display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #ffffff1e;border-radius:10px;width:100%;color:#93a3b5;padding:11px 8px;font-size:11px;margin-top:15px}.add-students .icon{width:16px;height:16px}.add-students:hover{background:#ffffff05;border-color:#79e5c055;color:var(--mint)}.little-note{display:flex;align-items:flex-start;gap:9px;margin-top:auto;padding:27px 5px 20px;color:#879a9c}.little-note>.icon{color:#719b87;width:16px;margin-top:3px}.little-note p{font-size:10px;margin:0;line-height:1.9}.little-note strong{font-weight:400;color:#9dabbb}.panel-bottom{border-top:1px solid #ffffff08;display:flex;align-items:center;justify-content:space-between;padding:11px 0}.panel-bottom>span{display:flex;align-items:center;gap:5px;font-size:9px;color:#80988f}.panel-bottom>span .icon{width:12px;height:12px}.subtle-button{color:#7e8c9f;font-size:11px;display:flex;align-items:center;gap:5px}.subtle-button .icon{width:16px;height:16px}.journey-panel{overflow:hidden;background:#111c2d;display:flex;flex-direction:column}.journey-top{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:15px 23px;border-bottom:1px solid #ffffff08;background:#152030}.journey-top>div{display:flex;gap:8px;align-items:center}.journey-top strong{font-size:14px;font-weight:500}.live-dot{width:6px;height:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 10px #79e5c055}.scene-tag{font-size:9px;color:#708599;margin-right:8px;padding-right:12px;border-right:1px solid #ffffff13}.journey-top .text-button{font-size:11px;color:#a7b6cb;padding:4px}.journey-top .icon{width:16px;height:16px}.scene-scroll{flex:1;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#38445c transparent}.scene-wrap{position:relative;height:510px;min-width:620px;overflow:hidden;background:radial-gradient(ellipse at 50% 28%,#34365e4f,transparent 48%),linear-gradient(#121d30,#15243b 65%,#1a2f41)}.three-scene{position:absolute;inset:0;z-index:2}.three-scene canvas{display:block;width:100%;height:100%}.sky-orb{position:absolute;pointer-events:none;border-radius:50%;filter:blur(50px);opacity:.09}.orb-one{width:260px;height:260px;left:12%;top:30%;background:#b799ff}.orb-two{width:250px;height:180px;right:0;bottom:0;background:#53e4c2}.destination{position:absolute;top:22px;left:50%;transform:translate(-50%);text-align:center;z-index:4;pointer-events:none;white-space:nowrap}.destination>span{display:block;font-size:8px;letter-spacing:1px;color:#b8a983;margin-bottom:5px}.destination strong{display:block;color:#f0d99b;font-size:20px;font-weight:700}.destination small{display:block;color:#948d86;font-size:9px;margin-top:5px}.altitude-lines{position:absolute;inset:0 30px;z-index:1;pointer-events:none}.altitude{position:absolute;left:0;right:0;border-bottom:1px dashed #c8d3e60d}.altitude button{pointer-events:auto;position:absolute;left:-18px;top:-16px;border:1px solid #a998df26;background:#29304c;color:#a5a0c4;border-radius:8px;padding:4px 5px;display:flex;align-items:center;gap:4px;font-size:10px;z-index:5}.altitude button .icon{width:15px;height:15px}.scene-labels{position:absolute;inset:0;pointer-events:none;z-index:5}.explorer-label{position:absolute;transform:translate(-50%);pointer-events:auto;display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:12px;padding:5px 8px;background:#182337d9;border:1px solid #ffffff0c;border-radius:7px;box-shadow:0 4px 10px #0002;color:#e7ebf4;max-width:140px}.explorer-label:active:not(:disabled){transform:translate(-50%,1px)}.explorer-label span{max-width:80px;overflow:hidden;text-overflow:ellipsis}.explorer-label b{font-size:10px;color:var(--student-color);border-right:1px solid #ffffff1a;padding-right:6px}.explorer-label.selected{border-color:color-mix(in srgb,var(--student-color) 55%,transparent);box-shadow:0 0 18px color-mix(in srgb,var(--student-color) 12%,transparent)}.start-line{position:absolute;right:7%;left:7%;bottom:66px;border-top:1px dashed #83d5c938;z-index:1;text-align:center}.start-line:before,.start-line:after{content:"";position:absolute;top:-3px;width:5px;height:5px;border-radius:50%;background:#69a69a}.start-line:before{left:0}.start-line:after{right:0}.start-line span{position:relative;top:16px;font-size:10px;color:#8eb5b1;letter-spacing:.8px}.scene-hint{position:absolute;bottom:13px;right:22px;display:flex;align-items:center;gap:5px;font-size:9px;color:#667f91;z-index:3}.scene-hint .icon{width:12px;height:12px}.reward-dock{display:flex;align-items:center;gap:17px;padding:20px 23px;background:#182333;border-top:1px solid #ffffff0c;z-index:6}.reward-recipient{display:flex;gap:9px;align-items:center;min-width:105px}.tiny-spark{font-size:25px;color:#e7d792}.reward-recipient small{display:block;font-size:10px;color:#8d9caf}.reward-recipient strong{display:block;font-size:16px;color:#e6edf3;margin-top:5px;max-width:115px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.reward-buttons{display:flex;align-items:center;gap:9px;flex:1}.reward-button{border:1px solid #ffffff0c;border-radius:11px;padding:11px 12px;display:flex;align-items:center;gap:11px;flex:1;min-height:62px;text-align:right;background:#202c3c}.reward-button strong{font-size:12px;display:block;font-weight:500;white-space:nowrap}.reward-button small{display:block;font-size:10px;margin-top:6px;color:#a8b1bd}.reward-button.diamond{background:#253049;border-color:#ac91ed30}.reward-button.diamond small{color:#c5b6f7}.reward-button.medal{background:#33312d;border-color:#eac36526}.reward-button.medal small{color:#e5cd8d}.reward-button:hover{border-color:#b9d9d077;transform:translateY(-3px)}.reward-object{display:inline-grid;place-items:center;flex-shrink:0;position:relative;font-family:Arial,sans-serif;font-weight:700}.reward-object.silver{height:31px;width:31px;border:3px double #b8c8d8;color:#e3e8f0;border-radius:50%;background:linear-gradient(135deg,#b7becd,#6f8096);box-shadow:0 3px #526073,0 4px 10px #0003;font-size:18px;text-shadow:0 1px 2px #0006}.reward-object.diamond{font-size:43px;color:#b0a5ff;text-shadow:2px 2px 0 #7474c4,-2px -2px 0 #e1d8ff,0 0 20px #ac9fff55;line-height:.8;transform:rotate(-10deg);height:34px;width:34px}.reward-object.medal{width:28px;height:28px;font-size:17px;border:3px double #edd596;color:#ffe9a3;background:linear-gradient(135deg,#ddab49,#9d6b1c);border-radius:50%;box-shadow:0 3px #7d5117;z-index:0}.reward-object.medal:before{content:"";position:absolute;width:19px;height:14px;background:linear-gradient(90deg,#4f9897 40%,#b7dbbc 40% 60%,#4f9897 60%);top:-12px;clip-path:polygon(0 0,100% 0,75% 100%,25% 100%);z-index:-1}.undo-button{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-right:1px solid #ffffff0c;padding:0 14px 0 0;color:#8191a6;font-size:10px}.undo-button .icon{width:18px;height:18px}.team-goal{margin-top:21px;padding:19px 24px;display:flex;align-items:center;gap:17px;background:linear-gradient(105deg,#192531,#18283155);border-color:#6de1b515}.team-icon{height:46px;width:46px;background:#6ce0bd10;border:1px solid #6ce0bd17;border-radius:13px;display:grid;place-items:center;color:#86d5b9}.team-icon .icon{width:23px;height:23px}.team-copy h2{font-size:16px;margin:0 0 6px;font-weight:700}.team-copy p{margin:0;color:#7f92a4;font-size:11px}.team-progress{margin-right:auto;width:35%;max-width:430px}.team-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;font-size:10px;color:#98aab8}.team-progress strong{font-size:13px;color:#a1e0c5}.team-progress strong span{color:#7e91a0;font-size:10px;font-weight:400}.progress-track{height:6px;background:#ffffff09;overflow:hidden;border-radius:10px}.progress-track>span{height:100%;display:block;background:linear-gradient(90deg,#499f91,#9aebc6);border-radius:10px;transition:width .7s}.team-reward{border-right:1px solid #ffffff0b;margin-right:10px;padding-right:22px;display:flex;align-items:center;gap:8px;font-size:11px;color:#aac4b6}.team-reward .icon{color:#a3c4a9;width:20px}.team-goal.completed{border-color:#79e5c060;box-shadow:0 0 30px #79e5c00b}footer{display:flex;justify-content:space-between;align-items:center;padding:22px 2px 20px;color:#5f7085;font-size:10px;gap:12px}footer>span{display:flex;align-items:center;gap:8px}.footer-star{color:#8baa9d}footer .icon{width:12px;height:12px}footer .subtle-button{font-size:10px;color:#8dbaa8}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);z-index:100;background:#243c36;border:1px solid #7ce6be55;color:#ddfff0;box-shadow:0 12px 50px #0007;border-radius:12px;padding:15px 24px;font-size:15px;opacity:0;pointer-events:none;transition:.25s;max-width:calc(100% - 30px);text-align:center}#toast.show{opacity:1;transform:translate(-50%)}dialog{background:#172233;color:#eaf0f8;border:1px solid #ffffff18;border-radius:21px;width:min(630px,calc(100vw - 30px));padding:26px;max-height:88dvh;box-shadow:0 35px 140px #0009;scrollbar-width:thin;scrollbar-color:#445268 transparent}dialog::backdrop{background:#050b15bd;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.modal-header{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:25px}.modal-header h2{font-size:24px;margin:0 0 9px;font-weight:800}.modal-header p{font-size:13px;color:#94a4b8;margin:0;line-height:1.7}.modal-header .icon-button{background:#ffffff05}.field-label{display:flex;flex-direction:column;gap:8px;color:#a4b4c6;font-size:12px;margin-bottom:17px}input:not([type=checkbox]),.roster-row select{background:#0f1928;border:1px solid #ffffff12;border-radius:8px;color:#e7eef6;padding:12px;width:100%;min-width:0}input[type=number]{direction:ltr;text-align:center}input::placeholder{color:#627084}.roster-row{display:flex;align-items:center;gap:9px;margin-bottom:10px}.row-number{width:20px;font-size:12px;color:#718496;text-align:center;flex-shrink:0}.roster-row input{flex:1}.roster-row select{width:100px;font-size:12px}.form-note{font-size:11px;line-height:1.8;color:#7f92a9;margin:16px 0}.form-error{color:#ffabb4;font-size:13px}.modal-actions{display:flex;gap:10px;margin-top:23px;padding-top:20px;border-top:1px solid #ffffff0c;flex-wrap:wrap}.primary-button,.secondary-button,.danger-button{border-radius:9px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;line-height:1.4}.primary-button{background:var(--mint);color:#173e34;font-weight:700}.secondary-button{border:1px solid #ffffff16;background:#ffffff03;color:#b9c6d8}.danger-button{border:1px solid #ff8c9a27;background:#ff8c9a0b;color:#fba4af}.primary-button .icon,.secondary-button .icon,.danger-button .icon{width:17px;height:17px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}dialog h3{font-size:15px;font-weight:700;margin:21px 0 14px}.settings-reward{display:flex;align-items:center;gap:18px}.settings-reward .field-label{flex:1}.settings-reward .points-input{flex:0 0 80px}.settings-reward .reward-object{margin-top:3px}.toggle-row{display:flex;justify-content:space-between;align-items:center;padding:17px 0;border-top:1px solid #ffffff0a;cursor:pointer;gap:20px}.toggle-row strong{display:block;font-size:13px;font-weight:500}.toggle-row small{display:block;font-size:11px;color:#7e90a7;margin-top:6px}.toggle-row input{accent-color:var(--mint);width:19px;height:19px;cursor:pointer;flex-shrink:0}.data-section{margin-top:25px;padding-top:4px;border-top:1px solid #ffffff0c}.data-section p{font-size:12px;color:#8294aa;line-height:1.8}.data-buttons{display:flex;gap:8px;flex-wrap:wrap}.data-buttons button{font-size:11px;padding:10px 13px}.gift-row{display:flex;align-items:center;gap:10px;border-bottom:1px solid #ffffff08;padding:8px 0}.gift-row-icon{color:#c1a9f0;margin-top:7px}.gift-row .points-input{width:65px;flex-shrink:0}.gift-text-field{flex:1;min-width:0}.gift-row .field-label{margin-bottom:10px;font-size:10px}.gift-row input{font-size:13px;padding:10px}.history-tabs{display:flex;background:#101b2c;border-radius:10px;padding:5px;gap:5px;margin-bottom:15px}.history-tabs button{flex:1;padding:10px;font-size:13px;color:#8c9eb4;border-radius:7px}.history-tabs button.active{background:#274238;color:var(--mint)}.history-list{max-height:52vh;overflow-y:auto}.history-row{display:flex;align-items:center;gap:13px;padding:16px 4px;border-bottom:1px solid #ffffff09}.history-icon{width:35px;height:35px;background:#ae9cec12;border-radius:10px;display:grid;place-items:center;color:#b8a7e5;flex-shrink:0}.history-row strong{font-size:14px}.history-row p{font-size:12px;color:#a1adc0;margin:7px 0 0;line-height:1.7}.history-points{color:var(--mint);font-size:13px;margin-right:auto;white-space:nowrap;padding-right:8px}.empty-state{color:#8296ae;text-align:center;font-size:14px;line-height:2;padding:30px 5px}.celebration-modal{text-align:center;width:min(470px,calc(100vw - 30px));overflow:hidden}.celebration-modal .modal-header{margin:0;height:30px}.celebration-modal .modal-header h2,.celebration-modal .modal-header p{display:none}.celebration-content{position:relative;padding:0 10px 15px}.celebration-content .eyebrow{justify-content:center;color:#d7be79;margin-top:15px}.celebration-symbol{font-size:90px;line-height:1.3;filter:drop-shadow(0 10px 30px #fbd58622);animation:gift-pop .7s cubic-bezier(.2,1.6,.4,1) both}.celebration-rays{position:absolute;width:270px;height:270px;background:radial-gradient(circle,#ecc87515,transparent 70%);top:-70px;left:50%;transform:translate(-50%);pointer-events:none}.celebration-content h2{font-size:31px;font-weight:800;color:#f3e7c4;margin:17px 0 12px}.celebration-content p{font-size:20px;line-height:1.8;margin:0 0 17px}.celebration-content>small{font-size:11px;color:#91a692;display:block}.celebration-content .primary-button{margin:26px auto 0;min-width:180px}@keyframes gift-pop{0%{transform:scale(.4) rotate(-15deg);opacity:0}to{transform:scale(1);opacity:1}}.fallback-message{color:#a2b6c9;text-align:center;margin-top:160px;font-size:13px}.fallback-labels{display:flex;justify-content:space-evenly;align-items:end;padding-bottom:90px}.fallback-labels .explorer-label{position:relative;top:auto!important;left:auto!important;transform:none}.context-lost:after{content:"العرض متوقف مؤقتًا. أعد تحميل الصفحة لاستعادة المشهد.";position:absolute;inset:45% 10%;text-align:center;color:#fff}.context-lost canvas{opacity:.2}@media(min-width:1450px){.scene-wrap{height:560px}.game-layout{grid-template-columns:290px minmax(0,1fr)}.student-card{min-height:74px}.reward-button{padding:13px 20px}.reward-dock{gap:25px}}@media(max-width:1150px){.game-layout{grid-template-columns:235px minmax(0,1fr);gap:15px}main{padding:28px 2.5% 0}.app-header{padding:0 2.5%}.reward-dock{padding:17px 13px;gap:12px}.reward-recipient{min-width:75px;gap:4px}.tiny-spark{display:none}.reward-recipient strong{max-width:75px}.reward-button{gap:8px;padding:11px 8px}.reward-button strong{font-size:10px}.reward-buttons{gap:6px}.reward-object{scale:.85}.undo-button{padding-right:8px}.students-panel{padding:20px 12px 0}.student-card{padding:10px 8px;gap:9px}.team-reward{padding-right:15px}.scene-wrap{height:510px}}@media(max-width:900px){.game-layout{grid-template-columns:1fr}.students-panel{order:2;padding:17px}.student-list{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.panel-subtitle{margin-bottom:14px}.little-note{display:none}.panel-bottom{margin-top:15px;padding-bottom:0}.journey-panel{order:1}.scene-wrap{height:480px}.reward-dock{padding:19px}.reward-recipient{min-width:105px}.reward-button strong{font-size:12px}.reward-button{justify-content:center}.team-copy p{max-width:220px;line-height:1.8}.team-reward{display:none}.team-progress{width:38%}.header-actions{gap:10px}.page-heading{margin-bottom:23px}.class-switch>span{display:none}h1{font-size:29px}.scene-tag{display:none}.destination{top:13px}footer{flex-wrap:wrap;justify-content:center;gap:14px 25px}}@media(max-width:600px){.app-header{height:78px;padding:0 18px}.brand strong{font-size:20px}.brand small{font-size:8px}.brand-mark{width:39px;height:39px;border-radius:12px}.brand-mark .icon{width:25px;height:25px}.header-actions{gap:5px}.header-actions .text-button span,.header-divider,.teacher-avatar{display:none}.header-actions .text-button{padding:6px}.header-actions .icon-button{width:29px}.header-actions .icon{width:18px}main{padding:23px 14px 0}.page-heading{display:block}.eyebrow{font-size:10px}h1{font-size:28px;margin-top:8px}h1+p{font-size:12px}.class-switch{width:max-content;margin-top:19px;padding:4px 9px}.class-switch>span{display:block;font-size:10px}.class-switch select{font-size:12px}.journey-top{padding:15px 13px}.journey-top strong{font-size:12px}.journey-top .text-button{font-size:10px}.journey-top .text-button .icon{width:14px}.scene-wrap{height:460px;min-width:640px}.scene-scroll{direction:rtl}.reward-dock{flex-wrap:wrap;padding:14px;gap:13px}.reward-recipient{flex:1}.reward-recipient small{font-size:9px}.reward-recipient strong{font-size:15px;max-width:200px}.reward-buttons{order:3;flex-basis:100%;gap:6px}.reward-button{padding:13px 5px;gap:6px;min-height:66px}.reward-button strong{font-size:10px}.reward-button small{font-size:9px}.reward-object{scale:.8}.undo-button{border:0;flex-direction:row;gap:7px}.student-list{grid-template-columns:repeat(2,1fr)}.student-card{gap:8px;padding:9px 7px}.student-info strong{font-size:13px}.student-info small{font-size:8px}.student-points{font-size:16px}.mini-avatar{width:32px}.students-panel{padding:15px 12px}.panel-heading h2{font-size:16px}.panel-subtitle{font-size:11px}.team-goal{padding:17px;flex-wrap:wrap;gap:12px}.team-copy{flex:1}.team-copy h2{font-size:15px}.team-copy p{max-width:none;font-size:10px}.team-progress{width:100%;max-width:none;margin-top:5px}.team-icon{width:41px;height:41px}footer{font-size:9px}.modal-header h2{font-size:21px}dialog{padding:21px 16px}.roster-row{gap:6px}.roster-row select{width:78px;padding:12px 5px}.row-number{width:14px}.gift-row{gap:6px}.gift-row-icon{display:none}.gift-row .icon-button{width:25px}.gift-row .points-input{width:58px}.settings-reward{gap:12px}.settings-reward .points-input{flex-basis:64px}.settings-reward .reward-object{display:none}.data-buttons{gap:6px}.data-buttons button{font-size:10px}.celebration-content h2{font-size:27px}.celebration-content p{font-size:18px}.form-grid{gap:10px}.field-label{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.student-gifts-bar{display:flex;align-items:center;gap:16px;padding:12px 23px;background:#1c293b;border-top:1px solid #ffffff0c}.student-gifts-bar .secondary-button{color:#e4d0ff;background:#b591ed12;border-color:#b591ed40;font-size:12px;white-space:nowrap}.student-gifts-bar>span{font-size:12px;color:#b9c5d5;line-height:1.7}.replay-gift{margin-right:auto;white-space:nowrap;font-size:11px}@media(max-width:600px){.student-gifts-bar{padding:12px;gap:10px;flex-wrap:wrap}.student-gifts-bar>span{font-size:11px}.replay-gift{padding:9px}}[hidden]{display:none!important}.gift-countdown{--remaining:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:114px;height:114px;margin:14px auto 22px;border-radius:50%;background:radial-gradient(closest-side,#172233 85%,transparent 87%),conic-gradient(#79e5c0 var(--remaining),#ffffff12 0);color:#79e5c0;font-size:44px;font-weight:800;line-height:1.1}.gift-countdown small{font-size:12px;font-weight:400;margin-top:5px;color:#acbaca}.celebration-content .countdown-caption{font-size:16px;color:#bcc9da;margin-top:12px}.revealed-gift{animation:gift-pop .55s ease-out both}.celebration-content #gift-reveal>small{display:block;color:#a4bfab;font-size:12px}.creator-credit{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 14px;color:#a6b8b8;font-size:12px;line-height:1.8;text-align:center}.creator-credit strong{font-weight:700;color:#e7d5aa}.credit-separator{color:#67786f;margin:0 5px}.creator-social{display:inline-flex;direction:ltr;align-items:center;gap:8px;padding:5px 11px 5px 5px;border:1px solid #d9bf7933;border-radius:11px;background:linear-gradient(135deg,#d9bf790d,#101925);color:#dfd2b5;box-shadow:inset 0 1px #ffffff09;transition:border-color .2s,box-shadow .2s}.creator-social:hover{border-color:#dcc08099;box-shadow:0 0 20px #d9bf7914}.creator-social bdi{font-family:Arial,sans-serif;font-size:11px;letter-spacing:.3px}.x-emblem{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;background:linear-gradient(140deg,#e8d6a4,#ad8e4e);color:#17202c;box-shadow:inset 0 1px #fff5,0 2px 5px #0003}.x-emblem svg{width:14px;height:14px}.creator-credit #demo-button{flex-basis:100%;justify-content:center}@media(max-width:1150px){footer{flex-wrap:wrap}.creator-credit{order:3;width:100%}}@media(max-width:600px){.creator-credit{font-size:11px;gap:9px}.creator-social{padding:4px 9px 4px 4px}}.altitude-lines{z-index:3}.explorer-label span{min-width:0}.explorer-label b{flex-shrink:0}.start-line span{top:38px}.student-list{max-height:490px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#344354 transparent;padding:5px;margin:-5px}.compact-label{flex-direction:column;gap:2px;padding:4px 5px;min-width:42px}.compact-label span{max-width:100%;font-size:11px}.compact-label b{border:0;padding:0;font-size:9px}.start-line span{display:none}.scene-wrap:after{content:"✧ خط انطلاق التميّز ✧";position:absolute;bottom:9px;left:50%;transform:translate(-50%);color:#8eb5b1;font-size:10px;letter-spacing:.5px;white-space:nowrap;z-index:4}.reduced-motion *,.reduced-motion *:before,.reduced-motion *:after{animation:none!important;transition:none!important}@media(max-width:900px){.student-list{max-height:none}}@media(max-width:600px){.scene-hint{display:none}}
