| |
| .dash-layout { |
| display: flex; |
| flex: 1; |
| height: calc(100vh - 65px); |
| padding: 30px; |
| gap: 30px; |
| box-sizing: border-box; |
| overflow-y: auto; |
| } |
|
|
| |
| .dash-main { |
| flex: 2; |
| display: flex; |
| flex-direction: column; |
| } |
|
|
| .dash-header { |
| margin-bottom: 30px; |
| } |
|
|
| .dash-header h1 { |
| font-size: 32px; |
| font-weight: 700; |
| margin: 0 0 8px 0; |
| color: var(--text-primary); |
| letter-spacing: 0.5px; |
| } |
|
|
| .dash-header p { |
| font-size: 15px; |
| color: var(--text-secondary); |
| margin: 0; |
| } |
|
|
| .dash-grid { |
| display: grid; |
| grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); |
| gap: 20px; |
| } |
|
|
| .dash-card { |
| background: rgba(15, 15, 18, 0.6); |
| backdrop-filter: var(--backdrop-blur); |
| border: var(--glass-border); |
| border-radius: 16px; |
| padding: 25px; |
| cursor: pointer; |
| transition: all 0.3s ease; |
| display: flex; |
| flex-direction: column; |
| justify-content: center; |
| position: relative; |
| overflow: hidden; |
| } |
|
|
| |
| .dash-card::before { |
| content: ''; |
| position: absolute; |
| top: 0; left: 0; width: 100%; height: 100%; |
| background: radial-gradient(circle at top right, var(--accent-glow), transparent 60%); |
| opacity: 0; |
| transition: 0.3s; |
| } |
|
|
| .dash-card:hover { |
| transform: translateY(-5px); |
| border-color: rgba(255, 193, 7, 0.3); |
| box-shadow: 0 10px 30px rgba(0,0,0,0.5), 0 0 20px var(--accent-glow); |
| } |
|
|
| .dash-card:hover::before { |
| opacity: 1; |
| } |
|
|
| .dash-card-icon { |
| font-size: 32px; |
| color: var(--accent-main); |
| margin-bottom: 15px; |
| z-index: 1; |
| } |
|
|
| .dash-card h3 { |
| margin: 0 0 8px 0; |
| font-size: 18px; |
| color: var(--text-primary); |
| z-index: 1; |
| } |
|
|
| .dash-card p { |
| margin: 0; |
| font-size: 13px; |
| color: var(--text-secondary); |
| z-index: 1; |
| } |
|
|
| |
| .dash-sidebar { |
| flex: 1; |
| min-width: 300px; |
| max-width: 400px; |
| display: flex; |
| flex-direction: column; |
| gap: 20px; |
| } |
|
|
| .dash-widget { |
| background: rgba(15, 15, 18, 0.6); |
| backdrop-filter: var(--backdrop-blur); |
| border: var(--glass-border); |
| border-radius: 16px; |
| padding: 20px; |
| } |
|
|
| .widget-title { |
| font-size: 15px; |
| font-weight: 600; |
| color: var(--text-primary); |
| margin-top: 0; |
| margin-bottom: 20px; |
| display: flex; |
| justify-content: space-between; |
| align-items: center; |
| } |
|
|
| |
| .status-row { |
| margin-bottom: 15px; |
| } |
|
|
| .status-label { |
| display: flex; |
| justify-content: space-between; |
| font-size: 13px; |
| color: var(--text-secondary); |
| margin-bottom: 8px; |
| } |
|
|
| .progress-bar-bg { |
| width: 100%; |
| height: 6px; |
| background: rgba(255, 255, 255, 0.1); |
| border-radius: 10px; |
| overflow: hidden; |
| } |
|
|
| .progress-bar-fill { |
| height: 100%; |
| background: var(--accent-main); |
| border-radius: 10px; |
| box-shadow: 0 0 10px var(--accent-glow); |
| transition: width 1s ease-in-out; |
| } |
|
|
| |
| .recent-file-item { |
| display: flex; |
| align-items: center; |
| gap: 12px; |
| padding: 10px 0; |
| border-bottom: 1px solid rgba(255,255,255,0.05); |
| cursor: pointer; |
| transition: 0.2s; |
| } |
|
|
| .recent-file-item:hover { |
| padding-left: 5px; |
| } |
|
|
| .recent-file-icon { |
| color: var(--accent-main); |
| background: rgba(255, 193, 7, 0.1); |
| padding: 8px; |
| border-radius: 8px; |
| font-size: 14px; |
| } |
|
|
| .recent-file-info h4 { margin: 0; font-size: 13px; color: var(--text-primary); font-weight: 500;} |
| .recent-file-info p { margin: 3px 0 0 0; font-size: 11px; color: var(--text-muted); } |
|
|
| |
| @media (max-width: 1024px) { |
| .dash-layout { flex-direction: column; } |
| .dash-sidebar { min-width: 100%; max-width: 100%; } |
| } |
|
|