.kf-kicker-board-wrap {
    width: 100%;
    max-width: 560px;
    margin: 1rem auto;
}

.kf-kicker-board {
    width: 100%;
    border: 1px solid #d5d7da;
    border-radius: 10px;
    padding: 10px;
    background: #f6f8f8;
    box-sizing: border-box;
}

.kf-kicker-board canvas {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 68 / 111;
    border-radius: 8px;
    touch-action: none;
    cursor: crosshair;
    user-select: none;
}

.kf-controls {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    margin-bottom: 10px;
}

.kf-team-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
    background: #eef2f3;
    border: 1px solid #dbe2e5;
    border-radius: 8px;
    padding: 8px;
}

.kf-team-title {
    font-weight: 600;
    margin-right: 8px;
}

.kf-color-input {
    width: 34px;
    height: 30px;
    padding: 0;
    border: 1px solid #b8c5cb;
    border-radius: 6px;
    background: #ffffff;
    cursor: pointer;
}

.kf-btn {
    border: 1px solid #b8c5cb;
    background: #ffffff;
    color: #182024;
    border-radius: 6px;
    padding: 6px 10px;
    font-size: 0.86rem;
    cursor: pointer;
}

.kf-btn:hover {
    background: #f5f9fa;
}

.kf-btn.is-active {
    background: #0d7ea8;
    border-color: #0d7ea8;
    color: #ffffff;
}
