.player-dot {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    margin-right: 0.4rem;
    vertical-align: middle;
}

.share-section {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.share-section input {
    margin-bottom: 0;
}

.share-section button {
    white-space: nowrap;
    margin-bottom: 0;
}

.toast {
    background: var(--pico-primary-background);
    color: var(--pico-primary-inverse);
    padding: 0.75rem 1rem;
    border-radius: var(--pico-border-radius);
    margin-bottom: 0.5rem;
    cursor: pointer;
    animation: toast-fade 3s forwards;
}

@keyframes toast-fade {
    0% { opacity: 1; }
    70% { opacity: 1; }
    100% { opacity: 0; }
}

.toast:hover {
    animation-play-state: paused;
    opacity: 1 !important;
}

.winner td {
    background: var(--pico-primary-focus);
}

.totals-row td {
    border-top: 2px solid var(--pico-primary);
}

.current-round td {
    background: var(--pico-primary-focus);
}

.current-player td,
th.current-player {
    background: var(--pico-primary-focus);
}

.scorekeeper-controls {
    margin-bottom: 1rem;
}

.score-delete-btn {
    padding: 0.1rem 0.4rem;
    font-size: 0.7rem;
    margin-left: 0.5rem;
}

#toast-container {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 1000;
    max-width: 300px;
}

.ws-status {
    position: fixed;
    bottom: 0.5rem;
    right: 0.5rem;
    font-size: 0.75rem;
    padding: 0.2rem 0.5rem;
    border-radius: var(--pico-border-radius);
    background: var(--pico-muted-border-color);
}

.ws-status.connected {
    color: green;
}

.ws-status.disconnected {
    color: red;
}
