/* Canam Practice Tests: exam engine styles (works with site.css brand tokens) */
.ex{max-width:860px;margin:0 auto}
.ex-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 12px 34px rgba(27,58,99,.07)}
.ex-chips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 4px}
.ex-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:22px}
.ex-mode{text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;cursor:pointer;font:inherit;color:inherit;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,box-shadow .15s,transform .15s}
.ex-mode:hover:not(:disabled){border-color:var(--blue);box-shadow:0 12px 30px rgba(27,58,99,.1);transform:translateY(-2px)}
.ex-mode:disabled{opacity:.55;cursor:not-allowed}
.ex-mode b{font-family:var(--fh);color:var(--navy);font-size:18px}
.ex-mode span{color:var(--muted);font-size:15px}
.ex-mode.primary{background:var(--navy);border-color:var(--navy)}.ex-mode.primary b{color:#fff}.ex-mode.primary span{color:#c9dcef}
.ex-topics{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.ex-topics button{font:inherit;font-size:15px;font-weight:600;border:1px solid #c9d6e4;background:#fff;color:var(--navy);border-radius:999px;padding:8px 14px;cursor:pointer}
.ex-topics button:hover{border-color:var(--blue);background:var(--panel)}
.ex-best{margin-top:16px;color:var(--muted);font-size:15px}
.ex-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-family:var(--fh);font-weight:700;font-size:13px;color:var(--muted);letter-spacing:.04em}
.ex-bar{height:8px;background:var(--panel);border-radius:99px;overflow:hidden;margin:10px 0 20px}
.ex-bar i{display:block;height:100%;background:var(--blue);border-radius:99px;transition:width .25s}
.ex-tag{display:inline-block;background:var(--panel);color:var(--navy);border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:700;font-family:var(--fh);letter-spacing:.04em;margin-bottom:10px}
.ex-q{font-family:var(--fh);color:var(--navy);font-size:clamp(19px,2.6vw,23px);font-weight:700;line-height:1.35;margin:0 0 18px}
.ex-opts{display:flex;flex-direction:column;gap:10px}
.ex-opt{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;align-items:center;text-align:left;font:inherit;font-size:17px;color:var(--ink);background:#fff;border:2px solid var(--line);border-radius:12px;padding:12px 14px;cursor:pointer;min-height:56px}
.ex-opt:hover:not(:disabled){border-color:var(--blue);background:#fbfdff}
.ex-opt .l{width:34px;height:34px;border-radius:50%;border:2px solid #c9d6e4;display:grid;place-items:center;font-family:var(--fh);font-weight:800;font-size:14px;color:var(--navy)}
.ex-opt.sel{border-color:var(--blue);background:var(--panel)}.ex-opt.sel .l{background:var(--blue);border-color:var(--blue);color:#fff}
.ex-opt.ok{border-color:var(--green);background:#e6f4ec}.ex-opt.ok .l{background:var(--green);border-color:var(--green);color:#fff}
.ex-opt.no{border-color:#b5452f;background:#fbeae6}.ex-opt.no .l{background:#b5452f;border-color:#b5452f;color:#fff}
.ex-opt:disabled{cursor:default}
.ex-why{margin-top:16px;border-left:4px solid var(--blue);background:var(--panel);padding:12px 16px;border-radius:0 12px 12px 0;font-size:16px}
.ex-why b{font-family:var(--fh);color:var(--navy)}
.ex-why.good{border-color:var(--green)}.ex-why.bad{border-color:#b5452f}
.ex-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px;flex-wrap:wrap}
.btn.line{background:#fff;color:var(--navy)!important;border-color:#c9d6e4}.btn.line:hover{background:var(--panel);border-color:var(--blue)}
.ex-dots{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
.ex-dots button{width:32px;height:32px;border-radius:8px;border:1px solid #c9d6e4;background:#fff;font:inherit;font-size:13px;font-weight:700;color:var(--navy);cursor:pointer}
.ex-dots button.a{background:var(--panel);border-color:var(--blue)}.ex-dots button.c{outline:2px solid var(--navy);outline-offset:1px}
.ex-score{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.ex-ring{width:132px;height:132px;border-radius:50%;display:grid;place-items:center;flex:none}
.ex-ring div{width:104px;height:104px;border-radius:50%;background:#fff;display:grid;place-items:center;text-align:center;font-family:var(--fh)}
.ex-ring b{font-size:30px;color:var(--navy);line-height:1}.ex-ring small{display:block;font-size:12px;color:var(--muted);font-weight:700}
.ex-verdict{font-family:var(--fh);font-weight:800;font-size:28px}
.ex-verdict.pass{color:var(--green)}.ex-verdict.fail{color:#b5452f}
.ex-break{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.ex-break .r{display:grid;grid-template-columns:minmax(0,1fr) 120px 48px;gap:12px;align-items:center;font-size:15px}
.ex-break .r i{display:block;height:8px;background:var(--panel);border-radius:99px;overflow:hidden}.ex-break .r i u{display:block;height:100%;background:var(--blue)}
.ex-break .r.weak i u{background:#c9772f}
.ex-cta{background:var(--navy);color:#fff;border-radius:16px;padding:24px;margin-top:22px}
.ex-cta h3{color:#fff;font-size:22px;margin-bottom:6px}.ex-cta p{color:#c9dcef;margin-bottom:14px}
.ex-cta .contact{margin-top:6px}
.ex-cta form.f{margin-top:16px}
.ex-review{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.ex-review .it{border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff}
.ex-review .it.wrong{border-left:4px solid #b5452f}.ex-review .it.right{border-left:4px solid var(--green)}
.ex-review .it p{margin:4px 0}.ex-review .yours{color:#b5452f}.ex-review .ans{color:var(--green);font-weight:600}
.ex-review .why{color:var(--muted);font-size:15px}
.ad-slot{display:none;margin:26px auto;max-width:860px;text-align:center}
.ads-on .ad-slot{display:block}.ad-slot:has(ins[data-ad-status=filled]) small{display:block}
.ad-slot small{display:none;font-size:11px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px}
.disclaim{font-size:13.5px;color:var(--muted);border-top:1px solid var(--line);margin-top:28px;padding-top:14px}
.class-card .st{font-family:var(--fh);font-weight:700;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase}
.class-card .st.live{color:var(--green)}.class-card .st.soon{color:var(--muted)}
.class-card .cl{font-family:var(--fh);font-weight:800;font-size:30px;color:var(--blue);line-height:1}
@media(max-width:760px){.ex-modes{grid-template-columns:minmax(0,1fr)}.ex-card{padding:18px}.ex-break .r{grid-template-columns:minmax(0,1fr) 70px 42px}.ex-opt{font-size:16px}}
/* Ontario Licence Tests brand lockup: Canam logo + wordmark */
.brand.olt{gap:12px;text-decoration:none}
.brand.olt img{height:78px;width:auto}
.brand.olt .wm{display:flex;flex-direction:column;line-height:1.1;border-left:2px solid var(--line);padding-left:12px}
.brand.olt .wm b{font-family:var(--fh);font-weight:800;font-size:19px;color:var(--navy);letter-spacing:-.01em}
.brand.olt .wm small{font-family:var(--fh);font-weight:600;font-size:11.5px;color:var(--muted);margin-top:2px}
.brand.olt .wm em{font-style:normal;font-family:var(--fh);font-weight:700;font-size:11px;color:var(--blue);letter-spacing:.04em;margin-top:3px}
@media(max-width:1180px){.nav a{padding:8px 7px;font-size:14px}}
@media(max-width:560px){.brand.olt img{height:64px}.brand.olt .wm b{font-size:16px}.brand.olt .wm em{display:none}}

footer.ft img{height:90px!important}
.top .wrap{min-height:90px}@media(max-width:560px){.top .wrap{min-height:76px}}
footer.ft img{height:110px!important}

.ex-sign{display:flex;justify-content:center;margin:4px 0 16px}.ex-sign svg{width:150px;height:150px}
.ex-sign.sm{justify-content:flex-start;margin:0 0 6px}.ex-sign.sm svg{width:72px;height:72px}
.ex-secs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.ex-secs .sec{border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:2px}
.ex-secs .sec b{font-family:var(--fh);color:var(--navy);font-size:15px}.ex-secs .sec span{font-family:var(--fh);font-weight:800;font-size:24px;color:var(--navy)}
.ex-secs .sec.ok{border-left:4px solid var(--green)}.ex-secs .sec.no{border-left:4px solid #b5452f}
.ex-secs .sec.ok small{color:var(--green);font-weight:700}.ex-secs .sec.no small{color:#b5452f;font-weight:700}
