.cw3-formula-library,
.cw3-question-formulae,
.cw3-formula-single {
    --cw3-border: var(--cw-border);
    --cw3-muted: var(--cw-muted);
    --cw3-soft: var(--cw-soft);
    --cw3-accent: var(--cw-brand);
    --cw3-radius: 10px;
}

.cw3-formula-library {
    margin: 1.5rem 0;
}

.cw3-formula-library__intro {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 1.25rem;
}

.cw3-formula-library__intro h2,
.cw3-question-formulae h2,
.cw3-formula-single__questions h2 {
    margin: .2rem 0 .4rem;
}

.cw3-formula-library__intro p {
    max-width: 760px;
    margin: 0;
    color: var(--cw3-muted);
}

.cw3-formula-eyebrow {
    display: block;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--cw3-muted);
}

.cw3-formula-library__count {
    min-width: 92px;
    padding: .8rem 1rem;
    text-align: center;
    border: 1px solid var(--cw3-border);
    border-radius: var(--cw3-radius);
    background: var(--cw-surface);
}

.cw3-formula-library__count strong {
    display: block;
    font-size: 1.5rem;
    line-height: 1;
}

.cw3-formula-library__count span {
    color: var(--cw3-muted);
    font-size: .75rem;
}

.cw3-formula-controls {
    margin-bottom: 1.25rem;
}

.cw3-formula-search {
    display: grid;
    gap: .35rem;
    max-width: 520px;
    margin-bottom: .85rem;
    font-weight: 600;
}

.cw3-formula-search input {
    width: 100%;
    min-height: 42px;
    padding: .55rem .7rem;
    border: 1px solid var(--cw3-border);
    border-radius: 7px;
}

.cw3-formula-section-filters {
    display: flex;
    gap: .45rem;
    flex-wrap: wrap;
}

.cw3-formula-section-filters button {
    border: 1px solid var(--cw3-border);
    border-radius: 999px;
    background: var(--cw-surface);
    padding: .42rem .7rem;
    cursor: pointer;
    font: inherit;
    font-size: .82rem;
}

.cw3-formula-section-filters button span {
    margin-left: .25rem;
    color: var(--cw3-muted);
    font-size: .72rem;
}

.cw3-formula-section-filters button.is-active {
    border-color: var(--cw3-accent);
    box-shadow: 0 0 0 1px var(--cw3-accent) inset;
}

.cw3-formula-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.cw3-formula-card {
    min-width: 0;
    padding: 1rem 1.05rem;
    border: 1px solid var(--cw3-border);
    border-radius: var(--cw3-radius);
    background: var(--cw-surface);
}

.cw3-formula-card[hidden] {
    display: none !important;
}

.cw3-formula-card--draft {
    border-style: dashed;
}

.cw3-formula-card__head {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
}

.cw3-formula-card__title {
    margin: 0;
    font-size: 1rem;
    line-height: 1.35;
}

.cw3-formula-card__title a {
    text-decoration: none;
}

.cw3-formula-card__meta {
    display: flex;
    gap: .45rem;
    align-items: center;
    margin-top: .25rem;
}

.cw3-formula-card__meta code,
.cw3-formula-single__identity code,
.cw3-formula-single__questions code {
    font-size: .7rem;
}

.cw3-formula-badge {
    display: inline-flex;
    border-radius: 999px;
    padding: .12rem .4rem;
    background: #fff4ce;
    color: #6b4f00;
    font-size: .66rem;
    font-weight: 700;
}

.cw3-formula-math {
    overflow-x: auto;
    padding: .75rem 0;
    -webkit-overflow-scrolling: touch;
}

.cw3-formula-math math[display="block"] {
    margin: .3rem auto;
    font-size: 1.05rem;
}

.cw3-formula-tex-fallback {
    overflow-x: auto;
    padding: .7rem;
    background: var(--cw3-soft);
    border-radius: 6px;
    font-size: .75rem;
}

.cw3-formula-card__footer {
    display: flex;
    justify-content: space-between;
    gap: .75rem;
    align-items: flex-end;
    margin-top: .5rem;
    padding-top: .65rem;
    border-top: 1px solid var(--cw3-border);
}

.cw3-formula-tags,
.cw3-formula-single__tags {
    display: flex;
    gap: .3rem;
    flex-wrap: wrap;
}

.cw3-formula-tag {
    display: inline-flex;
    padding: .2rem .45rem;
    border-radius: 999px;
    background: var(--cw3-soft);
    color: #2c3338;
    font-size: .68rem;
}

.cw3-formula-tag--code {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}

.cw3-formula-card__usage {
    flex: 0 0 auto;
    color: var(--cw3-muted);
    font-size: .7rem;
}

.cw3-formula-empty {
    padding: 1rem;
    text-align: center;
    color: var(--cw3-muted);
}

.cw3-question-formulae {
    margin: 2rem 0 0;
    padding-top: 1.5rem;
    border-top: 1px solid var(--cw3-border);
}

.cw3-question-formulae__head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.cw3-question-formulae__count {
    display: inline-grid;
    place-items: center;
    min-width: 34px;
    height: 34px;
    border-radius: 999px;
    background: var(--cw3-soft);
    font-weight: 700;
}

.cw3-question-formulae__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin-top: .8rem;
}

.cw3-formula-card--compact {
    padding: .8rem .9rem;
}

.cw3-formula-card--compact .cw3-formula-math {
    padding-bottom: .2rem;
}

.cw3-formula-single {
    margin: 1rem 0 2rem;
}

.cw3-formula-single__identity {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-bottom: .5rem;
}

.cw3-formula-single > .cw3-formula-math {
    padding: 1.25rem;
    border: 1px solid var(--cw3-border);
    border-radius: var(--cw3-radius);
    background: var(--cw-surface);
}

.cw3-formula-single > .cw3-formula-math math[display="block"] {
    font-size: 1.2rem;
}

.cw3-formula-single__tags {
    margin: .75rem 0 1.25rem;
}

.cw3-formula-single__metadata {
    display: grid;
    gap: .8rem;
    margin: 1rem 0;
}

.cw3-formula-single__metadata > div {
    padding: .8rem;
    background: var(--cw3-soft);
    border-radius: 7px;
}

.cw3-formula-single__metadata pre {
    white-space: pre-wrap;
}

.cw3-formula-single__questions {
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid var(--cw3-border);
}

.cw3-formula-single__questions ul {
    padding-left: 1.2rem;
}

.cw3-formula-single__questions li {
    margin: .35rem 0;
}

.cw3-formula-single__questions code {
    margin-left: .4rem;
}

.cw3-formula-single__aliases {
    margin-top: 1.2rem;
    color: var(--cw3-muted);
    font-size: .82rem;
}

.cw3-formula-admin-preview {
    max-width: 1320px;
}

@media (max-width: 900px) {
    .cw3-formula-grid,
    .cw3-question-formulae__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .cw3-formula-library__intro,
    .cw3-formula-card__footer {
        flex-direction: column;
        align-items: stretch;
    }

    .cw3-formula-library__count {
        align-self: flex-start;
    }

    .cw3-formula-section-filters {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: .35rem;
    }

    .cw3-formula-section-filters button {
        flex: 0 0 auto;
    }
}

/* CW3_RC2_FORMULA_TOKEN_CONTRACT_V1
 * Formula metadata pills consume the site theme instead of legacy WP admin colours.
 */
.cw3-formula-tag,
.cw3-formula-tag--code{
	background:var(--cw-soft);
	border-color:var(--cw-border);
	color:var(--cw-text);
}
.cw3-formula-math{
	max-width:100%;
	overflow-x:auto;
	overflow-y:hidden;
	-webkit-overflow-scrolling:touch;
}
