:root{--app-bg:#f5f6f7;--surface:#fff;--text:#111827;--muted:#596273;--muted-strong:#3f4653;--line:#e4e7ea;--line-strong:#cfd5db;--blue:#0a77ff;--blue-dark:#0067e5;--blue-soft:#eaf3ff;--danger:#c43636;--shadow:0 24px 70px #0f172a1f;--test-shadow:0 42px 76px #0a77ff2e, 0 18px 36px #0f172a14}*{box-sizing:border-box}html{background:var(--app-bg)}body{background:var(--app-bg);color:var(--text);margin:0;font:16px/1.58 Inter,Rubik,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.landing-shell{align-content:center;justify-items:center;gap:34px;min-height:100vh;padding:24px;display:grid}.landing-card{border:1px solid var(--line);background:var(--surface);width:min(720px,100%);box-shadow:var(--shadow);border-radius:34px;padding:clamp(28px,5vw,54px)}.kicker,.article-kicker,.test-meta{background:var(--blue-soft);color:var(--blue);border:1px solid #cfe2ff;border-radius:999px;align-items:center;gap:8px;margin:0 0 18px;padding:8px 12px;font-size:13px;font-weight:800;line-height:1.2;display:inline-flex}.landing-card h1{letter-spacing:-.05em;max-width:620px;margin:0;font-size:clamp(36px,7vw,62px);font-weight:780;line-height:.98}.landing-card p{max-width:570px;color:var(--muted-strong);margin:18px 0 0;font-size:18px;line-height:1.5}.topic-form{grid-template-columns:minmax(0,1fr) auto;gap:12px;margin-top:30px;display:grid}.topic-form input{width:100%;min-height:58px;color:var(--text);background:#f8fafc;border:1px solid #dfe4ee;border-radius:18px;outline:none;padding:0 18px;font-size:16px}.topic-form input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #0a77ff1f}.topic-form button,.primary-button{background:var(--blue);color:#fff;border:0;border-radius:18px;min-height:58px;padding:0 22px;font-size:15px;font-weight:800;box-shadow:0 8px 18px #0a77ff3d}.topic-form button:hover,.primary-button:hover{background:#147fff;box-shadow:0 10px 22px #0a77ff4d}.topic-form button:active,.primary-button:active{background:var(--blue-dark)}.topic-form button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible{outline-offset:3px;outline:3px solid #0a77ff3d}.form-error{font-weight:700;color:var(--danger)!important;font-size:15px!important}.loading-scene{background:#fff;border-radius:24px;align-content:center;place-items:center;gap:84px;min-height:min(620px,100vh - 140px);display:grid;position:relative;overflow:hidden}.latest-tests{gap:18px;width:min(980px,100%);display:grid}.latest-tests-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.latest-tests-heading .kicker{margin:0}.latest-tests h2{color:var(--text);letter-spacing:-.04em;margin:0;font-size:clamp(28px,4vw,44px);line-height:1}.latest-tests-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.latest-test-card{border:1px solid var(--line);min-height:148px;color:var(--text);background:#ffffffbd;border-radius:24px;align-content:space-between;gap:16px;padding:18px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid;box-shadow:0 14px 34px #0f172a0f}.latest-test-card:hover{border-color:#b9d6ff;transform:translateY(-2px);box-shadow:0 20px 44px #0a77ff1c}.latest-test-card span{background:var(--blue-soft);width:fit-content;color:var(--blue);border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.latest-test-card strong{letter-spacing:-.02em;font-size:18px;line-height:1.2}.latest-test-card time{color:var(--muted);font-size:13px}.latest-tests-empty{color:var(--muted);background:#ffffff8f;border:1px dashed #cbd5e1;border-radius:24px;padding:22px}.loading-progress{background:var(--blue);border-radius:0 4px 4px 0;height:5px;transition:width .42s;position:absolute;top:0;left:0}.loading-orb-wrap{width:160px;height:160px;position:relative}.loading-glow,.loading-orb,.loading-shadow{pointer-events:none;position:absolute}.loading-glow{filter:blur(14px);object-fit:cover;opacity:.95;width:138px;height:138px;animation:1.8s ease-in-out infinite loading-pulse;inset:11px}.loading-orb{object-fit:contain;width:98px;height:94px;animation:2.4s ease-in-out infinite loading-float;top:35px;left:31px}.loading-shadow{opacity:.72;width:82px;height:16px;top:122px;left:34px}.loading-scene p{color:var(--blue);margin:0;font-size:17px;font-weight:800;line-height:1.3}.workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:34px;max-width:1320px;margin:0 auto;padding:28px 24px 72px;display:grid}@keyframes loading-pulse{0%,to{opacity:.82;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}@keyframes loading-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.test-column{place-items:start center;width:100%;height:calc(100vh - 48px);display:grid;position:sticky;top:24px}.test-panel{background:var(--surface);width:min(100%,620px);height:min(844px,100vh - 48px);box-shadow:var(--test-shadow);border:1px solid #d9dde6;border-radius:30px;flex-direction:column;display:flex;overflow:hidden}.test-scroll{background:var(--surface);scrollbar-width:thin;flex:1;min-height:0;overflow-y:auto}.test-scroll::-webkit-scrollbar{width:6px}.test-scroll::-webkit-scrollbar-thumb{background:#c9d1df;border-radius:999px}.progress{grid-template-columns:repeat(var(--steps), 1fr);background:var(--surface);gap:4px;padding:14px 18px 12px;display:grid}.progress span{background:#e5e9f0;border-radius:999px;height:4px}.progress span.active{background:var(--blue)}.activity-screen{color:var(--text);padding:0 18px 24px}.question-card{padding:12px 0 0}.activity-screen h1{color:var(--text);letter-spacing:0;margin:0;font-size:24px;font-weight:760;line-height:1.16}.description{color:var(--muted-strong);margin:10px 0 0;font-size:16px;line-height:1.42}.activity-screen .choice-label{color:var(--text);margin:28px 0 15px;font-size:15px;font-weight:700;line-height:1.35}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips button{background:var(--surface);min-height:38px;color:var(--text);border:1px solid #dfe4ee;border-radius:999px;padding:8px 12px;font-size:14px;font-weight:400;line-height:1.2;transition:border-color .16s,background-color .16s,box-shadow .16s,transform .16s;box-shadow:0 1px #0f172a08}.chips button:hover{border-color:var(--blue);background:var(--blue-soft);transform:translateY(-1px);box-shadow:0 8px 18px #0a77ff1f}.chips button:focus-visible{outline-offset:2px;border-color:var(--blue);background:var(--blue-soft);outline:3px solid #0a77ff38}.chips button.selected{border-color:var(--blue);background:var(--blue);color:#fff;box-shadow:0 8px 18px #0a77ff33}.test-footer{background:#fffffffa;border-top:1px solid #e7eaf0;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding:13px 18px 18px;display:grid}.test-footer span{color:#707a8c;white-space:nowrap;font-size:14px;font-weight:700}.test-actions{grid-template-columns:auto 1fr;gap:8px;display:grid}.secondary-button{min-height:52px;color:var(--text);background:#fff;border:1px solid #dfe4ee;border-radius:16px;padding:0 14px;font-size:15px;font-weight:800}.primary-button{border-radius:16px;min-height:52px}.runner-error{color:var(--danger);margin:18px 0 0;font-size:14px;font-weight:700}.result-card{background:var(--blue-soft);border:1px solid #cfe2ff;border-radius:24px;gap:16px;padding:22px 20px;display:grid}.result-card h2{letter-spacing:-.03em;margin:0;font-size:24px;line-height:1.1}.result-card p{color:#24507f;margin:0}.result-label{color:var(--text);background:#fff;border-radius:16px;padding:13px 14px;font-size:17px;line-height:1.3;display:block}.result-section{gap:8px;display:grid}.result-section span{color:var(--blue);text-transform:uppercase;font-size:13px;font-weight:800}.result-card+.share-card{margin-top:16px}.result-page{place-items:center;min-height:100vh;padding:24px;display:grid}.result-page-card{background:var(--blue-soft);width:min(720px,100%);box-shadow:var(--shadow);border:1px solid #cfe2ff;border-radius:30px;gap:16px;padding:clamp(24px,5vw,44px);display:grid}.result-page-card h1{color:var(--text);margin:0;font-size:30px;line-height:1.08}.result-test-link{width:fit-content;color:var(--blue);margin-top:4px;font-weight:800}.article-side{align-content:start;gap:18px;min-width:0;display:grid}.share-card{border:1px solid var(--line);background:#fff;border-radius:24px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;display:grid;box-shadow:0 18px 42px #0f172a12}.share-card span{color:var(--text);font-size:18px;font-weight:760;line-height:1.2;display:block}.share-card p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:14px;line-height:1.35;overflow:hidden}.share-card button{background:var(--blue);color:#fff;border:0;border-radius:14px;min-height:44px;padding:0 16px;font-size:14px;font-weight:800;box-shadow:0 8px 18px #0a77ff33}.share-card button:hover{background:#147fff}.article-column{border-radius:30px;min-height:100vh;padding:42px}.article-column h1,.article-column h2,.article-column h3{color:var(--text);margin:0;line-height:1.12}.article-column h1{letter-spacing:-.025em;max-width:680px;font-size:clamp(24px,3vw,30px);font-weight:760}.lead{max-width:660px;color:var(--muted);margin:18px 0 30px;font-size:18px;line-height:1.5}.article-column section{margin-top:34px}.article-column h2{letter-spacing:-.02em;margin-bottom:14px;font-size:24px;font-weight:760}.article-column h3{margin:18px 0 8px;font-size:20px;font-weight:760}.article-column p{color:var(--muted-strong);margin:0 0 14px}.not-found-card{border:1px solid var(--line);background:var(--surface);width:min(680px,100% - 32px);box-shadow:var(--shadow);border-radius:30px;margin:20vh auto 0;padding:34px}.not-found-card h1{letter-spacing:-.04em;margin:0 0 12px;font-size:38px;line-height:1.05}.not-found-card a{color:var(--blue);font-weight:800}@media (max-width:920px){.workspace{grid-template-columns:1fr;justify-items:center}.latest-tests-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.test-column{width:100%;height:auto;position:static}.test-panel{max-width:100%;height:812px}.article-column{width:100%;min-height:auto}.article-side{width:100%}}@media (max-width:640px){.topic-form{grid-template-columns:1fr}.latest-tests-heading{align-items:start;display:grid}.latest-tests-grid{grid-template-columns:1fr}}@media (max-width:520px){.landing-shell,.workspace{padding:16px 12px 48px}.landing-card{border-radius:28px}.test-panel{border-radius:28px;width:min(390px,100%)}.test-footer,.test-actions{grid-template-columns:1fr}.article-column{padding:28px 22px}.share-card{grid-template-columns:1fr}.share-card button{width:100%}}
