.kids-game-container{background:linear-gradient(145deg,#ffffff,#f7fbf9 60%,#eefbf5);border-radius:30px;padding:0;box-shadow:0 12px 40px rgba(0,181,111,.08),0 2px 12px rgba(0,0,0,.06);border:1px solid rgba(0,181,111,.15);max-width:960px;margin:0 auto;position:relative;overflow:hidden;font-family:Inter,system-ui,-apple-system,sans-serif;animation:containerFadeIn .7s cubic-bezier(.16,1,.3,1)}@keyframes containerFadeIn{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.game-header{display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,#0a3d2b,#0d5c40);padding:14px 24px;border-radius:0;flex-wrap:wrap}.header-level-info{display:flex;align-items:center;gap:12px;flex-shrink:0}.header-level-badge{background:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:4px 12px;font-size:12px;font-weight:700;color:#fff;white-space:nowrap}.header-level-num{font-size:11px;color:rgba(255,255,255,.6);margin:0;text-transform:uppercase;letter-spacing:.8px}.header-level-name{font-size:16px;font-weight:700;color:#fff;margin:0;line-height:1.2}.header-xp-section{flex:1 1;min-width:160px}.header-xp-label{display:flex;justify-content:space-between;font-size:11px;color:rgba(255,255,255,.7);margin-bottom:6px;font-weight:600;letter-spacing:.3px}.header-xp-value{color:#FFD700;font-weight:800}.header-xp-track{height:8px;background:rgba(255,255,255,.15);border-radius:6px;overflow:hidden;position:relative}.header-xp-fill{height:100%;background:linear-gradient(90deg,#00D084,#FFD700);border-radius:6px;min-width:4px}.xp-shimmer{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3) 50%,transparent);background-size:200% 100%;animation:shimmerXP 2s infinite}@keyframes shimmerXP{0%{background-position:200% 0}to{background-position:-200% 0}}.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.header-stars{display:flex;gap:4px;font-size:18px}.header-star{display:inline-block}.header-star.star-empty{opacity:.3}.header-progress-text{font-size:11px;color:rgba(255,255,255,.6);margin:0;font-weight:600}.game-nav-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#f0faf6;border-bottom:1px solid #c2eedc;gap:10px;flex-wrap:wrap}.hint-toggle-btn,.nav-map-btn{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid #10b981;color:#065f46;border-radius:8px;padding:6px 14px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease;white-space:nowrap}.hint-toggle-btn:hover,.nav-map-btn:hover{background:#10b981;color:#fff;transform:translateY(-1px)}.hint-toggle-row{display:flex;gap:8px}.game-hint-box{display:flex;align-items:flex-start;gap:10px;background:#f0faf6;border-left:4px solid #10b981;border-bottom:1px solid #c2eedc;padding:10px 20px}.game-hint-box p{margin:0;font-size:13.5px;color:#065f46;font-weight:500;line-height:1.5}.hint-icon-badge{font-size:18px;flex-shrink:0;margin-top:1px}.level-desc-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#fff;border-bottom:1px solid #e8f5ee;gap:12px;flex-wrap:wrap}.level-desc-text{font-size:14px;color:#334155;font-weight:500}.kids-category-tag{display:inline-block;background:#e6f7f0;color:#00B56F;padding:4px 10px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;white-space:nowrap;flex-shrink:0}.game-main-area{display:grid;grid-template-columns:auto 1fr;grid-gap:0;gap:0;padding:20px;grid-gap:20px;gap:20px;align-items:start}.game-board-section{flex-shrink:0}.game-controls-section{display:flex;flex-direction:column;gap:14px;min-width:0}.game-board-wrapper{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.game-board-grid{background:#f8fafc;border:2px solid #e2e8f0;border-radius:14px;padding:10px}.game-cell{border-radius:8px;display:flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}.cell-floor{background:#ffffff;border:1px dashed #e2e8f0}.cell-floor-inner{position:absolute;inset:0;border-radius:7px;background:repeating-linear-gradient(45deg,transparent,transparent 6px,rgba(0,181,111,.03) 0,rgba(0,181,111,.03) 7px)}.cell-obstacle{background:#fef2f2;border:1px solid #fca5a5;border-radius:8px}.cell-water{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:1px solid #93c5fd;border-radius:8px}.cell-goal{background:rgba(255,215,0,.06);border:2px solid #ffd700;border-radius:8px;box-shadow:0 0 12px rgba(255,215,0,.25)}.cell-icon,.goal-glow{font-size:inherit;line-height:1}.cell-icon,.goal-glow,.robot-sprite{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none}.robot-sprite{display:flex;align-items:center;justify-content:center;z-index:4;filter:drop-shadow(0 2px 6px rgba(0,0,0,.12))}.robot-sprite.robot-crashed{filter:drop-shadow(0 0 8px rgba(239,68,68,.5))}.robot-sprite.robot-success{filter:drop-shadow(0 0 10px rgba(0,181,111,.6))}.board-compass{display:flex;justify-content:flex-start}.compass-label{font-size:12px;color:#64748b;font-weight:600;background:#f1f5f9;border:1px solid #e2e8f0;padding:4px 10px;border-radius:6px}.block-toolbox{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;padding:14px}.toolbox-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.toolbox-label{font-size:13px;font-weight:800;color:#334155;letter-spacing:-.2px}.toolbox-tip{font-size:11px;color:#94a3b8}.toolbox-section{margin-bottom:10px}.toolbox-section:last-of-type{margin-bottom:0}.toolbox-section-title{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#94a3b8;font-weight:700;margin:0 0 6px}.toolbox-blocks{display:flex;flex-direction:column;gap:6px}.toolbox-footer{margin-top:10px;padding-top:10px;border-top:1px dashed #e2e8f0}.toolbox-footer p{font-size:12px;color:#94a3b8;margin:0;text-align:center}.block-btn{font-family:Inter,system-ui,sans-serif}.block-notch-bottom,.block-notch-top{position:absolute;width:10px;height:5px;border-radius:0 0 5px 5px;left:14px}.block-notch-top{top:-5px;border-radius:5px 5px 0 0}.block-notch-bottom{bottom:-5px;border-radius:0 0 5px 5px}.program-area{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;padding:14px;min-height:160px}.program-area-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.program-area-title{font-size:13px;font-weight:800;color:#334155}.program-block-count{font-size:11px;background:#e2e8f0;color:#64748b;padding:2px 8px;border-radius:10px;font-weight:700}.program-sequence-wrapper{min-height:120px;background:#fff;border:2px dashed #cbd5e1;border-radius:10px;padding:10px;transition:border-color .2s ease}.program-sequence-wrapper:hover{border-color:#10b981}.program-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100px;gap:4px}.empty-state-icon{font-size:28px}.program-empty-state p{margin:0;font-size:13px;color:#94a3b8;font-weight:600}.empty-state-sub{font-size:12px!important;color:#cbd5e1!important;font-weight:400!important}.program-block-list{display:flex;flex-direction:column;gap:4px}.program-block-item{border-radius:10px}.program-drop-zone{margin-top:8px;border:2px dashed #10b981;border-radius:8px;padding:6px;text-align:center;font-size:12px;color:#10b981;font-weight:700;opacity:0;transition:opacity .2s ease}.program-area:hover .program-drop-zone{opacity:1}.game-action-bar{display:flex;gap:10px}.action-btn{flex:1 1;padding:12px;border:none;border-radius:10px;font-size:15px;font-weight:800;cursor:pointer;letter-spacing:-.2px;font-family:Inter,system-ui,sans-serif;transition:box-shadow .2s ease,opacity .2s ease}.action-btn:disabled{opacity:.45;cursor:not-allowed}.btn-run{background:linear-gradient(135deg,#00B56F,#10b981);color:#fff;box-shadow:0 4px 0 #008f58,0 2px 12px rgba(0,181,111,.3)}.btn-run:not(:disabled):active{box-shadow:none;transform:translateY(2px)}.btn-reset{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 0 #b91c1c,0 2px 12px rgba(239,68,68,.25)}.btn-reset:not(:disabled):active{box-shadow:none;transform:translateY(2px)}.level-map{padding:16px 20px;background:#f0faf6;border-bottom:1px solid #c2eedc}.level-map-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.level-map-title{font-size:14px;font-weight:800;color:#065f46}.level-map-nodes{align-items:flex-end;padding-bottom:6px}.level-node-wrapper{position:relative}.level-connector{width:16px;margin-top:18px}.level-map-nodes{gap:4px}.level-connector{margin-top:19px;align-self:flex-start}.connector-active{background:#10b981}.connector-inactive{background:#cbd5e1}.level-map-nodes{gap:0;overflow-x:auto;flex-wrap:nowrap}.level-node-wrapper{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.level-connector{display:none}.level-map-nodes{display:flex;align-items:flex-start}.level-node-wrapper{display:inline-flex;flex-direction:row;align-items:flex-start}.level-connector{width:14px;height:3px;border-radius:2px;margin-top:20px;flex-shrink:0}.level-node-col{flex-direction:column;gap:4px}.level-node,.level-node-col{display:flex;align-items:center}.level-node{width:40px;height:40px;border-radius:50%;border:2.5px solid;font-size:13px;font-weight:800;justify-content:center;cursor:pointer;position:relative;transition:transform .15s ease;font-family:Inter,system-ui,sans-serif}.node-available{background:#fff;border-color:#10b981;color:#065f46}.node-current{background:#10b981;border-color:#10b981;color:#fff;box-shadow:0 0 0 4px rgba(16,185,129,.2)}.node-completed{background:#d1fae5;border-color:#10b981;color:#065f46}.node-locked{background:#f1f5f9;border-color:#cbd5e1;color:#94a3b8;cursor:not-allowed}.node-number{line-height:1}.node-pulse-ring{position:absolute;inset:-6px;border:2.5px solid #10b981;border-radius:50%}.node-label{display:flex;flex-direction:column;align-items:center;gap:1px}.node-name{font-size:9px;font-weight:600;color:#64748b;white-space:nowrap;max-width:52px;overflow:hidden;text-overflow:ellipsis;text-align:center}.node-badge{font-size:10px}.level-map-footer{margin-top:12px;display:flex;flex-direction:column;gap:6px}.map-progress-bar{height:6px;background:#c2eedc;border-radius:4px;overflow:hidden}.map-progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#FFD700);border-radius:4px;min-width:4px}.map-progress-text{font-size:12px;color:#065f46;font-weight:700;margin:0;text-align:right}.modal-overlay{position:absolute;inset:0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;z-index:50}.fail-overlay,.modal-overlay{background:rgba(255,255,255,.55)}.success-modal-card{background:linear-gradient(145deg,#fff,#f0fdf8);border-radius:24px;padding:36px 32px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,181,111,.15),0 2px 8px rgba(0,0,0,.08);border:1px solid rgba(0,181,111,.2);max-width:420px;width:90%;position:relative;overflow:hidden}.success-glow-ring{position:absolute;top:-60px;left:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(0,181,111,.15) 0,transparent 70%);pointer-events:none}.success-emoji{font-size:56px;margin-bottom:12px}.success-title{font-size:26px;font-weight:800;color:#10b981;margin:0 0 8px;letter-spacing:-.5px}.success-subtitle{font-size:14px;color:#475569;margin:0 0 18px;line-height:1.5}.success-stars-row{font-size:32px;letter-spacing:8px;margin-bottom:16px}.modal-star-empty{opacity:.25}.success-stats{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:20px}.stat-pill{display:flex;align-items:center;gap:5px;background:#f0fdf8;border:1px solid #c2eedc;border-radius:20px;padding:5px 12px;font-size:13px;font-weight:700;color:#065f46}.stat-pill-gold{background:#fffbeb;border-color:#FCD34D;color:#92400e}.success-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.btn-success-primary{background:linear-gradient(135deg,#00B56F,#10b981);color:#fff;border:none;border-radius:12px;padding:12px 24px;font-size:15px;font-weight:800;box-shadow:0 4px 0 #008f58,0 2px 14px rgba(0,181,111,.3);letter-spacing:-.2px}.btn-success-primary,.btn-success-secondary{cursor:pointer;font-family:Inter,system-ui,sans-serif}.btn-success-secondary{background:#f1f5f9;color:#475569;border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 20px;font-size:14px;font-weight:700}.free-limit-msg{font-size:14px;color:#475569;margin:0 0 12px;line-height:1.5}.free-limit-msg span{display:block;font-size:13px;color:#64748b;margin-top:4px}.fail-modal-card{background:linear-gradient(145deg,#fff,#fff5f5);border-radius:24px;padding:36px 32px 28px;text-align:center;box-shadow:0 24px 60px rgba(239,68,68,.12),0 2px 8px rgba(0,0,0,.08);border:1px solid rgba(239,68,68,.18);max-width:380px;width:90%}.fail-emoji{font-size:64px;margin-bottom:12px}.fail-title{font-size:24px;font-weight:800;color:#ef4444;margin:0 0 8px;letter-spacing:-.5px}.fail-message{font-size:15px;color:#475569;font-weight:600;margin:0 0 10px}.fail-tip{font-size:13px;color:#64748b;background:#fef3c7;border-radius:8px;padding:8px 14px;margin:0 0 18px;display:inline-block}.btn-fail-retry{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:12px;padding:12px 28px;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 4px 0 #b91c1c,0 2px 12px rgba(239,68,68,.25);font-family:Inter,system-ui,sans-serif}.achievement-toast{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:6px;z-index:60}.achievement-item{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#0a3d2b,#0d5c40);color:#fff;border-radius:12px;padding:10px 18px;font-size:14px;box-shadow:0 6px 20px rgba(0,0,0,.2);white-space:nowrap}.achievement-item span:first-child{font-size:22px}@media (max-width:768px){.game-main-area{grid-template-columns:1fr;padding:14px;gap:14px}.game-board-section{overflow-x:auto}.game-board-grid{min-width:max-content}.game-header{padding:10px 14px;gap:10px}.header-xp-section{display:none}.game-nav-bar,.level-desc-bar{padding:8px 14px}.fail-modal-card,.success-modal-card{padding:24px 20px 20px}.success-title{font-size:22px}.fail-title{font-size:20px}.action-btn{font-size:14px;padding:10px}.level-map{padding:12px 14px}.level-map-nodes{gap:2px}}@media (max-width:480px){.game-header{flex-wrap:wrap;gap:8px}.header-right{display:none}.success-actions{flex-direction:column}.btn-success-primary,.btn-success-secondary{width:100%}}