/* Exam sheet styling – keeps the pages looking like the Cambridge PDF. */
  /* ---------- paper pages ---------- */
#papers{width:850px;margin:0 auto}
.page{font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.35;color:var(--ink);position:relative;width:850px;min-height:1100px;background:#fff;margin:18px 0;padding:85px 100px 120px;box-shadow:0 1px 2px rgba(15,23,42,.1),0 14px 34px rgba(15,23,42,.22)}
.pno{position:absolute;top:48px;left:0;right:0;text-align:center;font-weight:700}
.foot{position:absolute;left:100px;right:100px;bottom:42px;display:flex;justify-content:space-between;font-size:11.5px}
.foot .to{font-size:14px;font-weight:700;margin-bottom:-4px}
.foot span:nth-child(2){margin-left:-30px}

.qhead{display:flex;gap:0}
.qhead .qn{width:30px;font-weight:700}
.sublab{margin-left:30px;font-weight:700;margin-bottom:6px}
.stem{margin-left:60px;margin-top:14px}
.stem.lab{position:relative}
.stem.lab .l{position:absolute;left:-30px;font-weight:700}
.opts{margin-left:60px;margin-top:6px}
.orow{display:flex;align-items:center;height:44px;cursor:pointer;user-select:none}
.orow .L{width:30px;font-weight:700}
.orow .T{width:calc(var(--bx) - 30px)}
.orow .box{width:31px;height:31px;border:1px solid #333;border-radius:2px;position:relative;font-size:27px;line-height:29px;text-align:center;color:#111;font-family:"Segoe UI Symbol","Segoe UI",Arial,sans-serif}
.orow:hover .box{background:#eef0ff}
.marks{text-align:right;margin-top:-4px;height:22px;display:flex;justify-content:flex-end;align-items:center;gap:14px}
.total{text-align:right;margin-top:10px}
.fb{margin-left:60px;font-weight:700;color:var(--bad);font-size:13.5px;min-height:0}
.ex{font-weight:900;font-size:17px}
.ex.ok{color:var(--ok)} .ex.no{color:var(--bad)}
.locked .orow{cursor:default}
.locked .orow:hover .box{background:none}
.box.ok{border:2.5px solid var(--ok);color:var(--ok)}
.box.no{border:2.5px solid var(--bad);color:var(--bad)}
.box.key{border:2.5px dashed var(--ok);color:var(--ok);background:#e6f7ec}
.orow.rt .T{color:var(--ok);font-weight:700}
.orow.wr .T{color:var(--bad);text-decoration:line-through}

/* ---------- cover ---------- */
.cover{padding:0 110px}
.logo{position:absolute;top:34px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:8px;color:#555}
.logo svg{width:38px;height:42px}
.logo .t1{font-size:22px;line-height:22px;font-weight:600}
.logo .t2{font-size:20px;line-height:20px;font-weight:400}
.ctitle{position:absolute;top:130px;left:110px;font-size:26px;font-weight:700;color:#555}
.ctitle sup{font-size:12px}
.frow{position:absolute;left:110px;right:110px;display:flex;align-items:center}
.frow .lbl{width:93px;font-size:14px;line-height:16px;color:#555}
.cname{top:183px;height:45px}
.cname input{flex:1;height:45px;border:1px solid #444;padding:0 12px;font:inherit;font-size:18px;color:#111;border-radius:0}
.cnum{top:238px}
.cells{display:flex;border:1px solid #444;height:47px}
.cells i{width:32px;border-right:1px solid #444} .cells i:last-child{border:0}
.cnum .gap{flex:1}
.cnum .lbl2{width:90px;font-size:14px;line-height:16px;color:#555}
.hr{position:absolute;left:110px;right:110px;border-top:1px solid #444}
.bar-code{position:absolute;left:66px;top:292px;width:34px;height:136px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2234%22%20height%3D%22136%22%20viewBox%3D%220%200%2034%20136%22%3E%3Crect%20x%3D%220%22%20y%3D%220%22%20width%3D%2234%22%20height%3D%223%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%225%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%228%22%20width%3D%2234%22%20height%3D%224%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2214%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2217%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2221%22%20width%3D%2234%22%20height%3D%224%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2227%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2230%22%20width%3D%2234%22%20height%3D%223%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2235%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2239%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2242%22%20width%3D%2234%22%20height%3D%224%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2248%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2252%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2255%22%20width%3D%2234%22%20height%3D%223%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2260%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2263%22%20width%3D%2234%22%20height%3D%224%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2269%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2273%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2276%22%20width%3D%2234%22%20height%3D%223%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2281%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2285%22%20width%3D%2234%22%20height%3D%224%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2291%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2294%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%2298%22%20width%3D%2234%22%20height%3D%223%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22103%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22106%22%20width%3D%2234%22%20height%3D%224%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22112%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22116%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22119%22%20width%3D%2234%22%20height%3D%223%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22124%22%20width%3D%2234%22%20height%3D%222%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22128%22%20width%3D%2234%22%20height%3D%221%22%20fill%3D%22%23111%22/%3E%3Crect%20x%3D%220%22%20y%3D%22131%22%20width%3D%2234%22%20height%3D%224%22%20fill%3D%22%23111%22/%3E%3C/svg%3E") no-repeat}
.crow{position:absolute;left:110px;right:110px;display:flex;justify-content:space-between;font-size:14px;color:#555}
.cblock{position:absolute;left:110px;right:110px;font-size:14px;color:#555}
.cblock ul{margin:2px 0 0;padding-left:28px} .cblock li{line-height:17px}
.cblock h4{margin:0;font-size:14px;letter-spacing:.2px;color:#555}
.startbox{position:absolute;left:110px;right:110px;top:720px;display:flex;gap:14px;align-items:center;font-size:15px}
.startbox{font-family:var(--font);font-size:15.5px;color:var(--muted);line-height:1.3}
#coverScore{position:absolute;left:110px;right:110px;top:712px;border:3px solid var(--bad);color:var(--bad);border-radius:6px;padding:12px 18px;font-weight:900;font-size:21px;line-height:1.35}
#coverScore small{display:block;font-size:13.5px;font-weight:700}

/* ---------- illustrations ---------- */
.phone{position:relative;width:444px;height:330px;margin:28px 0 0 103px;border:2px solid #555;border-bottom:0;border-radius:30px 30px 0 0;background:#fff;overflow:hidden}
.phone .spk{position:absolute;left:200px;top:19px;width:30px;height:9px;border:1.5px solid #555;border-radius:5px;background:#bbb}
.phone .d1,.phone .d2{position:absolute;top:20px;width:8px;height:8px;border:1.5px solid #555;border-radius:50%}
.phone .d1{left:238px}.phone .d2{left:252px}
.phone .cam{position:absolute;right:50px;top:18px;width:12px;height:12px;border:1.5px solid #555;border-radius:50%}
.phone .scr{position:absolute;left:10px;right:-4px;top:69px;bottom:0;background:linear-gradient(105deg,#e9e9ec 0 45%,#aeb0b6 46% 100%);border:1px solid #888}
.phone .st{position:absolute;right:8px;top:4px;display:flex;gap:10px;color:#fff;font-size:13px}
.bubble{position:absolute;left:34px;top:27px;width:356px;background:#fff;border:2px solid #333;border-radius:14px;padding:16px 26px 12px;box-shadow:3px 3px 4px rgba(0,0,0,.4);font-size:14.5px;line-height:17.5px}
.bubble:before{content:"";position:absolute;left:-14px;bottom:2px;border-style:solid;border-width:0 14px 10px 0;border-color:transparent #333 transparent transparent}
.bubble p{margin:0 0 14px} .bubble p:last-child{margin:0}

.mail{width:568px;margin:0 0 0 41px;border:1px solid #666;background:#dcdde0}
.mail .tb{height:22px;background:linear-gradient(90deg,#4c4c50,#cfd0d3);position:relative;border-bottom:1px solid #666}
.mail .tb i{position:absolute;top:3px;width:13px;height:13px;background:#eee;border:1px solid #444;font-style:normal;font-size:10px;line-height:11px;text-align:center}
.mail .hd{height:60px;position:relative}
.mail .ibtn{position:absolute;left:7px;top:10px;width:38px;height:50px;border:1px solid #888;border-radius:4px;background:#e9e9ec}
.mail .ibtn:after{content:"";position:absolute;left:11px;top:11px;width:15px;height:9px;border:2px solid #444;background:#ccc}
.mail .tab{position:absolute;left:52px;top:6px;width:36px;height:15px;background:#d3d4d8;border:1px solid #999}
.mail .f1,.mail .f2{position:absolute;left:88px;right:3px;height:22px;background:#fff;border:1px solid #999;padding:2px 7px;font-size:14.5px}
.mail .f1{top:6px}.mail .f2{top:30px}
.mail .bd{position:relative;background:#fff;margin:0 0 0 3px;border:1px solid #999;display:flex;min-height:114px}
.mail.long .bd{min-height:380px}
.mail .tx{padding:11px 16px 8px;font-size:14.5px;line-height:17.6px;flex:1;overflow:hidden}
.mail .tx p{margin:0 0 17px} .mail .tx p:last-child{margin:0}
.mail.long .tx p:nth-last-child(2){margin-bottom:28px}
.mail .vs{width:16px;background:#e8e8ea;border-left:1px solid #bbb;position:relative;font-size:8px;color:#444;text-align:center;min-height:100%}
.mail .vs b{position:absolute;left:1px;right:1px;top:16px;background:#c8c9cc;border:1px solid #aaa}
.mail .vs span{position:absolute;left:0;right:0}
.mail .hs{margin:0 0 3px 3px;height:16px;background:#e8e8ea;border:1px solid #bbb;position:relative;font-size:8px;color:#444}
.mail .hs b{position:absolute;top:1px;bottom:1px;left:16px;width:264px;background:#c8c9cc;border:1px solid #aaa}
.mail .hs span{position:absolute;top:2px}

.notebook{position:relative;width:482px;min-height:268px;margin:40px 0 0 69px;border:1.5px solid #333;background:#fff;padding:80px 20px 24px 40px;box-shadow:2px 2px 0 #fff,3px 3px 0 #333,5px 5px 0 #fff,6px 6px 0 #333;font-size:14.5px;line-height:17.6px}
.notebook .rings{position:absolute;left:14px;right:14px;top:-14px;height:30px;display:flex;justify-content:space-between}
.notebook .rings i{width:11px;height:30px;border:1.5px solid #333;border-radius:6px;background:#fff}
.notebook p{margin:0 0 17px}

@page{size:A4;margin:0}
@media print{
  html,body{background:#fff;padding:0;margin:0}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .noprint,.site-header,.site-footer,#bar,.startbox{display:none!important}
  #papers{zoom:.934!important;width:850px;margin:0}
  .page{margin:0;box-shadow:none;height:1100px;min-height:0;overflow:hidden;break-after:page;page-break-after:always}
  #exam .page:last-child{break-after:auto;page-break-after:auto}
}

#papers{margin-top:8px}
.q{scroll-margin-top:230px}
.orow:focus-visible{outline:3px solid #1D4ED8;outline-offset:2px;border-radius:6px}
