/* AP Macro Class Test. exam.css is loaded first and gives the whole look; this file holds only what is new. */
input[type=radio]{width:19px;height:19px;min-height:19px;padding:0;accent-color:#b298f4;flex:none}button.primary{background:#7f56d9}::placeholder{color:#a5aec5;opacity:1}
.ct-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}h2[tabindex="-1"]:focus,h3[tabindex="-1"]:focus{outline:none}summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}h4{font-size:17px;margin:24px 0 10px}
.notice{display:flex;align-items:center;justify-content:space-between;gap:14px;max-width:min(1160px,calc(100% - 28px))}.notice span{min-width:0;overflow-wrap:anywhere}.notice button{flex:none;min-height:32px;padding:4px 10px;font-size:13px;color:inherit;border-color:currentColor;opacity:.85}
.status-pill.draft{color:var(--gold);border-color:#7d6a35}.section-heading>div,.exam-card>div:first-child,.exam-toolbar>div:first-child{min-width:0}.section-heading h2,.exam-card h3,.exam-toolbar h2{overflow-wrap:anywhere}
/* create screen: the two choices, the students, the subtopics with their weights and the live allocation */
.ct-choices{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;margin-top:4px}fieldset{min-width:0;margin:0 0 14px;padding:10px 14px 4px;border:1px solid var(--line);border-radius:12px}legend{padding:0 6px;font-size:15px;color:#cbd3e9}
.ct-pick{flex-direction:row;align-items:flex-start;gap:10px;margin-bottom:9px;cursor:pointer;color:var(--ink);font-size:16px}.ct-pick input{margin:3px 0 0}.ct-pick span{min-width:0}
.ct-setup>section{min-width:0}.ct-reason{color:var(--gold)}@media(min-width:851px){.ct-setup{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr)}}
.ct-topics{max-height:620px}.ct-topic-head,.ct-topic{display:grid;grid-template-columns:minmax(0,1fr) 72px 122px;gap:4px 12px;align-items:center}
.ct-topic-head{padding:0 21px 6px;font:10px/1.4 ui-monospace,monospace;letter-spacing:1px;text-transform:uppercase;color:var(--accent)}
.ct-unit-sum{margin-left:10px;font-size:13px;color:var(--muted);white-space:nowrap}
.ct-unit-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:2px 4px 8px}.ct-unit-tools button{min-height:40px;padding:6px 13px;font-size:14px}
.picker .ct-unit-tools label{flex-direction:row;align-items:center;gap:9px;margin:0 0 0 auto;padding:0;font-size:14px;color:var(--muted);cursor:default}.picker .ct-unit-tools label:hover{background:none}
.ct-unit-tools input,.ct-weight{width:72px;min-height:40px;padding:6px 8px;text-align:center}.ct-unit-tools input{flex:none}.ct-unit-tools input[aria-invalid=true]{border-color:var(--red);color:var(--red)}
.ct-unit-note{flex-basis:100%;text-align:right;color:var(--muted)}.ct-unit-note:empty{display:none}#ctRoster a{color:var(--accent)}
.ct-topic{position:relative;padding:6px 8px;border-radius:7px}.ct-topic:hover{background:var(--panel2)}.picker .ct-topic label{padding:0}.picker .ct-topic label:hover{background:none}
.picker .ct-weight-box{display:block;cursor:default}.ct-weight-box span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.ct-weight:disabled{opacity:.38}.ct-weight[aria-invalid=true]{border-color:var(--red);color:var(--red)}
.ct-alloc{font:13px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;font-variant-numeric:tabular-nums;color:var(--muted);overflow-wrap:anywhere}.ct-alloc.on{color:var(--ink)}
.ct-alloc small{display:block;font-size:11px}.ct-alloc.full{color:var(--gold)}.ct-alloc.zero{color:var(--red)}
/* the live paper: in a long paper the number grid scrolls inside itself so the question stays in place; an answer table shows its bare letters once */
.navigator{position:relative;max-height:max(110px,calc(100vh - 330px));overflow-y:auto;padding:7px 4px 4px;margin:-7px -4px -4px}.ct-letters-only .option{justify-content:center}.question-text td:first-child{font-weight:normal}.question-text td.ct-answer-letter{font-weight:bold}
.exam-layout>*{min-width:0}.navigator button.answered:before{content:'●';position:absolute;left:3px;top:-6px;font-size:9px;line-height:1.6;color:var(--green)}.navigator button.current:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.ct-clock-note{font:11px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--red);text-transform:uppercase;letter-spacing:.7px}.ct-lost{color:var(--red)}
/* test screen: the summary, the confirm panels, the results */
.ct-desk>section{min-width:0}.ct-facts{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6px 18px;margin:0 0 14px}.ct-facts dt{color:var(--muted);font-size:15px}.ct-facts dd{margin:0;overflow-wrap:anywhere}
@media(min-width:1000px){.ct-desk{display:grid;grid-template-columns:350px minmax(0,1fr);gap:20px;align-items:start}.ct-facts{grid-template-columns:1fr;gap:0}.ct-facts dd{margin-bottom:10px}#ctSummary .table-wrap{max-height:440px}#ctSummary th,#ctSummary td{padding:9px 6px}#ctSummary td.ct-wrap{min-width:0}}
#ctSummary summary{cursor:pointer;color:#dacbff;padding:6px 0;font-size:15px}#ctTeacherConfirm{margin:16px 0}#ctTeacherHint{margin-bottom:0}
td.ct-wrap{white-space:normal;min-width:150px;overflow-wrap:anywhere}td.ct-stem-cell{min-width:230px;font-weight:normal}.ct-long{max-height:640px}
.ct-meter{display:inline-block;vertical-align:middle;width:84px;height:8px;margin-right:9px;border:1px solid var(--line);border-radius:5px;background:#0f192c;overflow:hidden}.ct-meter i{display:block;height:100%;background:var(--green)}
/* the student's review after the end */
.ct-review{list-style:none;margin:0;padding:0}.ct-review-item{padding:20px 0;border-top:1px solid var(--line)}.ct-review-item:first-child{border-top:0;padding-top:4px}.ct-review-item:last-child{padding-bottom:0}
.ct-review-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.ct-review-head h4{margin:0;color:var(--accent)}
.ct-mark{flex:none;border:1px solid var(--line);border-radius:30px;padding:2px 10px;font:11px/1.6 ui-monospace,monospace;text-transform:uppercase;letter-spacing:.7px;color:var(--gold)}.right .ct-mark{color:var(--green);border-color:#2b765f}.wrong .ct-mark{color:var(--red);border-color:#975261}
.ct-review .question-text{font-size:18px;margin-bottom:14px}.ct-review svg.ct-svg{box-sizing:border-box;padding:12px;background:#fff;color:#171b24;border-radius:6px}
.ct-review-options{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:7px}.ct-review-options li{display:grid;grid-template-columns:38px minmax(0,1fr);padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#101b30;overflow-wrap:anywhere}
.ct-review-options .ct-letter{font-family:ui-monospace,monospace;color:#d6c8f5}.ct-review-options li.ct-right{border-color:#357762;background:#143a33}.ct-review-options li.ct-wrong{border-color:#975261;background:#3d2531}
.ct-review tr.ct-right td{background:#cdf2e1}.ct-review tr.ct-wrong td{background:#fbd9dc}
.ct-answer-line{margin-bottom:8px;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}.ct-exp{margin:0;font-size:16px;color:#cbd3e9;white-space:pre-line;overflow-wrap:anywhere}
@media(max-width:850px){.ct-topics{max-height:480px}.navigator{max-height:164px}}
@media(max-width:540px){
.ct-choices{grid-template-columns:1fr}.ct-topic-head{display:none}.ct-unit-note{text-align:left}
.picker .ct-topic>label:first-child,.ct-pick{min-height:40px;align-items:center}.ct-pick input{margin:0}.identity button,.notice button{min-height:40px}#ctBack{display:inline-block;padding:10px 0}#ctSummary summary{padding:10px 0}
/* a subtopic on a phone: its name on one line, then its weight and what it gets */
.ct-topic{grid-template-columns:auto minmax(0,1fr);gap:7px 14px;padding:9px 6px}.ct-topic>label:first-child{grid-column:1/-1}
.picker .ct-weight-box{display:flex;flex-direction:row;align-items:center;gap:9px;padding-left:29px;font-size:13px;color:var(--muted)}.ct-weight-box span{position:static;width:auto;height:auto;clip-path:none}
.picker .ct-unit-tools label{margin-left:0;width:100%;justify-content:space-between}.ct-unit-sum{display:block;margin:2px 0 0 18px;white-space:normal}.ct-review .question-text{font-size:17px}
/* tables on a phone: the progress table and the question analysis become one block for each row */
.ct-meter{display:none}td.ct-wrap{min-width:0}.ct-progress,.ct-progress tbody{display:block}.ct-progress thead{display:none}.ct-progress tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid var(--line)}
.ct-progress td{padding:0;border:0;min-width:0;white-space:normal;overflow-wrap:anywhere}.ct-progress td:nth-child(n+3){font-size:13px;color:var(--muted)}.ct-progress td:nth-child(2n){text-align:right}.ct-progress td:nth-child(5){grid-column:1/-1}.ct-progress td:empty{display:none}
.ct-progress td:nth-child(3):before{content:'Answered: '}.ct-progress td:nth-child(4):before{content:'Result: '}.ct-progress td:nth-child(5):before{content:'Submitted: '}
#ctAnalysis,#ctAnalysis tbody{display:block}#ctAnalysis thead{display:none}#ctAnalysis tr{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:3px 10px;padding:11px 0;border-bottom:1px solid var(--line)}#ctAnalysis.ct-own tr{grid-template-columns:minmax(0,1fr) auto}
#ctAnalysis td{padding:0;border:0;min-width:0;white-space:normal}#ctAnalysis .ct-n{grid-row:1/4}#ctAnalysis .ct-stem-cell,#ctAnalysis .ct-spec{grid-column:2/-1}#ctAnalysis.ct-own .ct-stem-cell,#ctAnalysis.ct-own .ct-spec{grid-column:1/-1}
#ctAnalysis .ct-spec{font-size:13px;color:var(--muted)}#ctAnalysis .ct-tried,#ctAnalysis .ct-share{font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}#ctAnalysis .ct-tried:before{content:'Answered '}#ctAnalysis .ct-share:before{content:'Correct '}
}
