Ghost/ghost/admin/app/styles/layouts/dashboard.css

471 lines
8.8 KiB
CSS
Raw Normal View History

2021-02-17 14:11:01 +03:00
:root {
--dashboard-gap: 1.8vw;
}
2021-02-16 20:12:24 +03:00
.gh-dashboard {
display: grid;
2021-02-17 14:11:01 +03:00
grid-template-columns: 2fr 1fr;
grid-gap: var(--dashboard-gap);
2021-02-16 20:12:24 +03:00
}
.gh-dashboard-area {
display: flex;
flex-direction: column;
}
.gh-dashboard-header {
font-size: 1.1rem;
text-transform: uppercase;
font-weight: 500;
letter-spacing: .2px;
2021-02-17 18:46:12 +03:00
margin: -4px 0 4px;
2021-02-16 20:12:24 +03:00
padding: 0;
color: var(--black);
}
2021-02-17 12:13:11 +03:00
.gh-dashboard-header.secondary {
color: var(--midgrey);
}
2021-02-16 20:12:24 +03:00
.gh-dashboard-summary.small .gh-dashboard-header {
margin-bottom: 6px;
}
2021-02-17 14:11:01 +03:00
.gh-dashboard-list {
display: flex;
flex-direction: column;
flex-grow: 1;
align-items: stretch;
justify-content: flex-start;
}
.gh-dashboard-container {
display: grid;
grid-template-columns: 1fr;
width: 100%;
}
.gh-dashboard-container.col-2 {
grid-template-columns: 1fr 1fr;
2021-02-18 14:27:29 +03:00
grid-gap: var(--dashboard-gap);
2021-02-17 14:11:01 +03:00
}
/* Generic box containers */
.gh-dashboard-box {
display: flex;
flex-direction: column;
justify-content: space-between;
border: 1px solid var(--whitegrey);
border-radius: 3px;
padding: 24px;
2021-02-18 14:27:29 +03:00
margin-bottom: var(--dashboard-gap);
2021-02-17 14:11:01 +03:00
}
.gh-dashboard-box .content {
color: var(--darkgrey);
}
.gh-dashboard-box .content h4 {
font-size: 1.6rem;
font-weight: 600;
2021-02-18 14:44:39 +03:00
line-height: 1.4em;
2021-02-17 14:11:01 +03:00
margin-bottom: 8px;
color: var(--black);
}
2021-02-18 14:44:39 +03:00
.gh-dashboard-box .content h3 {
font-size: 1.9rem;
font-weight: 600;
line-height: 1.4em;
margin-bottom: 6px;
color: var(--black);
}
2021-02-17 14:11:01 +03:00
.gh-dashboard-box .content p {
margin-bottom: 12px;
}
.gh-dashboard-box .footer {
display: flex;
align-items: center;
}
2021-02-18 14:44:39 +03:00
.gh-dashboard-box.grey {
background: var(--main-color-content-greybg);
border: none;
}
.gh-dashboard-box.black {
background: var(--black);
border: none;
color: var(--white);
}
.gh-dashboard-box.black .content h4 {
color: var(--white);
}
.gh-dashboard-box.black .content p {
color: var(--whitegrey);
}
.gh-dashboard-box.green {
background: color-mod(var(--green) a(4%));
border-color: color-mod(var(--green) a(60%));
}
2021-02-17 14:11:01 +03:00
/* Main areas in grid */
.gh-dashboard-area.charts {
grid-column: 1 / 3;
}
.gh-dashboard-area.members-activity {
grid-column: 2 / 3;
}
.gh-dashboard-area.mixed {
grid-column: 1 / 2;
border: none;
border-radius: unset;
padding: 0;
align-items: stretch;
justify-content: flex-start;
}
/* Charts */
.gh-dashboard-area.charts {
display: grid;
grid-template-columns: 2fr 1fr;
grid-template-rows: 1fr 1fr 1fr;
border: 1px solid var(--whitegrey);
border-radius: 3px;
grid-column-gap: var(--dashboard-gap);
2021-02-19 12:39:13 +03:00
height: 300px;
padding: 5px 0 24px;
2021-02-17 14:11:01 +03:00
}
.gh-dashboard-area.charts .gh-dashboard-box {
border: none;
border-radius: 0;
2021-02-19 12:39:13 +03:00
padding: 16px 0 0 24px;
2021-02-17 14:11:01 +03:00
margin: 0;
}
.gh-dashboard-area.charts .gh-dashboard-header {
2021-02-19 12:39:13 +03:00
margin: 0 0 6px;
2021-02-17 14:11:01 +03:00
}
.gh-dashboard-area.charts .mrr {
grid-column: 1 / 2;
grid-row: 1 / 4;
2021-02-19 12:39:13 +03:00
padding-left: 24px;
2021-02-17 14:11:01 +03:00
}
.gh-dashboard-area.charts .total-members {
grid-column: 2 / 3;
grid-row: 1 / 2;
2021-02-19 12:39:13 +03:00
padding-right: 24px;
2021-02-17 14:11:01 +03:00
}
.gh-dashboard-area.charts .paid-members {
grid-column: 2 / 3;
grid-row: 2 / 3;
2021-02-19 12:39:13 +03:00
padding-right: 24px;
2021-02-17 14:11:01 +03:00
}
.gh-dashboard-area.charts .newsletter-open-rate {
grid-column: 2 / 3;
grid-row: 3 / 4;
2021-02-19 12:39:13 +03:00
padding-right: 24px;
2021-02-17 14:11:01 +03:00
}
2021-02-16 20:12:24 +03:00
.gh-dashboard-chart-container {
display: flex;
align-items: flex-start;
2021-02-19 12:39:13 +03:00
justify-content: space-between;
2021-02-16 20:12:24 +03:00
height: 100%;
}
.gh-dashboard-summary {
flex-basis: 220px;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
2021-02-19 12:39:13 +03:00
height: 100%;
2021-02-19 14:04:15 +03:00
margin-top: 8px;
2021-02-16 20:12:24 +03:00
}
.gh-dashboard-summary.small {
flex-basis: 180px;
2021-02-19 14:04:15 +03:00
margin-top: 0;
2021-02-16 20:12:24 +03:00
}
.gh-dashboard-summary .data-container {
display: flex;
align-items: flex-end;
margin-bottom: 28px;
}
.gh-dashboard-summary .data-container:last-of-type {
margin-bottom: -8px;
}
.gh-dashboard-summary .data {
font-size: 3.9rem;
line-height: 4rem;
font-weight: 600;
color: var(--black);
letter-spacing: -0.1px;
line-height: 1;
}
.gh-dashboard-summary.small .data {
font-size: 2.8rem;
letter-spacing: -0.1px;
}
.gh-dashboard-summary .growth {
2021-02-18 15:09:25 +03:00
background: var(--whitegrey-d1);
2021-02-16 20:12:24 +03:00
border-radius: 3px;
font-size: 1.8rem;
line-height: 1;
font-weight: 500;
2021-02-18 15:09:25 +03:00
color: var(--midgrey);
2021-02-16 20:12:24 +03:00
padding: 6px 8px;
2021-02-19 14:04:15 +03:00
margin: 8px 0 0;
2021-02-16 20:12:24 +03:00
}
.gh-dashboard-summary.small .growth {
2021-02-19 15:08:57 +03:00
font-size: 1.2rem;
2021-02-16 20:12:24 +03:00
letter-spacing: 0;
padding: 2px 4px;
2021-02-19 15:08:57 +03:00
margin: 6px 0 0;
2021-02-16 20:12:24 +03:00
}
.gh-dashboard-summary .growth.positive {
background: color-mod(var(--green) a(13%));
color: color-mod(var(--green) l(-5%));
}
.gh-dashboard-summary .growth.negative {
background: color-mod(var(--yellow) a(20%));
color: color-mod(var(--yellow) l(-8%));
}
.gh-dashboard-chart {
display: flex;
flex-direction: column;
2021-02-19 14:04:15 +03:00
align-items: flex-end;
justify-content: flex-end;
2021-02-19 12:39:13 +03:00
height: 100%;
width: 100%;
}
.gh-dashboard-chart.nodata {
border: 1px dashed var(--lightgrey);
font-size: 1.3rem;
color: var(--midlightgrey);
}
.gh-dashboard-chart.nodata {
font-size: 1.3rem;
color: var(--midlightgrey);
}
.gh-dashboard-chart.small {
max-width: 180px;
2021-02-16 20:12:24 +03:00
}
2021-02-17 12:13:11 +03:00
/* Total members */
2021-02-16 20:12:24 +03:00
.gh-dashboard-area.total-members {
grid-column: 1 / 2;
grid-row: 2;
}
.gh-dashboard-area.total-members .gh-dashboard-chart,
.gh-dashboard-area.newsletter-open-rate .gh-dashboard-chart {
height: 6vw;
min-height: 80px;
max-height: 150px;
}
2021-02-17 13:25:14 +03:00
/* Top members */
2021-02-16 20:12:24 +03:00
.gh-dashboard-area.top-members {
grid-column: 3 / 4;
grid-row: 1 / 3;
}
2021-02-17 13:25:14 +03:00
.gh-dashboard-area.top-members .gh-dashboard-list {
justify-content: space-between;
}
2021-02-17 12:13:11 +03:00
.gh-dashboard-top-members {
2021-02-17 18:46:12 +03:00
display: flex;
2021-02-17 12:13:11 +03:00
flex-direction: column;
align-items: stretch;
list-style: none;
padding: 0;
margin: 8px 0 0;
width: 100%;
}
.gh-dashboard-top-member {
display: flex;
align-items: center;
flex-grow: 1;
width: 100%;
justify-content: stretch;
margin: 8px 0;
padding: 0;
}
.gh-dashboard-top-member .member-details {
display: flex;
align-items: center;
flex-grow: 1;
}
.gh-dashboard-top-member .avatar {
display: flex;
align-items: center;
justify-content: center;
flex-grow: 0;
width: 32px;
height: 32px;
min-width: 32px;
border-radius: 999px;
background: var(--blue);
margin-right: 8px;
font-size: 1.5rem;
font-weight: 500;
text-align: center;
color: #fff;
line-height: 1;
}
.gh-dashboard-top-member .name {
font-size: 1.4rem;
font-weight: 500;
color: var(--black);
}
.gh-dashboard-top-member .open-rate {
white-space: nowrap;
margin-left: 12px;
color: var(--midgrey);
font-size: 1.3rem;
}
2021-02-17 13:25:14 +03:00
.gh-dashboard-top-members-footer {
display: flex;
justify-content: flex-end;
border-top: 1px solid var(--whitegrey-d1);
padding-top: 12px;
margin-bottom: -4px;
}
.gh-dashboard-top-members-footer a {
display: flex;
align-items: center;
color: var(--black);
font-weight: 500;
}
.gh-dashboard-top-members-footer a svg {
width: 12px;
height: 12px;
margin-left: 4px;
}
.gh-dashboard-top-members-footer a svg path {
fill: var(--black);
}
2021-02-17 12:13:11 +03:00
/* Activity feed */
2021-02-16 20:12:24 +03:00
.gh-dashboard-area.activity-feed {
grid-column: 3 / 4;
grid-row: 3 / 4;
2021-02-17 13:25:14 +03:00
padding: 0;
margin: 0;
2021-02-17 18:46:12 +03:00
}
.gh-dashboard-activity-feed {
display: flex;
flex-direction: column;
align-items: stretch;
list-style: none;
padding: 0;
margin: 4px 0 0;
width: 100%;
}
.gh-dashboard-activity-feed li {
display: flex;
align-items: baseline;
flex-grow: 1;
width: 100%;
justify-content: space-between;
margin: 8px 0;
padding: 0;
}
.gh-dashboard-activity-feed .activity {
display: flex;
align-items: baseline;
margin-right: 32px;
color: var(--midgrey);
line-height: 1.5em;
font-size: 1.3rem;
}
.gh-dashboard-activity-feed .member {
font-weight: 500;
color: var(--black);
font-size: 1.4rem;
}
.gh-dashboard-activity-feed .activity svg {
width: 12px;
height: 12px;
margin-right: 8px;
margin-top: 1px;
}
.gh-dashboard-activity-feed .time {
white-space: nowrap;
margin-left: 12px;
color: var(--midgrey);
font-size: 1.3rem;
2021-02-18 14:27:29 +03:00
}
2021-02-18 14:44:39 +03:00
@media (max-width: 1320px) {
2021-02-18 14:27:29 +03:00
.gh-dashboard {
grid-template-columns: 1fr 1fr;
}
.gh-dashboard-area.charts {
grid-template-columns: 1fr 1fr;
}
.gh-dashboard-summary {
flex-basis: 140px;
}
.gh-dashboard-summary:not(.small) .data {
font-size: 3.4rem;
}
.gh-dashboard-summary:not(.small) .growth {
font-size: 1.5rem;
}
.gh-dashboard-container.col-2 {
grid-template-columns: 1fr;
grid-gap: 0;
}
.gh-dashboard-area.charts {
min-height: 240px;
}
2021-02-16 20:12:24 +03:00
}