.game-header{display:flex;flex-direction:column;align-items:center;width:100%;margin-bottom:1rem;margin-top:0}.game-header .title-container{display:flex;align-items:center;justify-content:center;margin-bottom:1rem;position:relative}.game-header .title-container .game-title{margin-bottom:0;background:linear-gradient(90deg,#1890ff,#36cfc9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-align:center;font-weight:800;letter-spacing:.5px;font-size:2rem;position:relative}.game-header .title-container .game-title:after{content:"";position:absolute;bottom:-6px;left:0;width:100%;height:3px;background:linear-gradient(90deg,#1890ff,#36cfc9);border-radius:3px}.game-header .title-container .level-badge{margin-left:10px}.game-header .title-container .level-badge .ant-badge-count{padding:0 10px;background:linear-gradient(90deg,#52c41a,#13c2c2);border-radius:12px;box-shadow:0 2px 8px #13c2c24d;font-weight:600;height:24px;line-height:24px}.game-header .title-container .level-badge .level-badge-content{display:flex;align-items:center;gap:4px;font-size:14px}.game-header .level-indicator{display:flex;align-items:center;margin-bottom:1rem;background:#fff;padding:8px 16px;border-radius:30px;box-shadow:0 4px 12px #0000000f;transition:all .3s ease}.game-header .level-indicator:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.game-header .level-indicator .trophy-icon{color:#faad14;font-size:22px;margin-right:10px;filter:drop-shadow(0 2px 4px rgba(250,173,20,.3))}.game-header .level-indicator .level-text{font-size:16px;font-weight:600;color:#262626;position:relative}.game-header .level-indicator .level-text:after{content:"";position:absolute;bottom:-2px;left:0;width:100%;height:2px;background-color:#1890ff4d;border-radius:2px}.game-header .status-alert{width:100%;max-width:100%;margin-bottom:.5rem;border-radius:10px;box-shadow:0 3px 8px #0000000d;font-weight:500;border:none}.game-header .status-alert.ant-alert-info{background-color:#e6f7ff;border-left:4px solid #1890ff}.game-header .status-alert.ant-alert-success{background-color:#f6ffed;border-left:4px solid #52c41a}.game-header .status-alert.ant-alert-warning{background-color:#fffbe6;border-left:4px solid #faad14}.game-header .status-alert.ant-alert-error{background-color:#fff1f0;border-left:4px solid #f5222d}@media (max-width: 768px){.game-header{margin-bottom:.5rem}.game-header .title-container{margin-bottom:.75rem}.game-header .title-container .game-title{font-size:1.75rem}.game-header .level-indicator{padding:6px 12px;margin-bottom:.75rem}.game-header .level-indicator .trophy-icon{font-size:20px;margin-right:8px}.game-header .level-indicator .level-text{font-size:14px}}@media (max-width: 480px){.game-header .title-container .game-title{font-size:1.5rem}.game-header .status-alert{font-size:12px;padding:8px}}.three-scene-container{border-radius:15px;overflow:hidden;position:relative;width:100%;height:100%;box-shadow:0 10px 30px #0000001a,inset 0 0 10px #ffffff80;touch-action:none}.three-scene-container canvas{outline:none;display:block;touch-action:none}.three-scene-container .canvas-loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f5f7facc;z-index:10}.three-scene-container .canvas-loading .spinner{font-size:32px;color:#1890ff}.game-board{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;margin-bottom:0;flex-grow:1;position:relative}.game-board .cups-container{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;width:100%;margin:0 auto;padding:2rem;background-color:#fff;background-image:radial-gradient(#f0f0f0 1px,transparent 1px);background-size:20px 20px;border-radius:16px;box-shadow:0 12px 24px #00000014,0 4px 12px #0000000f;border:1px solid rgba(240,240,240,.8);position:relative;overflow:hidden}.game-board .cups-container:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#1890ff,#36cfc9);border-top-left-radius:16px;border-top-right-radius:16px}.game-board.game-board-3d{min-height:550px;height:60vh;width:100%;border-radius:15px;background:linear-gradient(135deg,#f5f7fa,#e4e8eb);overflow:hidden;box-shadow:0 8px 24px #00000014,inset 0 0 10px #ffffff80}.game-board.game-board-3d[data-cups="5"],.game-board.game-board-3d[data-cups="6"]{min-height:550px}.game-board.game-board-3d[data-cups="7"],.game-board.game-board-3d[data-cups="8"]{min-height:600px;height:65vh}.game-board.game-board-3d canvas{border-radius:15px;outline:none;width:100%;height:100%}.game-board .swap-button-container{position:absolute;top:15px;right:15px;z-index:10;transform:translate(0);pointer-events:auto}.game-board .swap-button-container .swap-button{font-size:.9rem;height:40px;padding:0 16px;border-radius:20px;background:linear-gradient(90deg,#1890ff,#36cfc9);border:none;box-shadow:0 4px 12px #1890ff33;transition:all .3s cubic-bezier(.4,0,.2,1)}.game-board .swap-button-container .swap-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #1890ff4d;background:linear-gradient(90deg,#40a9ff,#5cdbd3)}.game-board .swap-button-container .swap-button:active{transform:translateY(-1px);box-shadow:0 3px 8px #1890ff33}.game-board .swap-button-container .swap-button:disabled{opacity:.6;background:#f0f0f0;color:#00000040;box-shadow:none}@media (max-width: 768px){.game-board{min-height:400px;height:45vh;margin-bottom:1rem}.game-board .cups-container{padding:1.5rem;gap:16px}.game-board .swap-button-container{top:10px;right:10px}.game-board .swap-button-container .swap-button{font-size:.8rem;height:36px;padding:0 12px}}@media (max-width: 480px){.game-board{min-height:350px;height:40vh}.game-board .cups-container{padding:1rem;gap:12px}.game-board .swap-button-container{top:8px;right:8px}.game-board .swap-button-container .swap-button{font-size:.75rem;height:32px;padding:0 10px}}.nav-bar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background-color:#fff;box-shadow:0 4px 12px #00000014;width:100%;position:fixed;top:0;left:0;z-index:100;border-bottom:4px solid transparent;border-image:linear-gradient(90deg,#1890ff,#36cfc9);border-image-slice:1}.nav-bar .nav-logo{font-size:1.8rem;font-weight:800;background:linear-gradient(90deg,#1890ff,#36cfc9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.5px}.nav-bar .nav-controls .ant-btn{border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-bar .nav-controls .ant-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 10px #00000026}.nav-bar .nav-controls .ant-btn:active{transform:translateY(0)}.nav-bar .nav-controls .hint-button{background-color:#fffbe6;border-color:#ffe58f;color:#d48806}.nav-bar .nav-controls .hint-button:hover:not(:disabled){background-color:#fff1b8;border-color:#ffd666;color:#d48806}@media (max-width: 768px){.nav-bar{padding:.8rem;flex-direction:column;gap:10px}.nav-bar .nav-logo{font-size:1.5rem}.nav-bar .nav-controls .ant-space{flex-wrap:wrap;justify-content:center;gap:8px!important}}.help-modal .ant-modal-content{border-radius:8px}.help-modal .help-content{padding:0 12px}.help-modal .help-content .game-description{font-size:16px;margin-bottom:24px}.help-modal .help-content .game-steps{margin:24px 0}.help-modal .help-content .tips-list{margin-left:24px}.help-modal .help-content .tips-list li{margin-bottom:8px;font-size:14px}.score-display{width:100%;margin-bottom:0;height:100%}.score-display .score-card{border-radius:16px;box-shadow:0 8px 16px #0000000f,0 4px 8px #0000000a;background:linear-gradient(to bottom,#fff,#fafafa);border:1px solid rgba(240,240,240,.8);overflow:hidden;transition:all .3s ease;position:relative;height:100%}.score-display .score-card:after{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#1890ff,#36cfc9);z-index:1}.score-display .score-card:hover{transform:translateY(-3px);box-shadow:0 12px 20px #00000014,0 8px 12px #0000000f}.score-display .score-card .ant-card-body{padding:16px 20px}.score-display .score-title{margin-bottom:1rem!important;display:flex;justify-content:space-between;align-items:center;position:relative;font-weight:700;font-size:1.1rem!important}.score-display .score-title:after{content:"";position:absolute;bottom:-8px;left:0;width:40px;height:3px;background:linear-gradient(90deg,#1890ff,#36cfc9);border-radius:3px}.score-display .high-score{font-size:12px;color:#8c8c8c;text-align:center;margin-top:6px;font-weight:500;background-color:#f9f9f9;padding:2px 8px;border-radius:10px;display:inline-block}.score-display .score-container{display:flex;flex-direction:column;padding:12px;border-radius:12px;transition:all .3s ease;background-color:#fafafa;height:100%}.score-display .score-container:hover{background-color:#f0f5ff;transform:translateY(-2px)}.score-display .score-container .best-score{display:flex;align-items:center;margin-top:6px;padding:4px 8px;border-radius:10px;background:linear-gradient(90deg,#faad1426,#fa8c161a);font-size:12px;color:#d48806;border:1px dashed #ffd591}.score-display .score-container .best-score .best-score-icon{color:#faad14;margin-right:4px;font-size:14px;filter:drop-shadow(0 1px 2px rgba(250,173,20,.3))}.score-display .score-container .best-score .best-score-label{color:#8c8c8c;margin-right:2px;font-weight:500}.score-display .score-container .best-score .best-score-value{font-weight:700;color:#d48806;font-size:14px}.score-display .ant-statistic{position:relative;padding:12px;border-radius:12px;transition:all .3s ease;background-color:#fafafa;height:100%}.score-display .ant-statistic:hover{background-color:#f0f5ff;transform:translateY(-2px)}.score-display .ant-statistic .ant-statistic-title{font-size:14px;color:#8c8c8c;font-weight:500;margin-bottom:8px}.score-display .ant-statistic .ant-statistic-content{font-size:22px;font-weight:700}.score-display .ant-statistic .ant-statistic-content .anticon{margin-right:6px;font-size:18px}@media (min-width: 769px){.score-display .ant-row{flex-direction:column}.score-display .ant-row .ant-col{max-width:100%!important;flex:0 0 100%!important;margin-bottom:10px}}@media (max-width: 768px){.score-display .ant-statistic,.score-display .score-container{margin-bottom:12px;height:auto}}@media (max-width: 480px){.score-display .score-card .ant-card-body{padding:12px 16px}.score-display .score-title{font-size:1rem!important;margin-bottom:12px!important}.score-display .ant-statistic-content{font-size:18px!important}}.leaderboard-modal .leaderboard-title{display:flex;align-items:center}.leaderboard-modal .leaderboard-title .trophy-icon{color:gold;font-size:24px;margin-right:12px}.leaderboard-modal .leaderboard-title h3{margin:0}.leaderboard-modal .leaderboard-table{margin-top:16px}.leaderboard-modal .leaderboard-table .ant-table-thead>tr>th{background-color:#f5f5f5;font-weight:600}.leaderboard-modal .leaderboard-table .ant-table-tbody>tr:hover>td{background-color:#e6f7ff}.leaderboard-modal .no-scores{margin:40px 0}.settings-modal .settings-title{margin-bottom:0!important;text-align:center;background:linear-gradient(90deg,#1890ff,#36cfc9);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.settings-modal .settings-section{margin-bottom:1rem}.settings-modal .settings-section h5.ant-typography{margin-bottom:16px;font-weight:600;color:#262626;position:relative;display:inline-block}.settings-modal .settings-section h5.ant-typography:after{content:"";position:absolute;bottom:-4px;left:0;width:40px;height:2px;background:linear-gradient(90deg,#1890ff,#36cfc9);border-radius:2px}.settings-modal .setting-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.settings-modal .setting-item:last-child{margin-bottom:0}.settings-modal .setting-item .setting-label{flex:1;font-size:15px}.settings-modal .setting-item .setting-label .ant-typography{color:#595959;font-weight:500}.settings-modal .setting-item .setting-control{flex:2;display:flex;justify-content:flex-end}.settings-modal .setting-item .setting-control.slider-control{padding-left:24px}.settings-modal .setting-item .setting-control.slider-control .ant-slider{margin:10px 12px 30px;width:100%}.settings-modal .setting-item .setting-control.slider-control .ant-slider .ant-slider-mark{top:18px}.settings-modal .setting-item .setting-control.slider-control .ant-slider .ant-slider-mark .ant-slider-mark-text{color:#000000a6;font-size:12px;white-space:nowrap}.settings-modal .setting-item .setting-control.slider-control .ant-slider .ant-slider-handle{z-index:3}.settings-modal .game-mode-group{width:100%;display:flex}.settings-modal .game-mode-group .ant-radio-button-wrapper{flex:1;text-align:center;display:flex;justify-content:center;align-items:center;height:40px}.settings-modal .game-mode-group .ant-radio-button-wrapper .anticon{margin-right:6px}.settings-modal .ant-modal-footer{display:flex;justify-content:flex-end;padding:16px 24px;border-top:1px solid #f0f0f0}.settings-modal .ant-modal-footer .ant-space{display:flex;justify-content:flex-end;width:100%}.settings-modal .ant-modal-footer .ant-space .ant-space-item{margin-right:8px!important}.settings-modal .ant-modal-footer .ant-space .ant-space-item:last-child{margin-right:0!important}.settings-modal .ant-modal-footer button{min-width:70px}.settings-modal .ant-slider-with-marks{margin-bottom:28px}[class*=-dark] .settings-modal .settings-title{background:linear-gradient(90deg,#1890ff,#36cfc9)}[class*=-dark] .settings-modal .settings-section h5.ant-typography{color:#f0f0f0}[class*=-dark] .settings-modal .setting-item .setting-label .ant-typography{color:#d9d9d9}[class*=-dark] .settings-modal .setting-item .setting-control.slider-control .ant-slider .ant-slider-mark .ant-slider-mark-text{color:#ffffffa6}@media (max-width: 576px){.settings-modal .setting-item{flex-direction:column;align-items:flex-start}.settings-modal .setting-item .setting-label{margin-bottom:8px}.settings-modal .setting-item .setting-control{width:100%;justify-content:flex-start}.settings-modal .setting-item .setting-control.slider-control{padding-left:0}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f5f5f5;color:#333}.app-container{display:flex;flex-direction:column;min-height:100vh;align-items:center;padding:4rem 1rem 2rem;background:linear-gradient(135deg,#f6f9fc,#d4e4f7);position:relative;overflow:hidden}.app-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 10% 20%,rgba(255,255,255,.8) 0%,transparent 30%);pointer-events:none}.game-wrapper{flex:1;display:flex;flex-direction:column;padding:1rem;width:100%;max-width:1200px;position:relative;z-index:1}.game-layout{display:flex;flex-direction:column;flex:1;gap:1rem}.game-header{width:100%}.game-main-content{display:flex;flex:1;gap:1.5rem;align-items:flex-start}.game-sidebar{display:flex;flex-direction:column;gap:1rem;min-width:250px;height:60vh}.welcome-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3.5rem;background-color:#fff;border-radius:24px;box-shadow:0 20px 40px #0000001f,0 10px 20px #00000014;position:relative;overflow:hidden}.welcome-screen:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#1890ff,#36cfc9)}.welcome-screen h1{font-size:2.8rem;margin-bottom:1.5rem;background:linear-gradient(90deg,#1890ff,#36cfc9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-weight:700}.welcome-screen p{font-size:1.2rem;margin-bottom:2.5rem;color:#666;line-height:1.6;max-width:600px}.div-container:before{content:"";position:absolute;top:-20px;left:50%;transform:translate(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-top:20px solid black;display:none}.div-container.selected:before{display:block}.final-result{display:flex;margin-bottom:64px}.match-cups-container{display:flex;flex-wrap:wrap;justify-content:center;width:75%;margin:0 auto;gap:24px}@media (max-width: 768px){.game-main-content{flex-direction:column}.game-sidebar{width:100%;flex-direction:row;align-items:center}.game-sidebar .score-display{flex:1}.welcome-screen{padding:2rem}.welcome-screen h1{font-size:2rem}}@media (max-width: 480px){.game-sidebar{flex-direction:column}}.game-info{display:flex;align-items:center;justify-content:center;gap:24px;margin-bottom:1.5rem;flex-wrap:wrap;width:100%}.game-info .difficulty-badge .ant-tag,.game-info .mode-badge .ant-tag{font-size:15px;padding:6px 12px;border-radius:20px;font-weight:500;box-shadow:0 2px 6px #0000001a}.game-info .game-mode-indicator{display:flex;align-items:center;gap:10px;padding:8px 16px;border-radius:20px;font-size:15px;font-weight:600;box-shadow:0 2px 6px #0000001a;transition:all .3s ease}.game-info .game-mode-indicator:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.game-info .game-mode-indicator.time-attack{background-color:#fff7e6;color:#fa8c16;border:1px solid #ffd591}.game-info .game-mode-indicator.limited-moves{background-color:#e6fffb;color:#13c2c2;border:1px solid #87e8de}.game-info .game-stats{display:flex;justify-content:center;gap:16px;margin-top:24px;width:100%}.game-info .game-stats .stat-card{padding:16px 24px;border-radius:16px;background:#fff;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;align-items:center;min-width:100px;transition:all .3s ease}.game-info .game-stats .stat-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001f}.game-info .game-stats .stat-card .stat-label{font-size:14px;color:#8c8c8c;margin-bottom:6px}.game-info .game-stats .stat-card .stat-value{font-size:24px;font-weight:700;color:#262626}
