:root,
html[data-theme="dark"] {
    color-scheme: light;
    --base-h: 214;
    --base-s: 62%;
    --base-l: 29%;
    --base: var(--base-h) var(--base-s) var(--base-l);
    --base-two-h: 340;
    --base-two-s: 76%;
    --base-two-l: 44%;
    --base-two: var(--base-two-h) var(--base-two-s) var(--base-two-l);
    --white: 0 0% 100%;
    --body-color: 222 24% 19%;
    --text-color: 222 18% 24%;
    --heading-color: 0 0% 0%;
    --dark: 214 62% 29%;
    --black: 0 0% 0%;
    --border-color: 218 24% 88%;
    --section-bg: 0 0% 100%;
    --background-color: 0 0% 100%;
    --gr-color: linear-gradient(135deg, #1d4379 0%, #c41b52 100%);
    --header-box-shadow: 0 10px 30px rgba(29, 67, 121, 0.08);
    --box-shadow: 0 12px 34px rgba(29, 67, 121, 0.08);
}

/* Final theme correction: real light/dark modes */
html[data-theme="light"] {
    color-scheme: light;
}

html[data-theme="dark"] {
    color-scheme: dark;
    --white: 0 0% 100%;
    --body-color: 216 28% 87%;
    --text-color: 216 26% 82%;
    --heading-color: 0 0% 100%;
    --border-color: 220 22% 24%;
    --section-bg: 221 39% 12%;
    --background-color: 222 47% 7%;
    --header-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.34);
    --box-shadow: 0 18px 40px rgba(0, 0, 0, 0.26);
}

html[data-theme="dark"],
html[data-theme="dark"] body,
html[data-theme="dark"] main {
    background: #08111f !important;
    color: #e5edf8 !important;
}

html[data-theme="dark"] section,
html[data-theme="dark"] .section-bg,
html[data-theme="dark"] .account-section,
html[data-theme="dark"] .blog-section,
html[data-theme="dark"] .pricing-section,
html[data-theme="dark"] .contact-section,
html[data-theme="dark"] .faq-section,
html[data-theme="dark"] .exam-section,
html[data-theme="dark"] .dashboard-section,
html[data-theme="dark"] .pt-120,
html[data-theme="dark"] .pb-120,
html[data-theme="dark"] .breadcrumb-section,
html[data-theme="dark"] .breadcumb,
html[data-theme="dark"] .inner-hero,
html[data-theme="dark"] .banner-section {
    background: #08111f !important;
    color: #e5edf8 !important;
}

html[data-theme="dark"] .header,
html[data-theme="dark"] .header.fixed-header,
html[data-theme="dark"] .offcanvas,
html[data-theme="dark"] .header .offcanvas,
html[data-theme="dark"] .header .offcanvas-header,
html[data-theme="dark"] .dropdown-menu,
html[data-theme="dark"] .header-auth-dropdown .dropdown-menu,
html[data-theme="dark"] .custom--card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .blog-item,
html[data-theme="dark"] .pricing-card,
html[data-theme="dark"] .feature-item,
html[data-theme="dark"] .exam-view,
html[data-theme="dark"] .category-card,
html[data-theme="dark"] .contact-form,
html[data-theme="dark"] .blog-sidebar,
html[data-theme="dark"] .blog-details,
html[data-theme="dark"] .dashboard-card,
html[data-theme="dark"] .account-wrapper,
html[data-theme="dark"] .custom--accordion .accordion-item,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .cookies-card,
html[data-theme="dark"] .footer,
html[data-theme="dark"] .ielts-test-sidebar,
html[data-theme="dark"] .ielts-test-topbar,
html[data-theme="dark"] .ielts-runner-topbar,
html[data-theme="dark"] .ielts-skill-card,
html[data-theme="dark"] .ielts-runner-panel,
html[data-theme="dark"] .ielts-prompt-card,
html[data-theme="dark"] .ielts-runner-footer {
    background: #0f1c2e !important;
    border-color: #263854 !important;
    color: #e5edf8 !important;
    box-shadow: var(--box-shadow) !important;
}

html[data-theme="dark"] .custom--card .card-header,
html[data-theme="dark"] .custom--card .card-footer,
html[data-theme="dark"] .card-header,
html[data-theme="dark"] .card-footer,
html[data-theme="dark"] .modal-header,
html[data-theme="dark"] .modal-footer,
html[data-theme="dark"] .header-auth-dropdown .dropdown-menu .dropdown-profile {
    background: #13233a !important;
    border-color: #263854 !important;
    color: #e5edf8 !important;
}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6,
html[data-theme="dark"] .section-heading__title,
html[data-theme="dark"] .banner-content__title,
html[data-theme="dark"] .banner-content__title span:not(.text--base),
html[data-theme="dark"] .feature-item-title,
html[data-theme="dark"] .feature-item-title span:not(.text--base),
html[data-theme="dark"] .blog-item__title,
html[data-theme="dark"] .blog-item__title a,
html[data-theme="dark"] .blog-details__title,
html[data-theme="dark"] .category-card__title,
html[data-theme="dark"] .exam-view-title,
html[data-theme="dark"] .exam-view-title a,
html[data-theme="dark"] .pricing-card__title,
html[data-theme="dark"] .breadcrumb-wrapper__title,
html[data-theme="dark"] .footer-item__title,
html[data-theme="dark"] .ielts-skill-stage h1,
html[data-theme="dark"] .ielts-skill-card h3,
html[data-theme="dark"] .ielts-runner-panel h4,
html[data-theme="dark"] .ielts-runner-panel h5 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

html[data-theme="dark"] body,
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] label,
html[data-theme="dark"] .section-heading__desc,
html[data-theme="dark"] .banner-content__desc,
html[data-theme="dark"] .feature-item-desc,
html[data-theme="dark"] .blog-item__desc,
html[data-theme="dark"] .blog-item__date,
html[data-theme="dark"] .footer-item__desc,
html[data-theme="dark"] .footer-bottom__text,
html[data-theme="dark"] .footer-menu__link,
html[data-theme="dark"] .footer-contact__item .content :is(p, a),
html[data-theme="dark"] .accordion-body,
html[data-theme="dark"] .form-label,
html[data-theme="dark"] .category-card__count,
html[data-theme="dark"] .exam-view-desc,
html[data-theme="dark"] .ielts-skill-card__meta,
html[data-theme="dark"] .ielts-instruction,
html[data-theme="dark"] .ielts-passage,
html[data-theme="dark"] .ielts-question,
html[data-theme="dark"] .ielts-options label,
html[data-theme="dark"] .ielts-prompt-card,
html[data-theme="dark"] .ielts-test-list__item,
html[data-theme="dark"] .dropdown-item,
html[data-theme="dark"] .dropdown-link,
html[data-theme="dark"] .lang-box-link,
html[data-theme="dark"] .header-auth-dropdown .dropdown-menu .dropdown-profile .name,
html[data-theme="dark"] .table,
html[data-theme="dark"] .table td,
html[data-theme="dark"] .table th {
    color: #d7e2f1 !important;
    -webkit-text-fill-color: #d7e2f1 !important;
    opacity: 1 !important;
}

html[data-theme="dark"] a,
html[data-theme="dark"] .text--base,
html[data-theme="dark"] .text--base.d-inline,
html[data-theme="dark"] .banner-content__title .text--base,
html[data-theme="dark"] .section-heading__title .text--base,
html[data-theme="dark"] .feature-item-title .text--base,
html[data-theme="dark"] .gradient-text {
    color: #7fb2ff !important;
    -webkit-text-fill-color: #7fb2ff !important;
}

html[data-theme="dark"] a:hover,
html[data-theme="dark"] .nav-link:hover,
html[data-theme="dark"] .footer-menu__link:hover {
    color: #ff8cb2 !important;
    -webkit-text-fill-color: #ff8cb2 !important;
}

html[data-theme="dark"] .header .nav-menu .nav-item .nav-link,
html[data-theme="dark"] .header .nav-item .nav-link,
html[data-theme="dark"] .navbar-light .navbar-nav .nav-link,
html[data-theme="dark"] .lang-box-btn,
html[data-theme="dark"] .lang-box-btn .text,
html[data-theme="dark"] .lang-box-btn .icon {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .header .nav-menu .nav-item.active .nav-link,
html[data-theme="dark"] .header .nav-menu .nav-item:hover .nav-link {
    color: #ffffff !important;
    background: rgba(196, 27, 82, 0.28) !important;
}

html[data-theme="dark"] .form--control,
html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-select,
html[data-theme="dark"] .select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] input {
    background: #0b1728 !important;
    border-color: #31445f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] ::placeholder {
    color: #9fb0c7 !important;
    -webkit-text-fill-color: #9fb0c7 !important;
}

html[data-theme="dark"] .table thead th,
html[data-theme="dark"] .custom--table thead th,
html[data-theme="dark"] .accordion-button,
html[data-theme="dark"] .accordion-button:not(.collapsed),
html[data-theme="dark"] .ielts-test-list__item.active,
html[data-theme="dark"] .ielts-test-list__item:hover {
    background: #13233a !important;
    border-color: #263854 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .center-text {
    background: rgba(127, 178, 255, 0.2) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .btn-outline--base,
html[data-theme="dark"] .btn-outline--secondary,
html[data-theme="dark"] .header .btn-outline--base,
html[data-theme="dark"] a.btn-outline--base {
    background: transparent !important;
    border-color: #ff8cb2 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .btn-outline--base:hover,
html[data-theme="dark"] .btn-outline--secondary:hover,
html[data-theme="dark"] .header .btn-outline--base:hover,
html[data-theme="dark"] a.btn-outline--base:hover {
    background: #c41b52 !important;
    border-color: #c41b52 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .ielts-icon-btn,
html[data-theme="dark"] .ielts-test-back,
html[data-theme="dark"] .ielts-runner-clock,
html[data-theme="dark"] .ielts-start-btn,
html[data-theme="dark"] .ielts-pause-btn {
    background: #13233a !important;
    border-color: #31445f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .ielts-skill-card {
    background: linear-gradient(180deg, #1a263a, #0f1c2e) !important;
}

html[data-theme="dark"] .ielts-skill-card__icon {
    background: #0b1728 !important;
    border-color: rgba(255, 140, 178, 0.45) !important;
    color: #ff8cb2 !important;
}

html[data-theme="dark"] .ielts-test-app,
html[data-theme="dark"] .ielts-runner {
    background: #08111f !important;
}

/* IELTS TestPro-style flow */
.ielts-test-app,
.ielts-runner {
    min-height: 100vh;
    background: #f3f6fc;
    color: #07152f;
}

.ielts-test-app { display: grid; grid-template-columns: 280px minmax(0, 1fr); }
.ielts-test-sidebar { background: #fff; border-right: 1px solid #dfe6f2; height: 100vh; position: sticky; top: 0; overflow-y: auto; padding: 24px 16px; }
.ielts-test-brand { display: block; margin-bottom: 22px; }
.ielts-test-brand img { max-width: 180px; max-height: 64px; object-fit: contain; }
.ielts-test-list { display: grid; gap: 8px; }
.ielts-test-list__item { min-height: 44px; border-radius: 999px; padding: 8px 12px; display: flex; align-items: center; justify-content: space-between; color: #0f172a !important; font-weight: 700; }
.ielts-test-list__item strong { border: 2px solid #8ab7ff; border-radius: 999px; color: #2276ed; font-size: .84rem; min-width: 46px; text-align: center; line-height: 22px; }
.ielts-test-list__item.active, .ielts-test-list__item:hover { background: #eef4ff; }
.ielts-test-main { min-width: 0; }
.ielts-test-topbar,
.ielts-runner-topbar { min-height: 72px; background: #fff; border-bottom: 1px solid #dfe6f2; box-shadow: 0 4px 14px rgba(29,67,121,.08); display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 28px; position: sticky; top: 0; z-index: 20; }
.ielts-test-topbar__title, .ielts-runner-title, .ielts-test-actions { display: flex; align-items: center; gap: 12px; }
.ielts-runner-title img { width: 54px; height: 38px; object-fit: contain; }
.ielts-test-back, .ielts-icon-btn { width: 42px; height: 42px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #e2e8f0; background: #fff; color: #1d4379 !important; box-shadow: 0 6px 16px rgba(15,23,42,.08); }
.ielts-pill { border-radius: 999px; padding: 10px 18px; color: #fff !important; font-weight: 800; text-transform: uppercase; line-height: 1; }
.ielts-pill--pro { background: linear-gradient(180deg,#ffba36,#f47a16); box-shadow: inset 0 -3px rgba(141,66,0,.35); }
.ielts-skill-stage { padding: 52px 32px; text-align: center; }
.ielts-skill-stage h1 { color: #000 !important; font-size: 1.8rem; margin-bottom: 40px; }
.ielts-skill-grid { display: grid; grid-template-columns: repeat(4,minmax(190px,1fr)); gap: 24px; max-width: 1040px; margin: 0 auto; }
.ielts-skill-card { min-height: 330px; background: linear-gradient(180deg,#fff0f4,#fff); border: 1px solid #f5d5df; border-radius: 16px; box-shadow: 0 10px 24px rgba(15,23,42,.1); padding: 24px 18px; display: flex; flex-direction: column; align-items: center; justify-content: space-between; }
.ielts-skill-card h3 { color: #0d285d !important; font-size: 1.25rem; }
.ielts-skill-card__icon { width: 92px; height: 92px; border-radius: 50%; border: 2px solid #ffc7d5; background: #fff; color: #ff174b; display: grid; place-items: center; font-size: 3rem; }
.ielts-skill-card__meta { display: grid; gap: 4px; color: #334155; font-size: .9rem; }
.ielts-start-btn, .ielts-pause-btn { width: 100%; max-width: 210px; min-height: 46px; border: 0; border-radius: 999px; background: #fff; color: #1645b8 !important; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; box-shadow: inset 0 0 0 4px #82b9ff, 0 6px 0 #376fe0; }
.ielts-start-btn.disabled { pointer-events: none; opacity: .45; }
.ielts-runner { display: flex; flex-direction: column; }
.ielts-runner-clock { position: absolute; left: 50%; bottom: -22px; transform: translateX(-50%); border: 1px solid #dfe6f2; background: #fff; border-radius: 999px; padding: 8px 16px; color: #0b6df3; font-weight: 800; box-shadow: 0 6px 16px rgba(15,23,42,.1); }
.ielts-runner-form { flex: 1; display: flex; flex-direction: column; min-height: calc(100vh - 72px); }
.ielts-runner-grid { flex: 1; display: grid; grid-template-columns: minmax(0,1fr); gap: 18px; padding: 46px 40px 120px; }
.ielts-runner-grid.split { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.ielts-runner-panel { background: #fff; border: 1px solid #dfe6f2; border-radius: 14px; box-shadow: 0 8px 20px rgba(15,23,42,.06); padding: 24px; min-width: 0; color: #111827; }
.ielts-runner-panel h4, .ielts-runner-panel h5 { color: #000 !important; }
.ielts-instruction { font-style: italic; color: #334155 !important; }
.ielts-passage { border: 2px solid #111827; padding: 24px; color: #374151; line-height: 1.8; min-height: 340px; }
.ielts-question-stack { display: grid; gap: 18px; }
.ielts-question { padding: 16px 0; border-bottom: 1px solid #e5e7eb; }
.ielts-question__title { display: flex; gap: 10px; align-items: flex-start; margin-bottom: 12px; }
.ielts-question__title span, .ielts-question-bubbles a { width: 26px; height: 26px; border-radius: 50%; background: #1976ed; color: #fff !important; display: inline-grid; place-items: center; flex: 0 0 26px; font-size: .8rem; font-weight: 800; }
.ielts-options { display: grid; gap: 10px; padding-left: 36px; }
.ielts-options label { display: flex; gap: 10px; align-items: center; color: #111827 !important; }
.ielts-prompt-card { background: #fff; border: 1px solid #dfe6f2; border-radius: 12px; padding: 18px; margin-bottom: 18px; }
.ielts-prompt-media { border: 1px dashed #cbd5e1; padding: 16px; margin-bottom: 12px; text-align: center; }
.ielts-writing-box { display: grid; gap: 10px; margin-bottom: 18px; }
.ielts-writing-box textarea { min-height: 260px; border: 1px dashed #cbd5e1 !important; border-radius: 0; padding: 16px; resize: vertical; }
.ielts-recorder { min-height: 260px; display: grid; place-items: center; gap: 14px; }
.ielts-record-btn { width: 86px; height: 86px; border-radius: 50%; border: 0; background: #c41b52; color: #fff; font-size: 2.4rem; }
.ielts-wave { display: flex; gap: 4px; height: 42px; align-items: center; }
.ielts-wave span { width: 6px; height: 14px; border-radius: 999px; background: #ff174b; }
.ielts-recorder.recording .ielts-wave span { animation: ieltsWave .75s infinite alternate; }
.ielts-recorder.recording .ielts-wave span:nth-child(2) { animation-delay: .1s; }
.ielts-recorder.recording .ielts-wave span:nth-child(3) { animation-delay: .2s; }
.ielts-recorder.recording .ielts-wave span:nth-child(4) { animation-delay: .3s; }
.ielts-recorder.recording .ielts-wave span:nth-child(5) { animation-delay: .4s; }
@keyframes ieltsWave { to { height: 38px; } }
.ielts-runner-footer { position: fixed; left: 0; right: 0; bottom: 0; min-height: 96px; background: #fff; border-top: 1px solid #dfe6f2; display: grid; grid-template-columns: minmax(0,1fr) 150px; z-index: 21; }
.ielts-question-map { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(220px,1fr); overflow-x: auto; }
.ielts-question-map__group { border-right: 1px solid #dfe6f2; padding: 16px; display: grid; gap: 8px; }
.ielts-question-map__group strong { color: #0d285d; }
.ielts-question-bubbles { display: flex; gap: 8px; }
.ielts-runner-submit { display: grid; align-content: center; justify-items: center; gap: 10px; padding: 10px; }

@media (max-width: 1199px) {
    .ielts-test-app { grid-template-columns: 1fr; }
    .ielts-test-sidebar { display: none; }
    .ielts-skill-grid { grid-template-columns: repeat(2,minmax(180px,1fr)); }
    .ielts-runner-grid.split { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
    .ielts-test-topbar, .ielts-runner-topbar { padding: 10px 14px; flex-wrap: wrap; min-height: 86px; }
    .ielts-pill { display: none; }
    .ielts-skill-stage { padding: 32px 14px; }
    .ielts-skill-grid { grid-template-columns: 1fr; }
    .ielts-skill-card { min-height: 260px; }
    .ielts-runner-grid { padding: 52px 12px 170px; }
    .ielts-runner-panel { padding: 16px; }
    .ielts-passage { padding: 16px; min-height: 240px; }
    .ielts-runner-footer { grid-template-columns: 1fr; }
    .ielts-runner-submit { grid-template-columns: 1fr 1fr; display: grid; }
}

html,
body,
main,
html[data-theme="dark"] body,
html[data-theme="dark"] main {
    background: #ffffff !important;
    color: #111827 !important;
    max-width: 100%;
    overflow-x: hidden !important;
}

body {
    font-family: var(--body-font);
    line-height: 1.65;
    overflow-x: hidden;
}

body,
p,
li,
label,
.section-heading__desc,
.feature-item-desc,
.blog-item__date,
.footer-item__desc,
.accordion-body,
.form-label,
.table,
.table td,
.table th {
    color: #1f2937 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.section-heading__title,
.feature-item-title,
.blog-item__title a,
.blog-details__title,
.custom--card .card-title,
.card-title,
.breadcrumb-wrapper__title {
    color: #000000 !important;
}

a,
.text--base,
.header-auth-balance .amount {
    color: #1d4379 !important;
}

a:hover,
.text--base:hover,
.nav-link:hover,
.footer-menu__link:hover {
    color: #c41b52 !important;
}

.gradient-text {
    background: none !important;
    color: #1d4379 !important;
    -webkit-text-fill-color: #1d4379 !important;
}

.bg--base,
.bg--base-two,
.btn--base,
.btn--base-two,
.btn--secondary,
.btn.btn--base,
.btn.btn--base-two,
.btn.btn--secondary,
button.btn--base,
button.btn--base-two,
button.btn--secondary {
    background: #c41b52 !important;
    border-color: #c41b52 !important;
    color: #ffffff !important;
}

.btn--base *,
.btn--base-two *,
.btn--secondary *,
.btn.btn--base *,
.btn.btn--base-two *,
.btn.btn--secondary * {
    color: #ffffff !important;
}

.btn--base:hover,
.btn--base:focus,
.btn--base-two:hover,
.btn--base-two:focus,
.btn--secondary:hover,
.btn--secondary:focus {
    background: #a91645 !important;
    border-color: #a91645 !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(196, 27, 82, 0.22) !important;
}

.btn-outline--base,
.btn-outline--base:focus,
.btn-outline--secondary,
.btn-outline--secondary:focus {
    background: #ffffff !important;
    border-color: #c41b52 !important;
    color: #c41b52 !important;
}

.btn-outline--base:hover,
.btn-outline--secondary:hover {
    background: #c41b52 !important;
    border-color: #c41b52 !important;
    color: #ffffff !important;
}

.btn-outline--base:hover *,
.btn-outline--secondary:hover * {
    color: #ffffff !important;
}

section,
.section-bg,
.account-section,
.blog-section,
.pricing-section,
.contact-section,
.faq-section,
.exam-section,
.dashboard-section,
.pt-120,
.pb-120 {
    background: #ffffff !important;
}

.header,
.header.fixed-header,
html[data-theme="dark"] .header {
    background: #ffffff !important;
    border-bottom: 1px solid #e5e7eb;
    box-shadow: var(--header-box-shadow) !important;
}

.header {
    padding: 14px 0;
}

.navbar-brand.logo img,
.footer-item__logo img {
    display: block;
    max-height: 58px;
    object-fit: contain;
}

.header .nav-menu .nav-item .nav-link,
.header .nav-item .nav-link,
.navbar-light .navbar-nav .nav-link,
.lang-box-btn,
.lang-box-btn .text,
.lang-box-btn .icon,
html[data-theme="dark"] .nav-link {
    color: #111827 !important;
}

.header .nav-menu .nav-item.active .nav-link,
.header .nav-menu .nav-item:hover .nav-link {
    color: #c41b52 !important;
    background: rgba(196, 27, 82, 0.08);
}

.header .navbar-toggler.header-button,
.btn-close,
.btn-close i {
    color: #1d4379 !important;
}

.header .offcanvas,
.header .offcanvas-header,
.offcanvas,
html[data-theme="dark"] .offcanvas {
    background: #ffffff !important;
    color: #111827 !important;
}

.theme-toggle {
    border-color: #d1d5db !important;
    color: #1d4379 !important;
    background: #ffffff !important;
}

.theme-toggle:hover {
    background: #1d4379 !important;
    border-color: #1d4379 !important;
    color: #ffffff !important;
}

.theme-toggle:hover i {
    color: #ffffff !important;
}

.dropdown-menu,
.header-auth-dropdown .dropdown-menu {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 20px 38px rgba(29, 67, 121, 0.12) !important;
}

.dropdown-item,
.dropdown-link,
.lang-box-link,
.header-auth-dropdown .dropdown-menu .dropdown-profile .name {
    color: #111827 !important;
}

.dropdown-item:hover,
.header-auth-dropdown .dropdown-item:hover,
.lang-box-link:hover {
    background: rgba(29, 67, 121, 0.06) !important;
    color: #1d4379 !important;
}

.custom--card,
.card,
.blog-item,
.pricing-card,
.feature-item,
.exam-view,
.category-card,
.contact-form,
.blog-sidebar,
.blog-details,
.dashboard-card,
.account-wrapper,
.custom--accordion .accordion-item,
html[data-theme="dark"] .blog-item,
html[data-theme="dark"] .pricing-card,
html[data-theme="dark"] .feature-item,
html[data-theme="dark"] .exam-view,
html[data-theme="dark"] .category-card,
html[data-theme="dark"] .custom--accordion .accordion-item,
html[data-theme="dark"] .contact-form,
html[data-theme="dark"] .blog-sidebar,
html[data-theme="dark"] .blog-details,
html[data-theme="dark"] .dashboard-card,
html[data-theme="dark"] .account-wrapper {
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    color: #111827 !important;
    box-shadow: var(--box-shadow) !important;
}

.custom--card .card-header,
.custom--card .card-footer,
.card-header,
.card-footer,
.modal-header,
.modal-footer,
.header-auth-dropdown .dropdown-menu .dropdown-profile {
    background: #f8fafc !important;
    border-color: #e5e7eb !important;
    color: #111827 !important;
}

.form--control,
.form-control,
.form-select,
.select,
textarea,
input,
html[data-theme="dark"] .form--control,
html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-select {
    background: #ffffff !important;
    border-color: #d1d5db !important;
    color: #111827 !important;
}

.form--control:focus,
.form-control:focus,
.form-select:focus,
textarea:focus,
input:focus {
    border-color: #1d4379 !important;
    box-shadow: 0 0 0 0.2rem rgba(29, 67, 121, 0.13) !important;
}

::placeholder {
    color: #6b7280 !important;
    opacity: 1;
}

.custom--table,
.table,
.table--responsive,
.table-responsive {
    background: #ffffff !important;
    color: #111827 !important;
}

.table thead th,
.custom--table thead th {
    background: #f8fafc !important;
    color: #111827 !important;
    border-color: #e5e7eb !important;
}

.table tbody td,
.custom--table tbody td {
    border-color: #e5e7eb !important;
}

.badge,
.badge * {
    color: #ffffff !important;
}

.accordion-button,
.accordion-button:not(.collapsed),
html[data-theme="dark"] .accordion-button,
html[data-theme="dark"] .accordion-button:not(.collapsed) {
    background: #ffffff !important;
    color: #111827 !important;
    box-shadow: none !important;
}

.accordion-button::after {
    filter: none !important;
}

.breadcrumb-section,
.breadcumb,
.inner-hero,
.banner-section {
    background: #ffffff !important;
    color: #111827 !important;
}

.banner-section::before,
.banner-section::after,
.footer::after {
    opacity: 0 !important;
}

.banner-section {
    overflow-x: hidden !important;
}

.banner-content__title {
    max-width: 100%;
    overflow-wrap: anywhere;
    white-space: normal !important;
}

.banner-content__desc {
    max-width: 100%;
    overflow-wrap: anywhere;
    white-space: normal !important;
}

.text--base.d-inline {
    white-space: normal !important;
}

.wow,
.wow.animated,
.animated,
.fadeInUp,
.fadeInDown,
.fadeInLeft,
.fadeInRight {
    visibility: visible !important;
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
}

.banner-content,
.section-heading,
.category-card,
.feature-item,
.pricing-card,
.blog-item,
.exam-view {
    opacity: 1 !important;
    visibility: visible !important;
}

.banner-content__title,
.banner-content__title span:not(.text--base),
.section-heading__title,
.section-heading__title span:not(.text--base),
.category-card__title,
.feature-item-title,
.feature-item-title span:not(.text--base),
.blog-item__title,
.blog-item__title a,
.exam-view__title,
.pricing-card__title {
    color: #000000 !important;
    -webkit-text-fill-color: #000000 !important;
    opacity: 1 !important;
}

.banner-content__desc,
.section-heading__desc,
.category-card__count,
.feature-item-desc,
.blog-item__desc,
.exam-view__desc,
.pricing-card p {
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
    opacity: 1 !important;
}

.text--base,
.text--base.d-inline,
.banner-content__title .text--base,
.section-heading__title .text--base,
.feature-item-title .text--base {
    color: #1d4379 !important;
    -webkit-text-fill-color: #1d4379 !important;
    opacity: 1 !important;
}

.center-text {
    background: rgba(29, 67, 121, 0.12) !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

.header .btn-outline--base,
.header-right .btn-outline--base,
a.btn-outline--base {
    color: #c41b52 !important;
    -webkit-text-fill-color: #c41b52 !important;
    border-color: #c41b52 !important;
    background: #ffffff !important;
    opacity: 1 !important;
}

.header .btn-outline--base:hover,
.header-right .btn-outline--base:hover,
a.btn-outline--base:hover {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: #c41b52 !important;
}

.footer {
    background: #f8fafc !important;
    border: 1px solid #e5e7eb;
    color: #111827 !important;
    box-shadow: 0 18px 45px rgba(29, 67, 121, 0.08);
}

.footer-bottom {
    border-top-color: #e5e7eb !important;
}

.footer-item__title,
.footer-bottom__text,
.footer-bottom__text a,
.footer-menu__link,
.footer-contact__item .content :is(p, a),
.footer-contact__item .icon {
    color: #111827 !important;
}

.footer-bottom__text a,
.footer-menu__link:hover,
.footer-contact__item .content :is(p, a):hover {
    color: #c41b52 !important;
}


.scroll-top,
.cookies-card__icon {
    background: #1d4379 !important;
    color: #ffffff !important;
}

.social-list__link:hover,
.scroll-top:hover {
    background: #c41b52 !important;
    color: #ffffff !important;
}

.cookies-card {
    background: #ffffff !important;
    color: #111827 !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 18px 44px rgba(29, 67, 121, 0.14) !important;
}

img,
svg,
video,
canvas {
    max-width: 100%;
}

.section-heading,
.card,
.custom--card,
.feature-item,
.pricing-card,
.blog-item,
.exam-view,
.category-card {
    overflow-wrap: anywhere;
}

@media (max-width: 1199px) {
    .header {
        overflow: visible;
    }

    .header .offcanvas {
        width: min(420px, 88vw);
        padding-bottom: 24px;
    }

    .header .nav-menu .nav-item:not(:last-child) {
        margin-bottom: 12px !important;
    }

    .header .nav-item .nav-link {
        padding: 10px 0 !important;
        border-bottom: 1px solid #eef2f7;
    }

    .theme-toggle {
        width: 48px;
        height: 48px;
        border-radius: 50%;
    }
}

@media (max-width: 767px) {
    body {
        font-size: 15px;
    }

    .header {
        padding: 10px 0;
    }

    .navbar-brand.logo img {
        max-width: 150px;
        max-height: 50px;
    }

    .section-heading__title,
    .breadcrumb-wrapper__title,
    .banner-content__title {
        font-size: clamp(1.55rem, 5.5vw, 2rem) !important;
        line-height: 1.14;
    }

    .banner-content {
        text-align: center;
    }

    .banner-content-rating {
        justify-content: center !important;
        flex-wrap: wrap;
        row-gap: 10px;
    }

    .footer {
        margin: 0 12px 12px;
        border-radius: 10px;
    }

    .footer-top {
        padding: 40px 0 !important;
    }

    .footer-bottom .flex-between {
        justify-content: center;
        text-align: center;
    }

    .btn,
    button {
        white-space: normal;
    }
}

@media (max-width: 575px) {
    .container,
    .custom--container {
        --bs-gutter-x: 1.25rem;
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden;
    }

    .header .offcanvas {
        width: 92vw;
    }

    .banner-section {
        padding-top: calc(var(--header-h) + 42px) !important;
    }

    .banner-section .row {
        --bs-gutter-x: 0;
        justify-content: center;
    }

    .banner-section .row > div:first-child,
    .banner-section .row > div:last-child {
        display: none !important;
    }

    .banner-section .row > div {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
        order: 0 !important;
    }

    .banner-content__title {
        font-size: 1.25rem !important;
        max-width: 340px;
        margin-left: 14px !important;
        margin-right: 14px !important;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .banner-content {
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        padding-inline: 14px;
    }

    .banner-content__desc {
        font-size: 0.88rem !important;
        line-height: 1.65;
        max-width: 340px;
        margin-left: 14px !important;
        margin-right: 14px !important;
        overflow-wrap: anywhere;
    }

    .section-heading {
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        padding-inline: 14px;
    }

    .section-heading__title {
        font-size: 1.35rem !important;
        max-width: 340px;
        margin-left: 14px !important;
        margin-right: 14px !important;
        line-height: 1.2;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .section-heading__desc {
        max-width: 340px;
        margin-left: 14px !important;
        margin-right: 14px !important;
    }

    .category-section .slick-list {
        padding: 16px 0 !important;
        overflow: hidden !important;
    }

    .category-section .slick-track {
        display: grid !important;
        grid-template-columns: 1fr;
        gap: 16px;
        width: 100% !important;
        transform: none !important;
    }

    .category-section .slick-slide {
        display: block !important;
        width: 100% !important;
    }

    .category-section .row > [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    .category-card {
        width: min(100%, 340px);
        max-width: calc(100vw - 32px);
        margin-left: 14px !important;
        margin-right: 14px !important;
    }

    .cookies-card {
        width: calc(100vw - 24px) !important;
        max-width: calc(100vw - 24px) !important;
        left: 12px !important;
        right: 12px !important;
        bottom: 12px !important;
    }

    .cookies-card__content {
        overflow-wrap: anywhere;
    }

    .banner-content-rating-content {
        min-width: 0;
    }

    .banner-content-rating-star {
        justify-content: center !important;
        gap: 8px;
    }

    .card,
    .custom--card,
    .pricing-card,
    .blog-item,
    .feature-item,
    .exam-view {
        border-radius: 8px !important;
    }

    .btn--md,
    .btn {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }
}

/* Final theme authority: keep this block last so both modes stay readable. */
html[data-theme="light"] {
    color-scheme: light;
    --body-color: 222 24% 19%;
    --text-color: 222 18% 24%;
    --heading-color: 0 0% 0%;
    --section-bg: 0 0% 100%;
    --background-color: 0 0% 100%;
}

html[data-theme="light"],
html[data-theme="light"] body,
html[data-theme="light"] main,
html[data-theme="light"] section {
    background-color: #ffffff !important;
    color: #111827 !important;
}

html[data-theme="light"] h1,
html[data-theme="light"] h2,
html[data-theme="light"] h3,
html[data-theme="light"] h4,
html[data-theme="light"] h5,
html[data-theme="light"] h6,
html[data-theme="light"] .section-heading__title,
html[data-theme="light"] .banner-content__title,
html[data-theme="light"] .breadcrumb-wrapper__title {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    opacity: 1 !important;
}

html[data-theme="light"] p,
html[data-theme="light"] li,
html[data-theme="light"] label,
html[data-theme="light"] .section-heading__desc,
html[data-theme="light"] .banner-content__desc,
html[data-theme="light"] .feature-item-desc,
html[data-theme="light"] .blog-item__desc,
html[data-theme="light"] .exam-view-desc,
html[data-theme="light"] .category-card__count,
html[data-theme="light"] .footer-item__desc,
html[data-theme="light"] .table,
html[data-theme="light"] .table td,
html[data-theme="light"] .table th {
    color: #334155 !important;
    -webkit-text-fill-color: #334155 !important;
    opacity: 1 !important;
}

html[data-theme="light"] .text--base,
html[data-theme="light"] .banner-content__title .text--base,
html[data-theme="light"] .section-heading__title .text--base,
html[data-theme="light"] .feature-item-title .text--base,
html[data-theme="light"] .gradient-text {
    color: #1d4379 !important;
    -webkit-text-fill-color: #1d4379 !important;
}

html[data-theme="light"] .btn--base,
html[data-theme="light"] .btn--secondary,
html[data-theme="light"] button[type="submit"],
html[data-theme="light"] input[type="submit"] {
    background: #c41b52 !important;
    border-color: #c41b52 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] {
    color-scheme: dark;
    --body-color: 216 28% 87%;
    --text-color: 216 26% 82%;
    --heading-color: 0 0% 100%;
    --border-color: 220 22% 24%;
    --section-bg: 221 39% 12%;
    --background-color: 222 47% 7%;
    --header-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.34);
    --box-shadow: 0 18px 40px rgba(0, 0, 0, 0.26);
}

html[data-theme="dark"],
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] section,
html[data-theme="dark"] .section-bg,
html[data-theme="dark"] .account-section,
html[data-theme="dark"] .blog-section,
html[data-theme="dark"] .pricing-section,
html[data-theme="dark"] .contact-section,
html[data-theme="dark"] .faq-section,
html[data-theme="dark"] .exam-section,
html[data-theme="dark"] .dashboard-section,
html[data-theme="dark"] .breadcrumb-section,
html[data-theme="dark"] .banner-section,
html[data-theme="dark"] .ielts-test-app,
html[data-theme="dark"] .ielts-runner {
    background: #08111f !important;
    color: #e5edf8 !important;
}

html[data-theme="dark"] .header,
html[data-theme="dark"] .header.fixed-header,
html[data-theme="dark"] .offcanvas,
html[data-theme="dark"] .dropdown-menu,
html[data-theme="dark"] .custom--card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .blog-item,
html[data-theme="dark"] .pricing-card,
html[data-theme="dark"] .feature-item,
html[data-theme="dark"] .exam-view,
html[data-theme="dark"] .category-card,
html[data-theme="dark"] .contact-form,
html[data-theme="dark"] .blog-sidebar,
html[data-theme="dark"] .blog-details,
html[data-theme="dark"] .dashboard-card,
html[data-theme="dark"] .account-wrapper,
html[data-theme="dark"] .custom--accordion .accordion-item,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .cookies-card,
html[data-theme="dark"] .footer,
html[data-theme="dark"] .ielts-test-sidebar,
html[data-theme="dark"] .ielts-test-topbar,
html[data-theme="dark"] .ielts-runner-topbar,
html[data-theme="dark"] .ielts-skill-card,
html[data-theme="dark"] .ielts-runner-panel,
html[data-theme="dark"] .ielts-prompt-card,
html[data-theme="dark"] .ielts-runner-footer {
    background: #0f1c2e !important;
    border-color: #263854 !important;
    color: #e5edf8 !important;
    box-shadow: var(--box-shadow) !important;
}

html[data-theme="dark"] .card-header,
html[data-theme="dark"] .card-footer,
html[data-theme="dark"] .modal-header,
html[data-theme="dark"] .modal-footer,
html[data-theme="dark"] .table thead th,
html[data-theme="dark"] .custom--table thead th,
html[data-theme="dark"] .accordion-button,
html[data-theme="dark"] .accordion-button:not(.collapsed),
html[data-theme="dark"] .ielts-test-list__item.active,
html[data-theme="dark"] .ielts-test-list__item:hover {
    background: #13233a !important;
    border-color: #263854 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6,
html[data-theme="dark"] .section-heading__title,
html[data-theme="dark"] .banner-content__title,
html[data-theme="dark"] .breadcrumb-wrapper__title,
html[data-theme="dark"] .feature-item-title,
html[data-theme="dark"] .blog-item__title,
html[data-theme="dark"] .blog-item__title a,
html[data-theme="dark"] .blog-details__title,
html[data-theme="dark"] .category-card__title,
html[data-theme="dark"] .exam-view-title,
html[data-theme="dark"] .exam-view-title a,
html[data-theme="dark"] .pricing-card__title,
html[data-theme="dark"] .footer-item__title,
html[data-theme="dark"] .ielts-skill-stage h1,
html[data-theme="dark"] .ielts-skill-card h3,
html[data-theme="dark"] .ielts-runner-panel h4,
html[data-theme="dark"] .ielts-runner-panel h5 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

html[data-theme="dark"] body,
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] label,
html[data-theme="dark"] small,
html[data-theme="dark"] span,
html[data-theme="dark"] .section-heading__desc,
html[data-theme="dark"] .banner-content__desc,
html[data-theme="dark"] .feature-item-desc,
html[data-theme="dark"] .blog-item__desc,
html[data-theme="dark"] .blog-item__date,
html[data-theme="dark"] .footer-item__desc,
html[data-theme="dark"] .footer-bottom__text,
html[data-theme="dark"] .footer-menu__link,
html[data-theme="dark"] .accordion-body,
html[data-theme="dark"] .form-label,
html[data-theme="dark"] .category-card__count,
html[data-theme="dark"] .exam-view-desc,
html[data-theme="dark"] .ielts-skill-card__meta,
html[data-theme="dark"] .ielts-instruction,
html[data-theme="dark"] .ielts-passage,
html[data-theme="dark"] .ielts-question,
html[data-theme="dark"] .ielts-options label,
html[data-theme="dark"] .ielts-prompt-card,
html[data-theme="dark"] .ielts-test-list__item,
html[data-theme="dark"] .dropdown-item,
html[data-theme="dark"] .dropdown-link,
html[data-theme="dark"] .lang-box-link,
html[data-theme="dark"] .table,
html[data-theme="dark"] .table td,
html[data-theme="dark"] .table th {
    color: #d7e2f1 !important;
    -webkit-text-fill-color: #d7e2f1 !important;
    opacity: 1 !important;
}

html[data-theme="dark"] a,
html[data-theme="dark"] .text--base,
html[data-theme="dark"] .banner-content__title .text--base,
html[data-theme="dark"] .section-heading__title .text--base,
html[data-theme="dark"] .feature-item-title .text--base,
html[data-theme="dark"] .gradient-text {
    color: #7fb2ff !important;
    -webkit-text-fill-color: #7fb2ff !important;
}

html[data-theme="dark"] a:hover,
html[data-theme="dark"] .nav-link:hover,
html[data-theme="dark"] .footer-menu__link:hover {
    color: #ff8cb2 !important;
    -webkit-text-fill-color: #ff8cb2 !important;
}

html[data-theme="dark"] .header .nav-menu .nav-item .nav-link,
html[data-theme="dark"] .header .nav-item .nav-link,
html[data-theme="dark"] .navbar-light .navbar-nav .nav-link,
html[data-theme="dark"] .lang-box-btn,
html[data-theme="dark"] .lang-box-btn .text,
html[data-theme="dark"] .lang-box-btn .icon {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .header .nav-menu .nav-item.active .nav-link,
html[data-theme="dark"] .header .nav-menu .nav-item:hover .nav-link {
    color: #ffffff !important;
    background: rgba(196, 27, 82, 0.28) !important;
}

html[data-theme="dark"] .form--control,
html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-select,
html[data-theme="dark"] .select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] input {
    background: #0b1728 !important;
    border-color: #31445f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] ::placeholder {
    color: #9fb0c7 !important;
    -webkit-text-fill-color: #9fb0c7 !important;
}

html[data-theme="dark"] .btn,
html[data-theme="dark"] button,
html[data-theme="dark"] input[type="submit"],
html[data-theme="dark"] .btn--base,
html[data-theme="dark"] .btn--secondary,
html[data-theme="dark"] .ielts-pill {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .btn-outline--base,
html[data-theme="dark"] .btn-outline--secondary,
html[data-theme="dark"] .header .btn-outline--base,
html[data-theme="dark"] a.btn-outline--base,
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .ielts-icon-btn,
html[data-theme="dark"] .ielts-test-back,
html[data-theme="dark"] .ielts-runner-clock,
html[data-theme="dark"] .ielts-start-btn,
html[data-theme="dark"] .ielts-pause-btn {
    background: #13233a !important;
    border-color: #31445f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .btn-outline--base:hover,
html[data-theme="dark"] .btn-outline--secondary:hover,
html[data-theme="dark"] .header .btn-outline--base:hover,
html[data-theme="dark"] a.btn-outline--base:hover {
    background: #c41b52 !important;
    border-color: #c41b52 !important;
}

html[data-theme="dark"] .center-text {
    background: rgba(127, 178, 255, 0.2) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .ielts-skill-card {
    background: linear-gradient(180deg, #1a263a, #0f1c2e) !important;
}

html[data-theme="dark"] .ielts-skill-card__icon {
    background: #0b1728 !important;
    border-color: rgba(255, 140, 178, 0.45) !important;
    color: #ff8cb2 !important;
    -webkit-text-fill-color: #ff8cb2 !important;
}

html[data-theme="light"] .statistics-section,
html[data-theme="light"] .testimonials {
    background: #ffffff !important;
}

html[data-theme="light"] .statistics-item {
    background: #ffffff !important;
    border: 1px solid #dbe4f0 !important;
    box-shadow: 0 14px 34px rgba(29, 67, 121, 0.08) !important;
}

html[data-theme="light"] .statistics-item-title,
html[data-theme="light"] .testimonial-job {
    color: #64748b !important;
    -webkit-text-fill-color: #64748b !important;
    opacity: 1 !important;
}

html[data-theme="light"] .statistics-item-count,
html[data-theme="light"] .statistics-item-count span,
html[data-theme="light"] .statistics-item-count .odometer,
html[data-theme="light"] .statistics-item-count .odometer-value {
    color: #1d4379 !important;
    -webkit-text-fill-color: #1d4379 !important;
    opacity: 1 !important;
}

html[data-theme="light"] .testimonial-wrapper {
    background: #ffffff !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 14px !important;
    box-shadow: 0 14px 34px rgba(29, 67, 121, 0.08) !important;
    padding: 16px !important;
}

html[data-theme="light"] .testimonial-content {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    color: #334155 !important;
}

html[data-theme="light"] .testimonial-name,
html[data-theme="light"] .testimonial-quote {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    opacity: 1 !important;
}

html[data-theme="light"] .testimonial-quotemark {
    color: #1d4379 !important;
    -webkit-text-fill-color: #1d4379 !important;
    opacity: 1 !important;
}

html[data-theme="dark"] .statistics-section,
html[data-theme="dark"] .testimonials {
    background: #08111f !important;
}

html[data-theme="dark"] .statistics-item,
html[data-theme="dark"] .testimonial-wrapper,
html[data-theme="dark"] .testimonial-content {
    background: #0f1c2e !important;
    border: 1px solid #263854 !important;
    box-shadow: var(--box-shadow) !important;
}

html[data-theme="dark"] .statistics-item-title,
html[data-theme="dark"] .statistics-item-count,
html[data-theme="dark"] .statistics-item-count span,
html[data-theme="dark"] .statistics-item-count .odometer,
html[data-theme="dark"] .statistics-item-count .odometer-value,
html[data-theme="dark"] .testimonial-name,
html[data-theme="dark"] .testimonial-quote {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

html[data-theme="dark"] .testimonial-job {
    color: #b8c6d8 !important;
    -webkit-text-fill-color: #b8c6d8 !important;
}

/* Classical exam and breadcrumb presentation */
.page-banner {
    --inner-p: 72px;
    background:
        linear-gradient(135deg, rgba(10, 31, 61, 0.94), rgba(29, 67, 121, 0.88)),
        radial-gradient(circle at 14% 20%, rgba(212, 175, 55, 0.2), transparent 28%) !important;
    border-bottom: 1px solid rgba(212, 175, 55, 0.34);
    box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.08);
}

.page-banner::before {
    content: "";
    position: absolute;
    inset: 18px;
    border: 1px solid rgba(255, 255, 255, 0.13);
    pointer-events: none;
    z-index: -1;
}

.page-banner-shape {
    mix-blend-mode: soft-light;
    opacity: 0.16 !important;
    filter: grayscale(1) contrast(1.08);
}

.page-banner__title {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(2rem, 4vw, 3.35rem);
    font-weight: 700;
    line-height: 1.08;
    margin-bottom: 18px;
    text-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);
}

.custom--breadcrumb {
    align-items: center;
    gap: 0;
    padding: 10px 18px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 0;
    background: rgba(255, 255, 255, 0.11) !important;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(10px);
}

.custom--breadcrumb .breadcrumb-item,
.custom--breadcrumb .breadcrumb-item.active {
    color: rgba(255, 255, 255, 0.88) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.88) !important;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.2;
}

.custom--breadcrumb .breadcrumb-item a {
    color: #f6d26f !important;
    -webkit-text-fill-color: #f6d26f !important;
    text-decoration: none;
}

.custom--breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    color: rgba(255, 255, 255, 0.58) !important;
    padding-inline: 10px;
}

.exam-section {
    margin-block: 0 !important;
    padding-block: 84px !important;
    background:
        linear-gradient(180deg, #fbfaf7 0%, #ffffff 46%, #f6f8fb 100%) !important;
}

.exam-filter {
    display: flex;
    justify-content: flex-end;
    margin-bottom: 30px !important;
}

.exam-filter-search {
    max-width: 420px;
    min-height: 52px;
    border: 1px solid #d5deea !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 14px 32px rgba(29, 67, 121, 0.08);
}

.exam-filter-search:focus-within {
    border-color: #1d4379 !important;
    box-shadow: 0 16px 34px rgba(29, 67, 121, 0.14) !important;
}

.exam-filter-search-input {
    min-width: 0;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    font-weight: 500;
}

.exam-filter-search-btn {
    width: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 !important;
    color: #1d4379 !important;
    background: #f7f3ea !important;
    border-left: 1px solid #e7ddc7 !important;
}

.exam-view {
    position: relative;
    border: 1px solid #dbe4f0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 18px 42px rgba(29, 67, 121, 0.1) !important;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.exam-view::before {
    content: "";
    position: absolute;
    inset: 10px;
    border: 1px solid rgba(212, 175, 55, 0.22);
    pointer-events: none;
    z-index: 1;
}

.exam-view:hover {
    transform: translateY(-4px);
    border-color: rgba(29, 67, 121, 0.38) !important;
    box-shadow: 0 24px 52px rgba(29, 67, 121, 0.16) !important;
}

.exam-view-thumb {
    position: relative;
    aspect-ratio: 16 / 9;
    background: #10233d;
    overflow: hidden;
}

.exam-view-thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 48%, rgba(10, 31, 61, 0.58));
}

.exam-view-thumb img {
    transition: transform 220ms ease;
}

.exam-view:hover .exam-view-thumb img {
    transform: scale(1.035);
}

.exam-view-body {
    position: relative;
    z-index: 2;
    padding: 24px !important;
}

.exam-view-duration {
    width: max-content;
    max-width: 100%;
    margin-bottom: 16px !important;
    padding: 7px 11px;
    border: 1px solid #e6d9b7;
    background: #fbf6e9;
    color: #7a5a13 !important;
}

.exam-view-duration .value,
.exam-view-duration svg {
    color: #7a5a13 !important;
    -webkit-text-fill-color: #7a5a13 !important;
}

.exam-view-title {
    margin-bottom: 10px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.28;
}

.exam-view-title a {
    color: #0a1f3d !important;
    -webkit-text-fill-color: #0a1f3d !important;
    text-decoration: none;
}

.exam-view-title a:hover {
    color: #c41b52 !important;
    -webkit-text-fill-color: #c41b52 !important;
}

.exam-view-desc {
    min-height: 44px;
    color: #4b5563 !important;
    -webkit-text-fill-color: #4b5563 !important;
    line-height: 1.55;
}

.exam-view .flex-between {
    gap: 14px;
    align-items: center;
    flex-wrap: wrap;
    padding-top: 16px;
    border-top: 1px solid #edf1f6;
}

.exam-view-category {
    border: 1px solid rgba(29, 67, 121, 0.16);
    border-radius: 0 !important;
    background: #f2f6fb !important;
    color: #1d4379 !important;
    -webkit-text-fill-color: #1d4379 !important;
    font-weight: 700;
}

.exam-view .btn--base {
    min-height: 40px;
    padding-inline: 16px !important;
    border-radius: 0 !important;
    background: #0a1f3d !important;
    border-color: #0a1f3d !important;
    box-shadow: none !important;
}

.exam-view .btn--base:hover,
.exam-view .btn--base:focus {
    background: #c41b52 !important;
    border-color: #c41b52 !important;
}

html[data-theme="dark"] .page-banner {
    background:
        linear-gradient(135deg, rgba(5, 14, 29, 0.96), rgba(16, 35, 61, 0.92)),
        radial-gradient(circle at 14% 20%, rgba(212, 175, 55, 0.16), transparent 28%) !important;
}

html[data-theme="dark"] .exam-section {
    background: linear-gradient(180deg, #08111f 0%, #0c1728 100%) !important;
}

html[data-theme="dark"] .exam-filter-search,
html[data-theme="dark"] .exam-view {
    background: #101c2e !important;
    border-color: #263854 !important;
}

html[data-theme="dark"] .exam-filter-search-input,
html[data-theme="dark"] .exam-view-title a {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

html[data-theme="dark"] .exam-view-desc {
    color: #b8c6d8 !important;
    -webkit-text-fill-color: #b8c6d8 !important;
}

html[data-theme="dark"] .exam-filter-search-btn,
html[data-theme="dark"] .exam-view-category {
    background: #162842 !important;
    border-color: #31445f !important;
}

@media (max-width: 767px) {
    .page-banner {
        --inner-p: 46px;
    }

    .page-banner::before {
        inset: 10px;
    }

    .page-banner__title {
        font-size: clamp(1.75rem, 8vw, 2.35rem) !important;
    }

    .page-banner .breadcrumb {
        width: fit-content;
        max-width: 100%;
        justify-content: center;
    }

    .custom--breadcrumb {
        padding: 9px 12px;
        flex-wrap: wrap;
        row-gap: 6px;
    }

    .exam-section {
        padding-block: 54px !important;
    }

    .exam-filter {
        justify-content: stretch;
    }

    .exam-filter-search {
        max-width: 100%;
    }

    .exam-view-body {
        padding: 20px !important;
    }
}

/* Auth pages inside the standard site layout */
.account-section {
    width: min(1180px, calc(100% - 32px));
    height: auto !important;
    min-height: auto;
    margin: 0 auto;
    padding-block: 76px;
    gap: 28px;
    align-items: stretch;
    justify-content: center;
    background: transparent !important;
}

.account-content {
    width: min(100%, 560px) !important;
    height: auto !important;
    padding: 0 !important;
    overflow: visible !important;
}

.account-form {
    max-width: 100%;
    margin-block: 0;
    padding: 28px !important;
    border: 1px solid #dbe4f0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 18px 42px rgba(29, 67, 121, 0.1);
}

.account-form .logo {
    display: none;
}

.account-left {
    width: min(48%, 560px) !important;
    height: auto !important;
    min-height: 620px;
    border: 1px solid rgba(212, 175, 55, 0.28);
    box-shadow: 0 18px 42px rgba(29, 67, 121, 0.1);
}

.account-left__content {
    padding: 0;
}

html[data-theme="dark"] .account-form,
html[data-theme="dark"] .account-left {
    background: #101c2e !important;
    border-color: #263854 !important;
}

@media (max-width: 991px) {
    .account-section {
        padding-block: 54px;
    }

    .account-content {
        width: min(100%, 620px) !important;
    }
}

@media (max-width: 575px) {
    .account-section {
        width: min(100% - 24px, 620px);
        padding-block: 42px;
    }

    .account-form {
        padding: 22px !important;
    }
}

/* Listening test locked audio controls */
.ielts-audio-player {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin: 16px 0 18px;
    padding: 12px 14px;
    border: 1px solid #d7e1ee;
    background: #f8fafc;
}

.ielts-audio-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 112px;
    min-height: 42px;
    padding: 8px 14px;
    border: 1px solid #0a1f3d;
    background: #0a1f3d;
    color: #ffffff;
    font-weight: 700;
    line-height: 1;
    transition: background 180ms ease, border-color 180ms ease;
}

.ielts-audio-toggle i,
.ielts-audio-toggle span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.ielts-audio-toggle:hover,
.ielts-audio-toggle:focus,
.ielts-audio-player.is-playing .ielts-audio-toggle {
    background: #c41b52;
    border-color: #c41b52;
}

.ielts-audio-toggle:disabled {
    cursor: not-allowed;
    opacity: 0.65;
}

.ielts-audio-status {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #475569;
    font-size: 0.925rem;
    font-weight: 700;
    white-space: nowrap;
}

html[data-theme="dark"] .ielts-audio-player {
    background: #0b1728;
    border-color: #31445f;
}

html[data-theme="dark"] .ielts-audio-status {
    color: #b8c6d8;
}

@media (max-width: 575px) {
    .ielts-audio-player {
        align-items: stretch;
        flex-direction: column;
    }

    .ielts-audio-toggle {
        width: 100%;
    }

    .ielts-audio-status {
        justify-content: center;
    }
}
