:root{font-family:Arial,Helvetica,sans-serif;color:#151a1f;background:#e8edf1;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{background:#e8edf1}body{margin:0;min-width:320px}button,input{font:inherit}.appShell{min-height:100vh}.controls{position:sticky;top:0;z-index:10;display:grid;gap:14px;padding:14px;background:#f8fafcf5;border-bottom:1px solid #cdd6df;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transform:translateY(0);transition:transform .18s ease;will-change:transform}.controls.isHidden{transform:translateY(calc(-100% - 2px))}.titleRow{display:flex;align-items:center;justify-content:space-between;gap:12px}h1{margin:0 0 4px;font-size:23px;line-height:1.1}p{margin:0;color:#53616f;font-size:14px}fieldset{min-width:0;margin:0;padding:0;border:0}legend{margin-bottom:8px;color:#53616f;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.numberGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.variantGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.radioButton{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #bac5cf;border-radius:7px;background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none}.radioButton input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}.radioButton span{display:block;color:#202832;font-size:17px;font-weight:800;line-height:1}.radioButton:has(input:checked){border-color:#0f766e;background:#d9f2ec;box-shadow:inset 0 0 0 1px #0f766e}.radioButton:focus-within{outline:3px solid #94d7cc;outline-offset:2px}.testPages{display:grid;gap:14px;width:min(100%,920px);margin:0 auto;padding:14px}.testHeading{display:flex;align-items:center;justify-content:center;min-height:52px;border:1px solid #c8d2dc;border-radius:7px;background:#fff}.testHeading span{font-size:26px;font-weight:900}.pageImageWrap{margin:0;padding:0;overflow:hidden;border:1px solid #c8d2dc;border-radius:8px;background:#fff}.pageImageWrap img{display:block;width:100%;height:auto}@media(min-width:780px){.controls{grid-template-columns:minmax(220px,1fr) minmax(360px,620px) minmax(160px,220px);align-items:end;padding:18px 24px}.numberGrid{grid-template-columns:repeat(15,minmax(36px,1fr))}.testPages{padding:24px}}@media(max-width:420px){.controls{padding:10px;gap:10px}.titleRow{align-items:flex-start}h1{font-size:20px}.numberGrid{gap:6px}.radioButton{min-height:40px}.testPages{gap:10px;padding:10px}}
