body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0;overflow:hidden;touch-action:manipulation;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}canvas{touch-action:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.home-screen{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;align-items:center;animation:backgroundShift 20s ease-in-out infinite;background:radial-gradient(circle at 20% 80%,#3f51b526 0,#0000 50%),radial-gradient(circle at 80% 20%,#66bb6a26 0,#0000 50%),radial-gradient(circle at 50% 50%,#9c27b014 0,#0000 60%),linear-gradient(135deg,#192030f2,#0f1423fa);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;justify-content:center;width:100vw}.home-content{max-width:400px;padding:20px;text-align:center;width:90%}.game-logo{-webkit-text-fill-color:#0000;animation:logoShimmer 3s ease-in-out infinite;background:linear-gradient(135deg,#66bb6a,#42a5f5,#9c27b0);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;font-size:48px;font-weight:800;margin:0 0 12px;text-shadow:3px 3px 6px #00000080}@keyframes logoShimmer{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.game-subtitle{font-size:16px;font-weight:300;margin:0 0 24px;opacity:.9}.menu-buttons{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.menu-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff1a;border-radius:10px;box-shadow:0 3px 12px #0000004d;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:12px;justify-content:center;overflow:hidden;padding:14px 24px;position:relative;transition:all .3s ease}.menu-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.menu-button:hover:before{left:100%}.menu-button:hover{box-shadow:0 6px 20px #0006;transform:translateY(-3px)}.menu-button:active{box-shadow:0 3px 12px #0000004d;transform:translateY(-1px)}.button-icon{font-size:20px}.button-text{flex:1 1}.home-footer{font-size:14px;margin-top:16px;opacity:.8}.credit{font-size:12px;font-weight:300;margin-top:12px;opacity:.6}@media (max-width:768px){.game-logo{font-size:56px}.game-subtitle{font-size:18px;margin-bottom:32px}.menu-button{font-size:18px;padding:16px 24px}.button-icon{font-size:24px}.home-footer{font-size:14px}}.ai-difficulty-selection{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:16px}.difficulty-header{font-size:18px;font-weight:600;margin-bottom:6px;text-align:center}.difficulty-buttons{display:flex;flex-direction:column;gap:8px}.difficulty-button{align-items:center;border:none;border-radius:8px;box-shadow:0 2px 8px #0000004d;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;overflow:hidden;padding:12px 20px;position:relative;transition:all .3s ease}.difficulty-button:hover{box-shadow:0 5px 16px #0006;transform:translateY(-2px)}.difficulty-button:active{box-shadow:0 2px 8px #0000004d;transform:translateY(0)}.difficulty-icon{font-size:18px}.difficulty-text{flex:1 1}.back-button{margin-top:8px}@media (max-width:768px){.ai-difficulty-selection{padding:16px}.difficulty-header{font-size:20px}.difficulty-button{font-size:16px;padding:14px 20px}.difficulty-icon{font-size:20px}}@media (max-height:600px){.game-logo{font-size:48px;margin-bottom:8px}.game-subtitle,.menu-buttons{margin-bottom:24px}.menu-buttons{gap:12px}.menu-button{font-size:16px;padding:12px 24px}.ai-difficulty-selection{gap:10px;padding:12px}.difficulty-header{font-size:18px}.difficulty-button{font-size:14px;padding:10px 16px}}.game-screen{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;overflow:hidden;width:100vw}.game-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0003;display:flex;justify-content:space-between;padding:12px 20px}.back-button{box-shadow:0 2px 8px #0000004d;padding:8px 16px}.back-button:hover{box-shadow:0 4px 12px #0006}.game-title{font-size:28px;font-weight:700;text-shadow:2px 2px 4px #00000080}.theme-selector select{border-radius:6px;cursor:pointer;font-size:14px;outline:none;padding:8px 12px}.game-info{padding:12px 20px}.score-display{justify-content:space-between;margin:0 auto;max-width:600px}.score-display,.score-item{align-items:center;display:flex}.score-item{font-size:18px;font-weight:500;gap:12px}.marble-indicator{border-radius:50%;box-shadow:0 2px 4px #0000004d;height:24px;width:24px}.status-text{font-size:20px;font-weight:600;text-align:center}.board-container{align-items:center;display:flex;flex:1 1;justify-content:center;min-height:0;overflow:hidden;padding:10px}.game-controls{align-items:center;display:flex;flex-direction:column;gap:12px;padding:12px 20px}.control-button{border:none;border-radius:8px;box-shadow:0 4px 12px #0000004d;cursor:pointer;font-size:18px;font-weight:600;padding:12px 32px;transition:all .3s ease}.control-button:hover{box-shadow:0 6px 16px #0006;transform:translateY(-2px)}.control-button:active{box-shadow:0 2px 8px #0000004d;transform:translateY(0)}.victory-animation-container{animation:fadeIn .5s ease-out;height:100vh;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100vw;z-index:9999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.victory-title-wrapper{animation:victoryTitleEntrance 1s ease-out;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10002}.victory-title{animation:victoryFloat 3s ease-in-out infinite;text-align:center}.victory-crown{animation:crownRotate 4s ease-in-out infinite;filter:drop-shadow(0 0 30px rgba(255,215,0,.8));font-size:80px;margin-bottom:20px}.victory-text{-webkit-text-fill-color:#0000;animation:gradientShift 3s ease infinite;background:linear-gradient(135deg,gold,orange,tomato,gold);-webkit-background-clip:text;background-clip:text;background-size:300% 300%;font-size:72px;font-weight:900;letter-spacing:3px;margin:0;text-shadow:0 0 40px #ffd70080;text-transform:uppercase}.victory-subtitle{animation:subtitlePulse 2s ease-in-out infinite;font-size:24px;font-weight:600;margin-top:10px;opacity:.9}@keyframes victoryTitleEntrance{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}50%{transform:translate(-50%,-50%) scale(1.2)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes victoryFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes crownRotate{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes subtitlePulse{0%,to{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.victory-particles{height:100%;left:0;position:absolute;top:0;width:100%;z-index:10000}.particle{animation:particleAnimation 5s ease-out infinite;border-radius:50%;height:6px;opacity:0;position:absolute;width:6px}.particle-0{background:linear-gradient(135deg,gold,orange);box-shadow:0 0 10px #ffd700cc}.particle-1{background:linear-gradient(135deg,#ff6b6b,#ff4757);box-shadow:0 0 10px #ff6b6bcc}.particle-2{background:linear-gradient(135deg,#4ecdc4,#00d2d3);box-shadow:0 0 10px #4ecdc4cc}.particle-3{background:linear-gradient(135deg,#45b7d1,#54a0ff);box-shadow:0 0 10px #45b7d1cc}.particle-4{background:linear-gradient(135deg,#96ceb4,#6ab04c);box-shadow:0 0 10px #96ceb4cc}.particle-5{background:linear-gradient(135deg,plum,orchid);box-shadow:0 0 10px #dda0ddcc}@keyframes particleAnimation{0%{opacity:0;transform:translateY(100vh) scale(0)}20%{opacity:1;transform:translateY(80vh) scale(1)}to{opacity:0;transform:translateY(-100vh) scale(.5) rotate(1turn)}}.victory-light-rays{height:200%;transform:translate(-50%,-50%);width:200%;z-index:9999}.light-ray,.victory-light-rays{left:50%;position:absolute;top:50%}.light-ray{animation:lightRayRotate 20s linear infinite;background:linear-gradient(180deg,#0000 0,#ffd7004d 45%,#ffd70099 50%,#ffd7004d 55%,#0000);height:1000px;transform-origin:center;width:3px}@keyframes lightRayRotate{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}.hex-burst-container{animation:hexBurstScale 3s ease-out;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:10001}.hex-burst{animation:hexBurstExpand 3s ease-out infinite;background:linear-gradient(135deg,#ffd7004d,#0000);-webkit-clip-path:polygon(30% 0,70% 0,100% 50%,70% 100%,30% 100%,0 50%);clip-path:polygon(30% 0,70% 0,100% 50%,70% 100%,30% 100%,0 50%);height:100px;position:absolute;width:100px}@keyframes hexBurstScale{0%{transform:translate(-50%,-50%) scale(0)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes hexBurstExpand{0%{opacity:1;transform:scale(0) rotate(0deg)}to{opacity:0;transform:scale(5) rotate(60deg)}}.premium-fireworks{height:100%;left:0;position:absolute;top:0;width:100%;z-index:10000}.premium-firework{animation:fireworkLaunch 3s ease-out infinite;height:200px;position:absolute;width:200px}.firework-center{background:#fff;border-radius:50%;box-shadow:0 0 20px #fffc;height:10px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:10px}.firework-particle{animation:fireworkParticleExpand 2s ease-out infinite;height:40px;left:50%;position:absolute;top:50%;transform-origin:center bottom;width:4px}@keyframes fireworkLaunch{0%{opacity:0;transform:scale(0)}20%{opacity:1;transform:scale(.2)}50%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@keyframes fireworkParticleExpand{0%{height:0;opacity:1}50%{height:60px;opacity:1}to{height:80px;opacity:0}}@media (max-width:768px){.game-header{padding:12px 16px}.game-title{font-size:24px}.back-button,.theme-selector select{font-size:14px;padding:6px 12px}.score-item{font-size:16px}.status-text{font-size:18px}.control-button{font-size:16px;padding:10px 24px}}.online-game-screen{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;width:100vw}.online-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:16px 24px}.back-button{border-radius:8px;box-shadow:0 2px 8px #0003;font-weight:500;padding:12px 20px}.back-button:hover{box-shadow:0 3px 10px #0000004d;transform:translateY(-1px)}.connection-status{align-items:center;display:flex;font-size:14px;font-weight:500;gap:8px}.status-indicator{animation:pulse 2s infinite;border-radius:50%;height:12px;width:12px}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.online-content{align-items:center;display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:24px}.online-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#66bb6a,#42a5f5);-webkit-background-clip:text;background-clip:text;font-size:48px;font-weight:800;margin:0 0 32px;text-shadow:2px 2px 4px #00000080}.error-message{border-radius:8px;font-weight:500;margin-bottom:24px;max-width:500px;padding:16px 24px;text-align:center;width:100%}.lobby-actions{gap:32px;max-width:400px;width:100%}.action-section,.lobby-actions{display:flex;flex-direction:column}.action-section{gap:16px;text-align:center}.action-section h3{font-size:24px;font-weight:600;margin:0}.action-button{border:none;border-radius:10px;box-shadow:0 3px 12px #0000004d;cursor:pointer;font-size:18px;font-weight:600;padding:16px 24px;transition:all .3s ease}.action-button:hover:not(:disabled){box-shadow:0 5px 16px #0006;transform:translateY(-2px)}.action-button:disabled{cursor:not-allowed}.divider{height:1px;margin:16px 0;width:100%}.join-room-input{display:flex;gap:12px}.join-room-input input{border:1px solid;border-radius:8px;flex:1 1;font-size:18px;font-weight:500;letter-spacing:2px;padding:16px;text-align:center;text-transform:uppercase}.room-view{gap:32px;max-width:600px;width:100%}.room-info,.room-view{display:flex;flex-direction:column}.room-info{gap:24px}.players-section h3,.room-code-section h3{font-size:20px;font-weight:600;margin:0 0 12px}.room-code-display{align-items:center;display:flex;gap:12px}.room-code{border-radius:8px;flex:1 1;font-size:32px;font-weight:800;letter-spacing:4px;padding:16px 24px;text-align:center}.copy-button{border:none;border-radius:8px;box-shadow:0 2px 8px #0003;cursor:pointer;font-size:16px;font-weight:500;padding:16px 20px;transition:all .3s ease;white-space:nowrap}.copy-button:hover{box-shadow:0 3px 10px #0000004d;transform:translateY(-1px)}.players-list{display:flex;flex-direction:column;gap:12px}.player-item{align-items:center;border-radius:8px;display:flex;font-size:16px;font-weight:500;gap:12px;padding:16px}.player-color-indicator{border:2px solid #fff3;border-radius:50%;height:24px;width:24px}.room-actions{display:flex;gap:16px;justify-content:center}.leave-room,.start-game{border-radius:10px;font-size:18px;font-weight:600;padding:16px 32px}.chat-section{display:flex;flex-direction:column;gap:12px}.chat-section h3{font-size:18px;font-weight:600;margin:0}.chat-messages{border-radius:8px;display:flex;flex-direction:column;gap:8px;height:200px;overflow-y:auto;padding:16px}.chat-message{display:flex;flex-wrap:wrap;gap:8px;word-break:break-word}.message-sender{font-weight:600;min-width:-webkit-fit-content;min-width:fit-content}.chat-input{display:flex;gap:12px}.chat-input input{border:1px solid;border-radius:8px;flex:1 1;font-size:14px;padding:12px 16px}.send-button{border:none;border-radius:8px;box-shadow:0 2px 8px #0003;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .3s ease;white-space:nowrap}.send-button:hover:not(:disabled){box-shadow:0 3px 10px #0000004d;transform:translateY(-1px)}.send-button:disabled{cursor:not-allowed}@media (max-width:768px){.online-title{font-size:36px}.room-code{font-size:24px;letter-spacing:2px}.room-code-display{flex-direction:column;gap:8px}.copy-button{width:100%}.join-room-input,.room-actions{flex-direction:column}.chat-messages{height:150px}}@media (max-height:600px){.online-title{font-size:32px;margin-bottom:16px}.online-content{padding:16px}.lobby-actions,.room-view{gap:16px}.action-section{gap:12px}.chat-messages{height:120px}}.how-to-play{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;animation:backgroundShift 20s ease-in-out infinite;background:radial-gradient(circle at 20% 80%,#3f51b526 0,#0000 50%),radial-gradient(circle at 80% 20%,#66bb6a26 0,#0000 50%),radial-gradient(circle at 50% 50%,#9c27b014 0,#0000 60%),linear-gradient(135deg,#192030f2,#0f1423fa);background-size:100% 100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;overflow-x:hidden;overflow-y:auto;padding:20px;width:100vw}.how-to-play-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:20px;box-shadow:0 8px 32px #0000004d;margin:0 auto 40px;max-width:900px;padding:40px}.how-to-play-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;gap:20px;margin-bottom:40px;padding-bottom:20px}.how-to-play-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#66bb6a,#42a5f5,#9c27b0);-webkit-background-clip:text;background-clip:text;font-size:42px;font-weight:800;margin:0;text-shadow:2px 2px 4px #00000080}.back-button{border:none;border-radius:10px;box-shadow:0 4px 12px #0000004d;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.back-button:hover{box-shadow:0 6px 16px #0006;transform:translateY(-2px)}.how-to-play-sections{display:flex;flex-direction:column;gap:40px}.rule-section{background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;box-shadow:0 4px 16px #0003;padding:30px}.rule-section h2{align-items:center;display:flex;font-size:28px;font-weight:700;gap:12px;margin:0 0 20px}.rule-section h3{font-size:20px;font-weight:600;margin:20px 0 12px}.rule-section p{font-size:16px;line-height:1.6;margin:0 0 16px}.rule-section ul{margin:0 0 16px;padding-left:20px}.rule-section li{font-size:16px;line-height:1.6;margin:8px 0}.diagram-container{background:#0003;border:1px solid #ffffff1a;border-radius:12px;display:flex;justify-content:center;margin:20px 0;padding:20px}.diagram-container canvas{border-radius:8px;box-shadow:0 4px 12px #0000004d;height:auto;max-width:100%}.move-type{background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px;margin:24px 0;padding:20px}.push-rules{margin-top:20px}.push-rules h3{color:#ff6b6b;margin-bottom:16px}.strategy-tips,.win-conditions{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:20px}.tip,.win-condition{background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px;padding:20px}.tip h3,.win-condition h3{font-size:18px;margin:0 0 12px}.tip p,.win-condition p{font-size:14px;line-height:1.5;margin:0}@media (max-width:768px){.how-to-play{padding:10px}.how-to-play-content{padding:20px}.how-to-play-header{align-items:flex-start;flex-direction:column;gap:12px}.how-to-play-header h1{font-size:32px}.rule-section{padding:20px}.rule-section h2{font-size:24px}.diagram-container canvas{height:auto;max-width:100%}.strategy-tips,.win-conditions{grid-template-columns:1fr}}@media (max-height:600px){.how-to-play-content{padding:20px}.how-to-play-sections{gap:24px}.rule-section{padding:20px}}@keyframes backgroundShift{0%,to{background:radial-gradient(circle at 20% 80%,#3f51b526 0,#0000 50%),radial-gradient(circle at 80% 20%,#66bb6a26 0,#0000 50%),radial-gradient(circle at 50% 50%,#9c27b014 0,#0000 60%),linear-gradient(135deg,#192030f2,#0f1423fa)}50%{background:radial-gradient(circle at 80% 20%,#3f51b52e 0,#0000 50%),radial-gradient(circle at 20% 80%,#66bb6a2e 0,#0000 50%),radial-gradient(circle at 30% 70%,#9c27b01f 0,#0000 60%),linear-gradient(135deg,#0f1423f2,#192030fa)}}.app{height:100vh;overflow:hidden;position:relative;width:100vw}*,.app{margin:0;padding:0}*{box-sizing:border-box}body,html{margin:0;overflow:hidden;padding:0;touch-action:manipulation;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}canvas{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.app *{transition:background-color .3s ease,color .3s ease}
/*# sourceMappingURL=main.26324729.css.map*/