:root{--text-page:35px;--text-section:17px;--text-body:14px;--text-ui:12px;--text-meta:11px;--text-micro:9px;--weight-regular:400;--weight-medium:600;--weight-semibold:700;--weight-bold:800}

body{font-size:var(--text-body);font-weight:var(--weight-regular)}

.brand{font-weight:900}
.nav a,.link-button{font-size:var(--text-ui);font-weight:var(--weight-regular)}
.nav a.active{font-weight:var(--weight-medium)}

.page-head h1,.budget-month-nav h1{font-size:var(--text-page);font-weight:var(--weight-semibold);letter-spacing:-1.2px}
.card h2,.category-group-head h2{font-size:var(--text-section);font-weight:var(--weight-medium);letter-spacing:-.2px}

.section-head a,.category-add summary,.journal-export-links a,.pagination a,.dashboard-account-add{font-size:var(--text-ui);font-weight:var(--weight-medium)}
.button{font-size:var(--text-ui);font-weight:var(--weight-medium)}

.field label,.stack-form label{font-size:var(--text-meta);font-weight:var(--weight-medium)}
.field input,.field select,.field textarea,.stack-form input,.stack-form select,.stack-form textarea{font-size:var(--text-body);font-weight:var(--weight-regular)}

.primary-balance span,.rta-summary span,.compact-row small,.account-row span,.journal-count,.dashboard-account-main small,.dashboard-account-note,.dashboard-archived-accounts>summary,.account-adjustment-note,.login-motto{font-size:var(--text-meta);font-weight:var(--weight-regular)}
.primary-balance strong{font-weight:var(--weight-medium)}
.rta-summary strong{font-weight:var(--weight-medium)}
.dashboard-archived-accounts>summary{font-weight:var(--weight-medium)}

.compact-row>strong,.compact-row span>strong,.account-row-side>strong,.account-main .entity-title strong,.dashboard-account-main strong,.dashboard-account-side>strong{font-weight:var(--weight-medium)}

th,.group-title,.dashboard-budget-columns{font-size:var(--text-micro);font-weight:var(--weight-semibold)}
td{font-size:var(--text-body);font-weight:var(--weight-regular)}

.quick-operation-tabs button,.transaction-tabs button{font-size:var(--text-ui);font-weight:var(--weight-medium)}
.quick-operation-card .form-actions .button.primary{font-weight:var(--weight-medium)}

.budget-repeat-action{font-size:var(--text-meta);font-weight:var(--weight-medium)}
.budget-group-row td{font-size:var(--text-ui);font-weight:var(--weight-semibold)}
.category-name-cell,.budget-table .category-name-cell{font-weight:var(--weight-regular)}
.available,.budget-table .available,.dashboard-budget-available{font-weight:var(--weight-medium)}

.entity-menu summary{font-weight:var(--weight-semibold)}
.menu-action,.text-action{font-size:var(--text-ui);font-weight:var(--weight-regular)}
.archive-badge{font-size:9px;font-weight:var(--weight-semibold)}

.journal-filter-actions a,.pagination,.journal-edit-link,.journal-delete-action{font-size:var(--text-meta);font-weight:var(--weight-regular)}
.pagination a{font-weight:var(--weight-medium)}

.login-logo{font-weight:900}
.login-error{font-size:var(--text-ui)}

.fresh-start-intro,.fresh-start-summary-block li,.fresh-start-backup p{font-size:var(--text-body);font-weight:var(--weight-regular)}
.fresh-start-summary-block h2,.fresh-start-section-title,.field label.fresh-start-section-title{font-size:var(--text-body);font-weight:var(--weight-medium);letter-spacing:0;color:var(--ink)}

@media(max-width:850px){:root{--text-page:28px;--text-section:16px;--text-body:13px;--text-ui:11px;--text-meta:10px;--text-micro:9px}.page-head h1,.budget-month-nav h1{font-size:var(--text-page)}}