/
oinktech
/
radar-map
Обзор
Документация
Войти
/
oinktech
/
radar-map
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
master
public/styles.css
146 строк
4 KB
TwixoffStudio
Create: server.js, app.js, index.html, styles.css, russia.js, sources.js, ukraine.js, cache.js, russia.js, ukraine.js, .gitignore, LICENSE, package.json, README.md
09 авг 2026, 01:04
Верифицирован
09 авг 2026, 01:04
d92e294
Код
Авторство
О чём код?
:root { --bg: #0b0f14; --surface: #141a22; --surface2: #1c2530; --text: #e8eef5; --muted: #8b9bb0; --accent: #3b82f6; --danger: #ef4444; --warning: #f59e0b; --success: #22c55e; --border: #2a3544; --radius: 10px; font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif; } * { box-sizing: border-box; margin: 0; padding: 0; } html, body { height: 100%; background: var(--bg); color: var(--text); overflow: hidden; } .header { height: 52px; display: flex; align-items: center; justify-content: space-between; padding: 0 1rem; background: var(--surface); border-bottom: 1px solid var(--border); } .logo { font-weight: 700; font-size: 1.05rem; } .badge { background: var(--danger); color: white; font-size: 0.65rem; padding: 0.15rem 0.4rem; border-radius: 4px; margin-left: 0.4rem; vertical-align: middle; } .header-actions { display: flex; align-items: center; gap: 0.8rem; } .btn { background: var(--accent); color: white; border: none; padding: 0.35rem 0.8rem; border-radius: 6px; cursor: pointer; font-size: 0.85rem; } .btn:hover { filter: brightness(1.1); } .muted { color: var(--muted); font-size: 0.8rem; } .layout { display: flex; height: calc(100% - 52px); } .sidebar { width: 380px; max-width: 100%; background: var(--surface); border-right: 1px solid var(--border); display: flex; flex-direction: column; overflow: hidden; } .tabs { display: flex; border-bottom: 1px solid var(--border); } .tab { flex: 1; background: none; border: none; color: var(--muted); padding: 0.7rem 0.4rem; cursor: pointer; font-size: 0.85rem; border-bottom: 2px solid transparent; } .tab.active { color: var(--text); border-bottom-color: var(--accent); } .panel { display: none; flex: 1; overflow-y: auto; padding: 0.8rem; } .panel.active { display: block; } .panel-header { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 0.5rem; } .panel-header h2 { font-size: 1rem; } .tag { font-size: 0.65rem; padding: 0.15rem 0.4rem; border-radius: 4px; background: var(--surface2); color: var(--muted); } .tag.public { background: rgba(59,130,246,0.15); color: var(--accent); } .tag.official { background: rgba(34,197,94,0.15); color: var(--success); } .warning { font-size: 0.78rem; color: #fca5a5; background: rgba(239,68,68,0.1); border: 1px solid rgba(239,68,68,0.25); padding: 0.5rem 0.7rem; border-radius: 8px; margin-bottom: 0.8rem; line-height: 1.4; } .feed { display: flex; flex-direction: column; gap: 0.55rem; } .card { background: var(--surface2); border: 1px solid var(--border); border-radius: var(--radius); padding: 0.7rem; font-size: 0.82rem; line-height: 1.4; } .card .meta { color: var(--muted); font-size: 0.72rem; margin-top: 0.35rem; } .card a { color: var(--accent); text-decoration: none; } .card a:hover { text-decoration: underline; } .card.type-uav { border-left: 3px solid var(--warning); } .card.type-missile { border-left: 3px solid var(--danger); } .card.type-pvo { border-left: 3px solid var(--accent); } .card.type-allclear { border-left: 3px solid var(--success); } .card.type-alert { border-left: 3px solid #a855f7; } h3 { font-size: 0.85rem; color: var(--muted); margin: 0.8rem 0 0.4rem; } .map-wrap { flex: 1; position: relative; } #map { height: 100%; width: 100%; background: #1a2332; } .status-bar { position: absolute; bottom: 0; left: 0; right: 0; background: rgba(11,15,20,0.9); border-top: 1px solid var(--border); padding: 0.35rem 0.8rem; font-size: 0.72rem; display: flex; justify-content: space-between; z-index: 1000; backdrop-filter: blur(6px); } .disclaimer { color: var(--muted); } @media (max-width: 800px) { .layout { flex-direction: column; } .sidebar { width: 100%; height: 45%; } .map-wrap { height: 55%; } }