/*@media (prefers-color-scheme: dark) {
    body {
    background-color: black;
    color: white;
    }
    }*/

h1, h2, h3, body {
    font-family: sans-serif;
}

a {
    text-decoration: none;
}

a:hover, a:visited, a:link, a:active {
    color: inherit;
    text-decoration: none !important;
}

:any-link {
    color: inherit;
    text-decoration: none !important;
}

:-moz-any-link {
    color: inherit;
    text-decoration: none !important;
}

a:-webkit-any-link {
    color: inherit;
    text-decoration: none !important;
}

.but {
    height: 45px; 
    width: 150px; 
    background-color: Transparent;
    border: 1px solid lightgray;
    border-radius: 4px;
}

.but:focus, .but:hover {
    border: 1px solid black;
}

button, submit {
    height: 45px;
    width: 150px;
    background-color: white;
    border: 1px solid lightgray;
    border-radius: 4px;
}

button:focus, button:hover, submit:focus, submit:hover {
    border: 1px solid black;
}

img {
    border-radius: 4px;
}

input { 
    padding: 10px;
}

table {
    width: 85%;
    table-layout: fixed;
    float: center;
}

@media only screen and (max-width: 700px) {
    .one {
        display: none;
    }
}

.tr0 {
    display: content;
}

.tr1,
.tr2,
.tr3,
.tr4 {
    display: none;
}

.total {
    max-width: 960px;
    margin: auto;
    padding: 0 20px;
    box-sizing: border-box;
}

/* Forecast day picker — scrollable, no visible scrollbar */
.forecast-container {
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.forecast-container::-webkit-scrollbar {
    display: none;
}

/* Chart styles */
.hourly-chart {
    border: 1px solid lightgray;
    padding: 10px;
    margin: 16px auto;
    max-width: 95%;
    height: 220px;
    width: 100%;
    display: block;
    min-height: 200px;
    position: relative;
}

.temperature-chart {
    width: 100% !important;
    height: 200px !important;
    max-width: 100%;
    margin: 0 auto;
    display: block;
    position: relative;
}

[id^="hourly-temperature-chart-"] {
    height: 200px !important;
    min-height: 180px !important;
    width: 100% !important;
    max-width: 800px !important;
    margin: 16px auto !important;
    display: none;
}

/* Location history styles */
.location-history {
    margin: 10px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
}

.location-button {
    display: inline-block;
    padding: 6px 12px;
    background-color: transparent;
    border: 1px solid lightgray;
    border-radius: 4px;
    text-decoration: none !important;
    color: inherit;
    font-size: 0.9em;
    transition: border-color 0.2s;
}

.location-button:hover, .location-button:focus {
    border: 1px solid black;
    text-decoration: none !important;
}

/* Loading animation */
.wx-loading {
    padding: 40px 20px;
    text-align: center;
}

.loading-cat {
    font-family: monospace;
    font-size: 1.4em;
    letter-spacing: 2px;
    margin: 20px auto;
    display: inline-block;
}

.loading-msg {
    font-size: 0.9em;
    color: #666;
}

/* Weather alerts */
.wx-alerts {
    margin: 16px auto;
    max-width: 800px;
    text-align: left;
}

.wx-alert {
    border-left: 4px solid lightgray;
    border-radius: 4px;
    padding: 10px 14px;
    margin-bottom: 10px;
    font-size: 0.9em;
    line-height: 1.5;
}

.wx-alert strong {
    display: block;
    margin-bottom: 2px;
}

.wx-alert-area {
    font-size: 0.85em;
    color: #555;
}

.wx-alert-expires {
    font-size: 0.8em;
    color: #666;
    margin-top: 4px;
}

.wx-alert-extreme {
    border-left-color: #8b0000;
    background-color: #fff5f5;
}

.wx-alert-severe {
    border-left-color: #cc3300;
    background-color: #fff8f5;
}

.wx-alert-moderate {
    border-left-color: #cc7700;
    background-color: #fffbf0;
}

.wx-alert-minor {
    border-left-color: #888800;
    background-color: #fffff0;
}

