:root {
    --ds-site-ink: #13213d;
    --ds-site-blue: #2855cf;
    --ds-site-violet: #7138d8;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    color: var(--ds-site-ink);
    background: #f7f9fd;
    font-family: "Nunito", sans-serif;
    -webkit-font-smoothing: antialiased;
}

.ds-site-nav {
    min-height: 68px;
    background: rgba(255, 255, 255, .96);
    border-bottom: 1px solid rgba(29, 51, 91, .1);
    box-shadow: 0 5px 22px rgba(25, 43, 77, .06);
    backdrop-filter: blur(12px);
}

.ds-site-nav .navbar-brand,
.footer-brand {
    color: #14213b;
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: -.035em;
}

.brand-accent {
    color: var(--ds-site-blue);
}

.ds-site-nav .nav-link {
    position: relative;
    color: #536078;
    border-radius: 10px;
    font-size: .94rem;
    font-weight: 750;
}

.ds-site-nav .nav-link:hover,
.ds-site-nav .nav-link.active {
    color: #244ab6;
    background: #eef3ff;
}

.ds-site-nav .nav-link.active::after {
    position: absolute;
    content: "";
    right: 14px;
    bottom: 4px;
    left: 14px;
    height: 2px;
    background: linear-gradient(90deg, var(--ds-site-blue), var(--ds-site-violet));
    border-radius: 999px;
}

.ds-site-nav .btn-nav {
    color: #fff;
    background: linear-gradient(135deg, var(--ds-site-blue), var(--ds-site-violet));
    border: 0;
    font-weight: 850;
    box-shadow: 0 8px 20px rgba(62, 70, 183, .18);
}

.ds-site-nav .btn-nav:hover,
.ds-site-nav .btn-nav:focus {
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 11px 24px rgba(62, 70, 183, .24);
}

.ds-site-nav .navbar-toggler {
    border-color: #d8dfeb;
    box-shadow: none;
}

.ds-site-footer {
    color: #d4daea;
    background:
        radial-gradient(circle at 90% 12%, rgba(113, 56, 216, .19), transparent 26%),
        linear-gradient(145deg, #111b34, #182644);
}

.ds-site-footer .footer-brand {
    color: #fff;
    font-size: 1.45rem;
}

.ds-site-footer .brand-accent {
    color: #78a1ff;
}

.ds-site-footer a {
    color: #cbd5e8;
    text-decoration: none;
    transition: color .18s ease;
}

.ds-site-footer a:hover {
    color: #fff;
}

.ds-site-footer .footer-muted,
.ds-site-footer .footer-legal {
    color: #98a7c2;
}

.ds-site-footer .footer-divider {
    margin: 32px 0 18px;
    border-color: rgba(255, 255, 255, .14);
    opacity: 1;
}

@media (max-width: 991.98px) {
    .ds-site-nav .navbar-collapse {
        padding: 14px 0 6px;
    }

    .ds-site-nav .navbar-nav {
        margin-bottom: 13px;
    }

    .ds-site-nav .nav-link.active::after {
        display: none;
    }

    .ds-site-nav .btn-nav {
        margin-bottom: 8px;
    }
}

@media (max-width: 575.98px) {
    .ds-site-footer .footer-legal {
        max-width: 100%;
    }
}

/* Shared test interface */
.dsq-page {
    --dsq-accent: #6350d8;
    --dsq-accent-2: #1f79c9;
    --dsq-soft: #f0efff;
    --dsq-ink: #17233c;
    --dsq-muted: #68758c;
    --dsq-line: #dfe4ef;
    color: var(--dsq-ink);
    background: #f6f8fc;
    overflow: hidden;
}

.dsq-page.dsq-full { --dsq-accent: #e1622e; --dsq-accent-2: #14838a; --dsq-soft: #fff0e8; }
.dsq-page.dsq-theme-target { --dsq-accent: #7950d8; --dsq-accent-2: #cb4b91; --dsq-soft: #f2edff; }
.dsq-page.dsq-theme-quote { --dsq-accent: #315ec8; --dsq-accent-2: #178aab; --dsq-soft: #eaf1ff; }
.dsq-page.dsq-theme-data { --dsq-accent: #087f77; --dsq-accent-2: #64a52f; --dsq-soft: #e7f7f2; }
.dsq-page.dsq-theme-inference { --dsq-accent: #b56813; --dsq-accent-2: #dc4f48; --dsq-soft: #fff2dd; }
.dsq-page.dsq-theme-words { --dsq-accent: #a13f7c; --dsq-accent-2: #d36c31; --dsq-soft: #fcebf5; }
.dsq-page.dsq-theme-structure { --dsq-accent: #4e5db7; --dsq-accent-2: #2581a7; --dsq-soft: #eceeff; }
.dsq-page.dsq-theme-cross { --dsq-accent: #07888c; --dsq-accent-2: #6850bb; --dsq-soft: #e5f7f6; }
.dsq-page.dsq-theme-transitions { --dsq-accent: #147eab; --dsq-accent-2: #4656c2; --dsq-soft: #e7f5fb; }
.dsq-page.dsq-theme-synthesis { --dsq-accent: #a66a12; --dsq-accent-2: #8146a8; --dsq-soft: #fff2d7; }
.dsq-page.dsq-theme-boundaries { --dsq-accent: #bc493f; --dsq-accent-2: #d68820; --dsq-soft: #fff0e9; }
.dsq-page.dsq-theme-form { --dsq-accent: #267b5a; --dsq-accent-2: #2e70ae; --dsq-soft: #e8f7ef; }
.dsq-page.dsq-theme-one-variable { --dsq-accent: #4f53bc; --dsq-accent-2: #7b48a8; --dsq-soft: #eceeff; }
.dsq-page.dsq-theme-functions { --dsq-accent: #087b9e; --dsq-accent-2: #16977c; --dsq-soft: #e5f6fa; }
.dsq-page.dsq-theme-two-variable { --dsq-accent: #7048b5; --dsq-accent-2: #b04786; --dsq-soft: #f1eaff; }
.dsq-page.dsq-theme-systems { --dsq-accent: #c26320; --dsq-accent-2: #3976b8; --dsq-soft: #fff0e4; }
.dsq-page.dsq-theme-inequalities { --dsq-accent: #a83f75; --dsq-accent-2: #6754c0; --dsq-soft: #fbeaf3; }
.dsq-page.dsq-theme-equivalent { --dsq-accent: #6745c7; --dsq-accent-2: #c14b83; --dsq-soft: #f1eaff; }
.dsq-page.dsq-theme-nonlinear-eq { --dsq-accent: #a34853; --dsq-accent-2: #6d4db7; --dsq-soft: #fbecef; }
.dsq-page.dsq-theme-nonlinear-fn { --dsq-accent: #195eaa; --dsq-accent-2: #17a085; --dsq-soft: #e6f2fb; }
.dsq-page.dsq-theme-ratios { --dsq-accent: #0d7a7a; --dsq-accent-2: #4e9f4b; --dsq-soft: #e5f6f2; }
.dsq-page.dsq-theme-percent { --dsq-accent: #c05a2b; --dsq-accent-2: #d29a1d; --dsq-soft: #fff0e3; }
.dsq-page.dsq-theme-one-data { --dsq-accent: #5263b6; --dsq-accent-2: #3a92a3; --dsq-soft: #edf0ff; }
.dsq-page.dsq-theme-two-data { --dsq-accent: #1d7f99; --dsq-accent-2: #7a4eb7; --dsq-soft: #e6f6f8; }
.dsq-page.dsq-theme-probability { --dsq-accent: #7a4aba; --dsq-accent-2: #d05f74; --dsq-soft: #f2eaff; }
.dsq-page.dsq-theme-margin { --dsq-accent: #14727d; --dsq-accent-2: #6173bd; --dsq-soft: #e5f4f5; }
.dsq-page.dsq-theme-claims { --dsq-accent: #a05b22; --dsq-accent-2: #4d6caa; --dsq-soft: #fff0e5; }
.dsq-page.dsq-theme-area { --dsq-accent: #137f67; --dsq-accent-2: #8a9c2e; --dsq-soft: #e6f6ef; }
.dsq-page.dsq-theme-angles { --dsq-accent: #b15c24; --dsq-accent-2: #be3f58; --dsq-soft: #fff0e5; }
.dsq-page.dsq-theme-trig { --dsq-accent: #3856b7; --dsq-accent-2: #a3489b; --dsq-soft: #eaf0ff; }
.dsq-page.dsq-theme-circles { --dsq-accent: #087d9b; --dsq-accent-2: #4658bd; --dsq-soft: #e4f5f8; }
.dsq-shell { position: relative; padding: 20px 0 72px; background: linear-gradient(155deg, #fafbff 0%, var(--dsq-soft) 100%); }
.dsq-full .dsq-shell { background: radial-gradient(circle at 84% 12%, rgba(38, 174, 169, .19), transparent 24%), linear-gradient(145deg, #13213b, #1b2c4c 72%, #263550); }
.dsq-decoration span { position: absolute; display: block; pointer-events: none; }
.dsq-diagnostic .dsq-decoration span:nth-child(1) { top: 80px; right: 5%; width: 180px; height: 180px; border: 31px solid rgba(99, 80, 216, .07); border-radius: 50%; }
.dsq-diagnostic .dsq-decoration span:nth-child(2) { bottom: 40px; left: -45px; width: 150px; height: 150px; background: rgba(41, 131, 202, .06); border-radius: 38px; transform: rotate(18deg); }
.dsq-full .dsq-decoration span:nth-child(1) { top: 96px; right: 5%; width: 240px; height: 1px; background: rgba(255,255,255,.14); box-shadow: 0 52px rgba(255,255,255,.1), 0 104px rgba(255,255,255,.06); }
.dsq-full .dsq-decoration span:nth-child(2) { right: 11%; bottom: -80px; width: 230px; height: 230px; border: 32px solid rgba(225, 98, 46, .1); border-radius: 50%; }
.dsq-theme-target .dsq-decoration span:nth-child(1) { top: 105px; right: 7%; width: 190px; height: 190px; border: 1px solid rgba(121,80,216,.16); border-radius: 50%; box-shadow: inset 0 0 0 35px rgba(121,80,216,.045), inset 0 0 0 67px rgba(203,75,145,.035); }
.dsq-theme-quote .dsq-decoration span:nth-child(1) { top: 70px; right: 7%; width: 190px; height: 150px; border: 16px solid rgba(49,94,200,.055); border-radius: 40px 40px 40px 8px; transform: rotate(-8deg); }
.dsq-theme-data .dsq-decoration span:nth-child(1) { right: 8%; bottom: 40px; width: 190px; height: 130px; background: repeating-linear-gradient(90deg, rgba(8,127,119,.07) 0 21px, transparent 21px 36px); border-bottom: 2px solid rgba(8,127,119,.12); }
.dsq-theme-inference .dsq-decoration span:nth-child(1) { top: 90px; right: 5%; width: 230px; height: 100px; border-top: 2px dashed rgba(181,104,19,.13); border-right: 2px dashed rgba(220,79,72,.13); border-radius: 0 70px 0 0; transform: rotate(-8deg); }
.dsq-theme-words .dsq-decoration span:nth-child(1) { top: 110px; right: 5%; width: 235px; height: 70px; background: rgba(211,108,49,.07); border-radius: 18px; transform: rotate(-7deg); box-shadow: -44px 86px 0 rgba(161,63,124,.045); }
.dsq-theme-structure .dsq-decoration span:nth-child(1) { top: 85px; right: 6%; width: 210px; height: 145px; border: 2px solid rgba(78,93,183,.09); box-shadow: -24px 24px 0 rgba(37,129,167,.045), -48px 48px 0 rgba(78,93,183,.035); transform: rotate(5deg); }
.dsq-theme-cross .dsq-decoration span:nth-child(1), .dsq-theme-cross .dsq-decoration span:nth-child(2) { top: 90px; width: 150px; height: 150px; border-radius: 50%; }
.dsq-theme-cross .dsq-decoration span:nth-child(1) { right: 10%; background: rgba(7,136,140,.06); }
.dsq-theme-cross .dsq-decoration span:nth-child(2) { right: 3%; background: rgba(104,80,187,.055); }
.dsq-theme-transitions .dsq-decoration span:nth-child(1) { top: 95px; right: 5%; width: 225px; height: 120px; border-top: 3px solid rgba(20,126,171,.1); border-bottom: 3px solid rgba(70,86,194,.08); border-radius: 50%; transform: rotate(-8deg); }
.dsq-theme-transitions .dsq-decoration span:nth-child(2) { top: 147px; right: 4%; width: 19px; height: 19px; background: rgba(70,86,194,.15); border-radius: 50%; }
.dsq-theme-synthesis .dsq-decoration span:nth-child(1) { top: 90px; right: 8%; width: 165px; height: 120px; background: rgba(255,255,255,.5); border: 1px solid rgba(166,106,18,.1); border-radius: 12px; box-shadow: 17px 17px 0 rgba(129,70,168,.045), 34px 34px 0 rgba(166,106,18,.035); transform: rotate(5deg); }
.dsq-theme-boundaries .dsq-decoration span:nth-child(1) { top: 95px; right: 6%; width: 22px; height: 150px; background: repeating-linear-gradient(180deg, rgba(188,73,63,.13) 0 22px, transparent 22px 42px); border-radius: 10px; transform: rotate(14deg); }
.dsq-theme-form .dsq-decoration span:nth-child(1) { top: 90px; right: 5%; width: 210px; height: 130px; border: 2px dashed rgba(38,123,90,.08); border-radius: 70px 20px; box-shadow: inset 40px 0 rgba(46,112,174,.025); }
.dsq-theme-one-variable .dsq-decoration span:nth-child(1) { top: 115px; right: 7%; width: 190px; height: 4px; background: rgba(79,83,188,.1); box-shadow: -45px -42px 0 rgba(123,72,168,.06), 45px 42px 0 rgba(79,83,188,.06); transform: rotate(-5deg); }
.dsq-theme-functions .dsq-decoration span:nth-child(1) { right: 6%; bottom: 35px; width: 210px; height: 150px; background: linear-gradient(145deg, transparent 48.5%, rgba(8,123,158,.09) 49%, rgba(8,123,158,.09) 51%, transparent 51.5%), linear-gradient(rgba(8,123,158,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(8,123,158,.025) 1px, transparent 1px); background-size: auto, 20px 20px, 20px 20px; }
.dsq-theme-two-variable .dsq-decoration span:nth-child(1) { top: 80px; right: 7%; width: 175px; height: 175px; background: linear-gradient(90deg, transparent 49.5%, rgba(112,72,181,.08) 50%, transparent 50.5%), linear-gradient(transparent 49.5%, rgba(176,71,134,.08) 50%, transparent 50.5%); border: 1px solid rgba(112,72,181,.06); border-radius: 50%; }
.dsq-theme-systems .dsq-decoration span:nth-child(1), .dsq-theme-systems .dsq-decoration span:nth-child(2) { top: 90px; width: 5px; height: 190px; border-radius: 20px; }
.dsq-theme-systems .dsq-decoration span:nth-child(1) { right: 10%; background: rgba(194,99,32,.1); transform: rotate(38deg); }.dsq-theme-systems .dsq-decoration span:nth-child(2) { right: 10%; background: rgba(57,118,184,.09); transform: rotate(-38deg); }
.dsq-theme-inequalities .dsq-decoration span:nth-child(1) { top: 145px; right: 4%; width: 240px; height: 3px; background: rgba(168,63,117,.09); }.dsq-theme-inequalities .dsq-decoration span:nth-child(1)::before { position: absolute; content: ""; top: -8px; left: 48%; width: 19px; height: 19px; background: rgba(103,84,192,.12); border: 4px solid #f2eaf8; border-radius: 50%; }
.dsq-theme-equivalent .dsq-decoration span:nth-child(1) { top: 105px; right: 6%; width: 190px; height: 100px; border-top: 3px solid rgba(103,69,199,.08); border-bottom: 3px solid rgba(193,75,131,.08); border-radius: 50%; transform: rotate(-10deg); }
.dsq-theme-nonlinear-eq .dsq-decoration span:nth-child(1) { top: 90px; right: 7%; width: 175px; height: 150px; border: 18px double rgba(163,72,83,.045); border-radius: 50% 50% 44% 56%; }
.dsq-theme-nonlinear-fn .dsq-decoration span:nth-child(1) { right: 5%; bottom: 35px; width: 210px; height: 145px; border-top: 4px solid rgba(25,94,170,.07); border-radius: 50% 50% 0 0; transform: skewX(-20deg); }
.dsq-theme-ratios .dsq-decoration span:nth-child(1) { top: 100px; right: 6%; width: 185px; height: 115px; background: linear-gradient(90deg, rgba(13,122,122,.06) 49%, transparent 49%), linear-gradient(rgba(78,159,75,.05) 49%, transparent 49%); background-size: 54px 100%, 100% 54px; border-radius: 25px; }
.dsq-theme-percent .dsq-decoration span:nth-child(1) { top: 85px; right: 7%; width: 170px; height: 170px; border: 28px solid rgba(192,90,43,.045); border-right-color: rgba(210,154,29,.09); border-radius: 50%; transform: rotate(25deg); }
.dsq-theme-one-data .dsq-decoration span:nth-child(1) { right: 6%; bottom: 45px; width: 190px; height: 120px; background: repeating-linear-gradient(90deg, rgba(82,99,182,.06) 0 18px, transparent 18px 31px); border-bottom: 2px solid rgba(58,146,163,.08); }
.dsq-theme-two-data .dsq-decoration span:nth-child(1) { top: 90px; right: 7%; width: 185px; height: 145px; background: radial-gradient(circle at 15% 75%, rgba(29,127,153,.13) 0 4px, transparent 5px), radial-gradient(circle at 40% 58%, rgba(122,78,183,.11) 0 4px, transparent 5px), radial-gradient(circle at 68% 36%, rgba(29,127,153,.12) 0 4px, transparent 5px), radial-gradient(circle at 88% 18%, rgba(122,78,183,.1) 0 4px, transparent 5px); }
.dsq-theme-probability .dsq-decoration span:nth-child(1) { top: 100px; right: 7%; width: 150px; height: 150px; border: 1px solid rgba(122,74,186,.07); border-radius: 28px; box-shadow: inset 50px 50px rgba(208,95,116,.035); transform: rotate(12deg); }
.dsq-theme-margin .dsq-decoration span:nth-child(1) { top: 145px; right: 5%; width: 230px; height: 3px; background: rgba(20,114,125,.08); box-shadow: inset 55px 0 rgba(97,115,189,.11), inset -55px 0 rgba(97,115,189,.11); }
.dsq-theme-claims .dsq-decoration span:nth-child(1) { top: 90px; right: 7%; width: 170px; height: 145px; border: 2px solid rgba(160,91,34,.06); border-radius: 12px; box-shadow: 15px 15px 0 rgba(77,108,170,.035); transform: rotate(-4deg); }
.dsq-theme-area .dsq-decoration span:nth-child(1) { top: 95px; right: 7%; width: 165px; height: 135px; background: rgba(19,127,103,.035); border: 2px solid rgba(138,156,46,.07); transform: skewY(-8deg); box-shadow: 28px 22px 0 rgba(19,127,103,.025); }
.dsq-theme-angles .dsq-decoration span:nth-child(1) { top: 105px; right: 6%; width: 180px; height: 120px; border-top: 4px solid rgba(177,92,36,.07); border-right: 4px solid rgba(190,63,88,.07); transform: skewX(-24deg); }
.dsq-theme-trig .dsq-decoration span:nth-child(1) { top: 95px; right: 7%; width: 0; height: 0; border-right: 150px solid transparent; border-bottom: 150px solid rgba(56,86,183,.035); }
.dsq-theme-circles .dsq-decoration span:nth-child(1) { top: 85px; right: 6%; width: 175px; height: 175px; border: 2px solid rgba(8,125,155,.07); border-radius: 50%; box-shadow: inset 0 0 0 34px rgba(70,88,189,.025), inset 0 0 0 68px rgba(8,125,155,.02); }
.dsq-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; min-height: 42px; margin-bottom: 15px; color: #728098; font-size: .82rem; font-weight: 800; }
.dsq-breadcrumb a { color: #52647f; text-decoration: none; }
.dsq-breadcrumb i { font-size: .63rem; }
.dsq-full .dsq-breadcrumb, .dsq-full .dsq-breadcrumb a { color: #b7c5da; }
.dsq-layout { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; align-items: start; }
.dsq-layout.has-explanation { grid-template-columns: minmax(0, 1.6fr) minmax(300px, .8fr); }
.dsq-card, .dsq-explanation { background: #fff; border: 1px solid var(--dsq-line); border-radius: 28px; box-shadow: 0 24px 65px rgba(30, 48, 84, .13); }
.dsq-card { overflow: hidden; }
.dsq-full .dsq-card { border-color: rgba(255,255,255,.12); box-shadow: 0 28px 70px rgba(4, 11, 25, .3); }
.dsq-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 68px; padding: 12px 24px; border-bottom: 1px solid var(--dsq-line); }
.dsq-back { display: grid; place-items: center; width: 39px; height: 39px; color: var(--dsq-ink); background: #f3f5f9; border-radius: 12px; text-decoration: none; }
.dsq-label { display: inline-flex; align-items: center; gap: 8px; color: var(--dsq-accent); font-size: .78rem; font-weight: 950; letter-spacing: .045em; text-transform: uppercase; }
.dsq-toolbar-end { display: flex; align-items: center; gap: 8px; }
.dsq-finish, .dsq-timer { display: inline-flex; align-items: center; gap: 7px; min-height: 39px; padding: 0 12px; border-radius: 11px; font-size: .82rem; font-weight: 900; }
.dsq-finish { color: #a43d3d; background: #fff1f1; border: 0; }
.dsq-timer { color: #255069; background: #e9f7f7; }
.dsq-timer.is-low { color: #a43d3d; background: #fff0ed; }
.dsq-heading { padding: 39px 42px 28px; }
.dsq-kicker, .dsq-eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--dsq-accent); font-size: .78rem; font-weight: 950; letter-spacing: .075em; text-transform: uppercase; }
.dsq-heading h1 { max-width: 850px; margin: 10px 0 12px; font-size: clamp(2rem, 4.3vw, 3.65rem); line-height: 1.02; letter-spacing: -.045em; font-weight: 950; }
.dsq-heading p { max-width: 800px; margin: 0; color: var(--dsq-muted); font-size: 1.02rem; line-height: 1.68; }
.dsq-full .dsq-heading { color: #fff; background: linear-gradient(120deg, #1d2b47, #203653); }
.dsq-topic .dsq-heading { position: relative; background: linear-gradient(125deg, #fff, var(--dsq-soft)); overflow: hidden; }
.dsq-topic .dsq-heading::after { position: absolute; content: ""; top: 0; right: 0; width: 9px; height: 100%; background: linear-gradient(var(--dsq-accent), var(--dsq-accent-2)); }
.dsq-full .dsq-heading p { color: #c2cede; }
.dsq-full .dsq-kicker { color: #ff9c6e; }
.dsq-welcome { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0 24px 24px; padding: 25px; background: linear-gradient(135deg, var(--dsq-soft), #f8faff); border: 1px solid color-mix(in srgb, var(--dsq-accent) 16%, #e4e8f1); border-radius: 19px; }
.dsq-full .dsq-welcome { background: #f7f9fc; }
.dsq-welcome h2 { margin: 0 0 5px; font-size: 1.14rem; font-weight: 950; }
.dsq-welcome p { margin: 0; color: var(--dsq-muted); font-size: .9rem; }
.dsq-start-area { flex: 0 0 auto; text-align: right; }
.dsq-start, .dsq-next, .dsq-secondary { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 19px; border-radius: 13px; font-weight: 950; text-decoration: none; }
.dsq-start, .dsq-next { color: #fff; background: linear-gradient(135deg, var(--dsq-accent), var(--dsq-accent-2)); border: 0; box-shadow: 0 12px 25px color-mix(in srgb, var(--dsq-accent) 23%, transparent); }
.dsq-start:disabled { opacity: .42; box-shadow: none; cursor: not-allowed; }
.dsq-start-area small { display: block; margin-top: 7px; color: #7c8798; font-size: .72rem; }
.dsq-content { padding: 0 24px 25px; }
.dsq-progress-head { display: flex; align-items: center; gap: 17px; margin-bottom: 21px; }
.dsq-progress-head > div:first-child { flex: 0 0 auto; }
.dsq-progress-head span, .dsq-progress-head strong { display: block; font-size: .8rem; }
.dsq-progress-head span { color: var(--dsq-muted); }
.dsq-segments { display: flex !important; flex: 1 1 auto; gap: 3px; overflow: hidden; }
.dsq-segment { flex: 1 1 0; min-width: 3px; height: 6px; background: #e6e9f0; border-radius: 20px; }
.dsq-segment.is-correct { background: #24a672; }.dsq-segment.is-wrong { background: #e05a60; }.dsq-segment.is-skipped { background: #d9a52e; }
.dsq-question { padding: 28px; border: 1px solid var(--dsq-line); border-radius: 20px; }
.dsq-question-text { color: #202c43; font-size: 1.02rem; line-height: 1.7; }
.dsq-instruction { margin: 22px 0 10px; color: var(--dsq-muted); font-size: .82rem; font-weight: 850; }
.dsq-options { display: grid; gap: 10px; }
.dsq-option { display: flex; align-items: flex-start; gap: 12px; width: 100%; padding: 13px 15px; color: #26344d; background: #fff; border: 1px solid #dfe4ed; border-radius: 13px; text-align: left; transition: .16s ease; }
.dsq-option:not(:disabled):hover { border-color: var(--dsq-accent); transform: translateY(-1px); }
.dsq-option-letter { display: grid; place-items: center; flex: 0 0 29px; width: 29px; height: 29px; background: #f0f2f7; border-radius: 9px; font-weight: 950; }
.dsq-option.is-correct { color: #116a4b; background: #eaf9f2; border-color: #71c6a6; }.dsq-option.is-wrong { color: #963b40; background: #fff0f0; border-color: #e4a0a3; }
.dsq-actions { display: flex; justify-content: space-between; gap: 10px; margin-top: 22px; }
.dsq-secondary { color: #4d5d75; background: #f2f4f8; border: 1px solid #e0e4ec; }
.dsq-secondary:disabled { opacity: .45; }
.dsq-explanation { padding: 23px; }
.dsq-explanation-head { display: flex; gap: 12px; align-items: center; padding-bottom: 18px; border-bottom: 1px solid var(--dsq-line); }
.dsq-explanation-head > span { display: grid; place-items: center; width: 42px; height: 42px; color: #a26b00; background: #fff1c5; border-radius: 13px; }
.dsq-explanation h2 { margin: 0; font-size: 1rem; font-weight: 950; }.dsq-explanation p { margin: 2px 0 0; color: var(--dsq-muted); font-size: .82rem; }
#answer-status.is-correct { color: #138459; }#answer-status.is-wrong { color: #c3484f; }
.dsq-explanation-body { padding-top: 19px; color: #4c5a70; font-size: .9rem; line-height: 1.62; }
.dsq-correct-value { margin: 7px 0 15px; padding: 11px; color: #17644b; background: #ebf9f3; border-radius: 10px; }
.dsq-explanation-text h3 { margin: 0 0 7px; color: #26344d; font-size: .75rem; line-height: 1.35; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.dsq-question-translation { padding: 0 0 15px; border-bottom: 1px solid var(--dsq-line); }
.dsq-question-translation p { margin: 0; }
.dsq-solution { padding-top: 3px; }
.dsq-solution > h3 { margin-top: 14px; }
.dsq-solution-step { padding: 12px 0; border-bottom: 1px solid var(--dsq-line); }
.dsq-solution-step:last-child { padding-bottom: 0; border-bottom: 0; }
.dsq-solution-step p { margin: 0; }
.dsq-step-label { display: block; margin-bottom: 4px; color: #31415b; font-size: .75rem; line-height: 1.35; font-weight: 900; }
.dsq-equation { display: flex; justify-content: center; max-width: 100%; margin: 10px 0 2px; padding: 2px 0; overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none; }
.dsq-equation::-webkit-scrollbar { display: none; width: 0; height: 0; }
.dsq-equation + .dsq-equation { margin-top: 12px; }
.dsq-equation math {
    flex: 0 0 auto;
    font-size: 1.02rem;
}
.dsq-result { padding: 36px 10px 18px; text-align: center; }
.dsq-result-icon { display: grid; place-items: center; width: 64px; height: 64px; margin: 0 auto 12px; color: #fff; background: linear-gradient(135deg, var(--dsq-accent), var(--dsq-accent-2)); border-radius: 20px; font-size: 1.55rem; }
.dsq-result-label { margin: 0; color: var(--dsq-muted); font-weight: 850; }.dsq-result h2 { margin: 2px 0; font-size: 4rem; font-weight: 950; }
.dsq-result-stats { display: flex; justify-content: center; flex-wrap: wrap; gap: 9px; margin: 22px 0; }.dsq-result-stats span { min-width: 100px; padding: 12px; background: #f4f6f9; border-radius: 12px; }.dsq-result-stats strong { display: block; font-size: 1.25rem; }
.dsq-result-stats .result-correct strong { color: #16815a; }.dsq-result-stats .result-wrong strong { color: #c64a50; }.dsq-result-stats .result-skipped strong { color: #a27713; }
.dsq-result-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 9px; }

/* Diagnostic page: skill scan */
.dsq-info-section { padding: 72px 0; }
.dsq-diagnostic-guide { padding: 42px; background: #fff; border: 1px solid #e2e6f0; border-radius: 30px; box-shadow: 0 22px 60px rgba(36, 55, 94, .08); }
.dsq-guide-head { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 32px; }
.dsq-guide-head h2, .dsq-session-head h2 { margin: 9px 0 8px; font-size: clamp(1.8rem, 3vw, 2.7rem); letter-spacing: -.035em; font-weight: 950; }
.dsq-guide-head p, .dsq-session-head p { max-width: 740px; margin: 0; color: var(--dsq-muted); line-height: 1.7; }
.dsq-scan-mark { position: relative; display: grid; place-items: center; flex: 0 0 110px; width: 110px; height: 110px; color: var(--dsq-accent); background: var(--dsq-soft); border-radius: 50%; font-size: 2.1rem; }
.dsq-scan-mark span { position: absolute; inset: 16px; border: 2px dashed rgba(99,80,216,.28); border-radius: 50%; }
.dsq-skill-map { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
.dsq-skill-map section { position: relative; display: grid; grid-template-columns: 47px 1fr; gap: 13px; padding: 20px; background: #f8f9fd; border: 1px solid #e4e7f0; border-radius: 18px; overflow: hidden; }
.dsq-skill-icon { display: grid; place-items: center; width: 47px; height: 47px; color: var(--dsq-accent); background: var(--dsq-soft); border-radius: 14px; font-size: 1.15rem; }
.dsq-skill-map span { color: #8290a4; font-size: .69rem; font-weight: 900; text-transform: uppercase; }.dsq-skill-map h3 { margin: 2px 0 4px; font-size: 1rem; font-weight: 950; }.dsq-skill-map p { margin: 0; color: var(--dsq-muted); font-size: .82rem; }
.dsq-skill-line { grid-column: 1 / -1; height: 5px; background: #e6e8ef; border-radius: 20px; overflow: hidden; }.dsq-skill-line span { display: block; width: var(--skill-level); height: 100%; background: linear-gradient(90deg, var(--dsq-accent), var(--dsq-accent-2)); border-radius: inherit; opacity: .82; }
.dsq-diagnostic-bottom { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-top: 31px; background: #e4e7ef; border: 1px solid #e4e7ef; border-radius: 20px; overflow: hidden; }
.dsq-diagnostic-bottom section { padding: 23px; background: #fff; }.dsq-diagnostic-bottom span { color: var(--dsq-accent); font-size: .76rem; font-weight: 950; }.dsq-diagnostic-bottom h3 { margin: 8px 0 6px; font-size: 1rem; font-weight: 950; }.dsq-diagnostic-bottom p { margin: 0; color: var(--dsq-muted); font-size: .84rem; line-height: 1.55; }

/* Full-length page: exam timeline */
.dsq-full .dsq-info-section { background: #0f1b31; }
.dsq-session-guide { color: #fff; }
.dsq-session-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 37px; }
.dsq-session-head p { color: #acbad0; }.dsq-full .dsq-eyebrow { color: #ff9566; }
.dsq-session-total { flex: 0 0 auto; padding: 17px 22px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); border-radius: 17px; text-align: right; }.dsq-session-total strong, .dsq-session-total span { display: block; }.dsq-session-total strong { color: #fff; font-size: 2.25rem; line-height: 1; }.dsq-session-total span { margin-top: 4px; color: #9eacc1; font-size: .75rem; }
.dsq-session-track { display: grid; grid-template-columns: repeat(5, 1fr); border: 1px solid rgba(255,255,255,.12); border-radius: 25px; overflow: hidden; }
.dsq-session-track section { position: relative; min-height: 205px; padding: 25px 20px; background: rgba(255,255,255,.045); border-right: 1px solid rgba(255,255,255,.1); }.dsq-session-track section:last-child { border: 0; }.dsq-session-track section.is-break { background: linear-gradient(155deg, rgba(225,98,46,.25), rgba(225,98,46,.08)); }
.dsq-session-track i { display: block; margin: 22px 0 28px; color: #6ed1cc; font-size: 1.5rem; }.dsq-session-track .is-break i { color: #ff9a6d; }.dsq-module-time { color: #ff9a6d; font-size: .74rem; font-weight: 950; }.dsq-session-track small { color: #91a3bc; font-size: .69rem; font-weight: 850; text-transform: uppercase; }.dsq-session-track h3 { margin: 3px 0; font-size: 1rem; font-weight: 950; }.dsq-session-track p { margin: 0; color: #aab8cb; font-size: .79rem; }
.dsq-exam-rules { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; margin-top: 20px; }.dsq-exam-rules div { display: flex; gap: 12px; padding: 18px; color: #aebbd0; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.1); border-radius: 15px; font-size: .81rem; line-height: 1.5; }.dsq-exam-rules i { flex: 0 0 auto; color: #ff9566; font-size: 1.12rem; }.dsq-exam-rules strong { color: #fff; }

/* Topic tests: unique reading guides */
.dsq-topic-info { background: #fff; }
.dsq-topic-guide { position: relative; padding: 42px; background: #f8f9fc; border: 1px solid #e1e6ef; border-radius: 30px; overflow: hidden; }
.dsq-topic-guide-head { display: flex; align-items: center; justify-content: space-between; gap: 34px; margin-bottom: 31px; }
.dsq-topic-guide-head h2 { margin: 9px 0 8px; font-size: clamp(1.8rem, 3vw, 2.65rem); line-height: 1.1; letter-spacing: -.037em; font-weight: 950; }
.dsq-topic-guide-head p { max-width: 770px; margin: 0; color: var(--dsq-muted); line-height: 1.7; }
.dsq-topic-symbol { position: relative; display: grid; place-items: center; flex: 0 0 112px; width: 112px; height: 112px; color: var(--dsq-accent); background: var(--dsq-soft); border-radius: 28px; font-size: 2.2rem; transform: rotate(4deg); }
.dsq-topic-symbol i { transform: rotate(-4deg); }
.dsq-topic-symbol span { position: absolute; inset: 13px; border: 1px dashed color-mix(in srgb, var(--dsq-accent) 32%, transparent); border-radius: 21px; }
.dsq-topic-focus { display: grid; grid-template-columns: repeat(3, 1fr); gap: 13px; }
.dsq-topic-focus section { position: relative; min-height: 210px; padding: 22px; background: #fff; border: 1px solid #e0e5ee; border-radius: 19px; overflow: hidden; }
.dsq-topic-focus section > span { position: absolute; top: 18px; right: 18px; color: color-mix(in srgb, var(--dsq-accent) 35%, #9aa4b5); font-size: .73rem; font-weight: 950; }
.dsq-topic-focus section > i { display: grid; place-items: center; width: 43px; height: 43px; margin-bottom: 28px; color: var(--dsq-accent); background: var(--dsq-soft); border-radius: 13px; font-size: 1.1rem; }
.dsq-topic-focus h3 { margin-bottom: 7px; font-size: 1rem; font-weight: 950; }
.dsq-topic-focus p { margin: 0; color: var(--dsq-muted); font-size: .85rem; line-height: 1.55; }
.dsq-topic-rule { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 30px; align-items: center; margin-top: 14px; padding: 25px; color: #fff; background: linear-gradient(135deg, var(--dsq-accent), var(--dsq-accent-2)); border-radius: 20px; }
.dsq-topic-rule small, .dsq-topic-rule strong { display: block; }
.dsq-topic-rule small { margin-bottom: 6px; color: rgba(255,255,255,.72); font-weight: 850; text-transform: uppercase; }
.dsq-topic-rule strong { font-size: 1.05rem; line-height: 1.45; }
.dsq-topic-rule ol { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.dsq-topic-rule li { display: flex; gap: 9px; color: rgba(255,255,255,.86); font-size: .85rem; }
.dsq-topic-rule li i { flex: 0 0 auto; }
.dsq-guide-radar .dsq-topic-symbol, .dsq-guide-radar .dsq-topic-symbol span { border-radius: 50%; }
.dsq-guide-quotes { background: linear-gradient(145deg, #f4f7ff, #fff); }
.dsq-guide-quotes .dsq-topic-focus section:nth-child(2) { transform: translateY(9px); }
.dsq-guide-chart { background-color: #f7fbf9; background-image: linear-gradient(rgba(8,127,119,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(8,127,119,.035) 1px, transparent 1px); background-size: 24px 24px; }
.dsq-guide-chart .dsq-topic-focus section { border-bottom: 5px solid color-mix(in srgb, var(--dsq-accent) 45%, #fff); }
.dsq-guide-path .dsq-topic-focus { position: relative; }
.dsq-guide-path .dsq-topic-focus::before { position: absolute; content: ""; top: 43px; right: 12%; left: 12%; border-top: 2px dashed color-mix(in srgb, var(--dsq-accent) 25%, transparent); }
.dsq-guide-path .dsq-topic-focus section { background: linear-gradient(155deg, #fff, #fffaf2); }
.dsq-guide-highlight .dsq-topic-focus section::after { position: absolute; content: ""; right: 20px; bottom: 15px; left: 20px; height: 8px; background: color-mix(in srgb, var(--dsq-accent-2) 20%, transparent); border-radius: 3px; transform: rotate(-1.5deg); }
.dsq-guide-blueprint { background-color: #f7f8ff; background-image: linear-gradient(rgba(78,93,183,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(78,93,183,.035) 1px, transparent 1px); background-size: 20px 20px; }
.dsq-guide-blueprint .dsq-topic-focus section { border-style: dashed; }
.dsq-guide-blueprint .dsq-topic-focus section:nth-child(2) { border-radius: 36px 10px; }
.dsq-guide-split .dsq-topic-symbol { border-radius: 50%; }
.dsq-guide-split .dsq-topic-symbol span { border-radius: 50%; }
.dsq-guide-split .dsq-topic-focus section:nth-child(1) { border-top: 5px solid color-mix(in srgb, var(--dsq-accent) 52%, #fff); }
.dsq-guide-split .dsq-topic-focus section:nth-child(2) { background: linear-gradient(150deg, var(--dsq-soft), #fff); border-top: 5px solid color-mix(in srgb, var(--dsq-accent-2) 45%, #fff); }
.dsq-guide-split .dsq-topic-focus section:nth-child(3) { border-top: 5px solid color-mix(in srgb, var(--dsq-accent-2) 52%, #fff); }
.dsq-guide-flow .dsq-topic-focus { position: relative; }
.dsq-guide-flow .dsq-topic-focus::after { position: absolute; content: ""; top: 50%; right: 5%; left: 5%; height: 3px; background: linear-gradient(90deg, var(--dsq-accent), var(--dsq-accent-2)); opacity: .12; }
.dsq-guide-flow .dsq-topic-focus section { z-index: 1; }
.dsq-guide-flow .dsq-topic-focus section:nth-child(2) { transform: translateY(12px); }
.dsq-guide-notes { background: linear-gradient(145deg, #fffbf2, #faf6ff); }
.dsq-guide-notes .dsq-topic-focus section { border-radius: 8px 8px 18px 8px; box-shadow: 0 12px 28px rgba(64,45,88,.06); transform: rotate(-1deg); }
.dsq-guide-notes .dsq-topic-focus section:nth-child(2) { transform: translateY(8px) rotate(1deg); }
.dsq-guide-notes .dsq-topic-focus section:nth-child(3) { transform: rotate(-.5deg); }
.dsq-guide-stops .dsq-topic-focus section { border-top: 5px solid color-mix(in srgb, var(--dsq-accent) 46%, #fff); }.dsq-guide-stops .dsq-topic-focus section:nth-child(2) { border-top-style: dotted; }.dsq-guide-stops .dsq-topic-focus section:nth-child(3) { border-top-color: color-mix(in srgb, var(--dsq-accent-2) 50%, #fff); }
.dsq-guide-syntax .dsq-topic-focus { position: relative; }.dsq-guide-syntax .dsq-topic-focus::before { position: absolute; content: ""; top: 47px; right: 16%; left: 16%; border-top: 2px solid color-mix(in srgb, var(--dsq-accent) 16%, transparent); }.dsq-guide-syntax .dsq-topic-focus section { border-radius: 12px 30px; }
.dsq-guide-balance .dsq-topic-focus section:nth-child(1), .dsq-guide-balance .dsq-topic-focus section:nth-child(3) { margin-top: 13px; }.dsq-guide-balance .dsq-topic-focus section:nth-child(2) { border-bottom: 5px solid color-mix(in srgb, var(--dsq-accent) 42%, #fff); }
.dsq-guide-coordinate, .dsq-guide-plane { background-color: #f7fbfc; background-image: linear-gradient(rgba(8,123,158,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(8,123,158,.04) 1px, transparent 1px); background-size: 23px 23px; }
.dsq-guide-coordinate .dsq-topic-focus section { box-shadow: inset 0 -4px color-mix(in srgb, var(--dsq-accent-2) 22%, transparent); }
.dsq-guide-plane { background-image: linear-gradient(rgba(112,72,181,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(112,72,181,.035) 1px, transparent 1px); }.dsq-guide-plane .dsq-topic-symbol { border-radius: 50%; }
.dsq-guide-intersection .dsq-topic-focus section:nth-child(1) { border-left: 5px solid color-mix(in srgb, var(--dsq-accent) 50%, #fff); }.dsq-guide-intersection .dsq-topic-focus section:nth-child(2) { background: linear-gradient(145deg, var(--dsq-soft), #fff); }.dsq-guide-intersection .dsq-topic-focus section:nth-child(3) { border-right: 5px solid color-mix(in srgb, var(--dsq-accent-2) 50%, #fff); }
.dsq-guide-numberline .dsq-topic-focus { position: relative; }.dsq-guide-numberline .dsq-topic-focus::before { position: absolute; content: ""; top: 44px; right: 7%; left: 7%; height: 3px; background: repeating-linear-gradient(90deg, color-mix(in srgb, var(--dsq-accent) 25%, transparent) 0 16px, transparent 16px 25px); }.dsq-guide-numberline .dsq-topic-focus section { z-index: 1; }
.dsq-guide-transform .dsq-topic-focus section { border-radius: 34px 10px; }.dsq-guide-transform .dsq-topic-focus section:nth-child(2) { background: linear-gradient(145deg, var(--dsq-soft), #fff); }
.dsq-guide-roots .dsq-topic-focus section { border-bottom: 5px solid color-mix(in srgb, var(--dsq-accent) 30%, #fff); }.dsq-guide-roots .dsq-topic-focus section:nth-child(3) { border-bottom-color: color-mix(in srgb, var(--dsq-accent-2) 36%, #fff); }
.dsq-guide-curves { background: linear-gradient(150deg, #f4f8ff, #f3fbf8); }.dsq-guide-curves .dsq-topic-symbol { border-radius: 50% 50% 15% 50%; }
.dsq-guide-scale .dsq-topic-focus section:nth-child(1) { border-left: 5px solid color-mix(in srgb, var(--dsq-accent) 42%, #fff); }.dsq-guide-scale .dsq-topic-focus section:nth-child(3) { border-right: 5px solid color-mix(in srgb, var(--dsq-accent-2) 42%, #fff); }
.dsq-guide-percent .dsq-topic-symbol { border-radius: 50%; }.dsq-guide-percent .dsq-topic-focus section:nth-child(2) { background: linear-gradient(145deg, var(--dsq-soft), #fff); border-radius: 50px 18px; }
.dsq-guide-distribution .dsq-topic-focus section { border-top: 5px solid color-mix(in srgb, var(--dsq-accent) 28%, #fff); }.dsq-guide-distribution .dsq-topic-focus section:nth-child(2) { border-top-width: 11px; }.dsq-guide-distribution .dsq-topic-focus section:nth-child(3) { border-top-width: 17px; }
.dsq-guide-scatter { background-image: radial-gradient(circle, rgba(29,127,153,.06) 0 2px, transparent 3px); background-size: 25px 25px; }.dsq-guide-scatter .dsq-topic-focus section { box-shadow: 0 12px 30px rgba(63,74,119,.06); }
.dsq-guide-chance .dsq-topic-focus section { border-radius: 28px 8px 28px 8px; }.dsq-guide-chance .dsq-topic-focus section:nth-child(2) { background: linear-gradient(145deg, var(--dsq-soft), #fff); }
.dsq-guide-interval .dsq-topic-focus { border-right: 4px solid color-mix(in srgb, var(--dsq-accent-2) 16%, transparent); border-left: 4px solid color-mix(in srgb, var(--dsq-accent) 16%, transparent); padding: 0 9px; }
.dsq-guide-verdict .dsq-topic-focus section { border-top: 4px solid color-mix(in srgb, var(--dsq-accent) 35%, #fff); }.dsq-guide-verdict .dsq-topic-focus section:nth-child(3) { border-top-color: color-mix(in srgb, var(--dsq-accent-2) 42%, #fff); }
.dsq-guide-solids .dsq-topic-focus section { box-shadow: inset -8px -8px color-mix(in srgb, var(--dsq-accent) 5%, transparent); }.dsq-guide-solids .dsq-topic-symbol { border-radius: 8px; transform: rotate(8deg) skewY(-5deg); }
.dsq-guide-angles .dsq-topic-focus section { border-radius: 8px 35px; }.dsq-guide-angles .dsq-topic-focus section:nth-child(2) { background: linear-gradient(145deg, var(--dsq-soft), #fff); }
.dsq-guide-trig .dsq-topic-focus section { clip-path: polygon(0 0, 100% 0, 100% 100%, 7% 100%, 0 86%); }.dsq-guide-trig .dsq-topic-symbol { border-radius: 8px 50% 8px 8px; }
.dsq-guide-rings .dsq-topic-symbol { border-radius: 50%; box-shadow: inset 0 0 0 18px color-mix(in srgb, var(--dsq-accent) 7%, transparent); }.dsq-guide-rings .dsq-topic-focus section:nth-child(2) { border-radius: 50px; }
.dsq-depth-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: 18px; margin-top: 22px; }
.dsq-mistakes-card, .dsq-check-card, .dsq-formula-section { background: #fff; border: 1px solid #e1e6ef; border-radius: 25px; }
.dsq-mistakes-card { padding: 31px; }
.dsq-mistakes-card h2, .dsq-check-card h2, .dsq-formula-section h2 { margin: 9px 0 7px; font-size: 1.45rem; letter-spacing: -.025em; font-weight: 950; }
.dsq-mistakes-card > p, .dsq-check-card > p, .dsq-formula-section header > p { margin: 0; color: var(--dsq-muted); line-height: 1.62; }
.dsq-mistakes-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; margin-top: 20px; }
.dsq-mistakes-list > div { display: grid; grid-template-columns: 30px 1fr; gap: 9px; padding: 13px; background: #fff8f6; border: 1px solid #f2ded8; border-radius: 13px; }
.dsq-mistakes-list span { display: grid; place-items: center; width: 30px; height: 30px; color: #b44e3f; background: #ffe9e4; border-radius: 9px; font-size: .69rem; font-weight: 950; }
.dsq-mistakes-list p { margin: 0; color: #655b61; font-size: .8rem; line-height: 1.48; }
.dsq-check-card { padding: 31px; background: linear-gradient(150deg, var(--dsq-soft), #fff 62%); }
.dsq-check-icon { display: grid; place-items: center; width: 48px; height: 48px; color: #fff; background: linear-gradient(135deg, var(--dsq-accent), var(--dsq-accent-2)); border-radius: 15px; font-size: 1.18rem; }
.dsq-check-card ul { display: grid; gap: 11px; margin: 21px 0 0; padding: 0; list-style: none; }
.dsq-check-card li { display: flex; gap: 9px; color: #4f5d72; font-size: .85rem; line-height: 1.48; }
.dsq-check-card li i { flex: 0 0 auto; margin-top: 2px; color: var(--dsq-accent); }
.dsq-formula-section { margin-top: 22px; padding: 32px; }
.dsq-formula-section header { max-width: 780px; margin-bottom: 22px; }
.dsq-formula-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.dsq-formula-grid article { padding: 20px; background: #f8fafc; border: 1px solid #e1e6ed; border-radius: 17px; }
.dsq-mathml { display: grid; place-items: center; min-height: 76px; margin-bottom: 15px; color: var(--dsq-accent); background: var(--dsq-soft); border-radius: 13px; overflow-x: auto; }
.dsq-mathml math { font-size: 1.2rem; }
.dsq-formula-grid h3 { font-size: .98rem; font-weight: 950; }.dsq-formula-grid p { margin: 0; color: var(--dsq-muted); font-size: .82rem; line-height: 1.5; }
.dsq-general-notes { display: grid; grid-template-columns: repeat(2, 1fr); gap: 13px; margin-top: 22px; }
.dsq-general-notes section { padding: 23px; background: #f8f9fd; border: 1px solid #e1e6ef; border-radius: 17px; }
.dsq-general-notes h3 { margin: 9px 0 8px; font-size: 1rem; font-weight: 950; }
.dsq-general-notes p, .dsq-general-notes li { color: var(--dsq-muted); font-size: .83rem; line-height: 1.55; }
.dsq-general-notes p { margin: 0; }.dsq-general-notes ul { display: grid; gap: 6px; margin: 0; padding-left: 18px; }
.dsq-general-notes-dark section { background: rgba(255,255,255,.045); border-color: rgba(255,255,255,.1); }
.dsq-general-notes-dark h3 { color: #fff; }.dsq-general-notes-dark p, .dsq-general-notes-dark li { color: #aebbd0; }.dsq-general-notes-dark .dsq-eyebrow { color: #ff9566; }

@media (max-width: 991.98px) {
    .dsq-layout.has-explanation { grid-template-columns: 1fr; }
    .dsq-explanation { order: 2; }
    .dsq-session-track { grid-template-columns: repeat(2, 1fr); }
    .dsq-session-track section { min-height: 175px; border-bottom: 1px solid rgba(255,255,255,.1); }
    .dsq-session-track section:last-child { grid-column: 1 / -1; }
    .dsq-topic-focus { grid-template-columns: 1fr; }
    .dsq-depth-grid { grid-template-columns: 1fr; }
    .dsq-formula-grid { grid-template-columns: 1fr; }
    .dsq-general-notes { grid-template-columns: 1fr; }
    .dsq-guide-quotes .dsq-topic-focus section:nth-child(2) { transform: none; }
    .dsq-guide-flow .dsq-topic-focus::after { display: none; }
    .dsq-guide-syntax .dsq-topic-focus::before,
    .dsq-guide-numberline .dsq-topic-focus::before { display: none; }
    .dsq-guide-balance .dsq-topic-focus section:nth-child(1),
    .dsq-guide-balance .dsq-topic-focus section:nth-child(3) { margin-top: 0; }
    .dsq-guide-flow .dsq-topic-focus section:nth-child(2),
    .dsq-guide-notes .dsq-topic-focus section,
    .dsq-guide-notes .dsq-topic-focus section:nth-child(2),
    .dsq-guide-notes .dsq-topic-focus section:nth-child(3) { transform: none; }
    .dsq-guide-path .dsq-topic-focus::before { display: none; }
}

@media (max-width: 767.98px) {
    .dsq-heading { padding: 30px 24px 22px; }
    .dsq-welcome { align-items: stretch; flex-direction: column; }
    .dsq-start-area { text-align: left; }
    .dsq-start { width: 100%; }
    .dsq-guide-head, .dsq-session-head { align-items: flex-start; flex-direction: column; }
    .dsq-topic-guide-head { align-items: flex-start; flex-direction: column; }
    .dsq-topic-symbol { display: none; }
    .dsq-topic-rule { grid-template-columns: 1fr; gap: 18px; }
    .dsq-mistakes-list { grid-template-columns: 1fr; }
    .dsq-scan-mark { display: none; }
    .dsq-skill-map, .dsq-diagnostic-bottom, .dsq-exam-rules { grid-template-columns: 1fr; }
    .dsq-diagnostic-bottom { gap: 1px; }
}

@media (max-width: 575.98px) {
    .dsq-shell { padding-top: 10px; }
    .dsq-toolbar { padding: 10px 14px; }
    .dsq-label { font-size: .68rem; }
    .dsq-finish span { display: none; }
    .dsq-heading h1 { font-size: 2rem; }
    .dsq-welcome, .dsq-content { margin-right: 14px; margin-left: 14px; padding-right: 0; padding-left: 0; }
    .dsq-welcome { padding: 19px; }
    .dsq-question { padding: 18px; }
    .dsq-progress-head { align-items: flex-start; flex-direction: column; }
    .dsq-segments { width: 100%; }
    .dsq-diagnostic-guide { padding: 24px 18px; }
    .dsq-topic-guide { padding: 25px 18px; }
    .dsq-mistakes-card, .dsq-check-card, .dsq-formula-section { padding: 23px 18px; }
    .dsq-session-track { grid-template-columns: 1fr; }
    .dsq-session-track section, .dsq-session-track section:last-child { grid-column: auto; min-height: 150px; }
    .dsq-session-track i { margin: 16px 0 20px; }
}

/* Detail pages for the eight official Digital SAT content domains */
.ds-topic-page {
    --topic: #3158cb;
    --topic-2: #7542ca;
    --topic-soft: #eef2ff;
    --topic-soft-2: #f7f5ff;
    --topic-line: #dfe5f0;
    color: #14213c;
    background: #f7f9fd;
    overflow: hidden;
}

.ds-topic-page.topic-purple { --topic: #6841c4; --topic-2: #a1499d; --topic-soft: #eee9ff; --topic-soft-2: #fcf4fb; }
.ds-topic-page.topic-indigo { --topic: #4d50bd; --topic-2: #326fc4; --topic-soft: #e9ebff; --topic-soft-2: #f1f7ff; }
.ds-topic-page.topic-blue { --topic: #2762bd; --topic-2: #158a9b; --topic-soft: #e7f0ff; --topic-soft-2: #effafb; }
.ds-topic-page.topic-cyan { --topic: #087e94; --topic-2: #5266bd; --topic-soft: #e1f5f8; --topic-soft-2: #f0f1ff; }
.ds-topic-page.topic-emerald { --topic: #087d68; --topic-2: #377cb7; --topic-soft: #e1f6ef; --topic-soft-2: #eef6fc; }
.ds-topic-page.topic-green { --topic: #3b812f; --topic-2: #118275; --topic-soft: #e8f6e4; --topic-soft-2: #edf9f6; }
.ds-topic-page.topic-amber { --topic: #a96b08; --topic-2: #c04e29; --topic-soft: #fff1cf; --topic-soft-2: #fff2ea; }
.ds-topic-page.topic-orange { --topic: #bd5917; --topic-2: #9f3f53; --topic-soft: #ffe9da; --topic-soft-2: #fff0f3; }

.ds-topic-breadcrumb-wrap {
    padding: 18px 0 0;
}

.ds-topic-hero {
    position: relative;
    padding: 52px 0 70px;
    background:
        radial-gradient(circle at 90% 13%, color-mix(in srgb, var(--topic) 15%, transparent), transparent 27%),
        linear-gradient(145deg, var(--topic-soft-2), #f7f9fd 62%);
}

.layout-offset .ds-topic-hero::before,
.layout-reverse .ds-topic-hero::before,
.layout-orbit .ds-topic-hero::before,
.layout-bands .ds-topic-hero::before {
    position: absolute;
    content: "";
    pointer-events: none;
}

.layout-offset .ds-topic-hero::before {
    right: 7%;
    bottom: -45px;
    width: 170px;
    height: 170px;
    border: 28px solid color-mix(in srgb, var(--topic) 8%, transparent);
    border-radius: 38px;
    transform: rotate(19deg);
}

.layout-reverse .ds-topic-hero::before {
    top: -85px;
    right: 18%;
    width: 210px;
    height: 210px;
    background: color-mix(in srgb, var(--topic-2) 7%, transparent);
    border-radius: 50%;
}

.layout-orbit .ds-topic-hero::before {
    right: -55px;
    bottom: 18px;
    width: 235px;
    height: 95px;
    border: 21px solid color-mix(in srgb, var(--topic) 9%, transparent);
    border-radius: 999px;
    transform: rotate(-17deg);
}

.layout-bands .ds-topic-hero::before {
    right: -25px;
    bottom: 22px;
    width: 300px;
    height: 80px;
    background: repeating-linear-gradient(135deg, color-mix(in srgb, var(--topic) 8%, transparent) 0 18px, transparent 18px 34px);
    border-radius: 22px;
    transform: rotate(-9deg);
}

.ds-topic-overline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--topic);
    font-size: .79rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ds-topic-number {
    display: grid;
    place-items: center;
    min-width: 36px;
    height: 29px;
    color: #fff;
    background: linear-gradient(135deg, var(--topic), var(--topic-2));
    border-radius: 9px;
    letter-spacing: 0;
}

.ds-topic-hero h1 {
    max-width: 900px;
    margin: 20px 0 3px;
    font-size: clamp(2.3rem, 5vw, 4.55rem);
    line-height: 1;
    letter-spacing: -.052em;
    font-weight: 950;
}

.ds-topic-ru-title {
    margin-bottom: 18px;
    color: var(--topic);
    font-size: clamp(1rem, 2vw, 1.25rem);
    font-weight: 850;
}

.ds-topic-intro {
    max-width: 780px;
    margin: 0;
    color: #56647a;
    font-size: 1.08rem;
    line-height: 1.72;
}

.ds-topic-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 27px;
}

.ds-topic-primary,
.ds-topic-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 18px;
    border-radius: 13px;
    font-weight: 900;
    text-decoration: none;
    transition: transform .18s ease, box-shadow .18s ease;
}

.ds-topic-primary {
    color: #fff;
    background: linear-gradient(135deg, var(--topic), var(--topic-2));
    box-shadow: 0 11px 25px color-mix(in srgb, var(--topic) 24%, transparent);
}

.ds-topic-secondary {
    color: #40506a;
    background: #fff;
    border: 1px solid var(--topic-line);
}

.ds-topic-primary:hover,
.ds-topic-secondary:hover {
    transform: translateY(-2px);
}

.ds-topic-primary:hover { color: #fff; }
.ds-topic-secondary:hover { color: var(--topic); }

.ds-topic-summary {
    position: relative;
    z-index: 1;
    padding: 24px;
    background: rgba(255, 255, 255, .88);
    border: 1px solid var(--topic-line);
    border-radius: 24px;
    box-shadow: 0 20px 52px rgba(31, 49, 87, .11);
    backdrop-filter: blur(10px);
}

.ds-topic-summary-icon {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    margin-bottom: 20px;
    color: #fff;
    background: linear-gradient(135deg, var(--topic), var(--topic-2));
    border-radius: 16px;
    font-size: 1.25rem;
}

.ds-topic-summary-label {
    color: #7a8598;
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ds-topic-summary > strong {
    display: inline-block;
    margin: 4px 7px 0 0;
    font-size: 2.7rem;
    line-height: 1;
    font-weight: 950;
}

.ds-topic-summary > span:not(.ds-topic-summary-icon) {
    color: #647087;
    font-weight: 750;
}

.ds-topic-summary hr {
    margin: 20px 0 15px;
    border-color: #dfe5ef;
    opacity: 1;
}

.ds-topic-summary p {
    margin: 8px 0 0;
    color: #546279;
    font-size: .89rem;
}

.ds-topic-summary p i {
    color: var(--topic);
}

.ds-topic-section {
    padding: 70px 0;
}

.ds-topic-tests-section,
.ds-topic-guide-section,
.ds-topic-next-section {
    background: #fff;
}

.ds-topic-heading {
    max-width: 780px;
    margin-bottom: 32px;
}

.ds-topic-heading-centered {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.ds-topic-heading > span,
.ds-topic-mini-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--topic);
    font-size: .77rem;
    font-weight: 900;
    letter-spacing: .075em;
    text-transform: uppercase;
}

.ds-topic-heading h2,
.ds-topic-about-card h2,
.ds-topic-skill-card h2,
.ds-topic-mistakes h2,
.ds-topic-next-card h2 {
    letter-spacing: -.03em;
    font-weight: 950;
}

.ds-topic-heading h2 {
    margin: 9px 0 10px;
    font-size: clamp(1.7rem, 3vw, 2.6rem);
}

.ds-topic-heading p {
    margin: 0;
    color: #68748a;
    line-height: 1.65;
}

.ds-topic-test-card {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 250px;
    padding: 23px;
    color: #17233e;
    background: #fff;
    border: 1px solid var(--topic-line);
    border-radius: 20px;
    box-shadow: 0 11px 30px rgba(31, 49, 87, .06);
    text-decoration: none;
    overflow: hidden;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.ds-topic-test-card::after {
    position: absolute;
    content: "";
    top: -35px;
    right: -35px;
    width: 100px;
    height: 100px;
    background: var(--topic-soft);
    border-radius: 50%;
}

.ds-topic-test-card:hover {
    color: #17233e;
    transform: translateY(-4px);
    border-color: color-mix(in srgb, var(--topic) 38%, white);
    box-shadow: 0 18px 38px rgba(31, 49, 87, .11);
}

.ds-topic-test-top {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 19px;
}

.ds-topic-test-icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    color: #fff;
    background: var(--topic);
    border-radius: 14px;
}

.ds-topic-test-index {
    color: var(--topic);
    font-size: .79rem;
    font-weight: 950;
    letter-spacing: .08em;
}

.ds-topic-test-card h3 {
    margin-bottom: 9px;
    font-size: 1.12rem;
    font-weight: 950;
}

.ds-topic-test-card p {
    margin-bottom: 18px;
    color: #667287;
    font-size: .91rem;
    line-height: 1.57;
}

.ds-topic-open {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
    color: var(--topic);
    font-size: .87rem;
    font-weight: 900;
}

.layout-stagger .row > div:nth-child(even) .ds-topic-test-card,
.layout-orbit .ds-topic-test-card {
    background: linear-gradient(150deg, #fff, var(--topic-soft-2));
}

.ds-topic-about-card,
.ds-topic-skill-card {
    height: 100%;
    padding: 28px;
    background: #fff;
    border: 1px solid var(--topic-line);
    border-radius: 22px;
}

.ds-topic-about-card {
    box-shadow: 0 14px 36px rgba(31, 49, 87, .065);
}

.ds-topic-skill-card {
    background: linear-gradient(145deg, var(--topic-soft), #fff 76%);
}

.ds-topic-about-card h2,
.ds-topic-skill-card h2 {
    margin: 10px 0 15px;
    font-size: 1.55rem;
}

.ds-topic-about-card p {
    color: #5e6b82;
    line-height: 1.7;
}

.ds-topic-about-card p:last-child {
    margin-bottom: 0;
}

.ds-topic-skill-card ul {
    display: grid;
    gap: 13px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.ds-topic-skill-card li {
    display: flex;
    gap: 10px;
    color: #536178;
    line-height: 1.5;
}

.ds-topic-skill-card li i {
    flex: 0 0 auto;
    margin-top: 3px;
    color: var(--topic);
}

.ds-topic-step {
    height: 100%;
    padding: 24px;
    background: #fff;
    border: 1px solid var(--topic-line);
    border-radius: 19px;
}

.ds-topic-step > span {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 17px;
    color: #fff;
    background: linear-gradient(135deg, var(--topic), var(--topic-2));
    border-radius: 13px;
    font-weight: 950;
}

.ds-topic-step h3 {
    font-size: 1.05rem;
    font-weight: 900;
}

.ds-topic-step p {
    margin: 0;
    color: #68748a;
    line-height: 1.58;
}

.ds-topic-mistakes {
    padding: 31px;
    background: linear-gradient(145deg, var(--topic-soft-2), #fff);
    border: 1px solid var(--topic-line);
    border-radius: 24px;
}

.ds-topic-mistakes h2 {
    margin: 10px 0 10px;
}

.ds-topic-mistakes p {
    color: #68748a;
    line-height: 1.6;
}

.ds-topic-mistake-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.ds-topic-mistake-grid > div {
    display: flex;
    gap: 9px;
    padding: 13px;
    color: #56637a;
    background: rgba(255, 255, 255, .82);
    border: 1px solid var(--topic-line);
    border-radius: 13px;
    line-height: 1.5;
    font-size: .9rem;
}

.ds-topic-mistake-grid i {
    flex: 0 0 auto;
    margin-top: 3px;
    color: var(--topic-2);
}

.ds-topic-next-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 32px;
    background: linear-gradient(145deg, var(--topic-soft), var(--topic-soft-2));
    border: 1px solid color-mix(in srgb, var(--topic) 20%, white);
    border-radius: 25px;
}

.ds-topic-next-card h2 {
    max-width: 720px;
    margin: 10px 0 8px;
    font-size: 1.6rem;
}

.ds-topic-next-card p {
    max-width: 720px;
    margin: 0;
    color: #627086;
}

.ds-topic-next-actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 9px;
}

@media (max-width: 991.98px) {
    .ds-topic-hero {
        padding: 45px 0 58px;
    }

    .ds-topic-next-card {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 575.98px) {
    .ds-topic-section {
        padding: 55px 0;
    }

    .ds-topic-hero h1 {
        letter-spacing: -.04em;
    }

    .ds-topic-actions > a,
    .ds-topic-next-actions,
    .ds-topic-next-actions > a {
        width: 100%;
    }

    .ds-topic-mistake-grid {
        grid-template-columns: 1fr;
    }

    .ds-topic-about-card,
    .ds-topic-skill-card,
    .ds-topic-mistakes,
    .ds-topic-next-card {
        padding: 22px;
    }
}

/* Shared styles for Digital SAT section catalog pages */
.ds-section-page {
    --section-accent: #3157d5;
    --section-accent-2: #743fd2;
    --section-soft: #eef3ff;
    --section-line: #dde5f1;
    color: #14213c;
    background: #f7f9fd;
    overflow: hidden;
}

.ds-section-page.ds-reading {
    --section-accent: #5d45c7;
    --section-accent-2: #9a4eac;
    --section-soft: #f1edff;
}

.ds-section-page.ds-math {
    --section-accent: #087c68;
    --section-accent-2: #2470bf;
    --section-soft: #e9f8f3;
}

.ds-section-page a {
    text-underline-offset: 3px;
}

.ds-breadcrumb-wrap {
    padding: 18px 0 0;
}

.ds-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    color: #748096;
    font-size: .84rem;
    list-style: none;
}

.ds-breadcrumb a {
    color: #53627a;
    text-decoration: none;
}

.ds-breadcrumb i {
    color: #a8b1c1;
    font-size: .66rem;
}

.ds-section-hero {
    position: relative;
    padding: 54px 0 72px;
}

.ds-reading .ds-section-hero {
    background:
        radial-gradient(ellipse at 88% 16%, rgba(144, 73, 178, .14), transparent 31%),
        linear-gradient(180deg, #f9f7ff, #f7f9fd);
}

.ds-math .ds-section-hero {
    background:
        radial-gradient(circle at 8% 20%, rgba(18, 157, 124, .13), transparent 26%),
        linear-gradient(180deg, #f4fbf9, #f7f9fd);
}

.ds-section-hero::after {
    position: absolute;
    content: "";
    right: -65px;
    bottom: 20px;
    width: 220px;
    height: 90px;
    border: 22px solid color-mix(in srgb, var(--section-accent) 8%, transparent);
    border-radius: 999px;
    transform: rotate(-21deg);
    pointer-events: none;
}

.ds-page-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    color: var(--section-accent);
    background: #fff;
    border: 1px solid color-mix(in srgb, var(--section-accent) 22%, white);
    border-radius: 999px;
    font-size: .77rem;
    font-weight: 900;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.ds-section-hero h1 {
    max-width: 760px;
    margin: 20px 0 17px;
    font-size: clamp(2.35rem, 5vw, 4.5rem);
    line-height: 1.02;
    letter-spacing: -.052em;
    font-weight: 950;
}

.ds-section-hero h1 span {
    color: var(--section-accent);
}

.ds-section-lead {
    max-width: 720px;
    margin: 0;
    color: #55637a;
    font-size: clamp(1.02rem, 2vw, 1.2rem);
    line-height: 1.72;
}

.ds-hero-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 25px;
}

.ds-hero-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    color: #4e5d75;
    background: rgba(255, 255, 255, .82);
    border: 1px solid #dce3ee;
    border-radius: 11px;
    font-size: .85rem;
    font-weight: 800;
}

.ds-hero-chip i {
    color: var(--section-accent);
}

.ds-hero-aside {
    position: relative;
    z-index: 1;
    padding: 24px;
    background: rgba(255, 255, 255, .88);
    border: 1px solid var(--section-line);
    border-radius: 25px;
    box-shadow: 0 22px 55px rgba(32, 49, 86, .11);
    backdrop-filter: blur(9px);
}

.ds-aside-label {
    margin-bottom: 12px;
    color: #788398;
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.ds-aside-title {
    margin-bottom: 20px;
    font-size: 1.3rem;
    font-weight: 900;
}

.ds-aside-row {
    display: grid;
    grid-template-columns: 39px 1fr auto;
    align-items: center;
    gap: 11px;
    padding: 11px 0;
    border-top: 1px solid #e7ebf2;
}

.ds-aside-row:first-of-type {
    border-top: 0;
}

.ds-aside-icon {
    display: grid;
    place-items: center;
    width: 39px;
    height: 39px;
    color: #fff;
    background: var(--section-accent);
    border-radius: 12px;
}

.ds-aside-row strong {
    display: block;
    font-size: .9rem;
}

.ds-aside-row small,
.ds-aside-row > span:last-child {
    color: #7a8699;
    font-size: .78rem;
}

.ds-page-section {
    padding: 72px 0;
}

.ds-page-section.ds-white {
    background: #fff;
}

.ds-page-heading {
    max-width: 760px;
    margin-bottom: 34px;
}

.ds-page-heading.ds-centered {
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.ds-page-heading h2 {
    margin: 0 0 10px;
    font-size: clamp(1.7rem, 3vw, 2.65rem);
    letter-spacing: -.035em;
    font-weight: 950;
}

.ds-page-heading p {
    margin: 0;
    color: #647086;
    font-size: 1.02rem;
    line-height: 1.67;
}

.ds-domain-card {
    position: relative;
    height: 100%;
    padding: 25px;
    background: #fff;
    border: 1px solid var(--section-line);
    border-radius: 22px;
    box-shadow: 0 12px 32px rgba(31, 49, 87, .06);
    overflow: hidden;
}

.ds-domain-card::after {
    position: absolute;
    content: "";
    top: -36px;
    right: -36px;
    width: 105px;
    height: 105px;
    background: var(--domain-soft);
    border-radius: 50%;
}

.ds-domain-card.purple { --domain: #6943c4; --domain-soft: #eee8ff; }
.ds-domain-card.rose { --domain: #a53f78; --domain-soft: #fde9f3; }
.ds-domain-card.blue { --domain: #2862bf; --domain-soft: #e5efff; }
.ds-domain-card.cyan { --domain: #087e93; --domain-soft: #def5f8; }
.ds-domain-card.emerald { --domain: #087e68; --domain-soft: #ddf5ee; }
.ds-domain-card.green { --domain: #3c812e; --domain-soft: #e7f5e3; }
.ds-domain-card.amber { --domain: #ad710a; --domain-soft: #fff0cd; }
.ds-domain-card.orange { --domain: #bd5a17; --domain-soft: #ffe8d8; }

.ds-domain-icon {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    margin-bottom: 20px;
    color: #fff;
    background: var(--domain);
    border-radius: 15px;
    font-size: 1.2rem;
}

.ds-domain-card h3 {
    margin-bottom: 4px;
    font-size: 1.2rem;
    font-weight: 950;
}

.ds-domain-ru {
    margin-bottom: 12px;
    color: var(--domain);
    font-size: .87rem;
    font-weight: 850;
}

.ds-domain-card > p {
    color: #647087;
    font-size: .92rem;
    line-height: 1.58;
}

.ds-domain-main-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 4px;
    color: var(--domain);
    font-weight: 900;
    text-decoration: none;
}

.ds-subtest-list {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 18px;
    padding-top: 16px;
    border-top: 1px solid #e7ebf2;
}

.ds-subtest-list a {
    padding: 6px 9px;
    color: #56647a;
    background: #f5f7fb;
    border: 1px solid #e0e6ef;
    border-radius: 9px;
    font-size: .75rem;
    font-weight: 750;
    text-decoration: none;
}

.ds-subtest-list a:hover {
    color: var(--domain);
    border-color: color-mix(in srgb, var(--domain) 35%, white);
}

.ds-fact-panel {
    height: 100%;
    padding: 27px;
    background: linear-gradient(145deg, var(--section-soft), #fff 72%);
    border: 1px solid var(--section-line);
    border-radius: 22px;
}

.ds-fact-panel h2,
.ds-fact-panel h3 {
    font-weight: 950;
}

.ds-fact-panel h2 {
    font-size: 1.55rem;
}

.ds-fact-panel p {
    color: #5f6d83;
    line-height: 1.65;
}

.ds-fact-list {
    display: grid;
    gap: 12px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.ds-fact-list li {
    display: flex;
    gap: 10px;
    color: #4f5d73;
    line-height: 1.5;
}

.ds-fact-list i {
    flex: 0 0 auto;
    margin-top: 3px;
    color: var(--section-accent);
}

.ds-route-step {
    height: 100%;
    padding: 23px;
    background: #fff;
    border: 1px solid var(--section-line);
    border-radius: 19px;
}

.ds-route-number {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    margin-bottom: 17px;
    color: #fff;
    background: linear-gradient(135deg, var(--section-accent), var(--section-accent-2));
    border-radius: 13px;
    font-weight: 950;
}

.ds-route-step h3 {
    font-size: 1.05rem;
    font-weight: 900;
}

.ds-route-step p {
    margin: 0;
    color: #68748a;
    line-height: 1.58;
}

.ds-section-cta {
    position: relative;
    padding: 38px;
    color: #fff;
    background: linear-gradient(135deg, var(--section-accent), var(--section-accent-2));
    border-radius: 27px;
    box-shadow: 0 22px 52px color-mix(in srgb, var(--section-accent) 25%, transparent);
    overflow: hidden;
}

.ds-section-cta::after {
    position: absolute;
    content: "";
    right: -65px;
    bottom: -110px;
    width: 220px;
    height: 220px;
    border: 28px solid rgba(255, 255, 255, .1);
    border-radius: 50%;
}

.ds-section-cta-content {
    position: relative;
    z-index: 1;
}

.ds-section-cta h2 {
    margin-bottom: 9px;
    font-weight: 950;
}

.ds-section-cta p {
    max-width: 700px;
    margin: 0;
    color: rgba(255, 255, 255, .85);
    line-height: 1.62;
}

.ds-cta-buttons {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px;
}

.ds-cta-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 47px;
    padding: 0 17px;
    color: var(--section-accent);
    background: #fff;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: 13px;
    font-weight: 900;
    text-decoration: none;
}

.ds-cta-button.ds-outline {
    color: #fff;
    background: rgba(255, 255, 255, .1);
}

.ds-cta-button:hover {
    color: var(--section-accent);
    transform: translateY(-1px);
}

.ds-cta-button.ds-outline:hover {
    color: #fff;
    background: rgba(255, 255, 255, .17);
}

.ds-formula-board {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.ds-formula-tile {
    display: grid;
    place-items: center;
    min-height: 78px;
    padding: 10px;
    color: #1f4a57;
    background: #f2faf7;
    border: 1px solid #d8eee7;
    border-radius: 14px;
    font-size: 1.05rem;
}

.ds-formula-tile math {
    font-size: 1.08rem;
}

@media (max-width: 991.98px) {
    .ds-section-hero {
        padding: 44px 0 60px;
    }

    .ds-cta-buttons {
        justify-content: flex-start;
    }
}

@media (max-width: 575.98px) {
    .ds-section-hero h1 {
        letter-spacing: -.04em;
    }

    .ds-page-section {
        padding: 56px 0;
    }

    .ds-section-cta {
        padding: 25px;
    }

    .ds-cta-buttons,
    .ds-cta-button {
        width: 100%;
    }
}
