Skip to content

Commit 6e16617

Browse files
authored
feat(ui): add rack-style UI mockups CSS
1 parent 2e57a14 commit 6e16617

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

server/static/css/mockups.css

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
:root{
2+
--bg:#1a1a1c; --panel:#23262c; --panel-hi:#2b2f36;
3+
--led-off:#3a3d44; --led-ok:#19d18f; --led-warn:#f59e0b; --led-err:#ef4444; --led-info:#3aa0ff;
4+
--cyan:#3aa0ff; --text:#e9eef4; --muted:#97a1af;
5+
--bevel:inset 0 1px 0 rgba(255,255,255,.03), 0 1px 3px rgba(0,0,0,.6);
6+
--bevel-hi:inset 0 1px 0 rgba(255,255,255,.06), 0 2px 8px rgba(0,0,0,.7);
7+
}
8+
.mockwrap{background:var(--bg);color:var(--text);padding:14px;border-radius:12px;}
9+
.rack{background:linear-gradient(#222831,#1d2127);border:1px solid #303440;border-radius:14px;box-shadow:var(--bevel);padding:16px;margin:12px 0;}
10+
.header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
11+
.title{font-weight:700;letter-spacing:.4px}
12+
.btn{background:var(--panel);border:1px solid #3a3f48;border-radius:10px;box-shadow:var(--bevel);padding:6px 10px;color:var(--text);cursor:pointer}
13+
.btn:active{transform:translateY(1px)}
14+
.ledbar{display:flex;gap:8px}
15+
.led{width:12px;height:12px;border-radius:50%;background:var(--led-off);box-shadow:inset 0 0 4px rgba(0,0,0,.8),0 0 6px rgba(0,0,0,.35)}
16+
.led.ok{background:var(--led-ok);box-shadow:0 0 8px var(--led-ok)}
17+
.led.warn{background:var(--led-warn);box-shadow:0 0 8px var(--led-warn)}
18+
.led.err{background:var(--led-err);box-shadow:0 0 8px var(--led-err)}
19+
.led.info{background:var(--led-info);box-shadow:0 0 8px var(--led-info)}
20+
21+
.row{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}
22+
.card{background:var(--panel);border:1px solid #333844;border-radius:12px;box-shadow:var(--bevel);padding:12px;min-width:220px;flex:1}
23+
.card h4{margin:0 0 8px 0;font-weight:600;color:var(--muted)}
24+
.small{font-size:.875rem;color:var(--muted)}
25+
26+
.knob{width:54px;height:54px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#444 0,#2d3139 65%,#222 100%);position:relative;box-shadow:var(--bevel-hi);border:1px solid #404655}
27+
.knob:after{content:'';position:absolute;left:50%;top:6px;width:2px;height:16px;background:#b7c6d9;transform:translateX(-50%)}
28+
.slider{height:10px;background:#0e1218;border:1px solid #2f3440;border-radius:6px;box-shadow:inset 0 1px 2px rgba(0,0,0,.8)}
29+
.meter{height:36px;border:1px solid #2f3440;border-radius:6px;background:linear-gradient(90deg,#26c281, #ecf000, #ff5f5f)}
30+
.label{font-size:.8rem;color:var(--muted);margin-bottom:6px}
31+
.grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px}
32+
.toolbar{display:flex;gap:8px;align-items:center}
33+
.input{background:#0e1218;border:1px solid #2f3440;border-radius:8px;color:var(--text);padding:6px 8px;box-shadow:var(--bevel);min-width:180px}
34+
.tag{background:#0e1218;border:1px solid #2f3440;border-radius:8px;padding:4px 8px;color:var(--muted);font-size:.8rem}
35+
hr.soft{border:none;border-top:1px solid #2f3440;margin:10px 0}

0 commit comments

Comments
 (0)