*{box-sizing:border-box;margin:0;padding:0}html,body,#app{touch-action:manipulation;-webkit-tap-highlight-color:transparent;color:#fff;background:#0f0c29;width:100%;height:100%;font-family:PingFang SC,Microsoft YaHei,sans-serif;overflow:hidden}#app{background:linear-gradient(#1a0f2e 0%,#1a1a2e 50%,#16213e 100%);flex-direction:column;height:100%;display:flex;position:relative}.top-bar{flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 16px 4px;display:flex}.top-bar a{color:#64748b;font-size:14px;text-decoration:none}.top-bar .info{color:#94a3b8;font-size:13px}h1{text-align:center;color:#a855f7;flex-shrink:0;margin:2px 0;font-size:18px;font-weight:800}.difficulties{flex-shrink:0;justify-content:center;gap:4px;margin:4px 16px;display:flex}.diff{color:#94a3b8;cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:16px;padding:5px 12px;font-size:12px;transition:all .15s}.diff.sel{color:#a855f7;background:#a855f71a;border-color:#a855f7}.passage-area{flex-shrink:0;padding:8px 16px 4px}.passage-label{color:#64748b;text-align:center;margin-bottom:6px;font-size:11px}.passage-text{color:#e2e8f0;background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px;max-height:32vh;padding:14px 16px;font-size:15px;line-height:1.9;overflow-y:auto}.timer-bar{background:#ffffff0f;border-radius:2px;flex-shrink:0;height:3px;overflow:hidden}.timer-fill{background:linear-gradient(90deg,#00e676,gold,#ff5252);height:100%;transition:width .1s linear}.timer-row{flex-shrink:0;align-items:center;gap:8px;margin:6px 16px;display:flex}.timer-row .timer-bar{flex:1;margin:0}.pause-btn{color:#94a3b8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:14px;line-height:1;display:flex}.pause-btn:active{background:#a855f733;border-color:#a855f7}.pause-overlay{z-index:40;cursor:pointer;background:#0f0c29d9;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.pause-box{text-align:center}.pause-icon{opacity:.6;font-size:72px}.pause-text{color:#94a3b8;margin-top:12px;font-size:18px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.question{text-align:center;color:#f8fafc;flex-shrink:0;padding:8px 16px 4px;font-size:18px;font-weight:700}.answers{flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:10px;padding:8px 16px;display:grid}.ans-btn{color:#fff;cursor:pointer;text-align:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;word-break:break-all;background:#ffffff08;border:2px solid #ffffff14;border-radius:16px;justify-content:center;align-items:center;min-height:52px;padding:12px 14px;font-size:14px;font-weight:600;line-height:1.4;transition:all .15s;display:flex;overflow:hidden}.ans-btn:active{transform:scale(.96)}.ans-btn.correct{background:#00e67633;border-color:#00e676;animation:.5s ease-out pop}.ans-btn.wrong{opacity:.6;background:#ff525233;border-color:#ff5252;animation:.5s shake}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.feedback{pointer-events:none;z-index:20;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.feedback .fb-inner{text-align:center}.feedback .fb-emoji{font-size:80px;animation:.5s ease-out bounceIn}.feedback .fb-text{margin-top:8px;font-size:20px;font-weight:700;animation:.5s ease-out fadeUp}.feedback .fb-sub{color:#94a3b8;margin-top:4px;font-size:14px;animation:.6s ease-out fadeUp}.explanation{z-index:25;background:#0f0c29e6;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:fixed;inset:0}.exp-correct-answer{color:gold;text-align:center;max-width:90%;font-size:18px;font-weight:700;line-height:1.6}.exp-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7,#7c3aed);border:none;border-radius:24px;padding:12px 40px;font-size:17px;font-weight:700;transition:all .15s}.exp-btn:active{transform:scale(.95)}@keyframes bounceIn{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fb-enter-active{transition:opacity .3s}.fb-leave-active{transition:opacity .2s}.fb-enter-from,.fb-leave-to{opacity:0}.stats{flex-shrink:0;justify-content:center;gap:16px;padding:4px 16px 8px;display:flex}.stat{text-align:center;color:#64748b;font-size:11px}.stat b{margin-bottom:2px;font-size:16px;display:block}.result-bg{z-index:50;background:#1a0f2ef2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.result-box{text-align:center;padding:40px 30px}.result-box .r-emoji{font-size:80px;animation:.6s ease-out bounceIn}.result-box .r-title{margin:12px 0 4px;font-size:24px;font-weight:800}.result-box .r-sub{color:#94a3b8;margin-bottom:16px;font-size:14px}.result-box .r-score{margin:8px 0;font-size:48px;font-weight:800}.result-box button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#a855f7,#7c3aed);border:none;border-radius:24px;margin-top:16px;padding:14px 40px;font-size:17px;font-weight:700}.result-box button:active{transform:scale(.95)}.result-enter-active{transition:opacity .3s}.result-enter-from{opacity:0}.bottom-bar{flex-shrink:0;justify-content:center;padding:8px 16px 12px;display:flex}.bottom-bar a{color:#64748b;background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;padding:8px 24px;font-size:14px;text-decoration:none;transition:all .15s}.bottom-bar a:active{background:#ffffff0f}
