#content.algebra-catalog {
    display: block;
    clear: both;
    float: none;
    width: 100% !important;
    max-width: none;
    min-width: 0;
    --algebra-ink: #16364a;
    --algebra-muted: #475d69;
    --algebra-accent: #106556;
    --algebra-edge: #d4e2de;
    background: radial-gradient(ellipse at top left, #edf6ee 0, #fafbf8 42%, #fff 82%);
    color: var(--algebra-ink);
}

#content.algebra-catalog > .algebra-wrap {
    box-sizing: border-box;
    float: none;
    width: 100%;
    max-width: 1260px;
    margin: 0 auto;
    padding: clamp(16px, 3vw, 40px) clamp(15px, 3vw, 36px) 56px;
}

.algebra-breadcrumbs,
.algebra-courses,
.algebra-filter-actions,
.algebra-book-actions,
.algebra-pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
}

.algebra-breadcrumbs { font-size: .875rem; margin-bottom: 16px; }
.algebra-catalog a { color: var(--algebra-accent); }
.algebra-hero { margin-bottom: 18px; }
.algebra-hero h1 { font-size: clamp(2rem, 5vw, 3.5rem); margin: 0 0 6px; line-height: 1.08; }
.algebra-hero p { max-width: 70ch; margin: 0; color: var(--algebra-muted); }
.algebra-hero .algebra-kicker { font-weight: 700; font-size: .85rem; color: var(--algebra-accent); margin-bottom: 6px; }

.algebra-courses { margin-bottom: 12px; }
.algebra-courses a,
.algebra-pagination a {
    padding: 9px 14px;
    border: 1px solid var(--algebra-edge);
    border-radius: 8px;
    background: #fff;
    font-weight: 700;
}

.algebra-courses a[aria-current="page"],
.algebra-pagination a[aria-current="page"],
.algebra-filter-actions button {
    background: var(--algebra-accent);
    color: #fff;
    border-color: var(--algebra-accent);
}

.algebra-filters {
    display: grid;
    grid-template-columns: minmax(12rem, 1.4fr) repeat(3, minmax(0, 1fr)) auto;
    align-items: end;
    gap: 10px 12px;
    padding: 14px;
    margin: 0 0 18px;
    background: #fff;
    border: 1px solid var(--algebra-edge);
    border-radius: 12px;
}

.algebra-filters label { display: block; margin: 0 0 3px; font-size: .82rem; color: var(--algebra-ink); }
.algebra-filters input,
.algebra-filters select {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    padding: 8px 10px;
    background: #fff;
    border: 1px solid #aebfbb;
    border-radius: 7px;
    color: var(--algebra-ink);
}

.algebra-filter-actions { align-self: end; }
.algebra-filter-actions button {
    min-height: 42px;
    border: 1px solid var(--algebra-accent);
    border-radius: 7px;
    padding: 7px 14px;
    font-weight: 700;
}

.algebra-catalog :is(a, button, input, select):focus-visible {
    outline: 2px solid var(--algebra-accent);
    outline-offset: 3px;
}

.algebra-results-heading {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 2px 12px;
    margin-bottom: 10px;
}

.algebra-results-heading h2 { margin: 0; font-size: 1.45rem; }
.algebra-results-heading span { color: var(--algebra-muted); }
.algebra-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.algebra-book, .algebra-empty { background: #fff; border: 1px solid var(--algebra-edge); border-radius: 12px; }
.algebra-empty { padding: 20px; }
.algebra-empty h3 { margin-bottom: 8px; }
.algebra-cover { display: grid; place-items: center; padding: 12px; background: #eff4ef; border-radius: 11px 11px 0 0; }
.algebra-cover img { width: min(100%, 160px); height: auto; aspect-ratio: 204 / 264; object-fit: contain; }
.algebra-book-copy { padding: 12px; }
.algebra-book-copy h3 { margin: 5px 0 8px; font-size: 1.05rem; line-height: 1.35; overflow-wrap: anywhere; }
.algebra-book-copy h3 a { color: var(--algebra-ink); }
.algebra-book-copy p { margin: 0 0 8px; }
.algebra-book-type { font-size: .82rem; font-weight: 700; color: var(--algebra-accent); }
.algebra-book-meta, .algebra-book-price span { font-size: .82rem; color: var(--algebra-muted); }
.algebra-book-price { font-weight: 700; }
.algebra-book-price span { font-weight: 400; }
.algebra-book-actions a { font-size: .85rem; text-decoration: underline; padding: 4px 0; }
.algebra-pagination { margin-top: 18px; }

@media (max-width: 940px) {
    .algebra-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .algebra-query { grid-column: 1 / -1; }
    .algebra-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
    .algebra-filters, .algebra-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .algebra-breadcrumbs { margin-bottom: 10px; }
    .algebra-hero { margin-bottom: 12px; }
    .algebra-filters { gap: 8px; padding: 10px; margin-bottom: 12px; }
    .algebra-filters input, .algebra-filters select { font-size: 16px; }
    .algebra-filters label { letter-spacing: normal; }
    .algebra-filter-actions { gap: 3px 8px; }
    .algebra-courses { gap: 6px; }
    .algebra-courses a { min-height: 40px; padding: 8px 10px; font-size: .88rem; }
    .algebra-book-copy h3 { font-size: .95rem; }
}
