/* CoreXMath practice theme. Loaded only on practice pages. */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
body[data-page="practice"]{--practice-accent:#8151be;--practice-tint:#f1e8fa;--practice-border:#e5d6f0;background:#fbfafc;color:#272037;font-family:'DM Sans',sans-serif}
body[data-page="practice"]:has(.practice-theme-extended){--practice-accent:#b66c96;--practice-tint:#f9eaf2;--practice-border:#efd7e4}
body[data-page="practice"] .cx-topbar{height:80px;background:#fff;border-color:#eee8f3;box-shadow:none;gap:22px;padding-inline:max(22px,calc((100vw - 1260px)/2))}
body[data-page="practice"] .cx-brand{font-family:Manrope,sans-serif;font-size:25px;font-weight:800;letter-spacing:-1px}
body[data-page="practice"] .cx-brand>span:last-child span{color:#b572b8}
body[data-page="practice"] .top-page-name{font-size:11px;color:#a18aae;font-weight:500}
body[data-page="practice"] .cx-topbar .top-account{border:0;border-radius:9px;background:#34233f;color:#fff;padding:12px 17px;font-size:10px;box-shadow:none}
body[data-page="practice"] .cx-menu{color:#a17bb7;background:#fff;border:1px solid #eee5f4;border-radius:9px}
body[data-page="practice"] .cx-main{width:min(1260px,91%);padding:25px 0 38px}
.practice-home-link{font-size:10px;color:#ab8ebb;display:inline-flex;align-items:center;padding:0 0 20px}
body[data-page="practice"] .page-head{padding:25px 28px;border:1px solid var(--practice-border);background:linear-gradient(115deg,var(--practice-tint),#fff);border-radius:19px;margin:0 0 20px;gap:20px}
body[data-page="practice"] .page-head .badge{background:transparent;border:0;border-radius:0;color:var(--practice-accent);font-size:8px;letter-spacing:1.8px;font-weight:700;padding:0;margin-bottom:10px}
body[data-page="practice"] .page-head h1{font:800 clamp(22px,2.5vw,32px)/1.25 Manrope,sans-serif;letter-spacing:-1px;color:#65477a;margin:0}
body[data-page="practice"]:has(.practice-theme-extended) .page-head h1{color:#9f6685}
body[data-page="practice"] .page-head p{font-size:11px;color:#a28aaf;margin-top:8px;line-height:1.7}
body[data-page="practice"] .page-head .tabs{padding:5px;border:1px solid #e9dff0;background:#ffffffc9;border-radius:12px;box-shadow:none;flex-shrink:0}
body[data-page="practice"] .page-head .tab{padding:10px 17px;border:0;font-size:11px;border-radius:8px;color:#a18aad;background:transparent}
body[data-page="practice"] .page-head .tab.active{background:var(--practice-tint);color:var(--practice-accent);box-shadow:none}
body[data-page="practice"] .practice-theme>section.card{padding:23px 26px;border:1px solid #eee6f4;background:#fff;border-radius:17px;box-shadow:0 6px 18px #80509b04}
body[data-page="practice"] .practice-filter-intro{margin:0 0 18px;align-items:center}
body[data-page="practice"] .practice-filter-intro span{font-size:8px;letter-spacing:1.5px;color:#b18cc2;font-weight:700}
body[data-page="practice"] .practice-filter-intro strong{font-size:12px;font-weight:600;color:#81648f;margin-top:5px}
body[data-page="practice"] .practice-filter-intro small{font-size:9px;color:#a280b5;background:#faf5ff;padding:7px 10px;border-radius:8px}
body[data-page="practice"] .filters{display:grid;grid-template-columns:1fr 1.2fr 1fr auto;gap:11px;align-items:center}
body[data-page="practice"] .filters .field{width:100%;min-width:0;padding:13px 14px;min-height:46px;background:#fdfbff;border:1px solid #e9deef;border-radius:10px;color:#80698f;font-size:11px;box-shadow:none}
body[data-page="practice"] .filters .field:focus-visible{border-color:#bc94d3;box-shadow:0 0 0 3px #b58bc414}
body[data-page="practice"] #loadPractice{font-size:11px;font-weight:600;min-height:46px;padding:13px 19px;border-radius:10px;background:var(--practice-accent);color:white;box-shadow:none;white-space:nowrap}
body[data-page="practice"] #loadPractice:disabled{opacity:.45}
body[data-page="practice"] .practice-loading{background:#fcf9ff;border-color:#eee2f5;color:#a181b4;font-size:11px}
body[data-page="practice"] .practice-summary{border:0;border-radius:0;background:transparent;padding:16px 0 9px;margin:0 0 8px;font-size:10px;gap:16px;color:#a18aad}
body[data-page="practice"] .practice-summary strong,body[data-page="practice"] .practice-summary b{color:var(--practice-accent);font-weight:600}
body[data-page="practice"] .practice-workspace{max-width:none}
body[data-page="practice"] .practice-number-nav{gap:8px;padding:3px 3px 16px}
body[data-page="practice"] .practice-number{width:39px;height:39px;flex-basis:39px;background:#fff;border:1px solid #e8ddef;border-radius:10px;font-size:12px;color:#a18bae;box-shadow:none}
body[data-page="practice"] .practice-number.active{background:var(--practice-accent);color:#fff;border-color:var(--practice-accent);box-shadow:0 4px 10px #8f5bb817}
body[data-page="practice"] .practice-number:hover:not(.active){background:var(--practice-tint);border-color:var(--practice-border);color:var(--practice-accent)}
body[data-page="practice"] .practice-exam-card{background:#fff;border:1px solid #e7ddef;border-radius:18px;box-shadow:0 9px 25px #80549e07}
body[data-page="practice"] .practice-exam-card:before{height:3px;background:linear-gradient(90deg,#b591d2,#dca9c5)}
body[data-page="practice"] .practice-card-top{padding:18px 25px;background:#fdfbff;border-color:#efe7f5}
body[data-page="practice"] .practice-q-number span{font-size:10px;font-weight:600;color:#a38ab2}
body[data-page="practice"] .practice-q-number strong{background:var(--practice-tint);color:var(--practice-accent);box-shadow:none;border:1px solid var(--practice-border)}
body[data-page="practice"] .practice-meta{font-size:10px;color:#a48db1;gap:8px}
body[data-page="practice"] .question-type-label.non-calculator{background:#fff;border-color:#e8dfef;color:#9b83aa}
body[data-page="practice"] .practice-question-body{min-height:265px;padding:30px 31px 34px;font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.85;background:#fff;color:#30273b;overflow-x:auto}
body[data-page="practice"] .practice-question-body img{max-width:100%;height:auto;object-fit:contain}
body[data-page="practice"] .practice-card-actions{padding:17px 24px;border-color:#eee5f4;background:#fcfaff;gap:12px}
body[data-page="practice"] .practice-card-actions .btn{border-radius:10px;font-size:11px;min-height:43px;font-weight:600;padding:12px 19px;box-shadow:none}
body[data-page="practice"] #practiceNext{background:var(--practice-accent);color:#fff;box-shadow:none}
body[data-page="practice"] #practicePrev{background:#f4edf9;color:#a17bb5;border:1px solid #e9ddef}
body[data-page="practice"] .practice-answer-btn{background:#fff;border:1px solid #d8bfe8;color:var(--practice-accent);box-shadow:none}
body[data-page="practice"] .practice-answer-btn.open{background:var(--practice-tint)}
body[data-page="practice"] .practice-answer-panel{padding:25px 30px;background:linear-gradient(110deg,var(--practice-tint),#fdfbff);border-color:var(--practice-border);color:#685474}
body[data-page="practice"] .answer-heading>span{background:var(--practice-accent);box-shadow:none}
body[data-page="practice"] .answer-heading small,body[data-page="practice"] .answer-explanation>small,body[data-page="practice"] .practice-subanswer>strong{color:var(--practice-accent)}
body[data-page="practice"] .answer-heading strong{color:#715380}
body[data-page="practice"] .cx-footer{width:min(1260px,91%);font-size:10px;color:#ad98b9;border-color:#eee5f5}
body[data-page="practice"] a:focus-visible,body[data-page="practice"] button:focus-visible{outline:3px solid #bb98d4;outline-offset:3px}
@media(max-width:950px){body[data-page="practice"] .filters{grid-template-columns:1fr 1fr}body[data-page="practice"] .filters .btn{width:100%}}
@media(max-width:620px){body[data-page="practice"] .cx-topbar{height:68px;padding:0 4.5%;gap:11px}body[data-page="practice"] .cx-brand{font-size:21px}body[data-page="practice"] .top-page-name{display:none}body[data-page="practice"] .cx-main{padding-top:19px;width:91%}.practice-home-link{font-size:9px;padding-bottom:16px}body[data-page="practice"] .page-head{padding:22px;flex-direction:column;align-items:flex-start;gap:17px;border-radius:16px}body[data-page="practice"] .page-head h1{font-size:23px}body[data-page="practice"] .page-head p{font-size:10px}body[data-page="practice"] .page-head .tabs{width:100%;display:grid;grid-template-columns:1fr 1fr}body[data-page="practice"] .page-head .tab{text-align:center;padding:10px}body[data-page="practice"] .practice-theme>section.card{padding:19px}body[data-page="practice"] .practice-filter-intro strong{font-size:11px}body[data-page="practice"] .filters{grid-template-columns:1fr}body[data-page="practice"] .filters .field{min-height:44px;font-size:12px}body[data-page="practice"] .practice-number{width:37px;height:37px;flex-basis:37px}body[data-page="practice"] .practice-card-top{padding:15px 16px;gap:10px;flex-wrap:wrap}body[data-page="practice"] .practice-meta{font-size:9px}body[data-page="practice"] .practice-question-body{padding:24px 19px;min-height:220px;font-size:16px;line-height:1.75}body[data-page="practice"] .practice-card-actions{padding:15px;gap:10px}body[data-page="practice"] .practice-card-actions .btn{font-size:11px;padding:11px}body[data-page="practice"] .practice-answer-panel{padding:22px 19px}body[data-page="practice"] .cx-footer{font-size:9px;gap:9px}}
@media(prefers-reduced-motion:reduce){body[data-page="practice"] *{scroll-behavior:auto;transition:none!important}}

/* Compact workspace: prioritise question visibility on the first screen. */
body[data-page="practice"] .cx-topbar{height:62px}
body[data-page="practice"] .cx-main{padding-top:12px;padding-bottom:20px}
.practice-home-link{padding-bottom:9px;font-size:9px}
body[data-page="practice"] .page-head{padding:12px 18px;margin-bottom:11px;border-radius:13px;gap:15px}
body[data-page="practice"] .page-head .badge{font-size:7px;margin-bottom:5px;letter-spacing:1.2px}
body[data-page="practice"] .page-head h1{font-size:23px;line-height:1.2;letter-spacing:-.6px}
body[data-page="practice"] .page-head p{display:none}
body[data-page="practice"] .page-head .tabs{padding:3px;border-radius:10px}
body[data-page="practice"] .page-head .tab{padding:8px 14px;font-size:10px}
body[data-page="practice"] .practice-theme>section.card{padding:13px 16px;border-radius:12px}
body[data-page="practice"] .practice-filter-intro{margin-bottom:9px}
body[data-page="practice"] .practice-filter-intro span{font-size:7px;letter-spacing:1px}
body[data-page="practice"] .practice-filter-intro strong{display:none}
body[data-page="practice"] .practice-filter-intro small{font-size:8px;padding:3px 7px}
body[data-page="practice"] .filters{gap:9px;grid-template-columns:1fr 1.2fr 1fr auto}
body[data-page="practice"] .filters .field{min-height:37px;padding:9px 11px;font-size:11px;border-radius:8px}
body[data-page="practice"] #loadPractice{min-height:37px;padding:9px 13px;font-size:10px;border-radius:8px}
body[data-page="practice"] .practice-summary{padding:8px 0 5px;margin:0 0 5px;font-size:10px;gap:11px}
body[data-page="practice"] .practice-number-nav{padding:2px 2px 10px;gap:6px}
body[data-page="practice"] .practice-number{width:32px;height:32px;flex-basis:32px;border-radius:8px;font-size:11px}
body[data-page="practice"] .practice-card-top{padding:11px 18px;gap:10px}
body[data-page="practice"] .practice-question-body{min-height:150px;padding:20px 24px;line-height:1.7;font-size:16px}
body[data-page="practice"] .practice-card-actions{padding:10px 18px;gap:10px}
body[data-page="practice"] .practice-card-actions .btn{min-height:38px;padding:9px 16px;font-size:11px;border-radius:9px}
body[data-page="practice"] .practice-answer-panel{padding:20px 24px}
@media(min-width:951px) and (max-height:800px){body[data-page="practice"] .page-head{padding:10px 17px}body[data-page="practice"] .practice-question-body{min-height:115px;padding:17px 22px}body[data-page="practice"] .practice-filter-intro{display:none}body[data-page="practice"] .practice-card-top{padding:9px 17px}}
@media(max-width:950px) and (min-width:621px){body[data-page="practice"] .filters{grid-template-columns:1fr 1fr 1fr auto}body[data-page="practice"] .filters .btn{width:auto}}
@media(max-width:620px){body[data-page="practice"] .cx-topbar{height:58px}body[data-page="practice"] .cx-main{padding-top:10px}.practice-home-link{padding-bottom:8px}body[data-page="practice"] .page-head{padding:12px 14px;flex-direction:row;align-items:center;gap:9px;margin-bottom:9px}body[data-page="practice"] .page-head h1{font-size:17px;letter-spacing:-.4px}body[data-page="practice"] .page-head .badge{font-size:6px;margin-bottom:4px}body[data-page="practice"] .page-head .tabs{width:auto;display:flex;gap:2px;flex-shrink:0}body[data-page="practice"] .page-head .tab{font-size:9px;padding:7px 8px}body[data-page="practice"] .practice-theme>section.card{padding:12px}body[data-page="practice"] .practice-filter-intro{display:none}body[data-page="practice"] .filters{grid-template-columns:1fr 1fr;gap:7px}body[data-page="practice"] .filters .field{min-height:36px;font-size:10px;padding:8px;max-width:100%}body[data-page="practice"] #loadPractice{min-height:36px;font-size:9px;padding:8px}body[data-page="practice"] .practice-summary{padding-top:8px;font-size:9px}body[data-page="practice"] .practice-number-nav{padding-bottom:8px}body[data-page="practice"] .practice-number{width:30px;height:30px;flex-basis:30px}body[data-page="practice"] .practice-card-top{padding:10px 13px}body[data-page="practice"] .practice-question-body{padding:18px 16px;min-height:130px;font-size:15px}body[data-page="practice"] .practice-card-actions{padding:10px 12px}body[data-page="practice"] .practice-card-actions .btn{min-height:36px;font-size:10px;padding:9px 10px}body[data-page="practice"] .practice-answer-panel{padding:18px 16px}}
