*{box-sizing:border-box;margin:0;padding:0}body{color:#e0e0e0;background:#1a1a2e;flex-direction:column;align-items:center;min-height:100vh;font-family:Segoe UI,Noto Sans TC,sans-serif;display:flex}h1{color:#f0d060;text-shadow:0 2px 8px #f0d0604d;margin:16px 0 8px;font-size:28px}.game-container{flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:20px;width:100%;padding:10px 20px;display:flex}.panel{background:#16213e;border-radius:12px;flex-shrink:0;width:240px;min-width:200px;padding:16px}.panel h3{color:#f0d060;border-bottom:1px solid #2a3a5e;margin-bottom:12px;padding-bottom:8px;font-size:16px}.board-wrapper{flex-direction:column;align-items:center;display:flex;position:relative}canvas{cursor:pointer;touch-action:manipulation;border-radius:8px;max-width:100%;display:block;box-shadow:0 4px 20px #00000080}.control-group{margin-bottom:14px}.control-group label{color:#89b;margin-bottom:4px;font-size:13px;display:block}select,button{cursor:pointer;border:none;border-radius:6px;width:100%;padding:8px 12px;font-family:inherit;font-size:14px}select{color:#e0e0e0;background:#2a3a5e;outline:none}button{color:#e0e0e0;background:#2a3a5e;margin-bottom:6px;transition:background .2s}button:hover{background:#3a4a7e}button.primary{color:#1a1a2e;background:#c0943a;font-weight:700}button.primary:hover{background:#d4a84a}button.danger{color:#e0e0e0;background:#8b3a3a}button.danger:hover{background:#a04a4a}.toggle-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.toggle-row span{color:#89b;font-size:13px}.toggle{width:44px;height:24px;position:relative}.toggle input{display:none}.toggle .slider{cursor:pointer;background:#2a3a5e;border-radius:12px;transition:background .3s;position:absolute;inset:0}.toggle .slider:before{content:"";background:#89b;border-radius:50%;width:18px;height:18px;transition:transform .3s,background .3s;position:absolute;top:3px;left:3px}.toggle input:checked+.slider{background:#c0943a}.toggle input:checked+.slider:before{background:#fff;transform:translate(20px)}.info-row{justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;display:flex}.info-row .label{color:#89b}.info-row .value{font-weight:700}.black-indicator{color:#ccc}.white-indicator{color:#fff}.current-turn{text-align:center;border-radius:8px;margin:8px 0;padding:10px;font-size:16px;font-weight:700}.current-turn.black{color:#fff;background:#333}.current-turn.white{color:#333;background:#e8e0d0}.timer-display{text-align:center;background:#0f1a30;border-radius:6px;margin:4px 0;padding:8px;font-family:Courier New,monospace;font-size:24px}.timer-display.urgent{color:#ff6b6b}.review-controls{gap:6px;margin-top:8px;display:flex}.review-controls button{flex:1;min-height:44px;padding:10px 4px;font-size:18px}.move-info{text-align:center;color:#89b;margin-top:6px;font-size:13px}.scoring-panel{background:#1e2d50;border:2px solid #c0943a;border-radius:8px;margin-top:10px;padding:12px}.scoring-panel h4{color:#f0d060;text-align:center;margin-bottom:8px}.score-row{justify-content:space-between;padding:4px 0;font-size:14px;display:flex}.status-msg{text-align:center;background:#1e2d50;border-radius:8px;justify-content:center;align-items:center;min-height:40px;margin:8px 0;padding:10px;font-size:14px;display:flex}.modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-overlay.show{display:flex}.modal{text-align:center;background:#16213e;border:2px solid #c0943a;border-radius:16px;width:90%;max-width:360px;padding:30px}.modal h2{color:#f0d060;margin-bottom:16px}.modal p{margin-bottom:8px;font-size:16px}.modal button{margin-top:16px}.mobile-menu-btn{z-index:200;color:#1a1a2e;cursor:pointer;text-align:center;background:#c0943a;border:none;border-radius:50%;width:44px;height:44px;padding:0;font-size:22px;line-height:44px;display:none;position:fixed;top:12px;right:12px;box-shadow:0 2px 10px #0006}.sidebar-overlay{z-index:300;background:#00000080;display:none;position:fixed;inset:0}.sidebar-overlay.open{display:block}.sidebar{z-index:301;background:#16213e;width:280px;height:100%;padding:60px 16px 16px;transition:right .3s;position:fixed;top:0;right:-300px;overflow-y:auto;box-shadow:-4px 0 20px #00000080}.sidebar.open{right:0}.sidebar-close{color:#e0e0e0;cursor:pointer;text-align:center;background:#2a3a5e;border:none;border-radius:50%;width:44px;height:44px;padding:0;font-size:20px;line-height:44px;position:absolute;top:12px;right:12px}.sidebar-close:hover{background:#3a4a7e}.mobile-info-bar{background:#16213e;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:500px;margin-bottom:6px;padding:8px 14px;font-size:13px;display:none}.mobile-info-bar .turn-badge{border-radius:6px;padding:4px 10px;font-size:13px;font-weight:700}.mobile-info-bar .turn-badge.black{color:#fff;background:#333}.mobile-info-bar .turn-badge.white{color:#333;background:#e8e0d0}.mobile-info-bar .info-item{color:#89b}.mobile-info-bar .info-item span{color:#e0e0e0;font-weight:700}.mobile-action-bar{gap:6px;width:100%;max-width:500px;margin-top:6px;display:none}.mobile-action-bar button{flex:1;min-height:44px;padding:12px 4px;font-size:13px}.mobile-status{text-align:center;color:#89b;width:100%;max-width:500px;min-height:20px;padding:4px 0;font-size:13px;display:none}#aiThinkingOverlay{pointer-events:none;z-index:10;background:#1a1a2e8c;border-radius:8px;justify-content:center;align-items:center;font-size:28px;animation:1.2s ease-in-out infinite aiPulse;display:flex;position:absolute;inset:0}#aiThinkingOverlay:after{content:"🤔"}@keyframes aiPulse{0%,to{opacity:.6}50%{opacity:1}}.guidance-tooltip{color:#f0d060;pointer-events:none;white-space:nowrap;z-index:50;background:#16213e;border:1px solid #c0943a;border-radius:8px;padding:6px 12px;font-size:13px;font-weight:700;position:absolute;box-shadow:0 2px 10px #0006}@media (width<=900px){h1{margin:10px 0 6px;font-size:20px}.mobile-menu-btn{display:block}.game-container{flex-wrap:nowrap;justify-content:center;padding:6px 10px}.panel{display:none}.board-wrapper{align-items:center;width:100%;padding:0}.mobile-info-bar,.mobile-action-bar{display:flex}.mobile-status{display:block}}.version-footer{text-align:center;color:#89b;width:100%;padding:10px 16px 16px;font-size:12px}
