226 lines
6.9 KiB
CSS
226 lines
6.9 KiB
CSS
/* ═══════════════════════════════════════════
|
|
TOP BAR
|
|
═══════════════════════════════════════════ */
|
|
.topbar {
|
|
height: 50px;
|
|
background: var(--surface);
|
|
border-bottom: 1px solid var(--border);
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 0 16px;
|
|
gap: 12px;
|
|
flex-shrink: 0;
|
|
position: relative;
|
|
z-index: 100;
|
|
}
|
|
|
|
.logo {
|
|
font-family: 'Share Tech Mono', monospace;
|
|
font-size: 13px;
|
|
color: var(--accent);
|
|
letter-spacing: 0.08em;
|
|
text-transform: uppercase;
|
|
white-space: nowrap;
|
|
}
|
|
.logo span { color: var(--text-dim); margin: 0 5px; }
|
|
.logo-sub { display: inline; }
|
|
|
|
.live-dot {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 6px;
|
|
font-size: 11px;
|
|
font-family: 'Share Tech Mono', monospace;
|
|
color: var(--accent-live);
|
|
letter-spacing: 0.1em;
|
|
margin-left: auto;
|
|
flex-shrink: 0;
|
|
}
|
|
.live-dot::before {
|
|
content: '';
|
|
width: 7px; height: 7px;
|
|
background: var(--accent-live);
|
|
border-radius: 50%;
|
|
animation: pulse 1.4s ease-in-out infinite;
|
|
}
|
|
@keyframes pulse {
|
|
0%,100% { opacity:1; transform:scale(1); }
|
|
50% { opacity:0.3; transform:scale(0.7); }
|
|
}
|
|
|
|
.clock {
|
|
font-family: 'Share Tech Mono', monospace;
|
|
font-size: 20px;
|
|
color: var(--text-bright);
|
|
letter-spacing: 0.05em;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.date-label {
|
|
font-family: 'Share Tech Mono', monospace;
|
|
font-size: 10px;
|
|
color: var(--text-dim);
|
|
letter-spacing: 0.1em;
|
|
text-transform: uppercase;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.nav-btns {
|
|
display: flex;
|
|
gap: 4px;
|
|
flex-shrink: 0;
|
|
}
|
|
.nav-btn {
|
|
background: var(--surface2);
|
|
border: 1px solid var(--border);
|
|
color: var(--text);
|
|
font-family: 'Barlow Condensed', sans-serif;
|
|
font-size: 12px;
|
|
letter-spacing: 0.06em;
|
|
padding: 4px 10px;
|
|
cursor: pointer;
|
|
text-transform: uppercase;
|
|
transition: all 0.15s;
|
|
white-space: nowrap;
|
|
}
|
|
.nav-btn:hover, .nav-btn.active {
|
|
background: var(--accent);
|
|
color: #000;
|
|
border-color: var(--accent);
|
|
}
|
|
|
|
.copy-btns {
|
|
display: flex;
|
|
gap: 4px;
|
|
flex-shrink: 0;
|
|
}
|
|
.copy-btn {
|
|
background: transparent;
|
|
border: 1px solid var(--border-bright);
|
|
color: var(--text-dim);
|
|
text-decoration: none;
|
|
font-family: 'Share Tech Mono', monospace;
|
|
font-size: 10px;
|
|
letter-spacing: 0.1em;
|
|
padding: 4px 9px;
|
|
cursor: pointer;
|
|
text-transform: uppercase;
|
|
transition: all 0.15s;
|
|
white-space: nowrap;
|
|
position: relative;
|
|
}
|
|
.copy-btn:hover {
|
|
border-color: var(--accent2);
|
|
color: var(--accent2);
|
|
}
|
|
.copy-btn.copied {
|
|
border-color: var(--accent);
|
|
color: var(--accent);
|
|
}
|
|
|
|
/* ═══════════════════════════════════════════
|
|
RESPONSIVE
|
|
═══════════════════════════════════════════ */
|
|
@media (max-width: 900px) {
|
|
:root { --channel-w: 110px; }
|
|
.logo-sub { display: none; }
|
|
.date-label { display: none; }
|
|
.clock { font-size: 16px; }
|
|
}
|
|
|
|
/* ═══════════════════════════════════════════
|
|
THEME SELECTOR
|
|
═══════════════════════════════════════════ */
|
|
.theme-select {
|
|
background: transparent;
|
|
border: 1px solid var(--border-bright);
|
|
color: var(--text-dim);
|
|
font-family: var(--font-mono);
|
|
font-size: 10px;
|
|
letter-spacing: 0.08em;
|
|
padding: 4px 8px;
|
|
cursor: pointer;
|
|
text-transform: uppercase;
|
|
transition: all 0.15s;
|
|
flex-shrink: 0;
|
|
-webkit-appearance: none;
|
|
appearance: none;
|
|
}
|
|
.theme-select:hover { border-color: var(--accent2); color: var(--accent2); }
|
|
.theme-select option { background: #111; color: #eee; font-family: sans-serif; }
|
|
|
|
body { overflow: hidden; }
|
|
|
|
.topbar {
|
|
height: auto;
|
|
flex-wrap: wrap;
|
|
padding: 8px 12px;
|
|
gap: 8px;
|
|
}
|
|
.logo { font-size: 11px; }
|
|
.clock { font-size: 14px; }
|
|
|
|
.grid-wrapper { display: none; }
|
|
.mobile-view { display: block; }
|
|
.tooltip { display: none !important; }
|
|
#navBtns { display: none !important; }
|
|
}
|
|
|
|
/* ── SOURCE SELECTOR ─────────────────────────────────────────────────────── */
|
|
.source-select {
|
|
background-color: var(--surface2) !important;
|
|
border: 1px solid var(--border-bright);
|
|
color: var(--text) !important;
|
|
font-family: var(--font-mono);
|
|
font-size: 11px;
|
|
padding: 5px 8px;
|
|
cursor: pointer;
|
|
letter-spacing: 0.06em;
|
|
height: 28px;
|
|
outline: none;
|
|
transition: border-color 0.15s, color 0.15s;
|
|
max-width: 130px;
|
|
-webkit-appearance: none;
|
|
appearance: none;
|
|
}
|
|
.source-select:hover { border-color: var(--accent2); color: var(--accent2) !important; }
|
|
.source-select option { background: #111 !important; color: #eee !important; font-family: sans-serif; }
|
|
|
|
/* ── SOURCE DROPDOWN ─────────────────────────────────────────────────────── */
|
|
.source-dropdown {
|
|
position: relative;
|
|
flex-shrink: 0;
|
|
}
|
|
.source-dropdown-btn {
|
|
display: flex; align-items: center; gap: 6px;
|
|
background: var(--surface2); border: 1px solid var(--border-bright);
|
|
color: var(--text); font-family: var(--font-mono); font-size: 11px;
|
|
letter-spacing: 0.06em; padding: 5px 10px; height: 28px;
|
|
cursor: pointer; white-space: nowrap;
|
|
transition: border-color 0.15s, color 0.15s;
|
|
}
|
|
.source-dropdown-btn:hover { border-color: var(--accent2); color: var(--accent2); }
|
|
.source-dropdown-arrow { font-size: 8px; opacity: 0.6; }
|
|
|
|
.source-dropdown-menu {
|
|
display: none; position: absolute; top: calc(100% + 4px); left: 0;
|
|
background: var(--surface); border: 1px solid var(--border-bright);
|
|
min-width: 160px; z-index: 1000;
|
|
flex-direction: column;
|
|
box-shadow: 0 8px 24px rgba(0,0,0,0.6);
|
|
}
|
|
.source-dropdown-menu.open { display: flex; }
|
|
|
|
.source-dropdown-item {
|
|
background: none; border: none; color: var(--text);
|
|
font-family: var(--font-mono); font-size: 11px;
|
|
letter-spacing: 0.06em; padding: 10px 14px;
|
|
text-align: left; cursor: pointer; white-space: nowrap;
|
|
transition: background 0.1s, color 0.1s;
|
|
border-bottom: 1px solid var(--border);
|
|
}
|
|
.source-dropdown-item:last-child { border-bottom: none; }
|
|
.source-dropdown-item:hover { background: var(--surface2); color: var(--accent2); }
|
|
.source-dropdown-item.active { color: var(--accent); }
|
|
.source-dropdown-personal { color: var(--accent2); }
|