.rate-card-pdf {
    background-color: white;
    color: black;
    font-family: 'Roboto', sans-serif;
    font-size: 10px !important;
    line-height: 12px !important;
    padding: 0.7in 0.25in 0.6in 0.25in;
}

.rate-card-pdf-page-template > * {
    background-color: white;
    color: black;
    font-family: 'Roboto', sans-serif;
    font-size: 10px !important;
    position: absolute;
    left: 0.25in;
    right: 0.25in;
}

.rate-card-pdf-page-template .header {
    top: 0.25in;
    border-bottom: 1px solid black;
    padding-bottom: 0.05in;
}

.rate-card-pdf-page-template .footer {
    bottom: 0.25in;
    border-top: 1px solid black;
}

.rate-card-pdf-category {
    margin: 0.1in 0;
}

.rate-card-pdf-category-header {
    font-weight: bold;
    font-size: 14px;
    margin-bottom: 0.1in;
}

.rate-card-pdf-category-header.level-1 {
    font-size: 10px;
}

.rate-card-pdf-category-header.level-2 {
    font-size: 10px;
    font-weight: normal;
    font-style: italic;
}

.rate-card-pdf-category-body {
    margin-left: 0.1in;
}

.rate-card-pdf-logo {
    height: 0.25in;
}

.rate-card-pdf-note {
    margin: 0.1in 0;
}

.rate-card-pdf-rate {
    display: grid;
    grid-template-columns: auto max-content;
    grid-template-areas: 'name amount';
    align-items: end;
    gap: 0 0.05in;
}

.rate-card-pdf-rate-name {
    grid-area: name;
    position: relative;
    overflow: hidden;
}

.rate-card-pdf-rate-name::after {
    position: absolute;
    padding-left: 0.25ch;
    content: " . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ";
    text-align: right;
}

.rate-card-pdf-rate-amount {
    grid-area: amount;
}