mirror of
https://github.com/DeNNiiInc/Web-Page-Performance-Test.git
synced 2026-04-17 20:05:58 +00:00
Feat: Complete UI implementation for GTmetrix dashboard
This commit is contained in:
97
styles.css
97
styles.css
@@ -116,6 +116,103 @@ body::before {
|
||||
z-index: 0;
|
||||
}
|
||||
|
||||
/* =========================================
|
||||
GTmetrix Dashboard
|
||||
========================================= */
|
||||
.gtmetrix-dashboard {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
|
||||
gap: 1.5rem;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
.dashboard-card {
|
||||
background: var(--color-bg-tertiary); /* Darker internal card */
|
||||
padding: 1.5rem;
|
||||
border-radius: 12px;
|
||||
border: 1px solid var(--color-border);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
min-height: 180px;
|
||||
}
|
||||
|
||||
.grade-card h3 { margin-bottom: 1rem; color: var(--color-text-secondary); font-size: 0.9rem; text-transform: uppercase; letter-spacing: 1px; }
|
||||
|
||||
.grade-circle {
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
border-radius: 50%;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 3.5rem;
|
||||
font-weight: 800;
|
||||
color: #fff;
|
||||
background: #444;
|
||||
transition: all 0.5s ease;
|
||||
box-shadow: 0 4px 15px rgba(0,0,0,0.3);
|
||||
}
|
||||
|
||||
.grade-a { background: #0cce6b; box-shadow: 0 0 20px rgba(12, 206, 107, 0.4); }
|
||||
.grade-b { background: #0ba759; }
|
||||
.grade-c { background: #ffaa00; }
|
||||
.grade-d { background: #ff4e00; }
|
||||
.grade-f { background: #ff0000; }
|
||||
|
||||
.scores-card {
|
||||
flex-direction: row;
|
||||
gap: 2rem;
|
||||
}
|
||||
|
||||
.score-item { text-align: center; }
|
||||
.score-label { font-size: 0.9rem; color: var(--color-text-secondary); margin-bottom: 0.5rem; }
|
||||
.score-value { font-size: 2.5rem; font-weight: 700; color: var(--color-text-primary); }
|
||||
.score-divider { width: 1px; height: 60px; background: var(--color-border); }
|
||||
|
||||
.vitals-card { align-items: stretch; }
|
||||
.vitals-card h3 { text-align: center; margin-bottom: 1rem; font-size: 0.9rem; color: var(--color-text-secondary); text-transform: uppercase; }
|
||||
.vitals-grid {
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr 1fr;
|
||||
gap: 1rem;
|
||||
text-align: center;
|
||||
}
|
||||
.vital-label { font-size: 0.8rem; font-weight: 600; margin-bottom: 0.25rem; }
|
||||
.vital-value { font-size: 1.2rem; font-weight: 500; color: var(--color-accent); }
|
||||
|
||||
/* Filmstrip */
|
||||
.filmstrip-container {
|
||||
display: flex;
|
||||
overflow-x: auto;
|
||||
gap: 0.5rem;
|
||||
padding: 1rem 0;
|
||||
scrollbar-width: thin;
|
||||
}
|
||||
.filmstrip-frame {
|
||||
flex: 0 0 auto;
|
||||
width: 100px;
|
||||
text-align: center;
|
||||
}
|
||||
.filmstrip-frame img {
|
||||
width: 100%;
|
||||
height: auto;
|
||||
border: 1px solid var(--color-border);
|
||||
margin-bottom: 0.25rem;
|
||||
}
|
||||
.frame-time { font-size: 0.75rem; color: var(--color-text-secondary); }
|
||||
|
||||
/* Checkbox */
|
||||
.checkbox-container {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 0.5rem;
|
||||
cursor: pointer;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
.checkbox-container input { width: 16px; height: 16px; }
|
||||
|
||||
/* ===================================
|
||||
LAYOUT STRUCTURE
|
||||
=================================== */
|
||||
|
||||
Reference in New Issue
Block a user