:root{--bg:#f3f2ed;--panel:#fffefa;--ink:#18242c;--muted:#647078;--line:#dbdfdb;--accent:#c0f365;--green:#245d3b;--red:#a83737;--soft:#eaf4df;--bad:#fbe7e5;--road:#334149;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.dark{--bg:#10191e;--panel:#18242b;--ink:#eef2eb;--muted:#a2b1b8;--line:#35434a;--green:#b2e9bd;--red:#ffb6ae;--soft:#203c2d;--bad:#45292b;color-scheme:dark}button,a{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button{cursor:pointer;color:inherit;border:0}button:disabled{cursor:default;opacity:.55}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #6195e2;outline-offset:4px}header{max-width:1160px;margin:auto;padding:26px 28px;display:flex;justify-content:space-between;align-items:center}.brand{font-size:23px;font-weight:800;letter-spacing:-1px;text-decoration:none;display:flex;align-items:center;gap:10px}.logo{display:grid;place-items:center;width:39px;height:39px;background:var(--accent);color:#18242c;border-radius:12px;font-size:29px}.beta{font:700 11px system-ui;letter-spacing:0;border:1px solid var(--line);padding:3px 7px;border-radius:5px}.header-actions{display:flex;align-items:center;gap:9px}.quiet,.icon{background:transparent;border:1px solid var(--line);padding:9px 16px;border-radius:12px}.icon{font-size:21px;padding:3px 12px;min-height:44px}.link{background:none;text-decoration:underline;text-underline-offset:4px}main{max-width:1104px;margin:35px auto 60px;padding:0 24px;min-height:65vh}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;color:var(--muted);margin:0 0 12px}h1{font-size:clamp(40px,6vw,72px);line-height:1.04;letter-spacing:-3px;margin:0 0 23px;font-weight:800}h1 em{font-style:normal;color:var(--green)}h2{font-size:28px;line-height:1.25;letter-spacing:-.8px}p{margin:0 0 18px}.muted{color:var(--muted)}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;margin:20px 0 45px}.intro{max-width:430px;font-size:18px;color:var(--muted)}.chip{display:inline-block;font-size:12px;font-weight:650;background:var(--panel);border:1px solid var(--line);border-radius:30px;padding:5px 12px;margin-right:5px}.hero-art{background:#18242c;border-radius:28px;padding:24px;color:white;position:relative;overflow:hidden}.hero-art svg{display:block;width:100%}.art-caption{display:flex;justify-content:space-between;font-size:12px;color:#b2c0c7;margin-top:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.card{padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:22px;display:flex;flex-direction:column}.card h2{margin:12px 0;font-size:23px}.card p{color:var(--muted);font-size:14px}.mode-num{font-size:12px;letter-spacing:2px;font-weight:700;color:var(--muted)}.primary,.secondary,.danger{padding:13px 22px;min-height:48px;border-radius:12px;font-weight:700}.primary{background:var(--accent);color:#18242c}.secondary{background:var(--panel);border:1px solid var(--line)}.danger{background:var(--bad);color:var(--red)}.card button{margin-top:auto}.settings{display:flex;align-items:center;gap:12px;margin:0 0 18px}.settings select{width:100%;min-height:44px;background:var(--bg);border:1px solid var(--line);border-radius:9px;color:var(--ink);padding:8px}.stats{display:flex;gap:30px;padding:25px 0;margin-top:20px;border-top:1px solid var(--line);flex-wrap:wrap}.stat strong{font-size:27px;display:block;line-height:1.2}.stat span{color:var(--muted);font-size:13px}.resume{margin-bottom:22px;display:flex;justify-content:space-between;gap:15px;align-items:center;border:1px solid var(--line);background:var(--soft);padding:16px 20px;border-radius:16px}.test{max-width:800px;margin:auto}.test-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:10px}.pill{padding:6px 12px;border:1px solid var(--line);background:var(--panel);border-radius:20px;font-size:13px}.timer{font-variant-numeric:tabular-nums;font-weight:750}.progress{height:5px;background:var(--line);border-radius:10px;overflow:hidden;margin-bottom:27px}.progress div{height:100%;background:var(--green);transition:width .3s}.question{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:30px}.question h2{font-size:clamp(22px,3vw,29px);margin:0 0 24px;line-height:1.4}.scene{margin:0 0 24px;max-width:460px}.scene svg{width:100%;display:block;border-radius:15px}.scene figcaption{font-size:12px;color:var(--muted);margin-top:7px}.options{display:grid;gap:10px}.option{text-align:left;display:flex;align-items:center;gap:14px;width:100%;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--panel);line-height:1.4;min-height:61px}.option:hover:not(:disabled){border-color:var(--ink)}.letter{flex-shrink:0;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);border-radius:9px;font-size:13px;font-weight:700}.option.selected{border:2px solid var(--ink);padding:14px}.option.correct{background:var(--soft);border-color:var(--green);color:var(--green)}.option.wrong{background:var(--bad);border-color:var(--red);color:var(--red)}.option:disabled{opacity:1}.feedback{margin-top:20px;padding:19px;border-radius:14px;background:var(--soft)}.feedback.bad{background:var(--bad)}.feedback h3{margin:0 0 8px;font-size:17px}.feedback p{margin:0 0 10px}.source{font-size:13px;color:var(--muted)}.controls{display:flex;justify-content:space-between;gap:12px;margin-top:22px;align-items:center}.keys{font-size:12px;color:var(--muted)}.navgrid{display:flex;gap:6px;flex-wrap:wrap;margin:20px 0}.navgrid button{min-width:35px;height:35px;border:1px solid var(--line);background:var(--panel);border-radius:7px;font-size:12px}.navgrid .done{background:var(--soft)}.navgrid .active{outline:2px solid var(--ink)}.score{font-size:76px;letter-spacing:-4px;line-height:1;margin:25px 0;color:var(--green)}.score small{font-size:28px;letter-spacing:0;color:var(--muted)}.result-head{text-align:center;margin-bottom:30px}.result-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:25px 0}.review{margin-bottom:12px;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden}.review summary{cursor:pointer;padding:18px;font-weight:650;line-height:1.4}.review .body{padding:0 20px 20px}.review .body p{font-size:14px;margin-bottom:9px}.status{color:var(--red)}.status.good{color:var(--green)}footer{max-width:1104px;margin:auto;padding:22px 24px 30px;border-top:1px solid var(--line);color:var(--muted);font-size:12px;display:flex;justify-content:space-between;gap:15px}dialog{max-width:600px;width:calc(100% - 32px);background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:23px;padding:30px;max-height:85vh}dialog::backdrop{background:#081219aa;backdrop-filter:blur(5px)}dialog p{font-size:14px}.close{float:right}.empty{text-align:center;padding:60px 20px}.empty h2{font-size:31px}.finish-warning{border:1px solid var(--line);padding:18px;border-radius:12px;margin-top:18px;background:var(--bg)}@media(max-width:720px){header{padding:18px}.brand{font-size:20px}main{margin:20px auto 35px;padding:0 16px}.hero{grid-template-columns:1fr;gap:22px;margin-bottom:25px}h1{letter-spacing:-2px}.hero-art{padding:16px;max-width:460px}.cards{grid-template-columns:1fr}.card{padding:21px}.stats{gap:24px}.question{padding:20px;border-radius:19px}.controls{flex-wrap:wrap}.keys{display:none}.resume{align-items:flex-start;flex-direction:column}.test-top{flex-wrap:wrap}footer{flex-direction:column;padding:20px 16px}.score{font-size:65px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.sign-scene{max-width:none;padding:18px;display:flex;align-items:center;flex-direction:column;background:#fff;border-radius:15px}.sign-scene img{max-width:210px;max-height:185px;width:auto;height:auto;object-fit:contain}.sign-scene figcaption{color:#647078}.bank-open{margin-top:15px}.bank-search{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;margin:24px 0 12px}.bank-search input,.bank-search select{min-height:48px;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--panel);color:var(--ink);font:inherit;min-width:0}.bank-tag{display:block;font-size:11px;color:var(--muted);font-weight:500;margin-bottom:8px}.review .scene{margin-top:15px}.review .scene svg{max-width:400px}.card .settings{margin-bottom:10px}.card select{font-size:13px}@media(max-width:720px){.bank-search{grid-template-columns:1fr}.sign-scene img{max-width:170px;max-height:155px}}
