*{box-sizing:border-box}:root{--bg:#fdfbf7;--bg-card:#fff;--text:#2b2b2b;--text-soft:#6b6b6b;--primary:#4a90d9;--primary-text:#fff;--success:#2e9e4f;--danger:#d94a4a;--border:#e5e0d8;--shadow:0 2px 8px #2b2b2b14}body,button,header,main,section{transition:background-color .3s,color .3s,border-color .3s}body{background:var(--bg);color:var(--text);flex-direction:column;align-items:center;min-height:100vh;margin:0;padding:1rem;font-family:Segoe UI,system-ui,-apple-system,sans-serif;display:flex}header{justify-content:space-between;align-items:center;gap:.75rem;width:100%;max-width:640px;margin-bottom:1rem;display:flex}.brand{color:var(--text);letter-spacing:.01em;white-space:nowrap;font-size:1.35rem;font-weight:700;text-decoration:none}.brand:hover{color:var(--primary)}nav{align-items:center;margin-left:auto;display:flex}.nav-link{color:var(--primary);white-space:nowrap;font-size:.95rem;font-weight:600;text-decoration:none}.nav-link:hover{text-decoration:underline}main,section{width:100%;max-width:640px}#quiz-list{flex-direction:column;gap:.75rem;display:flex}button{background:var(--primary);color:var(--primary-text);cursor:pointer;box-shadow:var(--shadow);border:1px solid #0000;border-radius:12px;padding:.65rem 1.1rem;font-family:inherit;font-size:1rem;transition:transform .1s,background-color .2s}button:hover:not(:disabled){transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)}button:disabled{opacity:.45;cursor:not-allowed}#btn-next,#btn-go{min-width:10rem}#answers{flex-direction:column;gap:.75rem;margin:1.25rem 0;display:flex}#answers button{text-align:left;padding:.85rem 1.1rem;font-size:1.05rem}#answers button.correct{background:var(--success);color:#fff}#answers button.wrong{background:var(--danger);color:#fff}#progress{color:var(--text-soft);letter-spacing:.03em;font-size:.95rem}#quiz-title{margin:0 0 .75rem;font-size:1.6rem;font-weight:700;line-height:1.3}#question-text{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;padding:1.25rem;font-size:1.35rem;font-weight:400;line-height:1.45}#screen-list h1{text-align:center;margin:.25rem 0 .75rem;font-size:1.5rem}.section-title{color:var(--text-soft);text-transform:uppercase;letter-spacing:.06em;margin:.9rem 0 .4rem;font-size:.85rem;font-weight:600}.chips{flex-wrap:wrap;gap:.45rem;display:flex}.chip{background:var(--bg-card);color:var(--text);border:1px solid var(--border);box-shadow:none;border-radius:999px;padding:.35rem .8rem;font-size:.95rem}.chip.on{background:var(--primary);color:var(--primary-text);border-color:#0000}.chip:disabled{opacity:.35}#subject-filters{flex-direction:column;gap:.45rem;display:flex}.subject-block{flex-direction:column;gap:.35rem;display:flex}.chip-sub{font-size:.9rem}.chips-inner{margin-left:.75rem}.chips-inner .chip{padding:.25rem .65rem;font-size:.85rem}.subcat-block{border-left:2px solid var(--border);flex-direction:column;gap:.3rem;margin-left:.75rem;padding-left:.6rem;display:flex}.subcat-row{flex-wrap:wrap;align-items:center;gap:.3rem .5rem;display:flex}.subcat-title{color:var(--text-soft);min-width:8.5rem;font-size:.75rem;font-weight:600}.cat-grid{grid-template-columns:repeat(2,1fr);gap:.55rem;margin:.35rem 0;display:grid}.cat-btn{flex-direction:column;align-items:center;gap:.2rem;padding:.65rem .5rem;font-size:1rem;font-weight:600;display:flex}.cat-btn .badge{opacity:.9;font-size:.78rem;font-weight:400}.cat-btn.done{background:var(--success)}.empty-msg{text-align:center;color:var(--text-soft);grid-column:1/-1;margin:.5rem 0;font-size:.95rem}#pager{justify-content:center;align-items:center;gap:.35rem;margin:.35rem 0 .25rem;display:flex}#pager button{min-width:2.4rem;padding:.3rem .7rem;font-size:.95rem}#pager .page-num{background:var(--bg-card);color:var(--text);border:1px solid var(--border);box-shadow:none}#pager .page-num.cur{background:var(--primary);color:var(--primary-text);border-color:#0000}#reset-done{color:var(--text-soft);border:1px solid var(--border);box-shadow:none;background:0 0;border-radius:999px;margin:.9rem auto 0;padding:.4rem .9rem;font-size:.85rem;display:block}#reset-done:hover{color:var(--danger);border-color:var(--danger)}.brand{align-items:center;gap:.5rem;text-decoration:none;display:flex}.brand-logo{width:100px;height:100px}.brand-title{color:#2b2b4a;font-size:1.5rem;font-weight:800}.about-intro{font-size:1.15em;line-height:1.6}.about-section{margin:2em 0;line-height:1.65}.about-section h2{margin-bottom:.4em}.about-signature{margin-top:2.5em;font-style:italic}.about-back{margin-top:2em;display:inline-block}
