*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,sans-serif}#root{min-height:100vh}.board{background-color:#2e8b57;border-radius:8px;padding:8px;display:inline-block;box-shadow:0 4px 12px #0000004d}.row{display:flex}.cell{cursor:default;background-color:#228b22;border:1px solid #1a6b1a;justify-content:center;align-items:center;width:50px;height:50px;display:flex;position:relative}.cell.valid{cursor:pointer}.cell.valid:hover{background-color:#32a852}.stone{border-radius:50%;width:40px;height:40px;box-shadow:2px 2px 4px #0000004d}.stone.black{background:radial-gradient(circle at 30% 30%,#4a4a4a,#000)}.stone.white{background:radial-gradient(circle at 30% 30%,#fff,#ccc)}.hint{background-color:#fff6;border-radius:50%;width:16px;height:16px;position:absolute}.game{flex-direction:column;align-items:center;gap:20px;padding:20px;display:flex}.game-info{text-align:center}.score{gap:30px;margin-bottom:10px;font-size:1.2rem;font-weight:700;display:flex}.score-item{border-radius:8px;padding:8px 16px}.score-item.player{color:#fff;background-color:#4a90d9}.score-item.ai{color:#fff;background-color:#666}.status{color:#333;min-height:1.5em;font-size:1.1rem}.status.game-over{color:#2e8b57;font-size:1.5rem;font-weight:700}.controls{margin-top:10px}.reset-button{color:#fff;cursor:pointer;background-color:#4a90d9;border:none;border-radius:8px;padding:12px 24px;font-size:1rem;transition:background-color .2s}.reset-button:hover{background-color:#3a7bc8}.legend{color:#666;gap:20px;font-size:.9rem;display:flex}.app{background-color:#f5f5f5;flex-direction:column;align-items:center;min-height:100vh;padding:20px;display:flex}.title{color:#2e8b57;margin-bottom:0;font-size:2.5rem}.subtitle{color:#666;margin-top:5px;margin-bottom:30px;font-size:1.2rem}.settings{flex-direction:column;gap:30px;display:flex}.setting-group{text-align:center}.setting-group p{color:#333;margin-bottom:15px;font-size:1.1rem}.level-buttons{gap:10px;display:flex}.level-btn{color:#333;cursor:pointer;background-color:#fff;border:2px solid #ccc;border-radius:8px;flex-direction:column;padding:12px 20px;font-size:1rem;transition:all .2s;display:flex}.level-btn:hover{border-color:#2e8b57}.level-btn.selected{color:#fff;background-color:#2e8b57;border-color:#2e8b57}.level-desc{opacity:.7;margin-top:4px;font-size:.75rem}.level-indicator{color:#666;margin-top:0;margin-bottom:10px;font-size:.9rem}.color-buttons{gap:20px;display:flex}.color-btn{cursor:pointer;border:none;border-radius:12px;padding:20px 40px;font-size:1.1rem;transition:transform .2s,box-shadow .2s}.color-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.color-btn.black{color:#fff;background-color:#555;border:3px solid #0000}.color-btn.black.selected{background-color:#222;border-color:#2e8b57}.color-btn.white{color:#333;background-color:#fff;border:3px solid #ccc}.color-btn.white.selected{border-color:#2e8b57}.start-button{color:#fff;cursor:pointer;background-color:#2e8b57;border:none;border-radius:12px;padding:16px 48px;font-size:1.2rem;font-weight:700;transition:background-color .2s,transform .2s}.start-button:hover{background-color:#247048;transform:translateY(-2px)}.back-button{color:#666;cursor:pointer;background-color:#0000;border:1px solid #ccc;border-radius:8px;margin-top:20px;padding:10px 20px;font-size:.9rem;transition:background-color .2s}.back-button:hover{background-color:#eee}
