Skip to content

Commit b99752a

Browse files
authored
Merge pull request #7 from github/ui/mockup-alignment
ui: align app to mockup design
2 parents 3b47804 + 4a65bf3 commit b99752a

6 files changed

Lines changed: 633 additions & 89 deletions

File tree

src/App.css

Lines changed: 223 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,26 @@
109109
/* Main report content area */
110110
.report-content {
111111
flex: 1;
112-
padding: 24px;
112+
min-width: 0;
113+
display: flex;
114+
flex-direction: column;
115+
}
116+
117+
.overview-page {
118+
max-width: 960px;
119+
width: 100%;
120+
margin: 0 auto;
121+
padding: 32px 24px 48px;
122+
display: flex;
123+
flex-direction: column;
124+
gap: 24px;
125+
}
126+
127+
.view-content {
128+
max-width: 960px;
129+
width: 100%;
130+
margin: 0 auto;
131+
padding: 32px 24px 48px;
113132
display: flex;
114133
flex-direction: column;
115134
gap: 24px;
@@ -188,7 +207,7 @@
188207
/* Charts grid */
189208
.charts-grid {
190209
display: grid;
191-
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
210+
grid-template-columns: 1fr;
192211
gap: 24px;
193212
width: 100%;
194213
}
@@ -397,6 +416,19 @@
397416
white-space: nowrap;
398417
}
399418

419+
/* Comparison framing headline */
420+
.comparison-framing {
421+
font-size: 16px;
422+
font-weight: 400;
423+
text-align: center;
424+
margin-bottom: 4px;
425+
color: #1f2328;
426+
}
427+
428+
.comparison-framing strong {
429+
font-weight: 700;
430+
}
431+
400432
/* Context / info banner */
401433
.context-banner {
402434
background: #ddf4ff;
@@ -615,6 +647,36 @@
615647
margin-top: 4px;
616648
}
617649

650+
.comparison-card__breakdown {
651+
margin-top: 16px;
652+
padding-top: 12px;
653+
border-top: 1px solid #d1d9e0;
654+
width: 100%;
655+
display: flex;
656+
flex-direction: column;
657+
gap: 6px;
658+
text-align: left;
659+
}
660+
661+
.comparison-card__breakdown-row {
662+
display: flex;
663+
justify-content: space-between;
664+
align-items: center;
665+
font-size: 13px;
666+
color: #1f2328;
667+
font-variant-numeric: tabular-nums;
668+
}
669+
670+
.comparison-card__breakdown-row--muted {
671+
color: #636c76;
672+
}
673+
674+
.comparison-card__breakdown-row--total {
675+
padding-top: 6px;
676+
border-top: 1px solid #d1d9e0;
677+
font-weight: 600;
678+
}
679+
618680
/* Overview cards row (breakdown + comparison) */
619681
.overview-cards {
620682
display: flex;
@@ -732,7 +794,7 @@
732794

733795
.cost-centers-view__tables {
734796
display: grid;
735-
grid-template-columns: repeat(auto-fit, minmax(420px, 1fr));
797+
grid-template-columns: 1fr;
736798
gap: 20px;
737799
}
738800

@@ -786,11 +848,26 @@
786848
font-variant-numeric: tabular-nums;
787849
}
788850

851+
.cost-centers-view__table th.cost-centers-view__num,
852+
td.cost-centers-view__num {
853+
text-align: right;
854+
}
855+
789856
.cost-centers-view__name {
790857
font-weight: 600;
791858
color: #1f2328;
792859
}
793860

861+
.cost-centers-view__diff--positive {
862+
color: #2da44e;
863+
font-weight: 600;
864+
}
865+
866+
.cost-centers-view__diff--negative {
867+
color: #cf222e;
868+
font-weight: 600;
869+
}
870+
794871
.cost-centers-view__empty {
795872
background: #ffffff;
796873
border: 1px solid #d1d9e0;
@@ -1286,13 +1363,22 @@
12861363

12871364
.site-footer {
12881365
text-align: center;
1289-
color: #57606a;
1290-
font-size: 13px;
1366+
color: #636c76;
1367+
font-size: 12px;
12911368
line-height: 1.6;
1369+
padding: 24px 16px 40px;
1370+
max-width: 960px;
1371+
margin: 0 auto;
1372+
width: 100%;
12921373
}
12931374

12941375
.site-footer a {
12951376
color: #636c76;
1377+
text-decoration: none;
1378+
}
1379+
1380+
.site-footer a:hover {
1381+
text-decoration: underline;
12961382
}
12971383

12981384
/* Error */
@@ -1488,3 +1574,135 @@
14881574
overflow: hidden;
14891575
text-overflow: ellipsis;
14901576
}
1577+
1578+
/* ── Report Guide View ───────────────────────────────────────── */
1579+
.report-guide {
1580+
max-width: 960px;
1581+
}
1582+
1583+
.report-guide__heading {
1584+
font-size: 1.25rem;
1585+
font-weight: 600;
1586+
color: #0f172a;
1587+
margin: 0 0 0.5rem;
1588+
}
1589+
1590+
.report-guide__intro {
1591+
color: #475569;
1592+
font-size: 0.9rem;
1593+
margin: 0 0 1.75rem;
1594+
}
1595+
1596+
.report-guide__example {
1597+
background: #ffffff;
1598+
border: 1px solid #e2e8f0;
1599+
border-radius: 10px;
1600+
padding: 1.25rem 1.5rem 1.5rem;
1601+
}
1602+
1603+
.report-guide__example-title {
1604+
font-size: 1rem;
1605+
font-weight: 600;
1606+
color: #1e293b;
1607+
margin: 0 0 0.5rem;
1608+
}
1609+
1610+
.report-guide__example-summary {
1611+
font-size: 0.875rem;
1612+
color: #475569;
1613+
line-height: 1.6;
1614+
margin: 0 0 1.25rem;
1615+
}
1616+
1617+
/* Scrollable CSV table */
1618+
.report-guide__csv-scroll {
1619+
overflow-x: auto;
1620+
border: 1px solid #e2e8f0;
1621+
border-radius: 6px;
1622+
margin-bottom: 1.25rem;
1623+
}
1624+
1625+
.report-guide__csv-table {
1626+
border-collapse: collapse;
1627+
font-size: 0.75rem;
1628+
font-family: ui-monospace, 'SFMono-Regular', Menlo, monospace;
1629+
white-space: nowrap;
1630+
width: 100%;
1631+
}
1632+
1633+
.report-guide__csv-th {
1634+
background: #f1f5f9;
1635+
color: #475569;
1636+
font-weight: 600;
1637+
padding: 0.35rem 0.65rem;
1638+
border-bottom: 1px solid #e2e8f0;
1639+
border-right: 1px solid #e2e8f0;
1640+
text-align: left;
1641+
}
1642+
1643+
.report-guide__csv-th:last-child {
1644+
border-right: none;
1645+
}
1646+
1647+
.report-guide__csv-td {
1648+
padding: 0.35rem 0.65rem;
1649+
border-right: 1px solid #f1f5f9;
1650+
color: #1e293b;
1651+
background: #fff;
1652+
}
1653+
1654+
.report-guide__csv-td:last-child {
1655+
border-right: none;
1656+
}
1657+
1658+
/* Annotation list */
1659+
.report-guide__annotation-list {
1660+
display: flex;
1661+
flex-direction: column;
1662+
gap: 0.5rem;
1663+
margin: 0;
1664+
}
1665+
1666+
.report-guide__annotation-row {
1667+
display: grid;
1668+
grid-template-columns: 260px 1fr;
1669+
gap: 0.75rem;
1670+
align-items: baseline;
1671+
padding: 0.4rem 0;
1672+
border-bottom: 1px solid #f1f5f9;
1673+
}
1674+
1675+
.report-guide__annotation-row:last-child {
1676+
border-bottom: none;
1677+
}
1678+
1679+
.report-guide__annotation-col {
1680+
display: flex;
1681+
flex-direction: column;
1682+
gap: 0.15rem;
1683+
}
1684+
1685+
.report-guide__annotation-code {
1686+
font-family: ui-monospace, 'SFMono-Regular', Menlo, monospace;
1687+
font-size: 0.78rem;
1688+
font-weight: 600;
1689+
color: #6366f1;
1690+
background: #eef2ff;
1691+
padding: 0.1rem 0.35rem;
1692+
border-radius: 4px;
1693+
width: fit-content;
1694+
}
1695+
1696+
.report-guide__annotation-value {
1697+
font-family: ui-monospace, 'SFMono-Regular', Menlo, monospace;
1698+
font-size: 0.75rem;
1699+
color: #64748b;
1700+
word-break: break-all;
1701+
}
1702+
1703+
.report-guide__annotation-note {
1704+
font-size: 0.85rem;
1705+
color: #334155;
1706+
line-height: 1.5;
1707+
margin: 0;
1708+
}

0 commit comments

Comments
 (0)