1246 lines
21 KiB
CSS
1246 lines
21 KiB
CSS
@tailwind base;
|
|
@tailwind utilities;
|
|
:root {
|
|
color-scheme: light;
|
|
--bg: #f5f7f7;
|
|
--surface: #fff;
|
|
--text: #203536;
|
|
--muted: #607475;
|
|
--line: #dce5e3;
|
|
--accent: #126b60;
|
|
--accent-strong: #0c544b;
|
|
--tint: #e9f4ef;
|
|
--danger: #a53b31;
|
|
--danger-bg: #fff0ec;
|
|
--violet: #7962ad;
|
|
--focus: #117cbd
|
|
}
|
|
[data-theme=dark] {
|
|
color-scheme: dark;
|
|
--bg: #111e20;
|
|
--surface: #1a2a2c;
|
|
--text: #e5efec;
|
|
--muted: #a5bab5;
|
|
--line: #354a49;
|
|
--accent: #8bd5bb;
|
|
--accent-strong: #a5e2cd;
|
|
--tint: #233d37;
|
|
--danger: #ffb5a5;
|
|
--danger-bg: #402a27;
|
|
--violet: #b9a4e8;
|
|
--focus: #88cbff
|
|
}
|
|
* {
|
|
box-sizing: border-box
|
|
}
|
|
body {
|
|
margin: 0;
|
|
background: var(--bg);
|
|
color: var(--text);
|
|
font-family: ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
|
|
font-size: 15px;
|
|
line-height: 1.55;
|
|
-webkit-font-smoothing: antialiased
|
|
}
|
|
a {
|
|
color: var(--accent);
|
|
text-decoration: none
|
|
}
|
|
a:hover {
|
|
text-decoration: underline
|
|
}
|
|
button,input,select {
|
|
font: inherit
|
|
}
|
|
button,summary {
|
|
cursor: pointer
|
|
}
|
|
button {
|
|
color: inherit
|
|
}
|
|
button:disabled {
|
|
cursor: wait;
|
|
opacity: .7
|
|
}
|
|
a,button,input,select,summary {
|
|
touch-action: manipulation
|
|
}
|
|
h1,h2,h3,p {
|
|
margin: 0
|
|
}
|
|
h1 {
|
|
font-size: clamp(28px,3vw,36px);
|
|
line-height: 1.2;
|
|
letter-spacing: -1.2px;
|
|
font-weight: 650
|
|
}
|
|
h2 {
|
|
font-size: 17px;
|
|
font-weight: 650;
|
|
letter-spacing: -.3px
|
|
}
|
|
h3 {
|
|
font-weight: 650
|
|
}
|
|
strong {
|
|
font-weight: 650
|
|
}
|
|
p+p {
|
|
margin-top: 8px
|
|
}
|
|
small,.small {
|
|
font-size: 12px
|
|
}
|
|
small {
|
|
color: var(--muted)
|
|
}
|
|
:focus-visible {
|
|
outline: 3px solid var(--focus);
|
|
outline-offset: 4px
|
|
}
|
|
input:focus-visible,select:focus-visible {
|
|
outline-offset: 1px
|
|
}
|
|
::selection {
|
|
background: var(--tint)
|
|
}
|
|
[hidden] {
|
|
display: none!important
|
|
}
|
|
.shell {
|
|
width: min(1120px,calc(100% - 64px));
|
|
margin-inline: auto
|
|
}
|
|
.site-header {
|
|
background: var(--surface);
|
|
border-bottom: 1px solid var(--line)
|
|
}
|
|
.header-inner {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 48px;
|
|
min-height: 88px
|
|
}
|
|
.brand {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 7px;
|
|
font-size: 21px;
|
|
font-weight: 750;
|
|
color: var(--text);
|
|
white-space: nowrap;
|
|
letter-spacing: -.6px
|
|
}
|
|
.brand:hover {
|
|
text-decoration: none
|
|
}
|
|
.brand-light {
|
|
font-weight: 450
|
|
}
|
|
.brand-mark {
|
|
width: 34px;
|
|
height: 34px;
|
|
background: var(--accent);
|
|
color: var(--surface);
|
|
border-radius: 11px;
|
|
margin-right: 5px;
|
|
padding: 3px
|
|
}
|
|
.brand-mark svg {
|
|
width: 100%;
|
|
height: 100%
|
|
}
|
|
.main-nav {
|
|
display: flex;
|
|
gap: 8px;
|
|
align-self: stretch;
|
|
align-items: center
|
|
}
|
|
.main-nav a {
|
|
padding: 10px 16px;
|
|
border-radius: 8px;
|
|
color: var(--muted);
|
|
font-size: 14px;
|
|
font-weight: 550
|
|
}
|
|
.main-nav a[aria-current],.main-nav a:hover {
|
|
background: var(--tint);
|
|
color: var(--accent);
|
|
text-decoration: none
|
|
}
|
|
.account-menu {
|
|
margin-left: auto;
|
|
position: relative
|
|
}
|
|
.account-menu summary {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 9px;
|
|
min-height: 44px;
|
|
list-style: none;
|
|
font-size: 13px
|
|
}
|
|
.account-menu summary::-webkit-details-marker {
|
|
display: none
|
|
}
|
|
.avatar {
|
|
display: grid;
|
|
place-items: center;
|
|
width: 30px;
|
|
height: 30px;
|
|
border-radius: 50%;
|
|
background: var(--tint);
|
|
color: var(--accent);
|
|
font-weight: 650
|
|
}
|
|
.account-menu nav {
|
|
position: absolute;
|
|
right: 0;
|
|
top: 100%;
|
|
width: 175px;
|
|
background: var(--surface);
|
|
border: 1px solid var(--line);
|
|
border-radius: 10px;
|
|
padding: 6px;
|
|
z-index: 5;
|
|
box-shadow: 0 10px 30px #0001
|
|
}
|
|
.account-menu nav a {
|
|
display: block;
|
|
padding: 11px 12px;
|
|
border-radius: 6px
|
|
}
|
|
.account-menu nav a:hover {
|
|
background: var(--tint)
|
|
}
|
|
.header-inner>.actions {
|
|
margin-left: auto
|
|
}
|
|
.main-content {
|
|
padding-top: 40px;
|
|
min-height: calc(100vh - 186px)
|
|
}
|
|
.page-heading {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 20px;
|
|
margin-bottom: 28px
|
|
}
|
|
.page-heading .muted {
|
|
margin-top: 9px
|
|
}
|
|
.eyebrow {
|
|
font-size: 10px;
|
|
letter-spacing: 1.8px;
|
|
font-weight: 700;
|
|
color: var(--accent);
|
|
margin-bottom: 10px
|
|
}
|
|
.muted {
|
|
color: var(--muted)
|
|
}
|
|
.button {
|
|
display: inline-flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
gap: 8px;
|
|
min-height: 44px;
|
|
padding: 10px 17px;
|
|
border-radius: 8px;
|
|
border: 1px solid var(--line);
|
|
background: var(--surface);
|
|
color: var(--text);
|
|
font-size: 13px;
|
|
font-weight: 650;
|
|
line-height: 1.5;
|
|
white-space: nowrap
|
|
}
|
|
.button:hover {
|
|
background: var(--tint);
|
|
text-decoration: none;
|
|
border-color: var(--accent)
|
|
}
|
|
.button.primary {
|
|
background: var(--accent);
|
|
border-color: var(--accent);
|
|
color: var(--surface)
|
|
}
|
|
.button.primary:hover {
|
|
background: var(--accent-strong)
|
|
}
|
|
.button.danger {
|
|
background: var(--danger);
|
|
color: var(--surface);
|
|
border-color: var(--danger)
|
|
}
|
|
.actions {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 12px
|
|
}
|
|
.add-action {
|
|
padding-inline: 19px
|
|
}
|
|
.add-action>span {
|
|
font-size: 20px;
|
|
line-height: 1
|
|
}
|
|
.range-bar {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 16px;
|
|
margin: 0 0 24px
|
|
}
|
|
.segmented {
|
|
display: inline-flex;
|
|
padding: 4px;
|
|
gap: 3px;
|
|
background: var(--surface);
|
|
border: 1px solid var(--line);
|
|
border-radius: 9px
|
|
}
|
|
.segmented a {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
min-height: 36px;
|
|
padding: 6px 15px;
|
|
font-size: 12px;
|
|
white-space: nowrap;
|
|
color: var(--muted);
|
|
border-radius: 5px
|
|
}
|
|
.segmented a[aria-current],.segmented a:hover {
|
|
background: var(--tint);
|
|
color: var(--accent);
|
|
text-decoration: none
|
|
}
|
|
.date-form {
|
|
display: flex;
|
|
align-items: end;
|
|
gap: 10px
|
|
}
|
|
.date-form .field {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 8px
|
|
}
|
|
.date-form label {
|
|
font-size: 12px;
|
|
color: var(--muted)
|
|
}
|
|
.date-form input {
|
|
font-size: 12px;
|
|
padding: 9px;
|
|
min-height: 42px;
|
|
width: 143px
|
|
}
|
|
.date-form .button {
|
|
min-height: 42px
|
|
}
|
|
.card {
|
|
background: var(--surface);
|
|
border: 1px solid var(--line);
|
|
border-radius: 13px;
|
|
padding: 24px
|
|
}
|
|
.summary-grid {
|
|
display: grid;
|
|
grid-template-columns: 1.15fr 1.15fr .85fr;
|
|
gap: 16px;
|
|
margin-bottom: 22px
|
|
}
|
|
.summary-grid .card {
|
|
min-width: 0
|
|
}
|
|
.summary-grid h2 {
|
|
font-size: 12px;
|
|
color: var(--muted);
|
|
font-weight: 550
|
|
}
|
|
.latest-card {
|
|
background: var(--tint);
|
|
border-color: var(--tint)
|
|
}
|
|
.card-label {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center
|
|
}
|
|
.dot {
|
|
width: 7px;
|
|
height: 7px;
|
|
border-radius: 50%;
|
|
background: var(--accent)
|
|
}
|
|
.big-number {
|
|
font-variant-numeric: tabular-nums;
|
|
font-size: clamp(28px,3vw,38px);
|
|
line-height: 1.4;
|
|
letter-spacing: -1.3px;
|
|
font-weight: 600;
|
|
margin-top: 15px;
|
|
white-space: nowrap
|
|
}
|
|
.slash {
|
|
color: var(--muted);
|
|
font-weight: 350
|
|
}
|
|
.unit {
|
|
font-size: 12px;
|
|
font-weight: 450;
|
|
letter-spacing: 0;
|
|
color: var(--muted)
|
|
}
|
|
.latest-meta {
|
|
font-size: 12px
|
|
}
|
|
.latest-meta span {
|
|
padding: 0 6px;
|
|
color: var(--muted)
|
|
}
|
|
.summary-grid .muted {
|
|
font-size: 12px
|
|
}
|
|
.card-foot {
|
|
font-size: 11px;
|
|
color: var(--muted);
|
|
margin-top: 22px!important
|
|
}
|
|
.empty-title {
|
|
font-weight: 600;
|
|
margin-top: 18px
|
|
}
|
|
.section-heading {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 18px;
|
|
margin-bottom: 20px
|
|
}
|
|
.section-heading .small {
|
|
margin-top: 5px
|
|
}
|
|
.trend-card {
|
|
margin-bottom: 24px
|
|
}
|
|
.trend-card .eyebrow {
|
|
font-size: 9px;
|
|
margin-bottom: 5px
|
|
}
|
|
.chart-unit {
|
|
font-size: 11px;
|
|
color: var(--muted);
|
|
border: 1px solid var(--line);
|
|
padding: 4px 9px;
|
|
border-radius: 5px
|
|
}
|
|
.chart-legend {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
gap: 22px;
|
|
font-size: 12px;
|
|
margin-top: 20px
|
|
}
|
|
.chart-legend>span {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 7px
|
|
}
|
|
.chart-legend .muted {
|
|
margin-left: auto
|
|
}
|
|
.legend-line {
|
|
width: 19px;
|
|
height: 3px;
|
|
background: var(--accent);
|
|
display: inline-block
|
|
}
|
|
.legend-line.diastolic {
|
|
background: var(--violet)
|
|
}
|
|
.trend-chart {
|
|
display: block;
|
|
width: 100%;
|
|
height: auto;
|
|
max-height: 300px;
|
|
margin-top: 12px;
|
|
overflow: visible
|
|
}
|
|
.trend-chart text {
|
|
fill: var(--muted);
|
|
font-size: 11px
|
|
}
|
|
.grid-line {
|
|
stroke: var(--line);
|
|
stroke-dasharray: 3 5
|
|
}
|
|
.chart-line {
|
|
fill: none;
|
|
stroke: var(--accent);
|
|
stroke-width: 2.5;
|
|
stroke-linejoin: round;
|
|
stroke-linecap: round;
|
|
vector-effect: non-scaling-stroke
|
|
}
|
|
.chart-line.diastolic {
|
|
stroke: var(--violet);
|
|
stroke-dasharray: 6 4
|
|
}
|
|
.chart-point {
|
|
fill: var(--accent)
|
|
}
|
|
.chart-point.diastolic {
|
|
fill: var(--violet)
|
|
}
|
|
.chart-caption {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
align-items: center;
|
|
gap: 10px;
|
|
margin-top: 12px;
|
|
font-size: 11px;
|
|
color: var(--muted)
|
|
}
|
|
.text-link {
|
|
font-size: 12px;
|
|
white-space: nowrap;
|
|
font-weight: 600
|
|
}
|
|
.chart-details {
|
|
margin-top: 22px;
|
|
border-top: 1px solid var(--line);
|
|
padding-top: 10px
|
|
}
|
|
.chart-details summary {
|
|
padding: 10px 0;
|
|
color: var(--accent);
|
|
font-size: 13px
|
|
}
|
|
.chart-details p {
|
|
margin: 12px 0
|
|
}
|
|
.reading-row {
|
|
display: grid;
|
|
grid-template-columns: 1.4fr 1.3fr .7fr 1.25fr .4fr;
|
|
align-items: center;
|
|
gap: 16px;
|
|
border-top: 1px solid var(--line);
|
|
padding: 17px 0;
|
|
font-size: 13px
|
|
}
|
|
.reading-row small {
|
|
display: block;
|
|
font-size: 10px
|
|
}
|
|
.reading-row .inline {
|
|
display: inline
|
|
}
|
|
.reading-row .reading-value {
|
|
font-size: 16px;
|
|
font-weight: 650;
|
|
font-variant-numeric: tabular-nums
|
|
}
|
|
.table-heading {
|
|
border: 0;
|
|
color: var(--muted);
|
|
font-size: 10px;
|
|
padding: 0 0 13px;
|
|
letter-spacing: .2px
|
|
}
|
|
.status {
|
|
font-size: 10px;
|
|
background: var(--tint);
|
|
padding: 5px 9px;
|
|
border-radius: 5px;
|
|
color: var(--accent);
|
|
display: inline-block;
|
|
white-space: nowrap
|
|
}
|
|
.status-above {
|
|
background: var(--danger-bg);
|
|
color: var(--danger)
|
|
}
|
|
.edit-link {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
gap: 8px;
|
|
min-height: 44px;
|
|
justify-content: end
|
|
}
|
|
.mobile-label {
|
|
display: none
|
|
}
|
|
.pagination {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 20px;
|
|
border-top: 1px solid var(--line);
|
|
padding-top: 20px;
|
|
font-size: 12px
|
|
}
|
|
.report-links {
|
|
display: flex;
|
|
gap: 22px;
|
|
justify-content: end;
|
|
align-items: center;
|
|
margin: 24px 0;
|
|
font-size: 12px
|
|
}
|
|
.site-footer {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
border-top: 1px solid var(--line);
|
|
padding: 22px 0;
|
|
margin-top: 38px;
|
|
color: var(--muted);
|
|
font-size: 11px
|
|
}
|
|
.notifications {
|
|
margin-bottom: 24px
|
|
}
|
|
.notice {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: space-between;
|
|
gap: 12px;
|
|
background: var(--tint);
|
|
border: 1px solid var(--line);
|
|
border-left: 3px solid var(--accent);
|
|
border-radius: 8px;
|
|
padding: 8px 12px 8px 16px;
|
|
font-size: 13px;
|
|
margin-bottom: 10px
|
|
}
|
|
.notice-error {
|
|
background: var(--danger-bg);
|
|
color: var(--danger);
|
|
border-left-color: var(--danger)
|
|
}
|
|
.notice-close {
|
|
border: 0;
|
|
background: transparent;
|
|
min-width: 44px;
|
|
min-height: 44px;
|
|
font-size: 23px;
|
|
color: inherit
|
|
}
|
|
.form-page {
|
|
max-width: 580px;
|
|
margin-inline: auto
|
|
}
|
|
.auth-page {
|
|
max-width: 420px;
|
|
padding-top: 25px
|
|
}
|
|
.settings-page {
|
|
max-width: 660px
|
|
}
|
|
.back-link {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
min-height: 44px;
|
|
font-size: 12px;
|
|
margin-bottom: 18px
|
|
}
|
|
.entry-form {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 22px;
|
|
padding: 30px
|
|
}
|
|
.field {
|
|
min-width: 0
|
|
}
|
|
.field label {
|
|
display: block;
|
|
font-size: 12px;
|
|
font-weight: 600;
|
|
margin-bottom: 7px
|
|
}
|
|
.field input:not([type=checkbox]),.field select {
|
|
display: block;
|
|
width: 100%;
|
|
min-height: 46px;
|
|
border: 1px solid var(--line);
|
|
border-radius: 7px;
|
|
padding: 10px 12px;
|
|
background: var(--surface);
|
|
color: var(--text);
|
|
min-width: 0
|
|
}
|
|
.field input[aria-invalid=true] {
|
|
border-color: var(--danger)
|
|
}
|
|
.field input[type=file] {
|
|
font-size: 12px
|
|
}
|
|
.field-error {
|
|
color: var(--danger);
|
|
font-size: 12px;
|
|
margin-top: 6px
|
|
}
|
|
.entry-form fieldset {
|
|
padding: 0;
|
|
border: 0;
|
|
margin: 0;
|
|
min-width: 0
|
|
}
|
|
.entry-form legend {
|
|
font-size: 14px;
|
|
font-weight: 650;
|
|
margin-bottom: 16px
|
|
}
|
|
.entry-form legend span {
|
|
margin-left: 5px
|
|
}
|
|
.entry-form fieldset>.field+.field {
|
|
margin-top: 16px
|
|
}
|
|
.entry-form fieldset>.small {
|
|
margin-bottom: 16px
|
|
}
|
|
.pressure-fields {
|
|
display: grid;
|
|
grid-template-columns: 1fr 18px 1fr;
|
|
align-items: end;
|
|
gap: 10px
|
|
}
|
|
.pressure-fields input {
|
|
font-size: 32px!important;
|
|
font-variant-numeric: tabular-nums;
|
|
min-height: 76px!important;
|
|
letter-spacing: -.5px
|
|
}
|
|
.entry-slash {
|
|
padding-bottom: 19px;
|
|
color: var(--muted);
|
|
font-size: 24px
|
|
}
|
|
.timestamp-field>p {
|
|
margin-top: 7px
|
|
}
|
|
.form-actions {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
gap: 12px;
|
|
border-top: 1px solid var(--line);
|
|
padding-top: 24px;
|
|
font-size: 12px
|
|
}
|
|
.form-actions>a:not(.button) {
|
|
padding: 10px
|
|
}
|
|
.form-hint {
|
|
text-align: center;
|
|
color: var(--muted);
|
|
font-size: 12px;
|
|
margin-top: 18px
|
|
}
|
|
.delete-link a {
|
|
color: var(--danger);
|
|
font-size: 12px
|
|
}
|
|
.checkbox-field {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 10px;
|
|
margin-top: 22px;
|
|
font-size: 13px;
|
|
min-height: 44px
|
|
}
|
|
.checkbox-field input {
|
|
width: 19px;
|
|
height: 19px;
|
|
accent-color: var(--accent)
|
|
}
|
|
.two-columns {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
gap: 20px
|
|
}
|
|
.data-columns .card>p {
|
|
font-size: 13px;
|
|
margin: 14px 0 22px
|
|
}
|
|
.data-columns .entry-form {
|
|
padding: 0
|
|
}
|
|
.full-width {
|
|
width: 100%
|
|
}
|
|
hr {
|
|
border: 0;
|
|
border-top: 1px solid var(--line);
|
|
margin: 28px 0
|
|
}
|
|
.table-scroll {
|
|
overflow-x: auto
|
|
}
|
|
table {
|
|
width: 100%;
|
|
border-collapse: collapse;
|
|
font-size: 12px;
|
|
text-align: left
|
|
}
|
|
td,th {
|
|
padding: 12px 10px;
|
|
border-bottom: 1px solid var(--line);
|
|
font-variant-numeric: tabular-nums
|
|
}
|
|
th {
|
|
font-weight: 600
|
|
}
|
|
thead th {
|
|
color: var(--muted);
|
|
font-size: 11px
|
|
}
|
|
.empty-state {
|
|
text-align: center;
|
|
padding: 40px 18px
|
|
}
|
|
.empty-state p {
|
|
font-size: 13px;
|
|
color: var(--muted);
|
|
margin: 10px 0 20px
|
|
}
|
|
.empty-symbol {
|
|
display: inline-grid;
|
|
place-items: center;
|
|
background: var(--tint);
|
|
color: var(--accent);
|
|
border-radius: 50%;
|
|
width: 42px;
|
|
height: 42px;
|
|
font-size: 22px;
|
|
margin-bottom: 14px
|
|
}
|
|
.calendar-controls {
|
|
display: flex;
|
|
align-items: end;
|
|
gap: 12px;
|
|
margin-bottom: 16px
|
|
}
|
|
.calendar-grid {
|
|
display: grid;
|
|
grid-template-columns: repeat(7,minmax(0,1fr));
|
|
gap: 8px;
|
|
margin-top: 18px
|
|
}
|
|
.calendar-day {
|
|
min-height: 140px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
border: 1px solid var(--line);
|
|
padding: 12px;
|
|
border-radius: 8px;
|
|
color: var(--muted);
|
|
font-size: 11px
|
|
}
|
|
.calendar-day>strong {
|
|
font-size: 19px;
|
|
color: var(--text);
|
|
margin: 6px 0
|
|
}
|
|
.calendar-day small {
|
|
margin-top: 5px;
|
|
font-size: 10px
|
|
}
|
|
.calendar-day.has-readings {
|
|
background: var(--tint);
|
|
color: var(--accent)
|
|
}
|
|
.landing-hero {
|
|
padding: 70px 0 90px
|
|
}
|
|
.landing-hero h1 {
|
|
font-size: clamp(44px,7vw,76px);
|
|
line-height: 1.1;
|
|
letter-spacing: -3px
|
|
}
|
|
.landing-hero>p:not(.eyebrow) {
|
|
margin: 25px 0;
|
|
color: var(--muted);
|
|
font-size: 17px;
|
|
line-height: 1.8
|
|
}
|
|
.landing-hero .actions {
|
|
margin-top: 30px
|
|
}
|
|
.skip-link {
|
|
position: absolute;
|
|
left: 16px;
|
|
top: -100px;
|
|
padding: 12px;
|
|
background: var(--surface);
|
|
z-index: 10
|
|
}
|
|
.skip-link:focus {
|
|
top: 10px
|
|
}
|
|
@media(min-width:761px) {
|
|
.calendar-day:first-child {
|
|
grid-column-start: var(--start-day,1)
|
|
}
|
|
}
|
|
@media(max-width:1000px) {
|
|
.header-inner {
|
|
gap: 24px
|
|
}
|
|
.range-bar {
|
|
align-items: start;
|
|
flex-wrap: wrap
|
|
}
|
|
.summary-grid {
|
|
grid-template-columns: 1fr 1fr
|
|
}
|
|
.count-card {
|
|
grid-column: 1/-1;
|
|
display: grid;
|
|
grid-template-columns: 1fr auto;
|
|
align-items: center
|
|
}
|
|
.count-card .big-number {
|
|
grid-column: 2;
|
|
grid-row: 1/3;
|
|
margin: 0
|
|
}
|
|
.count-card .card-foot {
|
|
grid-column: 1/-1;
|
|
margin-top: 8px!important
|
|
}
|
|
.calendar-day {
|
|
padding: 8px
|
|
}
|
|
.calendar-day>span:not(.muted) {
|
|
font-size: 10px
|
|
}
|
|
.calendar-grid {
|
|
gap: 5px
|
|
}
|
|
}
|
|
@media(max-width:760px) {
|
|
.shell {
|
|
width: calc(100% - 32px)
|
|
}
|
|
.header-inner {
|
|
flex-wrap: wrap;
|
|
gap: 0;
|
|
min-height: 72px;
|
|
padding-top: 16px
|
|
}
|
|
.brand {
|
|
font-size: 20px
|
|
}
|
|
.main-nav {
|
|
order: 3;
|
|
width: 100%;
|
|
justify-content: space-between;
|
|
gap: 0;
|
|
padding: 14px 0 10px
|
|
}
|
|
.main-nav a {
|
|
flex: 1;
|
|
text-align: center;
|
|
padding: 9px 12px
|
|
}
|
|
.account-label {
|
|
display: none
|
|
}
|
|
.main-content {
|
|
padding-top: 26px
|
|
}
|
|
.page-heading {
|
|
align-items: start;
|
|
gap: 12px;
|
|
flex-wrap: wrap;
|
|
margin-bottom: 22px
|
|
}
|
|
.page-heading h1 {
|
|
font-size: 29px
|
|
}
|
|
.page-heading .muted {
|
|
font-size: 13px
|
|
}
|
|
.add-action {
|
|
font-size: 12px;
|
|
padding: 10px 13px;
|
|
position: static
|
|
}
|
|
.eyebrow {
|
|
font-size: 9px
|
|
}
|
|
.range-bar {
|
|
gap: 14px
|
|
}
|
|
.date-form {
|
|
width: 100%;
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr auto;
|
|
align-items: end;
|
|
gap: 8px
|
|
}
|
|
.date-form .field {
|
|
display: block
|
|
}
|
|
.date-form input {
|
|
width: 100%;
|
|
font-size: 12px;
|
|
padding: 9px 6px;
|
|
min-height: 44px
|
|
}
|
|
.date-form .button {
|
|
padding-inline: 12px;
|
|
min-height: 44px
|
|
}
|
|
.summary-grid {
|
|
grid-template-columns: 1fr;
|
|
gap: 12px
|
|
}
|
|
.summary-grid .card {
|
|
padding: 21px
|
|
}
|
|
.count-card {
|
|
grid-column: auto
|
|
}
|
|
.big-number {
|
|
font-size: 34px
|
|
}
|
|
.card-foot {
|
|
margin-top: 14px!important
|
|
}
|
|
.card {
|
|
padding: 20px
|
|
}
|
|
.section-heading {
|
|
gap: 10px;
|
|
flex-wrap: wrap
|
|
}
|
|
.chart-legend {
|
|
gap: 12px
|
|
}
|
|
.chart-legend .muted {
|
|
margin-left: 0;
|
|
width: 100%;
|
|
font-size: 11px
|
|
}
|
|
.trend-chart {
|
|
min-height: 180px
|
|
}
|
|
.chart-caption {
|
|
flex-wrap: wrap;
|
|
font-size: 10px
|
|
}
|
|
.history-card .section-heading {
|
|
margin-bottom: 8px
|
|
}
|
|
.table-heading {
|
|
position: absolute;
|
|
width: 1px;
|
|
height: 1px;
|
|
overflow: hidden;
|
|
clip-path: inset(50%)
|
|
}
|
|
.reading-row:not(.table-heading) {
|
|
grid-template-columns: 1fr 1fr;
|
|
gap: 10px;
|
|
padding: 17px 0
|
|
}
|
|
.reading-row>div:first-child {
|
|
grid-column: 1
|
|
}
|
|
.reading-row>div:first-child time {
|
|
font-weight: 600
|
|
}
|
|
.reading-row>div:first-child small {
|
|
display: inline;
|
|
margin-left: 5px;
|
|
font-size: 10px
|
|
}
|
|
.reading-row>div:nth-child(2) {
|
|
grid-column: 1;
|
|
grid-row: 2
|
|
}
|
|
.reading-row>div:nth-child(3) {
|
|
grid-column: 2;
|
|
grid-row: 2;
|
|
text-align: right
|
|
}
|
|
.reading-row>div:nth-child(4) {
|
|
grid-column: 1/-1;
|
|
grid-row: 3
|
|
}
|
|
.reading-row>div:nth-child(5) {
|
|
grid-column: 2;
|
|
grid-row: 1;
|
|
text-align: right
|
|
}
|
|
.mobile-label {
|
|
display: block;
|
|
color: var(--muted);
|
|
font-size: 10px;
|
|
font-weight: 400
|
|
}
|
|
.reading-row .reading-value small {
|
|
display: inline;
|
|
margin-left: 4px
|
|
}
|
|
.edit-link {
|
|
min-height: 44px
|
|
}
|
|
.report-links {
|
|
justify-content: start;
|
|
flex-wrap: wrap;
|
|
gap: 12px 22px
|
|
}
|
|
.report-links>span {
|
|
width: 100%
|
|
}
|
|
.entry-form {
|
|
padding: 22px;
|
|
gap: 22px
|
|
}
|
|
.form-actions .button {
|
|
flex: 1;
|
|
padding-inline: 10px
|
|
}
|
|
.form-actions>a:not(.button) {
|
|
width: 100%;
|
|
text-align: center
|
|
}
|
|
.pressure-fields label {
|
|
font-size: 11px
|
|
}
|
|
.pressure-fields {
|
|
gap: 6px;
|
|
grid-template-columns: 1fr 12px 1fr
|
|
}
|
|
.pressure-fields input {
|
|
font-size: 29px!important;
|
|
padding-inline: 10px!important
|
|
}
|
|
.two-columns {
|
|
grid-template-columns: 1fr
|
|
}
|
|
.calendar-grid {
|
|
grid-template-columns: repeat(2,minmax(0,1fr));
|
|
gap: 8px
|
|
}
|
|
.calendar-day {
|
|
min-height: 125px;
|
|
padding: 12px
|
|
}
|
|
.calendar-day>span:not(.muted) {
|
|
font-size: 12px
|
|
}
|
|
.calendar-controls {
|
|
flex-wrap: wrap
|
|
}
|
|
.calendar-controls .field {
|
|
flex: 1
|
|
}
|
|
.calendar-controls input {
|
|
max-width: 100%
|
|
}
|
|
.calendar-controls .button {
|
|
flex-basis: 100%
|
|
}
|
|
.pagination {
|
|
gap: 10px;
|
|
flex-wrap: wrap
|
|
}
|
|
.site-footer {
|
|
font-size: 10px
|
|
}
|
|
.landing-hero {
|
|
padding: 40px 0 55px
|
|
}
|
|
.landing-hero>p:not(.eyebrow) {
|
|
font-size: 15px
|
|
}
|
|
.header-inner>.actions {
|
|
padding-bottom: 14px
|
|
}
|
|
.auth-page {
|
|
padding-top: 5px
|
|
}
|
|
.report th,.report td {
|
|
padding: 9px 7px;
|
|
font-size: 11px
|
|
}
|
|
}
|
|
@media print {
|
|
html[data-theme],:root {
|
|
color-scheme: light;
|
|
--bg: #fff;
|
|
--surface: #fff;
|
|
--text: #111;
|
|
--muted: #444;
|
|
--line: #ccc;
|
|
--accent: #174c42
|
|
}
|
|
.site-header,.site-footer,.notifications,.print-action,.no-print,.skip-link {
|
|
display: none!important
|
|
}
|
|
.shell {
|
|
width: 100%
|
|
}
|
|
.main-content {
|
|
padding: 0;
|
|
min-height: 0
|
|
}
|
|
.card {
|
|
border: 0;
|
|
padding: 0
|
|
}
|
|
.page-heading {
|
|
margin-bottom: 24px
|
|
}
|
|
h1 {
|
|
font-size: 24px
|
|
}
|
|
table {
|
|
font-size: 10px
|
|
}
|
|
tr {
|
|
break-inside: avoid
|
|
}
|
|
thead {
|
|
display: table-header-group
|
|
}
|
|
.table-scroll {
|
|
overflow: visible
|
|
}
|
|
.report th,.report td {
|
|
font-size: 10px;
|
|
padding: 8px 5px
|
|
}
|
|
@page {
|
|
margin: 15mm
|
|
}
|
|
}
|
|
@media(max-width:760px) {
|
|
.trend-chart text {
|
|
font-size: 24px
|
|
}
|
|
.trend-chart {
|
|
margin-top: 0
|
|
}
|
|
.date-form .field label {
|
|
margin-bottom: 5px
|
|
}
|
|
}
|
|
|
|
.profile-photo {
|
|
border-radius: 50%;
|
|
object-fit: cover;
|
|
margin-bottom: 18px;
|
|
}
|
|
|