feat: updated UI to Refined Trading Dashboard style

This commit is contained in:
DiTus
2026-03-19 22:20:59 +01:00
parent 870f7574cc
commit eedd532ba7
15 changed files with 1637 additions and 1679 deletions

205
css/refined.css Normal file
View File

@ -0,0 +1,205 @@
/* Extracted from Refined Trading Dashboard */
body {
background-color: #0d1421;
color: #ffffff;
font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
margin: 0;
padding: 0;
-webkit-font-smoothing: antialiased;
overflow: hidden; /* Prevent body scroll */
}
.text-muted {
color: #8fa2b3;
}
.bg-dark-surface {
background-color: #0d1421;
}
.border-dark {
border-color: #1e293b;
}
.bg-card-ai {
background-color: #161e2e;
border: 1px solid #2d3a4f;
}
/* Chart Customization */
.grid-line {
stroke: #1e293b;
stroke-width: 1;
}
.candle-orange {
fill: #f0b90b;
stroke: #f0b90b;
}
.wick-orange {
stroke: #f0b90b;
stroke-width: 1.5;
}
/* Overrides for existing components to match new theme */
/* Timeframe Buttons */
#timeframeContainer {
display: flex;
gap: 4px;
}
.timeframe-btn {
padding: 4px 8px;
font-size: 0.75rem; /* text-xs */
color: #c3c5d8;
background: transparent;
border: none;
border-radius: 0.25rem; /* rounded */
cursor: pointer;
transition: background-color 0.2s, color 0.2s;
}
.timeframe-btn:hover {
background-color: #262a35;
color: #dfe2f2;
}
.timeframe-btn.active {
background-color: #2962ff;
color: white;
font-weight: bold;
}
/* Stats Panel (Price Header) */
#priceHeader {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 0.5rem;
padding: 1rem;
border-bottom: 1px solid #1e293b;
background-color: #0d1421;
}
.stat-item {
display: flex;
flex-direction: column;
}
.stat-label {
font-size: 10px;
color: #8fa2b3;
text-transform: uppercase;
font-weight: 600;
}
.stat-value {
font-size: 1.125rem; /* text-lg */
font-weight: bold;
color: #ffffff;
}
.stat-value.positive { color: #26d367; }
.stat-value.negative { color: #ef5350; }
/* Chart Area */
#chartWrapper {
position: relative;
width: 100%;
height: 75vh; /* Match design */
background-color: #0d1421;
}
#chart {
width: 100%;
height: 100%;
}
/* Technical Analysis Section */
#taPanel {
padding: 1.5rem 1rem;
background-color: #0d1421;
overflow-y: auto; /* Allow scrolling if content overflows */
flex: 1;
}
.ta-header {
margin-bottom: 1rem;
display: flex;
align-items: center;
gap: 0.5rem;
}
.ta-title {
font-size: 1.125rem; /* text-lg */
font-weight: bold;
color: #ffffff;
display: flex;
align-items: center;
gap: 0.5rem;
}
.ta-content {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1rem;
}
.ta-section {
padding: 1rem;
border-radius: 0.75rem; /* rounded-xl */
background-color: #161e2e; /* bg-card-ai */
border: 1px solid #2d3a4f;
}
.ta-section-title {
font-size: 10px;
font-weight: bold;
color: #8fa2b3;
text-transform: uppercase;
margin-bottom: 1rem;
letter-spacing: 0.05em;
}
/* Indicator Panel (Sidebar/Modal Adaptation) */
/* We will float the sidebar over the content or use it as a modal */
#rightSidebar {
position: fixed;
top: 64px; /* Below header */
right: 0;
bottom: 64px; /* Above bottom nav */
width: 350px;
background-color: #1a2333;
border-left: 1px solid #2d3a4f;
z-index: 40;
transform: translateX(100%);
transition: transform 0.3s ease-in-out;
box-shadow: -4px 0 20px rgba(0,0,0,0.5);
display: flex;
flex-direction: column;
}
#rightSidebar.active {
transform: translateX(0);
}
/* Hide the old toggle button since we use bottom nav */
#sidebarToggleBtn {
display: none;
}
:root {
--tv-bg: #0d1421;
--tv-panel-bg: #1a2333;
--tv-border: #2d3a4f;
--tv-text: #ffffff;
--tv-text-secondary: #8fa2b3;
--tv-green: #26d367;
--tv-red: #ff4d4d;
--tv-blue: #2962ff;
--tv-hover: #252f3f;
}