:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;background:transparent}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.card{padding:2em}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.error-boundary[data-v-18d5d9d7]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.error-content[data-v-18d5d9d7]{background:#fff;border-radius:12px;padding:30px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;text-align:center;box-shadow:0 10px 30px #0000004d}.error-icon[data-v-18d5d9d7]{font-size:48px;margin-bottom:20px}.error-title[data-v-18d5d9d7]{color:#e74c3c;margin-bottom:15px;font-size:24px}.error-message[data-v-18d5d9d7]{color:#666;margin-bottom:25px;font-size:16px;line-height:1.5}.error-details[data-v-18d5d9d7]{margin-bottom:25px;text-align:left}.error-details summary[data-v-18d5d9d7]{cursor:pointer;color:#3498db;font-weight:700;margin-bottom:10px}.error-info[data-v-18d5d9d7]{background:#f8f9fa;padding:15px;border-radius:6px;font-size:14px}.error-stack[data-v-18d5d9d7]{margin-top:10px}.error-stack pre[data-v-18d5d9d7]{background:#2c3e50;color:#ecf0f1;padding:10px;border-radius:4px;font-size:12px;overflow-x:auto;max-height:200px}.error-actions[data-v-18d5d9d7]{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:25px}.error-btn[data-v-18d5d9d7]{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:700;transition:all .3s ease;min-width:100px}.retry-btn[data-v-18d5d9d7]{background:#3498db;color:#fff}.retry-btn[data-v-18d5d9d7]:hover{background:#2980b9}.reset-btn[data-v-18d5d9d7]{background:#e74c3c;color:#fff}.reset-btn[data-v-18d5d9d7]:hover{background:#c0392b}.report-btn[data-v-18d5d9d7]{background:#f39c12;color:#fff}.report-btn[data-v-18d5d9d7]:hover{background:#e67e22}.back-btn[data-v-18d5d9d7]{background:#95a5a6;color:#fff}.back-btn[data-v-18d5d9d7]:hover{background:#7f8c8d}.error-tips[data-v-18d5d9d7]{background:#e8f4fd;padding:15px;border-radius:6px;text-align:left;font-size:14px}.error-tips p[data-v-18d5d9d7]{margin-bottom:10px;font-weight:700;color:#2980b9}.error-tips ul[data-v-18d5d9d7]{margin:0;padding-left:20px}.error-tips li[data-v-18d5d9d7]{margin-bottom:5px;color:#666}@media (max-width: 768px){.error-content[data-v-18d5d9d7]{padding:20px;margin:10px}.error-actions[data-v-18d5d9d7]{flex-direction:column}.error-btn[data-v-18d5d9d7]{width:100%}}.error-toast[data-v-6562a048]{position:fixed;top:20px;right:20px;max-width:400px;min-width:300px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:flex-start;padding:16px;z-index:9998;cursor:pointer;transition:all .3s ease}.error-toast[data-v-6562a048]:hover{box-shadow:0 6px 20px #0003;transform:translateY(-2px)}.toast-low[data-v-6562a048]{border-left:4px solid #ffa726;background:#fff8e1}.toast-medium[data-v-6562a048]{border-left:4px solid #ff7043;background:#fce4ec}.toast-high[data-v-6562a048]{border-left:4px solid #e53935;background:#ffebee}.toast-critical[data-v-6562a048]{border-left:4px solid #d32f2f;background:#ffcdd2;animation:shake-6562a048 .5s ease-in-out}.toast-icon[data-v-6562a048]{font-size:20px;margin-right:12px;flex-shrink:0;margin-top:2px}.toast-content[data-v-6562a048]{flex:1;min-width:0}.toast-message[data-v-6562a048]{font-weight:500;color:#333;line-height:1.4;margin-bottom:4px}.toast-details[data-v-6562a048]{font-size:12px;color:#666;line-height:1.3;margin-top:8px;padding:8px;background:#0000000d;border-radius:4px;word-break:break-word}.toast-progress[data-v-6562a048]{margin-top:8px;height:2px;background:#0000001a;border-radius:1px;overflow:hidden}.progress-bar[data-v-6562a048]{height:100%;background:linear-gradient(90deg,#4caf50,#2196f3);width:100%;animation:progress-6562a048 linear;transform-origin:left}@keyframes progress-6562a048{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-actions[data-v-6562a048]{display:flex;gap:4px;margin-left:8px;flex-shrink:0}.toast-btn[data-v-6562a048]{width:24px;height:24px;border:none;background:#0000001a;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease;color:#666}.toast-btn[data-v-6562a048]:hover{background:#0003;transform:scale(1.1)}.toast-btn.retry[data-v-6562a048]{color:#2196f3}.toast-btn.retry[data-v-6562a048]:hover{background:#2196f31a}.toast-btn.report[data-v-6562a048]{color:#ff9800}.toast-btn.report[data-v-6562a048]:hover{background:#ff98001a}.toast-btn.details[data-v-6562a048]{color:#9c27b0}.toast-btn.details[data-v-6562a048]:hover{background:#9c27b01a}.toast-btn.dismiss[data-v-6562a048]{color:#f44336;font-weight:700}.toast-btn.dismiss[data-v-6562a048]:hover{background:#f443361a}.toast-enter-active[data-v-6562a048],.toast-leave-active[data-v-6562a048]{transition:all .3s ease}.toast-enter-from[data-v-6562a048],.toast-leave-to[data-v-6562a048]{opacity:0;transform:translate(100%) scale(.8)}@keyframes shake-6562a048{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (max-width: 768px){.error-toast[data-v-6562a048]{top:10px;right:10px;left:10px;max-width:none;min-width:0}.toast-message[data-v-6562a048]{font-size:14px}.toast-details[data-v-6562a048]{font-size:11px}}.error-toast[data-v-6562a048]:nth-child(2){top:90px;transform:scale(.95);opacity:.9}.error-toast[data-v-6562a048]:nth-child(3){top:160px;transform:scale(.9);opacity:.8}.error-toast[data-v-6562a048]:nth-child(n+4){display:none}@media (prefers-color-scheme: dark){.error-toast[data-v-6562a048]{background:#2d2d2d;color:#fff}.toast-message[data-v-6562a048]{color:#fff}.toast-details[data-v-6562a048]{background:#ffffff1a;color:#ccc}.toast-low[data-v-6562a048]{background:#3e2723;border-left-color:#ffb74d}.toast-medium[data-v-6562a048]{background:#3e2723;border-left-color:#ff8a65}.toast-high[data-v-6562a048]{background:#3e2723;border-left-color:#ef5350}.toast-critical[data-v-6562a048]{background:#3e2723;border-left-color:#f44336}}.game-board-container[data-v-24ee858a]{position:relative;transform:translateZ(0);will-change:transform}.debug-info[data-v-24ee858a]{background:#ffffffe6;padding:4px 8px;border-radius:4px}.no-tiles-warning[data-v-24ee858a]{grid-column:1 / -1;grid-row:1 / -1;display:flex;align-items:center;justify-content:center;background:#ffebee;color:#c62828;font-size:18px;font-weight:700}.game-board[data-v-24ee858a]{width:min(95vw,500px);height:min(95vw,500px);max-width:500px;max-height:500px;margin:0 auto;display:grid;gap:3px;background:#e0e0e0;border-radius:12px;padding:12px;position:relative;box-shadow:0 4px 12px #00000026}.optimized-board[data-v-24ee858a]{transform:translateZ(0);will-change:transform;backface-visibility:hidden;perspective:1000px;contain:layout style paint}.game-tile[data-v-24ee858a]{aspect-ratio:1;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;position:relative;user-select:none;background:#fff;box-shadow:0 3px 6px #00000026;touch-action:manipulation;font-size:28px;font-weight:700;border:2px solid #ddd;min-height:50px}.optimized-tile[data-v-24ee858a]{transform:translateZ(0);will-change:transform,opacity;backface-visibility:hidden;perspective:1000px;transform-style:preserve-3d;contain:layout style paint size;isolation:isolate;content-visibility:auto;transition:transform .1s cubic-bezier(.4,0,.2,1),opacity .1s cubic-bezier(.4,0,.2,1);min-width:50px;overflow:visible;box-sizing:border-box;position:relative;z-index:0}.optimized-tile[data-v-24ee858a]:hover{transform:translateZ(0) scale(1.01)}.optimized-tile[data-v-24ee858a]:active{transform:translateZ(0) scale(.99);transition-duration:.05s}.optimized-tile.selected[data-v-24ee858a]{transform:translateZ(0) scale(1.03);border-color:#ff6b35}.optimized-tile.matched[data-v-24ee858a]{transform:translateZ(0) scale(1.05);background:#e8f5e8;animation:matchPulse-24ee858a .3s ease-out}.optimized-tile.shaking[data-v-24ee858a]{animation:optimizedShake-24ee858a .3s ease-in-out}.optimized-tile.animating[data-v-24ee858a]{pointer-events:none;animation:fadeOut-24ee858a .4s ease-out forwards}@keyframes matchPulse-24ee858a{0%{transform:translateZ(0) scale(1)}50%{transform:translateZ(0) scale(1.08)}to{transform:translateZ(0) scale(1.05)}}@keyframes optimizedShake-24ee858a{0%,to{transform:translateZ(0) translate(0)}50%{transform:translateZ(0) translate(-2px)}}@keyframes fadeOut-24ee858a{0%{opacity:1;transform:translateZ(0) scale(1)}to{opacity:0;transform:translateZ(0) scale(.9)}}.game-tile img[data-v-24ee858a]{width:85%;height:85%;object-fit:contain;pointer-events:none}.tile-symbol[data-v-24ee858a]{font-size:28px;font-weight:700;color:#333;user-select:none}.tile-debug[data-v-24ee858a]{position:absolute;top:2px;left:2px;font-size:10px;background:#ff0000b3;color:#fff;padding:1px 3px;border-radius:2px;z-index:10}.debug-info[data-v-24ee858a]{position:absolute;top:2px;right:2px;background:#000000b3;color:#fff;font-size:10px;padding:2px 4px;border-radius:3px;font-weight:700}.game-tile[data-v-24ee858a]:hover{transform:scale(1.05)}.game-tile.selected[data-v-24ee858a]{border:3px solid #ff6b35;box-shadow:0 0 15px #ff6b3599,inset 0 0 10px #ff6b3533,0 4px 12px #0003;transform:scale(1.05);z-index:10;background:linear-gradient(135deg,#ff6b351a,#ff6b350d);will-change:transform,box-shadow,border-color;transform-origin:center;transition:all .2s cubic-bezier(.4,0,.2,1)}.game-tile.selected[data-v-24ee858a]:before{content:"";position:absolute;inset:-3px;border:2px solid #ff6b35;border-radius:inherit;animation:selectedPulse-24ee858a 1.5s infinite;z-index:-1;pointer-events:none}@keyframes selectedPulse-24ee858a{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.game-tile.matched[data-v-24ee858a]{animation:matchPulse-24ee858a .3s ease}.game-tile.shake[data-v-24ee858a]{animation:shake-24ee858a .4s ease}.chain-effect[data-v-24ee858a]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:200;pointer-events:none}.chain-text[data-v-24ee858a]{font-size:24px;font-weight:700;color:#ff6b6b;text-shadow:2px 2px 4px rgba(0,0,0,.3);animation:chainPulse-24ee858a 1s ease-out}.particle-effect[data-v-24ee858a]{position:absolute;pointer-events:none;z-index:100}.particle[data-v-24ee858a]{position:absolute;width:4px;height:4px;background:gold;border-radius:50%;animation:particle-float-24ee858a 1s ease-out forwards}.tile-type-0[data-v-24ee858a]{background:transparent!important;opacity:0!important;pointer-events:none!important;transform:scale(0)!important;transition:all .3s ease-out}.tile-type-1[data-v-24ee858a]{background:linear-gradient(135deg,#8b4513,sienna)!important;color:#fff!important;border:2px solid #654321!important}.tile-type-2[data-v-24ee858a]{background:linear-gradient(135deg,#ffb6c1,pink)!important;color:#8b4513!important;border:2px solid #FF69B4!important}.tile-type-3[data-v-24ee858a]{background:linear-gradient(135deg,#ff8c00,orange)!important;color:#fff!important;border:2px solid #FF6347!important}.tile-type-4[data-v-24ee858a]{background:linear-gradient(135deg,#8b4513,#d2691e)!important;color:#fff!important;border:2px solid #A0522D!important}.tile-type-5[data-v-24ee858a]{background:linear-gradient(135deg,#32cd32,#90ee90)!important;color:#006400!important;border:2px solid #228B22!important}.tile-type-6[data-v-24ee858a]{background:linear-gradient(135deg,#000,#696969)!important;color:#fff!important;border:2px solid #333333!important}.game-tile[data-v-24ee858a]{min-width:40px!important;min-height:40px!important;opacity:1!important;visibility:visible!important}.emergency-tiles[data-v-24ee858a]{display:contents}.emergency-tile[data-v-24ee858a]{border:3px dashed #ff0000!important;position:relative}.emergency-tile[data-v-24ee858a]:before{content:"TEST";position:absolute;top:0;left:0;font-size:8px;color:red;background:#fffc;padding:1px}.large-board-tile[data-v-24ee858a]{transition:none!important;box-shadow:none!important;border:1px solid #ddd!important;pointer-events:auto}.large-board-tile[data-v-24ee858a]:hover{transform:translateZ(0)!important;box-shadow:none!important}.large-board-tile.selected[data-v-24ee858a]{border-color:#ff6b35!important;background:#ff6b351a!important;transform:translateZ(0)!important}.large-board-tile.matched[data-v-24ee858a]{background:#e8f5e8!important;border-color:#4caf50!important;transform:translateZ(0)!important}@keyframes matchPulse-24ee858a{0%{transform:scale(1)}50%{transform:scale(1.2);background:gold}to{transform:scale(1)}}@keyframes shake-24ee858a{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes chainPulse-24ee858a{0%{transform:scale(.5);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:0}}@keyframes particle-float-24ee858a{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-50px) scale(.5)}}.overlay[data-v-b55e57a6]{position:absolute;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal[data-v-b55e57a6]{background:#fff;padding:30px;border-radius:15px;text-align:center;max-width:350px;width:90%}.start-btn[data-v-b55e57a6],.action-btn[data-v-b55e57a6]{background:linear-gradient(45deg,#ff6b6b,#ee5a24);color:#fff;border:none;padding:15px 30px;border-radius:25px;font-size:18px;font-weight:700;cursor:pointer;transition:transform .2s;touch-action:manipulation}.start-btn[data-v-b55e57a6]:hover,.action-btn[data-v-b55e57a6]:hover{transform:scale(1.05)}.end-btn-row[data-v-b55e57a6]{display:flex;gap:10px;margin-top:20px;justify-content:center}.action-btn.green[data-v-b55e57a6]{background:#27ae60}.action-btn.green[data-v-b55e57a6]:hover{background:#229954}.action-btn.purple[data-v-b55e57a6]{background:linear-gradient(45deg,#667eea,#764ba2)}.action-btn.gray[data-v-b55e57a6]{background:linear-gradient(45deg,#bdc3c7,#95a5a6)}.settings-panel[data-v-75316c31]{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;justify-content:center;align-items:center;z-index:2000}.settings-content[data-v-75316c31]{background:#fff;padding:30px;border-radius:15px;max-width:400px;width:90%;max-height:80vh;overflow-y:auto}.settings-content h3[data-v-75316c31]{margin:0 0 20px;text-align:center;color:#333}.setting-group[data-v-75316c31]{margin-bottom:20px}.setting-group label[data-v-75316c31]{display:block;margin-bottom:8px;font-weight:700;color:#555}.setting-group input[type=range][data-v-75316c31]{width:70%;margin-right:10px;vertical-align:middle}.setting-group span[data-v-75316c31]{vertical-align:middle}.settings-actions[data-v-75316c31]{display:flex;gap:10px;margin-top:25px}.settings-actions button[data-v-75316c31]{flex:1;padding:10px;border:none;border-radius:5px;cursor:pointer;font-size:14px;transition:all .3s ease}.test-btn[data-v-75316c31]{background:#f39c12;color:#fff}.reset-btn[data-v-75316c31]{background:#ff6b6b;color:#fff}.close-btn[data-v-75316c31]{background:#4ecdc4;color:#fff}.settings-actions button[data-v-75316c31]:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0003}.accessibility-group[data-v-75316c31]{border-top:1px solid #eee;padding-top:15px}.accessibility-toggle[data-v-75316c31]{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:5px;background:#f8f9fa;cursor:pointer;transition:all .3s ease;font-size:14px}.accessibility-toggle[data-v-75316c31]:hover{background:#e9ecef;border-color:#adb5bd}.accessibility-info[data-v-75316c31]{margin-top:8px}.accessibility-info small[data-v-75316c31]{color:#6c757d;line-height:1.4}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;margin:0;padding:0}.app-root{width:100%;height:100vh;display:flex;align-items:center;justify-content:center}.game-container{width:100%;background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;overflow:hidden;position:relative;margin:10px;max-width:min(95vw,500px);max-height:min(95vh,700px)}.top-controls{position:absolute;top:0;left:0;right:0;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:space-between;align-items:center;padding:10px 15px;z-index:10}.right-controls{display:flex;align-items:center;gap:8px}.bgm-selector{position:static;background:none;border-radius:0;padding:0;display:flex;gap:5px}.bgm-btn{background:#ffffff4d;border:none;color:#fff;padding:6px 10px;border-radius:8px;cursor:pointer;font-size:11px;touch-action:manipulation;transition:all .2s}.bgm-btn.active{background:#fffc;color:#333}.audio-btn{background:#fff3;border:none;color:#fff;padding:8px;border-radius:50%;cursor:pointer;font-size:14px;touch-action:manipulation;min-width:32px;min-height:32px;display:flex;align-items:center;justify-content:center}.pause-btn{background:#fff3;border:none;color:#fff;padding:8px 12px;border-radius:15px;cursor:pointer;font-size:12px;touch-action:manipulation}.game-content{padding:70px 20px 20px}.score-info{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:75px 15px 15px;margin:-70px -20px 20px;border-radius:0;display:flex;justify-content:space-around;align-items:center}.score-box{text-align:center}.score-label{display:block;font-size:12px;opacity:.8}.score-value{display:block;font-size:18px;font-weight:700}.message-box{position:absolute;bottom:80px;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:10px 20px;border-radius:20px;z-index:100;animation:fadeInOut 1.2s ease}.message-box.error{background:#ff6b6be6}.message-box.success{background:#43e97be6}.message-box.chain{background:#ffd700e6;color:#333}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;align-items:center;z-index:9999}.loading-content{text-align:center;color:#fff;max-width:400px;padding:40px}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 30px}.loading-progress{margin:30px 0}.progress-bar{width:100%;height:8px;background:#ffffff4d;border-radius:4px;overflow:hidden;margin-bottom:10px}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:4px;transition:width .3s ease}.progress-text{font-size:18px;font-weight:700}.loading-tips{margin-top:20px;font-size:14px;opacity:.9}.skip-loading-btn{margin-top:20px;background:#fff3;border:2px solid rgba(255,255,255,.5);color:#fff;padding:8px 16px;border-radius:20px;cursor:pointer;font-size:12px;transition:all .3s ease}.skip-loading-btn:hover{background:#ffffff4d;border-color:#fffc}.settings-btn{position:absolute;top:20px;right:20px;background:#ffffffe6;border:none;padding:10px 15px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .3s ease;z-index:1001}.settings-btn:hover{background:#fff;transform:translateY(-2px)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeInOut{0%,to{opacity:0;transform:translate(-50%) scale(.8)}50%{opacity:1;transform:translate(-50%) scale(1)}}@media (min-width: 768px){.game-container{max-width:600px;max-height:800px;margin:0 auto}.top-controls{height:70px;padding:15px 20px}.bgm-btn{padding:8px 14px;font-size:13px}.audio-btn{min-width:40px;min-height:40px;font-size:16px}.game-content{padding:80px 30px 30px}}@media (min-width: 1200px){.game-container{max-width:700px;max-height:900px}}@media (max-width: 480px){.game-container{margin:5px;border-radius:15px;max-width:98vw;max-height:98vh}.top-controls{height:50px;padding:8px 12px}.bgm-btn{padding:5px 8px;font-size:10px}.audio-btn{min-width:28px;min-height:28px;font-size:12px;padding:6px}.pause-btn{padding:6px 10px;font-size:11px}.game-content{padding:60px 15px 15px}}@media (max-width: 360px){.bgm-btn{padding:4px 6px;font-size:9px}}@media (orientation: landscape) and (max-height: 500px){body{align-items:flex-start;padding-top:10px}.game-container{max-height:95vh}}
