maher-tradingview-api
Version:
Tradingview instant stocks API, indicator alerts, trading bot, and more !
253 lines (214 loc) • 4.62 kB
CSS
/* Enhanced Charts Styling */
.chart-container {
position: relative;
margin: 20px 0;
padding: 15px;
background: #ffffff;
border-radius: 8px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
}
.chart-container:hover {
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}
.chart-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 15px;
}
.chart-title {
font-size: 1.2rem;
font-weight: 600;
color: #333;
margin: 0;
}
.chart-controls {
display: flex;
gap: 10px;
}
.chart-button {
padding: 6px 12px;
border: 1px solid #ddd;
border-radius: 4px;
background: #fff;
color: #666;
cursor: pointer;
transition: all 0.2s ease;
}
.chart-button:hover {
background: #f8f8f8;
border-color: #ccc;
}
.chart-button.active {
background: #0088cc;
color: #fff;
border-color: #0088cc;
}
.chart-timeframes {
display: flex;
gap: 5px;
margin-bottom: 10px;
}
.timeframe-button {
padding: 4px 8px;
border: 1px solid #eee;
border-radius: 4px;
background: #fff;
color: #666;
font-size: 0.9rem;
cursor: pointer;
transition: all 0.2s ease;
}
.timeframe-button:hover {
background: #f8f8f8;
}
.timeframe-button.active {
background: #0088cc;
color: #fff;
border-color: #0088cc;
}
.chart-indicators {
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-top: 15px;
padding-top: 15px;
border-top: 1px solid #eee;
}
.indicator-chip {
display: inline-flex;
align-items: center;
padding: 4px 10px;
background: #f5f5f5;
border-radius: 15px;
font-size: 0.9rem;
color: #666;
}
.indicator-chip .remove-indicator {
margin-left: 5px;
cursor: pointer;
opacity: 0.6;
}
.indicator-chip .remove-indicator:hover {
opacity: 1;
}
.chart-tooltip {
background: rgba(255, 255, 255, 0.95);
border-radius: 4px;
padding: 8px 12px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
font-size: 0.9rem;
border: 1px solid #eee;
}
.chart-tooltip .tooltip-title {
font-weight: 600;
margin-bottom: 4px;
color: #333;
}
.chart-tooltip .tooltip-value {
color: #666;
}
.chart-legend {
display: flex;
flex-wrap: wrap;
gap: 15px;
margin-top: 15px;
padding: 10px;
background: #f8f8f8;
border-radius: 4px;
}
.legend-item {
display: flex;
align-items: center;
gap: 5px;
font-size: 0.9rem;
color: #666;
}
.legend-color {
width: 12px;
height: 12px;
border-radius: 2px;
}
.chart-loader {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(255, 255, 255, 0.8);
display: flex;
justify-content: center;
align-items: center;
z-index: 10;
}
.loader-spinner {
width: 30px;
height: 30px;
border: 3px solid #f3f3f3;
border-top: 3px solid #0088cc;
border-radius: 50%;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
/* المؤشرات الفنية */
.technical-indicator {
margin-bottom: 20px;
padding: 15px;
background: #fff;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.technical-indicator-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 10px;
}
.technical-indicator-title {
font-size: 1.1rem;
font-weight: 600;
color: #333;
}
.technical-indicator-value {
font-size: 1rem;
font-weight: 500;
}
.technical-indicator-value.positive {
color: #4caf50;
}
.technical-indicator-value.negative {
color: #f44336;
}
.technical-indicator-value.neutral {
color: #ff9800;
}
/* التخصيص للغة العربية */
[dir="rtl"] .chart-container {
direction: rtl;
}
[dir="rtl"] .chart-controls {
flex-direction: row-reverse;
}
[dir="rtl"] .indicator-chip .remove-indicator {
margin-right: 5px;
margin-left: 0;
}
/* تحسينات الأداء */
.chart-container canvas {
will-change: transform;
}
@media (max-width: 768px) {
.chart-controls {
flex-wrap: wrap;
}
.timeframe-button {
padding: 6px 10px;
}
.chart-indicators {
margin-top: 10px;
}
}