*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:#f4f7fb;color:#14233a;line-height:1.6}.wrap{width:min(1120px,92%);margin:auto}.top{background:#0d2b45;color:#fff;position:sticky;top:0;z-index:10}.top .wrap{display:flex;align-items:center;justify-content:space-between;min-height:64px}.brand{color:#fff;text-decoration:none;font-weight:800;font-size:18px}.top nav{display:flex;gap:18px}.top nav a{color:#dce9f5;text-decoration:none;font-size:14px}.hero{display:grid;grid-template-columns:1fr 300px;gap:30px;padding:68px 0;align-items:center}.hero.small{padding:38px 0}.hero h1{font-size:clamp(30px,5vw,54px);line-height:1.1;margin:14px 0}.hero p{color:#5d6b7d;font-size:18px}.pill{display:inline-block;padding:6px 10px;border-radius:999px;background:#e8f2fb;color:#1d6192;font-size:12px;font-weight:800}.hero-card,.score{background:#fff;border-radius:20px;padding:28px;box-shadow:0 12px 35px #17324d18}.hero-card strong,.score strong{display:block;font-size:64px;line-height:1.1}.hero-card span,.score span{color:#68758a}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0 40px}.card{background:#fff;border-radius:16px;padding:22px;box-shadow:0 5px 22px #17324d10;margin:18px 0}.linkcard{color:inherit;text-decoration:none;transition:.2s}.linkcard:hover{transform:translateY(-2px)}.btn{display:inline-block;border:1px solid #d3dce8;border-radius:10px;padding:10px 16px;text-decoration:none;color:#17324d;background:#fff;font-weight:700;cursor:pointer}.btn.primary{background:#1670b5;color:#fff;border-color:#1670b5}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stats>div{background:#fff;border-radius:14px;padding:18px}.stats b{display:block;font-size:30px}.stats span{color:#6d7788}.narrow{max-width:500px;margin:50px auto}label{display:block;font-weight:700;margin:13px 0 6px}input,select,textarea{width:100%;padding:11px 12px;border:1px solid #ccd6e2;border-radius:9px;background:#fff;font:inherit}textarea{min-height:90px;resize:vertical}.alert{padding:13px 15px;border-radius:10px;margin:15px 0}.success{background:#e8f7ed;color:#176b37}.danger{background:#fdeceb;color:#9b2720}.question-head{display:flex;justify-content:space-between;margin:25px 0;font-weight:800}.question h2{font-size:23px;line-height:1.45}.option{padding:16px;border:1px solid #d7e0eb;border-radius:11px;margin:12px 0;background:#fff;cursor:pointer;display:block}.option input{width:auto;margin-right:10px}.option.correct{border-color:#2d9d5a;background:#edf9f1}.option.wrong{border-color:#d84b43;background:#fff0ef}.explain{border-top:1px solid #e3e8ef;margin-top:22px;padding-top:18px}.tip{background:#fff8df;border-radius:10px;padding:14px;margin-top:15px}.result{text-align:center;padding:50px}.result h1{font-size:72px;margin:10px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid #e5eaf0}footer{padding:35px 0;color:#6b7685;font-size:13px}.center-actions{justify-content:center}@media(max-width:760px){.hero{grid-template-columns:1fr;padding:40px 0}.grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr}.top nav{gap:9px}.top nav a{font-size:12px}.hero h1{font-size:34px}.question h2{font-size:20px}}

.filter{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px}.master-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.master-item{display:block;text-decoration:none;color:inherit;border:1px solid #e1e7ef;border-radius:12px;padding:15px}.master-item:hover{background:#f8fbff}.master-item h3{font-size:16px;line-height:1.4}.muted{color:#6d7788;font-size:13px}.pagination{display:flex;gap:6px;flex-wrap:wrap;margin-top:20px}.pagination a{padding:7px 10px;border:1px solid #d6dfeb;border-radius:7px;text-decoration:none;color:#17324d}.pagination a.active{background:#1670b5;color:#fff;border-color:#1670b5}@media(max-width:760px){.filter{grid-template-columns:1fr}.master-grid{grid-template-columns:1fr}}
.blueprint{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.blueprint>div{border:1px solid #e0e7ef;border-radius:12px;padding:14px;background:#f9fbfd}.blueprint b{display:block;font-size:24px}.blueprint span{font-size:13px;color:#637083}.exam-top{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:14px;padding:14px 18px;margin:20px 0;box-shadow:0 5px 22px #17324d10}.exam-top span{display:block;color:#6b7788;font-size:13px}.timer{font-variant-numeric:tabular-nums;font-weight:900;font-size:25px;color:#a33127}.exam-layout{display:grid;grid-template-columns:230px 1fr;gap:18px}.exam-sidebar{background:#fff;border-radius:14px;padding:16px;box-shadow:0 5px 22px #17324d10;height:max-content;position:sticky;top:84px}.number-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.num{display:flex;align-items:center;justify-content:center;min-height:34px;border:1px solid #d9e1ea;border-radius:7px;text-decoration:none;color:#23384f;font-size:12px}.num.current{outline:2px solid #1670b5}.num.answered{background:#eaf7ef;border-color:#9dd4b1}.num.flagged{box-shadow:inset 0 -3px 0 #e0a100}.exam-legend{font-size:11px;color:#6d7788}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#d9e1ea;margin:0 3px}.dot.answered{background:#4ba66a}.dot.flagged{background:#e0a100}.exam-stat{border-top:1px solid #e7ebf0;padding-top:12px;margin-top:10px}.danger-btn{background:#fff0ef;border-color:#efc0bb;color:#a33127;width:100%;margin-top:12px}.question-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:#6d7788}.exam-option{display:flex;gap:12px;align-items:flex-start;padding:17px;border:1px solid #d8e0e9;border-radius:12px;margin:12px 0;background:#fff;cursor:pointer}.exam-option:hover,.exam-option.selected{border-color:#1670b5;background:#f2f8fd}.exam-option input{width:auto;margin-top:5px}.exam-actions{display:flex;gap:9px;justify-content:space-between;flex-wrap:wrap;margin-top:20px}.breakdown{display:grid;gap:15px}.break-row{display:grid;grid-template-columns:minmax(260px,1fr) 2fr 70px;gap:12px;align-items:center}.break-row span{display:block;color:#6d7788;font-size:13px}.bar{height:10px;background:#e7edf4;border-radius:99px;overflow:hidden}.bar i{display:block;height:100%;background:#1670b5}.break-row>strong{text-align:right}.review{border:1px solid #e0e6ed;border-radius:10px;padding:12px;margin:10px 0;background:#fff}.review summary{cursor:pointer}@media(max-width:760px){.blueprint{grid-template-columns:repeat(2,1fr)}.exam-layout{grid-template-columns:1fr}.exam-sidebar{position:static;order:2}.exam-main{order:1}.break-row{grid-template-columns:1fr}.break-row>strong{text-align:left}.exam-top{position:sticky;top:64px;z-index:5}.number-grid{grid-template-columns:repeat(10,1fr)}}

/* MVP-06.1: CAT exam usability fix */
.exam-layout{display:grid!important;grid-template-columns:230px minmax(0,1fr)!important;gap:18px!important;align-items:start}
.exam-sidebar{display:block!important;min-width:0;overflow:hidden}
.number-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important}
.num{display:flex!important;width:100%;min-width:0;height:36px;align-items:center;justify-content:center;padding:0 3px!important;overflow:hidden;text-decoration:none!important;white-space:nowrap}
.exam-options{display:block;width:100%}
.exam-option{display:flex!important;width:100%;min-height:58px;align-items:flex-start!important;gap:12px!important;cursor:pointer!important;padding:16px 18px!important}
.exam-option input[type=radio]{flex:0 0 auto!important;width:18px!important;height:18px!important;margin:4px 0 0!important}
.exam-option span{flex:1 1 auto;min-width:0;display:block}
.exam-actions{display:flex!important;gap:9px!important;justify-content:space-between!important;align-items:center!important}
.exam-actions .btn{white-space:nowrap}
@media(max-width:900px){.exam-layout{grid-template-columns:1fr!important}.exam-sidebar{position:static!important;order:2}.exam-main{order:1}.number-grid{grid-template-columns:repeat(10,minmax(0,1fr))!important}}
@media(max-width:600px){.number-grid{grid-template-columns:repeat(8,minmax(0,1fr))!important}.exam-actions{justify-content:stretch!important}.exam-actions .btn{flex:1 1 auto}.exam-option{padding:14px!important}}
