@font-face{font-family:Inter;font-weight:400;font-display:swap;src:url(fonts/Inter-Regular.woff) format("woff")}@font-face{font-family:Inter;font-weight:600 700;font-display:swap;src:url(fonts/Inter-SemiBold.woff) format("woff")}@font-face{font-family:Poppins;font-weight:500 700;font-display:swap;src:url(fonts/Poppins-Medium.woff) format("woff")}:root{--bg:#FAF7F0;--card:#fff;--ink:#1C1B2E;--mute:#5F5C78;--line:#EAE5D8;--pri:#2E2A72;--pri2:#ECEBF7;--acc:#1F9D6B;--acc2:#E0F3EA;--warn:#9A5B00;--warn2:#FDF1D9;--gold:#F4A51C;--hot:#E5533D;--hot2:#FCE3DE;--hd:#2E2A72;--fs:16px}.dark{--bg:#141325;--card:#1E1D33;--ink:#ECEAF6;--mute:#A29FBD;--line:#2F2D4A;--pri:#AFAAF5;--pri2:#2A2850;--acc:#3CC48F;--acc2:#173A2E;--warn:#F7B84A;--warn2:#3A2C12;--hot:#F06A55;--hot2:#3D1F1A;--hd:#2B2766}html,body{margin:0;background:var(--bg);color:var(--ink);font:var(--fs)/1.55 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",sans-serif}h1,h2,.brand,.fq,.cc .cd{font-family:Poppins,Inter,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}header.top{position:sticky;top:0;z-index:20;background:var(--hd);color:#fff;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));display:flex;align-items:center;gap:10px}header.top h1{font-size:17px;margin:0;flex:1;line-height:1.2}header.top h1 small{display:block;font-size:11.5px;font-weight:400;opacity:.75}.iconbtn{background:#ffffff1f;border:0;border-radius:10px;width:38px;height:38px;color:#fff;font-size:17px}main{padding:12px 12px 90px;max-width:760px;margin:0 auto}.view{display:none}.view.on{display:block}nav.bot{position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--card);border-top:1px solid var(--line);display:flex;padding-bottom:env(safe-area-inset-bottom)}nav.bot button{flex:1;border:0;background:none;padding:8px 2px 7px;font-size:11px;color:var(--mute);display:flex;flex-direction:column;align-items:center;gap:2px}nav.bot button b{font-size:19px;line-height:1}nav.bot button.on{color:var(--pri);font-weight:600}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:12px}.hero{background:var(--hd);color:#fff;border:0}.hero .big{display:flex;gap:8px;margin:10px 0 6px}.hero .big div{flex:1;background:#ffffff26;border-radius:10px;text-align:center;padding:8px 0}.hero .big b{display:block;font-size:24px;line-height:1.1}.hero .big span{font-size:11px;opacity:.85}.hero p{margin:4px 0;font-size:13.5px;opacity:.95}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{background:var(--pri2);border-radius:12px;padding:10px;text-align:center}.stat b{display:block;font-size:22px;color:var(--pri)}.stat span{font-size:12px;color:var(--mute)}h2.sec{font-size:15px;margin:18px 4px 8px;color:var(--mute);text-transform:uppercase;letter-spacing:.04em}.bar{height:8px;background:var(--line);border-radius:6px;overflow:hidden}.bar i{display:block;height:100%;background:var(--acc);border-radius:6px;transition:width .3s}.urow{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}.urow:last-child{border:0}.urow .nm{flex:1}.urow .ct{color:var(--mute);font-size:12px;width:44px;text-align:right}.urow .bar{width:80px}.search{display:flex;gap:8px;margin-bottom:10px}.search input,.search select,select.full{flex:1;min-width:0;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);font-size:15px}.chips{display:flex;gap:7px;overflow-x:auto;padding-bottom:6px;margin-bottom:6px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;border:1px solid var(--line);background:var(--card);border-radius:20px;padding:6px 12px;font-size:13px;white-space:nowrap}.chip.on{background:var(--hd);border-color:var(--hd);color:#fff}.qc{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:10px;display:block;width:100%;text-align:left;position:relative}.qc.done{border-left:4px solid var(--acc)}.qc .meta{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-bottom:6px}.tag{font-size:11px;padding:2px 7px;border-radius:6px;background:var(--pri2);color:var(--pri);font-weight:600}.tag.p{background:var(--warn2);color:var(--warn)}.tag.f{background:var(--acc2);color:var(--acc)}.tag.hot{background:var(--hot);color:#fff}.qc .qt{font-size:15px;font-weight:600;line-height:1.4}.qc .st{position:absolute;right:12px;top:10px;font-size:15px}.cnt{font-size:13px;color:var(--mute);margin:4px 4px 10px}#reader{position:fixed;inset:0;z-index:50;background:var(--bg);display:none;flex-direction:column}#reader.on{display:flex}#reader .rh{background:var(--hd);color:#fff;display:flex;align-items:center;gap:8px;padding:8px 10px;padding-top:max(8px,env(safe-area-inset-top))}#reader .rh .t{flex:1;font-size:13px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#rbody{flex:1;overflow-y:auto;padding:14px 14px 24px;-webkit-overflow-scrolling:touch}#rbody .inner{max-width:760px;margin:0 auto}#rbody h3{font-size:calc(var(--fs) + 2px);line-height:1.4;margin:4px 0 10px}.ans{font-size:var(--fs)}.ans h4{color:var(--pri);margin:18px 0 6px;font-size:calc(var(--fs) + 0px);border-bottom:2px solid var(--pri2);padding-bottom:3px}.ans p{margin:8px 0}.ans ul,.ans ol{padding-left:22px;margin:6px 0}.ans li{margin:4px 0}.ans pre{background:#1c1b2e;color:#eceaf6;border-radius:10px;padding:10px;overflow-x:auto;font-size:12.5px;line-height:1.45}.ans code{background:var(--pri2);padding:1px 5px;border-radius:5px;font-size:.9em}.ans pre code{background:none;padding:0}.small{font-size:13px;color:var(--mute)}.tw{overflow-x:auto;margin:10px 0;border:1px solid var(--line);border-radius:10px}.tw table{border-collapse:collapse;width:100%;font-size:13.5px;min-width:420px}.tw th{background:var(--hd);color:#fff;text-align:left;padding:7px 8px;font-weight:600}.tw td{padding:7px 8px;border-top:1px solid var(--line);vertical-align:top}.tw tr:nth-child(2n) td{background:var(--pri2)}.dg{margin:12px 0;padding:10px;border:1px dashed var(--pri);border-radius:12px;background:var(--card)}.dgt{font-size:12px;font-weight:700;color:var(--pri);text-align:center;margin-bottom:6px}.dgt:empty{display:none}.lay{background:var(--pri2);border:1px solid var(--pri);border-radius:8px;padding:7px 9px;margin:5px 0;text-align:center;font-size:13.5px}.chain{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px}.nd{background:var(--acc2);border:1px solid var(--acc);border-radius:8px;padding:6px 9px;font-size:13px;text-align:center;font-weight:600}.ar{color:var(--acc);font-weight:700;font-size:13px;display:inline-flex;flex-direction:column;align-items:center;line-height:1.1}.ar em{font-style:normal;font-weight:500;font-size:10.5px;color:var(--mute);max-width:110px;text-align:center}.kp{background:var(--warn2);border-radius:12px;padding:10px 12px;margin:10px 0 14px}.kp summary{font-weight:700;color:var(--warn);cursor:pointer;font-size:14px}.kp ul{margin:6px 0 2px;padding-left:20px;font-size:14px}.asked{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}#reader .rf{display:flex;gap:8px;padding:8px 10px;padding-bottom:max(8px,env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line)}#reader .rf button{flex:1;border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:10px 4px;font-size:14px}#reader .rf button.act{background:var(--acc);border-color:var(--acc);color:#fff}#reader .rf button.star.act{background:var(--gold);border-color:var(--gold);color:#3a2600}.pp{border:1px solid var(--line);border-radius:14px;background:var(--card);margin-bottom:10px;overflow:hidden}.pp>button{width:100%;border:0;background:none;padding:13px 14px;text-align:left;display:flex;align-items:center;font-weight:700}.pp>button span{flex:1}.pp .pl{display:none;border-top:1px solid var(--line)}.pp.open .pl{display:block}.pi{display:flex;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);width:100%;background:none;border-left:0;border-right:0;border-top:0;text-align:left;font-size:14px}.pi b{color:var(--pri);min-width:34px}.pi.d{opacity:.6}.pnote{font-size:12.5px;color:var(--mute);padding:8px 14px;background:var(--pri2)}.flash{min-height:300px;perspective:1000px;margin-bottom:12px}.fc{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;min-height:300px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 6px 20px #0000000f}.fc .lbl{font-size:12px;color:var(--mute);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.fc .fq{font-size:18px;font-weight:700;line-height:1.4}.fc ul{padding-left:20px;margin:0}.fc li{margin:6px 0;font-size:15px}.row{display:flex;gap:8px}.btn{flex:1;border:0;border-radius:12px;padding:12px;font-weight:600;background:var(--hd);color:#fff;font-size:15px}.btn.g{background:var(--acc)}.btn.o{background:var(--card);color:var(--ink);border:1px solid var(--line)}.btn.w{background:var(--warn);color:#fff}.tip{font-size:14px}.tip li{margin:5px 0}.mq{padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px}.mq:last-child{border:0}.mq a{color:var(--pri);font-size:13px;font-weight:600;margin-left:4px;cursor:pointer;text-decoration:underline}.timer{font-size:30px;font-weight:800;text-align:center;letter-spacing:.04em;color:var(--pri);font-variant-numeric:tabular-nums}.hotlist button{display:flex;width:100%;gap:10px;align-items:flex-start;border:0;background:none;padding:9px 0;border-bottom:1px solid var(--line);text-align:left;font-size:14px}.hotlist button:last-child{border:0}.hotlist .n{background:var(--hot);color:#fff;border-radius:8px;font-size:12px;font-weight:700;padding:2px 7px;flex:none;margin-top:1px}.empty{text-align:center;color:var(--mute);padding:30px 10px}@media(min-width:700px){.qc .qt{font-size:16px}}.uml svg{font-family:inherit;display:block;margin:0 auto}.uml text{fill:var(--ink);font-size:11px}.uml .ub{fill:var(--card);stroke:var(--ink);stroke-width:1.2}.uml .ubm{fill:var(--card);stroke:var(--ink);stroke-width:1.1}.uml .uf{fill:var(--ink);stroke:none}.uml .ul,.uml .ue2{stroke:var(--ink);stroke-width:1.1;fill:none}.uml .ud{stroke-dasharray:4 3}.uml .ufr{fill:none;stroke:var(--pri);stroke-width:1.3}.uml .ue{fill:var(--pri2)}.uml .ust{fill:var(--acc2);stroke:none}.uml .un{fill:var(--warn2)}.uml .ut{font-weight:700;font-size:11px}.uml .us{font-size:10.5px}.uml .uu{text-decoration:underline}.uml text.uel{font-size:9.5px;fill:var(--mute)}.uml .ulb{fill:var(--card);opacity:.85}.dg.uml{overflow-x:auto;padding:8px 4px}.dark header.top{border-bottom:1px solid var(--line)}.logo{width:34px;height:34px;flex:none;display:block}.brand{font-weight:500;font-size:19px;letter-spacing:.01em}.brand b{color:var(--gold);font-weight:500}header.top h1 .brand{font-size:19px}.tag.sp{background:var(--warn2);color:var(--warn)}.screen{display:none}.screen.on{display:block}body.cat nav.bot{display:none}body.cat main{padding-bottom:30px}.welcome{background:var(--hd);color:#fff;border-radius:16px;padding:18px 16px;margin-bottom:14px}.welcome h2{margin:0 0 4px;font-size:21px;font-weight:500;line-height:1.3}.welcome p{margin:0 0 12px;font-size:14px;color:#d9d6f2}.welcome input{width:100%;border:0;border-radius:12px;padding:12px 14px;font-size:15px;background:#fff;color:#1c1b2e}.pchips{display:flex;gap:7px;flex-wrap:wrap;margin:4px 0 12px}.cc{display:block;width:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:10px;position:relative}.cc .cd{font-size:12.5px;font-weight:500;color:var(--pri);letter-spacing:.03em}.cc .ct{font-size:16px;font-weight:600;margin:2px 0 4px;padding-right:34px;line-height:1.35}.cc .cm{font-size:12.5px;color:var(--mute)}.cc .bar{margin-top:9px;height:6px}.cc .pin{position:absolute;right:8px;top:8px;border:0;background:none;font-size:19px;color:var(--mute);width:36px;height:36px;border-radius:10px}.cc .pin.on{color:var(--gold)}.soon{border:1px dashed var(--line);border-radius:14px;padding:14px;color:var(--mute);font-size:14px;text-align:center;margin-top:6px}.foot{text-align:center;font-size:12px;color:var(--mute);margin:22px 8px 8px;line-height:1.6}.foot a{color:var(--pri)}.exam .big{margin-bottom:4px}.exam .set{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.exam .set input,.exam .set select{flex:1;min-width:130px;border:0;border-radius:10px;padding:9px 10px;font:inherit;font-size:14px;background:#fff;color:#1c1b2e}.exam .lnk{background:#ffffff29;border:0;color:#fff;border-radius:10px;padding:8px 12px;font-size:13px}.exam .save{background:var(--gold);color:#3a2600;border:0;border-radius:10px;padding:9px 14px;font-weight:600}.install{display:none;width:100%;margin:0 0 12px;background:var(--gold);color:#3a2600;border:0;border-radius:12px;padding:11px;font-weight:600}.install.on{display:block}#toast{position:fixed;left:50%;bottom:86px;transform:translate(-50%);background:var(--ink);color:var(--bg);padding:9px 16px;border-radius:20px;font-size:14px;opacity:0;pointer-events:none;transition:opacity .25s;z-index:60}#toast.on{opacity:1}#loading{text-align:center;padding:50px 10px;color:var(--mute)}.wm{font-size:11px;color:var(--mute);text-align:right;margin-top:18px;opacity:.8}
