.ft-root{font-family:Montserrat,system-ui,sans-serif;max-width:650px;margin:20px auto;color:#182334}.ft-panel{background:#fff;border:1px solid #dbe3ed;border-radius:18px;padding:clamp(14px,3vw,26px);box-shadow:0 10px 35px #18233412}.ft-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.ft-top h2{font-weight:800;margin:0;font-size:24px}.ft-top p{margin:2px 0;color:#627087}.ft-score{background:#e9f2fb;border-radius:24px;padding:8px 14px;font-weight:800;white-space:nowrap}.ft-board{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:min(100%,440px);aspect-ratio:1;margin:0 auto;border:5px solid #243448;box-sizing:border-box}.ft-square{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;aspect-ratio:1}.ft-light{background:#f1e0c5}.ft-dark{background:#9a775c}.ft-piece{font-family:'DejaVu Sans','Segoe UI Symbol',serif;font-size:clamp(22px,6vw,43px);line-height:1}.ft-white{color:#fff;text-shadow:0 2px 2px #111,1px 0 1px #111,-1px 0 1px #111}.ft-black{color:#17202b;text-shadow:0 1px 1px #eee}.ft-progress{text-align:center;font-size:13px;font-weight:700;color:#627087;margin:18px 0 4px}.ft-prompt{text-align:center;font-size:18px;margin:5px 0 15px;line-height:1.45}.ft-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ft-answer,.ft-next,.ft-restart{border:1px solid #b7c9d8;border-radius:10px;padding:14px;background:#f4f8fc;color:#1d3047;font:700 18px Montserrat,system-ui;cursor:pointer;line-height:1.3}.ft-answer:hover:not(:disabled),.ft-answer:focus{background:#d9eafa}.ft-answer:disabled{opacity:1;cursor:default}.ft-answer.ft-correct{background:#dcf3e0;border-color:#53a867;color:#155c2e}.ft-answer.ft-incorrect{background:#fbe6e4;border-color:#d47b74;color:#8b2222}.ft-next,.ft-restart{background:#1e5d90;color:white;width:100%;margin-top:12px}.ft-next:hover,.ft-restart:hover{background:#144b7a;color:white}.ft-opening{text-align:center;color:#627087;font-size:13px;margin:12px 0}.ft-feedback{background:#eef6ef;padding:12px;border-radius:8px;margin-top:12px}.ft-history{margin-top:20px;color:#526275}.ft-error{padding:18px;background:#fff0f0;border-radius:10px;color:#9a1e1e}.ft-end{text-align:center;margin-top:18px}.ft-end-sub{text-align:center;color:#627087}.ft-source{font-size:12px;color:#6b798e;text-align:center;margin-top:18px}@media(max-width:480px){.ft-root .ft-score{padding:6px 10px;font-size:13px}.ft-root .ft-top h2{font-size:21px}.ft-root .ft-piece{font-size:clamp(22px,7vw,37px)}}
