:root{--theme-primary:#0ff;--theme-secondary:#f0f;--theme-background:#0a0a0a;--theme-surface:#1a1a2e;--theme-accent:#16213e;--gradient-primary:linear-gradient(135deg,var(--theme-primary),var(--theme-secondary));--gradient-surface:linear-gradient(145deg,var(--theme-surface),#0f1419);--gradient-glow:radial-gradient(circle,var(--theme-primary)40 0%,transparent 70%);--space-xs:clamp(.25rem,1vw,.5rem);--space-sm:clamp(.5rem,2vw,1rem);--space-md:clamp(1rem,3vw,1.5rem);--space-lg:clamp(1.5rem,4vw,2rem);--space-xl:clamp(2rem,5vw,3rem);--space-2xl:clamp(3rem,6vw,4rem);--font-title:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-body:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"Fira Code",monospace;--shadow-glow:0 0 30px var(--theme-primary)40;--shadow-deep:0 25px 50px -12px rgba(0,0,0,.4);--border-glow:1px solid var(--theme-primary)60;--blur-glass:blur(16px)saturate(180%);--transition-smooth:all .3s cubic-bezier(.4,0,.2,1);--transition-bounce:all .4s cubic-bezier(.68,-.55,.265,1.55);--transition-slow:all .6s cubic-bezier(.4,0,.2,1)}*{box-sizing:border-box}body{background:var(--theme-background);color:#fff;font-family:var(--font-body);background-image:radial-gradient(circle at 25% 25%,var(--theme-primary)10 0%,transparent 50%),radial-gradient(circle at 75% 75%,var(--theme-secondary)10 0%,transparent 50%);min-height:100vh;margin:0;padding:0;overflow-x:hidden}.tic-tac-toe-enhanced{width:100%;min-height:100vh;padding:var(--space-sm);flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:relative;overflow-x:hidden}.game-interface{z-index:10;width:100%;max-width:1200px;margin:0 auto;position:relative}.game-header-enhanced{gap:var(--space-sm);margin-bottom:var(--space-md);padding:var(--space-sm);border:var(--border-glow);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:rgba(26,26,46,.9);border-radius:12px;flex-direction:column;align-items:center;display:flex;position:relative;overflow:hidden}.game-header-enhanced:before{content:"";background:var(--gradient-primary);height:2px;animation:3s ease-in-out infinite alternate headerGlow;position:absolute;top:0;left:0;right:0}@keyframes headerGlow{0%{opacity:.5;transform:scaleX(.8)}to{opacity:1;transform:scaleX(1)}}.game-title{background:var(--gradient-primary);-webkit-text-fill-color:transparent;letter-spacing:-.05em;text-shadow:0 0 30px var(--theme-primary);-webkit-background-clip:text;background-clip:text;margin:0;font-size:max(1.5rem,min(5vw,3rem));font-weight:900;position:relative}.title-spectacular{text-shadow:2px 0px 0px var(--theme-secondary),4px 0px 10px var(--theme-primary)60;font-size:4rem;display:inline-block;transform:perspective(300px)rotateY(-15deg)}.title-subtitle{color:var(--theme-secondary);letter-spacing:.2em;text-transform:uppercase;margin-top:-.5rem;font-size:1rem;font-weight:500;display:block}.title-with-logo{align-items:center;gap:var(--space-md);display:flex}.game-logo{background:var(--gradient-surface);border:var(--border-glow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;justify-content:center;align-items:center;width:56px;height:56px;animation:4s ease-in-out infinite alternate logoGlow;display:flex}.logo-grid{grid-template-columns:repeat(3,1fr);gap:2px;width:36px;height:36px;display:grid}.logo-cell{opacity:.9;transition:var(--transition-smooth);border-radius:2px;justify-content:center;align-items:center;font-size:10px;animation:8s linear infinite logoRotate;display:flex}.logo-cell:nth-child(odd){color:var(--theme-primary);text-shadow:0 0 8px var(--theme-primary)60;animation-delay:-4s}.logo-cell:nth-child(2n){color:var(--theme-secondary);text-shadow:0 0 8px var(--theme-secondary)60}.logo-cell:hover{opacity:1;transform:scale(1.2)}@keyframes logoGlow{0%{box-shadow:0 0 15px var(--theme-primary)20;transform:scale(1)}to{box-shadow:0 0 25px var(--theme-secondary)40;transform:scale(1.05)}}@keyframes logoRotate{0%,to{opacity:.9;transform:scale(1)rotate(0)}50%{opacity:1;transform:scale(1.1)rotate(180deg)}}.session-info{gap:var(--space-lg);align-items:center;display:flex}.session-stat{padding:var(--space-sm)var(--space-md);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;flex-direction:column;align-items:center;display:flex}.stat-label{opacity:.7;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem}.stat-value{color:var(--theme-primary);text-shadow:0 0 10px var(--theme-primary)60;font-size:1.25rem;font-weight:700}.power-ups-panel{gap:var(--space-sm);padding:var(--space-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(26,26,46,.9);border:1px solid rgba(255,255,255,.1);border-radius:12px;flex-direction:column;width:100%;max-width:min(100%,500px);display:flex}.control-group{align-items:center;gap:var(--space-md);display:flex}.mode-selector label{color:var(--theme-secondary);margin-right:var(--space-md);font-weight:600}.mode-buttons{gap:var(--space-sm);display:flex}.mode-btn{padding:var(--space-sm)var(--space-md);color:#fff;cursor:pointer;transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:.875rem;font-weight:500;position:relative;overflow:hidden}.mode-btn:before{content:"";background:var(--gradient-primary);opacity:0;transition:var(--transition-smooth);z-index:-1;position:absolute;top:0;bottom:0;left:0;right:0}.mode-btn:hover:before{opacity:.1}.mode-btn.active{background:var(--gradient-primary);border-color:var(--theme-primary);box-shadow:var(--shadow-glow);transform:translateY(-2px)}.settings-group{justify-content:center}.setting-btn{padding:var(--space-sm)var(--space-md);color:#fff;cursor:pointer;transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:.875rem;position:relative}.setting-btn.active{background:var(--theme-accent);border-color:var(--theme-primary);box-shadow:0 0 15px var(--theme-primary)40}.difficulty-select{color:#fff;padding:var(--space-sm)var(--space-md);cursor:pointer;transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:.875rem}.difficulty-select:focus{border-color:var(--theme-primary);box-shadow:0 0 0 2px var(--theme-primary)40;outline:none}.difficulty-setting{gap:var(--space-xs);flex-direction:column;display:flex}.difficulty-setting label{color:var(--theme-secondary);text-shadow:0 0 10px var(--theme-secondary)40;font-size:.875rem;font-weight:600}.select-wrapper{display:inline-block;position:relative}.styled-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--gradient-surface);border:var(--border-glow);color:#fff;padding:var(--space-sm)calc(var(--space-lg) + 20px)var(--space-sm)var(--space-md);cursor:pointer;transition:var(--transition-bounce);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;min-width:140px;font-size:.875rem;font-weight:500}.styled-select:hover{box-shadow:var(--shadow-glow);border-color:var(--theme-primary);transform:translateY(-2px)}.styled-select:focus{border-color:var(--theme-secondary);box-shadow:0 0 0 3px var(--theme-secondary)30;outline:none;transform:translateY(-2px)}.styled-select option{background:var(--theme-surface);color:#fff;padding:var(--space-sm);font-weight:500}.select-arrow{right:var(--space-md);color:var(--theme-primary);pointer-events:none;transition:var(--transition-smooth);font-size:1.2rem;font-weight:700;position:absolute;top:50%;transform:translateY(-50%)}.select-wrapper:hover .select-arrow{color:var(--theme-secondary);transform:translateY(-50%)scale(1.1)}.action-buttons{justify-content:flex-end}.action-btn{padding:var(--space-sm)var(--space-lg);background:var(--gradient-surface);border:var(--border-glow);color:#fff;cursor:pointer;transition:var(--transition-bounce);border-radius:12px;font-weight:600;position:relative;overflow:hidden}.action-btn:hover{box-shadow:var(--shadow-glow);transform:translateY(-3px)}.action-btn:active{transform:translateY(-1px)}.game-area{margin-bottom:var(--space-md);padding:var(--space-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(15,20,25,.8);border:1px solid rgba(255,255,255,.05);border-radius:12px;justify-content:center;align-items:center;width:100%;max-width:100%;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 2px 10px rgba(0,0,0,.3),0 20px 40px rgba(0,0,0,.4)}.game-3d{gap:var(--space-2xl);grid-template-columns:1fr auto;align-items:start;display:grid}.board-3d-container{align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.board-3d{box-shadow:var(--shadow-deep);border:2px solid var(--theme-primary);border-radius:16px;position:relative;overflow:hidden}.game-status-3d{text-align:center;padding:var(--space-md)var(--space-lg);background:var(--gradient-surface);border:var(--border-glow);border-radius:12px;min-width:300px}.status-message{color:var(--theme-primary);text-shadow:0 0 10px var(--theme-primary)60;font-size:1.125rem;font-weight:600}.frozen{color:#7dd3fc;animation:1s ease-in-out infinite alternate freeze-pulse}@keyframes freeze-pulse{0%{opacity:.6}to{opacity:1}}.double-move{color:var(--theme-secondary);margin-left:var(--space-sm);animation:.5s ease-in-out infinite alternate lightning-flash}@keyframes lightning-flash{0%{text-shadow:0 0 5px var(--theme-secondary)}to{text-shadow:0 0 15px var(--theme-secondary)}}.level-indicator{padding:var(--space-md);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px}.levels{gap:var(--space-sm);display:flex}.level{padding:var(--space-sm)var(--space-md);cursor:pointer;transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:.875rem;font-weight:500}.level.active{background:var(--theme-primary);color:var(--theme-background);box-shadow:0 0 15px var(--theme-primary)60}.level-display{align-items:center;gap:var(--space-sm);display:flex}.level-info{flex-direction:column;gap:4px;min-width:120px;display:flex}.level-progress-bar{background:rgba(255,255,255,.1);border-radius:3px;width:100%;height:6px;overflow:hidden}.level-progress-fill{background:linear-gradient(90deg,var(--theme-primary),var(--theme-secondary));border-radius:3px;height:100%;transition:width .3s}.level-progress-text{color:rgba(255,255,255,.7);font-size:.75rem}.game-controls-2d .game-button{background:linear-gradient(135deg,var(--theme-primary),var(--theme-secondary));border:2px solid var(--theme-primary);color:#fff;cursor:pointer;box-shadow:0 4px 15px rgba(0,0,0,.2),0 0 20px var(--theme-primary)30;text-transform:none;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.game-controls-2d .game-button:hover{box-shadow:0 6px 25px rgba(0,0,0,.3),0 0 30px var(--theme-primary)50;border-color:var(--theme-secondary);transform:translateY(-2px)scale(1.05)}.game-controls-2d .game-button:active{transform:translateY(0)scale(.98)}.tutorial-content h3{color:var(--theme-primary);margin-bottom:var(--space-md);text-shadow:0 0 10px var(--theme-primary)50;align-items:center;gap:var(--space-sm);font-size:1.5rem;font-weight:700;display:flex}.powerups-guide h4,.tutorial-content h4{color:var(--theme-secondary);margin-bottom:var(--space-sm);text-shadow:0 0 8px var(--theme-secondary)40;border-left:3px solid var(--theme-secondary);padding-left:var(--space-sm);font-size:1.2rem;font-weight:600}.powerup-item h4{border-left:none;margin-bottom:4px;padding-left:0}.tutorial-tabs{gap:var(--space-sm);margin-bottom:var(--space-lg);padding-bottom:var(--space-sm);border-bottom:1px solid rgba(255,255,255,.1);display:flex}.tutorial-tabs .tab-btn{color:rgba(255,255,255,.7);padding:var(--space-sm)var(--space-md);cursor:pointer;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px 8px 0 0;align-items:center;gap:6px;font-size:.875rem;font-weight:500;transition:all .3s;display:flex}.tutorial-tabs .tab-btn:hover{color:var(--theme-primary);border-color:var(--theme-primary);background:rgba(255,255,255,.1);transform:translateY(-2px)}.tutorial-tabs .tab-btn.active{background:linear-gradient(135deg,var(--theme-primary),var(--theme-secondary));color:#fff;border-color:var(--theme-primary);box-shadow:0 4px 15px var(--theme-primary)30;font-weight:600}.tutorial-tabs .tab-btn.active:hover{box-shadow:0 6px 20px var(--theme-primary)40;transform:translateY(-2px)}.powerups-panel{background:var(--gradient-surface);border:var(--border-glow);padding:var(--space-lg);border-radius:16px;min-width:300px}.powerups-panel h3{margin:0 0 var(--space-md);color:var(--theme-secondary);text-align:center;text-shadow:0 0 10px var(--theme-secondary)60;font-size:1.25rem;font-weight:700}.powerups-grid{gap:var(--space-md);margin-bottom:var(--space-lg);grid-template-columns:repeat(2,1fr);display:grid}.powerup-btn{padding:var(--space-md);cursor:pointer;transition:var(--transition-bounce);text-align:center;color:#fff;align-items:center;gap:var(--space-xs);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:12px;flex-direction:column;display:flex;position:relative;overflow:hidden}.powerup-btn:before{content:"";background:var(--gradient-primary);opacity:0;transition:var(--transition-smooth);z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.powerup-btn:hover:before{opacity:.1}.powerup-btn.available:hover{transform:translateY(-3px)scale(1.05);box-shadow:0 10px 25px rgba(0,0,0,.3)}.powerup-btn.active{border-color:var(--theme-primary);box-shadow:var(--shadow-glow);background:rgba(var(--theme-primary),.1)}.powerup-btn.cooldown{opacity:.5;cursor:not-allowed}.powerup-icon{z-index:1;font-size:1.5rem;position:relative}.powerup-name{text-transform:uppercase;letter-spacing:.05em;z-index:1;font-size:.75rem;font-weight:600;position:relative}.cooldown-timer{color:#fff;z-index:2;background:rgba(255,0,0,.8);border-radius:4px;padding:2px 6px;font-size:.625rem;font-weight:700;position:absolute;top:4px;right:4px}.powerup-instructions{padding:var(--space-md);background:rgba(var(--theme-primary),.1);border:1px solid var(--theme-primary);text-align:center;border-radius:8px}.powerup-instructions p{margin:0 0 var(--space-xs);font-size:.875rem}.game-2d{gap:var(--space-2xl);grid-template-columns:1fr auto;align-items:start;max-width:1000px;margin:0 auto;display:grid}.board-2d-container{align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.board-2d{gap:var(--space-sm);background:var(--gradient-surface);padding:var(--space-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-deep);border:var(--border-glow);grid-template-columns:repeat(3,1fr);display:grid;position:relative;transform:translateZ(0)}.cell-2d{border-radius:var(--radius);width:100px;height:100px;color:var(--text-primary);cursor:pointer;transition:var(--transition-bounce);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.2);justify-content:center;align-items:center;font-size:2.5rem;font-weight:900;display:flex;position:relative;overflow:hidden}.cell-2d:before{content:"";opacity:0;transition:var(--transition-smooth);background:linear-gradient(135deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,0) 100%);position:absolute;top:0;bottom:0;left:0;right:0}.cell-2d:hover:not(:disabled){border-color:var(--theme-primary);transform:translateY(-3px)scale(1.05);box-shadow:0 10px 25px rgba(0,0,0,.3)}.cell-2d.cell-x{color:var(--theme-primary);text-shadow:0 0 15px var(--theme-primary)60}.cell-2d.cell-o{color:var(--theme-secondary);text-shadow:0 0 15px var(--theme-secondary)60}.cell-2d.winning-cell{border-color:var(--theme-primary);background:rgba(99,102,241,.2);animation:1.5s infinite pulse}.cell-2d.shielded-cell{border-color:#10b981;box-shadow:0 0 15px rgba(16,185,129,.4)}.cell-content-2d{animation:.3s cubic-bezier(.68,-.55,.265,1.55) popIn}.shield-indicator{opacity:.8;font-size:.875rem;position:absolute;top:4px;right:4px}.winning-line-overlay{pointer-events:none;z-index:10;position:absolute;top:0;bottom:0;left:0;right:0}.winning-line-2d{background:var(--theme-primary);box-shadow:0 0 20px var(--theme-primary);opacity:0;border-radius:2px;animation:.5s ease-out .3s forwards lineAppear;position:absolute}.winning-line-2d.horizontal{width:90%;height:4px;top:50%;left:5%;transform:translateY(-50%)}.winning-line-2d.vertical{width:4px;height:90%;top:5%;left:50%;transform:translate(-50%)}.winning-line-2d.diagonal-main{width:4px;height:127%;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.winning-line-2d.diagonal-anti{width:4px;height:127%;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.game-status-2d{text-align:center;padding:var(--space-md)var(--space-lg);background:var(--gradient-surface);border:var(--border-glow);border-radius:12px;min-width:320px}.powerups-panel-2d{background:var(--gradient-surface);border:var(--border-glow);padding:var(--space-lg);border-radius:16px;min-width:300px}.powerups-panel-2d h3{margin:0 0 var(--space-md);color:var(--theme-secondary);text-align:center;text-shadow:0 0 10px var(--theme-secondary)60;font-size:1.25rem;font-weight:700}.powerups-grid-2d{gap:var(--space-sm);margin-bottom:var(--space-lg);grid-template-columns:repeat(2,1fr);display:grid}.powerup-btn-2d{padding:var(--space-sm);cursor:pointer;transition:var(--transition-bounce);text-align:center;color:#fff;align-items:center;gap:var(--space-xs);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px;flex-direction:column;font-size:.75rem;display:flex;position:relative}.powerup-btn-2d.available:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 5px 15px rgba(0,0,0,.3)}.powerup-btn-2d.active{border-color:var(--theme-primary);box-shadow:0 0 15px var(--theme-primary)40;background:rgba(var(--theme-primary),.1)}.powerup-btn-2d.cooldown{opacity:.5;cursor:not-allowed}.game-controls-2d,.game-controls-3d{justify-content:center;gap:var(--space-md);margin-top:var(--space-lg);display:flex}.status-bar{padding:var(--space-md)var(--space-lg);-webkit-backdrop-filter:var(--blur-glass);backdrop-filter:var(--blur-glass);background:rgba(26,26,46,.8);border:1px solid rgba(255,255,255,.1);border-radius:12px;justify-content:space-between;align-items:center;display:flex}.status-item{align-items:center;gap:var(--space-sm);font-size:.875rem;font-weight:500;display:flex}.status-icon{font-size:1rem}.stats-dashboard-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;padding:var(--space-lg);background:rgba(0,0,0,.8);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.stats-dashboard{background:var(--gradient-surface);border:var(--border-glow);width:100%;max-width:900px;max-height:90vh;box-shadow:var(--shadow-deep);border-radius:24px;animation:.3s ease-out modalSlideIn;overflow:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(30px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}.stats-header{padding:var(--space-lg)var(--space-xl);border-bottom:1px solid rgba(255,255,255,.1);justify-content:space-between;align-items:center;display:flex}.stats-header h2{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.75rem;font-weight:700}.close-btn{color:rgba(255,255,255,.7);cursor:pointer;padding:var(--space-sm);transition:var(--transition-smooth);background:0 0;border:none;border-radius:8px;font-size:1.5rem}.close-btn:hover{color:#fff;background:rgba(255,255,255,.1)}.stats-tabs{border-bottom:1px solid rgba(255,255,255,.1);display:flex}.tab{padding:var(--space-md)var(--space-lg);color:rgba(255,255,255,.7);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;flex:1;font-weight:500;position:relative}.tab.active{color:var(--theme-primary)}.tab.active:after{content:"";background:var(--theme-primary);height:2px;position:absolute;bottom:0;left:0;right:0}.stats-content{padding:var(--space-xl);max-height:60vh;overflow-y:auto}.stats-grid{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.stat-card{padding:var(--space-lg);align-items:center;gap:var(--space-md);transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;display:flex;position:relative;overflow:hidden}.stat-card:before{content:"";background:var(--gradient-primary);opacity:0;height:3px;transition:var(--transition-smooth);position:absolute;top:0;left:0;right:0}.stat-card:hover:before{opacity:1}.stat-icon{opacity:.8;font-size:2rem}.stat-info{flex:1}.stat-value{color:var(--theme-primary);text-shadow:0 0 10px var(--theme-primary)40;font-size:2rem;font-weight:900;line-height:1}.stat-label{opacity:.8;text-transform:uppercase;letter-spacing:.05em;margin-top:var(--space-xs);font-size:.875rem}.stat-card.primary .stat-icon{color:var(--theme-primary)}.stat-card.success .stat-icon{color:#10b981}.stat-card.warning .stat-icon{color:#f59e0b}.stat-card.accent .stat-icon{color:var(--theme-secondary)}.stat-card.info .stat-icon{color:#06b6d4}.stat-card.neutral .stat-icon{color:#6b7280}.session-summary{padding:var(--space-lg);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:12px}.session-summary h3{margin:0 0 var(--space-md);color:var(--theme-secondary)}.session-stats{justify-content:space-between;gap:var(--space-lg);display:flex}.session-stat{flex:1;justify-content:space-between;align-items:center;display:flex}.session-stat .label{opacity:.8}.session-stat .value{color:var(--theme-primary);font-weight:700}.mode-stats,.difficulty-stats{gap:var(--space-lg);margin-bottom:var(--space-xl);display:grid}.mode-card,.difficulty-card{padding:var(--space-lg);transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px}.mode-card:hover,.difficulty-card:hover{background:rgba(255,255,255,.08);transform:translateY(-2px)}.mode-header,.difficulty-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.mode-icon{margin-right:var(--space-sm);font-size:1.5rem}.mode-name,.difficulty-name{font-size:1.125rem;font-weight:600}.mode-data{margin-bottom:var(--space-sm);justify-content:space-between;display:flex}.mode-stat{opacity:.8;justify-content:space-between;font-size:.875rem;display:flex}.mode-progress,.difficulty-bar{background:rgba(255,255,255,.1);border-radius:2px;height:4px;overflow:hidden}.progress-bar,.bar-fill{border-radius:2px;height:100%;transition:width .6s ease-out}.heat-map-board{gap:var(--space-sm);max-width:300px;margin:var(--space-lg)auto;grid-template-columns:repeat(3,1fr);display:grid}.heat-map-cell{aspect-ratio:1;transition:var(--transition-smooth);cursor:help;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;display:flex}.heat-map-cell:hover{transform:scale(1.05)}.cell-count{font-size:1.25rem;font-weight:700}.cell-intensity{opacity:.8;font-size:.75rem}.heat-map-legend{justify-content:center;gap:var(--space-lg);margin-top:var(--space-lg);display:flex}.legend-item{align-items:center;gap:var(--space-sm);display:flex}.legend-color{border-radius:4px;width:20px;height:20px}.legend-color.low{background:rgba(255,255,255,.1)}.legend-color.high{background:var(--theme-primary)}.power-ups-usage{margin-top:var(--space-xl)}.powerup-stats{gap:var(--space-md);display:grid}.powerup-stat{align-items:center;gap:var(--space-md);padding:var(--space-sm);background:rgba(255,255,255,.03);border-radius:8px;display:flex}.powerup-name{flex:1;font-weight:500}.powerup-count{color:var(--theme-primary);text-align:right;min-width:40px;font-weight:700}.powerup-bar{background:rgba(255,255,255,.1);border-radius:3px;flex:2;height:6px;overflow:hidden}.powerup-fill{border-radius:3px;height:100%;transition:width .6s ease-out}.achievements-summary{align-items:center;gap:var(--space-xl);margin-bottom:var(--space-xl);padding:var(--space-lg);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;display:flex}.achievement-progress-ring{justify-content:center;align-items:center;display:flex;position:relative}.progress-text{text-align:center;font-weight:700;position:absolute}.progress-number{color:var(--theme-primary);text-shadow:0 0 10px var(--theme-primary)60;font-size:1.5rem}.progress-total{opacity:.8;font-size:.875rem}.achievements-info h3{margin:0 0 var(--space-sm);color:var(--theme-secondary)}.total-points{color:var(--theme-primary);font-weight:600}.achievements-list{gap:var(--space-md);display:grid}.achievement-card{align-items:center;gap:var(--space-md);padding:var(--space-lg);transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;display:flex;position:relative;overflow:hidden}.achievement-card.unlocked{background:rgba(var(--theme-primary),.1);border-color:var(--theme-primary)}.achievement-card.locked{opacity:.6}.game-result-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;background:rgba(0,0,0,.8);justify-content:center;align-items:center;animation:.3s ease-out modalFadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.game-result-modal{background:var(--gradient-surface);border:var(--border-glow);padding:var(--space-lg);width:90%;max-width:min(90vw,400px);max-height:80vh;box-shadow:var(--shadow-deep);text-align:center;border-radius:20px;animation:.4s cubic-bezier(.68,-.55,.265,1.55) modalSlideIn;overflow-y:auto}.result-content{align-items:center;gap:var(--space-lg);flex-direction:column;display:flex}.result-emoji{font-size:4rem;animation:.8s cubic-bezier(.68,-.55,.265,1.55) bounceIn}.result-message{background:var(--gradient-primary);-webkit-text-fill-color:transparent;text-shadow:0 0 20px var(--theme-primary)40;-webkit-background-clip:text;background-clip:text;margin:0;font-size:2rem;font-weight:700}.result-details{gap:var(--space-sm);opacity:.9;flex-direction:column;display:flex}.result-details p{color:var(--theme-secondary);margin:0;font-size:1rem}.result-actions{gap:var(--space-md);flex-wrap:wrap;justify-content:center;display:flex}.result-button{padding:var(--space-md)var(--space-xl);cursor:pointer;transition:var(--transition-bounce);border:none;border-radius:12px;font-size:1rem;font-weight:600;position:relative;overflow:hidden}.result-button.primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-glow)}.result-button.secondary{color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2)}.result-button:hover{transform:translateY(-2px)scale(1.05)}.result-button:active{transform:translateY(0)scale(.98)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounceIn{0%{opacity:0;transform:scale(0)rotate(-180deg)}50%{opacity:.8;transform:scale(1.3)rotate(-90deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes screenShake{0%,to{transform:translate(0)}10%{transform:translate(-10px)}20%{transform:translate(10px)}30%{transform:translate(-8px)}40%{transform:translate(8px)}50%{transform:translate(-6px)}60%{transform:translate(6px)}70%{transform:translate(-4px)}80%{transform:translate(4px)}90%{transform:translate(-2px)}}.screen-shake{animation:.6s ease-in-out screenShake}.achievement-card:before{content:"";background:var(--gradient-primary);opacity:0;width:4px;height:100%;transition:var(--transition-smooth);position:absolute;top:0;left:0}.achievement-card.unlocked:before{opacity:1}.achievement-icon{text-align:center;min-width:60px;font-size:2rem}.achievement-content{flex:1}.achievement-header{margin-bottom:var(--space-xs);justify-content:space-between;align-items:flex-start;display:flex}.achievement-header h4{margin:0;font-size:1.125rem;font-weight:600}.achievement-points{background:var(--theme-accent);color:var(--theme-primary);padding:var(--space-xs)var(--space-sm);border-radius:8px;font-size:.75rem;font-weight:600}.achievement-card p{margin:0 0 var(--space-sm);opacity:.8;font-size:.875rem}.achievement-progress{margin-top:var(--space-sm)}.progress-bar-container{height:6px;margin-bottom:var(--space-xs);background:rgba(255,255,255,.1);border-radius:3px;overflow:hidden}.progress-bar-fill{border-radius:3px;height:100%;transition:width .8s ease-out}.achievement-progress .progress-text{opacity:.8;font-size:.75rem;position:static}.unlocked-date{opacity:.6;margin-top:var(--space-xs);font-size:.75rem;font-style:italic}.achievement-card.common .achievement-icon{color:#9ca3af}.achievement-card.rare .achievement-icon{color:#3b82f6}.achievement-card.epic .achievement-icon{color:#8b5cf6}.achievement-card.legendary .achievement-icon{color:#f59e0b}.achievement-overlay{z-index:2000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(0,0,0,.7);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.achievement-notification{background:var(--gradient-surface);border:var(--border-glow);padding:var(--space-2xl);text-align:center;width:90%;max-width:500px;box-shadow:var(--shadow-deep);border-radius:20px;position:relative;overflow:hidden}.achievement-notification.animate-in{animation:.8s cubic-bezier(.68,-.55,.265,1.55) achievementSlideIn}.achievement-notification.animate-out{animation:.3s ease-in achievementSlideOut}@keyframes achievementSlideIn{0%{opacity:0;transform:translateY(-50px)scale(.8)rotateX(90deg)}to{opacity:1;transform:translateY(0)scale(1)rotateX(0)}}@keyframes achievementSlideOut{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(30px)scale(.9)}}.achievement-particles{pointer-events:none;z-index:-1;position:absolute;top:0;bottom:0;left:0;right:0}.particle{background:var(--color);width:8px;height:8px;animation:3s ease-out infinite particleFloat;animation-delay:var(--delay);border-radius:50%;position:absolute}@keyframes particleFloat{0%{opacity:1;transform:translateY(100%)scale(0)}50%{opacity:1;transform:translateY(-50%)scale(1)}to{opacity:0;transform:translateY(-150%)scale(0)}}.achievement-badge{margin-bottom:var(--space-lg);justify-content:center;display:flex}.badge-ring{border:4px solid var(--rarity-color);width:120px;height:120px;box-shadow:0 0 30px var(--rarity-color)60;border-radius:50%;justify-content:center;align-items:center;animation:2s ease-in-out infinite alternate badgeGlow;display:flex;position:relative}@keyframes badgeGlow{0%{box-shadow:0 0 20px var(--rarity-color)40}to{box-shadow:0 0 40px var(--rarity-color)80}}.badge-ring:before{content:"";border:2px solid var(--rarity-color);opacity:.3;border-radius:50%;animation:2s ease-in-out infinite badgePulse;position:absolute;top:-8px;bottom:-8px;left:-8px;right:-8px}@keyframes badgePulse{0%,to{opacity:.3;transform:scale(.9)}50%{opacity:.1;transform:scale(1.1)}}.badge-inner{background:radial-gradient(circle,var(--rarity-color)20 0%,transparent 70%);border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;display:flex}.achievement-icon-large{text-shadow:0 0 20px var(--rarity-color);font-size:3rem}.achievement-unlock{color:var(--theme-secondary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-sm);font-size:1rem;font-weight:600}.achievement-title{background:var(--gradient-primary);-webkit-text-fill-color:transparent;margin:0 0 var(--space-sm);text-shadow:0 0 20px var(--theme-primary)60;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:900}.achievement-description{opacity:.9;margin:0 0 var(--space-lg);font-size:1.125rem;line-height:1.6}.achievement-meta{justify-content:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex}.rarity-badge,.points-badge{padding:var(--space-xs)var(--space-md);text-transform:uppercase;letter-spacing:.05em;border-radius:8px;font-size:.75rem;font-weight:700}.rarity-badge{color:#fff}.points-badge{color:var(--theme-primary);border:1px solid var(--theme-primary);background:rgba(255,255,255,.1)}.achievement-navigation{margin-top:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.nav-btn{color:#fff;cursor:pointer;width:40px;height:40px;transition:var(--transition-smooth);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.nav-btn:hover:not(:disabled){background:rgba(255,255,255,.2);transform:scale(1.1)}.nav-btn:disabled{opacity:.3;cursor:not-allowed}.achievement-counter{opacity:.8;font-size:.875rem}.progress-ring{top:var(--space-md);right:var(--space-md);position:absolute}.progress-circle{transform-origin:50%;animation:2s ease-out progressFill;transform:rotate(-90deg)}@keyframes progressFill{0%{stroke-dashoffset:157.08}to{stroke-dashoffset:31.4159}}.progress-percentage{color:var(--theme-primary);font-size:.75rem;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.achievement-close{top:var(--space-md);right:var(--space-md);color:rgba(255,255,255,.7);cursor:pointer;width:32px;height:32px;transition:var(--transition-smooth);z-index:10;background:rgba(255,255,255,.1);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.achievement-close:hover{color:#fff;background:rgba(255,255,255,.2)}.customization-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;padding:var(--space-lg);background:rgba(0,0,0,.8);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.customization-panel{background:var(--gradient-surface);border:var(--border-glow);width:100%;max-width:800px;max-height:90vh;box-shadow:var(--shadow-deep);border-radius:24px;animation:.3s ease-out modalSlideIn;overflow:hidden}.customization-header{padding:var(--space-lg)var(--space-xl);border-bottom:1px solid rgba(255,255,255,.1);justify-content:space-between;align-items:center;display:flex}.customization-header h2{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.75rem;font-weight:700}.customization-tabs{border-bottom:1px solid rgba(255,255,255,.1);display:flex}.customization-content{padding:var(--space-xl);max-height:60vh;overflow-y:auto}.themes-grid{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.theme-card{padding:var(--space-md);cursor:pointer;transition:var(--transition-bounce);text-align:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;position:relative;overflow:hidden}.theme-card.unlocked:hover{transform:translateY(-5px)scale(1.02);box-shadow:0 10px 30px rgba(0,0,0,.3)}.theme-card.active{border-color:var(--theme-primary);box-shadow:var(--shadow-glow)}.theme-card.locked{opacity:.6;cursor:not-allowed}.theme-preview{height:80px;margin-bottom:var(--space-md);border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.lock-icon{color:rgba(255,255,255,.5);font-size:1.5rem}.active-check{top:var(--space-xs);right:var(--space-xs);background:var(--theme-primary);width:24px;height:24px;color:var(--theme-background);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex;position:absolute}.theme-info h4{margin:0 0 var(--space-xs);font-weight:600}.requirement{opacity:.7;font-size:.75rem;font-style:italic}.theme-colors{justify-content:center;gap:var(--space-xs);margin-top:var(--space-xs);display:flex}.color-dot{border:1px solid rgba(255,255,255,.3);border-radius:50%;width:12px;height:12px}.theme-preview-section{padding:var(--space-lg);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:12px}.preview-board{max-width:200px;margin:var(--space-md)auto 0;grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.preview-cell{aspect-ratio:1;border-radius:4px;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex}.symbols-grid{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.symbol-option{padding:var(--space-md);cursor:pointer;transition:var(--transition-smooth);text-align:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px}.symbol-option:hover{background:rgba(255,255,255,.08);transform:translateY(-2px)}.symbol-option.active{border-color:var(--theme-primary);background:rgba(var(--theme-primary),.1);box-shadow:0 0 15px var(--theme-primary)40}.symbol-preview{justify-content:center;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);font-size:1.5rem;display:flex}.symbol-x{color:var(--theme-primary)}.symbol-o{color:var(--theme-secondary)}.vs{opacity:.5;font-size:.875rem;font-weight:600}.symbol-name{text-transform:uppercase;letter-spacing:.05em;opacity:.8;font-size:.75rem;font-weight:600}.custom-symbols-section{padding:var(--space-lg);margin-bottom:var(--space-xl);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:12px}.custom-symbol-inputs{gap:var(--space-md);grid-template-columns:1fr 1fr auto;align-items:end;display:grid}.symbol-input-group{gap:var(--space-xs);flex-direction:column;display:flex}.symbol-input-group label{color:var(--theme-secondary);font-size:.875rem;font-weight:500}.symbol-input{color:#fff;padding:var(--space-sm)var(--space-md);text-align:center;transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:1rem}.symbol-input:focus{border-color:var(--theme-primary);box-shadow:0 0 0 2px var(--theme-primary)40;outline:none}.use-custom-btn{padding:var(--space-sm)var(--space-md);color:#fff;cursor:pointer;transition:var(--transition-smooth);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.2);border-radius:8px;height:-moz-fit-content;height:fit-content;font-weight:500}.use-custom-btn.active{background:var(--theme-primary);border-color:var(--theme-primary);color:var(--theme-background)}.symbol-preview-section{padding:var(--space-lg);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:12px}.symbol-demo-board{gap:var(--space-xs);max-width:200px;margin:var(--space-md)auto 0;grid-template-columns:repeat(3,1fr);display:grid}.demo-cell{aspect-ratio:1;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:4px;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex}.demo-cell.filled-x{color:var(--theme-primary)}.demo-cell.filled-o{color:var(--theme-secondary)}.effects-options{gap:var(--space-lg);margin-bottom:var(--space-xl);display:grid}.effect-option{padding:var(--space-lg);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px}.effect-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.effect-header h4{margin:0;font-weight:600}.toggle-switch{width:50px;height:24px;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;transition:var(--transition-smooth);background:rgba(255,255,255,.2);border-radius:24px;position:absolute;top:0;bottom:0;left:0;right:0}.slider:before{content:"";width:18px;height:18px;transition:var(--transition-smooth);background:#fff;border-radius:50%;position:absolute;bottom:3px;left:3px}input:checked+.slider{background:var(--theme-primary)}input:checked+.slider:before{transform:translate(26px)}.effect-option p{opacity:.8;margin:0;font-size:.875rem;line-height:1.5}.animation-speed{padding:var(--space-lg);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:12px}.speed-slider{margin-top:var(--space-md)}.slider-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:rgba(255,255,255,.2);border-radius:3px;outline:none;width:100%;height:6px}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--theme-primary);cursor:pointer;width:20px;height:20px;box-shadow:0 0 10px var(--theme-primary)60;border-radius:50%}.slider-input::-moz-range-thumb{background:var(--theme-primary);cursor:pointer;width:20px;height:20px;box-shadow:0 0 10px var(--theme-primary)60;border:none;border-radius:50%}.speed-labels{margin-top:var(--space-sm);opacity:.7;justify-content:space-between;font-size:.75rem;display:flex}.background-effects{pointer-events:none;z-index:-1;position:fixed;top:0;bottom:0;left:0;right:0}.floating-particles{width:100%;height:100%;position:absolute;overflow:hidden}.floating-particle{opacity:.3;width:3px;height:3px;animation:floatUp var(--duration)ease-in-out infinite;animation-delay:var(--delay);border-radius:50%;position:absolute}@keyframes floatUp{0%{opacity:0;transform:translateY(100vh)rotate(0)}10%{opacity:.3}90%{opacity:.3}to{opacity:0;transform:translateY(-100px)rotate(360deg)}}.background-glow{opacity:.1;width:100%;height:100%;animation:8s ease-in-out infinite alternate backgroundPulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes backgroundPulse{0%{opacity:.05;transform:translate(-50%,-50%)scale(.8)}to{opacity:.15;transform:translate(-50%,-50%)scale(1.2)}}@media (max-width:768px){*,:before,:after{animation-duration:.3s!important;animation-iteration-count:1!important}.board-2d{animation:none!important}.board-2d:before,.floating-particle,.background-effects{display:none!important}}@media (max-width:1200px){.game-container{gap:var(--space-lg);flex-direction:column}.powerups-panel-2d{width:100%;max-width:none}.powerups-grid-2d{grid-template-columns:repeat(3,1fr)}}@media (max-width:1024px){.control-panel{gap:var(--space-md);grid-template-columns:1fr}.game-3d{gap:var(--space-lg);grid-template-columns:1fr}.powerups-panel{min-width:auto}.game-stats{grid-template-columns:repeat(2,1fr)}.powerups-grid{grid-template-columns:repeat(3,1fr)}.status-bar{gap:var(--space-sm);flex-wrap:wrap}.status-item{flex:auto;min-width:auto}}@media (max-width:768px){.tic-tac-toe-enhanced{padding:var(--space-xs)}.game-header-enhanced{padding:var(--space-sm);gap:var(--space-xs);flex-direction:column}.header-left,.header-right{justify-content:center;width:100%}.game-header-enhanced{gap:var(--space-md);text-align:center;padding:var(--space-md)var(--space-lg);flex-direction:column}.title-with-logo{gap:var(--space-sm);flex-direction:column}.game-logo{width:48px;height:48px}.logo-grid{width:30px;height:30px}.logo-cell{font-size:8px}.board-2d-container{justify-content:center;align-items:center;width:100%;padding:0;display:flex}.board-2d{gap:max(4px,min(1.5vw,10px));width:min(85vw,350px);height:min(85vw,350px);padding:max(10px,min(3vw,20px))}.cell-2d{border-radius:8px;font-size:2rem}.powerups-grid-2d{gap:var(--space-sm);grid-template-columns:repeat(2,1fr)}.powerup-btn-2d{padding:var(--space-sm);font-size:.75rem}.tutorial-tabs{flex-wrap:wrap;gap:4px}.tutorial-tabs .tab-btn{flex:auto;min-width:80px;padding:6px 12px;font-size:.75rem}.tutorial-tabs .action-btn{min-width:0;padding:8px 12px;font-size:.8rem}.action-btn span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.game-title{font-size:2rem}.title-3d{font-size:2.5rem}.session-info{gap:var(--space-md);flex-direction:row}.control-panel{gap:var(--space-md);padding:var(--space-md)}.control-group{justify-content:center;gap:var(--space-sm);flex-wrap:wrap}.settings-group{gap:var(--space-md);grid-template-columns:1fr}.difficulty-setting{align-items:center}.styled-select{min-width:120px;font-size:.8rem}.mode-buttons{justify-content:center;gap:var(--space-sm);flex-wrap:wrap}.mode-btn{flex:1;min-width:140px;font-size:.8rem}.action-buttons{justify-content:center;gap:var(--space-sm);flex-wrap:wrap}.action-btn{min-width:100px;padding:var(--space-sm)var(--space-md);flex:1;font-size:.8rem}.game-2d{gap:var(--space-lg);text-align:center;grid-template-columns:1fr}.powerups-panel-2d{width:100%;min-width:auto}.powerups-grid-2d{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.cell-2d{width:80px;height:80px;font-size:2rem}.stats-dashboard,.customization-panel,.tutorial-system{margin:var(--space-sm);width:calc(100% - var(--space-lg))}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.themes-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.symbols-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.custom-symbol-inputs{grid-template-columns:1fr}.achievement-notification{margin:var(--space-md);width:calc(100% - var(--space-xl));padding:var(--space-lg)}.achievement-title{font-size:1.5rem}.powerups-grid{grid-template-columns:1fr}.tutorial-tabs{flex-wrap:wrap}.tutorial-content{padding:var(--space-lg)}.powerup-details{grid-template-columns:1fr}.welcome-modal{margin:var(--space-sm);width:calc(100% - var(--space-lg))}.feature-highlights,.mode-selection-grid{grid-template-columns:1fr}}@media (max-width:480px){.tic-tac-toe-enhanced{padding:var(--space-xs)}.game-header-enhanced{padding:var(--space-sm)var(--space-md)}.game-logo{width:40px;height:40px}.logo-grid{width:26px;height:26px}.logo-cell{font-size:6px}.game-title{font-size:1.5rem}.title-3d{font-size:2rem}.title-subtitle{font-size:.75rem}.session-stat{padding:var(--space-xs)var(--space-sm)}.stat-value{font-size:1rem}.control-panel{gap:var(--space-sm);padding:var(--space-sm)}.mode-btn,.setting-btn,.action-btn{padding:var(--space-xs)var(--space-sm);min-width:80px;font-size:.75rem}.styled-select{min-width:100px;padding:var(--space-xs)calc(var(--space-md) + 16px)var(--space-xs)var(--space-sm);font-size:.75rem}.select-arrow{right:var(--space-sm);font-size:1rem}.cell-2d{width:70px;height:70px;font-size:1.8rem}.powerup-btn-2d{padding:var(--space-xs);font-size:.7rem}.board-2d{padding:var(--space-md);gap:var(--space-xs)}.achievement-notification{padding:var(--space-md);margin:var(--space-xs);width:calc(100% - var(--space-md))}.achievement-title{font-size:1.25rem}.badge-ring{width:80px;height:80px}.achievement-icon-large{font-size:2rem}.tutorial-header{padding:var(--space-md)var(--space-lg)}.tutorial-header h2{font-size:1.5rem}.tutorial-content{padding:var(--space-md)}.step-icon{width:60px;height:60px;font-size:2rem}.step-header h3{font-size:1.5rem}.welcome-modal{margin:var(--space-xs);width:calc(100% - var(--space-sm))}.welcome-hero{padding:var(--space-lg)var(--space-md)var(--space-md)}.hero-icon{font-size:3rem}.welcome-hero h1{font-size:2rem}.welcome-hero h2{font-size:1rem}.feature-item{text-align:center;gap:var(--space-sm);flex-direction:column}.feature-icon{width:40px;height:40px;font-size:1.5rem}.mode-select-card{padding:var(--space-md)}.mode-select-icon{font-size:2.5rem}.welcome-btn{padding:var(--space-md)var(--space-lg);font-size:1rem}.primary-actions{grid-template-columns:1fr}}@media (max-width:360px){.game-title{font-size:1.25rem}.title-3d{font-size:1.75rem}.cell-2d{width:60px;height:60px;font-size:1.5rem}.board-2d{padding:var(--space-sm)}.mode-btn,.setting-btn,.action-btn{padding:var(--space-xs);min-width:70px;font-size:.7rem}.styled-select{min-width:90px;font-size:.7rem}.powerups-grid-2d{grid-template-columns:1fr}.welcome-hero h1{font-size:1.75rem}.feature-highlights{gap:var(--space-md)}}.tutorial-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;padding:var(--space-lg);background:rgba(0,0,0,.8);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.tutorial-system{background:var(--gradient-surface);border:var(--border-glow);width:100%;max-width:1000px;max-height:90vh;box-shadow:var(--shadow-deep);border-radius:24px;animation:.3s ease-out modalSlideIn;overflow:hidden}.tutorial-header{padding:var(--space-lg)var(--space-xl);background:linear-gradient(135deg,rgba(99,102,241,.1),rgba(139,92,246,.05));border-bottom:1px solid rgba(255,255,255,.1);justify-content:space-between;align-items:center;display:flex}.tutorial-header h2{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.75rem;font-weight:700}.mode-indicator{padding:var(--space-sm)var(--space-md);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:.875rem}.mode-indicator strong{color:var(--theme-primary);text-shadow:0 0 10px var(--theme-primary)60}.tutorial-tabs{background:rgba(255,255,255,.02);border-bottom:1px solid rgba(255,255,255,.1);display:flex}.tutorial-content{padding:var(--space-xl);max-height:60vh;overflow-y:auto}.tutorial-step-by-step{max-width:800px;margin:0 auto}.tutorial-step{padding:var(--space-xl);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:16px;position:relative}.step-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);display:flex;position:relative}.step-icon{background:var(--gradient-primary);text-shadow:0 0 20px rgba(0,0,0,.5);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;font-size:3rem;display:flex}.step-header h3{color:var(--theme-primary);flex:1;margin:0;font-size:1.75rem;font-weight:700}.step-counter{padding:var(--space-sm)var(--space-md);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:.875rem;font-weight:600}.step-description{margin-bottom:var(--space-lg)}.step-description p{opacity:.9;margin:0;font-size:1.125rem;line-height:1.6}.step-details ul{margin:0;padding:0;list-style:none}.step-details li{padding:var(--space-sm)0;padding-left:var(--space-lg);border-bottom:1px solid rgba(255,255,255,.05);font-size:1rem;line-height:1.6;position:relative}.step-details li:before{content:"✓";left:0;top:var(--space-sm);color:var(--theme-secondary);text-shadow:0 0 10px var(--theme-secondary)60;font-weight:700;position:absolute}.step-details li:last-child{border-bottom:none}.step-navigation{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid rgba(255,255,255,.1);justify-content:space-between;align-items:center;display:flex}.nav-button{padding:var(--space-md)var(--space-lg);background:var(--gradient-surface);border:var(--border-glow);color:#fff;cursor:pointer;transition:var(--transition-bounce);border-radius:12px;font-size:1rem;font-weight:600}.nav-button:hover:not(:disabled){box-shadow:var(--shadow-glow);transform:translateY(-2px)}.nav-button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.nav-button.start-tutorial{background:var(--gradient-primary);padding:var(--space-md)var(--space-xl);font-size:1.125rem}.powerups-guide{max-width:900px;margin:0 auto}.powerups-guide h3{text-align:center;margin-bottom:var(--space-xl);color:var(--theme-secondary);text-shadow:0 0 15px var(--theme-secondary)60;font-size:1.75rem;font-weight:700}.powerups-list{gap:var(--space-lg);display:grid}.powerup-guide-item{padding:var(--space-lg);transition:var(--transition-smooth);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:16px}.powerup-guide-item:hover{background:rgba(255,255,255,.05);transform:translateY(-2px)}.powerup-header{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.powerup-icon-large{text-shadow:0 0 15px;background:rgba(255,255,255,.05);border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:2.5rem;display:flex}.powerup-info{flex:1}.powerup-info h4{margin:0 0 var(--space-xs);color:var(--theme-primary);font-size:1.25rem;font-weight:700}.powerup-description{opacity:.8;margin:0;line-height:1.5}.powerup-cooldown{padding:var(--space-sm)var(--space-md);text-align:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:8px}.cooldown-label{opacity:.7;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;display:block}.cooldown-value{color:var(--theme-secondary);font-size:1rem;font-weight:700;display:block}.powerup-details{gap:var(--space-lg);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid rgba(255,255,255,.1);grid-template-columns:1fr 1fr;display:grid}.strategy-section,.tips-section{padding:var(--space-md);background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:8px}.strategy-section h5,.tips-section h5{margin:0 0 var(--space-sm);color:var(--theme-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.strategy-section p,.tips-section p{opacity:.9;margin:0;font-size:.875rem;line-height:1.5}.game-rules{max-width:800px;margin:0 auto}.rules-section{padding:var(--space-lg);margin-bottom:var(--space-lg);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:12px}.rules-section h3{margin:0 0 var(--space-md);color:var(--theme-primary);align-items:center;gap:var(--space-sm);font-size:1.25rem;font-weight:700;display:flex}.rules-section ul{margin:0;padding:0;list-style:none}.rules-section li{padding:var(--space-sm)0;padding-left:var(--space-lg);border-bottom:1px solid rgba(255,255,255,.05);line-height:1.6;position:relative}.rules-section li:before{content:"•";color:var(--theme-secondary);font-size:1.25rem;font-weight:700;position:absolute;left:0}.rules-section li:last-child{border-bottom:none}.quick-reference{gap:var(--space-lg);max-width:900px;margin:0 auto;display:grid}.reference-card{padding:var(--space-lg);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.05);border-radius:12px}.reference-card h3{margin:0 0 var(--space-md);color:var(--theme-primary);align-items:center;gap:var(--space-sm);font-size:1.25rem;font-weight:700;display:flex}.mode-list,.difficulty-list{gap:var(--space-sm);display:grid}.mode-item{align-items:center;gap:var(--space-md);padding:var(--space-sm);background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:8px;display:flex}.mode-icon{text-align:center;width:40px;font-size:1.5rem}.mode-item strong{color:var(--theme-secondary);font-weight:600}.mode-item p{opacity:.8;margin:0;font-size:.875rem}.difficulty-item{padding:var(--space-sm)var(--space-md);background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-left:4px solid;border-radius:8px}.difficulty-item.easy{border-left-color:#10b981}.difficulty-item.medium{border-left-color:#f59e0b}.difficulty-item.hard{border-left-color:#ef4444}.difficulty-item.nightmare{border-left-color:#8b5cf6}.tips-list{margin:0;padding:0;list-style:none}.tips-list li{padding:var(--space-sm)0;padding-left:var(--space-lg);border-bottom:1px solid rgba(255,255,255,.05);line-height:1.5;position:relative}.tips-list li:before{content:"💡";font-size:1rem;position:absolute;left:0}.tips-list li:last-child{border-bottom:none}.tutorial-footer{padding:var(--space-lg)var(--space-xl);text-align:center;background:rgba(255,255,255,.02);border-top:1px solid rgba(255,255,255,.1)}.interactive-tutorial-btn{padding:var(--space-md)var(--space-xl);background:var(--gradient-primary);color:#fff;cursor:pointer;transition:var(--transition-bounce);margin-bottom:var(--space-md);text-transform:uppercase;letter-spacing:.05em;border:none;border-radius:12px;font-size:1.125rem;font-weight:700}.interactive-tutorial-btn:hover{transform:translateY(-3px)scale(1.05);box-shadow:0 15px 30px rgba(99,102,241,.4)}.tutorial-tip{opacity:.7;margin:0;font-size:.875rem;font-style:italic}.welcome-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000;padding:var(--space-lg);background:rgba(0,0,0,.9);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.welcome-modal{background:linear-gradient(145deg,var(--theme-surface),#0f1419);border:var(--border-glow);border-radius:24px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;animation:.8s cubic-bezier(.68,-.55,.265,1.55) welcomeSlideIn;display:flex;position:relative;overflow:hidden;box-shadow:0 50px 100px rgba(0,0,0,.5)}.welcome-modal-content{scrollbar-width:thin;scrollbar-color:var(--theme-primary)rgba(255,255,255,.1);flex:1;overflow-x:hidden;overflow-y:auto}.welcome-modal-content::-webkit-scrollbar{width:8px}.welcome-modal-content::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px}.welcome-modal-content::-webkit-scrollbar-thumb{background:var(--theme-primary);opacity:.8;border-radius:4px}.welcome-modal-content::-webkit-scrollbar-thumb:hover{background:var(--theme-secondary);opacity:1}@keyframes welcomeSlideIn{0%{opacity:0;transform:translateY(50px)scale(.9)rotateX(15deg)}to{opacity:1;transform:translateY(0)scale(1)rotateX(0)}}.welcome-hero{text-align:center;padding:var(--space-2xl)var(--space-xl)var(--space-lg);background:linear-gradient(135deg,rgba(99,102,241,.1),rgba(139,92,246,.05));border-bottom:1px solid rgba(255,255,255,.1);position:relative}.hero-icon{margin-bottom:var(--space-md);text-shadow:0 0 30px var(--theme-primary);font-size:4rem;animation:3s ease-in-out infinite alternate heroFloat;display:inline-block}@keyframes heroFloat{0%{transform:translateY(0)rotate(-5deg)}to{transform:translateY(-10px)rotate(5deg)}}.welcome-hero h1{margin:0 0 var(--space-xs);background:var(--gradient-primary);-webkit-text-fill-color:transparent;text-shadow:0 0 20px var(--theme-primary)60;-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:900;line-height:1.2}.welcome-hero h2{color:var(--theme-secondary);margin:0 0 var(--space-lg);text-transform:uppercase;letter-spacing:.2em;opacity:.8;font-size:1.25rem;font-weight:600}.hero-description{opacity:.9;max-width:600px;margin:0 auto;font-size:1.125rem;line-height:1.6}.welcome-features{padding:var(--space-xl);border-bottom:1px solid rgba(255,255,255,.1)}.feature-highlights{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-width:800px;margin:0 auto;display:grid}.feature-item{align-items:center;gap:var(--space-md);padding:var(--space-md);transition:var(--transition-smooth);background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:12px;display:flex}.feature-item:hover{background:rgba(255,255,255,.05);transform:translateY(-2px)}.feature-icon{background:var(--gradient-primary);text-shadow:0 0 10px rgba(0,0,0,.5);border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;font-size:2rem;display:flex}.feature-text strong{color:var(--theme-primary);margin-bottom:var(--space-xs);font-weight:700;display:block}.feature-text p{opacity:.8;margin:0;font-size:.875rem;line-height:1.4}.welcome-mode-selection{padding:var(--space-xl);border-bottom:1px solid rgba(255,255,255,.1)}.welcome-mode-selection h3{text-align:center;color:var(--theme-secondary);margin:0 0 var(--space-lg);text-shadow:0 0 15px var(--theme-secondary)60;font-size:1.5rem;font-weight:700}.mode-selection-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-width:700px;margin:0 auto;display:grid}.mode-select-card{padding:var(--space-lg);text-align:center;cursor:pointer;transition:var(--transition-bounce);background:rgba(255,255,255,.03);border:2px solid rgba(255,255,255,.1);border-radius:16px;position:relative;overflow:hidden}.mode-select-card:before{content:"";background:var(--gradient-primary);opacity:0;transition:var(--transition-smooth);z-index:-1;position:absolute;top:0;bottom:0;left:0;right:0}.mode-select-card:hover:before{opacity:.1}.mode-select-card:hover{transform:translateY(-5px)scale(1.02);box-shadow:0 15px 30px rgba(0,0,0,.3)}.mode-select-card.selected{border-color:var(--theme-primary);box-shadow:0 0 30px var(--theme-primary)40;transform:translateY(-3px)}.mode-select-card.selected:before{opacity:.15}.mode-select-icon{margin-bottom:var(--space-md);text-shadow:0 0 20px;font-size:3rem;display:block}.mode-select-card h4{margin:0 0 var(--space-sm);color:var(--theme-primary);font-size:1.25rem;font-weight:700}.mode-select-card p{margin:0 0 var(--space-md);opacity:.8;font-size:.875rem}.difficulty-indicator{padding:var(--space-xs)var(--space-sm);text-transform:uppercase;letter-spacing:.05em;border-radius:6px;font-size:.75rem;font-weight:600;display:inline-block}.difficulty-indicator.easy{color:#10b981;background:rgba(16,185,129,.2);border:1px solid rgba(16,185,129,.3)}.difficulty-indicator.medium{color:#f59e0b;background:rgba(245,158,11,.2);border:1px solid rgba(245,158,11,.3)}.difficulty-indicator.hard{color:#ef4444;background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.3)}.welcome-actions{padding:var(--space-xl);text-align:center;border-bottom:1px solid rgba(255,255,255,.1)}.primary-actions{gap:var(--space-lg);margin-bottom:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));max-width:600px;margin-left:auto;margin-right:auto;display:grid}.welcome-btn{padding:var(--space-lg)var(--space-xl);cursor:pointer;transition:var(--transition-bounce);align-items:center;gap:var(--space-xs);text-align:center;border:none;border-radius:16px;flex-direction:column;font-size:1.125rem;font-weight:700;display:flex;position:relative;overflow:hidden}.welcome-btn.primary{background:var(--gradient-primary);color:#fff;box-shadow:0 10px 25px rgba(99,102,241,.3)}.welcome-btn.primary:hover{transform:translateY(-5px)scale(1.05);box-shadow:0 20px 40px rgba(99,102,241,.4)}.welcome-btn.secondary{background:var(--gradient-surface);color:var(--theme-primary);border:2px solid var(--theme-primary);box-shadow:0 10px 25px rgba(0,0,0,.2)}.welcome-btn.secondary:hover{background:rgba(99,102,241,.1);transform:translateY(-5px)scale(1.05);box-shadow:0 20px 40px rgba(0,0,0,.3)}.btn-subtitle{opacity:.8;font-size:.875rem;font-weight:500;line-height:1.3}.skip-btn{color:rgba(255,255,255,.6);cursor:pointer;padding:var(--space-sm)var(--space-md);transition:var(--transition-smooth);background:0 0;border:none;border-radius:8px;font-size:.875rem;text-decoration:underline}.skip-btn:hover{color:rgba(255,255,255,.9);background:rgba(255,255,255,.05);text-decoration:none}.welcome-tips{padding:var(--space-lg)var(--space-xl);background:rgba(255,255,255,.02)}.tip-item{align-items:center;gap:var(--space-md);margin-bottom:var(--space-sm);padding:var(--space-sm);background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05);border-radius:8px;display:flex}.tip-item:last-child{margin-bottom:0}.tip-icon{text-align:center;width:30px;font-size:1.25rem}.tip-item span:last-child{opacity:.9;font-size:.875rem;line-height:1.4}.welcome-background{pointer-events:none;z-index:-1;position:absolute;top:0;bottom:0;left:0;right:0}.floating-orb{background:radial-gradient(circle,var(--theme-primary)40 0%,transparent 70%);opacity:.3;border-radius:50%;animation:6s ease-in-out infinite orbFloat;position:absolute}.floating-orb.orb-1{width:100px;height:100px;animation-delay:0s;top:10%;left:10%}.floating-orb.orb-2{width:150px;height:150px;animation-delay:2s;top:60%;right:10%}.floating-orb.orb-3{width:80px;height:80px;animation-delay:4s;bottom:20%;left:20%}@keyframes orbFloat{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-30px)scale(1.1)}66%{transform:translate(-20px,20px)scale(.9)}}.interactive-tutorial-overlay{z-index:1500;pointer-events:none;background:rgba(0,0,0,.4);position:fixed;top:0;bottom:0;left:0;right:0}.tutorial-spotlight{pointer-events:none;background:radial-gradient(circle,transparent 60%,rgba(0,0,0,.8) 100%);border-radius:50%;width:200px;height:200px;transition:all .3s;position:absolute}.interactive-tutorial-panel{bottom:var(--space-xl);right:var(--space-xl);background:var(--gradient-surface);border:var(--border-glow);width:380px;padding:var(--space-lg);z-index:1700;box-shadow:var(--shadow-deep);pointer-events:auto;border-radius:20px;animation:.5s ease-out tutorialSlideIn;position:fixed}@keyframes tutorialSlideIn{0%{opacity:0;transform:translateY(100px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}.tutorial-step-info{gap:var(--space-md);flex-direction:column;display:flex}.step-progress{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.step-counter{color:var(--theme-secondary);white-space:nowrap;font-size:.875rem;font-weight:600}.progress-bar{background:rgba(255,255,255,.1);border-radius:3px;flex:1;height:6px;overflow:hidden}.progress-fill{background:var(--gradient-primary);border-radius:3px;height:100%;transition:width .3s}.step-content{text-align:left}.step-title{margin:0 0 var(--space-sm);color:var(--theme-primary);text-shadow:0 0 10px var(--theme-primary)40;font-size:1.25rem;font-weight:700}.step-description{margin:0 0 var(--space-md);opacity:.9;font-size:1rem;line-height:1.5}.step-instruction{align-items:center;gap:var(--space-sm);padding:var(--space-md);border-left:4px solid var(--theme-secondary);color:var(--theme-secondary);background:rgba(255,255,255,.05);border-radius:12px;font-weight:600;animation:2s ease-in-out infinite instructionPulse;display:flex}@keyframes instructionPulse{0%,to{opacity:1}50%{opacity:.7}}.instruction-icon{font-size:1.5rem;animation:1s ease-in-out infinite bounce}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.tutorial-hint{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.3);border-radius:12px;animation:.3s ease-out hintFadeIn;display:flex}@keyframes hintFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hint-icon{color:#f59e0b;font-size:1.25rem}.hint-text{color:#fcd34d;font-size:.875rem;line-height:1.4}.tutorial-controls{justify-content:flex-end;gap:var(--space-md);display:flex}.tutorial-btn{padding:var(--space-sm)var(--space-lg);cursor:pointer;transition:var(--transition-bounce);border:none;border-radius:12px;font-size:.875rem;font-weight:600}.tutorial-btn.primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 15px var(--theme-primary)30}.tutorial-btn.primary:hover{box-shadow:0 8px 25px var(--theme-primary)40;transform:translateY(-2px)}.tutorial-btn.secondary{color:rgba(255,255,255,.8);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2)}.tutorial-btn.secondary:hover{color:#fff;background:rgba(255,255,255,.15);transform:translateY(-1px)}.tutorial-btn.success{color:#fff;background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 15px rgba(16,185,129,.3)}.tutorial-btn.success:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 8px 25px rgba(16,185,129,.5)}.tutorial-pointer{z-index:1550;pointer-events:none;animation:1s ease-in-out infinite pointerBounce;position:absolute}@keyframes pointerBounce{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-5px,-5px)scale(1.1)}}.pointer-arrow{color:var(--theme-primary);text-shadow:0 0 15px var(--theme-primary)80;font-size:2rem;animation:1.5s ease-in-out infinite alternate arrowGlow}@keyframes arrowGlow{0%{text-shadow:0 0 15px var(--theme-primary)80}to{text-shadow:0 0 30px var(--theme-primary)100,0 0 40px var(--theme-primary)60}}.pointer-text{background:var(--gradient-primary);color:#fff;padding:var(--space-xs)var(--space-sm);white-space:nowrap;border-radius:8px;font-size:.75rem;font-weight:600;position:absolute;top:-30px;left:-20px;box-shadow:0 4px 15px rgba(0,0,0,.3)}.pointer-text:after{content:"";border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--theme-primary);width:0;height:0;position:absolute;bottom:-5px;left:20px}.tutorial-highlight{animation:1.5s ease-in-out infinite alternate tutorialHighlight;position:relative;z-index:1600!important;box-shadow:0 0 0 4px var(--theme-primary),0 0 0 8px rgba(99,102,241,.3),0 0 30px rgba(99,102,241,.6)!important;pointer-events:auto!important;cursor:pointer!important;border-radius:8px!important;transition:all .3s!important;transform:scale(1.05)!important}.tutorial-highlight:hover{animation-play-state:paused;box-shadow:0 0 0 6px var(--theme-secondary),0 0 0 12px rgba(139,92,246,.5),0 0 40px #8b5cf6!important;transform:scale(1.1)!important}@keyframes tutorialHighlight{0%{box-shadow:0 0 0 4px var(--theme-primary),0 0 0 8px rgba(99,102,241,.3),0 0 30px rgba(99,102,241,.6)}to{box-shadow:0 0 0 6px var(--theme-secondary),0 0 0 12px rgba(139,92,246,.4),0 0 40px rgba(139,92,246,.8)}}.game-2d{width:100%;max-width:min(100%,600px);padding:var(--space-sm);flex-direction:column;align-items:center;margin:0 auto;display:flex}.board-2d-container{margin:var(--space-xl)auto;position:relative}.board-2d{aspect-ratio:1;background:linear-gradient(135deg,var(--theme-background)0%,rgba(99,102,241,.1) 50%,var(--theme-background)100%);border:3px solid;border-image:linear-gradient(45deg,var(--theme-primary),var(--theme-secondary))1;border-radius:30px;grid-template-columns:repeat(3,1fr);place-items:center;gap:max(8px,min(2vw,15px));width:min(85vw,450px);max-width:450px;margin:0 auto;padding:max(15px,min(4vw,35px));animation:6s ease-in-out infinite boardFloat;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.3),0 0 80px rgba(99,102,241,.4),inset 0 0 50px rgba(255,255,255,.03)}@keyframes boardFloat{0%,to{transform:translateY(0)scale(1);box-shadow:0 20px 60px rgba(0,0,0,.3),0 0 80px rgba(99,102,241,.4)}50%{transform:translateY(-8px)scale(1.01);box-shadow:0 30px 80px rgba(0,0,0,.4),0 0 100px rgba(99,102,241,.6)}}.board-2d:before{content:"";pointer-events:none;background:linear-gradient(45deg,transparent 30%,rgba(99,102,241,.15) 50%,transparent 70%);width:300%;height:300%;animation:8s linear infinite spectacularShimmer;position:absolute;top:-100%;left:-100%}@keyframes spectacularShimmer{0%{transform:translate(-100%)translateY(-100%)rotate(45deg)}to{transform:translate(100%)translateY(100%)rotate(45deg)}}.cell-2d{aspect-ratio:1;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.05) 50%,rgba(0,0,0,.1) 100%);border:2px solid rgba(255,255,255,.2);border-radius:max(10px,min(3vw,20px));justify-content:center;align-items:center;font-size:max(2rem,min(8vw,3rem));font-weight:800;transition:all .3s;display:flex;position:relative;overflow:hidden}.cell-2d:before{content:"";background:linear-gradient(45deg,var(--theme-primary),var(--theme-secondary));opacity:0;border-radius:18px;transition:all .3s;position:absolute;top:0;bottom:0;left:0;right:0}.cell-2d:hover:before{opacity:.1}.cell-2d:hover{box-shadow:0 15px 30px rgba(0,0,0,.3),0 0 30px var(--theme-primary);border-color:var(--theme-primary);transform:translateY(-5px)scale(1.05)}.cell-2d.filled{animation:.6s cubic-bezier(.68,-.55,.265,1.55) cellPop;transform:scale(1)}@keyframes cellPop{0%{opacity:0;transform:scale(0)rotate(180deg)}50%{opacity:.8;transform:scale(1.2)rotate(90deg)}to{opacity:1;transform:scale(1)rotate(0)}}.cell-2d.winning{background:linear-gradient(45deg,var(--theme-primary),var(--theme-secondary));color:#fff;box-shadow:0 0 40px var(--theme-primary);animation:1s ease-in-out infinite alternate winningPulse}@keyframes winningPulse{0%{box-shadow:0 0 40px var(--theme-primary);transform:scale(1)}to{box-shadow:0 0 60px var(--theme-primary);transform:scale(1.1)}}.powerups-panel-2d{justify-content:center;gap:var(--space-md);margin:var(--space-xl)0;flex-wrap:wrap;display:flex}.power-up-btn-2d{background:var(--gradient-surface);border:2px solid var(--theme-primary);color:var(--theme-primary);cursor:pointer;border-radius:10px;min-height:44px;padding:max(8px,min(2vw,12px)) max(12px,min(3vw,16px));font-size:max(.85rem,min(2.5vw,1rem));font-weight:600;transition:all .3s;position:relative;overflow:hidden}.power-up-btn-2d:before{content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.power-up-btn-2d:hover:before{left:100%}.power-up-btn-2d:hover{border-color:var(--theme-secondary);color:var(--theme-secondary);transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,.3)}.power-up-btn-2d.available{animation:2s ease-in-out infinite alternate powerUpGlow}@keyframes powerUpGlow{0%{box-shadow:0 0 20px rgba(99,102,241,.5)}to{box-shadow:0 0 40px rgba(139,92,246,.8)}}.power-up-btn-2d.active{background:var(--gradient-primary);color:#fff;box-shadow:0 0 30px var(--theme-primary);transform:scale(1.1)}.game-controls-2d{justify-content:center;gap:var(--space-md);margin-top:var(--space-xl);display:flex}.action-buttons{gap:var(--space-xs);grid-template-columns:repeat(4,1fr);width:100%;display:grid}.action-btn{padding:var(--space-sm)var(--space-xs);background:var(--gradient-button);color:#fff;cursor:pointer;text-align:center;border:none;border-radius:10px;justify-content:center;align-items:center;gap:2px;min-width:0;font-size:max(.75rem,min(2vw,.9rem));font-weight:600;transition:all .3s;display:flex;position:relative;overflow:hidden}.game-button-2d:before{content:"";background:rgba(255,255,255,.3);border-radius:50%;width:0;height:0;transition:all .4s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.game-button-2d:hover:before{width:300px;height:300px}.game-button-2d:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(0,0,0,.3)}@media (max-width:768px){.interactive-tutorial-panel{bottom:var(--space-md);right:var(--space-md);left:var(--space-md);width:auto}.step-progress{gap:var(--space-sm);flex-direction:column}.tutorial-controls{justify-content:center}}@media (max-width:480px){.interactive-tutorial-panel{bottom:var(--space-sm);right:var(--space-sm);left:var(--space-sm);padding:var(--space-md)}.step-title{font-size:1.125rem}.tutorial-btn{padding:var(--space-sm)var(--space-md);font-size:.8rem}.pointer-text{font-size:.7rem}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--theme-primary);opacity:.7;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--theme-secondary);opacity:1}
