
.archive-hero { padding-bottom: 8px; }
.archive-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 22px;
    align-items: end;
    background: linear-gradient(135deg, #ffffff 0%, #f5f9ff 100%);
    border: 1px solid var(--gptc-border);
    border-radius: var(--gptc-radius);
    padding: 24px;
    box-shadow: var(--gptc-shadow);
}
.archive-hero__grid h1 { margin: 8px 0 10px; font-size: clamp(2rem, 4vw, 3.2rem); line-height: .95; letter-spacing: -0.05em; }
.archive-hero__grid p { margin: 0; color: var(--gptc-text-soft); max-width: 68ch; }
.archive-hero__stats {
    display: grid;
    justify-items: end;
    gap: 4px;
    min-width: 180px;
}
.archive-hero__stats strong { font-size: clamp(2rem, 3vw, 2.5rem); line-height: 1; letter-spacing: -0.05em; }
.archive-hero__stats span,
.archive-hero__stats small { color: var(--gptc-text-soft); text-align: right; }
.catalog-layout { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 24px; align-items: start; }
.catalog-sidebar { position: sticky; top: 88px; }
.filter-card { padding: 22px; display: grid; gap: 14px; }
.filter-card label,
.report-form label,
.auth-card label { display: grid; gap: 8px; font-weight: 600; color: var(--gptc-text); }
.filter-card__head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
}
.filter-card__head h2 { margin: 0; font-size: 1.35rem; letter-spacing: -0.03em; }
.filter-card__actions { display: flex; gap: 10px; flex-wrap: wrap; }
.filter-card__note { margin: 0; color: var(--gptc-text-soft); font-size: 0.9rem; }
.catalog-results__head {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
    margin-bottom: 18px;
}
.catalog-results__head h2 { margin: 4px 0 0; font-size: clamp(1.5rem, 2vw, 2rem); letter-spacing: -0.04em; }
.catalog-filters__close,
.catalog-filters__open { display: none; }
.archive-hero__grid--content { grid-template-columns: minmax(0, 1fr) 180px; }
.archive-content-page { padding-bottom: 8px; }
.inline-filter-group {
    margin-bottom: 18px;
    padding: 18px;
    border: 1px solid var(--gptc-border);
    border-radius: 22px;
    background: rgba(255,255,255,0.82);
}
.inline-filter-group__title { margin-bottom: 12px; font-weight: 800; letter-spacing: -0.02em; }
.term-chip-grid--compact,
.tag-cloud-row--compact { gap: 8px; }
.term-chip--compact,
.tag-pill { border-radius: 999px; }
.catalog-results { display: grid; gap: 18px; }
.catalog-more { display: flex; justify-content: center; padding-top: 8px; }
.filter-card{align-content:start;}
.filter-chip-group + .filter-chip-group{padding-top:4px;border-top:1px solid var(--gptc-border);}
.term-chip-grid--sidebar { grid-template-columns: 1fr; gap: 10px; }
.term-chip-grid--sidebar .term-chip { padding: 12px 14px; }
.term-chip-grid--sidebar .term-chip strong { font-size: 0.95rem; }
.filter-chip-group__title {
    display: inline-flex;
    margin-bottom: 10px;
    font-size: 0.88rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    color: var(--gptc-text);
}
.filter-card .tag-cloud-row--sidebar { gap: 8px; }
.filter-card .tag-pill { justify-content: flex-start; }

/* rubric archive */
.archive-hero--rubric { padding-top: 18px; }
.rubric-nav-card { overflow: hidden; }
.rubric-nav-card__head {
    display:grid;
    grid-template-columns: minmax(0,1fr) 220px;
    gap:20px;
    align-items:end;
}
.rubric-nav-card__head h1 { margin: 8px 0 10px; font-size: clamp(2rem, 4vw, 3rem); line-height: .95; letter-spacing: -0.05em; }
.rubric-nav-card__head p { margin:0; color:var(--gptc-text-soft); max-width: 70ch; }
.rubric-menu {
    display:flex; flex-wrap:wrap; gap:10px; margin-top:20px;
    padding-top:18px; border-top:1px solid var(--gptc-border);
}
.rubric-menu__link {
    display:inline-flex; align-items:center; min-height:42px; padding:0 16px;
    border-radius:999px; border:1px solid var(--gptc-border);
    background:#fff; color:var(--gptc-text); font-weight:700;
}
.rubric-menu__link.is-active,
.rubric-menu__link:hover { background:#edf4ff; border-color:#cfe0ff; color:var(--gptc-primary-dark); }
.rubric-submenu { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.rubric-toolbar {
    display:flex; gap:12px; justify-content:space-between; align-items:center;
    margin-top:18px; padding-top:18px; border-top:1px solid var(--gptc-border);
}
.rubric-search { flex: 1 1 auto; max-width: 420px; }
.rubric-search input {
    width:100%; min-height:48px; border-radius:16px;
    border:1px solid var(--gptc-border); padding:0 16px; background:#fff;
}
.rubric-marketing__body {
    display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.rubric-marketing__body h2 { margin:8px 0 10px; font-size: clamp(1.6rem, 2.4vw, 2.2rem); line-height:1.05; letter-spacing:-.04em; }
.rubric-marketing__body p { margin:0; color: var(--gptc-text-soft); max-width: 70ch; }
.rubric-marketing__actions { display:grid; gap:10px; min-width:240px; }
.gptc-tool-modal[hidden] { display:none; }
.gptc-tool-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
}
.gptc-tool-modal__backdrop { position:absolute; inset:0; background:rgba(15,23,42,.62); backdrop-filter: blur(8px); }
.gptc-tool-modal__dialog {
    position: relative;
    width: min(1280px, calc(100vw - 28px));
    height: min(88vh, 900px);
    margin: min(5vh, 30px) auto 0;
    display:grid;
    grid-template-rows:auto 1fr auto;
    border-radius:24px;
    background:#fff;
    box-shadow:0 30px 90px rgba(15,23,42,.26);
    overflow:hidden;
}
.gptc-tool-modal__head,
.gptc-tool-modal__foot {
    display:flex; align-items:center; justify-content:space-between; gap:14px;
    padding:16px 18px; border-bottom:1px solid var(--gptc-border);
}
.gptc-tool-modal__foot { border-bottom:0; border-top:1px solid var(--gptc-border); }
.gptc-tool-modal__head h2 { margin:0; font-size:1.15rem; letter-spacing:-.02em; }
.gptc-tool-modal__close {
    width:42px; height:42px; border-radius:12px; border:1px solid var(--gptc-border); background:#fff; font-size:28px; line-height:1; cursor:pointer;
}
.gptc-tool-modal__frame-wrap { min-height:0; background:#eef4ff; }
.gptc-tool-modal__frame { width:100%; height:100%; border:0; background:#fff; }
body.gptc-modal-open { overflow:hidden; }
.tool-owner-meta { display:flex; gap:8px; flex-wrap:wrap; margin:14px 0 4px; }

@media (max-width: 1080px) {
    .catalog-layout { grid-template-columns: 1fr; }
    .catalog-sidebar {
        position: fixed;
        z-index: 60;
        top: 0;
        left: 0;
        width: min(420px, 100vw);
        height: 100dvh;
        padding: 88px 12px 12px;
        background: rgba(244,247,251,0.88);
        transform: translateX(-104%);
        transition: transform .24s ease;
    }
    .filters-open .catalog-sidebar { transform: translateX(0); }
    .catalog-filters__close,
    .catalog-filters__open { display: inline-flex; }
    .catalog-sidebar .filter-card { height: 100%; overflow: auto; }

    .rubric-nav-card__head { grid-template-columns: 1fr; }
    .rubric-marketing__body { flex-direction:column; align-items:flex-start; }
}
@media (max-width: 768px) {
    .archive-hero__grid { grid-template-columns: 1fr; }
    .archive-hero__stats { justify-items: start; }
    .archive-hero__stats span,
    .archive-hero__stats small { text-align: left; }
    .archive-hero__grid--content { grid-template-columns: 1fr; }
    .rubric-toolbar { flex-direction:column; align-items:stretch; }
    .rubric-search { max-width:none; }
    .gptc-tool-modal__dialog { width: calc(100vw - 12px); height: calc(100vh - 12px); margin-top: 6px; border-radius: 18px; }
}
