diff --git a/static/css/style.css b/static/css/style.css
index 0170045..8c4e7bc 100644
--- a/static/css/style.css
+++ b/static/css/style.css
@@ -1,17 +1,17 @@
:root {
- --bg-primary: #0a0a0c;
- --bg-secondary: #17171a;
- --bg-tertiary: #202024;
- --bg-elevated: #2a2a2f;
- --accent: #e31937; /* Tesla Red */
- --accent-hover: #ff2b4d;
- --text-primary: #f4f4f5;
- --text-secondary: #a1a1aa;
- --text-muted: #6b6b73;
- --border: #303036;
- --radius: 12px;
- --radius-sm: 8px;
- --shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
+ --black: #120d0a;
+ --deep-burgundy: #231611;
+ --burnt-maroon: #351f16;
+ --rust: #ff9b54;
+ --golden-amber: #ffbe78;
+ --neon-yellow: #ffbe78;
+ --text-main: #f5e7d0;
+ --text-muted: #d7c5aa;
+ --surface: rgba(35, 22, 17, 0.82);
+ --border: rgba(255, 212, 164, 0.18);
+ --shadow: rgba(0, 0, 0, 0.28);
+ --radius: 24px;
+ --radius-sm: 18px;
--font:
"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica,
Arial, sans-serif;
@@ -26,8 +26,8 @@
html,
body {
height: 100%;
- background: var(--bg-primary);
- color: var(--text-primary);
+ background: var(--black);
+ color: var(--text-main);
font-family: var(--font);
-webkit-font-smoothing: antialiased;
}
@@ -44,7 +44,8 @@ header {
align-items: center;
justify-content: space-between;
padding: 14px 24px;
- background: linear-gradient(180deg, #131316 0%, var(--bg-secondary) 100%);
+ backdrop-filter: blur(18px);
+ background: rgba(18, 13, 10, 0.7);
border-bottom: 1px solid var(--border);
position: sticky;
top: 0;
@@ -66,12 +67,11 @@ header {
height: 30px;
display: grid;
place-items: center;
- color: var(--accent);
}
-.brand .logo svg {
+.brand .logo img {
width: 100%;
height: 100%;
- fill: var(--accent);
+ object-fit: contain;
}
.brand small {
display: block;
@@ -117,8 +117,8 @@ header {
padding: 5px 14px;
border: 1px solid var(--border);
border-radius: 20px;
- background: var(--bg-secondary);
- color: var(--text-secondary);
+ background: var(--surface);
+ color: var(--text-muted);
font-size: 13px;
cursor: pointer;
transition:
@@ -129,14 +129,13 @@ header {
}
.region-btn:hover {
- border-color: var(--accent);
- color: var(--text-primary);
+ border-color: var(--text-main);
}
.region-btn.active {
- background: var(--accent);
+ background: var(--rust);
color: #fff;
- border-color: var(--accent);
+ border-color: var(--rust);
}
/* Video Player Section */
@@ -217,13 +216,13 @@ header {
width: 8px;
height: 8px;
border-radius: 50%;
- background: var(--accent);
- box-shadow: 0 0 8px var(--accent);
+ background: var(--rust);
+ box-shadow: 0 0 8px var(--rust);
}
.now-playing {
font-size: 13px;
- color: var(--text-secondary);
+ color: var(--text-muted);
padding: 0 4px;
display: flex;
justify-content: flex-start;
@@ -232,10 +231,9 @@ header {
flex-wrap: wrap;
}
.now-playing strong {
- color: var(--text-primary);
+ color: var(--text-main);
}
.now-playing .ts {
- color: var(--accent);
font-variant-numeric: tabular-nums;
}
.now-playing .loc {
@@ -256,9 +254,9 @@ header {
width: 28px;
height: 28px;
border: 1px solid var(--border);
- border-radius: 6px;
- background: var(--bg-tertiary);
- color: var(--text-secondary);
+ border-radius: 999px;
+ background: rgba(255, 255, 255, 0.03);
+ color: var(--text-muted);
cursor: pointer;
transition:
background 0.15s,
@@ -272,12 +270,12 @@ header {
height: 16px;
}
.nav-btn:hover {
- background: var(--bg-elevated);
- color: var(--text-primary);
- border-color: var(--accent);
+ background: rgba(255, 255, 255, 0.08);
+ color: var(--text-main);
+ border-color: var(--text-main);
}
.nav-btn:active {
- background: var(--accent);
+ background: var(--rust);
color: #fff;
}
@@ -286,7 +284,7 @@ header {
============================================= */
.cam-selector {
width: 100%;
- background: var(--bg-secondary);
+ background: var(--surface);
border: 1px solid var(--border);
border-radius: var(--radius);
padding: 20px 24px;
@@ -330,30 +328,36 @@ header {
display: flex;
align-items: center;
gap: 8px;
- padding: 10px 16px;
- background: var(--bg-tertiary);
+ padding: 0.65rem 1rem;
+ background: rgba(255, 255, 255, 0.03);
border: 1px solid var(--border);
- border-radius: var(--radius-sm);
- color: var(--text-secondary);
+ border-radius: 999px;
+ color: var(--text-muted);
font-size: 13px;
font-weight: 600;
cursor: pointer;
- transition: all 0.15s;
+ transition:
+ transform 0.25s ease,
+ background 0.25s ease,
+ color 0.25s ease,
+ border-color 0.25s ease;
white-space: nowrap;
min-width: 140px;
justify-content: center;
}
.cs-btn:hover:not(:disabled) {
- background: var(--bg-elevated);
- color: var(--text-primary);
- border-color: #444;
+ background: rgba(255, 255, 255, 0.08);
+ color: var(--text-main);
+ border-color: var(--golden-amber);
+ transform: translateY(-2px);
}
.cs-btn.active {
- background: var(--accent);
- border-color: var(--accent);
- color: #fff;
+ background: linear-gradient(135deg, var(--rust), #ff6b35);
+ border-color: var(--rust);
+ color: #170d0a;
+ box-shadow: 0 10px 22px rgba(255, 155, 84, 0.16);
}
.cs-btn:disabled {
@@ -397,18 +401,14 @@ header {
align-items: center;
justify-content: center;
min-height: 100vh;
- background: radial-gradient(
- ellipse at 50% 30%,
- #1a1a22 0%,
- var(--bg-primary) 70%
- );
+ background: radial-gradient(ellipse at 50% 30%, #1a1a22 0%, var(--black) 70%);
}
.login-card {
width: 100%;
max-width: 380px;
padding: 40px 36px;
- background: var(--bg-secondary);
+ background: var(--surface);
border: 1px solid var(--border);
border-radius: var(--radius);
box-shadow: var(--shadow);
@@ -427,20 +427,20 @@ header {
height: 48px;
display: grid;
place-items: center;
- color: var(--accent);
}
-.login-brand .logo svg {
+.login-brand .logo img {
width: 100%;
height: 100%;
- fill: var(--accent);
+ object-fit: contain;
}
.login-brand h1 {
font-size: 20px;
font-weight: 700;
- letter-spacing: 0.5px;
- color: var(--text-primary);
+ letter-spacing: 0.08em;
+ text-transform: uppercase;
+ color: var(--text-main);
}
.login-form {
@@ -452,7 +452,7 @@ header {
.login-form label {
font-size: 13px;
font-weight: 600;
- color: var(--text-secondary);
+ color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.8px;
}
@@ -460,10 +460,10 @@ header {
.login-form input[type="password"] {
width: 100%;
padding: 12px 16px;
- background: var(--bg-tertiary);
+ background: rgba(255, 255, 255, 0.04);
border: 1px solid var(--border);
- border-radius: var(--radius-sm);
- color: var(--text-primary);
+ border-radius: 999px;
+ color: var(--text-main);
font-size: 15px;
outline: none;
transition:
@@ -472,14 +472,14 @@ header {
}
.login-form input[type="password"]:focus {
- border-color: var(--accent);
+ border-color: var(--text-main);
box-shadow: 0 0 0 3px rgba(227, 25, 55, 0.15);
}
.login-form button {
width: 100%;
padding: 12px;
- background: var(--accent);
+ background: var(--rust);
border: none;
border-radius: var(--radius-sm);
color: #fff;
@@ -491,12 +491,12 @@ header {
}
.login-form button:hover {
- background: var(--accent-hover);
+ background: #cc2a3e;
}
.login-error {
font-size: 13px;
- color: var(--accent);
+
text-align: center;
padding: 8px;
background: rgba(227, 25, 55, 0.08);
diff --git a/static/img/apple-touch-icon.png b/static/img/apple-touch-icon.png
new file mode 100644
index 0000000..8898f04
Binary files /dev/null and b/static/img/apple-touch-icon.png differ
diff --git a/static/img/car.svg b/static/img/car.svg
new file mode 100644
index 0000000..ed2a15f
--- /dev/null
+++ b/static/img/car.svg
@@ -0,0 +1,102 @@
+
\ No newline at end of file
diff --git a/static/img/favicon.png b/static/img/favicon.png
new file mode 100644
index 0000000..8898f04
Binary files /dev/null and b/static/img/favicon.png differ
diff --git a/static/img/open_mic_odyssey.png b/static/img/open_mic_odyssey.png
new file mode 100644
index 0000000..f157815
Binary files /dev/null and b/static/img/open_mic_odyssey.png differ
diff --git a/templates/index.html b/templates/index.html
index 9d7d9ab..1832014 100644
--- a/templates/index.html
+++ b/templates/index.html
@@ -14,15 +14,14 @@