Mbanksbey commited on
Commit
b35929d
·
verified ·
1 Parent(s): ec4a13b

Update style.css

Browse files
Files changed (1) hide show
  1. style.css +235 -18
style.css CHANGED
@@ -1,28 +1,245 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
 
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
 
 
 
 
 
 
9
  }
 
10
 
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
 
 
16
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
 
18
- .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
 
24
  }
 
 
 
25
 
26
- .card p:last-child {
27
- margin-bottom: 0;
 
 
 
 
 
 
28
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ :root {
2
+ --bg-color: #05070a;
3
+ --panel-bg: rgba(15, 20, 30, 0.8);
4
+ --accent-color: #00d2ff;
5
+ --phi-gold: #ffcc33;
6
+ --text-primary: #e0e6ed;
7
+ --text-secondary: #94a3b8;
8
+ --border-color: rgba(255, 255, 255, 0.1);
9
+ --success-green: #10b981;
10
+ --optimize-blue: #3b82f6;
11
+ --convergence-purple: #a855f7;
12
+ --warn-orange: #f59e0b;
13
+ }
14
+
15
+ * { box-sizing: border-box; margin: 0; padding: 0; }
16
+
17
  body {
18
+ background: var(--bg-color);
19
+ background-image: radial-gradient(circle at 50% 50%, #111827 0%, #05070a 100%);
20
+ color: var(--text-primary);
21
+ font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
22
+ line-height: 1.6;
23
+ min-height: 100vh;
24
+ }
25
+
26
+ /* HEADER */
27
+ .header {
28
+ background: rgba(10, 15, 25, 0.95);
29
+ border-bottom: 1px solid var(--border-color);
30
+ backdrop-filter: blur(10px);
31
+ padding: 1rem 2rem;
32
+ position: sticky;
33
+ top: 0;
34
+ z-index: 100;
35
+ }
36
+
37
+ .header-inner { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
38
+ .logo-block { display: flex; align-items: center; gap: 1.25rem; }
39
+ .phi-symbol { font-size: 2.5rem; font-weight: bold; color: var(--phi-gold); text-shadow: 0 0 15px rgba(255, 204, 51, 0.4); }
40
+ .title { font-size: 1.25rem; font-weight: 700; letter-spacing: -0.02em; }
41
+ .subtitle { font-size: 0.75rem; color: var(--text-secondary); text-transform: uppercase; letter-spacing: 0.1em; }
42
+
43
+ .badge {
44
+ padding: 0.25rem 0.75rem;
45
+ border-radius: 9999px;
46
+ font-size: 0.7rem;
47
+ font-weight: 600;
48
+ border: 1px solid rgba(255,255,255,0.1);
49
+ }
50
+ .badge-online { background: rgba(16, 185, 129, 0.1); color: var(--success-green); }
51
+ .badge-loops { background: rgba(59, 130, 246, 0.1); color: var(--optimize-blue); }
52
+ .badge-convergence { background: rgba(168, 85, 247, 0.1); color: var(--convergence-purple); }
53
+
54
+ /* SECTIONS */
55
+ .section { max-width: 1200px; margin: 2.5rem auto; padding: 0 2rem; }
56
+ .section-title { font-size: 1.1rem; margin-bottom: 1.5rem; display: flex; align-items: center; gap: 0.75rem; opacity: 0.8; }
57
+
58
+ /* METRICS GRID */
59
+ .metrics-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1.25rem; }
60
+
61
+ .metric-card {
62
+ background: var(--panel-bg);
63
+ border: 1px solid var(--border-color);
64
+ padding: 1.25rem;
65
+ border-radius: 12px;
66
+ position: relative;
67
+ overflow: hidden;
68
+ transition: transform 0.2s, border-color 0.2s;
69
  }
70
+ .metric-card:hover { transform: translateY(-2px); border-color: rgba(255, 255, 255, 0.2); }
71
+
72
+ .metric-icon { font-size: 1.5rem; margin-bottom: 0.75rem; }
73
+ .metric-label { font-size: 0.75rem; color: var(--text-secondary); text-transform: uppercase; }
74
+ .metric-value { font-size: 1.25rem; font-weight: 700; margin: 0.25rem 0 0.75rem 0; }
75
+ .metric-bar { height: 4px; background: rgba(255,255,255,0.05); border-radius: 2px; margin-bottom: 0.75rem; }
76
+ .metric-fill { height: 100%; border-radius: 2px; }
77
+ .fill-convergence { background: var(--convergence-purple); }
78
+ .fill-phi { background: var(--phi-gold); }
79
+ .fill-green { background: var(--success-green); }
80
+ .fill-blue { background: var(--optimize-blue); }
81
+ .fill-warn { background: var(--warn-orange); }
82
+
83
+ .metric-status { font-size: 0.65rem; font-weight: 700; }
84
+ .metric-status.ok { color: var(--success-green); }
85
 
86
+ /* LOOPS GRID */
87
+ .loops-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.5rem; }
88
+
89
+ .loop-card {
90
+ background: var(--panel-bg);
91
+ border: 1px solid var(--border-color);
92
+ padding: 1.5rem;
93
+ border-radius: 12px;
94
+ border-left: 3px solid var(--accent-color);
95
  }
96
+ .loop-card.active { border-left-color: var(--success-green); }
97
 
98
+ .loop-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 0.75rem; }
99
+ .loop-header h3 { font-size: 0.95rem; }
100
+ .loop-badge {
101
+ font-size: 0.65rem;
102
+ font-weight: 700;
103
+ padding: 0.2rem 0.5rem;
104
+ border-radius: 4px;
105
  }
106
+ .loop-badge.active { background: rgba(16, 185, 129, 0.1); color: var(--success-green); }
107
+
108
+ .loop-desc { font-size: 0.85rem; color: var(--text-secondary); margin-bottom: 1rem; }
109
+
110
+ .loop-stats {
111
+ display: flex;
112
+ gap: 1rem;
113
+ flex-wrap: wrap;
114
+ }
115
+ .loop-stat { font-size: 0.75rem; color: var(--text-secondary); }
116
+ .loop-stat strong { color: var(--text-primary); }
117
+
118
+ /* RECALIBRATION PANEL */
119
+ .recalibration-panel {
120
+ background: var(--panel-bg);
121
+ padding: 2rem;
122
+ border-radius: 16px;
123
+ border: 1px solid var(--border-color);
124
+ }
125
+
126
+ .panel-desc { font-size: 0.9rem; color: var(--text-secondary); margin-bottom: 1.5rem; }
127
+
128
+ .recal-controls { display: flex; gap: 1rem; margin-bottom: 1.5rem; }
129
 
130
+ .btn-recalibrate, .btn-reset {
131
+ padding: 0.75rem 1.5rem;
132
+ border-radius: 8px;
133
+ font-weight: 700;
134
+ cursor: pointer;
135
+ border: none;
136
+ transition: transform 0.2s;
137
  }
138
+ .btn-recalibrate { background: var(--accent-color); color: #000; }
139
+ .btn-reset { background: rgba(255,255,255,0.1); color: var(--text-primary); border: 1px solid var(--border-color); }
140
+ .btn-recalibrate:hover, .btn-reset:hover { transform: scale(1.05); }
141
 
142
+ .recal-log {
143
+ margin-top: 1.5rem;
144
+ padding: 1rem;
145
+ background: rgba(0,0,0,0.3);
146
+ border-radius: 8px;
147
+ border: 1px solid var(--border-color);
148
+ font-family: monospace;
149
+ font-size: 0.75rem;
150
  }
151
+
152
+ /* SUBSTRATE GRID */
153
+ .substrate-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1rem; }
154
+
155
+ .substrate-card {
156
+ background: rgba(15, 20, 30, 0.4);
157
+ border: 1px solid var(--border-color);
158
+ padding: 1rem;
159
+ border-radius: 8px;
160
+ position: relative;
161
+ }
162
+ .substrate-card.synced { border-left: 3px solid var(--success-green); }
163
+
164
+ .substrate-name { font-size: 0.85rem; font-weight: 700; margin-bottom: 0.5rem; }
165
+ .substrate-coherence, .substrate-drift { font-size: 0.7rem; color: var(--text-secondary); margin-bottom: 0.25rem; }
166
+ .substrate-badge {
167
+ position: absolute;
168
+ top: 1rem;
169
+ right: 1rem;
170
+ font-size: 0.6rem;
171
+ font-weight: 700;
172
+ padding: 0.2rem 0.5rem;
173
+ border-radius: 4px;
174
+ }
175
+ .substrate-badge.synced { background: rgba(16, 185, 129, 0.1); color: var(--success-green); }
176
+
177
+ /* LOG CONTAINER */
178
+ .log-container {
179
+ background: #000;
180
+ border-radius: 12px;
181
+ border: 1px solid var(--border-color);
182
+ overflow: hidden;
183
+ }
184
+
185
+ .log-toolbar {
186
+ padding: 0.75rem 1.25rem;
187
+ background: rgba(255,255,255,0.03);
188
+ display: flex;
189
+ align-items: center;
190
+ gap: 0.75rem;
191
+ font-size: 0.75rem;
192
+ border-bottom: 1px solid var(--border-color);
193
+ }
194
+
195
+ .log-dot { width: 8px; height: 8px; border-radius: 50%; }
196
+ .log-dot.green { background: var(--success-green); box-shadow: 0 0 8px var(--success-green); }
197
+
198
+ .btn-clear {
199
+ margin-left: auto;
200
+ background: none;
201
+ border: none;
202
+ color: var(--text-secondary);
203
+ cursor: pointer;
204
+ font-size: 0.7rem;
205
+ }
206
+
207
+ .log-scroll {
208
+ height: 250px;
209
+ overflow-y: auto;
210
+ padding: 1rem;
211
+ font-family: "Fira Code", monospace;
212
+ font-size: 0.75rem;
213
+ }
214
+
215
+ .log-entry { margin-bottom: 0.4rem; white-space: pre-wrap; }
216
+ .log-time { color: var(--text-secondary); margin-right: 0.75rem; }
217
+ .log-tag { font-weight: 700; margin-right: 0.75rem; }
218
+ .log-tag.info { color: var(--accent-color); }
219
+ .log-tag.success { color: var(--success-green); }
220
+ .log-tag.optimize { color: var(--phi-gold); }
221
+
222
+ /* FOOTER */
223
+ .footer {
224
+ border-top: 1px solid var(--border-color);
225
+ padding: 2rem;
226
+ margin-top: 4rem;
227
+ color: var(--text-secondary);
228
+ font-size: 0.75rem;
229
+ }
230
+
231
+ .footer-inner {
232
+ max-width: 1200px;
233
+ margin: 0 auto;
234
+ display: flex;
235
+ justify-content: space-between;
236
+ }
237
+
238
+ /* SCROLLBAR */
239
+ ::-webkit-scrollbar { width: 6px; }
240
+ ::-webkit-scrollbar-track { background: rgba(0,0,0,0.1); }
241
+ ::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 3px; }
242
+ ::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.2); }
243
+
244
+ @keyframes pulse { 0% { opacity: 1; } 50% { opacity: 0.6; } 100% { opacity: 1; } }
245
+ .status-cluster .badge-online { animation: pulse 2s ease-in-out infinite; }