/* IELTS site accents: AIL heritage navy + gold, with IELTS red (#E31837) as the official-centre accent.
   (Not loaded by the TOEFL site, which has its own theme.) */
.site{--ired:#E31837}
.util .hm:last-child{align-items:center;gap:8px}
@media(min-width:701px){.util .hm:last-child{display:flex}}
.util .hm:last-child:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ired);box-shadow:0 0 0 3px rgba(227,24,55,.25)}
.brandmark .prod b{color:var(--ired)}
.otc{display:inline-flex;align-items:center;gap:6px;margin-left:14px;border:1.5px solid var(--ired);color:var(--ired);border-radius:3px;padding:4px 9px;font:800 10.5px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.otc:before{content:"";width:6px;height:6px;background:var(--ired);border-radius:50%}
.eyebrow:before{background:linear-gradient(90deg,var(--ired) 0 40%,var(--gold) 40%)}
.hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--ired)}
.seal{position:absolute;right:-26px;top:-30px;width:118px;height:118px;border-radius:50%;background:var(--ired);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transform:rotate(10deg);box-shadow:0 12px 26px rgba(227,24,55,.35);border:3px solid #fff;outline:1.5px dashed rgba(255,255,255,.7);outline-offset:-10px;z-index:3}
.seal small{font:800 9px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;opacity:.9}
.seal b{font:700 22px/1 var(--serif);margin:3px 0}
.pcard .tag{background:var(--ired);color:#fff}
.pcard.hot{border-top:4px solid var(--ired)}
.badges span.red{border-color:var(--ired);color:var(--ired)}
.foot{border-top:4px solid var(--ired)}
.page .card{border-left:0}
.page .card.status{border-left:5px solid var(--ired)}
.sec.navy .eyebrow:before{background:linear-gradient(90deg,var(--ired) 0 40%,var(--gold) 40%)}
@media(max-width:700px){.otc{display:none}.seal{width:92px;height:92px;right:-6px}.seal b{font-size:18px}}
/* Cambridge library: book papers */
.cpages{display:flex;flex-direction:column;gap:14px;align-items:center}
.cpg{position:relative;width:100%;max-width:880px;background-repeat:repeat;border:1px solid var(--line);box-shadow:0 1px 4px rgba(0,0,0,.08);background-color:#fff}
.cpg img{display:block;width:100%;height:auto;mix-blend-mode:multiply;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}
.cnote{text-align:center;color:var(--muted);margin:10px 0 0}
.csheet h3{margin:0 0 6px}
.crow{display:flex;align-items:center;gap:10px;padding:5px 0;border-bottom:1px dashed var(--line)}
.crow .no{flex:0 0 34px;font-weight:700;text-align:right}
.crow input{flex:1;max-width:340px;padding:7px 9px;border:1px solid #888;border-radius:3px;font-size:1em;background:var(--bg)}
.crow.flagged .no{color:#E31837}
.ptabs{display:flex;gap:6px;margin:0 0 12px;position:sticky;top:-18px;background:var(--bg);padding:6px 0;z-index:2}
.ptabs button{border:1px solid var(--line);background:var(--soft);padding:6px 14px;border-radius:3px;cursor:pointer;font:inherit}
.ptabs button.on{background:#0F1E45;color:#fff;border-color:#0F1E45}
body.cam .split .left{flex-basis:60%}
.camlib .cbook{border:1px solid var(--line);border-radius:8px;margin:10px 0;padding:0 14px;background:#fff}
.camlib .cbook summary{cursor:pointer;padding:12px 0;display:flex;gap:12px;align-items:baseline}
.camlib .cbook summary span{color:var(--muted);font-size:14px}
.camlib .ctests{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;padding:0 0 14px}
.camlib .ctest{display:grid;grid-template-columns:auto 1fr auto auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--line);border-radius:6px}
.camlib .ctag{font-size:11px;font-weight:700;padding:2px 6px;border-radius:3px;background:#0F1E45;color:#fff}
.camlib .ctag.g{background:#E31837}
.gbtn{white-space:nowrap}
@media (max-width:760px){body.cam .split .left{flex:0 0 55%}.gbtn{white-space:normal}.gbtn .btn{margin:2px 0}}
.site .camlib .btn.sm:not(.gold){color:#fff}
.camlib .ctest .small{color:var(--muted)}
/* Cambridge bookshelf */
.camlib .shelf{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:18px 14px;padding:18px 16px 20px;margin:6px 0 16px;background:linear-gradient(#f6f1e6,#efe7d6);border-radius:8px;box-shadow:inset 0 -8px 0 #d9ccb0}
.camlib .book{all:unset;cursor:pointer;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;font-size:13px;color:var(--navy)}
.camlib .book .bcov{position:relative;display:block;width:100%;max-width:120px;aspect-ratio:5/7;border-radius:2px 5px 5px 2px;overflow:hidden;box-shadow:-3px 0 0 rgba(0,0,0,.18) inset,0 6px 14px rgba(15,30,69,.22);transition:transform .15s,box-shadow .15s;margin-bottom:6px;background:#fff}
.camlib .book img{width:100%;height:100%;object-fit:cover;display:block}
.camlib .book:hover .bcov{transform:translateY(-4px)}
.camlib .book.on .bcov{transform:translateY(-6px);box-shadow:0 0 0 3px var(--gold),0 12px 22px rgba(15,30,69,.3)}
.camlib .book b{font-size:14px}
.camlib .book span:not(.bcov){font-size:11.5px;color:var(--muted)}
.camlib .book:focus-visible .bcov{outline:3px solid var(--navy);outline-offset:2px}
.camlib .bdone{position:absolute;right:4px;top:4px;background:#1a7f74;color:#fff;font:700 11px/1 var(--sans,sans-serif);font-style:normal;padding:4px 6px;border-radius:10px}
.camlib .bookpanel{border:1px solid var(--line);border-radius:8px;padding:16px;background:#fff;margin-bottom:12px}
.camlib .bphead{display:flex;gap:16px;align-items:center;margin-bottom:14px}
.camlib .bphead img{width:64px;aspect-ratio:5/7;object-fit:cover;border-radius:2px 4px 4px 2px;box-shadow:0 4px 10px rgba(15,30,69,.2)}
.camlib .bphead h3{margin:0 0 4px;font-size:18px}
.camlib .bphead p{margin:0;color:var(--muted);font-size:14px}
.camlib .ctest b small{display:block;font-weight:500;font-size:11px;color:var(--muted)}
@media (max-width:600px){.camlib .shelf{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:92px;overflow-x:auto;scroll-snap-type:x proximity;padding:14px 10px 18px;-webkit-overflow-scrolling:touch}.camlib .book{scroll-snap-align:start}}
/* 2026-10-20 compliance (Kan): no IELTS trademark logo / official test centre claims. IELTS in italic serif like "Mock Test", red; IDP Approved Preparation Provider badge */
.brandmark .prod em.ie{color:var(--ired)}
.hvis .photo .idpb{position:absolute;right:-22px;top:-24px;width:190px;height:auto;filter:drop-shadow(0 8px 18px rgba(15,30,69,.25));z-index:3}
.idpb2{display:block;width:200px;height:auto;margin:6px 0 14px}
@media(max-width:700px){.hvis .photo .idpb{width:140px;right:-6px;top:-18px}}

/* 10/22 Eric V4：品牌字参照托福/LC 改无衬线，保留红+金 */
.brandmark .prod{font:800 17px/1.1 var(--sans);letter-spacing:-.01em}.brandmark .prod em{font:700 1em var(--sans);font-style:normal;color:var(--gold-d)}.brandmark .prod em.ie{font-weight:800;color:var(--ired)}
@media (max-width:600px){.brandmark .prod{font-size:14px}}
