.cma-contest,.cma-contest *{box-sizing:border-box}
.cma-contest{position:relative;width:100%;padding:60px max(20px,4vw);background:#f3f7fb;color:#173c4a;font:16px/1.65 'Red Hat Text',system-ui,sans-serif;text-align:left}
.cma-contest h2{font-size:clamp(26px,3vw,38px);font-weight:700;margin:0 0 16px}
.cma-contest p{max-width:none;margin:12px 0;padding:0;line-height:1.65}
.cma-contest-notice{background:#e4f0ec;border-left:4px solid #087c72;padding:14px 18px!important;border-radius:8px}
.cma-contest-toc{margin:22px 0 6px;font-weight:700;color:#173c4a}
.cma-contest-toc a{color:#125f56;font-weight:700;margin:0 4px;white-space:nowrap}
.cma-contest-toc a:hover{color:#087c72}
.cma-contest-block{margin-top:42px;scroll-margin-top:20px}
.cma-contest-block>h3{font-size:24px;font-weight:700;border-bottom:3px solid #087c72;padding-bottom:10px;margin:0}
.cma-contest-count{font-size:14px;font-weight:600;color:#526977;margin-left:12px}
.cma-prob{background:#fff;border:1px solid #dce5ee;border-radius:14px;margin-top:14px;box-shadow:0 6px 22px #173c4a10;overflow:hidden;overflow-wrap:anywhere}
.cma-prob>summary{display:flex;gap:12px;align-items:baseline;padding:16px 20px;cursor:pointer;font-weight:700;color:#173c4a;list-style:none}
.cma-prob>summary::-webkit-details-marker{display:none}
.cma-prob>summary::before{content:'+';color:#087c72;font-size:20px;font-weight:700;line-height:1}
.cma-prob[open]>summary::before{content:'\2013'}
.cma-prob-num{flex:none;background:#087c72;color:#fff;border-radius:8px;padding:3px 12px;font-size:14px;white-space:nowrap}
.cma-prob-body{padding:2px 20px 20px}
.cma-prob-body .cma-contest-topic{font-size:13px;color:#526977;margin:0 0 6px}
.cma-prob-body details{border-top:1px solid #dce5ee;padding:12px 0}
.cma-prob-body summary{cursor:pointer;font-weight:700;color:#125f56}
.cma-prob>summary:focus-visible,.cma-prob-body summary:focus-visible,.cma-contest-toc a:focus-visible,.cma-contest-banner a:focus-visible{outline:3px solid #b36300;outline-offset:4px}
.cma-contest-banner{position:relative;z-index:1;padding:16px 24px;background:#173c4a;text-align:center}
.cma-contest-banner a{position:static;background:none;color:#fff;font:700 16px/1.5 system-ui;text-transform:none;letter-spacing:0;padding:0}

/* Guided contest explanations — scoped to preserve the rest of the website. */
.cma-contest-inner{max-width:1120px;margin:0 auto}
.cma-contest strong,.cma-contest b{font-weight:700}
.cma-contest h3,.cma-contest h4{line-height:1.4}
.cma-contest .cma-contest-eyebrow{font-size:12px;font-weight:700;letter-spacing:.08em;color:#125f56;margin:0 0 12px}
.cma-study-guide{padding:22px 26px;background:#fff;border:1px solid #dce5ee;border-radius:14px;margin:24px 0 16px}
.cma-study-guide h3{font-size:19px;font-weight:700;margin:0 0 12px}
.cma-study-guide ol{list-style:decimal outside;padding-left:1.5em;margin:0}
.cma-study-guide li{padding-left:5px;margin:8px 0}
.cma-glossary{border:1px solid #ccdce3;border-radius:10px;padding:14px 20px;background:#edf4f7}
.cma-glossary summary{font-weight:700;color:#125f56;cursor:pointer}
.cma-glossary dl{margin-top:16px}
.cma-glossary dt{font-weight:700;margin-top:12px}
.cma-glossary dd{margin:3px 0 12px}
.cma-contest-toc{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:24px 0 8px}
.cma-contest-toc a{display:inline-flex;gap:5px;align-items:center;margin:0;padding:9px 14px;background:#e0eeea;border:1px solid #c4ddd4;border-radius:8px;text-transform:none;letter-spacing:0;font-size:15px;line-height:1.5;color:#125f56}
.cma-contest-toc a:hover{background:#d0e4dd;color:#0d5048}
.cma-contest-toc>span{margin-right:4px}
.cma-prob>summary{align-items:center;line-height:1.5}
.cma-prob>summary>span:last-child{min-width:0}
.cma-prob[open]>summary{background:#eaf3f1;border-bottom:1px solid #dce5ee}
.cma-prob-body{padding:8px 24px 22px}
.cma-prob-body .cma-question{font-size:18px;line-height:1.65;font-weight:600;margin:18px 0 12px}
.cma-prob-body .cma-choices{background:#f3f6f9;border-radius:8px;padding:12px 16px;margin-bottom:20px;font-size:15px;line-height:1.8}
.cma-prob-body>details>summary{padding:5px 0;line-height:1.6}
.cma-prob-body h4{font-size:16px;font-weight:700;color:#173c4a;margin:20px 0 6px}
.cma-prob-body h4+p{margin-top:6px}
.cma-prob-body .cma-think{border-left:4px solid #278b9c;background:#eef7fa;padding:14px 18px;margin:18px 0 4px;border-radius:0 8px 8px 0}
.cma-prob-body .cma-think h4,.cma-prob-body .cma-check h4,.cma-prob-body .cma-mistake h4,.cma-prob-body .cma-takeaway h4{margin-top:0}
.cma-prob-body .cma-think p,.cma-prob-body .cma-check p,.cma-prob-body .cma-mistake p,.cma-prob-body .cma-takeaway p{margin-bottom:0}
.cma-prob-body .cma-hint-intro{font-size:14px;color:#526977}
.cma-prob-body .cma-hint{padding:12px 16px;border:1px solid #dce5ee;border-radius:8px;background:#f7f9fc;margin:10px 0}
.cma-hint summary{font-size:15px}
.cma-steps{list-style:decimal outside;margin:12px 0 18px;padding-left:1.8em}
.cma-steps>li{padding:10px 0 10px 8px;border-bottom:1px solid #e5ecf0}
.cma-steps>li::marker{font-weight:700;color:#125f56}
.cma-steps>li:last-child{border-bottom:0}
.cma-prob-body .cma-steps p{margin:6px 0 0}
.cma-prob-body .cma-answer{padding:15px 18px;background:#125f56;color:white;border-radius:9px;font-size:18px;margin:20px 0}
.cma-check,.cma-mistake,.cma-takeaway{padding:16px 18px;margin:12px 0;border-radius:9px;border:1px solid transparent}
.cma-check{background:#eaf5ef;border-color:#c8e2d3}
.cma-mistake{background:#fff5e8;border-color:#eddbc2}
.cma-takeaway{background:#eef3fa;border-color:#d4e0ee}
.cma-diagram{max-width:440px;width:100%;margin:18px auto;padding:12px;border:1px solid #dce5ee;border-radius:10px;background:#fff}
.cma-diagram svg{display:block;position:static;width:100%;height:auto;max-height:310px}
.cma-diagram figcaption{font-size:14px;line-height:1.6;color:#526977;padding:4px 8px 6px}
.cma-table-wrap{max-width:100%;overflow-x:auto;margin:18px 0;border:1px solid #dce5ee;border-radius:8px}
.cma-table-wrap table{border-collapse:collapse;width:100%;min-width:340px;font-size:15px;text-align:left}
.cma-table-wrap caption{font-weight:700;text-align:left;padding:12px 14px;background:#f0f5f8;color:#173c4a}
.cma-table-wrap th,.cma-table-wrap td{padding:10px 14px;border-top:1px solid #dce5ee;vertical-align:top;line-height:1.6}
.cma-table-wrap th{font-weight:700}
.cma-table-wrap thead{background:#eaf3f1}
.cma-table-wrap tbody tr:nth-child(even){background:#f8fafc}
.cma-gap-model{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;margin:18px 0;padding:14px 8px;border:1px solid #dce5ee;border-radius:8px}
.cma-gap-model span{border:1px dashed #278b9c;padding:5px 7px;border-radius:5px;font-size:13px;background:#eef7fa}
.cma-contest .cma-back-to-sets{display:inline-block;position:static;margin:18px 0 0;padding:8px 0;background:none;color:#125f56;font-size:14px;font-weight:700;text-transform:none;letter-spacing:0;text-decoration:underline;text-underline-offset:3px}
.cma-contest summary:focus-visible,.cma-back-to-sets:focus-visible{outline:3px solid #b36300;outline-offset:4px;border-radius:3px}
.cma-contest-block,.cma-prob,#cma-contest-heading{scroll-margin-top:20px}
@media(max-width:600px){
  .cma-contest{padding:36px 12px}
  .cma-study-guide{padding:18px}
  .cma-prob>summary{padding:14px 12px;gap:8px;align-items:flex-start}
  .cma-prob>summary::before{margin-top:6px}
  .cma-prob-num{padding:4px 7px;font-size:12px;margin-top:1px}
  .cma-prob>summary>span:last-child{font-size:14px}
  .cma-prob-body{padding:6px 14px 16px}
  .cma-prob-body .cma-question{font-size:17px}
  .cma-prob-body .cma-answer{font-size:17px}
  .cma-steps{padding-left:1.4em}
  .cma-steps>li{padding-left:4px}
  .cma-check,.cma-mistake,.cma-takeaway{padding:14px}
  .cma-contest-toc a{padding:8px 10px;font-size:14px}
  .cma-contest-count{display:block;margin:4px 0 0}
}
