:root {
    --bg: #fff;
    --fg: #111;
    --border: #ddd;
    --muted: #666;
    --row-hover: #f2f2f2;
    --highlight: #fff3b0;
}

@media (prefers-color-scheme: dark) {
    :root {
        --bg: #111;
        --fg: #eee;
        --border: #333;
        --muted: #999;
        --row-hover: #1a1a1a;
        --highlight: #4a3f14;
    }
}

body {
    font-family: system-ui, sans-serif;
    margin: 2rem;
    background: var(--bg);
    color: var(--fg);
}
.page {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
.spots-section {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
h1 {
    font-size: 1.25rem;
    font-weight: 600;
}
.view-nav {
    display: flex;
    gap: 1rem;
    font-size: 0.875rem;
}
.view-nav a {
    color: var(--muted);
    text-decoration: none;
}
.view-nav a.active {
    color: var(--fg);
    font-weight: 600;
}
.filters {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    font-size: 0.875rem;
}
.filters select {
    margin-left: 0.5rem;
}
.reset-btn {
    color: var(--fg);
    text-decoration: none;
    border: 1px solid var(--border);
    border-radius: 4px;
    padding: 0.25rem 0.6rem;
}
.reset-btn:hover {
    background: var(--row-hover);
}
table {
    border-collapse: collapse;
    width: 100%;
}
th,
td {
    text-align: left;
    padding: 0.35rem 0.75rem;
    border-bottom: 1px solid var(--border);
    font-variant-numeric: tabular-nums;
}
th {
    color: var(--muted);
    font-weight: 500;
    text-transform: uppercase;
    font-size: 0.75rem;
}
tr:hover {
    background: var(--row-hover);
}
tr {
    transition: background-color 1s ease;
}
tr.is-new {
    background: var(--highlight);
}
td a {
    color: inherit;

}
