.app-shell{background:#f4f8ff!important}.topbar{height:74px!important;background:linear-gradient(100deg,#003a88,#005eb8)!important;box-shadow:0 4px 16px #00338438}.company-logo{width:54px;height:54px;object-fit:contain;object-position:center;border-radius:0;background:transparent}.brand-title{display:flex;min-width:0;flex-direction:column;gap:3px}.brand-title strong{font-size:14px!important;letter-spacing:.03em}.brand-title span{font-size:11px;color:#cceaff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero,.leaderboard-hero,.login-hero{background:linear-gradient(135deg,#003a88,#005eb8 56%,#008ed6)!important;border:1px solid rgba(130,222,255,.32)}.hero-tag,.result-hero>span,.leaderboard-hero>span,.login-hero span{background:#22cff238!important;color:#d9fbff!important}.primary-btn{background:linear-gradient(100deg,#005eb8,#00a5db)!important}.mission-card{background:linear-gradient(130deg,#e2f4ff,#eef7ff)!important}.mission-card span,.secondary-btn{color:#005eb8!important}.option.selected{border-color:#007bd1!important;background:#e8f7ff!important}.option.selected b,.progress-track i{background:#007bd1!important}.rank-row.mine{background:#e4f5ff!important}.login-hero{margin:16px 0;padding:25px 21px;border-radius:18px;background:linear-gradient(135deg,#071b3e,#0b5f87);color:#fff;box-shadow:0 12px 28px #04305c33}.login-hero span{display:inline-block;padding:5px 9px;border-radius:99px;background:#37d2c333;color:#86fff1;font-size:12px}.login-hero h1{font-size:25px;line-height:1.4;margin:13px 0 8px}.login-hero p{margin:0;color:#e3f1ff;font-size:13px;line-height:1.65}.login-form{padding:19px;background:#fff;border-radius:16px;box-shadow:0 9px 25px #13417714}.login-form label{display:block;margin-bottom:15px;color:#304b6c;font-size:14px;font-weight:700}.login-form input{width:100%;margin-top:8px;border:1px solid #cedcea;border-radius:10px;padding:12px;color:#172642;font-size:15px;outline:none}.login-form input:focus{border-color:#0087b5;box-shadow:0 0 0 3px #dff7fb}.code-row{display:flex;gap:9px}.code-row input{min-width:0}.code-row button{flex:none;margin-top:8px;border:0;border-radius:10px;padding:0 11px;background:#e3f6ff;color:#0874b4;font-size:13px;font-weight:700}.privacy-tip{margin:2px 0 16px;color:#71839b;font-size:12px;line-height:1.6}.wechat-login-stage{margin:0 0 14px;padding:18px;background:#fff;border-radius:16px;box-shadow:0 9px 25px #13417714}.wechat-login-stage strong{display:block;color:#123b66;font-size:17px}.wechat-login-stage p{margin:8px 0 0;color:#60728a;font-size:13px;line-height:1.6}.auth-modal-backdrop{position:fixed;z-index:8;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:18px;background:#0000007a}.wechat-auth-dialog{width:min(86vw,380px);border-radius:14px;background:#fff;padding:31px 22px 28px;text-align:center;box-shadow:0 20px 46px #04142652}.wechat-auth-dialog h2{margin:0;color:#1e293b;font-size:24px;line-height:1.3}.wechat-auth-dialog p{margin:13px 0 25px;color:#666;font-size:17px}.wechat-auth-dialog button{width:100%;border:0;border-radius:999px;padding:15px 18px;background:#08c967;color:#fff;font-size:20px;font-weight:800;cursor:pointer}:root{font-family:Microsoft YaHei,system-ui,sans-serif;color:#14213d;background:#eaf1fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button{font:inherit}button:disabled{opacity:.52;cursor:not-allowed}.app-shell{width:min(100%,560px);min-height:100vh;margin:auto;padding:0 18px 34px;background:#f2f6fc;color:#172642}.topbar{height:66px;display:flex;align-items:center;margin:0 -18px;padding:0 18px;background:#071b3e;color:#fff;gap:10px}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#14d3c3;color:#06275a;font-weight:900}.topbar strong{font-size:16px;letter-spacing:.04em}.topbar-action{margin-left:auto}.header-link{border:0;background:transparent;color:#c9efff;font-size:14px}.hero,.leaderboard-hero{margin:16px 0 14px;padding:27px 21px 24px;border-radius:18px;background:linear-gradient(135deg,#071b3e,#0b5f87);color:#fff;box-shadow:0 12px 28px #04305c33}.hero-tag,.result-hero>span,.leaderboard-hero>span{display:inline-block;padding:5px 9px;border-radius:99px;background:#37d2c333;color:#86fff1;font-size:12px}.hero h1{font-size:28px;line-height:1.34;margin:13px 0 10px}.hero p{font-size:14px;line-height:1.7;color:#e3f1ff;margin:0}.hero-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:19px}.hero-badges span{border:1px solid rgba(255,255,255,.42);border-radius:7px;padding:6px 8px;font-size:12px;color:#fff}.notice-card,.mission-card,.question-card,.navigator,.leaderboard-panel,.review-card,.review-question,.result-grid{background:#fff;border-radius:16px;box-shadow:0 9px 25px #13417714}.notice-card{padding:18px;margin:0 0 14px}.notice-card h2,.review-card h2{font-size:17px;margin:0 0 10px}.notice-card ol{padding-left:20px;margin:0;color:#435977;font-size:13px;line-height:1.75}.mission-card{padding:18px;margin-bottom:18px;background:linear-gradient(130deg,#e1fbf8,#eef8ff)}.mission-card span{font-size:12px;color:#087d77}.mission-card strong{display:block;margin:7px 0;font-size:17px}.mission-card p{font-size:13px;color:#405a79;margin:0;line-height:1.55}.primary-btn,.secondary-btn{border:0;border-radius:12px;width:100%;padding:15px;font-weight:800;cursor:pointer}.primary-btn{color:#fff;background:linear-gradient(100deg,#0075dd,#00aaaf);box-shadow:0 8px 16px #006dd038}.secondary-btn{color:#08797a;background:#dff9f7;margin-top:12px}.text-btn{display:block;border:0;background:transparent;color:#1477ba;margin:16px auto 0;font-weight:700}.page-loading{padding:70px 18px;text-align:center;color:#64748b}.error-toast{position:fixed;z-index:10;left:50%;bottom:22px;transform:translate(-50%);width:min(90%,480px);border:0;border-radius:12px;padding:12px 15px;text-align:left;background:#432020;color:#fff;box-shadow:0 8px 20px #0003}.error-toast b{float:right;font-size:18px}.progress-wrap{margin:10px 0 15px}.progress-label{display:flex;justify-content:space-between;font-size:13px;color:#52647e;margin-bottom:8px}.progress-track{height:7px;border-radius:99px;background:#dbe6f4;overflow:hidden}.progress-track i{display:block;height:100%;border-radius:inherit;background:#13baa9;transition:width .2s}.timer{color:#d8f8ff;font-variant-numeric:tabular-nums;font-weight:800}.timer.danger{color:#ffcc74}.question-card{padding:22px 18px;margin-bottom:14px}.question-meta{display:flex;justify-content:space-between;color:#5980a8;font-size:12px}.question-card h2{font-size:18px;line-height:1.6;margin:17px 0}.question-card h2 em{display:inline-grid;place-items:center;width:25px;height:25px;margin-right:7px;background:#e6f4ff;border-radius:7px;color:#0876ba;font-size:13px;font-style:normal}.options{display:grid;gap:10px}.option{display:flex;align-items:flex-start;gap:10px;text-align:left;border:1px solid #dbe5f0;border-radius:12px;background:#fff;padding:13px 12px;color:#253858;cursor:pointer}.option b{flex:none;display:grid;place-items:center;width:23px;height:23px;border:1px solid #9ab0c8;border-radius:50%;font-size:12px}.option span{flex:1;line-height:1.45;font-size:14px}.option i{font-style:normal;color:#00a897;font-weight:900}.option.selected{border-color:#00a897;background:#ecfffc}.option.selected b{border-color:#00a897;background:#00a897;color:#fff}.hint{margin:13px 0 0;color:#8191a6;font-size:12px}.question-actions{display:flex;justify-content:space-between;gap:12px;margin:0 0 16px}.question-actions button{border:1px solid #cbd9e8;background:#fff;color:#3a628b;border-radius:9px;padding:9px 17px}.navigator{padding:16px;margin-bottom:16px}.navigator p{display:flex;justify-content:space-between;margin:0 0 10px;font-size:14px;font-weight:800}.navigator p span{font-size:12px;color:#76879e;font-weight:400}.navigator>div{display:flex;gap:8px;flex-wrap:wrap}.navigator button{width:31px;height:31px;border:0;border-radius:8px;background:#edf2f8;color:#657791;font-size:12px}.navigator button.done{background:#cefbef;color:#078877}.navigator button.current{outline:2px solid #0a83cd}.result-hero{padding:25px 18px;text-align:center;color:#fff;background:linear-gradient(135deg,#0c3770,#007a95);border-radius:18px}.result-hero h1{font-size:62px;line-height:1;margin:15px 0 9px}.result-hero h1 small{font-size:21px}.result-hero p{margin:0;color:#d1f3ff;font-size:13px}.result-grid{display:grid;grid-template-columns:1fr 1fr;margin:14px 0}.result-grid div{padding:16px;border-right:1px solid #e6eef5;border-bottom:1px solid #e6eef5}.result-grid div:nth-child(2n){border-right:0}.result-grid div:nth-last-child(-n+2){border-bottom:0}.result-grid span,.rank-user span,.rank-score span{display:block;font-size:12px;color:#7a8aa1}.result-grid strong{display:block;margin-top:5px;color:#0c3970;font-size:20px}.leaderboard-hero{padding:20px}.leaderboard-hero h1{font-size:22px;line-height:1.45;margin:9px 0}.leaderboard-hero p{font-size:13px;line-height:1.55;color:#e1efff;margin:0}.leaderboard-panel{margin:15px 0;padding:16px}.section-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.section-title h2{font-size:17px;margin:0}.section-title p{font-size:11px;color:#7c8da3;margin:5px 0}.section-title>span{padding:4px 7px;border-radius:6px;background:#edf7ff;color:#1477ba;font-size:11px}.rank-list{display:grid;gap:5px}.rank-row{display:flex;align-items:center;gap:10px;padding:9px 7px;border-radius:10px}.rank-row.mine{background:#e8fbf7}.rank{width:22px;text-align:center;font-size:14px;color:#73869d}.rank-1,.rank-2,.rank-3{color:#d79705;font-size:17px}.rank-user{flex:1}.rank-user strong{font-size:14px}.rank-score{text-align:right}.rank-score strong{font-size:14px;color:#075f83}.review-card{padding:18px;margin-top:15px}.review-card p,.review-card li{font-size:13px;line-height:1.65;color:#60728a}.review-card ul{padding-left:18px;margin:8px 0}.review-list{display:grid;gap:12px}.review-question{padding:16px;border-left:4px solid #fd9c72}.review-question.correct{border-left-color:#15b89d}.review-question>div{display:flex;justify-content:space-between;font-size:12px;color:#71849d}.review-question>div b{color:#c46846}.review-question.correct>div b{color:#0a8c7d}.review-question h2{font-size:16px;line-height:1.55;margin:10px 0}.review-question p{font-size:13px;margin:5px 0;color:#5e718a}.review-question aside{margin-top:10px;padding:10px;border-radius:9px;background:#f1f7fc;font-size:13px;color:#406282;line-height:1.55}@media (min-width:561px){.app-shell{border-radius:18px;overflow:hidden;box-shadow:0 8px 45px #31547b33;margin:20px auto}}
