
body {
background-color: #000;
color: #fff;
font-family: 'Segoe UI', system-ui, sans-serif;
display: flex;
justify-content: center;
padding: 20px;
margin: 0;
min-height: 100vh;
}
.dashboard {
width: 100%;
max-width: 850px;
display: flex;
flex-direction: column;
}
h1 { text-align: center; font-size: 24px; margin: 10px 0 5px 0; color: #eee; }
.header-info { text-align: center; color: #666; font-size: 12px; margin-bottom: 25px; }
/* ВЕРХНЯЯ ПЛАШКА */
.info-bar {
margin-bottom: 30px;
background-color: #111;
border-radius: 24px;
padding: 20px 0;
border: 1px solid #222;
display: grid;
grid-template-columns: 1.2fr 1fr 1.5fr;
align-items: center;
}
.info-col {
padding: 0 25px;
display: flex;
align-items: center;
gap: 15px;
}
.info-col:not(:last-child) {
border-right: 1px solid #1a1a1a;
}
.info-icon { width: 38px; height: 38px; opacity: 0.9; }
.info-content { display: flex; flex-direction: column; }
/* Стили даты */
.date-main { font-size: 18px; font-weight: 600; color: #fff; }
.date-main span { color: #4ade80; }
.date-sub { font-size: 12px; color: #888; margin-top: 4px; text-transform: capitalize; }
/* Стили погоды */
.weather-loc { font-size: 11px; color: #888; margin-bottom: 2px; }
.weather-temp { font-size: 22px; font-weight: 700; color: #fff; }
.weather-desc { font-size: 11px; color: #666; margin-top: 2px; }
/* Стили праздников */
.holiday-title { font-size: 11px; color: #888; margin-bottom: 6px; }
.holiday-list { margin: 0; padding: 0; list-style: none; }
.holiday-item {
color: #f59e0b;
font-size: 13px;
font-weight: 600;
line-height: 1.3;
display: flex;
align-items: flex-start;
gap: 6px;
margin-bottom: 4px;
}
.holiday-item::before { content: "•"; color: #444; }
.no-holiday { color: #666; font-size: 13px; font-style: italic; }
/* Стили терминала */
.currency-block { margin-bottom: 35px; }
.tile {
background-color: #111;
border-radius: 24px;
padding: 20px;
border: 1px solid #222;
display: flex;
flex-direction: column;
min-height: 160px;
}
.tile-header {
display: flex;
align-items: center;
margin-bottom: 20px;
padding-bottom: 15px;
border-bottom: 1px solid #1a1a1a;
}
.currency-info { display: flex; align-items: center; gap: 15px; }
.currency-icon { width: 32px; height: 32px; border-radius: 50%; object-fit: cover; background: #222; }
.currency-name { font-size: 16px; color: #999; font-weight: 500; }
.currency-value { font-size: 20px; font-weight: 700; color: #4ade80; font-variant-numeric: tabular-nums; }
.analytic-label { font-size: 10px; color: #444; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 15px; }
.history-row { display: flex; justify-content: space-between; align-items: center; padding: 5px 0; }
.history-point { display: flex; flex-direction: column; align-items: center; }
.history-point .date { font-size: 11px; color: #555; margin-bottom: 6px; }
.history-point .val { font-size: 15px; color: #f59e0b; font-weight: 600; }
.history-point.today .date { color: #fff; font-weight: bold; }
.history-point.today .val { color: #4ade80; }
.chart-container { width: 100%; height: 120px; margin-top: 5px; }
.loading-overlay {
position: fixed; top: 0; left: 0; width: 100%; height: 100%;
background: #000; display: flex; justify-content: center; align-items: center;
z-index: 1000; color: #4ade80; transition: opacity 0.5s;
}

