Spaces:
Build error
Build error
File size: 3,499 Bytes
fab9847 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Noto+Sans+SC:wght@400;500;700&family=JetBrains+Mono:wght@400;500;600&display=swap');
:root {
--bg: #060b18;
--surface: #0d1525;
--card: rgba(22,33,55,.65);
--card-solid: #162137;
--border: rgba(56,80,130,.35);
--border-hover: rgba(59,130,246,.4);
--text: #e8ecf4;
--muted: #7b8ba8;
--accent: #4f8ff7;
--accent-glow: rgba(79,143,247,.12);
--accent-bright: #6da3ff;
--green: #22c55e;
--green-glow: rgba(34,197,94,.12);
--yellow: #eab308;
--yellow-glow: rgba(234,179,8,.1);
--red: #f43f5e;
--red-glow: rgba(244,63,94,.1);
--orange: #f97316;
--purple: #a855f7;
--purple-glow: rgba(168,85,247,.12);
--cyan: #06b6d4;
/* Shadows */
--shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);
--shadow-md: 0 4px 14px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.2);
--shadow-lg: 0 8px 30px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.25);
--shadow-glow: 0 0 20px rgba(79,143,247,.08), 0 4px 14px rgba(0,0,0,.3);
/* Blur */
--blur: blur(12px);
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Inter', 'Noto Sans SC', system-ui, -apple-system, sans-serif;
background: var(--bg);
color: var(--text);
line-height: 1.6;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
background-image:
radial-gradient(ellipse 80% 60% at 50% 0%, rgba(79,143,247,.04) 0%, transparent 60%),
radial-gradient(ellipse 60% 50% at 80% 100%, rgba(168,85,247,.03) 0%, transparent 50%);
background-attachment: fixed;
}
/* ββ Scrollbar ββ */
::-webkit-scrollbar { width: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
background: linear-gradient(180deg, rgba(79,143,247,.3), rgba(168,85,247,.2));
border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover { background: rgba(79,143,247,.5); }
/* ββ Recharts tooltip ββ */
.recharts-default-tooltip {
background: var(--card-solid) !important;
border: 1px solid var(--border) !important;
border-radius: 10px !important;
box-shadow: var(--shadow-md) !important;
backdrop-filter: var(--blur) !important;
}
/* ββ Selection ββ */
::selection {
background: rgba(79,143,247,.28);
color: var(--text);
}
/* ββ Stat Card (reusable) ββ */
.stat-card {
background: var(--card);
backdrop-filter: var(--blur);
border: 1px solid var(--border);
border-radius: 14px;
padding: 18px 20px;
transition: all .3s cubic-bezier(.4,0,.2,1);
position: relative;
overflow: hidden;
}
.stat-card::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(79,143,247,.04) 0%, transparent 60%);
opacity: 0;
transition: opacity .3s;
}
.stat-card:hover {
border-color: var(--border-hover);
box-shadow: var(--shadow-glow);
transform: translateY(-1px);
}
.stat-card:hover::before { opacity: 1; }
.stat-label {
font-size: .7rem;
text-transform: uppercase;
letter-spacing: 1.5px;
color: var(--muted);
font-weight: 600;
}
.stat-value {
font-size: 1.6rem;
font-weight: 800;
margin: 6px 0 4px;
background: linear-gradient(135deg, var(--text) 30%, var(--accent-bright));
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.stat-sub {
font-size: .7rem;
color: var(--muted);
}
/* ββ Monospace for code/numbers ββ */
code, .mono {
font-family: 'JetBrains Mono', 'Fira Code', monospace;
}
|