:root {
  --type-font-ui: Inter, "Noto Sans SC", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --type-font-editorial: "Noto Serif SC", "Songti SC", serif;
  --type-2xs: 10px;
  --type-xs: 11.5px;
  --type-sm: 12.5px;
  --type-md: 14px;
  --type-body: 15px;
  --type-lg: 17px;
  --type-xl: 20px;
  --type-title: clamp(25px, 2vw, 30px);
  --type-display: 38px;
  --leading-tight: 1.28;
  --leading-ui: 1.5;
  --leading-body: 1.75;
}

body {
  font-family: var(--type-font-ui);
  font-size: var(--type-body);
  line-height: var(--leading-body);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

.left-sidebar .site-name,
.preview-left .preview-name {
  font-family: var(--type-font-editorial);
  font-size: var(--type-xl);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.01em;
}

.left-sidebar .site-description,
.preview-left .preview-bio {
  font-family: var(--type-font-ui);
  font-size: 13.5px;
  font-weight: 400;
  line-height: 1.6;
}

.left-sidebar #main-menu > li > a,
.left-sidebar #dark-mode-toggle,
.left-sidebar #translate-toggle,
.preview-left .preview-menu a {
  font-family: var(--type-font-ui);
  font-size: 14.5px !important;
  font-weight: 500;
  line-height: var(--leading-ui) !important;
}

.left-sidebar #main-menu > li.current > a,
.preview-left .preview-menu .active a {
  font-weight: 700;
}

.left-now__kicker,
.ink-weather__eyebrow,
.ink-calendar__archive-link {
  font-family: var(--type-font-ui);
  font-size: var(--type-2xs);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.18em;
}

.left-now__section-title {
  font-family: var(--type-font-editorial);
  font-size: var(--type-lg);
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.025em;
}

.left-now__state {
  font-size: var(--type-md);
  font-weight: 700;
  line-height: var(--leading-ui);
}

.left-now__context-label {
  font-size: var(--type-xs);
  font-weight: 400;
  line-height: var(--leading-ui);
}

.left-now__focus {
  font-family: var(--type-font-editorial);
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.5;
}

.left-now__topics {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.55;
}

.left-now__badge {
  font-size: 10.5px;
  font-weight: 650;
  line-height: 1.4;
}

.left-now__metrics dt {
  font-size: var(--type-sm);
  font-weight: 400;
  line-height: 1.45;
}

.left-now__metrics dd {
  font-size: var(--type-md);
  font-weight: 700;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
}

.article-list .article-title,
.popular-home-card .article-title {
  font-family: var(--type-font-ui);
  font-size: var(--type-title);
  font-weight: 700;
  line-height: var(--leading-tight);
  letter-spacing: -0.025em;
}

.article-subtitle {
  font-size: 14.5px;
  font-weight: 400;
  line-height: var(--leading-body);
}

.article-category a {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.08em;
}

.article-time,
.popular-home-card .article-time {
  font-size: var(--type-sm);
  font-weight: 400;
  line-height: var(--leading-ui);
  font-variant-numeric: tabular-nums;
}

.ink-calendar__title {
  font-family: var(--type-font-editorial);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.35;
}

.ink-calendar__archive-link,
.ink-weather__eyebrow {
  font-size: 11px;
}

.ink-calendar__week {
  font-size: 13px;
  font-weight: 600;
  line-height: var(--leading-ui);
}

.ink-calendar__day {
  font-size: 14px;
  font-weight: 450;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}

.ink-calendar__day.is-today {
  font-weight: 700;
}

.ink-calendar__foot {
  justify-content: flex-end;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.45;
}

.ink-weather__city {
  font-family: var(--type-font-editorial);
  font-size: 19px;
  font-weight: 600;
  line-height: 1.35;
}

.ink-weather__updated {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.4;
}

.ink-weather__temperature {
  font-family: var(--type-font-ui);
  font-size: 42px;
  font-weight: 650;
  line-height: 1;
  letter-spacing: -0.05em;
  font-variant-numeric: tabular-nums;
}

.ink-weather__condition {
  font-size: 13.5px;
  font-weight: 400;
  line-height: 1.5;
}

.ink-weather__range {
  font-size: 13.5px;
  font-weight: 450;
  line-height: 1.55;
  font-variant-numeric: tabular-nums;
}

.ink-weather__metric {
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.4;
}

.ink-weather__metric strong {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
}

.ink-weather__footer {
  font-size: 10.5px;
  font-weight: 400;
  line-height: 1.4;
}

.right-sidebar .widget-title {
  font-family: var(--type-font-editorial);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.02em;
}

.ink-info-stack .widget-archive--list a {
  font-size: 15px;
  font-weight: 650;
  line-height: 1.5;
  font-variant-numeric: tabular-nums;
}

.ink-info-stack .tagCloud-tags a,
.ink-info-stack .tag-cloud a,
.ink-info-stack .widget.tagCloud a {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.55;
}

@media (max-width: 1200px) {
  :root {
    --type-title: clamp(23px, 2vw, 27px);
  }
}
