.graph-container {
    background-color: var(--card-color);
    border-radius: var(--border-radius);
    padding: 2rem;
    box-shadow: var(--shadow);
    text-align: center;
}

.graph-container h1 {
    margin-bottom: 0.5rem;
}

.graph-container p {
    margin-bottom: 2rem;
    color: #667;
}

#holes-graph {
    width: 100%;
    height: 600px;
    background-color: #f9f9f9;
    border-radius: var(--border-radius);
    margin-bottom: 1.5rem;
    overflow: hidden;
}

.graph-controls {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.graph-controls button {
    background-color: var(--secondary-color);
    color: white;
    border: none;
    padding: 0.5rem 1rem;
    border-radius: 100px;
    cursor: pointer;
    font-family: 'Nunito', sans-serif;
    font-weight: 600;
    transition: background-color 0.3s;
}

.graph-controls button:hover {
    background-color: #8bc2bd;
}

.graph-legend {
    display: inline-block;
    text-align: left;
    padding: 1rem 2rem;
    background-color: #f9f9f9;
    border-radius: var(--border-radius);
}

.graph-legend h3 {
    margin-bottom: 0.5rem;
}

.graph-legend ul {
    list-style: none;
    padding: 0;
}

.graph-legend li {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
}

.legend-dot {
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    margin-right: 8px;
}

.legend-dot.recent {
    background-color: #ff85a2;
}

.legend-dot.active {
    background-color: #4fc4b6;
}

.legend-dot.inactive {
    background-color: #c3c3c3;
}

/* D3 Styles */
.node {
    cursor: pointer;
}

.node circle {
    stroke: #fff;
    stroke-width: 2px;
}

.node text {
    font-family: 'Quicksand', sans-serif;
    font-size: 12px;
    text-anchor: middle;
    fill: var(--text-color);
    pointer-events: none;
}

.link {
    stroke: #ddd;
    stroke-opacity: 0.6;
}

.node:hover circle {
    stroke: var(--accent-color);
    stroke-width: 3px;
}
