/* 학력평가 회차 페이지(/exam/<회차>/)와 자료실 모의고사 칸. T1 토큰(--t1-ink/--t1-paper/--t1-surface/--card-bg)만 쓴다. */
.ex-jump{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
.ex-tabs{display:flex;gap:0;border-bottom:1px solid var(--t1-ink);margin:0 0 24px;overflow-x:auto}
.ex-tabs [role=tab]{min-height:48px;min-width:96px;padding:0 24px;background:var(--t1-paper);color:var(--t1-ink);border:1px solid var(--t1-ink);border-bottom:0;margin-right:-1px;font:600 16px/1 Pretendard,sans-serif;cursor:pointer;border-radius:0}
.ex-tabs [role=tab][aria-selected=true]{background:var(--t1-ink);color:var(--t1-paper)}
.ex-gh{margin:0 0 8px;font-size:22px;line-height:32px}
.ex-scope{margin:0 0 20px;font-size:15px;line-height:26px;color:var(--ink-2,var(--t1-ink))}
.ex-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ex-card{background:var(--card-bg);padding:24px;display:flex;flex-direction:column;gap:12px;border-radius:4px}
.ex-card-h{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ex-card h3,.ex-bundle h3{margin:0;font-size:19px;line-height:28px}
.ex-desc,.ex-note,.ex-count{margin:0;font-size:15px;line-height:26px}
.ex-note{font-size:14px;line-height:24px;color:var(--ink-2,var(--t1-ink))}
.ex-chip{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid var(--t1-ink);background:var(--t1-paper);color:var(--t1-ink);font:600 13px/1 Pretendard,sans-serif;white-space:nowrap;border-radius:0}
.ex-chip.ready{background:var(--t1-ink);color:var(--t1-paper)}
.ex-dl{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0}
.ex-dl div{display:flex;flex-direction:column}
.ex-dl dt{font-size:13px;line-height:20px;color:var(--ink-2,var(--t1-ink))}
.ex-dl dd{margin:0;font:700 20px/28px Pretendard,sans-serif}
.ex-buys{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ex-buy{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:12px;padding-top:8px;border-top:1px solid var(--t1-surface)}
.ex-fmt{font-size:15px;line-height:24px}
.ex-price{font:700 16px/24px Pretendard,sans-serif;white-space:nowrap}
.ex-price.muted{font-weight:400;font-size:14px}
.ex-buy .t1-btn{min-height:40px;padding:0 18px}
.ex-bundle{margin-top:16px;background:var(--card-bg);padding:24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:16px;align-items:center;border-radius:4px}
.ex-bundle .ex-buy{border-top:0;padding-top:0}
.ex-status{min-height:24px;margin:12px 0 0;font-size:14px}
.ex-made h2{scroll-margin-top:96px}
.ex-sub{margin:24px 0 12px;font-size:18px;line-height:28px}
.ex-table-wrap{overflow-x:auto}
.ex-table{width:100%;border-collapse:collapse;font-size:14px;line-height:22px;min-width:560px}
.ex-table th,.ex-table td{border-top:1px solid var(--t1-surface);padding:12px 8px;text-align:left;vertical-align:top}
.ex-table thead th{border-top:1px solid var(--t1-ink);font-weight:700}
.ex-table td .ex-chip{margin-top:6px}
.ex-what{margin:16px 0 0;padding-left:20px;font-size:15px;line-height:26px}
.ex-what li{margin:4px 0}
.ex-how{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ex-how li{display:flex;gap:16px;background:var(--card-bg);padding:24px;border-radius:4px}
.ex-how h4{margin:0 0 6px;font-size:17px;line-height:26px}
.ex-how p{margin:0;font-size:15px;line-height:26px}
.ex-step{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--t1-ink);color:var(--t1-paper);font:700 15px/1 Pretendard,sans-serif}
.ex-faq{background:var(--card-bg);padding:16px 24px;margin:0 0 8px;border-radius:4px}
.ex-faq summary{cursor:pointer;font-weight:600;min-height:32px;display:flex;align-items:center}
.ex-faq p{margin:8px 0 0;font-size:15px;line-height:26px}
/* 자료실의 모의고사 칸 */
.lib-exam{margin:0 0 32px}
.lib-exam-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;align-items:center}
.lib-exam-filters span{font-size:14px;margin-right:4px}
.lib-exam-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}
.lib-exam-list a{display:flex;flex-direction:column;gap:8px;height:100%;background:var(--card-bg);padding:24px;color:var(--t1-ink);text-decoration:none;border-radius:4px}
.lib-exam-list a:hover h3{text-decoration:underline;text-underline-offset:4px}
.lib-exam-list h3{margin:0;font-size:18px;line-height:26px}
.lib-exam-list p{margin:0;font-size:14px;line-height:24px}
.lib-exam-tags{display:flex;flex-wrap:wrap;gap:6px}
.lib-exam-banner{margin:8px 0 0;font-size:15px;line-height:26px}
.lib-exam-banner a{color:var(--t1-ink);text-underline-offset:4px}
@media (max-width:760px){
 .ex-cards,.ex-how,.lib-exam-list{grid-template-columns:minmax(0,1fr)}
 .ex-bundle{grid-template-columns:minmax(0,1fr)}
 .ex-buy{grid-template-columns:minmax(0,1fr) auto;row-gap:8px}
 .ex-buy .ex-chip{justify-self:start}
 .ex-tabs [role=tab]{flex:1;min-width:0;padding:0 8px}
 .ex-card,.ex-how li,.ex-bundle{padding:20px 16px}
}
.lib-exam-h{margin:16px 0 12px;font-size:18px;line-height:26px}
.lib-exam-banner{margin:4px 0 0}
.lib-exam-list{align-items:start}
.lib-exam-list>li{min-height:0;height:auto;margin:0;padding:0;background:none}
.lib-exam-count{margin:0 0 12px;font-size:14px}
.ex-other{display:inline-flex;align-items:center;gap:6px;font-size:14px;margin-left:8px}
.ex-other a{color:var(--t1-ink);text-underline-offset:4px}
.ex-syntax-body{padding:0 0 48px;overflow-x:auto}
.ex-syntax-body{box-sizing:border-box;width:100%;max-width:1440px;margin:0 auto;padding:0 48px 48px}
@media (max-width:760px){.ex-syntax-body{padding:0 16px 32px}.ex-other{margin-left:0}}
/* 학년 페이지 탭(구문분석·변형 문제·그룹형): 교과서 과 페이지의 .analysis-tabs·.analysis-items 스타일을 그대로 쓰고, 여기서는 자리와 그룹형 세트 카드만 정한다. */
.ex-atabs{--tab-n:3;margin:16px 0 0}
.ex-atabs button[role=tab][aria-selected=false]{background:var(--t1-paper,#fff)}
.ex-tab-soon{margin-left:8px;font-size:12px;font-weight:600;opacity:.7}
.ex-items-panel{padding:16px 0 48px}
.ex-pending{margin:0;padding:24px;font-size:15px;line-height:26px}
.ex-group-total{margin:0 0 16px;font-size:14px;line-height:22px;font-weight:700;color:#24496a}
.ex-group-shelf .gp-set-name{font-weight:700}
.ex-group-detail{background:#f1f3f5}
.ex-group-card{background:#fff;border:1px solid #e1e4e8;border-radius:12px;box-shadow:0 1px 8px rgba(23,43,58,.08);padding:24px;display:flex;flex-direction:column;gap:16px}
.ex-group-title{margin:0;font-size:20px;line-height:30px}
.ex-group-meta,.ex-group-note{margin:0;font-size:15px;line-height:26px}
.ex-group-note{font-size:13px;line-height:22px;color:#657687}
.ex-group-types{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px}
.ex-group-types li{display:inline-flex;align-items:center;gap:6px}
.ex-group-no{font-size:13px;color:#657687}
.ex-group-buy{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ex-group-buy .t1-btn[disabled]{opacity:.45;cursor:not-allowed}
@media (max-width:760px){.ex-items-panel{padding:12px 0 32px}.ex-group-card{padding:20px 16px}}
@media screen and (min-width:1101px){.ex-items-panel .ex-group-total{padding:0 24px}}
