:root{--ink: #17243a;--muted: #5f6d82;--purple: #6241c5;--purple-soft: #f0ecff;--purple-tint: #f7f5fe;--line: #dce2ed;--paper: #fff;--page: #f3f5fa;--green: #147344;--green-soft: #e9f6ee;--green-line: #acd6b9;--red: #b42a35;--red-soft: #fff0f1;--red-line: #e8b0b8;--amber: #835d08;--amber-soft: #fff5dc;--font: system-ui, -apple-system, "Segoe UI", "Noto Sans Gujarati", sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font);line-height:1.6}:lang(gu),.gu{font-family:"Noto Sans Gujarati",var(--font)}button,textarea,input,select{font:inherit}button{cursor:pointer;border:0;border-radius:12px;padding:12px 18px;font-weight:650}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,label:focus-within{outline:3px solid #e1aa22;outline-offset:3px}a{color:var(--purple)}.site-header{background:var(--ink);color:#fff;padding:22px 20px}.site-header>div,.site-main{max-width:1000px;margin:auto}.site-header .row{align-items:center}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#c6b7ff;font-weight:700}.site-header h1{font-size:clamp(22px,4vw,32px);line-height:1.2;margin:6px 0 0}.site-header p{margin:4px 0 0;color:#cdd6e7}.site-main{padding:22px 16px 60px}h2{line-height:1.3;font-size:23px;margin:0 0 10px}h3{line-height:1.5;margin:0 0 14px;font-size:18px}.muted{color:var(--muted)}.card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:16px;min-width:0}.primary{background:var(--purple);color:#fff}.secondary{background:#eae6f8;color:#4b319c}.plain{background:#edf0f6;color:var(--ink)}.danger{background:var(--red);color:#fff}.small-btn{padding:8px 14px;font-size:14px}a.btn-link{display:inline-block;border-radius:12px;font-weight:650;text-decoration:none}.row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.stack{display:grid;gap:12px}.progress{height:7px;background:#e4e7ef;border-radius:9px;overflow:hidden;margin-top:12px}.progress>div{height:100%;background:var(--purple)}.testbar{position:sticky;top:0;z-index:3;background:#f3f5faf5;padding:12px 0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.qnumber{display:block;font-size:12px;font-weight:750;color:var(--purple);letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.qtext{white-space:pre-line;overflow-wrap:anywhere}.card,.explanation .body,.dialog .body{overflow-wrap:anywhere}.option>span{min-width:0;overflow-wrap:anywhere}.options{display:grid;gap:9px}.option{display:flex;flex-wrap:wrap;align-items:flex-start;gap:4px 11px;border:1px solid var(--line);padding:12px 14px;border-radius:11px;white-space:pre-line}.option.clickable{cursor:pointer}.option.selected{background:var(--purple-soft);border-color:var(--purple)}.option.correct{background:var(--green-soft);border-color:var(--green-line)}.option.wrong{background:var(--red-soft);border-color:var(--red-line)}.option input[type=radio]{margin-top:6px;accent-color:var(--purple);width:17px;height:17px;flex:none}.option .tag{margin-left:auto;font-size:13px;font-weight:700;white-space:nowrap;padding-left:8px}.option.correct .tag{color:var(--green)}.option.wrong .tag{color:var(--red)}.letter{font-weight:750;color:var(--muted);margin-right:6px}.qimage{display:block;max-width:100%;max-height:360px;margin:0 0 14px;border-radius:10px;border:1px solid var(--line);background:#fff}.badge{display:inline-block;border-radius:20px;font-size:13px;font-weight:700;padding:3px 12px;background:#edf0f6}.badge.correct,.badge.ok{background:#e6f5ec;color:var(--green)}.badge.wrong,.badge.bad{background:#fdebef;color:var(--red)}.badge.skip,.badge.warn{background:#fff4d8;color:var(--amber)}.explanation{border-left:3px solid var(--purple);padding:10px 16px;margin:16px 0 10px;background:var(--purple-tint);border-radius:0 10px 10px 0}.explanation .body{white-space:pre-line;margin:6px 0 0}.score{font-size:48px;font-weight:800;line-height:1.2;color:var(--purple)}.metrics{display:flex;gap:26px;flex-wrap:wrap;margin-top:16px}.metrics strong{display:block;font-size:23px}.filter{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.filter button{padding:8px 14px}.filter button.active{background:var(--ink);color:#fff}.notice{color:var(--amber);background:var(--amber-soft);padding:12px 16px;border-radius:10px;margin:10px 0}.error-box{color:var(--red);background:var(--red-soft);border:1px solid var(--red-line);padding:12px 16px;border-radius:10px;margin:10px 0}.ok-box{color:var(--green);background:var(--green-soft);border:1px solid var(--green-line);padding:12px 16px;border-radius:10px;margin:10px 0}.lang-switch{display:inline-flex;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.lang-switch button{border-radius:0;padding:8px 14px;background:#fff;color:var(--ink)}.lang-switch button.active{background:var(--purple);color:#fff}.dialog{width:min(680px,94vw);border:0;border-radius:18px;padding:22px;box-shadow:0 20px 90px #0004;color:var(--ink)}.dialog::backdrop{background:#17243a88}.dialog .body{white-space:pre-line}.field{display:grid;gap:6px;margin-bottom:14px}.field input[type=text],.field input[type=email],.field input[type=password]{padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;width:100%}.problem-list{margin:8px 0 0;padding-left:20px}.problem-list li{margin:4px 0}table.list{width:100%;border-collapse:collapse}table.list th,table.list td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top}table.list th{font-size:13px;color:var(--muted);font-weight:650}.table-wrap{overflow-x:auto}.hidden{display:none!important}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.tile{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--page)}.tile strong{display:block;font-size:26px;line-height:1.2}.tile span{font-size:13px}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 16px}.field select,.field textarea,.field input[type=number],.field input[type=datetime-local],.field input[type=tel]{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;width:100%}.field textarea{min-height:90px}.check{display:flex;gap:10px;align-items:flex-start;margin:8px 0}.check input{margin-top:5px;accent-color:var(--purple)}.status-pending{background:#fff4d8;color:var(--amber)}.status-trial{background:#eae6f8;color:#4b319c}.status-active{background:#e6f5ec;color:var(--green)}.status-off{background:#fdebef;color:var(--red)}.timer{font-size:22px;font-variant-numeric:tabular-nums}.timer.low{color:var(--red)}.testbar .row{flex-wrap:nowrap}.testbar .progress{margin-top:8px}.save-state{font-size:13px;color:var(--green)}div.save-state{margin-top:6px}.save-state.saving{color:var(--muted)}.save-state.offline{color:var(--amber)}.qwrap{scroll-margin-top:150px}.warn-btn{background:#fff4d8;color:var(--amber)}.palette{margin:10px 0 0;padding:14px;max-height:50vh;overflow-y:auto}.palette-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:8px}.pal{position:relative;padding:8px 0;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:650;font-size:14px}.pal.answered{background:var(--purple);border-color:var(--purple);color:#fff}.pal.marked{box-shadow:inset 0 0 0 3px #e1aa22}.pal.current{outline:3px solid var(--ink);outline-offset:1px}.palette-key{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px;font-size:13px}.palette-key i.pal{display:inline-block;width:16px;height:16px;padding:0;vertical-align:middle}@media(max-width:650px){.card{padding:16px}.site-main{padding:16px 12px 40px}button{padding:10px 14px}h3{font-size:17px}.testbar{padding:8px 0}.testbar .lang-switch button{padding:6px 10px;font-size:14px}.testbar .actions{gap:6px}}@media print{.site-header{color:#000;background:#fff}.actions,.filter,.testbar,button{display:none!important}.card{break-inside:avoid}body{background:#fff}}.list.nowrap th,.list.nowrap td{white-space:nowrap}
