/*
 * Final visual contract for custom lesson cards and formula callouts.
 * Loaded after the generic theme layers so a custom block cannot bring a
 * dark button-like surface into the light theme (or a light one into dark).
 */

body.ilc-ui-enhanced.ilc-ui-context-frontend [data-ilc-lesson-formula="1"] {
    display: block;
    border: 2px solid var(--ilc-theme-border-strong) !important;
    border-radius: 16px !important;
    background: var(--ilc-theme-surface-2) !important;
    background-image: none !important;
    color: var(--ilc-theme-heading) !important;
    -webkit-text-fill-color: var(--ilc-theme-heading) !important;
    box-shadow: 0 8px 20px color-mix(in srgb, var(--ilc-theme-heading) 7%, transparent) !important;
    text-shadow: none !important;
}

body.ilc-ui-enhanced.ilc-ui-context-frontend [data-ilc-lesson-formula="1"] :is(
    h1,h2,h3,h4,h5,h6,p,span,strong,b,em,i,small,label,a
) {
    color: var(--ilc-theme-heading) !important;
    -webkit-text-fill-color: var(--ilc-theme-heading) !important;
    text-shadow: none !important;
}

body.ilc-ui-enhanced.ilc-ui-context-frontend [data-ilc-lesson-role-card="1"] {
    border: 1px solid var(--ilc-theme-border) !important;
    border-radius: 18px !important;
    background: var(--ilc-theme-surface-1) !important;
    background-image: none !important;
    color: var(--ilc-theme-text) !important;
    box-shadow: none !important;
}

body.ilc-ui-enhanced.ilc-ui-context-frontend [data-ilc-lesson-role-card="1"] :is(
    h1,h2,h3,h4,h5,h6,strong,b
) {
    color: var(--ilc-theme-heading) !important;
    -webkit-text-fill-color: var(--ilc-theme-heading) !important;
}

body.ilc-ui-enhanced.ilc-ui-context-frontend [data-ilc-lesson-role-card="1"] :is(
    p,span,em,i,small,label
) {
    color: var(--ilc-theme-text) !important;
    -webkit-text-fill-color: var(--ilc-theme-text) !important;
}

body.ilc-ui-enhanced.ilc-ui-context-frontend :is(
    .ilc-custom-code-panel,
    .ilc-practice-block__custom
) :is(button,.button,[role="button"]):not([data-ilc-lesson-formula="1"]) {
    border: 1px solid var(--ilc-theme-border-strong) !important;
    background: var(--ilc-theme-surface-2) !important;
    background-image: none !important;
    color: var(--ilc-theme-heading) !important;
    -webkit-text-fill-color: var(--ilc-theme-heading) !important;
    box-shadow: none !important;
}

body.ilc-ui-enhanced.ilc-ui-context-frontend [data-ilc-computed-surface-fix="1"] {
    border-color: var(--ilc-theme-border-strong) !important;
    background: var(--ilc-theme-surface-3) !important;
    background-image: none !important;
    color: var(--ilc-theme-text) !important;
    -webkit-text-fill-color: var(--ilc-theme-text) !important;
    text-shadow: none !important;
}

body.ilc-ui-enhanced.ilc-ui-context-frontend [data-ilc-computed-surface-fix="1"] :is(
    h1,h2,h3,h4,h5,h6,strong,b,p,span,em,i,small,label,a
) {
    color: var(--ilc-theme-heading) !important;
    -webkit-text-fill-color: var(--ilc-theme-heading) !important;
    text-shadow: none !important;
}
